Особенности разработки микроконтроллеров

April 9, 2010 by admin Комментировать »

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

Стоимость

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

Средства вводавывода

Микросхемы микроконтроллеров обычно содержат множество разных ресурсов ввода-вывода. В простейших из них имеются только параллельные и последова­тельные порты, а более сложные включают также счетчик, таймер, схемы ЦАП и АЦП.

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

Разрядность

Микроконтроллерные микросхемы могут иметь разную разрядность. Если систе­мой способен управлять 8-разрядный микроконтроллер, нет смысла использо­вать 16-разрядную схему, которая значительно дороже, больше по размеру и по­требляет большее количество энергии. Преобладающая часть реальных систем может управляться микросхемами относительно небольшой разрядности. Стати­стика показывает, что наиболее востребованными в последние годы являются 8-разряные микросхемы, за ними следуют 4- и 16-разрядные.

Физический размер микросхемы важен с точки зрения места, занимаемого ею на печатной плате. Он достаточно сильно влияет на ее стоимость.

Потребляемая мощность

Важной характеристикой всех компьютерных систем считается потребляемая ими мощность. В высокопроизводительных системах она может быть очень высокой, поэтому необходим какой-нибудь механизм отвода выделяемого тепла. Что каса­ется встроенных систем, то потребляемая ими мощность, напротив, обычно низ­ка, и в отводе тепла нет необходимости. Однако такие системы часто питаются от батареек, поэтому их мощность — все равно очень важный показатель.

Снизить данный показатель можно путем создания микросхем с использова­нием КМОП-технологии — в этом случае потребляемая мощность будет пропор­циональна тактовой частоте. И если для системы допустима низкая производи­тельность, то можно снизить тактовую частоту и тем самым сократить потребляе­мую мощность. Еще одним компромиссным решением может стать уменьшение функциональных возможностей микросхемы контроллера, позволяющее упро­стить схему и сократить количество ее элементов, что также приведет к уменьше­нию потребляемой мощности.

Память на микросхеме

Если микросхема микроконтроллера содержит достаточно памяти, ее можно ис­пользовать в качестве простой встроенной системы. Объем и тип памяти при этом могут быть очень разными. Для хранения данных во время вычислений дос­таточно сравнительно небольшого объема RAM-памяти. Программы могут хра­ниться в памяти, доступной только для чтения, объем которой должен быть на­много больше. Это может быть память типа ROM, PROM, EPROM, EEPROM или флэш-память (стоимость возрастает в порядке перечисления типов). Если нужна память очень большого объема, дешевле всего использовать ROM, но это наименее гибкий вариант, поскольку содержимое ROM раз и навсегда заносится в микросхему при ее производстве. Память типа PROM и EPROM можно про­граммировать в процессе производства устройства со встроенным контроллером. А наиболее гибкими являются микросхемы EEPROM и флэш-памяти, которые можно перепрограммировать по многу раз.

Пороизводительность

Для бытовой техники и игрушек, за исключением видеоигр вроде Sony Play­Station, производительность — не самое важное требование. Поэтому для них прекрасно подходят небольшие по размеру и недорогие микросхемы. Но для та­ких устройств, как сотовые телефоны и портативные видеоигры, необходимы вы­сокопроизводительные контроллеры. Большая производительность — это более мощные микросхемы, более высокая стоимость и большее количество потребляе­мой энергии. А поскольку такие системы, тем не менее, часто работают от батаре­ек, важно предельно снизить потребляемую ими мощность. В главе 3 рассматри­валась архитектура ARM, одной из реализаций которой является микросхема StrongARM, специально спроектированная в виде процессора с низкой потреб­ляемой мощностью и достаточно высокой производительностью. Для использо­вания во встроенных системах, для которых важны такие показатели, как стои­мость и производительность, предназначена Thumb-версия архитектуры ARM, обсуждаемая в разделе 9.7.3.

Программное обеспечение

Языки высокого уровня имеют множество преимуществ по сравнению с ассемб­лером. Они способны ускорить процесс разработки программ, облегчают их даль­нейшее сопровождение и модификацию. Однако в некоторых случаях имеет смысл все же пользоваться языком ассемблера. Хорошо написанная ассемблер­ная программа компилируется в объектный код, объем которого на 10-20 % меньше (с точки зрения занимаемой программой памяти), чем у объектного кода, полученного в результате компиляции программы на языке высокого уровня. И если встроенная система основана на микроконтроллере со встроенной памя­тью, важно чтобы весь необходимый код поместился в эту память, то есть чтобы не пришлось добавлять еще и внешние микросхемы памяти.

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

Система команд

Еще одним важным показателем является структура используемой процессором системы команд. Команды типа CISC позволяют писать более компактный код, чем команды типа RISC. Поэтому размер кода зависит и от типа процессора. Ин­тересен пример Thumb-версии архитектуры ARM, в которой RISC-команды, раз­работанные для 32-разрядных процессоров, модифицированы в набор сжатых 16-разрядных команд. Программы для процессоров Thumb имеют на 30 % мень­ший объем, чем программы для полной архитектуры ARM. Напомним, что во время выполнения программы команды Thumb разворачиваются в нормальные ARM-команды (см. раздел 9.7.3).

Средства разработки

Создатели цифровых систем широко используют в своей работе разнообразные инструментальные программные средства, в том числе программные пакеты для автоматизированного проектирования (САПР), программное обеспечение опера­ционной системы, ассемблеры, компиляторы и эмуляторы процессоров. Диапа­зон и доступность таких средств зависит от типа встраиваемого процессора. Очень хорошо, если процессор поддерживается сторонними производителями программного обеспечения, если для него имеются альтернативные источники программных средств и документации. И, конечно же, исключительно важно иметь хорошую документацию и получить полезные советы от производителей.

Тестирование и надежность

Печатные платы довольно трудно тестировать, особенно если они плотно заполне­ны микросхемами. Но архитектуру системы можно с самого начала спроектиро­вать так, чтобы максимально упростить данный процесс. В частности, микрокон­троллер может содержать схемы, способные облегчить тестирование плат, на ко­торые он устанавливается. Например, некоторые микроконтроллеры содержат порт доступа для тестирования (test access port), соответствующий стандарту IEEE 1149.1, известному как Test Access Port and Boundary-Scan Architecture.

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

Оставить комментарий

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