Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Вводый курс цифровой электроники (К.Фрике, 2003)

.pdf
Скачиваний:
220
Добавлен:
12.08.2013
Размер:
8.2 Mб
Скачать

Глава 14' Программируемые логические блоки

так что имеется в наличии библиотека ячеек, которые могут быть собраны пользователем в законченную схему на основе использова­ ния программного обеспечения. Стоимость разработки полузаказ­ ных ASIC меньше, чем у полностью заказных ASIC^ но они медлен­ нее. Поскольку они хуже используют поверхность чипа, затраты на чип выше, чем в случае полностью заказных ASIC. К этой группе относятся вентильные матрицы {gate arrays) и ASIC со стандарт­ ными ячейками.

ASIC на основе полного заказного проектирования.

В случае данного типа ASIC речь идет о разработке, которая спе­ циально проводится для данного заказчика. Подобная разработка ничем не отличается от разработки обычной стандартной ИС. Этот подход обеспечивает наибольшую гибкость. Могут быть реализова­ ны любые функции. Возможны даже вкропления аналоговых частей схемы. Из-за больших затрат на разработку полностью заказное проектирование окупается только при больших объемах изготавления ИС. При этом может быть получена очень высокая плотность интеграции. Скорость обработки сигналов может быть очень высо­ кой, если это требуется.

Из табл. 14.2 следует, что при переходе от программируемых поль­ зователем логических блоков к полностью заказным ИС время, сто­ имость разработки, функциональная гибкость и минимальные объ­ емы вьпгуска ИС увеличиваются. В то же время плош;адь чипа и стои­ мость изготовления одного чипа уменьшаются. На основе этого по­ лучаем различные области применения различных видов ASIC. На прак­ тике могут, разумеется, появится отклонение от этих закономерностей.

Некоторые области применения появились только в результате развития ASIC. К ним можно отнести многофункциональные на­ ручные часы, компьютерные устройства для чековых карт и порта­ тивные персональные компьютеры.

Основными определяюш;ими параметрами при разработке ци­ фровых систем являются:

Затраты на разработку. Затраты на разработку различных ASIC очень сильно отличаются.

Стоимость одной функции схемного блока. Как правило, при высоких затратах на разработку ASIC стоимость изготовле­ ния схемного блока минимальна, вследствие чего ASIC окупа­ ются только при большом количестве образцов. Сюда отно­ сится также дополнительная стоимость корпусов, электропи­ тания, печатной платы и т.д.

14'1- Семейства ASIC

Стоимость складирования и хранения материала.

Затраты на эксплуатацию и техническое обслуживание.

Время реализации проекта.

Персональная производительность при разработке.

Таблица 14.1. Систематизация ASIC по структуре. Отражены основные тенденции в отношении затрат на различные ASIC и по­ требления мощности в них.

Тип ASIC

Программиру­

Вентильные

ASIC

со

Полностью

 

емые пользо­

матрицы

стандарт­

 

заказные

 

вателем логи­

 

 

ными ячей­

ASIC

 

ческие блоки

 

 

ками

 

 

фиксиро­

матрицы

логические

цифровые

и

ванные

И/ИЛИ,

ма­

вентили

аналоговые

 

 

структуры

трицы

из

 

 

стандартные

 

 

логических

 

 

ячейки

 

 

 

блоков

 

 

 

 

 

 

програм­

матрицы,

соединяющие

все маски

 

все маски

мируемые

программи­

линии

 

 

 

 

блоки

руемые

пе­

 

 

 

 

 

 

режиганием

 

 

 

 

 

 

перемычек,

 

 

 

 

 

 

без

пере­

 

 

 

 

 

 

жигания

и

 

 

 

 

 

 

с помощью

 

 

 

 

 

 

электриче­

 

 

 

 

 

 

ского заряда

 

 

 

 

 

формы реа­

PLA,

PAL,

канализиро­

ASIC

со

лизации

PROM,

 

ванные

 

стандартны­

 

 

EPROM,

вентильные

ми ячейками,

 

 

FPGA

 

матрицы,

ИС с блоками

 

 

 

 

«море

венти­

ячеек

 

 

 

 

 

лей»

(segof

 

 

 

 

 

 

gates)

 

 

 

 

Для того, чтобы выбрать подходящую технологию для конкрет­ ного случая применения, необходимо произвести проверку всех ти­ пов ASIC в соответствии с этим пунктом. Мотивы выбора опреде­ ленных ASIC могут быть очень различными. В общем случае ASIC имеют следующие преимущества:

