Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Типичные схемотехнические решения




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

Простейшими элементами, обеспечивающими конфигурирование микросхем на за­данное функционирование, являются рассмотренные ранее программируемые элемен­ты связей (перемычки типа «antifuse», ЛИЗМОП-транзисторы с плавающим затвором, ключевые транзисторы, управляемые триггерами памяти конфигурации). Такие эле­менты могут просто замыкать или размыкать участки цепей, в которые они включены, либо входить в схемы резисторных делителей напряжения с программируемым коэф­фициентом деления для задания сигналов логического нуля или логической единицы. На рис. 7.9, а показан делитель напряжения, состоящий из резистора с постоянным сопротивлением R и программируемого сопротивления Rn, выходное напряжение де­лителя U = Ucc Rпр /(R + Rnp). В зависимости от программирования сопротивление Rnp имеет значения Rпр «R или Rпр» R. В первом случае напряжение U мало (близко к нулю) и с делителя снимается "сигнал логического нуля, во втором случае значение U близко к Uсс и соответствует логической единице.

Для конфигурирования межсоединений, а также построения логических блоков ис­пользуются программируемые мультиплексоры. В первом из названных режимов (рис. 7.9, б) мультиплексор можно условно отобразить в виде переключателя, который под управлением адресующих входов (в данном случае это двухразрядное двоичное число ef) передает на выход F одну из входных величин -а,b,с или d. На линии каждого входа отмечена комбинация адресующих величин, подключающая данный вход к выходу муль­типлексора. В условном обозначении программируемого мультиплексора в режиме ком­мутации сигналов (рис. 7.9, в) факт программируемости обозначается кружком на адре­сующем входе. При программировании устанавливается определенный код еf и соответ­ственно ему связь между выходом схемы и одним из входов. Для часто применяемых программируемых мультиплексоров размерности 2-1 условное обозначение имеет вид, изображенный на рис. 7.9, г. Комбинации адресующих величин против линий входов мо­гут и не показываться, если в этом нет необходимости.

В п. 7.1.2 указано, что логические блоки CPLD выполняются как двухуровневые схе­мы И-ИЛИ, на входы которых подаются парафазные входные переменные. Логические блоки FPGA более разнообразны и могут представлять собою простые логические ячейки

(SLC, Small Logic Cells), схемы на основе мультиплексоров или табличные функцио­нальные преобразователи (LUTs, Look-Up Tables). Подробнее логические (функциональ­ные) блоки разных ИС ПЛ рассмотрены ниже, здесь же остановимся на способах повы­шения функциональной гибкости логической обработки сигналов, используемых как в FPGA, так и в CPLD.

Из числа приемов дополнительной обработки сигналов, получаемых от основных логических блоков, можно выделить следующие.

1. Программирование полярности вырабатываемых функций. Этот прием наибо­лее характерен для CPLD, реализующих функции в форме ДНФ (SOP). В этом случае можно «сыграть» на том, что логическая функция F и ее инверсия не идентичны по сложности и выражения для них могут иметь существенно различные числа термов. Имея возможность перехода от прямых значений функций к их инверсиям и наоборот, можно выбирать для реализации в основном логическом блоке более простую из этих форм независимо от того, какая из этих двух функций понадобится в последующих операциях. Схемотехнически программирование полярности логических переменных осуществля­ется с помощью двух входового элемента сложения по модулю 2, на один из входов которого подается логическая переменная, а на второй - константа «О» или «1» (рис. 7.10, а). Схема программируется заданием определенного состояния ключевому транзистору Т. Если он открыт и находится в низковольтном состоянии, то напряжение на нижнем входе элемента М2 отображает логический нуль и F = F* 0 = F*. Если же тран­зистор заперт, то на нижнем входе элемента Ш. действует высокое напряжение, близкое к Ucc, т. е. отображается сигнал логического нуля и F = F* 1 = F*.

2. Организация двунаправленных выводов. В зависимости от конкретного проекта для ИС ПЛ одной и той же сложности могут потребоваться различные соотношения чисел входов и выходов. Поэтому специализация выводов и жесткое разделение их на входы и выходы сужает функциональные возможности микросхемы. Вследствие этого широкое применение находят микросхемы с двунаправленными выводами, которые путем программирования можно сделать либо входами, либо выходами. Микросхема, имеющая т специализированных входов, n специализированных выходов и р двунаправленных вы­водов, может программироваться на число входов от т до т + р и на число выходов от n до n + р при условии, что в сумме число выводов не превысит m + n + р. Схемотехнически
это реализуется с помощью буферов, имеющих третье состояние (рис 7.10, б). Если сиг­налом ОЕ1 (Output Enable 1) буфер 1 разрешен, то вывод является выходом и перемен­ная F поступает на внешний контакт (КП - контактная площадка). Если буфер 1 находится в третьем состоянии «отключено», а буфер 2 разрешен сигналом ОЕ2, то вывод слу­жит входом. При этом входной сигнал преобразуется буфером 2 в парафазный. При ак­тивном буфере 1 через буфер 2 можно подавать в схему сигнал обратной связи, что также существенно увеличивает функциональные возможности микросхемы.

