(C) Research/VolgaSoft
Современные технологии.
ALTERA.
(ознакомительный материальчик)
ВСТУПЛЕНИЕ
В этой статье пойдет речь о совре-
менном маленьком чуде, о расчитанном
прорыве в мире цифровой электроники -
микросхемах программируемой логики. Это
тот кирпичик, который стоит в самых сов-
ременных моделях ZX-SPECTRUM - GMX и
СПРИНТЕР , это та самая микросхемина, на
которой можно сделать почти все - от
Z80X (допустим, 30мгц, машинный цикл 1
такт), до всего Пентагона вместе с 2D
акселератором, GSкой, мышью и IDE конт-
роллером.
Наверное каждый радиолюбитель раз-
рабатывая цифровое устройство, в душе
мечтал - где бы найти таблетку от всех
болезней - микросхему, которая заменит
все. Инженеры особенно нуждались в подо-
бных устройствах, так как при разработке
серьезного изделия приходилось проекти-
ровать заказную интегральную схему "под
задачу". От момента вычерчивания логики,
до появления рабочего изделия проходило
как правило несколько месяцев и затрачи-
валось огромное количество ресурсов. Но
спрос рождает предложение - появились
полузаказные большие интегральные схемы
(БИС) и программируемые логические мат-
рицы (ПЛМ).
Наука не стояла на месте, техноло-
гии становились все более и более совер-
шенными, и однажды был анонсирован выход
пакета "софт"+"железо"+"камень". Задумка
была очень простой: разработчик рисует в
софте схему (может переносит ее с бума-
ги), или описывает логику будущего изде-
лия двоичными уравнениями и простыми
операторами, затем компилятор переводит
схему в некий код, а код зашивается про-
грамматором ("железо") в микросхему про-
граммируемой логики ("камень"), которую
можно сразу же впаивать в плату. И ника-
ких затрат на разработку кристалла, и
испытания. Разработчики цифровых уст-
ройств подхватили "на ура" новинку.
На сегодня на рынке масса призводи-
телей БИС программируемой a логики (ПЛ).
Их продукты отличаются a как емкостью и
архитектурой, a так и качеством софта и
аппаратной поддержки, сервисом и в конце
концов стоимостью.
Явным лидером сегодня является фир-
ма Altera Corporation . Она завоевала
рынок благодоря не только широкому спек-
тру изделий, но и грамотному распростра-
нению своей продукции. Например, пользо-
вание софтпродукцией (студенческие вер-
сии) с целью обучения - бесплатно. Для
России в общем-то не принципиально (у
нас почти никто в глаза не видал закон
об авторском праве), а вот за границей
этот вопрос актуален. К тому-же продук-
ция фирмы буквально вломилась на отечес-
твенный рынок - в результате мы теперь
почти все сидим на ней.
ОТ СЛОВ - К ДЕЛУ
СБИС ПЛ фирмы Altera классифицирую-
тся по следующим признакам:
1) степень интеграции (количество
доступных вентилей (элементов 2И-НЕ) и
триггеров);
2) архитектура простейшего функцио-
нального преобразователя (ячейки);
3) организация внутренней структуры
СБИС и структуры матрицы соеденений фун-
кциональных преобразователей (метод сое-
динения ячеек);
4) наличие внутренней RAM памяти;
5) технологии изготовления програм-
мируемого элемента (Fuse, EPROM, EEPROM,
FLASH, SRAM) - то, каким образом зашита
схема.
Для работы с большинством своих БИС
ПЛ фирма Altera предлагает язык описания
аппаратуры MAX+plus II.
В системе автоматизации проектиро-
вания MAX+plus II поддержано шесть се-
мейств СБИС ПЛ.
┌─────────┬──────────────────────┐
│ │ Параметры │
│ ├──────────┬─────┬─────┤
│Семейство│Логическая│UPin │Tech │
│ │ емкость │ │ │
│ │ │ │ │
├─────────┼──────────┼─────┼─────┤
│Classic │ 300-900 │22-64│EPROM│
│MAX5000 │ 600-3750 │24-84│EPROM│
│MAX7000E │ 600-5000 │до164│EEP- │
│MAX9000 │ 6e3-12e3 │до216│ROM │
│FLEX8000A│ 2500-16e3│до208│SRAM │
│FLEX10K │ 1e4-1e5 │до406│SRAM │
└─────────┴──────────┴─────┴─────┘
Логическая емкость - число доступ-
ных элементов 2И-НЕ, то есть в FLEX10K
влезет до 25000 наших ЛА3-их.
UPin - число пользовательских выво-
дов.
Tech - технология.
Практическое пояснение к таблице:
допустим берем самый дохлый FLEX8000A
(техноглогия SRAM - т.е. после включения
питания схемку ус тройства надо "залить"
в альтерину), вешаем пользовательскими
ногами на шину родимиго Спекки (при этом
останется несколько свободных), делаем
элементарный дешифратор порта на россыпи
и сцепляем его со входом альтерины. Что
мы получаем? Мы получаем супер устройст-
во!!! Ведь теперь можно вливать в альте-
ру фактически любую схему!!! Это может
быть что угодно от внешнего мат. процес-
сора (допустим в один порт побайтно ло-
жим 16-битное число, в другой - второе
число, еще куда-нибудь - код операции,
затем снимаем результат), до всего, что
уму постижимо (если ткнуть несколько
свободных ног "куда следует" - можно
сделать аппаратную заливку и аппаратное
построение отрезков, многоканальные про-
граммируемые прерывания (особенно актуа-
льно для цифрового звука), новые комман-
ды процессора (как в "спринтере" или до-
полнительные регистры процессора....).
Можно наделать библиотек аппаратных фун-
кций чтобы не изобретать велик, как это
до сих пор делают упрямые "кодеры" и
считывать их в соответствии с задачей.
"Прошивка" схемы того же FLEX8282A ("са-
мый дохлый", см. выше) весит, если мне
не изменяет память, 6кБ. Во время конфи-
гурирования все пользовательские ноги
находятся в Z-состоянии и не влияют на
работу системы. Если нужно сделать уст-
ройство "на века" и не конфигурировать
его каждый раз после включения - можно
использовать семейство MAX. Так же неко-
торые БИС семейства МАХ имеют защиту от
"сливания схемы" - бит секретности раз-
работки, однако, на мой взгляд, примене-
ние этого семейства несколько ограничено
(по крайней мере в "домашних" условиях)
из-за необходимости в программаторе и
ограниченом количестве циклов программи-
рования.
ТЕПЕРЬ ПАРА СЛОВ О СРЕДЕ РАЗРАБОТ-
КИ: ЯЗЫКЕ ОПИСАНИЯ АППАРАТУРЫ MAX +
PLUS II.
Система MAX + plus II написана под
следующие платформы: PC , MAC , SUN . Ни
Спекки , ни прeсловутой подружки в этом
списке почему-то не оказалось. Система
очень добрая, простая и с широкими воз-
можностями. Основными компонентами яв-
ляются графический и текстовый редакто-
ры, компилятор, редактор диаграмм (он же
"дебуггер"), таймер, редактор размещения
и разводки.
В графическом редакторе рисуется
схема устройства (если использовано гра-
фическое задание). В качестве элементов
схемы можно задействовать логику "по бу-
ржуйскому госту", есть там и вся 74 се-
рия, а если не нравятся вражеские обоз-
начения - можно нарисовать все по-нашин-
ски и заставить работать.
Текстовый редактор используется для
текстового описания аппаратуры. Язык
что-то среднее между dBase , C , Pas-
cal . Есть чуть ли не готовая комманда
описания синхронного конечного автомата,
есть и if и case . Сумматор описывается
буквально как C[]=A[]+B[] . А телефонная
чип-карта описывается и тестируется (см.
ниже) за часик не напрягаясь.
Компилятор проверяет схемку (или
текстик) и генерирует прошивку под зада-
нный "кирпич". Широко регулируемые пре-
делы оптимизации по скорости и объему
позволяют выжать из устройства максимум
быстродействия или минимум занимаемой
площади на кристалле. Есть полезная вещь
дизайн доктор. Показывает где есть гонки
и опасные места, и при каких условиях
они появятся, не забывает попросить на-
жать сброс для инициализации устройства
после включения и т.д.
В редакторе диаграмм можно промоде-
лировать работу будущего устройства: до-
пустим задать входные сигналы и посмот-
реть соотвествующие им выходные, гонки
тоже не забывают отображаться. Поэтому
прежде чем собирать схему лучше прогнать
ее в "максе" и проверить. Правда нашелся
и глючечек - не завелся Т-триггер сдела-
нный из RS , сихронизируемого перепадом,
хотя на практике он пахал. Просмотр диа-
грамм сделан очень удобно: можно смот-
реть диаграммы, объединив их в группы и
представив удобную для просмотра систему
исчисления (двоичную, десятичную, шест-
надцатиричную). Входные данные можно за-
давать в том числе и кодом Грея . Можно
посмотреть и внутренние состояния авто-
мата.
Таймер - он и в африке таймер - по-
казывает задержки и максимально возмож-
ную рабочую частоту устройства.
Редактор размещения и разводки ис-
пользуется для "аппаратного" убирания
гонок (перестановки логических ячеек) и
расстановки пользовательских выводов.
Прайс дистрибьтера фирмы Altera я к
величайшему несчастью потерял, посему
скажу лишь по памяти, что FLEX10K10
стоит от $20, FLEX8282A от $8, элементы
семейства MAX стоят от $3.3. Если инте-
ресно, где можно добыть информацию, мо-
жете пролистать до конца статьи, ибо да-
лее пойдет справочная информация.
БОЛЕЕ ПОДРОБНАЯ ИНФОРМАЦИЯ О
СЕМЕЙСТВАХ
Семейство Classic объединяет 3 се-
рии СБИС. БИС этого семейства позволяют
заменить устройство, содержащее от 10 до
20 микросхем средней степени интеграции,
и обеспечивают:
* задерку распространения сигнала
от любого входа да выхода БИС не более
10 нс;
* устойчивую работу на частотах до
100 МГц;
* возможность работать в режиме по-
ниженного энергопотребления;
* возможность задания режима секре-
тности разработки (из микрухи схему на-
зад не слить).
Прим.: похоже уже сняты с производ-
ства.
Семейство MAX5000 объединяет 5 се-
рий СБИС. БИС этого семейства позволяют
заменить устройство, содержащее до нес-
кольких десятков микросхем средней сте-
пени интеграции, и обеспечивают:
* задерку распространения сигнала
от любого входа да выхода БИС не более
15 нс;
* устойчивую работу на частотах до
76 МГц;
* возможность задания режима секре-
тности разработки;
* возможность использования трех
режимов работы выходных буферов: вход,
выход, двунаправленный.
Семейство MAX7000 объединяет 7 се-
рий СБИС. БИС этого семейства позволяют
заменить устройство, содержащее до сотни
микросхем средней степени интеграции, и
обеспечивают:
* задержку распространения сигнала
от любого входа дo выхода БИС не более 5
нс;
* устойчивую работу на частотах до
178 МГц;
* возможность регулирования скорос-
ти переключения выходных буферов;
* возможность использования 4-х ре-
жимов работы выходных буферов: вход, вы-
ход, двунаправленный, открытый коллек-
тор;
* возможность задания режима пони-
женного энергопотребления как для всей
СБИС в целом, так и для цепей распрост-
ранения отдельных сигналов;
* возможность программирования и
репрограммирования после распайки на
плате;
* возможность задания режима секре-
тности разработки;
* работу с пониженным (3.3 В) нап-
ряжением питания.
Прим.: ряд серий соответствует ста-
ндарту шины PCI.
Семейство FLEX8000A объединяет 7
серий СБИС. БИС этого семейства позво-
ляют заменить устройство, занимающее де-
сятки плат, выполненных на микросхемах
средней степени интеграции, и обеспечи-
вают возможность:
* устойчивой работы на частотах до
294 МГц;
* эмуляции внутренней шины с 3мя
состояниями;
* работы с пониженным (3.3 В) нап-
ряжением питания;
* работы в системах со смешанным
(3.3 В, 5 В) напряжением питания;
* реализации неограниченного числа
циклов конфигурирования, в том числе и
"на лету", т.е. без выключения питания
СБИС;
* регулирования скорости переключе-
ния выходных буферов;
* возможность использования 3-х ре-
жимов работы выходных буферов: вход, вы-
ход, двунаправленный.
Прим.: все СБИС этой серии соответ-
ствует стандарту шины PCI.
Семейство MAX9000 объединяет 4 се-
рий микросхем. БИС этого семейства поз-
воляют заменить устройство, занимающее
десятки плат, выполненных на микросхемах
средней степени интеграции и обеспечи-
вают возможность:
* устойчивую работу на частотах до
125 МГц;
* независимого использования логи-
ческой части и триггера макроячейки;
* возможность задания режима пони-
женного энергопотребления как для всей
СБИС в целом, так и для цепей распрост-
ранения отдельных сигналов;
* возможность программирования и
репрограммирования после распайки на
плате;
* работы в системах со смешанным
(3.3 В, 5 В) напряжением питания;
* регулирования скорости переключе-
ния выходных буферов;
* использование 3-х режимов работы
выходных буферов: вход, выход, двунапра-
вленный.
Прим.: ряд серий соответствует ста-
ндарту шины PCI.
Семейство FLEX10K объединяет 7 се-
рий СБИС. БИС этого семейства позволяют
заменить устройство, занимающее сотни
плат, выполненных на микросхемах средней
степени интеграции, и обеспечивают воз-
можность:
* устойчивой работы на частотах до
450 Мгц;
* реализации на кристалле статичес-
кой памяти и ПЗУ объемом до 24Кбит;
* независимого использования логи-
ческой части и триггера кадого логичес-
кого элемента;
* эмуляции внутренней шины с 3мя
состояниями;
* умножения внутренней тактовой ча-
стоты;
* работы в системах со смешанным
(3.3 В, 5 В) напряжением питания;
* реализации неограниченного числа
циклов конфигурирования, в том числе и
"на лету", т.е. без выключения питания
СБИС;
* регулирования скорости переключе-
ния выходных буферов;
* возможность использования 4-х ре-
жимов работы выходных буферов: вход, вы-
ход, двунаправленный, открытый коллек-
тор.
Прим.: все СБИС этой серии соответ-
ствует стандарту шины PCI.
Вот такие дела. Добавлю лишь, что
прогресс не стоит на месте и в каждом
семействе серий поприбавилось.
ЯВКИ
WWW.ALTERA.COM - там можно получить
более подробную информацию и электронные
ключи к программе MAX + Plus II (прики-
нувшись студентом или научным работни-
ком).
Фирма ЭФО.
E-mail: zav@efo.spb.su
Тел. (812) 247-5340
194021 Санкт-Петербург,
Политехническая ул.,21 (здесь можно
купить соответсвующие элементы).
ЛИТЕРАТУРА
1. Обзор элементной базы фирмы
ALTERA (Антонов А.П., Мелехин
В.Ф., Филлипов А.С.; СПб 1997)
2. Эта же книга (только кажется по
больше) лежит на компакте с MAX
+ Plus II в виде .PDF (кажись
45 МБ), правда на английском.