«Случай — это псевдоним Бога, когда Он не хочет подписываться своим собственным именем.» А. Франс

Спец курс (Избранные главы VHDL)/Вспомним VHDL — различия между версиями

Материал из Wiki
Перейти к: навигация, поиск
(when else)
(when else)
Строка 32: Строка 32:
 
   end process trig_process;</source>
 
   end process trig_process;</source>
  
===when else===
+
===When Else===
  
 
<source lang="vhdl">data_out_i <= '0' when rst = '0' else
 
<source lang="vhdl">data_out_i <= '0' when rst = '0' else

Версия 23:51, 17 сентября 2012

[на всё окно]

Содержание

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

VHDL-основные конструкции

Entity

entity example is
generic (
  cnt : integer := 10);
port ( 
  inp   in  : std_logic;
  outp  out : std_logic);
end entity;

Architecture

architecture beh of trig is
 
begin  -- beh
 
 
 
end beh;

Process

  trig_process: process (clk, rst)
  begin  -- process trig_process
    if rst = '0' then                   -- asynchronous reset (active low)
      data_out <= '0';
    elsif clk'event and clk = '1' then  -- rising clock edge
      data_out <= data_in;
    end if;
  end process trig_process;

When Else

data_out_i <= '0' when rst = '0' else
            data_in when clk'event and clk = '1' else
            data_out_i;
data_out <= data_out_i;

Оператор непрерывного присваивания

if else; case; with

Работа с редактором EMACS

Первый запуск

Команды

Возможности

Работа с системой моделирования QuestaSim от Mentor Graphics

Запуск QuestaSim

Создание библиотеки

Компиляция кода

Запуск моделирования

Добавление сигналов

Запуск исполнения и просмотр результата