Московскийгосударственный технический университет им. Н.Э. Баумана Калужский филиал
Кафедра “САУ и Электротехники”
ЭИУ3-КФ
Расчётно-пояснительная запискак курсовой работе
тема:
“Разработка двоичного сумматора по модулю 13”
по дисциплине:
Микропроцессорные устройства систем
управления
Калуга 2009
СодержаниеВведение1. Теоретическая часть1.1 Логическое проектирование КЛС1.2 Логические последовательности1.3 Программное обеспечение1.3.1 Decomposer1.3.2 Пакет WebPACK ISE1.3.2.1 Основные характеристики пакета WebPACK ISE2. Практическая часть2.1 Формирование логической последовательности2.2. Синтез сумматора при помощи пакета Decomposer2.3 Описание сумматора на языке VHDL2.4 Сравнительный анализ используемых ресурсов дляразличных вариантов реализации схемы2.5 Покрытие блоковВывод
Список литературы
Введение
В настоящее времяизвестно множество методов синтеза комбинационных логических схем (КЛС).Практически все они включают следующие этапы:
1. Формальное описаниеповедения КЛС посредством таблицы истинности;
2. Получение совершенныхдизъюнктивных нормальных форм (СДНФ) для всех собственных функций КЛС;
3. Минимизация СДНФ сиспользованием аналитических (Квайна-Мак-Класки) или графических (карт Карно,диаграмм Вейча) методов;
4. Переход с помощьюформальной процедуры от системы минимизированных формул к графическомуизображению схемы на элементах «И», «ИЛИ» и «НЕ».
Такой подход сложилсяисторически, поскольку цифровые устройства изначально реализовывалисьрелейно-контактными схемами, а затем – схемами на бесконтактных логическихэлементах (ламповых, магнитных, магнитополупроводниковых и полупроводниковых).На этом этапе получили широкое распространение алгебраические методы в класседизъюнктивных нормальных форм. Дело в том, что как контактные, так и первыебесконтактные электронные логические схемы реализовывали классический базис«И», «ИЛИ» и «НЕ», а дизъюнктивные нормальные формы представляют логическиефункции именно в этом базисе.
При большом числе входов(более пяти-шести) выполнение этих операций становится затруднительным даже дляодной логической функции.
Позже на смену контактными бесконтактным элементам «И», «ИЛИ» и «НЕ» пришли интегральные логическиесхемы, которые в одном кристалле полупроводника реализуют сложную логическуюструктуру. Базисом интегральных схем стали функции Шеффера («И-НЕ»), Пирса(«ИЛИ-НЕ») и логическая функция «И-ИЛИ-НЕ». Некоторые из изменённых методовпо-прежнему используют минимизацию дизъюнктивных нормальных форм с последующимпреобразованием найденных минимальных формул в логические формулы в базисе«И-НЕ» либо «ИЛИ-НЕ». Другие методы используют представление собственныхфункций синтезируемой схемы в виде совершенных нормальных форм в указанныхбазисах и минимизацию в этих базисах. Но теперь уже не стало однозначногосоответствия между числом вхождений букв в булевых формулах и числом логическихэлементов, поэтому минимизация формул не всегда приводит к упрощению логическихсхем.
Следует заметить, чторазработка устройств с использованием программируемых БИС невозможна безприменения средств и систем автоматизированного проектирования (САПР). «Ручная»разработка устройств, содержащих сотни и тысячи вентилей является весьматрудоёмкой и занимает достаточно длительное время. Особо значимыми становятсяпроцедуры отладки и верификации проектных решений.
Бурное развитиесовременной интегральной микросхемотехники, особенно программируемых логическихинтегральных схем (ПЛИС), привело к тому, что алгебраическая методологиялогического проектирования перестала поспевать за технологическим прогрессом.Изменчивость базиса требует разработки всё новых алгебраических методов. В тоже время привязка к конкретному логическому базису сильно ограничиваетвозможности использования формальных методов синтеза. Кроме того, в качествеконфигурируемых логических блоков (КЛБ) современных ПЛИС типа FPGA (Field Programmable Gate Arrays) используются логические модули на основе мультиплексоровили программируемых ПЗУ (LUT – Look-Up Tables). В этом случае при проектировании КЛС возникаетзадача разделения сложной схемы на более простые части, которые могут бытьреализованы на указанных типах КЛБ.
1.Теоретическая часть 1.1 Логическое проектирование КЛС
Комбинационной логическойсхемой называется устройство, изображённое на рис. 1.
/>
Рис.1. Комбинационнаялогическая схема
Выходные функцииназываются собственными функциями комбинационных логических схем (КЛС).Изображённой на рис. 1 КЛС соответствует система из /> собственныхфункций от /> аргументов.
1.2 Логическиепоследовательности
Традиционным является задание собственных функций ввиде таблицы истинности или алгебраических выражений. Алгебраические формулы неявляются инвариантными по отношению к базису, поэтому от такого способа следуетотказаться. Таблицы истинности инвариантны по отношению к базису, но достаточногромоздки и неудобны. Если договориться, что наборы состояний входов всегдаперечисляются в порядке возрастания их числовых эквивалентов, то их из таблицыможно исключить. Останется лишь выходной столбец, который удобнее записывать ввиде строки. Полученная таким образом логическая (числовая) последовательностьпредставляет собой компактный способ задания логических функций.
Процесс логическогосинтеза КЛС включает выполнение следующих этапов:
1) абстрактный синтез;
2) структурный синтез;
3) структурный анализ.
На этапе абстрактного синтеза решается задачаформального описания функционирования проектируемой схемы. В качестве исходнойинформации, как правило, используется словесное описание алгоритма работысхемы. В результате решения этой задачи получаются собственные функции КЛС. Этузадачу легче всего решать с помощью таблицы истинности из которой затемполучается логическая последовательность.
На этапе структурного синтеза заданы логическиеэлементы, из которых строится схема, и система собственных функций (то естьзадача абстрактного синтеза решена). Необходимо найти схему соединениялогических элементов для реализации заданных собственных функций.
Решение задачи структурного синтеза разбивается на триэтапа:
1) абстрактно-структурный синтез. На этом этапе сложная схема делится на более простыечасти, то есть производится декомпозиция. Критерий разделения – уменьшениеобщей сложности описания схемы.
2) детализация.На этом этапе производится деление схемы до блоков, сложность которыхсоизмерима со сложностью заданных для покрытия элементов. При этом не требуетсяуменьшения сложности схемы. Если сложность покрывающего элемента большесложности покрываемого блока, то с помощью процедуры анализа объединяютсянесколько блоков в один. Покрытие производится лишь после выравниваниясложностей блока и логического элемента.
3) покрытие абстрактной схемы заданными логическимиэлементами. На данном этапе производитсяформальное замещение получившихся при детализации блоков логическими элементамизаданного типа.
В результате выполнения этих этапов получается схема,состоящая из заданных логических элементов. Задача структурного синтеза всегдаимеет множество решений (то есть схемы соединения элементов для реализациизаданных собственных функций могут быть совершенно различными). Поэтомупроцедуру структурного синтеза следует проводить таким образом, чтобы получитьсхему, содержащую минимальное количество логических блоков (элементов).
Поскольку при формальном покрытии не принимаются вовнимание никакие другие блоки кроме покрываемого, синтезированная схема, какправило, оказывается избыточной. Это вызывает необходимость проведения оптимизацииполученной схемы. 1.3 Программное обеспечение
1.3.1 Decomposer
Бурноеразвитие современной интегральной микросхемотехники, особенно программируемыхлогических интегральных схем (ПЛИС), привело к тому, что алгебраическаяметодология логического проектирования перестала поспевать за технологическимпрогрессом. Изменчивость базиса требует разработки всё новых алгебраическихметодов. В то же время привязка к конкретному логическому базису сильноограничивает возможности использования формальных методов синтеза. Кроме того,в качестве конфигурируемых логических блоков (КЛБ) современных ПЛИС типа FPGA (Field Programmable Gate Arrays) используются логические модули на основемультиплексоров или программируемых ПЗУ (LUT – Look-Up Tables). В этом случае при проектировании КЛС возникаетзадача разделения сложной схемы на более простые части, которые могут бытьреализованы на указанных типах КЛБ.
Разработанныйв Калужском филиале МГТУ им. Н.Э. Баумана программный пакет Decomposer предназначен для решения задачавтоматизированного логического синтеза цифровых схем с использованием методовмногоуровневой декомпозиции и их реализации на микросхемах программируемойлогики.
ВозможностиСАПР:
— проведениепараллельной и последовательной декомпозиции;
— детализациясхемы до уровня двухвходовых блоков;
— анализдекомпозированной схемы.
Кроме того, пакет Decomposerпозволяет получить описание синтезированной схемы на языке VHDL, что даётвозможность интегрироваться в специализированные пакеты программ (например, WebPACK)с целью получения файлов для «прошивки» микросхем программируемой логики ипрактической реализации спроектированных цифровых устройств.
Основныесвойства VHDL:
Одноиз главных свойств — это способность описывать аппаратуру и ее работу вовремени. Поэтому основными в VHDL являются такие близкие разработчику понятия,как объект проекта, интерфейс, порт, архитектура, сигнал, атрибуты сигнала,операторы параллельного присвоения, процесс и др.
Сигналв VHDL трактуется весьма широко и может быть скалярным (целым, вещественным,битовым и т. д.) или векторным (шинным), булевым или многозначным. Многозначная(реально 5-, 9- или 12-значная) логика дает возможность выявлять с помощьюмоделирования такие явления в схемах, как гонки, неопределенности на выходахсхем (например, асинхронного RS-триггера при запрещенных значениях входныхсигналов), решать задачи мультиплексирования шины.1.3.2 Пакет WebPACKISE
Программируемые логическиеинтегральные схемы (ПЛИС) все более широко используются для создания цифровыхсистем различного назначения. Фирма Xilinx®, являясь ведущим мировымпроизводителем ПЛИС, предоставляет разработчикам широкий спектр кристаллов сразличной технологией производства, степенью интеграции, архитектурой,быстродействием, потребляемой мощностью и напряжением питания, выпускаемых вразличных типах корпусов и в нескольких вариантах исполнения, включаяпромышленное, военное и радиационно-стойкое [1–5].
Кристаллы, выпускаемые фирмойXilinx, в полной мере реализуют преимущества ПЛИС по сравнению с «жесткойлогикой»:
· высокоебыстродействие;
· возможностьперепрограммирования непосредственно в системе;
· высокая степеньинтеграции, позволяющая разместить цифровое устройство в одном кристалле и темсамым снизить время и затраты на трассировку и производство печатных плат;
· сокращениевремени цикла разработки и производства устройства;
· наличие мощныхинструментов САПР, позволяющих устранить возможные ошибки в процессепроектирования устройства;
· сравнительнонизкая стоимость (в пересчете на один логический вентиль);
· возможностьпоследующей реализации проектов ПЛИС для серийного производства в виде заказныхСБИС, что позволяет значительно снизить их себестоимость.
До недавнего времени, несмотря навсе достоинства ПЛИС Xilinx, существовало обстоятельство сдерживающее ихприменение (особенно недорогих кристаллов при разработке несерийных устройств)— необходимость дополнительных затрат на приобретение пакета программныхсредств проектирования и программирования. Чтобы устранить это препятствие,фирма Xilinx предоставила разработчикам возможность использовать бесплатноепрограммное обеспечение — пакет WebPACK™ ISE™ (Integrated SynthesisEnvironment). Цель настоящей публикации — познакомить разработчиков цифровыхустройств с возможностями САПР WebPACK ISE и основами методики выполнения проектовв среде данного пакета.1.3.2.1 Основныехарактеристики пакета WebPACK ISE
Программные средства WebPACK ISEпредставляют собой систему сквозного проектирования, которая реализует все этапысоздания цифрового устройства на базе ПЛИС, включая программирование кристалла:разработка проекта, синтез, моделирование, трассировка и загрузка в кристалл.Версия 3.3WP8.0 САПР WebPACK ISE предназначена для проектирования цифровыхустройств на базе ПЛИС производства Xilinx, относящихся как семействам CPLD:XC9500, XC9500XL, XC9500XV, XCR22V10, XCR3000 (XPLA1_3, XPLA2), XCR3000XL(XPLA3), XCR5000 (XPLA1_5), так и FPGA: Spartan™-II, Virtex™-E (только кристаллXCV300E), Virtex-II (кристаллы 2V40, 2V80 и 2V250).
Отличительные особенности пакета:
· поддержкаразличных методов описания проектируемых устройств (графических и текстовых);
· возможностьиспользования проектов, подготовленных в других системах проектирования, в томчисле в среде пакета Altera MAX+PlusII™;
· наличиесхемотехнического редактора, укомплектованного набором обширных библиотек;
· интеллектуальныесредства создания HDL (Hardware Description Language)-описаний, формирующиешаблоны на основании информации, предоставляемой пользователем, для языковописания аппаратуры VHDL, Verilog™ и ABEL™ HDL;
· высокоэффективныесредства синтеза HDL-проектов, поддерживающие языки VHDL, Verilog и ABEL HDL, свозможностью оптимизации;
· развитые средстваверификации проекта, позволяющие сократить полное время разработки устройстваза счет обнаружения возможных ошибок на более ранних стадиях проектирования исокращения длительности и количества возможных итераций;
· автоматическиесредства трассировки проекта в кристаллы различных семейств ПЛИС Xilinx сучетом оптимизации проекта по различным параметрам;
· средствапрограммирования кристаллов семейств ПЛИС Xilinx, выполненных по различнойтехнологии (CPLD и FPGA), поддерживающие несколько типов загрузочных кабелейJTAG-интерфейса;
· удобный дляразработчика пользовательский интерфейс и наличие в каждом модуле пакетасправочной системы, сокращающие время освоения САПР;
· наличиеинтегрированного с пакетом САПР набора инструментов и утилит других фирм,предоставляющих дополнительные удобства в процессе проектирования, включающегоутилиту генерации тестовых сигналов HDL Bencher™, программу моделированияModelSim XE Starter™ и редактор диаграмм состояний StateCAD™.
2. Практическая часть2.1 Формированиелогической последовательности
Десятичный сумматор скодом 7-4-2-1. Этот код позиционный. Каждому разряду кодовой комбинациисопоставляется определенный весовой коэффициент, зависящий от позиции этогоразряда. Если задана кодовая комбинация />,где /> – двоичные символы, тодесятичную цифру, соответствующую этой кодовой комбинации можно определить поформуле:
/>
Таким образом, данный кодимеет следующие обозначения цифр:
«0» – 0000; «4» – 0100; «8» – 1001; «12» — 1101.
«1» – 0001; «5» – 0101; «9» – 1010;
«2» – 0010; «6» – 0110; «10» — 1011;
«3» – 0011; «7» – 1000; «11» — 1100;
Для данного сумматораполучена следующая логическая последовательность:
00 01 01 02 0203 03 04 04 05 05 06 06 08 ** **
08 09 09 0A 0A0B 0B 0C 0C 0D 0D 10 ** ** ** **
01 02 02 03 0304 04 05 05 06 06 08 08 09 ** **
09 0A 0A 0B 0B 0C 0C 0D 0D 10 10 11 ** ** ** **
02 03 03 04 0405 05 06 06 08 08 09 09 0A ** **
0A 0B 0B 0C 0C 0D 0D 10 10 11 11 12 ** ** ** **
03 04 04 05 0506 06 08 08 09 09 0A 0A 0B ** **
0B 0C 0C 0D 0D 10 10 11 11 12 12 13 ** ** ** **
04 05 05 06 0608 08 09 09 0A 0A 0B 0B 0C ** **
0C 0D 0D 10 10 11 11 12 1213 13 14 ** ** ** **
05 06 06 08 0809 09 0A 0A 0B 0B 0C 0C 0D ** **
0D 10 10 11 1112 12 13 13 14 14 15 ** ** ** **
06 08 08 09 090A 0A 0B 0B 0C 0C 0D 0D 10 ** **
10 11 11 12 1213 13 14 14 15 15 16 ** ** ** **
** ** ** ** **** ** ** ** ** ** ** ** ** ** **
** ** ** ** **** ** ** ** ** ** ** ** ** ** **
08 09 09 0A 0A0B 0B 0C 0C 0D 0D 10 10 11 ** **
11 12 12 13 1314 14 15 15 16 16 18 ** ** ** **
09 0A 0A 0B 0B 0C 0C 0D 0D 10 10 11 11 12 ** **
12 13 13 14 1415 15 16 16 18 18 19 ** ** ** **
0A 0B 0B 0C 0C 0D 0D 10 10 11 11 12 12 13 ** **
13 14 14 15 1516 16 18 18 19 19 1A ** ** ** **
0B 0C 0C 0D 0D 10 10 11 11 12 12 13 13 14 ** **
14 15 15 16 1618 18 19 19 1A 1A 1B ** ** ** **
0C 0D 0D 10 10 11 11 12 1213 13 14 14 15 ** **
15 16 16 18 1819 19 1A 1A 1B 1B 1C ** ** ** **
0D 10 10 11 1112 12 13 13 14 14 15 15 16 ** **
16 18 18 19 191A 1A 1B 1B 1C 1C 1D ** ** ** **
** ** ** ** ** ** ** **** ** ** ** ** ** ** **
** ** ** ** ** ** ** **** ** ** ** ** ** ** **
** ** ** ** ** ** ** **** ** ** ** ** ** ** **
** ** ** ** ** ** ** **** ** ** ** ** ** ** **
2.2 Синтез сумматора при помощи пакетаDecomposer
Вариант 1
Вариант 1 состоит из 3сумматоров и 5 блоков. Схема приведена на рисунке 2. Результаты трассировки дляразличных типов микросхем приведены в таблице 1.
/>
Рис.2. Схема сумматора.Вариант 1.
Таблица 1. Количество использованных ресурсов ПЛИС
макроячейки
(macrocells)
конъюнкт. термы
(product terms)
входы функц. блоков
(func. block inputs) xc9500xl 23 160 92 CoolRunner 15 78 29
Вариант 2
Эта схема состоит из 4-хсумматоров,2-х элементов «исключающее или» и 4-х блоков. Схема приведена на рис.3.Результаты трассировки для различных типов микросхем приведены в таблице 2.
/>
Рис.3. Схема сумматора.Вариант 2.
Таблица 2. Количество использованных ресурсов ПЛИС
макроячейки
(macrocells)
конъюнкт. термы
(product terms)
входы функц. блоков
(func. block inputs) xc9500xl 24 167 98 CoolRunner 18 91 39
Вариант 3
Проанализировав даннуюсхему (рис.4.), можно сделать вывод о том, что она является наиболее сложнойсхемой, в плане реализации, а также по количеству использованных ресурсов ПЛИС(таблица 3).
/>
Рис.4. Схема сумматора.Вариант 3.
Таблица 3. Количество использованных ресурсов ПЛИС
макроячейки
(macrocells)
конъюнкт. термы
(product terms)
входы функц. блоков
(func. block inputs) xc9500xl 26 241 73 CoolRunner 20 67 29 2.3 Описание сумматора на языке VHDL
Данный способ реализациицифровых устройств пользуется наибольшей популярностью во всем мире. Нижеприведен текст на языке VHDL,описывающий поведение десятичного сумматора с кодом 7-4-2-1, и результаты трассировкиданного варианта.
library IEEE;
useIEEE.STD_LOGIC_1164.ALL;
useIEEE.STD_LOGIC_ARITH.ALL;
useIEEE.STD_LOGIC_UNSIGNED.ALL;
entitysum_vhdl is
Port ( I: instd_logic_vector(8 downto 0);
O: outstd_logic_vector(4 downto 0));
end sum_vhdl;
architectureBehavioral of sum_vhdl is
signal sum:std_logic_vector(4 downto 0);
signalsum_prom: std_logic_vector(3 downto 0);
signal A:std_logic_vector(3 downto 0);
signal B:std_logic_vector(3 downto 0);
begin
A
B
sum
sum_prom(3downto 0)
else (sum(3downto 0) + «0011»);
O(3 downto 0)
else(sum_prom(3 downto 0) + «0001»);
O( 4 )
end Behavioral;
Таблица 4. Количество использованных ресурсов ПЛИС
макроячейки
(macrocells)
конъюнкт. термы
(product terms)
входы функц. блоков
(func. block inputs) xc9500xl 18 241 74 CoolRunner 21 80 42
2.4 Сравнительный анализ используемыхресурсов для различных вариантов реализации схемы
Таблица 5. Результатытрассировки для xc9500xl.xc9500xl Количество использованных ресурсов ПЛИС macrocells product terms function block inputs Вариант 1 23 160 92 Вариант 2 24 167 98 Вариант 3 26 241 73 Вариант 4 (VHDL) 18 241 74
Таблица 6. Результатытрассировки для CoolRunner.CoolRunner Количество использованных ресурсов ПЛИС macrocells product terms function block inputs Вариант 1 15 78 29 Вариант 2 18 91 39 Вариант 3 20 67 29 Вариант 4 (VHDL) 21 80 42 2.5 Покрытие блоков
Проведя сравнительныйанализ по таблицам 5, 6, можно сделать вывод о том, что оптимальным являетсяпервый вариант разложения. Проведем покрытие блоков при помощи мультиплексоровтипа 4/1.
С помощью мультиплексоратипа 4/1 можно реализовать любую логическую функцию 3-х аргументов, посколькупри разложении исключаются 2 аргумента, а на входы /> подаютсяфункции одного аргумента. Это могут быть либо константы «0», «1», либо функциятождества, либо функция инверсии 3-го аргумента.
Логическаяпоследовательность первого блока:
0012 345* 6633 700*
/>
Матрицы разложения имеютвид:
1) />
2) />
3) />
Используя данныеразложения, представим схему данного блока (графическая работа “Схемаэлектрическая принципиальная блока DC1”).
Логическаяпоследовательность второго блока:
0112 2302 1203 0013 0222 0013 13*3 1120
/>
Матрицы разложения имеютвид:
1) />
2) />
Используя данныеразложения, представим схему данного блока (графическая работа “Схемаэлектрическая принципиальная блока DC2”).
Логическаяпоследовательность третьего блока:
0123 0124 056* 723*
/>
Матрицы разложения имеютвид:
1) />
2) />
3) />
Используя данныеразложения, представим схему данного блока (графическая работа “Схемаэлектрическая принципиальная блока DC3”).
Логическаяпоследовательность четвертого блока:
0123 4560 2347 *476
/>
Матрицы разложения имеютвид:
1) />
2) />
3) />
Используя данныеразложения, представим схему данного блока (графическая работа “Схемаэлектрическая принципиальная блока DC4”).
Логическаяпоследовательность пятого блока:
0123 4125 2345 6457
/>
Матрицы разложения имеютвид:
1) />
2) />
3) />
Используя данныеразложения, представим схему данного блока (графическая работа “Схемаэлектрическая принципиальная блока DC5”).
После покрытия блокa получили наглядную экономию ресурсовПЛИС.
Таблица 7. Количество использованных ресурсов ПЛИС
макроячейки
(macrocells)
конъюнкт. термы
(product terms)
входы функц. блоков
(func. block inputs) xc9500xl 20 160 91 CoolRunner 15 77 29
Вывод
Для нетривиальных схемметоды декомпозиции дают существенный выигрыш по отношению к используемымресурсам. Как видно из таблиц 5-6, традиционный в наше время подход описанияцифровых устройств (VHDL) длясумматора в коде 7-4-2-1 при трассировке в кристалл не дает существенноговыигрыша, чем схема, полученная в результате декомпозиции.
Из таблиц 5-6, видно, чтодля разных типов ПЛИС оптимальный результат дают разные варианты реализации.Это связано с особенностью структуры тех или иных ПЛИС и требует отдельныхисследований.
Поиск оптимальногорешения задачи синтеза складывается из рассмотрения и анализа несколькихвариантов реализации комбинационной схемы для различных типов ПЛИС. В некоторыхслучаях возникает необходимость оценивать не только используемые ресурсы ПЛИС,но и задержку прохождения сигнала через схему.
Как видно из таблиц 5-6,для реализации сумматора по модулю 13 с весовыми коэффициентами 7-4-2-1наиболее оптимальными вариантами являются схемы №1 и №2. После покрытия схемы№1 мультиплексорами типа 4/1, заметен существенный выигрыш в использованииресурсов ПЛИС, о чем свидетельствуют результаты таблицы 7.
Списоклитературы
· Коновалов В.Н.,Белов А.А., Коновалов И.В., Нежельский П.Н.: Автоматизированный синтезкомбинационных логических схем на основе многоуровневой декомпозиции. – КФ МГТУим. Н.Э. Баумана, – 35с.: ил.
· Голубев Ю.П.:Автоматизация проектирования преобразователей дискретной информации. – Калуга:Издательство «Гриф», 2003. -652 с.
· Грэгори, Кейт:Использование Visual C++ 6. Специальное издание.: Пер. с англ. – М.; СПб.; К.:Издательский дом «Вильямс», 2003. – 864 с.: ил.
· Соловьев В.В.:Проектирование цифровых систем на основе программируемых логическихинтегральных схем. – М.: Горяцая линия-Телеком, 2001. – 636 с. ил.
· Кузелин М.О.,Кнышев Д.А., Зотов В.Ю.: Современные семейства ПЛИС фирмы Xilinx. Справочное пособие. – М.: Горячаялиния–Телеком, 2004. – 440 с.: ил.