Verilog_radar1
.pdfЯзык описания аппаратуры
Verilog
Часть 1
1 |
© 2014 СПбГПУ, каф. КСПТ, доц. Антонов А.П. ( dilab@scideco.ru ) |
Введение в язык Verilog
2 |
© 2014 СПбГПУ, каф. КСПТ, доц. Антонов А.П. ( dilab@scideco.ru ) |
Предпосылки использования языков описания аппаратуры (HDL)
n |
- |
и |
использованные
100.000.000
1.000.000 |
Закон |
|
Мура |
|
Предел для |
10.000 |
опытных |
|
инженеров |
100 |
|
1981 |
1985 |
1989 |
1993 |
1997 |
2000 |
2007 |
2014 |
Кризис продуктивности традиционных процедур проектирования
3 |
© 2014 СПбГПУ, каф. КСПТ, доц. Антонов А.П. ( dilab@scideco.ru ) |
Как бороться с «кризисом продуктивности»?
nПереход к высокоуровневым средствам и методам проектирования:
-Использование языков VHDL, Verilog
-Использование С подобных языков (SystemC)
-Использование библиотек параметризированных модулей
-Использование библиотек готовых решений для алгоритмически сложных устройств – IP (Intellectual Property) модулей
nСовершенствование элементной базы – создание аппаратно-реализованных на кристаллах, функционально законченных и параметризуемых модулей (умножители, модули памяти, интерфейсные модули…)
4 |
© 2014 СПбГПУ, каф. КСПТ, доц. Антонов А.П. ( dilab@scideco.ru ) |
История языка Verilog
nПредставлен в 1984 компанией Gateway Design Automation
nВ 1989 компания Cadence приобрела Gateway (Verilog-XL simulator)
nВ 1990 Cadence сделал язык Verilog общедоступным и в 1991 году был создан консорциум Open Verilog International (OVI) для управления спецификацией языка
n В 1993 OVI выпустил спецификацию языка 2.0
nВ 1995 IEEE принял OVI Verilog как стандарт - Verilog 1364
n В 2001 IEEE обновил стандарт – SystemVerilog n В 2005 IEEE принял новую версию стандарта
5 |
© 2014 СПбГПУ, каф. КСПТ, доц. Антонов А.П. ( dilab@scideco.ru ) |
Термины
nПоведенческое описание – описание алгоритма работы устройства
nСтруктурное описание – описание проектируемого модуля в виде взаимосвязанных компонентов более низкого уровня в иерархии описаний
nКонфигурируемые (параметризируемые) описания – описания, которые позволяют изменять (настраивать) структуру и характеристики задаваемых ими модулей путем изменения значений передаваемых в описание параметров.
6 |
© 2014 СПбГПУ, каф. КСПТ, доц. Антонов А.П. ( dilab@scideco.ru ) |
Поведенческое описание
n Только алгоритм работы, но не структура.
nИспользуется для синтеза и моделирования
(Synthesis, Simulation)
out1, .., outn
input1, .., inputn
if (shift_left) begin out[0] <= #5 0; for (j=1; j<8; j=j+1)
out[j] <= #5 out[j-1];
end
7 |
© 2014 СПбГПУ, каф. КСПТ, доц. Антонов А.П. ( dilab@scideco.ru ) |
Структурное описание
n Структура модуля
nМогут применяться специфические аппаратные элементы
n Используется для синтеза и моделирования
(Synthesis, Simulation) |
|
|
|||||||||||
|
|
Компонент верхнего уровня |
output1 |
||||||||||
input1 |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Компонент
нижнего уровня 2
Компонент
нижнего уровня 1
inputn |
outputn |
8 |
© 2014 СПбГПУ, каф. КСПТ, доц. Антонов А.П. ( dilab@scideco.ru ) |
Уровни описания проекта
|
Поведенческий |
Behavioral |
|
уровень |
|
|
Уровень |
RTL |
|
|
|
|
регистровых |
|
|
передач |
|
|
Логический |
Gate Level |
|
|
|
|
уровень |
|
|
Физический |
Physical |
|
|
|
|
уровень |
|
9 |
© 2014 СПбГПУ, каф. КСПТ, доц. Антонов А.П. ( dilab@scideco.ru ) |
Терминология (синтез)
nСинтез: Преобразование описания проекта в схему на заданном элементном базисе (выбранной СБИС ПЛ).
nRegister Transfer Level (RTL): уровень описания проекта, ориентированный на синтез
nRTL Synthesis : Преобразование RTL описания в схему на заданном элементном базисе (выбранной СБИС ПЛ).
10