• Как правило, ASIC охватывает функции многих стандартных элементов, вследствие чего вероятность ошибки схемы падает, она становится надежнее.

Глава 14Программируемые логические блоки

Уменьшаются затраты на разводку на печатной плате. При определенных обстоятельствах могут быть использованы бо­ лее дешевые печатные платы.

Скопировать ASIC сложно, поскольку ее функции снаружи про­ сматриваются с трудом. Вследствие этого достижения, полу­ ченные при разработке, легче уберечь от конкурентов.

ASIC тестируются легче, чем схемы из большого числа стан­ дартных компонентов, если соответствуюш;ие возможности тести­ рования были учтены при разработке.

Таблица 14.2. Сравнение стандартных компонентов и различных типов ASIC.

Параметр

Стандартные

Программи­

ASIC с

ASIC с

 

 

компоненты

руемые поль­

полузаказным

полностью

 

 

зователем

проектиро­

заказным

 

 

ИС

ванием

проектиро­

 

 

 

 

ванием

 

мощность

средняя-

средняя

высокая

очень

высо­

 

высокая

 

 

кая

 

стоимость

низкая

низкая

средняя-

высокая-

разработки

 

 

высокая

очень

высо­

 

 

 

 

кая

 

стоимость

низкая-

высокая

 

масок

 

 

высокая

 

 

продолжи­

короткая

средняя

средняя

средняя-

тельность

 

 

 

очень

высо­

разработки

 

 

 

кая

 

стоимость

низкая

высокая

средняя

низкая

 

одного

 

 

 

 

 

элемента

 

 

 

 

 

плотность

высокая

низкая

высокая

очень

 

интеграции

 

 

 

высокая

 

14.2. Программируемые логические ИС (PLD)

Программируемые логические ИС (PLD) являются по своей сути стандартными схемными элементами, конфигурацию которых за­ казчики могут изменять в своих целях. Их электрические характе­ ристики хорошо известны, поэтому можно получить очень досто­ верные модели для моделирования. Программируемые логические

14-2. Программируемые логические ИС (PLD)

ИС могут быть разработаны достаточно надежно на основании мо­ делирования. Стоимость одного образца, отнесенная к количеству вентилей, может оказаться очень малой, так как PLD могут быть изготовлены с высокой степенью интеграции. При этом с помощью небольшого ресурса проектирования можно добиться высокой сте­ пени использования вентилей. Поэтому PLD хорошо подходят J\A^ вариантов применения, когда требуется малое число образцов. В чи­ сло их преимуществ входит и то, что они могут быть скорректиро­ ваны за короткий срок.

К преимуществам программируемых логических ИС относится также то, что они тестируются изготовителем. Пользователю при­ ходится проверять только топологию.

Ниже программируемые логические ИС обозначаются обпщм тер­ мином «programmable logic devices» (PLD).

Благодаря возможности конфигурации логики пользователем в PLD объединяются преимущества стандартных схемных узлов, ха­ рактеристики которых оптимально согласованны с потребностями заказчиков.

14.2.1. ТипыРЮ

Эти типы различаются по способу программирования:

Пережигаемые перемычки (fuse link), электрические пережи­ гаемые соединения.

Без пережигаемых перемычек (anti fuse), электрически фор­ мируемые соединения.

1-битовые RAM-ячейки; триггеры.

EPROM-ячейки: долговременное хранение заряда, информа­ ция может стираться при воздействии ультра фиолетового об­ лучения.

ЕЕРКОМ-ячейки: долговременное хранение заряда, информа­ ция может стираться электрическим путем.

В PLD используются программируемые И- и ИЛИ-матрицы. В за­ висимости от структуры можно выделить следующие PLD:

PLA

— программируемые И- и ИЛИ-матрицы;

PAL

— программируемая И-матрица, фиксированная

 

ИЛИ-матрица;

324 Глава Ц- Программируемые логические блоки

GAL

такие же, как PLA, но с дополнительными прог­

 

раммируемыми выходными схемами;

EEPROM

программируемая ИЛИ-матрица, фиксированная

 

И-матрица;

FPGA, LCA

электрически программируемая энергозависимая

CPLD, EPLD

логическая матрица;

электрически программируемая энергонезависимая

 

логическая матрица, информация, стирается ульт­

 

рафиолетовым излучением или электрически.

