Специализированные микропроцессоры. Аппаратные средства микроконтроллеров

Специализированный микропроцессоры Специализированный микропроцессоры – к

этому классу процессоров обычно относят:

? микроконтроллеры, предназначенные для применения во встроенных систе­мах управления;

? цифровые сигнальные процессоры (

Digital

Signal

Processors

DSP

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

PIC

–контроллерам, излагаются вопросы по микроконтрол­лерам семейства

MCS

–51, достаточно подробно рассмотрена структурно–функциональная организация и программная модель контроллеров.

В разделе также будут рассмотрены про­цессоры семейства

ADSP

–21

XX

фирмы

Analog

Devices

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

Аппаратные средства микроконтроллеров

Общие сведения

Введение.

Цифровая техника развивается по нескольким направлениям. Ее возникновение (как и самого термина «цифровая») обусловлено стремлением со­здания средств автоматического решения задач, требующих многократных и слож­ных вычислений. Появление микропроцессоров послужило сильным толчком в развитии этого направления и привело к созданию электронно–вычислительных машин (ЭВМ), а затем — персональных компьютеров. Выпустив в 1976 г. первый универсальный 8–разрядный микроконтроллер 8048, фирма

INTEL

открыла новое перспективное направление цифровой техники, связанное с разработкой и при­менением встраиваемых микроконтроллеров (

Embedded

Microcontrollers

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

Новый этап в развитии микроэлектронной техники, наступивший с появ­лением микроконтроллеров, изменил подход к проектированию и реализации систем управления, потребовал использования новых архитектурных и структурных

решений.

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

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

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

Таким образом, микроконтроллер (МК) — это микропроцессорная система об­работки информации, предназначенная для управления объектами, выполненная на одной БИС и содержащая все необходимые функциональные блоки и узлы, не­обходимые для обработки информации: центральный процессор, память и пери­ферийные устройства для ввода и вывода информации.

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

Основные области применения 8–разрядных МК:

? встроенные системы управления бытовыми приборами и механизмами;

? средства обеспечения безопасности, системы охранной сигнализации;

? средства связи, измерений, контроля, диагностики, отображения информации;

? системы управления промышленным оборудованием, системами энергопи­тания.

Современные 8–разрядные МК отвечает таким требованиям как:

? простота схемотехнических решений при большом наборе выполняемых функций;

? малое энергопотребление при высоком быстродействии;

? малые затраты на подготовку производства при подготовке серийного выпус­ка изделий;

? простота и доступность цены технических средств для разработки и отладки схем.

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

Особенности микроконтроллерных систем.

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

Классификация микроконтроллеров.

Приведем основные классификацион­ные признаки микроконтроллеров.

Разрядность микроконтроллеров.

По этому признаку МК разделяются на три группы: 8–, 16– и 32–разрядные микроконтроллеры.

Расположение памяти.

По расположению и использованию памяти мож­но выделить два типа микроконтроллеров.

? Микроконтроллеры с внутренней памятью. К ним относятся 8–разрядные встраиваемые микроконтроллеры, в которых память, а также устройства вво­да–вывода и другие необходимые ресурсы располагаются на одном кристал­ле с процессорным ядром. Встраиваемые микроконтроллеры предназначены для реализации комплекса несложных функций таких, как управление объек­тами, с помощью недорогих средств. Наличие в контроллере вспомогатель­ных устройств позволяет использовать минимальное количество дополни­тельных компонентов при его включении в создаваемую систему. Для функ­ционирования встраиваемого контроллера достаточно подвести питание и тактовые сигналы.

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

CMOS

–технологии, позволяющей значительно уменьшить размеры кристалла и рассеиваемую мощность. Максимальная частота тактовых сигналов микроконтроллеров ограничивается временем доступа к памяти и составляет 10…50 МГц. Для большинства применений это ограничение не является существенным.

? Микроконтроллеры с внешней памятью. К ним относятся 16– и 32–разрядные микроконтроллеры, использующие только внешнюю память (как память про­грамм, так и некоторый объем памяти данных, требуемый для данного при­менения).

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

RAM

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

Архитектура процессоров.

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

С точки зрения форматов используемых команд

различают два вида архитек­тур микроконтроллеров:

CISC

– и

RISC

–архитектуру. Их сравнительная характери­стика дана в табл. 4.1.1. табл. 4.1.1

Как видно и табл. 4.1.1, оба вида архитектур находят применение в различных семействах микроконтроллеров.

По способу организация выборки команд и данных различают

Принстонскую и Гарвардскую архитектуры.

Характерные их особенности приведены в табл. 4.1.2. табл. 4.1.2

Показатели микроконтроллеров.

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

К основным причинам относятся:

? весьма широкая номенклатура (сотни, тысячи различных моделей) выпуска­емых изделий, охватывающая области применения от бытовой техники до сложных динамических систем управления и робототехники;

? концепция заказных изделий, впервые реализованная фирмой

Motorola

при изготовлении семейства 8–разрядных микроконтроллеров НС08 для массовых приложений. Архитектура микроконтроллера определяется пользователем и создается на базе набора стандартных модулей, что значительно сокращает сроки изготовления заказного изделия;

? использование микроконтроллеров в качества встраиваемых устройств в объек­ты управления и влияние их показателей на характеристики всей системы. Рассмотрим основные показатели микроконтроллеров.

Показатели архитектуры.

Это наиболее многочисленная группа показа­телей, отражающая такие архитектурные особенности микроконтроллеров как:

? вид архитектуры (

RISC

или

CISC

, Гарвардская и Принстонская архитектура);

? организация памяти (тип памяти, карты памяти программ и данных; набор программно–доступных регистров; назначение отдельных бит регистров и др.);

? показатели процессорного ядра и периферии (аппаратный состав и функции); система команд (количество команд, формат команды, циклы выполнения, особенности выборки и др.);

? способы адресации (прямая, непосредственная, косвенная адресация и др.);

? способы обработки данных (обмен, прерывания, прямой доступ к памяти и др.);

? другие показатели (возможность выбора типа генератора тактирования; на­личие специальных таймеров; режим пониженного потребления; защита кода от считывания; биты идентификации и др.).

Электрические показатели.

В эту группу показателей входят:

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

? временные диаграммы и параметры. С их помощью задаются требования к форме сигналов и параметрам (длительность, частота) для генераторов, таймеров, портов и других устройств;

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

Конструкционно–технологические показатели.

К ним относятся:

? используемый тип корпусов и их маркировка;

? количество выводов и их назначение;

? система обозначений МК;

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

Поддержка разработок.

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

Современные микроконтроллеры поддерживаются полным набором про­граммных и аппаратных средств разработки, включающих:

? макроассемблер,

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

? компилятор

(

Compiler

) — программа, транслирующая исходную программу (

Source

Program

) на языке высокого уровня в объектный код перед ее выпол­нением. Объектный код (

Object

Code

) — исполнительный машинный код или некоторый его вариант;

? симулятор

(Simulator

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

? эмулятор

(Emulator)

— аппаратное или (микро)программное средство, позво­ляющее инструментальному компьютеру имитировать работу микроконтрол­лера. Эмуляторы используются для отладки устройства в реальном времени;

? программатор

(Programmer)

— автономный или управляемый от компьютера прибор для записи (программирования) содержимого в микросхемы

PROM, EPROM

и флэш–памяти. Для аппаратной поддержки режима программирова­ния микросхем имеются различные типы программаторов, подключаемых к компьютерам типа IBM PC. Существуют типы программаторов, которые можно подключать непосредственно к рабочей плате контроллера, что значительно ускоряет отладку. Режим программирования задается путем ус­тановки соответствующего напряжения;

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

Производительность микроконтроллера.

Этот показатель является одним из важнейших при управлении объектами в реальном времени.

Наиболее распространенной единицей измерения производительности конт­роллеров (как и процессоров) является

MIPS

(

Million

Instruction

Per

Second

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

MIPS

представляет собой частоту в мегагерцах (МГц). Поэтому мерой косвенной оценки производительности МК может служить предельная частота тактирования (

fXCLK

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

fBUS

) по внутренним магистралям адреса и данных. Соотношение

fXCLK

/

fBUS

для разных семейств микроконтроллеров имеет различное значение, например:

?

fXCLK

/

fBUS

=

12 для семейства

MSC–51

фирмы

Intel;

? fXCLK/fBUS = 4

для

семейства

PIC 16

фирмы

Microchip;

? fXCLK/fBUS = 1

для

семейства

AVR

фирмы

Amtel;

?

fXCLK

/

fBUS

< 1 для семейства НС08МК фирмы

Motorola

, поскольку тактирование осуществляется с использованием умножителя частоты и

fXCLK

>

fBUS

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

fBUS

с приведенной в паспортных данных частотой

fXCLK

.

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

RISC

–архитектурой выполняют каждую команду за один машинный цикл, длительность которого составляет 1/

fBUS

, следовательно, их про­изводительность (в

MIPS

) равна

fBUS

(в МГц): например, производительность

PIC16

составляет 5

MIPS,

а контроллеров

AVR

— 20

MIPS

.

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

CISC

–архитектурой имеют более низкую производитель­ность, так как на выполнение операции регистр–регистр затрачивают от 1 до 3 циклов.

Однако рассмотренная оценка производительности не учитывает особен­ностей алгоритмов управления, используемых в конкретных областях примене­ния. Алгоритмы управления (или функционирования) позволяют выявить наибо­лее узкие места по быстродействию системы управления, например:

? в быстродействующих регуляторах основное внимание следует уделять вре­мени выполнения операций умножения и деления, которые требуются при реализации уравнений различных передаточных функций;

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

? в устройствах силовой электроники на первый план выходит реализация бы­строго перебора больших таблиц данных.

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

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

? распознавания запроса на прерывание;

? ожидания завершения выполнения текущей команды;

? сохранения содержимого программного счетчика и некоторых регистров в стеке;

? загрузки вектора прерывания в процессор МК; выполнения некоторых вспомогательные команд.

Принципы построения современных контроллеров.

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

Процессорное ядро

представляет собой базовый, неизменный функцио­нальный блок контроллера, предназначенный для использования во всех моделях семейства. Обозначение имени семейства МК ассоциируется с названием процессорного ядра, основой которого оно является. Например, семейство НС05 контроллеров фирмы

Motorola

имеет процессорное ядро НС05, основанное на архитектуре популярного микропроцессора 6800. В состав процессорного ядра входят:

? центральный процессор;

? формирователь многофазной импульсной последовательности для тактиро­вания центрального процессора и межмодульных магистралей;

? устройство управления режимами работы МК (активным режимом, в котором МК выполняет прикладную программу; режимами пониженного энергопотреб­ления, начального запуска и прерываний);

? внутренние шины адреса, данных и управления.

Функциональный блок

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

Библиотека периферийных модулей.

Совокупность модулей, разра­ботанных для конкретного процессорного ядра, называют библиотекой перифе­рийных модулей. В библиотеку семейств МК входят:

? модули памяти. Память типа

FLASH

и

EEPROM

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

? модули периферийных устройств, включающие:

• параллельные порты ввода/вывода;

• контроллеры последовательного интерфейса

(UART, SCI, SPI,

l

2

C

,

CAN

,

USB

);

• таймеры–счетчики, таймеры периодических прерываний, процессоры событии,

• аналого–цифровые и цифроаналоговые преобразователи;

• контроллеры ЖК–индикаторов и светодиодной матрицы;

• другие типы модулей, например, модуль прямого доступа к памяти, модуль управления ключами силовых инверторов напряжения, модуль генератора для тонального набора номера в телефонии;

? модули встроенных генераторов синхронизации. Генераторы синхронизации 8–разрядных МК в настоящее время разделились на два класса: собственно генераторы синхронизации и формирователи многофазной последовательности импульсов для тактирования центрального процессора и межмодульных шин.

Расширился круг схемотехнических решений генераторов синхронизации. В качестве времязадающего элемента помимо кварца широко используются керамический резонатор и

RC

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

? модули контроля питающего напряжением и хода выполнения программы,

осуществляющие диагностику некоторых подсистем МК и позволяющие вос­становить работоспособность устройства на основе МК при нарушениях про­граммного характера, сбоях в системе синхронизации, снижении напряжения питания;

? модули внутрисхемной отладки и программирования,

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

Использование в 8–разрядных контроллерах внутренних шин адреса, данных и управления лишает разработчика изделия на МК возможности подключения внешних запоминающих устройств (из–за отсутствия внешних выводов). Поэтому в состав каждого семейства МК входит ряд модификаций с одним и тем же набо­ром периферийных модулей, отличающихся только объемом резидентной (встро­енной) памяти программ и данных. Это позволяет разработчику изделия выбрать МК с требуемым объемом памяти внутреннего ПЗУ.

Понравилась статья? Поделиться с друзьями:
Все об энергетике, электротехнике и электронике
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: