Джон Ф.Уэйкерли Проектирование цифровых устройств. Том I (2002) (1095889), страница 223
Текст из файла (страница 223)
Память и микросхемы типа СРЬ0 и ГРОА ПРИВВЗКА ВЫВОДОВ Другой важной проблемой при разработке ИС типа СРЬР и программного обеспечения является привязка выводов 1ргп 1ос1апя). В большинстве приложений ИС типа СРЬР считается нормальным разрешить программе компоновки выбирать любые возможные выводы в качестве внешних входов и выходов данного устройства. Но когда проект закончен и изготовлена печатная плата, разработчик может пожелать «зафиксировать» назначение выводов, так чтобы они оставались теми же самыми при небольших (или даже при болыпих!) изменениях, связанных с исправлением ошибок в проекте. Это приводит к экономии времени н стоимости и позволяет преодолеть препятствия, возникающие при переработке или доработке и переделке печатной платы. Желаемая «привязка» выводов обычно указывается в файле, который читается программой компоновки.
У первых ИС типа СРЬР и ГРОА привязка выводов до выполнения даже небольших изменений не гарантировала успеха: программа компоновки «поднимала руки» и жаловалась, что ели~иком много ограничений. Если вы разблокируете назначение выводов, то программа компоновки, возможно, найдет новое распределение, которое будет работать, но оно может оказаться совершенно не похожим на исходное. Эти проблемы вовсе не обязательно возникали по вине программы компоновки; просто у ИС типа СРЬР и ГРОА не бьшо достаточного количества внутренних связей, чтобы выдерживать постоянные изменения проекта при условии привязки выводов.
Производители извлекли урок из опыта работы с этими первыми устройствами и усовершенствовали их внутреннюю архитектуру, приспособив ее к частым изменениям в процессе разработки проекта. В результате некоторые микросхемы теперь имеют, например, «выходную переключающую матрицу», которая гарантирует возможность соединения любого входа или выхода макроячейки, находящейся внутри данной ИС, с любым внешним РО-выводом.
10.6. Интегральные схемы типа КРОА Программируемая в условиях эксплуатации матрица вентилеи 1г)е)аргоягаттайе раГ« аггау, гр6А) в какой-то мере подобна СРЬР, вывернутой изнутри наружу. Как показано на рис. 10.43, на кристалле расположено большое число программируемых логических блоков, каждый из которых меньше, чем ПЛУ. Они распределены по всему кристаллу среди программируемых соединений, а вся матрица окружена программируемыми блоками ввода~вывода. Программируемый логический блок ИС типа ГРОА обладает меньшими возможностями, чем типичное ПЛУ„но одна микросхема типа ГРОА содержит гораздо больше л огических блоков, чем ИС типа СРЬР при том же самом размере кристалла.
Микросхемы типа ГРОА были изобретены фирмой Х1 йпх, 1пс., и в этом параграфе для иллюстрации архитектуры ИС типа ГРОА мы воспользуемся одним из популярных семейств этой фирмы — семейством ХС4000Е. 10.6. Интегральные схемы типа РРЕА 1017 — Программируемые соединения Са — Программируемый погичес«ий блок П вЂ” Контактная площадка ввода(вывода Рис. 10.43.
Общая архитектура кристалла ИС типа РРОА 10Я.1. Семейство ИС типа ЕРСА ХС4000 фирмы Х111пх Программируемые логические блоки в ИС типа РРОА семейства ХС4000Е фирмы Хйшх названы перестраиваемыми логическими блоками 1сопЯигаЫе (о8(с ЫосЬ, СИЬ). Наименьшая микросхема ХС4003Е содержит матрицу логических блоков размером 1Ох10, а в самой большой ИС ХС4025Š— 1024 логических блока в виде матрицы размером 32х32. Фирмой ХП1пх на основе семейства ХС4000Е созданы также расширенные семейства ХС4000ЕХ и ХС4000Х1,, у которых имеются дополнительные возможности и которые обладают не рассматриваемыми здесь свойствами.
Самая большая ИС в расширенных семействах ХС4085Х1. содержат 313б логических блоков. В табл. 10.9 приведены о данные о выпускавшихся в 1999 году фирмой Х11шх микросхемах семейства ХС4000. Подобно семейству СРЫМ, семейство ХС4000 включает набор микросхем разных размеров с разным числом!(О-выводов.
В столбце таблицы «Макс. число доступных входов(выходов» указано максимальное число доступных пользователю блоков ввода/вывода, имеющихся в микросхеме. Однако ИС серии ХС4000 размешают в различных корпусах и в случае корпуса меньших размеров не все имеющиеся входы/выходы выведены на внешние контакты. Как и в случае с ИС типа СРЬР, пользователь микросхем типа ГРОА имеет возможность перенести свой проект, выполненный на основе небольшой ИС, в микросхему большего объема, размещенную в том же самом корпусе, и наоборот, В столбце «Число триггеров», как мы увидим позже, учтены все триггеры в устройстве, по два в каждом логическом блоке и по два в каждом блоке ввода(вывода.
В типичном проекте используется только часть имеющихся триггеров, но полное их число является показателем возможностей, на которые ориентируется разработчик при грубой оценке размеров требуемой ИС типа РРОА. Данные столбца «Максимальное число битов в ОЗУ» являются другим полазателем качества. Как мы увидим, каждый логический блок может либо выполнять логические операции, либо представлять собой небольшое статическое ОЗУ, хранящее до 32 битов.
1018 Глава 10. Память и микросхемы типа СР).0 и ГР«чА Табл. 10.0. Микросхемы типа ГРОД серии ХС4000 фирмы Х!!!Ох Ммс Лсатзв»- ннк мкм»м/ в»с»слав 64 Рвзмер Числю мвтринн лагилогичвс- ческик кнк блоков бпааав Бхз 64 Мико. число ййис. Типичное Число бнтоввОЗУ числа числовентитриг- (без вентилей лей (в логике и ге)хм логики) (без ОЗ)0 в ОЗУ) Нвзввние мивраакемн \ 6(Н) 3 ОСО 5 000 ь 0(н) 8 О(О 10 000 13 000 20 (НН) 2» (НН) 28 ООО 1 000-3 000 2000 5000 3 ООО 9000 4 ЙК)-! 2 000 7 000-15 000 7 ООО 20000 10 (Н)0-30 (НН) ! 3 ПН)-10 000 15 СОО 45000 18 0(4)-50 000 256 2 048 360 3 200 6!б 6 272 80 112 768 8 192 936 и) 368 128 1!20 12 800 1 536 18 43» 192 224 2016 25 088 2 560 32 768 2 5Ы) 32 768 88 320 352 Зм 448 3 168 41 472 3 840 51 200 27 ОСО *5 ООО '1 СОО 80 0(Н) 36 000 44 ООО 4 576 ь! 952 » 37Ь ТЗ 728 7 168 )ОО 352 52 ООО 33 МК)-100 Ооо 62 0(Н) 85 0(К) 40 000-130 ООС 55 0(43-180 000 У параметра «Максимальное число вентилей» нет четкого определения.
Согласно таблице каждый логический блок в ИС ХС4002ХЕ может выполнять функцию, реализуемую примерно 25 вентилями в дискретном исполнении. Микросхема ХС4003Е в этом отношении даже лучше; в ней каждый логический блок соответствует 30 вентилям. Так ли это? И еще: что такое «вентиль»? Считать ли схему ИСКЛЮЧАЮЩЕЕ ИЛИ или схему И-НЕ с большим числом входов одним вентилем? Вы можете решить это для себя позже, после того, как больше узнаете об архитектуре логического блока. Тогда же вы сможете решить, кем был составлен этот столбец, — разработчиками или людьми, занимающимися маркетингом.
Последний столбец таблицы, скорее всего, написан специалистами по маркетингу, так как верхняя граница каждого «типичного» диапазона для числа вентилей превышает максимальное значение в предыдущем столбце! На самом деле )ьиее)лсл приемлемое объяснение этого кажущегося противоречия. Данные этого столбца предполагают, что 20 — 30% логических блоков используется в качестве статических ОЗУ емкостью 32 бита каждое, а не в качестве логики. Для образования ячейки статического ОЗУ необходимо, как минимум, четыре вентиля, когда роль ячейки ОЗУ играет Р-защелка (см.
схему на рис. Х7.27), и поэтому можно считать, что каждый логический блок, используемый в качестве статического ОЗУ, эквивалентен 128 вентилям. Таким образом, величина в последнем столбце равна числу вентилей, реализую!цих логические функции, плюс число эквивалентных логических схем, на лоторых построены статические ОЗУ. ХС.!002Х1 ХС4ООЗЬ Х ('460 Я:/Н 1.
ХС4006Н ХС НН)БЬ ХС40!ОЫХ(. Х("40! чк(Х( ХС402ОВХ1. ХС40 5! ХС40)НГХ(ХС ХГ 4036 ГХ/Х! ХС4044Х1 Х С4052 Х! ХС4062 Х) ХС4085Х 1. )ох)0 !00 14х)4 196 )ьк!Ь 256 18х\8 )24 20 х 20 400 21 х 21 5тб 25» 28 784 »32 102! 33 32 1 024 )Ьх М 1 29Ь 40х40 1 630 44 х 44 1 936 48з 48 2304 56»56 3136 10.6. Интегральные схемы типа ЕРЕА 1019 10-6.2. Перестраиваемый логический блок Так как ИС типа КРОА может содержать громадное число логических блоков, важно прежде всего разобраться в них< На рнс. 10.44 показана внутренняя структура логического блока в микросхемах серии ХС4000. с<.
<ч <сь Рис. 10.44. Перестраиваемый логический блок микросхем семейства ХС4000 Наиболее важными программируемыми элементами логического блока являются схемы Е, О и Н, вырабатывающие значения логических функций. С помощью элементов Е н О можно реализовать любую комбинационную логическую функцию четырех переменных, а элемент Н позволяет сформировать значение любой комбинационной логической функции трех переменных. Как работают схемы Е, 6 и Н? Сколько вентилей вы затратили бы на построение «универсальной» логической схемы, реализующей функцию 4 переменных? Подумайте об этом, а мы возвратимся к этому позже.
Как и при рассмотрении структуры ИС типа СР<.П, трапециевидные символы на рис. 10.44 представляют собой программируемые мультиплексоры. Обратите внимание, что сигналы с выходов схем Е и О, а также сигналы, поступающие на дополнительные входы логического блока можно подать через мультиплексоры М1 — МЗ на входы схемы Н, поэтому можно реализовать логические функции с числом переменных больше четырех. Ниже приведен перечень функций, которые можно реализовать с помощью схем Е, О и Н в одном логическом блоке: ° Любая функция с числом переменных не более четырех, плюс любая другая функция с числом переменных не более четырех, которые не связаны с переменными первой функции, плюс любая третья функция с числом независимых переменных не более трех. 1020 Глава 10.
Память и микросхемы типа СР10 и РРОА ° Любая одна функция пяти переменных !см. задачу 10.34). ° Любая функция четырех переменных, плюс некоторые другие функции шести переменных, не зависящих от переменных первой функции. ° Некоторые функции с числом переменных до девяти, включая проверку на четность и проверку равенства двух 4-разрядных двоичных слов; в последнем случае возможно последовательное включение схем проверки (см. задачи 10.35 и 10.36). При соответствующем программировании мультиплексоров М7-М8 и М12— М13 сигналы с выходов схем, вырабатывающих значения функций, могут быть выведены на выходы Х иулогического блока или запомнены в переключающихся по фронту 0-триггерах ЕЕ1 и гг2. Триггеры могут срабатывать по нарастающему или по спадающему фронту общего тактового сигнала на входе К, в зависимости от выбора, сделанного с помощью мультиплексоров М9 и М14.