Ниже дано упрощенное представление используемых в PLD И- и ИЛИ-вентилей, которые имеют, как правило, большое число входов (рис. 14.2).

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

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

^0

Xi

г^

V^

Хо 1^1 р — ^

Xl 1^

IP—*

Xl —f

Х2 - t

ЧТ]

у = -^o^ixi

программируемое соединение запрограммированное (ранее) соединение

Р и с . 1 4 . 2 . Полное и упрощенное представление И-вентиля в PLD .

14.3. ROM, EPROM, EEPROM

На основе энергонезависимых ЗУ ROM, EPROM, EEPROM и т.д., могут быть выполнятся логические схемы. Пусть, например, с помо­ щью ROM с емкостью 16x2 бит должна быть реализована функция с четырьмя входными переменными и двумя выходными переменны­ ми. Под каждым из 16 адресов в ROM могут храниться запомнены

U.S. ROM, EPROM, EEPROM 325

значения обеих функций. При этом еще возможно выполнение ло­ гической операции. Таким образом ROM, используемая как логиче­ ская схема, универсальна. Но оно может оказаться не эффективным, если функция имеет очень мало нулей в таблице истинности.

Применение ROM предпочтительно в следующих случаях:

Когда функция задана таблицей истинности. Тогда функция может быть без дальнейшей обработки введена в ЗУ.

Когда функция нуждается в большом количестве термов ло­ гического произведения (булевых логических термов).

Когда очевидно, что схема должна часто изменяться.

Когда в таблице истинности имеется большое число единиц.

ROM можно представить себе как логическую схему, в состав кото­ рой входят: фиксированная И-матрица, осуществляющая адресное декодирование, и программируемая масками ИЛИ-матрица (рис. 14.3).

 

1 1 1 Ь

i

 

LLJ

И-матрица

^1

I т>I P

.'

 

 

(фшссированная)

^2 U1 1 Y

 

 

| & II& II& II& II& {|& II& ||<S

 

 

>1

 

 

>1

ИЛИ-матрица (программируемая)

Рис. 14.3. Представление ROM с емкостью 8 x 4 (32 бит) с И- и ИЛИматрицами.

Глава 14Программируемые логические блоки

14.4. PLA

Как показано на рис. 14.4, программируемые логические матрицы PLA (programmable logic array) включают программируемую И-мат- рицу. С помощью PLA можно непосредственно создавать нормаль­ ную DNF, причем термы логического произведения (product term) реализуются с помощью И-матрицы, а суммарные термы с помо­ щью ИЛИ-матрицы. При этом число термов логического произведе­ ния меньше 2^. Общие термы логического произведения могут быть поданы на многие логические входы.

^0 - г Ч 1 Р

И-матрица (программируемая)

1 р

"1 1 р-

 

г& ж Ж1Г& & ж

 

>1

fo

>1

f.

>1

 

>1

ИЛИ-матрица (программируемая)

Р и с . 14.4. Общая схема PLA.

В общую схему, приведенную на рис. 14.4, могут быть введены некоторые улучшения.

Выходы должны иметь возможность подвергаться логической операции НЕ, так как р^ля многих функций дополнение реализуется с меньшими затратами.

Часто необходимы выходы типа tri-state («с темя состояниями»). В этом случае имеет смысл, чтобы некоторые выходы могли бы быть использованы как входы.

При определенных обстоятельствах выходные сигналы должны подвергаться промежуточному запоминанию. Поэтому многие PLA имеют на выходе триггеры.

144' PLA 327

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

Обсудим полезность и реализацию улучшений на основе двух сле­ дующих схем.

Входящий в PLА вентиль «исключающее ИЛИ» (EXOR), пока­ занный на рис. 14.5, служит для управления полярностью выхода. Если на его втором входе имеет место О, вентиль работает как бу­ фер, если же второй вход находится в состоянии 1, выход становит­ ся инвертированным. Следовательно, всегда можно выбрать между реализацией функции и ее инвертированием, экономя таким обра­ зом термы логического произведения.

И-матрица

управляющие термы

М

4 1 Р

^1 - Т

Ч 1 р

ЧТ]

Я1 П

Я1 П

& & &

& &

& &

>1

±

>1

±

ИЛИ-матрица

=1

EN

-^

*-<

4 E N

=1

Рис . 14.5. PLA с вентилями EXOR и двунаправленным выходом типа tristate.

