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

литература / kondratenko_yu_p_mokhor_v_v_sidorenko_s_a_verilog_hdl_dlya_m

.pdf
Скачиваний:
0
Добавлен:
13.05.2026
Размер:
8.49 Mб
Скачать

Список использованной литературы

1.Буч Г. Объектно-ориентированный анализ и проектирование с примерами применения на С++. – 2-е изд. – М.: Издательство “Бином”; СПб.: Невский диалект, 2001. – 560 с.

2.Виноградов Ю.Н., Шевченко Ю.А., Сергиенко А.М. Конфигурируемые компьютеры: состояние и перспективы // Материалы международной научно-технической конференции International Active-HDL Conference”. – 15-16 октября, 2001, Харьков, Украина. – С. 5-9.

3.Глушков В.М. Кибернетика, вычислительная техника, информатика. Избранные труды в 3 т. – Т.1. Математические вопросы кибернетики. – К., 1990. – 264 с.

4.Горбатюк А.Ф., Руднев В.Н., Тимченко А.С. Структурный синтез цифровых устройств на основе алгоструктурной технологии // Вестник ХГТУ. – 2002. – № 14. – С. 74-81.

5.Джагупов Р.Г., Ерофеев А.А. Пьезоэлектронные устройства вычислительной техники, систем контроля и управления: Справочник. – СПб.: Политехника, 1994. – 608 с.

6.Джагупов Р.Г., Плавинский Е.Б., Никольский В.В., Веретенник А.М.

Измерительные преобразователи. – Одесса: Астропринт, 2002. – 216 с.

7.Електроніка і мікросхемотехніка / В.І. Сенько, М.В. Панасенко, Є.В. Сенько та ін.; Під ред. В.І. Сенька. – К.: ТОВ “Видавництво “Обереги”, 2000. – 300 с.

8.Каневский Ю.С. Компьютерная арифметика: Конспект лекций. – К.:

ДиаСофт, 1994. – 240 с.

9.Каневский Ю.С. Систолические процессоры. – К.: Техніка, 1991. – 173 с.

10.Кондратенко Ю.П., Сидоренко С.А. Методи проектування нечітких пристроїв прийняття рішень на основі програмованих логічних ІМС // Наукові записки НаУКМА. – Київ, 2000. – Т. 18, ч. 2. – С. 401-412.

11.Кондратенко Ю.П., Сидоренко С.А. Сучасні інформаційні технології для задач автоматизованого проектування цифрових пристроїв // Вісник ХДТУ.

– 2000. – № 1 (7). – С. 229-235.

198

Verilog-HDL для моделирования и синтеза цифровых электронных схем

12.Кондратенко Ю.П., Сидоренко С.А., Підопригора Д.М. VHDL-моделі для проектування цифрових пристроїв. – Миколаїв: УДМТУ, 2002. – 60 с.

13.Кондратенко Ю.П., Сидоренко С.А., Підопригора Д.М. Поведінковий синтез цифрових пристроїв у середовищі Active-HDL. – Миколаїв: Вид-во МФ НаУКМА, 2002. – 116 с. (Рекомендовано Міністерством освіти і науки України як навчальний посібник для студентів вищих закладів освіти).

14.Корнейчук В.И. и др. Вычислительные устройства на микросхемах: Справочник / В.И. Корнейчук, В.П. Тарасенко, Ю.Н. Мишинский. – К.:

Техніка, 1986. – 264 с.

15.Лингер Р., Миллс Х., Уитт Б. Теория и практика структурного программирования. – М.: Мир, 1982. – 406 с.

16.Малахов В.П., Ситніков В.С. Моделювання в схемотехніці. – Одеса: Астропринт, 2001. – 192 с.

17.Материалы международной научно-технической конференции

International Active-HDL Conference”. – 15-16 октября, 2001, Харьков, Украина. – С. 25-27.

18.Программируемые логические ИМС на КМОП-структурах и их применение / П.П. Мальцев, Н.И. Гарбузов, А.П. Шарапов, Д.А. Кнышев.

– М.: Энергоатомиздат, 1998. – 160 с.

19.Титце У., Шенк К. Полупроводниковая схемотехника. – М.: Мир, 1982. – 512 с.

20.Хаханов В.И., Горбунов Д.М. Метод генерации тестов цифровых схем // Сборник научных трудов Харьковского государственного технического университета радиоэлектроники. – Харьков: ХГТУРЭ, 2001. – С. 317-318.

