Поиск по сайту:

 


По базе:  

микроэлектроника, микросхема, микроконтроллер, память, msp430, MSP430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, SED1335, mega128, avr, mega128  
  Главная страница > Статьи

реклама

 




Мероприятия:




Сверхбыстродействующий микроконтроллер DS89C420 фирмы MAXIM-DALLAS

Соревнование в повышении производительности современных микроконтроллеров началось всего несколько лет назад, одновременно с появлением микроконтроллеров с RISC архитектурой, имеющие более высокую производительность, чем самые распространенные и популярные х51- совместимые микроконтроллеры. Напомним, что стандартный микроконтроллера i8051, с которого собственно и началось развитие х51-совместимых микроконтроллеров, выполнял самую короткую инструкцию за 12 периодов тактовой частоты. Иными словами, на частоте 12 МГц инструкция выполнялась за 1 мкс. В последнее время наиболее распространенным параметром производительности микроконтроллеров стала так называемая «пиковая» производительность. Этот параметр показывает, какое количество самых коротких и быстрых команд микроконтроллер может выполнить за 1 секунду и измеряется в миллионах инструкций в секунду – MIPS (Million Instructions per Second). Так вот, стандартный микроконтроллер i8051 при тактовой частоте 12 МГц имел производительность – 1 MIPS. Обычно, кроме пиковой производительности еще указывается процентное количество самых коротких инструкций, что позволяет примерно оценить среднюю производительность микроконтроллера. Появление микроконтроллеров с RISC архитектурой фактически подтолкнуло производителей х51-совместимых микроконтроллеров к необходимости модернизации вычислительного ядра. В то время многие ведущие фирмы – производители микроконтроллеров, начали выпускать микроконтроллеры с модифицированным ядром, позволяющим производить короткие операции не за 12 периодов тактовой частоты, а за 6 или 4, так называемые х2 и х4 микроконтроллеры (или с архитектурой х2 или х4). Очевидно, что их пиковая производительность поднялась за счет этого до 2-4 MIPS (12 МГц) соответственно. Одновременно за счет совершенствования технологии производства удалось поднять тактовую частоту микроконтроллеров сперва до 24 МГц, а затем и выше (33, 40, 60). За счет этого, например, при архитектуре ядра х4 и тактовой частоте 60 МГц, возможно было достичь пиковой производительности до 20 MIPS. Кардинально изменилась ситуация при появлении микроконтроллеров фирмы Cygnal (1999), которые имели полностью обновленное вычислительное ядро, выполняющее 70% инструкций за 1 период тактовой частоты (с архитектурой х12). Это позволило им занять лидирующее место в мире, т.к. на частоте 25 МГц достигалась пиковая производительность в 25 MIPS. Четыре года до октября 2003 года микроконтроллеры фирмы Cygnal были мировыми лидерами по производительности среди микроконтроллеров общего назначения. Следует отметить, что фирма Cygnal кроме микроконтроллеров общего применения выпускает еще и сверхбыстродействующие микросистемы сбора данных (F12x), развивающие пиковую производительность 100 MIPS. Рекорд фирмы Cygnal (в настоящее время, SiLabs) среди микроконтроллеров общего применения в октябре 2003 года был превзойден новым микроконтроллером DS89C420 фирмы MAXIM-DALLAS[1]. Ознакомимся с ним более подробно.

Итак, главной особенностью микроконтроллера DS89C420 является полностью новое вычислительное ядро, позволившее резко повысить производительность всех вычислительных операций и подсистем микроконтроллера. Микроконтроллер предназначен для использования в системах общего применения, поскольку не имеет встроенных подсистем смешанных сигналов (Mixed Signals), т.е. аналого-цифровых и цифро-аналоговых узлов. Микроконтроллер выпускается в трех типах корпусов: PDIP40, PLCC44 и TQFP44 для двух температурных диапазонов (от 0°C до +70° и от -40°C до +85°C). Выпускаются два исполнения для работы на тактовых частотах до 25 и 33 МГц. Функциональная схема микроконтроллера представлена на рис.1.

Структурная схема микроконтроллера
Рис. 1. Структурная схема микроконтроллера

Рассмотрим более подробно некоторые оригинальные подсистемы микроконтроллера DS89C420.

Микроконтроллер DS89C420 является полностью статической CMOS микросхемой, и одинаково хорошо работает во всем диапазоне тактовых частот от 0 до максимальной тактовой частоты 33 (25) МГц. Он имеет полную совместимость по инструкциям и разводке выводов со стандартным i8051 микроконтроллером, что позволяет использовать раннее разработанное программное обеспечение и аппаратное окружение. Однако при этом необходимо учитывать, что скорость работы нового микроконтроллера примерно в 12 раз выше, чем стандартного, так что время формирующие подпрограммы все таки необходимо корректировать. Это не касается функционирования таймеров, т.к. при сбросе микроконтроллера они устанавливаются в режим, «совместимый» со стандартным i8051, что достигается благодаря делению тактовой частоты на 12.

Карта специальных регистров (SFR) микроконтроллера DS89C420 незначительно отличается от стандартной тем, что в нее введены дополнительные регистры. Она располагается по стандартным адресам основной прямо адресуемой оперативной памяти от 0х80 до 0хFF.

Как и многие микроконтроллеры фирмы Dallas, описываемый микроконтроллер имеет два указателя данных (DPTR и DPTR1), которые используются инструкцией MOVX. Например, один из них может использоваться для адресации интегрированной оперативной памяти, а второй – внешней оперативной памяти. Пользователь может использовать либо «ручное» управление указателями с помощью программирования специального бита, либо автоматическое переключение.

