Микроконтроллеры для начинающих. часть 1. первый шаг «в незнаемое»
Содержание
Что такое процессор или CPU?
Сначала давайте рассмотрим что такое процессор. CPU или central processing unit (центральное обрабатывающее устройство) — который представляет из себя микросхему с огромным количеством транзисторов, сделанную на кристалле кремния. Первый в мире процессор был разработан корпорацией Intel в 1971 году. Все началось с модели Intel 4004. Он умел выполнять только вычислительные операции и мог обрабатывать только 4 байта данных. Следующая модель вышла в 1974 году — Intel 8080 и мог обрабатывать уже 8 бит информации. Дальше были 80286, 80386, 80486. Именно от этих процессоров произошло название архитектуры.
Тактовая частота процессора 8088 была 5 МГц, а количество операций в секунду только 330 000 что намного меньше чем в современных процессоров. Современные устройства имеют частоту до 10 ГГц и несколько миллионов операций в секунду.
Мы не будем рассматривать транзисторы, переместимся на уровень выше. Каждый процессор состоит из таких компонентов:
- Ядро — здесь выполняется вся обработка информации и математические операции, ядер может быть несколько;
- Дешифратор команд — этот компонент относится к ядру, он преобразует программные команды в набор сигналов, которые будут выполнять транзисторы ядра;
- Кэш — область сверхбыстрой памяти, небольшого объема, в которой хранятся данные, прочитанные из ОЗУ;
- Регистры — это очень быстрые ячейки памяти, в которых хранятся сейчас обрабатываемые данные. Их есть всего несколько и они имеют ограниченный размер — 8, 16 или 32 бит именно от этот зависит разрядность процессора;
- Сопроцессор — отдельное ядро, которое оптимизировано только для выполнения определенных операций, например, обработки видео или шифрования данных;
- Адресная шина — для связи со всеми, подключенными к материнской плате устройствами, может иметь ширину 8, 16 или 32 бит;
- Шина данных — для связи с оперативной памятью. С помощью нее процессор может записывать данные в память или читать их оттуда. Шина памяти может быть 8, 16 и 32 бит, это количество данных, которое можно передать за один раз;
- Шина синхронизации — позволяет контролировать частоту процессора и такты работы;
- Шина перезапуска — для обнуления состояния процессора;
Главным компонентом можно считать ядро или вычислительное-арифметическое устройство, а также регистры процессора. Все остальное помогает работать этим двум компонентам. Давайте рассмотрим какими бывают регистры и какое у них предназначение.
- Регистры A, B, C — предназначены для хранения данных во время обработки, да, их только три, но этого вполне достаточно;
- EIP — содержит адрес следующей инструкции программы в оперативной памяти;
- ESP — адрес данных в оперативной памяти;
- Z — содержит результат последней операции сравнения;
Конечно, это далеко не все регистры памяти, но эти самые главные и ими больше всего пользуется процессор во время выполнения программ. Ну а теперь, когда вы знаете из чего состоит процессор, можно рассмотреть как он работает.
Большим мозгам – большая память
Ближе всех к процессору всегда размещаются слоты модулей оперативной памяти DRAM. Они подключены непосредственно к процессору и только к нему. Количество слотов DIMM в основном зависит от процессора, так как контроллер памяти встроен в него.
В нашем примере процессор, который совместим с нашей материнской платой, имеет 2 контроллера памяти, каждый из которых оперирует 2-я модулями – следовательно, 4 слота DRAM поддерживает материнская плата. Вы можете видеть, что слоты памяти на ней окрашены таким образом, чтобы вы знали, какие из них управляются каким контроллером памяти (т.н. каналом памяти). Канал №1 управляет двумя черными слотами, а канал №2 – серыми.
Однако, в данном конкретном случае цветовая маркировка слотов на плате немного сбивает с толку (меня в том числе). Как выяснилось, каналу 1 на ней соответствует ближайшая к процессору пара разноокрашенных слотов, а каналу 2 – дальняя от процессора пара.
Подобная маркировка призвана стимулировать использование материнской платы в так называемом двухканальном режиме – при одновременном использовании обоих контроллеров общая производительность памяти повышается. Допустим, у вас есть два модуля памяти по 8 Гб каждый. Независимо от того, в какую пару слотов вы их вставите – серую или черную, – у вас всегда будет 16 Гб доступной памяти.
Если вы вставите оба модуля в оба черных (или оба серых) слота, процессор будет по сути иметь два пути для доступа к этой памяти. Но стоит только переставить модули в слоты разного цвета, и система будет вынуждена обращаться к памяти только с помощью одного контроллера. Учитывая, что он может управлять только одним каналом, нетрудно понять, что это не идёт на пользу производительности.
Наш пример материнской платы и ЦП использует чипы DDR3 SDRAM (Double Data Rate version 3, Synchronous Dynamic Random Access Memory – «синхронная динамическая память с произвольным доступом и с версией 3 двойной скорости передачи данных»), и каждый слот предназначен для одного SIMM или DIMM. «IMM» обозначает «In-line Memory Module» («рядный модуль памяти»); буквы S и D (Single и Dual) указывают, одна сторона заполнена чипами, или обе (односторонний или двухсторонний модуль памяти).
Вдоль нижнего края модуля памяти располагаются позолоченные контакты, обеспечивающие питание и обмен данными. У данного типа памяти этих контактов 240 (по 120 с каждой стороны).
Одинарный модуль DIMM DDR3 SDRAM. Фото: Crucial
Бо́льшие модули могли бы дать вам больше памяти, но конфигурация устанавливает ограничения контактами на процессоре (почти половина из тех 1150 контактов в нашем примере выделена для обмена данными с модулями памяти) и физическим местом для прокладки всех проводников на материнской плате.
В 2004 году компьютерная индустрия остановилась на использовании 240 контактов в модулях памяти и с тех пор не показывает никаких признаков изменения этого стандарта в ближайшее время. Чтобы улучшить производительность памяти, с каждой новой версией просто ускоряется работа чипов. В нашем примере контроллеры памяти ЦП могут отправлять и получать по 64 бита данных за такт. А поскольку контроллеров у нас два, было бы логично увидеть на планках памяти 128 контактов для обмена данными. Так почему же их 240?
Каждый чип на модуле DIMM (всего их 16, по 8 на каждую сторону) передаёт 8 бит за такт. Это означает, что каждому чипу для обмена данными требуется 8 контактов; однако чипы работают парно, используя одни и те же выводы, поэтому только 64 контакта из 240 являются контактами для данных. Остальные 176 выводов необходимы для контроля и синхронизации, а также для передачи адресов данных (места расположения данных на модуле), управления микросхемами и обеспечения электроэнергией.
Так что, как видите, наличие более 240 контактов не обязательно должно улучшить ситуацию!
Процессор компьютера – цифровое электронное устройство
Процессор компьютера
Среди цифровых электронных устройств одним из наиболее сложных устройств является процессор компьютера. Это своего рода апофеоз развития цифровой техники.
Внешне он представляет собой кремниевую пластину, смонтированную в корпусе, имеющем множество электрических выводов для подключения к электропитанию и к другим устройствам компьютера.
За то, что процессор делается на кремниевых пластинах, на жаргоне компьютерщиков его иногда называют «камень», так как кремний является весьма прочным материалом.
На эту пластину путем очень точного напыления вещества (точность измеряется ангстремами) в вакууме и при соблюдении идеальной чистоты производства воспроизводят сложнейшую и чрезвычайно миниатюрную по своим размерам электрическую схему, состоящую из десятков и сотен тысяч мельчайших элементов (в основном, транзисторов), соединенных между собой специальным образом.
Производство таких устройств является настолько высокотехнологичным, что его смогли освоить только страны с самой развитой экономикой. Занятно, что при производстве процессоров не измеряют брак, как это принято практически во всех отраслях промышленности и производства, а измеряют так называемый процент выхода годных изделий, так как совсем немногие заготовки процессоров в конечном итоге становятся работоспособными устройствами.
Качественно произведенные кремниевые пластинки помещают в корпус с выводами и снабжают устройствами охлаждения (радиатор и вентилятор), так как сотни тысяч миниатюрных транзисторов при своей работе выделяют изрядное количество тепла.
Логическая структура процессора компьютера
Если посмотреть на внутреннюю логическую структуру процессора компьютера, то он представляет собой совокупность соединенных между собой устройств:
– арифметико-логическое устройство (АЛУ), в котором, собственно, и производится преобразование информации,
– устройство управления (УУ), которое предназначено для управления арифметико-логическим устройством,
– и регистры (ячейки) памяти, в которых хранятся входные данные, промежуточные данные и результирующие данные.
Команды, предназначенные для управления работой процессора, попадают из оперативной памяти в устройство управления. Это устройство управляет работой арифметико-логического устройства в соответствии с полученными командами.
В свою очередь, АЛУ в соответствии с полученными из УУ командами, осуществляет
- ввод информации из регистров,
- обработку информации и
- запись обработанной информации в регистры.
Регистры процессора могут обмениваться информацией с ячейками оперативной памяти (тоже на основании команд АЛУ). Поэтому в конечном итоге процессор компьютера
- осуществляет обработку данных, получаемых из оперативной памяти,
- а обработанные данные также размещает в оперативной памяти.
Что такое центральный процессор ЦП
Процессор (центральные процессорное устройство, ЦП, ЦПУ) — это электронная схема, которая обрабатывает и выполняет машинный код программного обеспечения на определенном устройстве. Осуществляет выполнение всех операций ввода и вывода, которые посылает ему программа.
Чаще всего центральный процессор вы можете увидеть в компьютерах, ноутбуках и мобильных устройствах. Но, они есть и в другой технике, например, в телевизорах.
Современные ЦП чаще всего представляют собой одну микросхему, размещенную на плате/чипе. Существует их множество разных видов, сейчас популярны и востребованы многоядерные модели, это когда на одном чипе находится сразу несколько процессоров.
Основные компоненты:
- АЛУ — Арифметико-логическое устройство. Осуществляет выполнение всех арифметических и логических данных, регистров, которые попадают сюда от операндов.
- Регистры. В них хранится текущая операция, промежуточные и финальные результаты вычислений АЛУ.
- Блок управления. Занимается координацией работы всех узлов ЦП, управляет его работой.
- Кэши данных и команд. В них хранятся часто используемые команды.
Термин «Процессор» использовался еще в 1 995 году, применяли его для обозначения вычислительных машин, которые выполняли сложные компьютерные программы. Первые ЦП делали для решения специфических задач, они были узкоспециализированными, но затем начали делать многоцелевые процессоры, которыми мы сейчас и пользуемся.
Как работает процессор
Центральный процессор выполняет команды, которые указывает ему программа, находящаяся в оперативной памяти. Обработка данных происходит так:
1. Оперативная память отправляет команды ЦП — в его КЭШ, откуда они уходят в блок управления.
2. Эти данные делятся на два вида и отправляются в регистры — значения в регистры данных и инструкции в регистры команд.
3. АЛУ обрабатывает данные из этих регистров и, затем также разделяет их на два вида — законченные и незаконченные, они идут обратно в регистры.
4. В кэше происходит их обработка, незаконченные и неиспользованные попадают в нижний регистр, а после обработки в верхний. Оттуда все отправляется в ОЗУ компьютера.
Все это кратко, как это выглядит графически, смотрите на скриншоте выше.
Немного о матрице
В этом случае ввод новых символов на некоторое время прекращается. Однако почти во всех РС до сих пор используется обычный интерфейс несмотря на растущую популярность шины USB.
Более подробное техническое описание клавиатуры можно прочитать чуть ниже: 1. В одном из предыдущих постов, вскользь, была затронута тема устройства компьютерной клавиатуры.
Только этот компьютер состоит из одной микросхемы и выполняет специализированные функции. Снижение себестоимости БИС возможно лишь при максимальной автоматизации этапов, предшествующих их изготовлению, и массовости производства.
Основа нашей кнопочной клавиатуры — интегральный таймер , который сконфигурирован как несинхронизированный мультивибратор. Примечание: Здесь рассматриваются только обычные компоненты стандартной клавиатуры.
Похожие лицензионные изображения:
Клавиатура может быть пассивной один контакт на одну клавишу или динамической два контакта на одну клавишу. Это зависит от состояния других клавиш. Корпус для некоторых людей важен с эстетической точки зрения.
Число устройств, которые могут быть подключены к шине, ограничивается только максимальной емкостью шины пФ. Но программе нужен не порядковый номер нажатой клавиши, а соответствующий обозначению на этой клавише ASCII-код. Вверху корпуса смонтированы светодиодные индикаторы, которые обычно текстурированы не так, как колпачки. Выдаёт так называемый скан-код 2.
Он должен быть установлен в правильное положение. Следует отметить, что клавиатура содержит внутренний байтовый буфер, через который она осуществляет обмен данными с компьютером. Большинство скэн-кодов являются однобайтовыми 8 битов , но некоторые состоят из нескольких байтов.
С помощью клавиатуры можно вводить любые символы — от букв и цифр до иероглифов и знаков музыкальной нотации. Миди клавиатура состоит из двух основных частей: Cобственно клавиши с контактами.
Схема подключения самодельного руля к плате от клавиатуры Genius.
Микропрограммный управляющий автомат
Основная статья: Микрокод
В ранних компьютерах УУ проектировалось и исполнялось в виде «жесткой логики» — комбинационных логических схем, триггеров, регистров, дешифраторов.
В 1951 году М. В. Уилксом было предложено проектировать УУ в виде микропрограммного автомата, то есть формировать последовательности управляющих импульсов с помощью микропрограммного автомата, управляемого микропрограммами, состоящими из микроинструкций, хранимой в постоянной или перезашиваемой (перепрограммируемой) микропрограммной памяти процессора. Такой подход существенно снижает трудозатраты на проектирование конечного автомата УУ и дополнительно позволяет относительно легко его модифицировать. С развитием полупроводниковой техники и появлением на рынке большого числа программируемых контроллеров при создании УУ этот подход стал доминирующим.
Однако в последние годы для некоторых систем АСУ ТП наметилась тенденция возврату (на новом технологическом уровне) к использованию систем основанных на жёсткой логике, в частности потому, что они обладают высокой степенью защищённости от компьютерных атак[источник не указан 39 дней].
Разработка печатной платы
Структурная схема
структурной схемыСтруктурная схема материнской платы ASUS P5BW-MB.14-м выпуске СДСМструктурнуюпринципиальную
Принципиальная схема
принципиальной схемыЧасть принципиальной схемы той же материнской платы ASUS P5BW-MB.
- Серия Broadcom
- Marvell XPliant
- Barefoot Tofino
- Mellanox Spectrum
- Innovium Teralynx
- Даже Realtek
Разводка печатной платы
Пример четырёхслойной платы: заметно на просвет, как на разных слоях отличаются токопроводящие дорожки и заливка заземления. Переходные отверстия.3D-модель многослойной платы и реализации переходных отверстий.Срез всамделишной платы в месте переходного отверстия.подкасте про виртуализацию
- Ширина токопроводящих дорожек. Тут море нюансов. Но универсальные правила следуют из закона Ома: чем ниже сечение, тем выше сопротивление и больше падение напряжение, а соответственно и нагрев.
- Ширина зазора. При наличии разных потенциалов в двух проводниках даже диэлектрик может стать проводником. И тем вероятнее, чем проводники ближе.
Таким образом ширина дорожек и зазоров — это компромисс между рисками и эффективностью.
Кстати, здесь есть тонкий момент: в то время как вся (нет) Россия использует миллиметры для расчётов размеров, Китай (и не он один) считает в милах.
Mille — тысячная доля дюйма или, соответственно, 0.0254 мм.
Вот где нас подстерегла имперская система мер, словно 8 измерений, затаившихся внутри элементарных частиц (интересно, успею ли я при жизни пожалеть об этой вере).
Поэтому совершенно типичны ситуации, когда при работе с китайскими производителями приходится пересчитывать из одной системы в другую. Удобно. Так в своё время греки переводили числа в вавилонскую систему, потому что в ней удобно было считать, а потом обратно в греческую — потому что так принято.
- Не рекомендуется делать повороты дорожек под углом 90 градусов — правильнее под 45 или закруглять по радиусу.
В противном случае ток распространяется неравномерно. При больших токах это может вызывать локальные перегревы и выгорания дорожки.
В случае когда имеем дело с высокоскоростным сигналом необходимо максимально плавно прокинуть сигнал на плате для уменьшения его затухания и здесь не допускается поворот даже под 45 градусов — только скругления.
Элтекс использует радиус загиба на глаз, чего более чем достаточно. - На некоторых участках требуется, чтобы длина проводников была одинаковой.
Одним из примеров будет подключение оперативной памяти.
Другим — дифференциальные пары, соединяющие высокоскоростной порт (10GE) с чипом PHY. В этом методе сигнал передаётся по двум проводникам, но по одному из них в инвертированном виде (с другим знаком). Приёмник сравнивает два сигнала, полученных разным путём, а не сигнал одного провода с землёй. В этом случае электромагнитные помехи влияют одновременно на два провода, что повышает устойчивость, которая очень важна на таких скоростях.
Очевидно, для того чтобы на приёмнике был один и тот же сигнал, сигнал этот должен прийти одновременно, соответственно и длина проводников должна быть одинаковой.CPU+DDR платы MES1124M.Плата, ты просто космос!
Этим объясняются подчас странные формы дорожек на платах. Это не что иное, как выравнивание длин проводников между собой.Дорожки, связывающие процессор и оперативную память
Необходимость в этом имелась всегда.Векторный суперкомпьютер CRAY-1.
Марвеловский чип PHY с обратной стороны — для оценки числа контактов, которые нужно правильно нарисовать.