Если сигнал управления буфером 1 вырабатывается как терм, формируемый в матрице И, то возможны такие варианты программирования функций вывода:

• вывод является входом, если терм ОЕ1 запрограммирован на константу 0;

• вывод является простым выходом, если терм ОЕ1 запрограммирован на константу 1, а сигнал ОЕ2 запрещает буфер 2;

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

3. Введение триггеров. Еще один прием обогащения функциональных возможностей микросхем программируемой логики - введение триггеров в их макроячейки (это понятие объясняется ниже) или непосредственно в логические блоки, причем чаще всего логическое функционирование триггеров программируется. Обычно триггеры строят­ся на основе триггера типа D и дополнительных логических элементов. Триггеры типа D легко обеспечивают режим триггера типа Т (рис. 7.10, в) с помощью подключенных к ним элемента М2 и программируемого мультиплексора 1.

Если мультиплексор запрограммирован на передачу сигнала от верхнего входа D, то триггер работает как триггер типа D, принимая по разрешению тактового сигнала ТИ значение F. Если мультиплексор 1 запрограммирован на передачу сигнала от нижнего входа, то под воздействием тактового сигнала при F = 0 триггер принимает свое соб­ственное состояние Q, т. е. находится в режиме хранения, а при F= 1 - инверсию своего состояния, т. е. переключается. Отсюда видно, что триггер функционирует как синхрон­ный Т-триггер, ко входу Т которого подключен сигнал F.

В ряде микросхем программируемой логики возможно программирование триггеров на режимы не только D и Т, но и JK, RS (с помощью дополнительной внешней логики).

Для обогащения функциональных возможностей микросхем часто программируется тип выхода как комбинационный (combinatorial) или регистровый (registered). Для этого также используются программируемые мультиплексоры. Из рис. 7.10, в видно, что при программировании мультиплексора 2 на передачу сигнала от входа С реализуется ком­бинационный вариант выхода, когда величина F в обход триггера передается прямо на выход, а при передаче через мультиплексор сигнала от входа R реализуется регистро­вый вариант выхода (выходной сигнал снимается с триггера).

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

7.3.2. СВОЙСТВА ИС ПЛ, ВАЖНЫЕ ДЛЯ ИХ ПРИМЕНЕНИЯ В СОСТАВЕ СИСТЕМ

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

Уровни питающих напряжений. Имеются веские причины для перехода ко все мень­шим напряжениям как для питания микросхем в рабочих режимах, так и для программи­рования таких элементов, как ЛИЗМОП-транзисторы в схемах с памятью конфигурации типов EPROM и EEPROM. Если сравнительно недавно типовым значением питающего напряжения было 5 В, то сейчас все больше используются схемы с напряжениями пита­ния 3,3; 2,5; 1,8 и даже 1,6 В. Кроме того, исключаются требования повышенных напря­жений для программирования, и все процессы в схемах обеспечиваются с помощью внут­ренних средств от единого источника внешнего питания.

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

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

В число программируемых величин может входить так называемый Turbo bit, задаю­щий один из двух режимов, различающихся по соотношению скорость/мощность.

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

Свойство программируемости в системе. Схемы, обладающие этим свойством, на­зываются In-System Programmable (ISP). Свойство ISP могут иметь микросхемы с триг­герной памятью конфигурации (заметим, что термин «программируемость» появился в этом абзаце в связи с его наличием в английском термине ISP, по существу же он означает то же самое, что и термин «конфигурируемость»). Поскольку триггерная память теряет свое содержимое при выключении питания, схемы типа SRAM-based программи­руются при каждом включении питания. Свойство ISP означает, что реконфигурацию можно производить без изъятия микросхемы из системы, перезагружая файл конфигурации, что возможно и во время функционирования системы. Такая возможность позволяет стро­ить системы с многофункциональным использованием одних и тех же программируемых микросхем в качестве разных блоков системы, если эти блоки не используются одновре­менно, а также и другие варианты адаптивных систем.

Наличие средств защиты от считывания данных конфигурации. Такие средства имеют разную степень защиты. В простейшем случае предусматривается бит защиты или несколько таких битов.

Программирование крутизны фронтов. Известно, что одной из острых проблем при реализации цифровых устройств и систем является борьба с помехами, в том числе создаваемыми самими схемами этих устройств и систем. С целью снижения уровня воз­никающих импульсных помех для мощных буферов, прежде всего тех, которые форми­руют выходные сигналы кристалла, вводится программирование крутизны фронтов. Бит SLC (Slew Rate Control) задает режимы крутых или пологих фронтов. Рекомендуется вез­де, где допустимо, устанавливать режим пологих фронтов, создающий гораздо меньшие помехи. В критичных для быстродействия цепях с целью повышения производительнос­ти системы используются режимы крутых фронтов (т. е. быстрых переключений).

 





Поделиться с друзьями:


Дата добавления: 2016-10-06; Мы поможем в написании ваших работ!; просмотров: 1009 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Стремитесь не к успеху, а к ценностям, которые он дает © Альберт Эйнштейн
==> читать все изречения...

2176 - | 2136 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.011 с.