Встроенная Flash память программ микроконтроллера располагается с нулевого адреса по адрес 03FFF, причем она разбита на два блока по 8 килобайт каждый. Попытки обращения к памяти программ за пределами этой зоны приводят к формированию цикла обращения к внешней памяти. Имеется также возможность полного отключения внутренней Flash памяти (ROMLESS). Встроенная Flash память может быть запрограммирована двумя методами: с помощью стандартного внешнего параллельного программатора с 5 В напряжением программирования, и с помощью встроенного механизма программирования с автозагрузкой через последовательный порт. Механизм адресации микроконтроллера оснащен специальным управляющим регистром ROMSIZE в карте SFR регистров. С помощью программирования битов этого регистра возможна настройка подсистемы памяти на различные механизмы адресации: адресный, страничный (с различным размером страницы) и странично-оконный.

Микроконтроллер имеет несколько механизмов защиты программ. Один из них – это специальный 64-байтный кодирующий массив. Он может быть записан в специально отведенную область Flash памяти. Запись может быть произведена только однократно. После записи этой последовательности, все попытки доступа к программной памяти приводят к чтению результата операции «исключающее ИЛИ» между адресуемым байтом программной памяти с внутренне определенным байтом из этого массива. Таким образом, память программ оказывается недоступна для чтения. Кроме того, имеются трехуровневый «замок» доступа к внутренней памяти программ и данных, реализованный в виде трех защитный битов. Эти биты могут быть однократно запрограммированы и сняты только при полном стирании программной памяти.

Как уже отмечалось выше, весь массив программной памяти 16 К, а также 64-байтный кодирующий массив и дополнительная оперативная память могут быть запрограммированы внутрисистемно через последовательный UART0 с помощью встроенного загрузчика, расположенного в постоянном запоминающем устройстве. Автозагрузчик имеет также функцию автоопределения скорости. Автозагрузчик активизируется при определенной комбинации сигналов управления: RST=1, EA=0 и PSEN=0, присутствующей во время подачи питания. Автозагрузчик располагается во встроенном постоянном запоминающем устройстве объемом 2 К. Более подробно с функциями автозагрузчика и программным обеспечением персонального компьютера можно познакомиться в [2].

Еще одной интересной особенностью контроллера является наличие механизма доступа к внешней памяти. Одной из функций этого аппаратного механизма является программное управление временем доступа к внешней памяти. Поскольку внутренний машинный (тактовый) цикл достаточно короткий, эта возможность является важной для обеспечения работы с более медленной внешней памятью. Если внешняя память работает в не страничном режиме, цикл доступа к ней равен четырем внутренним циклам процессорного ядра. Если внешняя память работает в одном из нескольких возможных страничных режимов, время доступа к не может быть установлено равным 1, 2 или 4 машинных цикла при работе с одной страницей или 2, 4 или 8 машинных циклов при смене страницы. Эта возможность позволяет разработчику оптимизировать быстродействие подсистемы памяти.

Подсистема прерывания микроконтроллера также достаточно оригинальна. Она имеет пять уровней приоритета в отличие от двух стандартных. Это позволяет более гибко распределять по важности прерывания от различных встроенных подсистем или внешних устройств. Поскольку эта статья носит только ознакомительный характер, более подробно на подсистеме прерываний мы останавливаться не будем. Она достаточно хорошо описана в [1].

Охранный таймер WDT микроконтроллера позволяет устанавливать период обновления до 3.9718 мс (при тактовой частоте 33 МГц). Он может быть источником прерывания и сброса микроконтроллера. Первоначально, по истечении периода обновления WDT не перезапуске его микроконтроллером, через 3,9718 мс выдается прерывание, а через 15,5 мкс – вырабатывается сброс микроконтроллера. Функции сброса и прерывания от WDT могут быть запрещены программно.

Внешний вход сброса RST микроконтроллера прямой, т.е. срабатывает при нахождении входа в состоянии логической единицы как минимум в течение 3 периодов тактовой частоты. Выполнение программы при ситуации сброса начинается с нулевого адреса через 4 периода тактовой частоты. Если во время сброса микроконтроллер остановлен, сигнал сброса запускает тактовый генератор, а затем начинает выполнение программы с нулевого адреса. Задержка, необходимая для стабилизации частоты кварцевого генератора составляет 65,536 периодов тактовой частоты. Вход сброса является двунаправленным, и если ситуация сброса вызвана, например, снижением напряжения питания или переполнением охранного таймера WDT, на входе RST формируется выходной импульс сброса. Это необходимо учитывать при разработке внешних цепей сброса микроконтроллера.

В описываемый микроконтроллер встроен детектор состояния тактового генератора, вызывающий сброс микроконтроллера при снижении частоты тактового генератора ниже 20 кГц, при этом Ring-генератор остается рабочим. Детектор состояния тактового генератора программно управляется с помощью битов OFDE и OFDF.

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

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

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

В заключении отметим еще раз, что на сегодняшний день этот микроконтроллер является самым быстродействующим среди микроконтроллеров общего применения, обеспечивая пиковую производительность около 33 MIPS, следующим за ним является семейство микроконтроллеров фирмы SiLabs C8051F2xx, обеспечивающих пиковую производительность до 25 MIPS, а следом ряд AVR микроконтроллеров фирмы Atmel. Поскольку микроконтроллер выпускается в стандартных корпусах и имеет стандартную разводку выводов, он очень удобен для повышения производительности уже выпускаемых микроконтроллерных изделий путем простой замены микроконтроллера и небольшой доработки программного обеспечения.

Литература:

  1. http://www.maxim-ic.com/ds89c420.pdf
  2. http://www.maxim-ic.com/micros/ftpinfo.html





 
Впервые? | Реклама на сайте | О проекте | Карта портала
тел. редакции: +7 (995) 900 6254. e-mail:info@eust.ru
©1998-2023 Рынок Микроэлектроники