Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МвСУ_16.11.2011.doc
Скачиваний:
7
Добавлен:
01.04.2025
Размер:
6.76 Mб
Скачать

Процессоры arm

Рис. 31. Структурная схема процессора PowerPC 620:

ША – шина адресов; ШД – шина данных

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

Архитектура микропроцессоров PowerPC развивается и дополняется новыми моделями. Кроме компании IBM, процессоры этой архитектуры производит компания Motorola, использующая в обозначении своих процессоров префикс МРС.

6.2. Микропроцессоры с архитектурой arm

Фирмой ARM разработан целый ряд 32-битных RISC-процессоров с раз­личными возможностями и различной производительностью, а ядро ARM7, разработанное еще в 1994 году, используется до настоящего времени. Сама фир­ма определяет процессор ARM7 как универсальное ядро 32-битного RISC-мик­ропроцессора с малым энергопотреблением, предназначенное для использова­ния в различных заказных и специальных ИС. Малые размеры RISC-ядра поз­воляют успешно интегрировать его в большие заказные схемы, которые могут содержать RAM, ROM (Flash), DSP, дополнительную логику и другие элементы.

К областям применения ядра ARM7 фирма-производитель относит:

• телекоммуникации — контроллеры GSM-терминалов;

• обмен данными — средства преобразования протоколов и модемы;

• портативные вычисления — Palmtop-компьютеры;

• портативные измерительные устройства — карманные устройства сбора данных;

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

• информационные системы — Smart-карты;

• средства отображения — JPEG-контроллеры.

Процессорное ядро ARM7TDMI-S

Буквенные обозначения «TDMI-S» в названии ядра ARM7TDMI-S, соглас­но спецификациям фирмы ARM, имеют следующую расшифровку:

Т — указывает на наличие в составе ядра, помимо базовой архитектуры ARM, дополнительной архитектуры THUMB. Это позволяет пользовате­лю выбрать для своего приложения одно из двух состояний (систем ко­манд): ARM или THUMB;

D — ядро имеет в своем составе дополнительные отладочные модули;

М — ядро имеет в своем составе дополнительный аппаратный умножи­тель, позволяющий выполнять команды умножения так называемой длинной формы (с 64-битным результатом);

I — ядро имеет в своем составе встроенную логику отладки (ICE);

S — ядро является полностью синтезируемым, т. е. его функционирова­ние может быть описано на языках описания цифровых устройств VHDL или Verilog.

ARM7TDMI-S — универсальный 32-битный микропроцессор, который пот­ребляет сравнительно небольшую мощность и при этом обеспечивает высокую эф­фективность. Архитектура ARM основана на использовании сокращенного набора команд процессора (RISC — Reduced Instruction Set Computer) и реализует намного более простой механизм декодирования команд, нежели у микроконтроллеров с архитектурой, основанной на использовании полного набора команд процессора (CISC — Complex Instruction Set Computer). Эта простота обеспечивает высокую производительность при выполнении каждой команды, а также малое время реак­ции на прерывания в реальном времени. В состав ядра включены отладочные ин- терфейсы JTAG и ЕТМ, а также встроенная логическая схема отладки ICE. Упро­щенная блок-схема процессорного ядра ARM7TDMI-S приведена на Рис. 1.1. Бо­лее подробную информацию об архитектуре и особенностях построения ядра ARM7TDMI-S можно найти в технической документации, которая находится на прилагаемом к данной книге компакт-диске, а также в источниках.

Для того, чтобы обеспечить непрерывность при обработке программ и обра­щениях к памяти, в ARM7TDMI-S, как и во многих других ядрах, реализован кон­вейер команд. Трехступенчатый конвейер ARM7TDMI-S работает следующим об­разом: пока одна инструкция выполняется, из двух следующих за ней в программе инструкций первая декодируется, а вторая считывается в памяти. Наличие кон­вейера позволяет выполнять последовательно поступающие команды (в том чис­ле, команды умножения), затрачивая на обработку каждой из них один такт.

Ядро ARM7TDMI-S, помимо стандартного базового состояния, называемого ARM, также использует уникальное архитектурное решение, известное как со­стояние THUMB. Это решение в большей степени, нежели состояние ARM, под­ходит для крупномасштабных приложений, реализация которых предполагает ограничение объема используемой памяти или размера программного кода. Идея состояния THUMB заключается в использовании уменьшенной, по сравнению с системой команд ARM, системы команд. По существу, процессор ARM7TDMI-S имеет две системы команд:

