Спец курс (Избранные главы VHDL)/Вспомним VHDL — различия между версиями
Материал из Wiki
Vidokq (обсуждение | вклад) (→Слайд:When Else) |
ANA (обсуждение | вклад) м (→Слайд:When Else) |
||
| Строка 39: | Строка 39: | ||
===Слайд:When Else=== | ===Слайд:When Else=== | ||
| − | <source lang="vhdl">data_out_i <= '0' when rst = '0' else | + | {{SideBar40|Данная запись является компактным описанием триггера, но она не соответствует стандарту синтезируемого подмножества. Поэтому не все системы синтеза её поддерживают. Например, '''Leonardo Spectrum''' синтезирует данную конструкцию, а в ранних версиях '''Synopsys`а''' эта запись не поддерживалась.}} |
| + | |||
| + | <div style="border: 2px solid #AEA; padding: 0.4em; border-bottom: none; border-right: none; background: HoneyDew"> | ||
| + | <source lang="vhdl"> | ||
| + | data_out_i <= '0' when rst = '0' else | ||
data_in when clk'event and clk = '1' else | data_in when clk'event and clk = '1' else | ||
data_out_i; | data_out_i; | ||
| − | data_out <= data_out_i;</source> | + | data_out <= data_out_i; |
| + | </source> | ||
| + | </div> | ||
| − | {{Info| | + | <!-- {{Info|Данная запись является компактным описанием триггера, но она не соответствует стандарту синтезируемого подмножества. Поэтому не все системы синтеза её поддерживают. Например, '''Leonardo Spectrum''' синтезирует данную конструкцию, а в ранних версиях '''Synopsys`а''' эта запись не поддерживалась.}} |
| + | --> | ||
==Слайд:Работа с редактором EMACS== | ==Слайд:Работа с редактором EMACS== | ||
Версия 00:59, 18 сентября 2012
- Заголовок
- Введение в системы идентификации...
- Автор
- Зайцев В.С.
- Нижний колонтитул
- Спец курс (Избранные главы VHDL)/Вспомним VHDL
- Дополнительный нижний колонтитул
- Зайцев В.С., 00:27, 29 сентября 2015
Содержание |
Языки описания аппаратуры
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
Данная запись является компактным описанием триггера, но она не соответствует стандарту синтезируемого подмножества. Поэтому не все системы синтеза её поддерживают. Например, Leonardo Spectrum синтезирует данную конструкцию, а в ранних версиях Synopsys`а эта запись не поддерживалась.
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;
