Tải bản đầy đủ (.pdf) (337 trang)

lecture about Very High Speed Integrated Circuit

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.47 MB, 337 trang )

1
© 2007 Санкт-Петербург Антонов А.П.
Язык VHDL:
описание цифровых устройств
2
© 2007 Санкт-Петербург Антонов А.П.
Литература, средства проектирования
 Литература
- любые книги по языку VHDL
например:
«Ю.Е. Шейнин, Е.А. Суворова Проектирование
Цифровых Систем на VHDL»
 Средства проектирования- пакет QuartusII
3
© 2007 Санкт-Петербург Антонов А.П.
Введение
4
© 2007 Санкт-Петербург Антонов А.П.
Предпосылки использования HDL
100
10.000
1.000.000
100.000.000
Использованные
транзисторы
/ чел. мес.
Транзисторы
/СБИС (без эл-тов
памяти)
10
1.000


100.000
10.000.000
1981 1985 1989 1993 1997 2001 2005 2009
Закон
Мура
Продуктивность
разработки
Предел для опытных
инженеров
Кризис продуктивности разработки
5
© 2007 Санкт-Петербург Антонов А.П.
Как бороться с кризисом продуктивности?
 Переход к высокоуровневым средствам и методам
проектирования:
– Использование языков VHDL, Verilog
– Использование С подобных языков (SystemC)
– Использование библиотек параметризированных модулей
– Использование библиотек готовых решений для
алгоритмически сложных устройств – IP (Intellectual Property)
модулей
 Совершенствование элементной базы – создание
функционально законченных и параметризуемых модулей
аппаратно реализованных на кристаллах (умножители,
модули памяти, интерфейстные модули)
6
© 2007 Санкт-Петербург Антонов А.П.
Термины
 Поведенческое (алгоритмическое) моделирование –
моделирование алгоритма работы,

моделирование с 0-ми
задержками
 Временное (Timing, Gate Level) моделирование –
моделирование с задержками, полученными после
трассировки и размещения внутренних ресурсов СБИС
 Синтез – преобразование описания проекта в схему на
заданном элементном базисе
 Временные параметры:
– Fmax – максимальная тактовая частота работы
– Tco (clock-to-output)
– Th (hold)
– Tsu (setup time)
– Tpd (propagation delay)
7
© 2007 Санкт-Петербург Антонов А.П.
Синтез
Process (a, b, c, d, sel)
begin
case (sel) is
when “00” => mux_out <= a;
when “01” => mux_out <= b;
when “10” => mux_out <= c;
when “11” => mux_out <= d;
end case;
a
d
a
d
Translation
Optimization

a
d
sel
2
b
inferred
mux_out
c
8
© 2007 Санкт-Петербург Антонов А.П.
Этапы процесса проектирования
Разработка алгоритма и
архитектуры
«Поведенческое
моделирование»
Алгоритм
OK?
Синтез
«Временное
моделирование»
Синтезировано
ОК?
Да
Нет
Спецификация
Реализация
Да
Временные
параметры
ОК?

Нет
Нет
Да
Внедрение
Отладка в составе системы
9
© 2007 Санкт-Петербург Антонов А.П.
VHDL и Verilog HDL
 Основа языка:
– VHDL – Ада;
– Verilog – С
 Типизация:
– VHDL – строгая,
– Verilog – нестрогая
 Пользовательские типы:
– VHDL: да,
– Verilog - нет
10
© 2007 Санкт-Петербург Антонов А.П.
Что обозначает аббревиатура VHDL?
V
HSIC (Very High Speed Integrated Circuit)
Hardware
Description
Language
11
© 2007 Санкт-Петербург Антонов А.П.
История языка VHDL
 1980 - U.S. Department of Defense (DOD) Funded a
Project to Create a Standard Hardware Description

Language Under the Very High Speed Integrated
Circuit (VHSIC) Program
 1987 - the Institute of Electrical and Electronics
Engineers (IEEE) Ratified As IEEE Standard 1076
 1993 - the VHDL Language Was Revised and
Updated to IEEE 1076 ’93
 Версии 1987, 1993, 2002
12
© 2007 Санкт-Петербург Антонов А.П.
Термины
 Поведенческое описание – описание алгоритма
работы устройства
 Структурное описание – описание в виде
взаимосвязанных компонентов более низкого
уровня в иерархии описаний
 Конфигурируемые (параметризируемые)
