Представлены характеристики и особенности применения новой отечественной микросхемы — 16-разрядного аналогового микроконвертера К1874ВЕ96Т с усовершенствованной архитектурой MCS-96. Наличие на одном кристалле высокопроизводительного процессорного ядра, АЦП и ЦАП высокой разрядности, встроенного модуля отладки OCDS, а также ряда периферийных устройств позволяет создавать на основе микросхемы К1874ВЕ96Т законченные системы сбора и обработки информации, интеллектуальные датчики, устройства с автономным питанием и различные средства измерений, автоматизации и контроля.

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

Появление микроконвертеров на рынке электронных компонентов связывают, прежде всего, с фирмой Analog Devices (США). Первое семейство микроконвертеров серии ADuC8xx на базе классического 8-разрядного ядра 8052 было создано этой фирмой более 10 лет назад [1]. Это семейство включает как 12-разрядные АЦП последовательного приближения (ADuC812, ADuC841), так и прецизионные 16- и 24-разрядные АЦП с сигма-дельта модуляцией (ADuC816, ADuC824, ADuC834 и др.)

В 2004 г. Analog Devices представила на рынок новое семейство микроконвертеров серии ADuC7000 (ADuC702x) на базе 16/32-разрядного RISC-ядра ARM7TDMI [2], [3]. Ядро обеспечивает производительность до 45 Mвыб/c и имеет встроенные средства отладки — EmbeddedICE и JTAG-интерфейс. Микроконвертеры серии ADuC702x имеют также мощную периферию — АЦП, ЦАП, порты I2C, UART, SPI, компаратор, ИОН и ряд других устройств (в зависимости от модификации).

В отечественной электронной промышленности разработкой и выпуском микроконвертеров занимаются ЗАО ПКК «Миландр» (Москва, Зеленоград) и АО «НИИЭТ» (Воронеж). В ПКК «Миландр» разработаны 8-разрядный микроконтроллер 1886ВЕ6 на базе 8-разрядного RISC-процессора [4] и 32-разрядный микроконтроллер 1986ВЕ91 на базе процессора ARM Cortex-M3 [5].
В состав микроконтроллера 1886ВЕ6, предназначенного для построения различных аналоговых систем, входят память программ 12-разрядный АЦП и 12-разрядный ЦАП, блок ШИМ, компаратор, USART. Микроконтроллер 1986ВЕ91 также содержит большинство из названных устройств и, кроме того, содержит интерфейсы CAN, USB, SPI, I2C.
В этой статье представлен первый российский 16-разрядный микроконвертер К1874ВЕ96Т, разработанный в 2009 г. В АО «НИИЭТ» на базе нового процессорного ядра с усовершенствованной архитектурой MCS-96.

Общие характеристики К1874ВЕ96Т

Микроконвертер К1874ВЕ96Т представляет собой однокристальную высокоинтегрированную систему сбора и обработки данных, и предназначен для выполнения вычислительных инструкций с повышенным быстродействием и точных аналого-цифровых и цифро-аналоговых преобразований. К1874ВЕ96Т ориентирован на обработку аналоговых сигналов от различных датчиков в системах управления специальной техники, автомобильной и авиационной электроники, в удаленных системах сбора информации и инструментальных средствах. Основные технические характеристики микроконвертера К1874ВЕ96Т представлены в таблице 1.

Высокая производительность ядра позволяет использовать микроконвертер К1874ВЕ96Т при решении задач обработки сигналов (для этого имеются умножитель и делитель, выполняющие операции за один и два машинных цикла при длительности цикла, равного двум периодам тактового сигнала). Средства инструментальной отладки и встроенный отладочный модуль OCDS обеспечивают как эффективное проектирование систем на основе микроконвертера, так и возможность смены алгоритма работы при модификации систем.
Возможность гибкого управления энергопотреблением микроконвертера (три режима пониженного потребления и возможность отключения неиспользуемых периферийных блоков) позволяют использовать эти микросхемы в критичных к потреблению приложениях.

Особенность архитектуры
Микроконвертер К1874ВЕ96Т имеет общую архитектуру и набор инструкций с другими микроконтроллерами серии 1874 [6], но базируется на новом ядре разработки АО «НИИЭТ». Модель ядра была создана на языке описания аппаратуры Verilog и отличается увеличенной производительностью по сравнению с другими микросхемами серии 1874 (в среднем на 35—40% при работе на одинаковой частоте). Это достигается за счет введения конвейеризации процесса выборки — выполнения команд, полной оптимизации процесса выполнения инструкций, наличия быстрых сдвигателей, умножителя, делителя и других конструктивных особенностей. Увеличенная очередь команд (с 4 байт до 9 команд по 7 байт) и независимость процесса выполнения команд от их выборки (и наоборот) позволили уменьшить время простоя, как ЦПУ, так и внутренней или внешней шины выборки команд. При общем адресном пространстве команд и данных выборка команд осуществляется по своей независимой шине. Это означает, что при работе схемы происходит одновременное считывание/запись данных в ОЗУ или регистры и загрузка команд (как при гарвардской архитектуре). Все нововведения позволяют ЦПУ микроконвертера вплотную приблизиться по производительности к схемам с конвейерными архитектурами и использовать К1874ВЕ96Т в DSP-приложениях.