стандартная 32-битная система команд ARM;

16-битная система команд THUMB.

МК СЕМЕЙСТВА ADUC70XX ФИРМЫ ANALOG EVICES

Микросхемы семейства ADuC70xx представляют собой 32/16-битные МК с ядром ARM7TDMI. Среди перечисленных выше семейств МК ARM7 ADuC70xx являются абсолютными лидерами в области аналоговой периферии, поскольку имеют на кристалле 12-битные АЦП и ЦАП (у остальных семейств — только 10-битные). Однако по сравнению с другими МК на базе ARM7 ADuC70xx имеют сравнительно невысокую производительность ядра (тактовая частота до 45 МГц). Причина этого, очевидно, заключается в том, что производитель позиционирует ADuC70xx как «прецизионные аналоговые микроконтроллеры», относящиеся к классу устройств, носящих оригинальное название «микроконверторы». Этот термин принадлежит компании Analog Devices и подразумевает устройство, со­держащее на одном кристалле приоритетный узел — прецизионный АЦП и вспо­могательный узел — процессорное ядро, обслуживающее АЦП, а также прочую аналоговую и цифровую периферию. Согласно концепции построения микро­конверторов основное внимание производитель уделяет аналоговым измерени­ям, а ядро и вся цифровая часть микросхемы являются по сути обвязкой АЦП, предназначенной для обработки результатов измерений и организации интер­фейсов передачи данных и взаимодействия с пользователем.

Микроконтроллеры ADuC70xx имеют следующие типовые особенности.

• Встроенная аналоговая периферия:

многоканальный (до 16 каналов) 12-битный АЦП с производительнос­тью до 1 MSPS;

многоканальный (до 4 каналов) 12-битный ЦАП с выходом по напряже­нию;

встроенный высокостабильный ИОН (с температурным коэффициен­том ±40 ррт/°С);

встроенный температурный датчик;

встроенный аналоговый компаратор.

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

ARM7TDMI с 32/16-битной RISC-архитектурой;

встроенный порт JTAG, обеспечивающий загрузку/отладку кода;

возможность тактирования от внешнего тактового сигнала или от систе­мы ФАПЧ (до 45 МГц) со встроенным генератором или генератором с внешним кварцевым резонатором и программируемым делителем;

— 24 источника аппаратных прерываний и программные прерывания.

• Встроенная память:

62 КБ флэш/ЕЕ-памяти (с ресурсом до 10000 циклов стирания/записи);

8 КБ оперативной памяти SRAM;

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

внутрисхемная загрузка флэш/ЕЕ-памяти и SRAM через JTAG;

внутрисхемная загрузка флэш/ЕЕ-памяти через UART или 12С;

возможность внутрисистемного программирования флэш/ЕЕ-памяти пользовательской программой;

встроенный загрузчик памяти и конфигуратор ядра (kernel);

возможность подключения внешней памяти EPROM/RAM.

• Встроенная цифровая периферия:

порты UART, SPI, два 12С;

порты общего назначения GPIO (до 40 линий ввода/вывода);

два таймера общего назначения;

схема сброса при включении (таймер «пробуждения») и сторожевой тай­мер;

монитор источника питания;

трёхфазный 16-битный генератор ШИМ;

программируемая логическая матрица PLA.

• Питание и исполнение:

номинальное напряжение питания 3.3 В;

ток потребления в активном режиме:

при тактовой частоте 1 МГц 3 мА;

при тактовой частоте 45 МГц 50 мА;

рабочий температурный диапазон —40...+125°С;

исполнение в корпусах от 40-выводного LFCSP до 80-выводного LQFP.

МК СЕМЕЙСТВА LPC2000 ФИРМЫ NXP

Семейство LPC2000 представляет собой 32/16-битные микроконтроллеры с ядром ARM7TDMI-S. Согласно рекомендациям производителя они предназна­чены для использования в автомобилестроении, медицине, сетевых устройствах, а также в промышленной и бытовой электронике, в том числе с батарейным пи­танием. Выпускаемые в настоящее время МК работают на тактовой частоте до 60 МГц, обеспечивая производительность до 54 MIPS, имеют встроенную память ROM типа флэш объемом 32... 1024 КБ со 128-битной шиной, статическую опера­тивную память (SRAM) объёмом 2...64 КБ, модули ШИМ, многоканальный 10-битный модуль АЦП, 10-битный модуль ЦАП, интерфейсы I2C, SPI, CAN, два UART (один UART с полным модемным интерфейсом), USB.

