lecture about Very High Speed Integrated Circuit Hardware Description Language lecture about Very High Speed Integrated Circuit Hardware Description Language lecture about Very High Speed Integrated Circuit Hardware Description Language lecture about Very High Speed Integrated Circuit Hardware Description Language
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 [...]...История языка 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... Антонов А.П Поведенческое описание Только алгоритм работы, но не структура Используется для синтеза и моделирования (Synthesis, Simulation) output1, , outputn input1, , inputn IF shift_left THEN FOR j IN high DOWNTO low LOOP shft(j) := shft(j); END LOOP; output1 . нет 10 © 2007 Санкт-Петербург Антонов А.П. Что обозначает аббревиатура VHDL? V HSIC (Very High Speed Integrated Circuit) Hardware Description Language 11 © 2007 Санкт-Петербург Антонов А.П. История. (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. Антонов А.П. Поведенческое описание 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; Только алгоритм