На рисунке 1 приведена структурная схема микроконвертера К1874ВЕ96Т.

Микроконвертер обладает ОЗУ 2024Ч8 бит, доступным быстрым способам адресации, и расширенным (отключаемым) ОЗУ 2048Ч8 бит, доступным косвенным способам. Интегральная микросхема (ИС) имеет встроенную энергонезависимую память программ (ПЗУ) типа EEPROM емкостью 32 Кбайт с коррекцией ошибок по коду Хемминга и защитой записи/считывания, а также удобный для пользователя механизм программирования с возможностью аппаратного управления параметрами программирующего импульса. Фабрика, на которой производятся кристаллы микроконвертера, гарантирует хранение информации во внутреннем EEPROM в течение 10 лет и сто тысяч циклов стирания/записи.
В состав микроконвертера входит сервер периферийных транзакций PTS, позволяющий передавать данные в момент простоя шины данных. Это обеспечивает прямой доступ к памяти без остановки ЦПУ, что повышает общее быстродействие системы.
ИС имеет возможность запуска программ с трех различных стартовых адресов в зависимости от состояния входных сигналов. Это позволяет организовывать различные тестовые и сервисные режимы работы аппаратуры. Кроме того пользователи могут создавать собственные алгоритмы программирования и размещать их в сервисных адресных пространствах.
Для выполнения высокоточных аналого-цифровых и цифро-аналоговых преобразований в микросхеме имеются восемь 16-разрядных сигма-дельта АЦП с возможностью одновременного преобразования и 14-разрядный высокоскоростной ЦАП с токовым выходом (2…20 ма). Особенностью АЦП является возможность организации дифференциального режима включения входов. При этом могут одновременно работать четыре преобразователя. Имеется также возможность буферизированной выдачи высокостабильного опорного напряжения на вывод порта микроконвертера. ИС имеет четыре порта последовательного ввода-вывода информации: два порта UART, один синхронный последовательный интерфейс (SPI) и интерфейс I2C. Подсистема высокоскоростного ввода/вывода представлена блоком HSIO с разрешающей способностью в один машинный цикл. Он позволяет фиксировать события на входах блока и генерировать сигналы с необходимыми временными параметрами на соответствующих выходах. Отличием микроконвертера К1874ВЕ96Т от всех других ИС серии 1874 является наличие встроенного модуля (системы) отладки OCDS. Помимо выполнения стандартных функций (формирование событий по заданному адресу операнда, данным на шине данных, значению счетчика команд) эта система позволяет реализовать аппаратную защиту от выполнения кода из внешней области команд — так называемый режим защищенного микроконтроллера.

Периферийные устройства

Микроконвертер имеет два независимых 16-разрядных многофункциональных таймера-счетчика.
В одном из таймеров используется внутренняя синхронизация (режим работы — таймер реального времени), в другом — внешняя (счетчик внешних событий). Содержимое таймеров может быть в любое время считано или программно модифицировано, а также сброшено программно или внешним сигналом.
Подсистема высокоскоростного ввода/вывода импульсных сигналов HSIO включает устройства высокоскоростного ввода HSI и устройство высокоскоростного вывода HSO. HSI может записывать время внешних событий с разрешающей способностью в один машинный цикл, а HSO может инициализировать события в определенные моменты, базирующиеся на значениях таймера 1 или таймера 2. В целом подсистема HSIO может измерять ширину импульсов, вырабатывать импульсную последовательность и вызывать периодические прерывания с незначительным использованием ЦПУ. Встроенный блок ШИМ (PWM) предназначен для генерации широтно-модулированного сигнала на выходе микросхемы без участия процессора и имеет три выхода PWM. Скважность импульса на выходе PWM является переменной величиной, импульсы повторяются каждые 256 или 512 тактов. PWM может использоваться в различных применениях. Различные типы моторов требуют использования PWM — формирователя импульсов для наиболее эффективной работы. Кроме того, фильтрация этой ШИМ-последовательности будет создавать постоянный уровень, который изменяется с изменением скважности.
Последовательные порты UART имеют по одному синхронному режиму и по три асинхронных. Асинхронные режимы полностью дуплексные, т.е. они могут передавать и принимать данные одновременно. Приемники портов ИС буферизованы так, что прием вторых байтов может начаться до считывания первых. Передатчики также дважды буферизованы.
Последовательный периферийный SPI-интерфейс предназначен для быстрого синхронного обмена информацией между микроконтроллером и периферией или между двумя микроконтроллерами. Кроме того, его можно использовать для программирования ПЗУ или отладки программы при использовании отладочного модуля. Обмен информацией через интерфейс может быть полностью дуплексным и осуществляться с использованием трех линий. Максимальная частота, на которой происходит передача, равна четверти значения частоты генератора (для 40-МГц частоты микроконтроллера — 10 МГц). Интерфейс поддерживает режим как ведомого, так и ведущего.
Блок I2C обеспечивает полную поддержку двупроводного последовательного синхронного интерфейса I2C/SMBus. Результат такой совместимости — легкое соединение со многими запоминающими устройствами и устройствами ввода-вывода, включая EEPROM, SRAM, счетчики, АЦП, ЦАП, периферийные устройства.