21.Хаханов В.И., Скворцова О.Б., Бабич А.В. Метод псевдослучайной генерации тестов для цифровых схем // Сборник научных трудов Харьковского государственного технического университета радиоэлектроники. – Харьков: ХГТУРЭ, 2001. – С. 305-306.

22.Цифрова техніка / Б.Є. Рицар. К.: УМК ВО, 1991. – 372 с.

23.Active-HDL User’s Guide. – Second edition. – Copyright ALDEC, Inc. 1999. – 213 p.

24.Ashenden P.J. The designer’s guide to VHDL. – San Francisco: Morgan Kaufmann Publishers, 1996. – 688 p.

25.Bhasker J. A VHDL synthesis primer. – San Francisco: Morgan Kaufmann Publishers, 1996. – 688 p.

26.Hyduke S. New technologies for improved productivity // Int. Conf.

“Shipbuilding: education, science, production (dedicated to the 100 years of shipbuilding education in Ukraine). – 24-25th of Sept. 2002. – Abstracts of papers. – Р. 12.

27.Manzoul A.M., Jayabharathi D. FPGA for fuzzy Controllers // IEEE Transactions on systems man and cybernetics, January 1995, Vol.25, #1. – Р. 14-

Учебное пособие

199

28.

28.Palnitkar S. Verilog HDL. A guide to digital design and synthesis. – Mountain View, California, USA: Sunsoft Press, 1996. – 396 p.

29.Roth C.H. Digital systems design using VHDL. – Boston: PWS Publishing Company, 1998. – 470 p.

30.Test Access Port And Boundary –Scan Architecture // IEEE Standard 1149.1 – 1990 (Includes IEEE Standard 1149.1a – 1993).

31.VHDL Modeling Terminology and Taxonomy, Draft paper Ver. 3.1, May 26, 2000 // RASSP Taxonomy Working Group (RTWG). – http:// www.atl.lmco.com/rassp/taxon/index.html Zeidman B. Verilog designers library.

– New Jersey, USA: Prenyice hall PTR, 1999. -– 416 p.

Глоссарий

Абстракция (c. 16) ................................................

Abstraction

Алгоритмический уровень абстракции (c. 21)....

Algorithmic abstraction level

Арифметические операции (c. 84)......................

Arithmetic operators

Бесконечный цикл (c. 118)...................................

Forever loop

Бинарные операции (c. 84)..................................

Binary operators

Блок-диаграмма (c. 59) ........................................

Block diagram

Блоки (c. 119)........................................................

Block

Блокирующее присваивание (c. 97)....................

Blocking assignment

Векторы (c. 33) .....................................................

Vectors

Вентильный уровень абстракции (c. 22) ............

Switch abstraction level

Включение модуля (c. 48)....................................

Module instantiation

Вложенные блоки (c. 122) ...................................

Nested blocks

Восьмеричные числа (c. 26)................................

Octal numbers

Выражения (c. 84) ................................................

Expressions

Высокий импеданс (c. 30)....................................

High impedance

Двоичные числа (c. 26) ........................................

Binary numbers

Действительные регистры (c. 34) .......................

Real registers

Десятичные числа (c. 26).....................................

Decimal numbers

Директивы компилятора (c. 40)...........................

Compiler directives

Задержка внутри присваивания (c. 103).............

Intra-assignment delay control

Задержка возрастания (c. 72) .............................

Rise delay

Задержка отключения (c. 72)...............................

Turn off delay

Задержка снаружи присваиваний (c. 103)..........

Extra-assignment delay control

Задержка спада (c. 72).........................................

Fall delay

Идентификаторы (c. 28) ......................................

Identifiers

Иерархическая схема вызовов (c. 125)..............

Hierarchical referencing

Иерархия структурная (c. 44) ..............................

Structural hierarchy

Именованные блоки (c. 122) ...............................

Named blocks

Именованные события (c. 109)...........................

Named events

Учебное пособие

201

Интерфейсная модель (c. 16) .............................

Interface model

Ключевые слова (c. 29) .......................................

Keywords

Комментарии (c. 21).............................................

Comments

Конкатенация (c. 88) ............................................

Concatenation

Логические операции (c. 86)................................

Logical operators

Логический уровень абстракции (c. 22)..............

Logical abstraction level

Массивы (c. 35) ....................................................

Arrays

Модель производительности (c. 16)...................

Production model

Модули (c. 44).......................................................

Module

Неблокирующее присваивание (c. 98) ...............

Non-blocking assignment

Непрерывное присваивание (c. 78)....................

Continuous assignment

Нулевая задержка (c. 106) ..................................

Zero delay

Объявление портов (c. 47) ..................................

