Чем отличается микросхема от процессора. Чем микроконтроллер отличается от микропроцессора

Давайте разберемся, чем же на самом деле отличаются и в чем сходство этих двух типов цифровых радиоэлектронных устройств.

И микропроцессор и микроконтроллер предназначены для выполнения некоторых операций — они извлекают команды из памяти и выполняют эти инструкции (представляющие собой арифметические или логические операции) и результат используется для обслуживания выходных устройств. И микроконтроллер и микропроцессор способны непрерывно производить выборку команд из памяти и выполнять эти инструкции, пока на устройство подается питание. Инструкции представляют из себя наборы битов. Эти инструкции всегда извлекаются из места их хранения, которое называется памятью.

Что такое микропроцессор

Микропроцессор (в ангоязычной литературе MPU — Micro Processor Unit) содержит функционал компьютерного центрального процессора, или ЦП (CPU — Central Processing Unit) на одном полупроводниковом кристалле (ИМС — интегральная микросхема или на западный манер — Integrated Circuit).

По своей сути — это микрокомпьютер, который используется для выполнения арифметических и логических операций, управления системами, хранения данных и прочих.

Микропроцессор обрабатывает данные, поступающие с входных периферийных устройств и передает обработанные данные на выходные периферийные устройства.

Существует четыре основных типа процессоров, различающихся своей архитектурой.

Микропроцессоры с полным набором команд (Complex Instruction Set Computer, CISC -архитектура). Характеризуются нефиксированным значением длины команды, кодированием арифметических действий одной командой, небольшим числом регистров, выполняющих строго определённые функции. Примером такого типа процессоров служит семейство x86.

Микропроцессоры с сокращенным набором команд (Reduced Instruction Set Computer, RISC -архитектура). Обладают, как правило, повышенным быстродействием за счёт упрощения инструкций, что позволяет упростить процесс декодирования и, соответственно, сократить время их выполнения. Большинство графических процессоров разрабатываются, используя этот тип архитектуры.

Микропроцессоры с минимальным набором команд (Minimal Instruction Set Computer, MISC -архитектура). В отличие от RISC-архитектуры, в них используются длинные командные слова, что позволяет выполнять достаточно сложные действия за один цикл работы устройства. Формирование длинных «командных слов» стало возможным благодаря увеличению разрядности микропроцессорных устройств.

В суперскалярных процессорах (Superscalar Processors ) используются несколько декодеров команд , которые загружают работой множество исполнительных блоков . Планирование исполнения потока команд происходит динамически и осуществляется самим вычислительным ядром. Примером процессора с таким типом архитектуры является, например Cortex A8.

Отдельно хочу выделить микропроцессоры специального назначения (ASIC — Application S pecific I ntegrated C ircuit). Как следует из названия, предназначены для решения конкретной задачи. В отличие от микропроцессоров общего назначения, применяются в конкретном устройстве и выполняют определенные функции, характерные только для данного устройства. Специализация на выполнении узкого класса функций приводит к увеличению скорости работы устройства и, как правило, позволяет снизить стоимость такой интегральной схемы. Примерами таких микропроцессоров может быть микросхема, разработанная исключительно для управления мобильным телефоном , микросхемы аппаратного кодирования и декодирования аудио- и видеосигналов - так называемые цифровые сигнальные процессоры (Digital Signal Processing, DSP multiprocessors). Могут быть реализованы в виде ПЛИС (программируемая логическая интегральная схема). При разработке таких процессоров для описания их функциональности используют языки описания аппаратных устройств (HDL — Hardware D escription L anguage) , такие как Verilog и VHDL .

Системы на основе микропроцессоров строят примерно следующим образом.

Как видно, микропроцессор в этой системе имеет множество вспомогательных устройств, таких как постоянное запоминающее устройство, оперативная память, последовательный интерфейс, таймер, порты ввода/вывода и т.д. Все эти устройства обмениваются командами и данными с микропроцессором через системную шину. Все вспомогательные устройства в микропроцессорной системе являются внешними . Системная шина, в свою очередь, состоит из адресной шины, шины данных и шины управления.

Теперь, давайте, рассмотрим микроконтроллер.

Что такое микроконтроллер

Ниже представлена блок-схема микроконтроллера. Какого же его основное отличие от микропроцессора? Все опорные устройства, такие как постоянное запоминающее устройство, оперативная память, таймер, последовательный интерфейс, порты ввода/вывода являются встроенными. Поэтому не возникает необходимости создавать интерфейсы с этими вспомогательными устройствами, и это экономит много времени для разработчика системы.

Микроконтроллер не что иное, как микропроцессорная система со всеми опорными устройствами, интегрированными в одном чипе. Если вы хотите создать устройство, взаимодействующее с внешней памятью или блоком ЦАП/АЦП, вам нужно только подключить соответствующий источник питания постоянного напряжения, цепь сброса и кристалл кварца (источник тактовой частоты). Их просто проблематично интегрировать в полупроводниковый кристалл.

Ядро микроконтроллера (центральный процессор), как правило строится на основе RISC-архитектуры.

Программа, записанная в память микроконтроллера может быть защищена от возможности ее последующего чтения/записи, что обеспечивает защиту от ее несанкционированного использования.

Сравниваем микроконтроллер и микропроцессор

Микропроцессор Микроконтроллер
Использование Компьютерные системы Встраиваемые системы
Устройство Содержит центральный процессор, регистры общего назначения, указатели стека, счетчики программы, таймер и цепи прерываний Cодержит схему микропроцессора и имеет встроенные ПЗУ, ОЗУ, устройства ввода/вывода, таймеры и счетчики.
Память данных Имеет много инструкций для перемещения данных между памятью и процессором. Имеет одну-две инструкции для перемещения данных между памятью и процессором.
Электрические цепи Высокая сложность Достаточно простые
Затраты Стоимость всей системы увеличивается Низкая стоимость системы
Число регистров Имеет меньшее количество регистров, операции в основном производятся в памяти. Имеет большее число регистров, поэтому проще писать программы
Запоминающее устройство Основано на архитектуре фон Неймана. Программа и данные хранятся в том же модуле памяти. Основано на Гарвардской архитектуре. Программы и данные хранятся в разных модулях памяти.
Время доступа Время доступа к памяти и устройствам ввода/вывода больше. Меньшее время доступа для встроенной памяти и устройств ввода/вывода.
Железо Требует большее количество аппаратного обеспечения. Требует меньшее количество аппаратного обеспечения.

В составе многих современных цифровых устройств есть микроконтроллер и микропроцессор. Что представляют собой данные электронные компоненты?

Что такое микроконтроллер?

Под микроконтроллером понимается электронный компонент, содержащий в себе основные аппаратные модули, необходимые для выполнения им своих функций. Такие как, например:

  • вычислительный чип;
  • модуль ПЗУ;
  • модуль ОЗУ;
  • таймер;
  • мосты;
  • регулятор напряжения;
  • порты ввода и вывода.

Таким образом, все соответствующие компоненты являются встроенными. Микроконтроллер, если он устанавливается в компьютере, чаще всего взаимодействует с другими аппаратными модулями ПК (например, жестким диском или оперативной памятью) напрямую и не применяет без особой надобности модули в ПК, аналогичные по назначению тем, что встроены в девайс.

Так, благодаря встроенному модулю, отвечающему за управление напряжением, микроконтроллер не требует адаптации внешнего напряжения к особенностям питания внутренних компонентов и в общем случае не использует внешних компонентов контроля над уровнем напряжения.

Микроконтроллеры, как правило, отвечают за какую-либо часть вычислительных операций. Например, если они стоят на ПК, это может быть чтение и запись данных, включение и выключение устройств, подключенных к ПК. Поэтому их производительность относительно невысока.

Часто микроконтроллер используется в приборах, в которых задействование микропроцессора не имеет особого смысла в силу его более высокой в большинстве случаев стоимости. Например, это может быть микроволновая печь, кондиционер или устройство, предназначенное для автоматического полива растений в саду. В составе отмеченных девайсов обычно присутствует самый простой по структуре микроконтроллер.

Что такое микропроцессор?

Под микропроцессором принято понимать микросхему, основным компонентом которой является кристалл из кремния или другого полупроводника. По сути, это в несколько раз более мощный, чем тот, что установлен в микроконтроллере, вычислительный чип. Но на этом сходства между рассматриваемыми типами электронных компонентов заканчиваются.

Микропроцессоры, как правило, не укомплектованы большим количеством дополнительных компонентов (как микроконтроллеры) и используют преимущественно внешние устройства в целях выполнения своих функций. Это могут быть модули ОЗУ, регуляторы напряжения или отдельные источники питания, порты ввода и вывода. В принципе, данные компоненты те же по назначению, что и в случае с контроллерами, но внешние. Однако, как и сам вычислительный чип микропроцессора, в большинстве случаев более производительные, чем те, что стоят в микроконтроллере.