описания – описания, которые позволяют
изменять (настраивать) структуру и
характеристики задаваемых ими модулей путем
изменения значений передаваемых в описание
параметров.
13
© 2007 Санкт-Петербург Антонов А.П.
Поведенческое описание
input1, , inputn
output1, , outputn
IF shift_left THEN
FOR j IN high DOWNTO low LOOP
shft(j) := shft(j);
END LOOP;

output1 <= shft AFTER 5ns;
 Только алгоритм работы, но не структура.
 Используется для синтеза и моделирования
(Synthesis, Simulation)
Left Bit Shifter
14
© 2007 Санкт-Петербург Антонов А.П.
Структурное описание
input1
inputn
output1
outputn
Компонент верхнего уровня
Компонент
нижнего
уровня 1
Компонент
нижнего
уровня 2
 Структура модуля
 Могут применяться специфические аппаратные элементы
 Используется для синтеза и моделирования (Synthesis,
Simulation)
15
© 2007 Санкт-Петербург Антонов А.П.
Основные концепции языка
 Возможность использования как для создания описаний
проектируемого модуля, так и для задания тестов.
 Возможность создания поведенческого, структурного и
смешанного описании проекта

 Параллельность выполнения операторов
 Возможность создания последовательных описании
 Поддержка работы со временем
 Конфигурируемость описаний
 Возможность повторного использования созданных
компонентов (иерархическое описание)
 Возможность переопределения существующих операторов
 Возможность работы с библиотеками
 Возможность работы с файлами
16
© 2007 Санкт-Петербург Антонов А.П.
Подмножества языка VHDL
Операторы языка
VHDL
синтезируемое
подмножество
 Синтезируемое описание – описание, допускающее
автоматическую реализацию процедуры синтеза на
заданном элементном базисе.
17
© 2007 Санкт-Петербург Антонов А.П.
Уровни описания проекта
Поведенческий
уровень
Уровень
регистровых
передач
Логический
уровень
Физический

уровень
Behavioral
RTL
Gate Level
Physical
18
© 2007 Санкт-Петербург Антонов А.П.
Терминология
 Register Transfer Level (RTL) - уровень
детализации описания цифровой системы
 RTL Synthesis - преобразование текстового
описания, заданного на RTL уровне, в
оптимизированную схему, реализованную на
заданном элементном базисе.
19
© 2007 Санкт-Петербург Антонов А.П.
Процедура проектирования в рамках пакета QuartusII
Синтез
(Quartus II)
Техническое задание
Разводка и размещение внутренних
ресурсов СБИС
Ввод описания проекта
- Поведенческое и/или структурное
описание проекта
Моделирование
- Функциональное моделирование
(Quartus II)
LE
M512

M4K
I/O
20
© 2007 Санкт-Петербург Антонов А.П.
Процедура проектирования в рамках пакета QuartusII
Временной анализ
- проверка соответствия созданной СБИС
требованиям к быстродействию
Моделирование на вентильном уровне
Тестирование и отладка
СБИС в составе системы
(ISP, SignalTap II )
t
clk
21
© 2007 Санкт-Петербург Антонов А.П.
Основы языка VHDL
22
© 2007 Санкт-Петербург Антонов А.П.
Вводные замечания VHDL
 Два подмножества языка:
– Синтезируемое
– Несинтезируемое
 Содержит зарезервированные ключевые слова (Reserved
Keywords)
 В большинстве случаев не различает строчные и прописные
буквы.
 Операторы заканчиваются точкой с запятой (; )
 Допускает свободное использование пробелов для улучшения
читаемости текста.

 Комментарии все от символа “ ” до конца строки
 Описания на языке VHDL могут быть созданы на :
– Поведенческом уровне (Behavioral)
– Структурном (Structural)
– Смешанном (Mixed)
23
© 2007 Санкт-Петербург Антонов А.П.
Основные элементы проектирования
 Entity
– объект проекта
• Используется для задания интерфейса (аналог символа)
 Architecture
– архитектурное тело проекта
• Используется для задания алгоритма работы на
поведенческом или структурном уровне.
 Configuration
– «Соединение» architecture & entity
 Package
– Определение часто используемых типов данных, компонент и
функций
 Library - библиотеки
24
© 2007 Санкт-Петербург Антонов А.П.
Основные элементы проектирования
Package
Declaration
Package Body
Entity
Configuration
Architecture Architecture Architecture

Library
Package
25
© 2007 Санкт-Петербург Антонов А.П.
Packages & Libraries
 Package
– Содержит часто используемые типы, операторы…
– Состоит из:
• Декларация пакета
• Тело пакета
 Library
– Содержит пакет или множество пакетов.

×