Port declaration

Объявление портов по умолчанию (c. 48) .........

Default port declaration

Оператор включения (c. 48) ................................

Instantiation operator

Оператор выбора (c. 113)....................................

Case operator

Операции (c. 84)...................................................

Operators

Операции конкатенации (c. 88)...........................

Concatenation operators

Операции свертки (c. 87).....................................

Reduction operators

Операции сдвига (c. 88).......................................

Shift operators

Операции сравнения (c. 86) ................................

Equality operators

Отсоединенные порты (c. 51) .............................

Unconnected ports

Параллельные блоки (c. 119) .............................

Parallel blocks

Параметры (c. 52) ................................................

Parameters

Перекрытие параметров (c. 54) ..........................

Parameters overriding

Перекрытие сигналов (c. 101).............................

Signals overriding

Побитовые операции (c. 87)................................

Bitwise operators

Поведенческая модель (c. 15, 21) ......................

Behavioral model

Поведенческие блоки (c. 91, 93) .........................

Behavioral blocks

Поведенческий уровень абстракции (c. 21) .......

Behavioral abstraction level

Подключение портов (c. 51) ................................

Port connection

Порты входные (c. 47) .........................................

Input ports

Порты выходные (c. 47) ......................................

Output ports

Порты двунаправленные (c. 47) .........................

Inout ports

Последовательные блоки (c. 119) ......................

Conventional blocks

Прерывание блока (c. 123)..................................

Disable

Процедурное присваивание (c. 95) ....................

Procedural assignment

Расширенные идентификаторы (c. 30) ..............

Escaped identifiers

Регистры (c. 32)....................................................

Registers

Свертка (c. 87)......................................................

Reduction

202

Verilog-HDL для моделирования и синтеза цифровых электронных схем

Системные функции (c. 36) .................................

System tasks

Структурная модель (c. 15, 21) ...........................

Structural model

Сценарии (c. 126) .................................................

 

Task

Тернарные операции (c. 84)................................

Ternary operators

Типы данных (c. 30) .............................................

 

Data types

Унарные операции (c. 84)....................................

Unary operators

Управление задержками (c. 103) ........................

Delay timing control

Управление событиями (c. 108)..........................

Event timing control

Уровень абстракции (c. 20) .................................

Abstraction level

Уровень потоков данных (c. 21) ..........................

Data flow abstraction level

Уровень регистровых передач (c. 22).................

Register transfer level, RTL-

Условный оператор (c. 112) ................................

Conditional statement

Функции (c. 128)....................................................

 

Functions

Функциональная модель (c. 15) ..........................

Functional model

Целочисленные регистры (c. 34) ........................

Integer registers

Цепи (c. 31) ...........................................................

 

Nets

Цикл «пока» (c. 115).............................................

 

While loop

Цикл с параметром (c. 116) .................................

Parameter loop

Циклические операторы (c. 115).........................

Loops

Шестнадцатеричные числа (c. 26)......................

Hexadecimal numbers

Язык описания оборудования (c. 3)....................

Hardware description languages

Содержание

Предисловие............................................................................................

3

Рекомендации читателю.......................................................................

6

Введение...................................................................................................

7

1.

Применение языка Verilog и методология

 

 

проектирования цифровых устройств....................................

9

 

1.1. Область применения языков

 

 

описания оборудования....................................................

9

 

1.1.1. Общая характеристика интегральных схем

 

 

программируемой логики......................................

9

 

1.1.2. Интегральные схемы FPGA-типа .......................

10

 

1.1.3. Архитектура ИМС типа CPLD .............................

12

1.2.Методология применения языка Verilog при проектировании цифровых устройств

на основе программируемой логики..............................

13

1.2.1.Общая характеристика методологии проектирования электронных устройств, основанной на поведенческом

моделировании.....................................................

13

1.2.2. Классификация моделей –

 

составляющих проекта ........................................

15

1.2.3. Процесс проектирования со снижением

 

уровня абстракции моделей................................

16

1.2.4. Классификация моделей с точки зрения

 

уровня абстракции ...............................................

20

204

 

Verilog-HDL для моделирования и синтеза цифровых электронных схем

2.

Элементы языка Verilog..........................................................

23

 

2.1. Комментарии в языке Verilog.........................................

23

 

2.2.

Операции..........................................................................

25

 

2.3.

Числовые константы.......................................................

26

 

2.4.

Строковые константы.....................................................

28

 

2.5. Идентификаторы и ключевые слова..............................

28

 

2.6.

Структуры данных Verilog .............................................

30

 

 

