Скачиваний:
31
Добавлен:
29.12.2022
Размер:
8.96 Mб
Скачать

Язык описания аппаратуры

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