Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
VHDL.pdf
Скачиваний:
152
Добавлен:
10.02.2015
Размер:
730.19 Кб
Скачать

Московский Государственный Технический Университет им. Н.Э. Баумана Научно-учебный комплекс «Робототехника и комплексная автоматизация» Кафедра «Системы автоматизированного проектирования»

Берчун Ю.В.

МЕТОДИЧЕСКИЕ УКАЗАНИЯ по курсу «ЭВМ и ПУ»

«Язык описания электронной аппаратуры VHDL»

Москва

2006

Аннотация

Данные методические указания посвящены проектированию узлов ЭВМ и периферийных устройств и прочих цифровых систем с помощью высокоуровневого языка описания аппаратуры — VHDL. Этот язык является международным стандартом и используется в качестве основы лингвистического обеспечения как в системах анализа (моделирования), так и в системах синтеза цифровой аппаратуры. Ведущие мировые САПР БИС поддерживают описания на языке VHDL.

2

Содержание

 

Аннотация.................................................................................................................................

2

Содержание...............................................................................................................................

3

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

5

1. Уровни описания электронной аппаратуры.......................................................................

5

2. Обзор HDL ............................................................................................................................

6

2.1. История развития HDL .................................................................................................

6

2.2. Варианты использования HDL.....................................................................................

7

2.3. Преимущества HDL.......................................................................................................

8

3. Общие положения ................................................................................................................

8

3.1. HDL с точки зрения схемотехника..............................................................................

8

3.2. HDL с точки зрения программиста............................................................................

10

4. Основы языка VHDL..........................................................................................................

11

4.1. Структура проекта.......................................................................................................

11

4.2. Сущности и архитектурные тела ...............................................................................

12

4.3. Типы данных................................................................................................................

14

4.3.1. Предопределённые типы данных........................................................................

15

4.3.2. Скалярные типы, вводимые пользователем.......................................................

17

4.3.3. Физические типы..................................................................................................

18

4.3.4. Агрегатные типы ..................................................................................................

18

4.3.4.1. Массивы..........................................................................................................

18

4.3.4.2. Записи.............................................................................................................

20

4.3.5. Подтипы.................................................................................................................

21

4.4. Сигналы и переменные...............................................................................................

21

4.5. Атрибуты......................................................................................................................

22

4.6. Процессы......................................................................................................................

24

4.7. Последовательные операторы....................................................................................

25

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

26

4.7.2. Оператор условия и оператор выбора................................................................

28

4.7.3. Оператор ожидания..............................................................................................

30

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

31

4.7.5. Операторы проверки............................................................................................

32

4.8. Параллельные операторы ...........................................................................................

33

4.8.1. Параллельное присваивание................................................................................

33

4.8.2. Оператор блока.....................................................................................................

34

3

4.9. Разрешение сигналов и шины....................................................................................

35

4.10. Подпрограммы...........................................................................................................

37

4.11. Структурное представление проекта.......................................................................

39

4.12. Настройка и конфигурирование компонентов.......................................................

41

4.13. Пакеты........................................................................................................................

42

Литература ..............................................................................................................................

44

Приложение 1. Алфавит моделирования.............................................................................

45

4

Введение

Развитие систем автоматизированного проектирования (САПР) в области электро-

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

Такими языками стали VHDL и Verilog, они фактически являются международными стандартами и входными языками промышленных систем автоматизированного проектирования СБИС различных типов — заказных, полузаказных, и программируемых логических интегральных схем (ПЛИС).

Например, VHDL является базовым языком проектирования (сквозного моделирования и синтеза) в свободно распространяемой САПР WebPack ISE фирмы Xilinx, которая является одним из крупнейших производителей кристаллов ПЛИС. Поддержка VHDL и Verilog является обязательной для всех крупных САПР ведущих мировых производителей, таких как Cadence, Mentor Graphics, Synopsys и другие. Существуют и специализированные САПР, ориентированные на синтез решений на базе ПЛИС различных производителей, например —

Active-HDL фирмы ALDEC.

1. Уровни описания электронной аппаратуры

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

Обычно выделяют 5 уровней описания вычислительных систем:

9системный уровень;

9уровень вычислительных процессов;

9функционально-логический уровень;

9схемотехнический уровень;

9компонентный уровень.

Функционально-логический уровень является самым ёмким и в нём дополнительно выделяют ряд подуровней:

9подуровень функционирования ЭВМ;

9подуровень устройств (узлов) ЭВМ;

5

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]