Функциональные возможности модуля:
– совместимость с SMBus (Version 1.1 и 2.0), ACCESS.Bus, I2C (Version 2.1);
– поддержка стандартного, скоростного и высокоскоростного режимов;
– работа в режиме ведущего или ведомого;
– возможность подключения к шине нескольких ведущих устройств;
– один определяемый программно 7/10-разрядный адрес для Slave;
– возможность одновременного обращения ко всем устройствам шины, так называемый «общий вызов».
Восемь 16-разрядных аналого-цифровых преобразователей (АЦП), реализованных в микроконвертере, построены на основе методики сигмадельта преобразования, реализующей алгоритм сверхвыборки, когда норма осуществления выборки во много раз превышает требуемую частоту. Такая реализация позволяет значительно уменьшить шумы и гарантирует стабильно высокие динамические параметры преобразователя. Блок-схема АЦП представлена на рисунке 2.

Аналого-цифровые преобразователи конвертируют аналоговые напряжения на входе в цифровой эквивалент. Минимальное время преобразования составляет 16 мкс. Особенностью организации АЦП является возможность работы как с однополярными, так и с дифференциальными сигналами. Поскольку каждый преобразователь управляется независимо, то можно реализовать различные варианты включений, например: два АЦП — в режиме дифференциального включения, четыре — в режиме однополярных сигналов или один АЦП — в режиме дифференциального включения, шесть — в режиме однополярных сигналов и т.д. единственное условие, чтобы общее количество выводов, с которыми работают преобразователи, не превышало восьми.
ИС имеет блок цифровых компараторов, позволяющих сравнивать результаты непрерывного аналого-цифрового преобразования с граничными условиями без использования ресурсов центрального процессора. Блок вырабатывает прерывания, если: результат преобразования больше заданной границы; результат преобразования меньше заданной границы; результат преобразования выходит за границы заданного диапазона; результат преобразования попадает в границы заданного диапазона. Все границы указываются в соответствующих регистрах. Цифровые компараторы объединены в группы по четыре, и каждый имеет свой приоритет. Для срабатывания компаратора с меньшим приоритетом необходимо, чтобы условие с большим приоритетом не сработало. Это позволяет на аппаратном уровне реализовывать сложные следящие алгоритмы (например, прерывание вырабатывается, когда значение первого датчика превышает заданное значение, второго — выходит за пределы заданного диапазона, третьего — попадает в диапазон и т.д.). При такой реализации ядро может большую часть времени быть отключено (находится в режиме IDLE) и включаться только в короткие промежутки для обработки прерываний.

14-разрядный цифро-аналоговый преобразователь (ЦАП) конвертирует цифровой код в аналоговый эквивалент. После записи кода в управляющий регистр на выходах ИС появляется ток, соответствующий этому коду. Время установки тока составляет 10 нс. Возможен перевод ЦАП в режим пониженного энергопотребления. Микроконвертеры имеют отдельный вход FSADJ для подстройки тока преобразователя.
Как уже отмечалось, в состав микроконвертера К1874ВЕ96Т входят сервер периферийных транзакций PTS и модуль отладки OCDS (Debug Unit). Блок PTS предназначен для аппаратной обработки прерываний. Он содержит набор встроенных алгоритмов, исходные данные для которых должны быть размещены программой пользователя, как в памяти кристалла, так и во внешней памяти. Алгоритмы PTS охватывают пересылки данных. Прерывания, обслуживаемые PTS, отрабатываются параллельно работе ЦПУ в моменты простоя шины данных, тем самым не мешая выполнению основной программы. Пересылка может осуществляться и в режиме IDLE без вывода ИС из этого режима. Сервер периферийных транзакций поддерживает обработку запросов на прерывание на микропрограммном уровне, не требуя вмешательства процессора.
Модуль отладки OCDS предназначен для упрощения процесса отладки программного обеспечения пользователей. По выбранному типу события (требуемые данные на шине данных, требуемый адрес операнда на шине адреса, значение счетчика команд, выход в область внешнего ПЗУ) этот блок генерирует следующие виды действий:
– немаскируемое прерывание;
– режим IDLE (режим ожидания, выход по прерыванию или сбросу);
– аппаратный сброс.

