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

Микроконтроллеры серии PIC в корпусах DIP и QFN.
Микроконтроллер ATtiny2313 американской фирмы Atmel.
Микроконтроллер 1993 года с УФ-стиранием памяти 62E40 европейской фирмы STMicroelectronics.
СБИС контроллера на плате управления жёстким диском Fujitsu MAP3735NC.

Микроконтро́ллер (англ. Micro Controller Unit, MCU) — микросхема для программного управления электронными устройствами. Обычно изготавливается в виде единого кристалла с функциями ядра микропроцессора, шин команд и данных, периферийных устройств, ОЗУ и ПЗУ. По сути, это компьютер в чипе, выполняющий роль периферийного процессора.

История

С появлением однокристальных микроЭВМ связывают начало эры массового применения компьютерной автоматизации в области управления. По-видимому[источник не указан 1788 дней], это обстоятельство и определило термин «контроллер» (англ. controller — регулятор, управляющее устройство).

В связи со спадом отечественного производства и возросшим импортом техники, в том числе вычислительной, термин «микроконтроллер» (МК) вытеснил из употребления ранее использовавшийся термин «однокристальная микроЭВМ».

Первый патент на однокристальную микроЭВМ был выдан в 1971 году инженерам Майклу Кокрэну и Гэри Буну, сотрудникам американской Texas Instruments. Именно они предложили на одном кристалле разместить не только процессор, но и память с устройствами ввода-вывода.

В 1976 году[1] американская фирма Intel выпускает микроконтроллер i8048. В 1978 году фирма Motorola выпустила свой первый микроконтроллер MC6801, совместимый по системе команд с выпущенным ранее микропроцессором MC6800. В 1980 году Intel выпускает следующий микроконтроллер: i8051. Удачный набор периферийных устройств, возможность гибкого выбора внешней или внутренней программной памяти и приемлемая цена обеспечили этому микроконтроллеру успех на рынке. С точки зрения технологии микроконтроллер i8051 являлся для своего времени очень сложным изделием — в кристалле было использовано 128 тыс. транзисторов, что в 4 раза превышало количество транзисторов в 16-разрядном микропроцессоре i8086.

В СССР велись разработки оригинальных микроконтроллеров. В 1979 году в СССР ЛКТБ разработало однокристальную 16-разрядную микро-ЭВМ «Электроника С5-31» (К1827 ВЕ1) с системой команд семейства «Электроника С5» и НИИ ТТ разработал однокристальную 16-разрядную ЭВМ К1801ВЕ1, микроархитектура которой получила название «Электроника НЦ». Уровень их разработки соответствовал лучшим мировым результатам того периода в области 16-разрядных однокристальных микро-ЭВМ. Также осваивался выпуск клонов наиболее удачных зарубежных образцов.[2][3][4][5]

На 2013 год существовало более 200 модификаций микроконтроллеров, совместимых с i8051, выпускавшихся двумя десятками компаний, и большое количество микроконтроллеров других типов. Популярностью у разработчиков пользуются 8-битные, 16-битные и 32-битные микроконтроллеры PIC фирмы Microchip Technology, микроконтроллеры AVR фирмы Atmel (с 2016 года производятся фирмой Microchip[6]), 16-битные MSP430 фирмы TI, а также 32-битные микроконтроллеры архитектуры ARM, которую разрабатывает фирма ARM Limited и продаёт лицензии другим фирмам для их производства. Несмотря на популярность в России микроконтроллеров, упомянутых выше, на 2009 год мировой рейтинг по объёму продаж, по данным Gartner Group, выглядел иначе: первое место с большим отрывом занимала Renesas Electronics, на втором — Freescale, на третьем — Samsung, затем шли Microchip и TI, далее — все остальные[7].

Описание

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

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

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

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

Неполный список периферийных устройств, которые могут использоваться в микроконтроллерах, включает в себя:

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

Известные семейства

Применение

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

