«…Труд избавляет человека от трех великих зол: скуки, порока, нужды…»

ПЦУСБ/Лекция 2 — различия между версиями

Материал из Wiki
Перейти к: навигация, поиск
(Слайд: NEW)
м (Слайд: Структура VHDL программы)
Строка 125: Строка 125:
  
 
Описание системы на VHDL реализуется в двух основных частях:  
 
Описание системы на VHDL реализуется в двух основных частях:  
{| class=standard align=center width=90%
+
{| class=standard align=center width=90% style="border:2px solid #000; border-collapse: collapse"
 
|width=40%| '''интерфейс (entity)''' – описание взаимодействия между системой и ее окружением
 
|width=40%| '''интерфейс (entity)''' – описание взаимодействия между системой и ее окружением
 
|
 
|
Строка 149: Строка 149:
 
end beh;</source>
 
end beh;</source>
 
|}
 
|}
 
  
 
== Слайд: NEW ==
 
== Слайд: NEW ==

Версия 23:42, 13 сентября 2013

Лекции ПЦУСБ

Лекции

Практические
Тесты

Лабораторные

Доп. материалы

Заголовок
Основы языка VHDL
Автор
Авдеев Н.А.
Нижний колонтитул
ПЦУСБ/Лекция 2
Дополнительный нижний колонтитул
Авдеев Н.А., 17:52, 15 сентября 2013


Содержание

Слайд: Языки HDL (Hardware Description Language)

  • Проблемы проектирования СБИС:
    • несоответствие формы в которой ставится задача (обычно задается поведение) и схемы проекта (сеть взаимосвязанных компонентов)
    • «ручной» перевод описания проекта в набор логических выражений и схематику
    • работа со сложными (тысячи и более компонентов) проектами
  • Наиболее часто используемые HDL-языки: VHDL, Verilog, Abel


Слайд: Язык VHDL

VHDL
Very high speed integration circuits (VHSIC) Hardware Description Language предложен DoD USA в начале 80-х:
  • Первые симуляторы появились в начале 90-х
  • ПО для ПК – в середине 90-х
  • Основное применение сейчас – PLD, FPGA, разработка заказных СБИС

Слайд: Стандарты языка VHDL

Ревизии языка: IEEE Standard VHDL Language Reference Manual

  • 1076-1987 Первая версия стандарта
  • 1076-1993 (ISBN 1-55937-376-8) Значительные улучшения после нескольких лет использования. Наиболее используемая и поддерживаемая САПР версия.
  • ГОСТ Р 50754-95 Язык описания аппаратуры цифровых систем VHDL. Описание языка
  • 1076-2000 Небольшие изменения. Предложен защищенный тип (protected).
  • 1076-2002 Небольшие изменения
  • 1076-2008 Существенные изменения (опубликован 2009-01-26).

Связанные стандарты:

  • IEEE 1076.1 VHDL Analog and Mixed-Signal (VHDL-AMS)
  • IEEE 1076.1.1 VHDL-AMS Standard Packages (stdpkgs)
  • IEEE 1076.2 VHDL Math Package (math)
  • IEEE 1076.3 VHDL Synthesis Package (vhdlsynth)
  • IEEE 1076.3 VHDL Synthesis Package - Floating Point (fphdl)
  • IEEE 1076.4 Timing (VHDL Initiative Towards ASIC Libraries: vital)
  • IEEE 1076.6 VHDL Register Transfer Level Synthesis, 1998 – синтезируемое подмножество VHDL
  • IEEE 1164 VHDL Multivalue Logic (std_logic_1164) Packages


Слайд: Для чего используется VHDL?

  • описание поведения цифровых устройств во времени и при изменении входных воздействий;
  • описание структуры цифровых устройств с различной степенью детализации (на системном и блочном уровнях, на уровне регистровых передач, на уровне вентилей);
  • моделирование цифровых устройств;
  • описание тестовых воздействий при моделировании устройств;
  • автоматизации преобразования исходного описания схемы в описание на более низком уровне (вплоть до вентильного).


Слайд: Стили VHDL-моделей :step

Описывать ЦУ можно, используя разные стили:

  • поведенческий стиль, при котором для описания проекта используются причинно-следственные связи между событиями на входах устройства и событиями на его выходах (без уточнения структуры);
  • структурный стиль, при котором устройство представляется в виде иерархии взаимосвязанных простых устройств (подобно стилю, принятому в схемотехнике);
  • потоковый стиль описания устройства, основанный на использовании логических уравнений, каждое из которых преобразует один или несколько входных информационных потоков в выходные потоки.


Слайд: Элементы синтаксиса языка VHDL

  • Лексические элементы:
    • идентификатор: Abc1
    • разделитель
    • ключевое (зарезервированное) слово: entity, if, then
    • литерал (десятичный, базовый, символьный, строковый, строка бит):
      • 123, 1E2, 123.4, 1.2e-3;
      • 2#1111_1100#, 10#252#;
      • ’A’, ’a’;
      • “abcdefg”; B“1010_1010_1010”
    • комментарий
  • Лексические элементы разделяются:
    • разделителями: & ( ) * + ? - . / : ; < = >
    • концами строк
    • знаками форматирования
    • составными разделителями: => ** := >=
Пример:
A <= B and C;


Слайд: Операторы языка VHDL

Приоритет Классы
операторов
Операторы
0 (низкий) Логические and, or, nand, nor, xor, xnor
1 Отношения =, <, >, <=, >=, /=
2 Сдвиги sll, srl, sla, sra, rol, ror
3 Сложение +, –, &
4 Знак +, –
5 Умножение *, /, mod, rem
6 (высокий) Специальные **, abs, not

Слайд: Структура VHDL программы

Описание системы на VHDL реализуется в двух основных частях:

интерфейс (entity) – описание взаимодействия между системой и ее окружением
library ieee;
use ieee.std_logic_1164.all;
 
entity block2 is
 
  port (
    x : in  std_logic_vector(2 downto 0);
    y : out std_logic_vector(1 downto 0));
 
end block2;
архитектура (architecture) – описание поведения (функциональности) системы
architecture beh of block2 is
 
begin  -- beh
 
  y(0) <= (not x(2) and not x(1)) or (x(1) and not x(0));
  y(1) <= not x(1) and not x(0);
 
end beh;

Слайд: NEW