Микроконтроллеры LPC2000 имеют следующие типовые особенности:

32/16-битное ядро ARM7TDMI-S;

встроенный генератор 1...30 МГц и схема ФАПЧ;

2/4/8/32/16/64 КБ памяти типа SRAM (статическое ОЗУ);

32/64/128/256/512/1024 КБ памяти типа флэш с 128-битной шиной и обра­щением без цикла ожидания (ресурс не менее 10000 циклов стирания/запи­си в рабочем температурном диапазоне);

стандартный отладочный интерфейс JTAG;

ISP (In-System Programming) внутрисистемное программирование флэш-памяти;

LAP (In-Application Programming) режим побайтового программирования в составе целевой программы (пользовательского приложения). Программи­рование 512-байтовой (256-байтовой) строки занимает 1 мс, полное стира­ние всей памяти занимает 400 мс;

работа с командами длиной 32 бита (стандартный режим ARM) и 16 бит (ре­жим Thumb);

внешняя 8/32/16-битная шина (только для МК LPC2000 в 144-выводном корпусе);

многоканальный модуль ШИМ;

интерфейсы UART, 12С (400 Кбит/с), SPI;

интерфейсы CAN с приемными фильтрами;

два 32-битных таймера с каналами сравнения и захвата;

таймер реального времени и сторожевой таймер WDT ;

интерфейс USB;

многоканальный 10-битный АЦП с временем преобразования в одном ка­нале 2.44 мкс;

10-битный модуль ЦАП;

встроенный отладочный интерфейс ICE, позволяющий задавать точки ос­танова;

раздельное питание для ядра и встроенной периферии (1.65...1.95 В/3.0...3.6 В), отключение неиспользуемой периферии, два режима экономии потреб­ляемой мощности;

• ток потребления от источника питания ядра 1.8 В в активном режиме:

при тактовой частоте 60 МГц и неактивной периферии 60 мА;

при тактовой частоте 10 МГц и неактивной периферии 10 мА;

в режиме Power-down при неактивной периферии 10 мкА;

индивидуальное управление питанием встроенной периферии;

линии ввода/вывода общего назначения GPIO с питающим напряжением 3.0...3.6 В, толерантные к внешнему напряжению 5 В.

Производитель рекомендует следующие области применения МК LPC2000:

индустриальный контроль (управление);

медицинские системы;

управление доступом;

машина-шлюз для связи между сетями;

встроенный модем;

универсальные приложения.

MK TMS470R1X ФИРМЫ TEXAS INSTRUMENTS

Микросхемы семейства TMS470Rlx представляют собой 32/16-битные МК с ядром ARM7TDMI-S и имеют следующие типовые особенности.

• Процессор и память:

32/16-битное ядро TMS470Rlx (ARM7TDMI™);

системная синхронизация 24 МГц (в режиме конвейеризации 60 МГц);

раздельные 32/16-битные наборы команд;

встроенный отладочный модуль;

флэш-память программ размером до 1 МБ;

два банка с 14 смежными секторами;

встроенный цифровой автомат программирования и стирания;

статическое ОЗУ (SRAM) размером до 64 КБ.

• Характеристики питания:

напряжение питания ядра (VCC) 1.81 В...2.05 В;

напряжение питания ввода/вывода (VCCIO) 3.0 В...3.6 В;

экономичные режимы: STANDBY и HALT;

промышленный температурный диапазон —40...+105°С.

Модуль расширения шины (ЕВМ).

Модуль защиты памяти (MSM).

Системный модуль 470+:

32-битная дешифрация адресного пространства;

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

аналоговый сторожевой таймер (AWD);

прерывание реального времени (RTI);

модуль расширения прерываний (IEM);

детектирование системной целостности и отказа.

Контроллер прямого доступа к памяти (DMA): 32 пакета управления и 16 каналов.

Модуль синхронизации с предделителем на основе фазовой автоподстрой­ки частоты с нулевым выводом (ZPLL):