Используются в управлении различными устройствами и их отдельными блоками:

  • в вычислительной технике: материнские платы, контроллеры дисководов жестких и гибких дисков, CD и DVD, калькуляторах;
  • электронике и разнообразных устройствах бытовой техники, в которой используется электронные системы управления — стиральных машинах, микроволновых печах, посудомоечных машинах, телефонах и современных приборах, различных роботах, системах «умный дом», и др.

В промышленности:

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

Программирование

Программирование микроконтроллеров осуществляется на низкоуровневых языках типа ассемблера и языках с возможностью непосредственного доступа к адресам памяти (Си/С++, Оберон, Форт), хотя существуют компиляторы для любых других языков с добавлением низкоуровневых рантаймов.

Известные компиляторы Си для МК:

Известные компиляторы бейсика для МК:

  • MikroBasic (архитектуры PIC, AVR, 8051 и ARM)
  • Bascom (архитектуры AVR и 8051)
  • FastAVR (для архитектуры AVR)
  • PICBasic (для архитектуры PIC)
  • Swordfish (для архитектуры PIC)

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

См. также

Примечания

  1. Васильев А. Е. , Микроконтроллеры: разработка встраиваемых приложений, изд. «БХВ-Петербург» 2008
  2. Микропроцессоры и микропроцессорные комплекты интегральных микросхем / под редакцией Шахнова В. А.. — М.: «Радио и связь», 1988. — Т. 2.
  3. Одноплатные микроЭВМ / Под. ред. В. Г. Домрачева.. — Микропроцессорные БИС и их применение. — М.: Энергоатомиздат, 1988. — С. 128. — ISBN 5-283-01489-4.
  4. Глава 2. Элементная база отечественных персональных ЭВМ // Справочник по персональным ЭВМ / Под. ред. чл.-корр. АН УССР Б. Н. Малиновского.. — К.: Тэхника, 1990. — С. 384. — ISBN 5-335-00168-2.
  5. Молчанов А. А., Корнейчук В. И., Тарасенко В. П. и др. Справочник по микропроцессорным устройствам. — К.: Тэхника, 1987. — С. 288.
  6. Microchip покупает Atmel за 3,56 млрд долларов. iXBT.com. Дата обращения: 17 мая 2016. Архивировано 9 сентября 2019 года.
  7. Renesas, Gartner, Chart created by Renesas Electronics based on Gartner data. Microcontrollers to enable Smart World (Semiconductor Applications Worldwide Annual Market Share: Database) (25 марта 2010). Дата обращения: 30 августа 2011. Архивировано 5 февраля 2012 года.
  8. IAR

Литература

  • Бродин В. Б., Калинин А. В. Системы на микроконтроллерах и БИС программируемой логики. — М.: ЭКОМ, 2002. — ISBN 5-7163-0089-8.
  • Жан М. Рабаи, Ананта Чандракасан, Боривож Николич. Цифровые интегральные схемы. Методология проектирования = Digital Integrated Circuits. — 2-е изд. — М.: Вильямс, 2007. — ISBN 0-13-090996-3.
  • Микушин А. Занимательно о микроконтроллерах. — М.: БХВ-Петербург, 2006. — ISBN 5-94157-571-8.
  • Новиков Ю. В., Скоробогатов П. К. Основы микропроцессорной техники. Курс лекций. — М.: Интернет-университет информационных технологий, 2003. — ISBN 5-7163-0089-8.
  • Фрунзе А. В. Микроконтроллеры? Это же просто! — М.: ООО «ИД СКИМЕН», 2002. — Т. 1. — ISBN 5-94929-002-X.
  • Фрунзе А. В. Микроконтроллеры? Это же просто! — М.: ООО «ИД СКИМЕН», 2002. — Т. 2. — ISBN 5-94929-003-8.
  • Фрунзе А. В. Микроконтроллеры? Это же просто! — М.: ООО «ИД СКИМЕН», 2003. — Т. 3. — ISBN 5-94929-003-7.

Ссылки