2.6.1. Цепи ......................................................................

31

 

 

2.6.2. Регистры................................................................

32

 

 

2.6.3. Векторы.................................................................

33

 

 

2.6.4. Целые числа..........................................................

34

 

 

2.6.5. Действительные числа real..................................

34

 

 

2.6.6. Массивы................................................................

35

 

2.7.

Системные функции .......................................................

36

 

2.8.

Директивы компилятора.................................................

40

 

2.9.

Задачи и упражнения......................................................

42

3.

Синтез структурных моделей цифровых устройств..........

44

 

3.1. Структурная декомпозиция проектов в Verilog ...........

44

 

3.2.

Оператор включения модуля .........................................

48

 

 

3.2.1. Синтаксис оператора включения модуля ..........

48

 

 

3.2.2. Согласование типов портов

 

 

 

и их направлений при включении модулей.......

51

 

 

3.2.3. Создание настраиваемых модулей.....................

52

 

3.3.

Испытательные стенды...................................................

54

 

3.4.

Использование редактора блок-диаграмм

 

 

 

пакета Active-HDL ..........................................................

59

 

3.5. Синтез простейших логических цепей..........................

67

 

3.6.

Упражнения.....................................................................

75

4.

Функциональные модели устройств

 

 

на языке Verilog на основе потоков данных

 

 

и поведенческих конструкций ...............................................

78

 

4.1. Синтез Verilog-моделей цифровых устройств

 

 

 

на уровне потоков данных..............................................

78

 

 

4.1.1. Непрерывный оператор присваивания...............

78

 

 

4.1.2. Введение временных задержек в непрерывные

 

 

 

операторы присваивания.....................................

81

Учебное пособие

 

205

 

 

4.1.3. Сокращенная форма записи непрерывного

 

 

 

оператора присваивания......................................

83

 

 

4.1.4. Выражения и операнды .......................................

84

 

 

4.1.5. Операции...............................................................

84

 

4.2.

Поведенческое моделирование......................................

91

 

 

4.2.1. Оператор initial......................................................

91

 

 

4.2.2. Оператор always ....................................................

94

 

 

4.2.3. Операторы присваивания .....................................

95

 

 

4.2.4. Блокирующее присваивание ...............................

97

 

 

4.2.5. Неблокирующее присваивание...........................

98

 

 

4.2.6. Управление временем протекания процессов.103

 

 

4.2.7. Управление задержками....................................

103

 

 

4.2.8. Нулевая задержка...............................................

106

 

 

4.2.9. Событийное управление процессами...............

108

 

4.3.

Структура языка Verilog ...............................................

112

 

 

4.3.1. Условный оператор............................................

112

 

 

4.3.2. Оператор выбора case ........................................

113

 

 

4.3.3. Общая характеристика циклических

 

 

 

операторов ..........................................................

115

 

 

4.3.4. Цикл «пока»........................................................

115

 

 

4.3.5. Циклы c параметром..........................................

116

 

 

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

119

 

 

4.3.7. Вложенные и именованные блоки....................

122

 

4.4.

Сценарии и функции.....................................................

125

 

 

4.4.1. Общая характеристика подпрограмм

 

 

 

в языке Verilog....................................................

125

 

 

4.4.2. Сценарии.............................................................

126

 

 

4.4.3. Функции..............................................................

128

 

4.5.

Упражнения...................................................................

130

5.

Примеры реализации цифровых устройств

 

 

на основе языка Verilog .........................................................

131

 

5.1.

Разработка сумматора...................................................

131

 

 

5.1.1. Поведенческая модель сумматора....................

131

 

 

5.1.2. Модель сумматора на уровне

 

 

 

регистровых передач..........................................

134

 

 

5.1.3. Разработка испытательного стенда

 

 

 

для сумматора.....................................................

140

 

5.2. Умножитель знаковых целых чисел............................

147

206

Verilog-HDL для моделирования и синтеза цифровых электронных схем

 

5.2.1. Поведенческий код умножителя.......................

148

 

5.2.2. Код уровня регистровых передач.....................

150

 

5.2.3. Испытательный стенд........................................

161

5.3.

Контроллер динамической оперативной

 

 

памяти DRAM................................................................

166

 

5.3.1. Поведенческий код............................................

166

 

5.3.2. Код уровня регистровых передач.....................

173

 

5.3.3. Испытательный стенд........................................

178

Приложение А.

 

Имитационное моделирование Verilog-программ

 

в среде Active-HDL .................................................................

188

Список использованной литературы.............................................

197

Глоссарий

............................................................................................

200