выборочное умножение частоты на 4 или на 8;

режим обхода ZPLL.

• 7 коммуникационных интерфейсов:

три последовательных периферийных интерфейса (SPI);

255 программируемых скоростей

два последовательных коммуникационных интерфейса (SCI);

224 выбираемых скоростей связи;

асинхронный/изохронный режимы;

два стандартных CAN-контроллера (SCC);

16 почтовых ящиков в каждом SCC CAN-контроллере;

два высококачественных CAN-контроллера (НЕСС), совместимых с версией CAN 2.0В;

32 почтовых ящика в каждом НЕСС CAN-контроллере.

• Программируемый таймер (НЕТ):

до 32 программируемых каналов ввода/вывода;

до 24 выводов с высоким разрешением;

до 8 выводов со стандартным разрешением;

открытая функция высокого разрешения (XOR);

ОЗУ (емкость — 128 инструкций).

• 10-битный многобуферный блок АЦП:

до 16 аналоговых входов;

буфер FIFO ёмкостью 128 слов;

одиночный или непрерывный режимы преобразований;

минимальное время выборки и преобразования — 1.55 мкс;

калибровочный режим и функции самотестирования.

8 внешних прерываний.

27 линий ввода/вывода общего назначения, 1 линия ввода и 59 дополни­тельных линий ввода/вывода периферийных устройств.

Встроенная логика эмуляции по принципу сканирования, порт доступа к функции тестирования по стандарту IEEE 1149.1 (JTAG). Граничное скани­рование не поддерживается.

Исполнение в 144-выводном корпусе с четырёхсторонним расположением выводов (LQFP).

МК СЕМЕЙСТВА AT91SAM7 ФИРМЫ ATMEL

Микроконтроллеры семейства AT91SAM7 имеют следующие основные осо­бенности (на примере МК AT91SAM7X256/128).

• Процессорное ядро ARM7TDMI ARM Thumb, которое обеспечивает:

высокоэффективную 32-битную RISC-архитектуру;

16-битную систему команд высокой плотности (режим Thumb);

наилучшее соотношение производительности и потребляемой мощнос­ти (MIPS/Bt);

возможность внутрисхемной эмуляции EmbeddedlCE ™;

поддержку коммуникационного канала отладки.

• Встроенная высокоскоростная флэш-память:

256 КБ (AT91SAM7X256), организована как 1024 страницы по 256 байт;

128 КБ (AT91SAM7X128), организована как 512 страниц по 256 байт;

доступ за один цикл при тактовой частоте до 30 МГц для самых плохих условий;

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

время программирования страницы флэш-памяти (включая автомати­ческое стирание страницы) 6 мс;

время стирания всей флэш-памяти 15 мс;

ресурс флэш-памяти — 10000 циклов записи; время хранения данных — 10 лет;

возможность блокировки сектора, перепрограммируемый бит защиты;

интерфейс быстрого программирования флэш-памяти (FFPI) для про­граммирования большого объёма устройств в партии.

• Встроенная высокоскоростная оперативная память SRAM с доступом за один цикл при максимальной тактовой частоте:

64KB(AT91SAM7X256);

32KB(AT91SAM7X128).

Контроллер памяти (МС): встроенный контроллер флэш-памяти. Обеспе­чивает обнаружение состояний аварийного останова и нарушения границ доступа к памяти.

Контроллер сброса (RSTC) обеспечивает:

— организацию сброса при включении питания и наличие детектора про­валов и понижения напряжения питания с заводской калибровкой;

— приём внешнего сигнала сброса и оценку состояния источников сброса.

Тактовый генератор (CKGR): встроенный RC-генератор с низким энерго­потреблением, внешний кварцевый резонатор 3...20 МГц и один модуль ФАПЧ (PLL).

Контроллер управления питанием (РМС) обеспечивает:

возможности оптимизации потребляемой мощности, включение режима медленного тактирования (менее 500 Гц) и режим ожидания (Idle Mode);

четыре программируемых внешних источника синхросигнала.

• Расширенный контроллер прерывания (AIC):

индивидуально маскируемые, векторизованные источники прерываний с восемью уровнями приоритета;

два источника внешних прерываний и один источник быстрого преры­вания, защита от ложных прерываний.

