|
Н. Королев
Программируемая логика: взгляд со стороны ATMEL
Фирма ATMEL широко известна на российском рынке в первую очередь своими ФЛЭШ-микроконтроллерами. Сперва появились микроконтроллеры серии АТ89, являющиеся аналогом интеловского MSC51, а затем AVR-микроконтроллеры серии АТ90 - собственная разработка
фирмы - которые на глазах становятся промышленным стандартом. Менее известны в России микросхемы программируемой логики, хотя именно в этой области есть интересные технические решения.
ATMEL ежегодно проводит технические семинары для своих дистрибьюторов. В этом году такой семинар состоялся в середине мая в Марокко. На нём присутствовали технические специалисты из 11
европейских стран. В силу ряда причин, на семинаре был единственный представитель России, автор предлагаемой читателям статьи, сотрудник фирмы АРГУС-СОФТ (на снимке - без головного убора). Майское марокканское солнце припекало ещё не очень сильно, поэтому внимание участников семинара в основном было занято происходящим в конференц-зале, а не на близлежащем пляже. Четыре дня напряжённой работы почти полностью заняло ознакомление с новыми компонентами программируемой логики и практическая работа с программным обеспечением для микросхем PLD и FPGA, выпускаемым фирмой ATMEL.
Если речь заходит о микросхемах
програмируемой логики, в памяти сразу всплывают XILINX и ALTERA. Действительно, фирма XILINX - первопроходец российского рынка в области FPGA (Field Programmable Gate Arrays), а микросхемы SPLD (Simple Programmable Logic Devices) фирмы ALTERA изменили образ мышления многих российских разработчиков. Стратеги фирмы ATMEL оценили перспективность этого рынка и выпустили весь спектр микросхем программируемой логики - от простейших PLD, имеющих 8 макроячеек, до FPGA, содержащих на кристалле десятки тысяч вентилей. Очень большой интерес у разработчиков вызывает новая серия AT94 - FPSLIC (FIELD PROGRAMMABLE SYSTEM LEVEL INTEGRATION CHIP - программируемые микросхемы системного уровня интеграции). Эти микросхемы содержат на кристалле три "составные части": ядро AVR (фактически это Atmega161), работающее на частоте 40 МГц, 36 Кбайт статического ОЗУ с временем доступа 15 нс и достаточно большую
матрицу FPGA - от 10000 до 40000 вентилей. Решения такого плана уже известны, однако новизна подхода фирмы ATMEL состоит в аппаратной реализации процессорного ядра и большого объёма ОЗУ. Такое построение кристалла требует меньшего количества вентилей, вследствие чего кристалл имеет меньшую площадь и, соответственно, стоимость.
Предлагаемая статья посвящена
микросхемам программируемой логики малой и средней степени интеграции. Фирма не стала "изобретать велосипед" и упаковала свои кристаллы в корпуса, совместимые по разводке выводов с аналогами XILINX и ALTERA. Однако, атмеловские микросхемы программируемой логики имеют внутреннюю архитектуру, отличающуюся расширенными функциональными возможностями.
Микросхемы SPLD
ATMEL выпускает практически весь
спектр PLD малой степени интеграции (SPLD) - это микросхемы серий ATF16V8, ATF20V8 и ATF22V10, соответствующие промышленным стандартам. При этом они отличаются пониженным в 2-4 раза энергопотреблением.
Микросхемы ATF16V8, содержащие 8 триггеров-защёлок (FF - fli p-flops), могут эмулировать более 20 типов стандартных микросхем PAL (программируемой логики). Они поддерживают три различных режима: регистровый, комплексный и стандартный. В регистровом режиме макроэлемент может быть сконфигурирован как триггерный или комбинационный, и ATF16V8 эмулирует следующие стандартные микросхемы: 16R8, 16RP8, 16R6, 16RP6, 16R4, 16RP4. В комплексном режиме возможна эмуляция микросхем 16L8, 16H8 и 16P8. В стандартном режиме эмулируется 12 типов простых PAL, в которых отсутствует опция OE - "разрешение выхода". Нужный режим выбирается при программировании кристалла.
ATF16V8 имеют различные модификации. Наиболее популярна модификация BQL, характеризующаяся потребляемым током 20 мА в активном режиме и 5 мА - в режиме standby. Микросхемы ATF16V8 выпускаются в
20-выводных DIP(P), SOIC(S), TSSOP(X) PLCC(J) корпусах на коммерческий и
индустриальный температурный диапазон.
Микросхемы ATF20V8 также построены на стандартных макроэлементах и также поддерживают регистровый, комплексный и стандартный режимы конфигурации, однако имеют большее количество входов/выходов
и упакованы в 24-выводные корпуса DIP, SOIC, TSSOP и 28-выводной PLCC-корпус.
ATF22V10 - наиболее широко применяемые микросхемы класса SPLD. Они содержат 10 макроэлементов, 12 входов и 10 входов/выходов.
Кроме этого, у фирмы есть ори-
гинальная разработка - серия ATF750. Эти микросхемы совпадают по разводке с микросхемами ATF22V10, однако, имеют удвоенную логическую ёмкость.
Основные сведения о микросхемах
SPLD представлены в табл. 1 и 2.
Таблица 1. Микросхемы SPLD с питанием 5 В
Тип |
Задержка, нс |
Состав |
Потребление |
Корпуса |
ATF16V8B |
10-15 |
8FF, 8 I/O |
стандартное |
20P, 20J, 20S, 20X |
ATF16V8BQ/BQL |
10-15 |
8FF, 8 I/O |
среднее, малое |
20P, 20J, 20S, 20X |
ATF16V8C |
5-7 |
8FF, 8 I/O |
стандартное |
20P, 20J, 20S, 20X |
ATF16V8CZ |
12-15 |
8FF, 8 I/O |
микромощное |
20P, 20J, 20S, 20X |
ATF20V8B |
7-15 |
8FF, 8 I/O |
стандартное |
24P, 24S, 28J, 24X |
ATF20V8BQ/BQL |
10-15 |
8FF, 8 I/O |
среднее, малое |
24P, 24S, 28J, 24X |
ATF20V8C |
5-7 |
8FF, 8 I/O |
стандартное |
24P, 24S, 28J, 24X |
ATF20V8CZ |
12-15 |
8FF, 8 I/O |
микромощное |
24P, 24S, 28J, 24X |
ATF20V8CQ, CQZ |
10-15 |
8FF, 8 I/O |
среднее, микромощное |
24P, 24S, 28J, 24X |
ATF22V10B |
15 |
10FF, 10 I/O |
стандартное |
24P, 24S, 28J, 24X |
ATF22V10BQ/BQL |
15-20 |
10FF, 10 I/O |
среднее, малое |
24P, 24S, 28J, 24X |
ATF22V10C |
5-10 |
10FF, 10 I/O |
стандартное |
24P, 24S, 28J, 24X |
ATF22V10CZ |
12-15 |
10FF, 10 I/O |
микромощное |
24P, 24S, 28J, 24X |
ATF22V10C |
15 |
10FF, 10 I/O |
стандартное |
24P, 24S, 28J, 24X |
ATF22V10CQ, CQZ |
15-20 |
10FF, 10 I/O |
среднее, микромощное |
24P, 24S, 28J, 24X |
Таблица 2. Микросхемы SPLD с питанием 3,3 В
Тип |
Задержка, нс |
Состав |
Потребление |
Корпуса |
ATF16LV8C |
10-15 |
8FF, 8 I/O |
малое |
20P, 20J, 20S, 20X |
ATF16LV8CZ |
15-25 |
8FF, 8 I/O |
малое, микромощное |
20P, 20J, 20S, 20X |
ATF22LV10/L |
20-30 |
8FF, 8 I/O |
малое, микромощное |
20P, 20J, 20S |
ATF22LV10C |
10-15 |
10FF, 10 I/O |
малое |
24P, 24S, 28J, 24X |
ATF22LV10CZ |
25 |
10FF, 10 I/O |
малое, микромощное |
24P, 24S, 28J, 24X |
Хотя микросхемы SPLD фирмы ATMEL отличаются сравнительно малым энергопотреблением, в ряде случаев необходимо снизить потребляемую мощность, насколько это возможно. Для этого в микросхемы с индексом "C" добавлена новая функция - принудительное "усыпление". Для этого используется вывод PD - PowerDown, совмещённый с одним из логических входов микросхемы. В режиме "сна" микросхема потребляет не более 10 мкА, что позволяет использовать её даже в батарейных приборах. При этом состояния входов/выходов и внутренних регистров запоминается, и после "пробуждения" микросхема продолжает функционировать в обычном режиме. При подаче напряжения питания регистры микросхемы также находятся в предопределённом состоянии, которое задаётся при прошивке микросхемы.
Все микросхемы SPLD фирмы ATMEL сохраняют свою конфигурацию в памяти типа EEPROM, таким образом, их можно перепрограммировать до 100 раз во внешнем программаторе. Время сохранения дан-
ных - не менее 20 лет. При программировании можно активизировать бит защиты, запрещающий несанкционированное копирование микросхемы. Однако, при этом возможно чтение специальной области памяти объёмом 64 бит, где удобно хранить пользовательскую информацию, например, номер версии прошивки. Все микросхемы SPLD выпускаются в коммерческом и индустриальном диапазонах температур. В серии
ATF22V10 есть также микросхемы в военном исполнении.
Микросхемы CPLD
Следующими в ряду микросхем
программируемой логики идут микросхемы повышенной степени интеграции - CPLD (Complex Programmable Logic Devices), серия ATF15xxAS(L). Под "хх" подразумевается количество логических блоков в микросхеме, которое может быть от
2 до 32. В свою очередь, логический блок - это 16 макроэлементов, связанных сигналами каскадирования. Эти микросхемы базируются на значительно более мощном макроэлементе, который представляет собой развитие макроэлемента, используемого фирмой ALTERA в своём семействе EPM7000S. В макроэлементе фирмы предусмотрено большее количество соединений с глобальной разводочной матрицей. Говоря более
конкретно, к ней подключены все входы и сигналы обратной связи макроэлемента, в отличие от макроэлемента фирмы ALTERA, где между матрицей и макроэлементом размещён входной мультиплексор. Такое архитектурное решение обеспечивает лучшую разводимость кристалла, особенно, если перед разводкой назначение выводов микросхемы предопределено, и программа-разводчик не может их
изменить.
Рис. 1. Макроэлемент ATF15xxAS(L)27
Макроэлемент (рис. 1) состоит из
следующих секций: блок входных термов, которые подключены к глобальной и локальной разводочным матрицам, логика И/ИСКЛЮЧАЮЩЕЕ ИЛИ с входом/выходом каскадирования, триггер и схема управления выходным сигналом от макроэлемента. Эта схема обеспечивает широкие возможности для управления выходным буфером макроэлемента. В режиме "всегда включено" выходной сигнал с триггера макроэлемента беспрепятственно поступает на соответствующий вывод микросхемы.
Если буфер "запрещён", вывод микросхемы используется как вход. В такой конфигурации все ресурсы макроэлемента остаются доступными. Возможно индивидуальное управление скоростью нарастания выходного сигнала по каждому выходу, а также работа выхода в режиме "открытый коллектор".
Микросхема семейства ATF15xxAS(L) имеет несколько режимов энергосбережения. Она аппаратно переводится в низкопотребляющий режим, если на входах отсутствует изменение сигналов. Эта функция снижает потребляемую микросхемой мощность не только в режиме ожидания, но также пропорционально уменьшает потребляемый ток при частоте входных сигналов менее 5 МГц. Для дальнейшего снижения мощности можно активизировать
"энергосберегающий бит" (Reduced-power bit). Включение этого бита позволяет перевести любой макроэлемент в режим минимального потребления. В дополнение к вышесказанному, микросхемы CPLD фирмы ATMEL имеют возможность перевода в "спящее" состояние внешним сигналом на входах PD1 и PD2. Функцию PD реализуют два вывода микросхем, на которые заведены выходы макроэлементов. При этом
данные выходы нельзя использовать по "прямому назначению", но собственно макроэлементы доступны для использования. Если сигнал на любом из входов PD принимает значение логической 1, микросхема переходит в "спящий" режим. В
этом режиме все внутренние логические сигналы запоминаются, и любые изменения внешних сигналов игнорируются.
Микросхемы ATF15xxAS(L) имеют
электрически перепрограммируемое ПЗУ конфигурации, допускающее 10000 циклов перезаписи. Как и в микросхемах SPLD, здесь также есть бит защиты и память для хранения версии прошивки. Микросхемы CPLD можно запрограммировать как стандартным внешним программатором, так и непосредственно в системе. Это качество позволяет производить замену версии конфигурации микросхемы уже в изготовленном устройстве после распайки микросхем на печатную плату, а также отказаться от панелей для установки микросхем, что повышает надёжность устройства. Для программирования используется стандартный интерфейс JTAG, сигналы которого выведены на соответствующие ножки микросхем. Для программирования микросхем не требуется отдельного питания. Здесь следует рассмотреть интересный момент. В ряде случаев схема требует использования всех физических выводов микросхемы для обработки сигналов, и, в итоге, не остаётся возможности выделить четыре вывода под интерфейс JTAG для внутрисхемного
программирования. В этом случае разработчик часто лишает себя такого удобства и возвращается к программированию во внешнем программаторе. Однако, в микросхемах
ATF15xxAS(L) эта проблема решена. Существует такой режим, при котором выводы JTAG после окончания программирования могут исполнять стандартные функции входа/выхода. Конечно, при этом теряется возможность перепрограммирования в системе, но при необходимости микросхему всё же можно перепрограммировать, используя внешний параллельный программатор. Микросхемы CPLD выпускаются в коммерческом и индустриальном диапазонах температур.
В табл. 3 представлен перечень
микросхем, выпускаемых в настоящее время.
К выпуску запланированы микросхемы семейства ATF15xxSS(L), изготавливаемые по 0,35-мкм технологии, что позволит снизить напряжение питания и потребляемую мощность. В табл. 4 приведены краткие характеристики этих микросхем.
Таблица 3. Микросхемы CPLD фирмы ATMEL
Тип |
Логическая ёмкость, макроэлементов |
Кол-во польз. выв. |
Задержка, нс |
Кол-во выводов корпуса |
Аналог фирмы ALTERA |
ATF1500A/AL |
32 |
4in, 32i/o |
7,5-25 |
44 |
EP7032 |
ATF1502AS |
32 |
36 |
7,5-25 |
44 |
EPM7032S |
ATF1504AS |
64 |
36/52/68 |
7,5-25 |
44/68/84/100 |
EPM7064S |
ATF1508AS |
128 |
68/84/100 |
7,5-25 |
84/100/160 |
EPM7128S |
ATF1516AS |
256 |
от 100 |
10-25 |
160/192/208 |
EPM7256S |
Таблица 4. Перспективные микросхемы CPLD фирмы ATMEL
Тип |
Кол-во выводов корпуса |
Задержка, нс |
Питание, В |
ATF1502SS |
44-PLCC 44-TQFP |
5, 7, 10 |
5,0 |
ATF1502SSL |
10 |
5,0 |
ATF1502SSV |
4, 7, 10 |
3,3 |
ATF1502SSVL |
10 |
3,3 |
ATF1504SS |
44-PLCC 44-TQFP 49-BGA (8 mm) 100-TQFP 100-BGAA |
5, 7, 10 |
5,0 |
ATF1504SSL |
10 |
5,0 |
ATF1504SSV |
4, 7, 10 |
3,3 |
ATF1504SSVL |
10 |
3,3 |
ATF1508SS |
84-PLCC 100-TQFP 100-BGA 144-TQFP 256-BGA |
6, 7, 10 |
5,0 |
ATF1508SSL |
10 |
5,0 |
ATF1508SSV |
5, 7, 10 |
3,3 |
ATF1508SSVL |
10 |
3,3 |
ATF1516SS |
100-TQFP 100-BGA 144-TQFP 208-PQFP 256-BGA |
7, 10, 15 |
5,0 |
ATF1516SSL |
15 |
5,0 |
ATF1516SSV |
5, 7, 10 |
3,3 |
ATF1516SSVL |
15 |
3,3 |
ATF1532SSV |
144-TQFP 208-PQFP 256-BGA |
7, 10, 15 |
3,3 |
ATF1532SSVL |
15 |
3,3 |
Средства программирования
Микросхемы PLD фирмы ATMEL программируются различными способами. Учитывая функциональную совместимость с PLD фирмы ALTERA, можно использовать известный пакет MAX+PLUS II. В среде этого пакета создаётся схема и производится компиляция. Выходной файл с расшире-
нием ".pof" конвертируется в файл ".jed", который и загружается в микросхему PLD. Эту операцию выполняет бесплатно распространяемая утилита "pof2jed.exe".
Следует учесть, что САПР MAX+PLUS II не позволяет использовать расширенные возможности микросхем ATMEL. Фирмой предлагается два специализированных программных продукта: Atmel-WinCupl и Atmel-
Synario.
ATMEL WinCupl представляет собой усечённую версию пакета WinCupl, разработанного фирмой LOGICAL DEVICES. Atmel-WinCupl функционирует в среде Win95/98/NT и подерживает все микросхемы SPLD и CPLD, выпускаемые фирмой ATMEL. Демо-версия этого пакета с ограниченным количеством компиляций распространяется бесплатно. При необходимости через российских дистрибьюторов фирмы ATMEL можно заказать бесплатную версию пакета без ограничения числа компиляций. Atmel-WinCupl позволяет провести все фазы
проекта - ввод описания проекта в текстовом виде на языке Cupl (синтаксис языка близок к языку ABEL), компиляцию проекта (на выходе формируется стандартный JEDEC файл), а также временную симуляцию (в графическом виде). Окна исходного текста проекта на микросхеме ATF1504 представлена на рис. 2. Данный пакет удобен для разработки небольших проектов на микросхемах PLD фирмы ATMEL.
Рис. 2. Окно исходного текста WinCupl
Для серьёзных проектов рекомендуется другой пакет - Atmel-Synar io. Это профессиональная среда разработки, состоящая из нескольких компонентов, которые можно заказывать независимо. В табл. 5 приведены названия этих компонентов для работы на платформе Win95/98/NT.
Таблица 5
Название |
Краткое описание |
ATDS1100PC |
Базовый пакет, графический ввод, ABEL, функциональная симуляция |
ATDS1120PC |
Verilog - функциональная и временная симуляция |
ATDS1130PC |
VHDL - синтез IEEE-1076.1993 |
ATDS1140P |
VHDL - симулятор |
Ядром системы проектирования Atmel-Synario является навигатор проекта (Project Navigator ) . Это мощное и удобное в использовании средство управления проектом. При создании нового проекта обычно выбирается тип микросхемы, однако можно создать проект с использованием виртуальной микросхемы (рис. 3), а затем упаковать его в конкретный корпус. При выборе микросхемы навигатор устанавливает по умолчанию оптимальные для данной микросхемы опции компиляции. Навигатор проекта позволяет контролировать все стадии разрабатываемого проекта. Проект может состоять из одного, либо из нескольких модулей, причём они могут иметь как графическое, так
и текстовое описание на языке ABEL. Каждую фазу проекта можно обрабатывать независимо, либо провести компиляцию за один шаг - при этом навигатор проекта создаст лист связей проекта, проведёт компиляцию и оптимизацию.
Рис. 3. Окно редактора схемы Atmel-Synario
Графическое описание проекта создаётся в программе ECS. Допускается создание проекта на одном листе, а также иерархическое задание схемы. В программу ECS встроены мощные средства контроля: например, можно выделить на схеме любой сигнал, и программа покажет его во всех
иерархических модулях схемы. Есть также утилита анализа ошибочных соединений в разрабатываемой схеме.
Интересной особенностью пакета
Atmel-Synar io является возможность разработки с использованием виртуальной микросхемы. Библиотека элементов построена без привязки к конкретному типу микросхемы, таким образом, можно создавать проект, который затем можно упаковать в любой кристалл - от ATF16V8 до ATF1516AS, естественно, с соответствующей ёмкостью.
Текстовое описание проекта производится на языке ABEL, который входит в базовый комплект Atmel-Synar io.
К проекту легко подключаются ранее созданные модули. Использование иерархической структуры позволяет компоновать проект, состоящий, например, из общей схемы соединений верхнего уровня и нескольких файлов нижнего уровня на языке ABEL, описывающих некоторые законченные логические модули, а также один или более
графических файлов. Такое иерархическое описание проекта удобно для модификации некоторой его части - просто заменяется один из файлов и производится перекомпиляция. В ABEL встроен функцииональный симулятор, таким образом можно провести верификацию написанного кода даже без компиляции.
Расширенный комплект Atmel-Synario включает полную поддержку VHDL по стандарту IEEE-1076. Atmel-Synario VHDL включает анализ, синтез и симулятор на уровне исходного кода. Возможна обработка смешанного проекта, в котором использован графический и текстовый ввод. Ещё
одним инструментом пакета является Verilog-симулятор, обеспечивающий
функциональную и временную симуляцию. Он полностью совместим с Open-Verilog и предоставляет мощные средства для тестирования и анализа. Программа Atmel-Synario Simulator создаёт симуляционную модель непосредственно из исходного файла и проверяет корректность описания логических связей ещё до
компиляции проекта. После этапа компиляции для конкретной микросхемы пользователь может проверить временные соотношения. Atmel-Synario Simulator не использует привязанные к конкретным типам кристаллов библиотеки и модели, поэтому возможна симуляция любой выбранной части проекта. Возможен пакетный режим работы или интерактивное исследование взаимодействия элементов схемы, используя окно для просмотра временных диаграмм. Содержимое этого окна обновляется после каждого шага просмотра проекта.
Более того, возможно редактирование сигналов в окне просмотра временных диаграмм, что удобно для быстрой модификации сигналов входных воздействий. Данные из окна просмотра динамически передаются в окно с описанием схемы, что упрощает визуальную отладку проекта, даже если
он имеет иерархическую структуру.После завершения процесса отладки производится
окончательная компиляция, и сформированный JEDEC-файл загружается в микросхему посредством программы Atmel-ISP. Файл записывается в микросхему через загрузочный кабель (Download Cable), подключаемый к порту принтера компьютера. Программа Atmel-ISP работает как с "родным" кабелем фирмы ATMEL (рис. 4), так и с кабелем ByteBlaster фирмы ALTERA.
Рис. 4. Принципиальная схема загрузочного кабеля фирмы ATMEL
Если не требуется длина кабеля более 70-80 см, можно изготовить пассивный кабель, распайка которого приведена в табл. 6.
Таблица 6
Сигнал |
Контакт 10PIN (JTAG) |
Контакт DB25 |
TCLK |
1 |
1 |
TDI |
9 |
2 |
TDO |
3 |
10 |
TMS |
5 |
17 |
GND |
2, 10 |
18–25 |
Таким образом, фирма ATMEL предлагает полный комплект программных и аппаратных средств для проектирования устройств на базе микросхем программируемой логики, что, в сочетании с технической поддержкой со стороны дистрибьюторов фирмы в России, предоставляет российскому разработчику возможность успешно использовать эти микросхемы в своих новых проектах.
Программы, необходимые для работы с микросхемами PLD, можно переписать с сайта фирмы www.atmel.com и с сайта официального дистрибьютора фирмы ATMEL в России http://atmel.argussoft.ru.
Литература
- ATMEL DATA BOOK i.Programmable Logic and System Level ICsll MAY, 2000.
- European Technical Seminars Materials.
Тел.: 216 5729, 216 5855;
факс: 216 6642
E-mail: korolev@argussoft.ru
|