Внутренних модулей у процессора немного. Как правило, современные модели электронных компонентов рассматриваемого типа содержат микросхему ОЗУ - из тех типов компонентов, что характерны для конструкции микроконтроллера. ПЗУ, регулятор напряжения, порты в структуре микропроцессора обычно отсутствуют.

Главное предназначение микропроцессора - сложные вычислительные операции. Поэтому он, как правило, обладает большой производительностью и инсталлируется в те девайсы, функционал которых ее требует. Например, в игровые приставки, ПК, мобильные устройства.

Сравнение

Основное отличие микроконтроллера от микропроцессора в том, что в первом компоненте основные модули, необходимые для выполнения им своих функций, - встроенные. Микропроцессор, в свою очередь, задействует по большей части внешние устройства. Вместе с тем микроконтроллер также способен обращаться к их ресурсам, если производительности тех, что являются встроенными, не хватает. Разумеется, это возможно, только если соответствующего типа внешние устройства предусмотрены в конструкции девайса, в котором используется микроконтроллер. Бывает, что их нет в принципе, - и тогда эффективность работы прибора зависит от производительности микроконтроллера.

Между двумя рассматриваемыми электронными компонентами, как правило, есть существенная разница по уровню скорости вычислений. Микроконтроллер в большинстве случаев менее производителен, чем микропроцессор аналогичного назначения (если, конечно, они взаимозаменяемы в конкретном устройстве), поскольку рассчитан на выполнение только части вычислительных операций или же тех, что имеют очень простую структуру.

Определив, в чем разница между микроконтроллером и микропроцессором, зафиксируем выводы в таблице.

Таблица

Микроконтроллер Микропроцессор
Что общего между ними?
Вычислительный чип, который входит в состав микроконтроллера, может выполнять функции, схожие с теми, что характерны для микропроцессора
В чем разница между ними?
Использует для выполнения функций главным образом встроенные аппаратные модули Применяет в основном внешние аппаратные модули
Имеет относительно невысокую производительность, отвечает, как правило, за часть вычислительных операций устройства, в котором установлен Характеризуется высокой производительностью и потому в устройстве, в котором установлен, нередко является главной микросхемой
Часто выступает более выгодной альтернативой процессору (если от микроконтроллера не требуется высокой производительности), но, в принципе, может быть им заменен Считается более производительной альтернативой контроллеру, но, как правило, не может быть им заменен при выполнении своих функций - поскольку производительности второго может оказаться недостаточно

Микропроцессор - устройство, осуществляющее обработку цифровой информации или управляющее этим процессом, выполненное в виде одной или нескольких интегральных микросхем. Процессор состоит из арифметико-логического устройства (АЛУ) и устройства управления (УУ), управляющего действиями над числами, которые реализует АЛУ. Все современные микропроцессоры используют двоичную арифметику, в которой число представляется как сумма степеней цифры 2, умноженных на соответствующую цифру:

где каждый разряд двоичного числа a v ..., а п+[ может принимать только два значения: 0 или 1. Цифра 0 воспроизводится низким уровнем напряжения, а 1 - высоким.

Упрощенная структурная схема микропроцессорного устройства (М11У) приведена на рис. 2.16. Оно содержит микропроцессор, запоминающее устройство (ЗУ) или намять и устройство ввода-вывода (УВВ). Па процессор возлагается задача выполнения всех программных действий в соответствии с алгоритмом работы. В ЗУ хранятся команды программы функционирования процессора, а также значения констант и переменных величин, участвующих в вычислениях. Команды программы, воспринимаемые УУ, дают информацию о том, какие операции нужно выполнить, где в памяти хранить данные, куда следует записать результат и где расположена следующая команда. УВВ содержит в себе интерфейс - связующее звено, служащее для преобразования сигналов от микропроцессора в сигналы, доступные периферийным (внешним) устройствам, и наоборот. Интерфейс обеспечивает необходимое согласование (сопряжение) устройств но входным и выходным сигналам по форме представления сигналов (аналоговое, цифровое) и последовательности их прохождения.

Рис. 2.16.

Компоненты МПУ связаны между собой внутренними магистралями (шинами) - «-проводными линиями, по которым передаются «-разрядные двоичные числа. УУ координирует работу всех устройств системы с помощью шины управления. Передача данных из выбранной ячейки памяти или портов УВВ осуществляется посредством шины данных. Вся память МПУ пронумерована побайтно, единицей памяти является один байт. Для обращения процессора к памяти или к УВВ необходимо запросить адрес нужных данных по адресной шине. Запоминающие устройства подразделяются на постоянные (ПЗУ) и оперативные (ОЗУ). ПЗУ применяют в основном для хранения фиксированных программ, постоянных коэффициентов, таблиц и т.п. ОЗУ предназначены для записи и хранения переменной информации, используемой непосредственно при выполнении арифметических и логических операций в ходе исполнения программы. Оперативная память является энергозависимой, т.е. при отсутствии напряжения питания информация не сохраняется. В качестве единиц измерения памяти используют байты, килобайты (1 Кбайт = 2 10 Б = 1024 Б). Важнейшая характеристика МПУ - разрядность, т.с. максимальная длина двоичного кода, который может передаваться и обрабатываться целиком. Скорость работы определяется тактовой частотой процессора, т.е. минимальное время выполнения любой операции (время переключения элементов в МПУ) соответствует одному периоду следования импульсов, вырабатываемых тактовым генератором.

Микропроцессорный контроллер {микроконтроллер) - вычислительное устройство, предназначенное для выполнения функций логического контроля и управления различными техническими объектами и сочетающее в себе микропроцессорное ядро и набор встроенных устройств ввода-вывода. В зависимости от конкретных условий применения микроконтроллер может иметь различное конструктивное исполнение. С развитием схемотехники получили распространение микроконтроллеры, в которых микросхемы процессора, памяти, преобразователей сигналов и их интерфейсы размещены на одной плате. Преимущественно используются однокристальные микроконтроллеры, выполненные в виде одной интегральной микросхемы. Они имеют малые габаритные размеры и высокую надежность.

Структура и характеристики микроконтроллеров определяют их функциональные возможности. Используются 4-, 8-, 16-, 32- и 64-разрядпые процессоры, способные выполнять операции с данными в формате с фиксированной точкой (в большинстве случаев) или плавающей точкой, что обеспечивает более высокую точность. Микроконтроллеры различаются наличием специализированных устройств ввода-вывода, таких как таймеры (счетчики импульсов), блоки захвата и сравнения, ШИМ-модули с разным количеством каналов, аналого-цифровые преобразователи (АЦП), интерфейсы различного типа. Производителями выпускаются семейства микроконтроллеров, насчитывающие десятки представителей (серий) с разнообразными конфигурациями интерфейсов и составом встроенных периферийных устройств. Для решения задач, требующих большого объема и скорости вычислений, применяются специализированные микроконтроллеры, адаптированные к решению задач цифрового управления в реальном времени, - процессоры для цифровой обработки сигналов (англ. DSP - Digital Signal Processor). Существуют микроконтроллеры, специально предназначенные для управления полупроводниковыми преобразовательными устройствами, имеющие вычислительное ядро на базе DSP с объектно-ориентированной системой команд. Одним из лидеров в области производства микроконтроллеров является фирма Texas Instruments, выпускающая широкую номенклатуру устройств для управления силовыми электронными преобразователями. Одно из популярных семейств - микроконтроллеры С2000 |3].

Микропроцессор обычно не имеет RAM, ROM и IO контактов. Он обычно использует свои контакты в качестве шины для взаимодействия с периферийными устройствами, такими как RAM, ROM, последовательные порты, цифровой и аналоговый ввода-вывода. Из-за этого он расширяется на уровне доски.

Микроконтроллер - это «все в одном», процессор, RAM, IO на одном чипе, поэтому вы не можете (скажем) увеличить объем доступной RAM или количество портов ввода-вывода. Управляющая шина является внутренней и недоступной дизайнеру платы.

Это означает, что микропроцессор, как правило, может быть встроен в более крупные приложения общего назначения, чем микроконтроллер. Микроконтроллер обычно используется для более специализированных приложений.

Все это очень общие утверждения. Есть чипы, которые размывают границы.

However, as I mentioned, the line gets blurry. For example, recent Intel/AMD processors add a memory controller on the chip (previously it was in the chipset).

В составе разных электронных устройств часто встречаются как микроконтроллеры, так и микропроцессоры. Оба этих компонента берут из памяти команды и по ним выполняют логические и арифметические операции, работая при этом с устройствами ввода/вывода и прочей периферией. Так в чём тогда разница?

Микроконтроллер

Микроконтроллер - (далее МК) это микросхема, предназначенная для программного управления электронными схемами. МК выполняется на одном кристалле. На нём расположено как вычислительное устройство, так и ПЗУ и ОЗУ. Кроме этого, в составе МК чаще всего находятся порты ввода/вывода, таймеры, АЦП , последовательные и параллельные интерфейсы. В некоторых даже можно заметить Wi-Fi-/Bluetooth-модуль и даже поддержку NFC.

Первый патент на микроконтроллер был выдан в 1971 году компании Texas Instruments . Инженеры этой компании предложили размещать на кристалле не только процессор, но и память с устройствами ввода/вывода.

Несмотря на то, что всё необходимое для работы микроконтроллера в нём уже есть, иногда они используются в паре с внешними периферийными устройствами. К примеру, когда внутренней ПЗУ не хватает (или она попросту отсутствует), подключают внешнюю. Именно так сделали с микроконтроллерами серии ESP. У ESP8266 встроенной памяти нет вообще, а у ESP32 есть незначительные 448 КБ. Поэтому к ним в корпус (точнее под радиатор) помещается flash-память ёмкостью 1–16 МБ.

Тогда почему бы не сделать какой-нибудь портативный компьютер на основе микроконтроллера? Дело в том, что вычислительной мощности у МК чаще всего достаточно мало. Её хватает на управление например, системой полива, микроволновкой или же каким-нибудь станком.

Например, одна из мощных плат платформы Arduino - Due. Она находится под управлением 32-битного AVR-микроконтроллера AT91SAM3X8E. Его тактовая частота 84 МГц. Постоянной памяти тут 512 КБ, а оперативной - 96 КБ. МК имеет 54 цифровых GPIO (12 из которых с поддержкой ШИМ), 12 аналоговых входов и 2 аналоговых выхода (ЦАП). Тут так же присутствуют различные интерфейсы, такие как UART, SPI, I2C.

Не смотря на такие незначительные характеристики, микроконтроллеры очень популярны. Они используются там, где не требуется большой вычислительной мощности - робототехника, контроллеры теплиц, бытовая техника.

Микропроцессор

С микропроцессором (далее МП) дела обстоят немного иначе. Он содержит в себе арифметико-логическое устройство, блок синхронизации и управления, запоминающие устройство, регистры и шину. То есть МП содержит в себе только то, что непосредственно понадобится для выполнения арифметический и логических операций. Все остальные комплектующие (ОЗУ, ПЗУ, устройства ввода/вывода, интерфейсы) нужно подключать извне.

Первые микропроцессоры появились тоже в начале 70-х. Самым популярным на тот момент считался . Это микропроцессор, разработанный компанией Intel и представленный 15 ноября 1971 года. Он имел внушающие на тот период характеристики:

  • 2300 транзисторов;
  • тактовая частота - 740 кГц;
  • разрядность регистров и шины - 4 бита;
  • техпроцесс - 10 мкм;
  • площадь кристалла: - 12 мм².

К слову, 4004 был выполнен в обычном DIP-16 корпусе. Этот МП является самой популярной микросхемой для коллекционирования. Некоторые экземпляры продаются по 400 $ за штуку. Менее раритетные стоят около 250 $.

Уже через пару лет 8-битные МП позволили создавать первые бытовые микрокомпьютеры.

Естественно, тут преимуществом является то, что к МП можно на выбор подключать разную периферию с разными характеристиками (что не во всех случаях можно на МК). Второе основное отличие микропроцессора от микроконтроллера в том, что МП имеют больше вычислительной мощности. Их не имеет смысла ставить в микроволновки и «умные» лампочки. Микропроцессоры применяют там, где вычислительная мощность МК уже не справляется - игровые приставки, сложные вычислительные устройства и приборы, гаджеты.

Получается, чтобы обеспечить работоспособность микропроцессора, нужно подключить ему хотя бы минимальный набор периферии. Минусы:

  1. Размер - если в случае МК всё уже находится в одном корпусе, то минимальный набор элементов для работы МП занимает больше места.
  2. Цена - обычно, вся «сборка» комплектующих для МП выходит гораздо дороже «голых» микроконтроллеров.
  1. Производительность - микропроцессоры обладают большей производительностью, чем микроконтроллеры.
  2. Выбор - в случае МП у вас есть возможность подобрать комплектующие. Это позволит поставить более подходящую под ваши цели периферию.

Применение

Микроконтроллер обладает явной простотой: требуется меньше аппаратного обеспечения, с ним легче работать на программном уровне, да и стоимость начинается с копеек. Но эта простота касается и производительности. Как говорилось выше, микроконтроллер не способен обеспечить высокую производительность наравне с микропроцессорами. Микропроцессоры хоть и требуют внешней коммутации «железа» и относительно МК сложны в работе, но они уже спокойно могут применяться в более сложных устройствах.

Однако иногда в сети появляются умельцы, которые впихивают в микроконтроллер ESP32