• Модуль отладки (DBGU) обеспечивает:

двухпроводной отладочный порт UART и поддержку прерывания от коммуникационного канала отладки;

программируемое предотвращение доступа (ICE).

Периодический интервальный таймер (PIT): программируемый 20-битный счётчик и 12-битный интервальный счётчик.

Сторожевой таймер (WDT):

защищенный ключом 12-битный программируемый счётчик;

генерация системного сброса или сигнала системного прерывания;

возможность останова счётчика, когда МК находится в режиме отладки (Debug State) или в режиме ожидания (Idle Mode).

• Таймер реального времени (RTT):

32-битный счётчик свободного доступа с механизмом тревоги;

тактирование от внутреннего RC-генератора.

• Два контроллера параллельного ввода/вывода (РЮ):

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

возможность генерации прерывания при изменении внешнего сигнала на каждой линии ввода/вывода;

индивидуальное программирование линии ввода/вывода как выхода с открытым стоком, синхронного выхода или включение подтягивающего к «плюсу» питания резистора.

Тринадцать каналов периферийного контроллера прямого доступа к памяти DMA (PDC).

Один порт полноскоростного (Full Speed) устройства USB 2.0 (12 Мбит/с): приёмопередатчик на кристалле, 1352-байтовые буферы FIFO с программи­руемой конфигурацией.

Один интерфейс Ethernet MAC 10/100 base-T:

MII/RMII-интерфейс;

интегрированные 28-байтовые буферы FIFO и выделенные каналы DMA для передачи и приёма.

Один 2.0А и 2.0В-совместимый CAN-контроллер: восемь полностью про­граммируемых почтовых ящиков сообщений объектов, 16-битный счётчик временных меток

Один синхронный последовательный контроллер (SSC), который обеспе­чивает:

независимые синхронизацию и синхросигналы фрейма для каждого приёмника и передатчика;

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

возможность организации непрерывного высокоскоростного потока пе­редачи 32-битных данных.

• Два универсальных синхронно-асинхронных приёмопередатчика (USART):

индивидуальный генератор скорости обмена, аппаратная модуляция/де­модуляция IrDA;

поддержка IS07816 Т0/Т1 интерфейса Smart-карт, аппаратная реализа­ция процедуры установления связи, поддержка интерфейса RS-485;

поддержка полного модемного интерфейса линий USART1.

• Два ведущих/ведомых последовательных периферийных интерфейса (SPI):

программируемая (8...16)-битная передача данных;

4 линии выбора ведомых устройств.

• Один трёхканальный 16-битный таймер/счётчик (ТС):

три внешних входа тактирования, две ножки ввода/вывода общего на­значения на канал;

двойной генератор ШИМ (PWM), режим сравнения/захвата, возмож­ность счёта на возрастание/убывание.

Один четырёхканальный 16-битный контроллер ШИМ (PWMC).

Один двухпроводной (Two-wire) интерфейс (TWI):

поддержка только режима ведущего;

поддержка всех Two-wire-EEPROM фирмы Atmel.

Один восьмиканальный 10-битный аналого-цифровой преобразователь, че­тыре канала которого мультиплексированы с цифровыми линиями вво­да/вывода.

Стартовый загрузчик SAM-BA":

запрограммированная при изготовлении стартовая программа (Boot);

графический пользовательский интерфейс SAM-BA.

Интерфейс граничного сканирования IEEE 1149.1 JTAG на всех цифровых выводах.

Толерантные к напряжению 5 В линии ввода/вывода, включая четыре ли­нии ввода/вывода с высокой нагрузочной способностью (до 16 мА каждый).

Подсистема питания:

встроенный стабилизатор напряжения 1.8 В, обеспечивающий ток на­грузки до 100 мА, для питания ядра и внешних компонентов;

вывод VDDIO для подачи напряжения 3.3 В, используемого для питания линий ввода/вывода;

вывод VDDFLASH для подачи напряжения 3.3 В на независимый источ­ник питания флэш-памяти;

вывод VDDCORE для подачи напряжения 1.8 В на основной источник питания с детектором провалов напряжения питания.

Полностью статическая конфигурация: тактовая частота ядра — до 55 МГц при напряжении питания ядра 1.65 В и температуре +85°С (самые плохие условия).

Исполнение в корпусе LQFP со 100 выводами.