Кроме того, в PLA на рис. 14.5 используются на выходах вентили типа tri-state. Как альтернативный вариант можно рассматривать PLA, у которых разрешающие (enable) входы управляются допол­ нительными выходами матрицы ИЛИ, либо применяются дополни­ тельные вывода. Поскольку выходы выполнены как триггеры с вы-

Глава 14' Программируемые логические блоки

ходами типа tri-state, их можно использовать как двунаправленные интерфейсы. Соответствующие входы также ведут в И-матрицу. Повышенная гибкость обеспечивает лучшее использование PLА.

В PLА на рис. 14.7 имеется инвертированная обратная связь, ведуш,ая из матрицы ИЛИ, которую также называют дополнитель­ ной (обраш;енной) матрицей (complement array). Эта обратная связь способствует экономии термов логического произведения в тех слу­ чаях, когда обрабатываются задачи, при решении которых выходы должны принимать определенные значения с рядом исключений.

Пусть, например, должен быть разработан сегментный декодер для представленных с помоп];ью десятично-двоичного кода (BCD) чисел, который при входных значениях более ЮООв должен пока­ зывать на дисплее Е как обозначение ошибок. Определение цифр с помош;ью соответствуюш;его кода показано на рис. 14.6.

f

а

 

» I I I г

_

е

g

1

г

I и _

 

 

 

о

I и J

L

Р и с . 14.6. Определение 10 цифр и Е как обозначения ошибок для случая 7-сегментной индикации.

Для цифр от о до 9 требуются 10 термов логического произведе­ ния. Они подаются на вход дополнительной матрицы. Дополнитель­ ная матрица не реагирует на появление одного из этих термов. Если же не задействован ни один из термов логического произведения, а подана псевдотетрада (двоичные числа между 10 и 15), то в этом случае приходят в действие сегменты, формируюш;ие букву Е.

На рис. 14.8 показана в упрош;енной форме PLA, служаш;ая для реализации управляюш;ей схемы (драйвера). PLА данного вида обо­ значают как устройства задания последовательности (sequencer).

Впоказанную схему входят:

Регистр состояний с выходами PQ^ Pi и Р2. Выходы регистра подведены к И-матрице.

Вход Р/->Е может быть запрограммирован так, что он дей­ ствует либо как вход enable, управляюш,ий tri-state-буфером, либо как вход preset («предварительная установка») для D- триггеров.

144' PLA 329

Добавочная матрица может быть использована для того, что­ бы устанавливать определенное состояние при включении или при ошибках. Добавочная матрица (complement array) сраба­ тывает тогда, когда ни одно из непосредственно применяемых состояний не наступает при включении.

^0 TFi

^

Vf,1 р

^ ^ - *

-

*

* - *

И-матрица

v^1 \>

*

* - ^

 

ж ж

ж

ж

Т7

 

 

 

 

ж

ж >ic ж

 

Хз

ж ж ж ж ж ж ж ж

 

" ^

ff

 

 

 

 

 

& & & & & & & & & & & &

ж ж ж ж ж ж ж ж ж ж

>1

 

^ М ^

ж ж ж ж ж ж

>1

ИЛИ-матрица Ж Ж

Ж Ж Ж

ж ж ж

>1

 

 

 

>1

* - ~ *

ж ж ж ж ж ж ж

 

* - *

^ ^ - *

Ж Ж Ж

>1

 

 

 

 

>1

 

 

ж ж ж

ж ж ж

>1

 

ж ж ж ж ж

ж ж ж

>1

±-

±-

±- ±1

±-

±-

а

Ь

с

d

е

f g

Р и с . 14.7. PLА с инвертированной обратной связью, выведенной из матри­ цы ИЛИ (пример с индикацией семью сегментами).

Пусть, например, на основе показанной на рис. 14.8 PLA, должен быть спроектирован двоичный счетчик по модулю 5, который для входного сигнала х = XQ = Q считает в прямом направлении и р^ля X = жо = 1 в обратном направлении. На основе этой информации получаем табл. 14.3.

На основе таблицы состояний может быть разработана таблица запуска (табл. 14.4) р,ля RS-триггеров данной схемы.

Из таблицы запуска может быть вьшедена KV-диаграмма (рис. 14.9). В этой KV-диаграмме (диаграмме Карно-Вейча) находятся свобод­ ные поля, которые принадлежат состояниям, не возникающих в нор­ мальных циклах счета. Из этих состояний, которые могут устано­ виться при включении или при возникновении помехи, счетчик дол-