Аппаратный сброс вместе с настройкой контроля выхода в область внешнего ПЗУ может использоваться для контроля выполнения программ и защиты от несанкционированного доступа к внешней памяти. Следует отметить, что в микроконвертере реализовано несколько механизмов восстановления после ошибок программного обеспечения и аппаратных средств.
Микроконвертер К1874ВЕ96Т содержит многократно программируемое ПЗУ типа EEPROM емкостью 32 Кбайт. В ПЗУ могут храниться как команды, так и данные. Возможна запись содержимого ПЗУ во время работы пользовательских программ, при этом нет необходимости размещать программирующий алгоритм в области внутреннего ОЗУ или внешней памяти. Пользователи могут переписать встроенное ПО ИС К1874ВЕ96Т и реализовать свои алгоритмы. ПЗУ может быть защищено от несанкционированного чтения или перезаписи, но биты защиты могут сниматься пользователями вместе с уничтожением всех данных ПЗУ.

Микросхема К1874ВЕ96Т поддерживает три специальных (энергосберегающих) рабочих режима: IDLE (холостой ход), POWERDOWN (низкое энергопотребление) и SLOW (уменьшение внутренней частоты). Существует также возможность перевода АЦП и ЦАП в режимы пониженного потребления, а для цифровых периферийных блоков — отключения тактирования.
В режиме IDLE работают только встроенные функциональные устройства, а микроконвертер находится в режиме ожидания разрешенного прерывания от внешнего или внутреннего устройства. В режиме POWERDOWN вся внутренняя синхронизация замораживается в состоянии логического нуля, генератор отключается, а блоки АЦП и ЦАП переводятся в режим SLEEP. Энергопотребление падает — ток потребления составляет всего несколько сот микроампер. Если напряжение питания сохраняется, то регистры ОЗУ и регистры специальных функций сохраняют данные. В режиме SLOW внутренняя частота уменьшается в два раза, и длительность машинного цикла становится равной четырем тактам сигнала XTAL. Работа ЦПУ и периферийных устройств замедляется.
В микроконвертере реализован также режим ONCE. Это режим тестирования, который электрически изолирует ИС от других устройств на печатной плате. При этом микроконвертер автоматически переводится в режим POWERDOWN. Этот режим может применяться в аппаратуре с резервированием компонентов.

Программно-аппаратные средства поддержки

Микросхема К1874ВЕ96Т поддерживает режим программирования через последовательный порт. В этом случае для ее программирования не требуются специальные программаторы. Программирование выполняется с использованием COM-порта персонального компьютера и специальной программы. Программное обеспечение работает в среде Windows. В процессе программирования осуществляется самотестирование, обеспечивается контроль правильности установки микросхемы. Названные программные средства и схема подключения ИС для программирования доступны на www.niiet.ru.
Что касается отладочных средств, то может быть использована макетноотладочная плата разработки АР «ННИЭТ». С ее помощью возможно программирование микроконвертера, подключение внешних элементов к выводам, оценка работы прикладных программ. В разработке находится отладочная система (модуль) для К1874ВЕ96Т с более широкими функциональными возможностями. Она будет построена с использованием встроенного в микросхему модуля отладки OCDS и обеспечит возможность отладки прикладных программ в режиме реального времени. Имеется также возможность применения отладчика-симулятора PDS-96 ООО «Фитон» (Москва), который представляет собой интегрированный комплекс программных средств для разработки систем на основе микроконтроллеров семейства 196, программно совместимых с микросхемой К1874ВЕ96Т.

Литература

  1. Зайцев О., Троицкий Ю. Аналоговые микроконтроллеры ADuC83x и ADuC84x//Электронные компоненты, № 1, 2005.
  2. Торопов Д. Новые микроконверторы с ядром ARM7 компании Analog Devices//Электронные компоненты, № 7, 2004.
  3. Власенко А. Микроконверторы серий ADuC702x на базе ядра ARM7TDMI//Электроника: Наука, Технология, Бизнес, № 7, 2004.
  4. Гусев С., Шумилин С., Реализация многозадачных приложений на МК серии 1886//Электроника: Наука, Технология, Бизнес, №6, 2009.
  5. Шумилин С. Новая серия отечественных 32­разрядных высокопроизводительных микроконтроллеров семейства 1986 на базе процессорного ядра ARMCortex­M3//Компоненты и технологии, № 10, 2008.
  6. Ачкасов В., Медведев Н., Потапов И., Горохов В., Хорошунов В. Новые отечественные 16­разрядные микроконтроллер серии 1874 для встраиваемых систем управления//Chip News, № 10, 2007.