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

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

Материал из Wiki
Перейти к: навигация, поиск
(Слайд:Работа с редактором EMACS)
(Слайд: Горчие клавиши)
Строка 90: Строка 90:
 
|-
 
|-
 
! Действие
 
! Действие
! Emacs
+
! Hot key
 +
! Действие
 +
! Hot key
 
|-
 
|-
 
| command mode
 
| command mode
 
| Alt-X
 
| Alt-X
|-
 
 
| open file
 
| open file
 
| Ctrl-X Ctrl-F
 
| Ctrl-X Ctrl-F
Строка 100: Строка 101:
 
| insert file
 
| insert file
 
| Ctrl-Xi
 
| Ctrl-Xi
|-
 
 
| save file
 
| save file
 
| Ctrl-X Ctrl-S
 
| Ctrl-X Ctrl-S
Строка 106: Строка 106:
 
| save as file
 
| save as file
 
| Ctrl-X Ctrl-W name
 
| Ctrl-X Ctrl-W name
|-
 
 
| close file
 
| close file
 
| Ctrl-XK
 
| Ctrl-XK
Строка 112: Строка 111:
 
| change buffer
 
| change buffer
 
| Ctrl-XB
 
| Ctrl-XB
|-
 
 
| undo
 
| undo
 
| Ctrl-XU, Ctrl-_
 
| Ctrl-XU, Ctrl-_
Строка 118: Строка 116:
 
| redo
 
| redo
 
| Ctrl-^
 
| Ctrl-^
|-
 
 
| exit
 
| exit
 
| Ctrl-X Ctrl-C
 
| Ctrl-X Ctrl-C
Строка 124: Строка 121:
 
| word left
 
| word left
 
| Alt-B
 
| Alt-B
|-
 
 
| word right
 
| word right
 
| Alt-F
 
| Alt-F
Строка 130: Строка 126:
 
| start of line
 
| start of line
 
| Ctrl-A
 
| Ctrl-A
|-
 
 
| end of line
 
| end of line
 
| Ctrl-E
 
| Ctrl-E
Строка 136: Строка 131:
 
| page up
 
| page up
 
| Alt-V
 
| Alt-V
|-
 
 
| page down
 
| page down
 
| Ctrl-V
 
| Ctrl-V
Строка 142: Строка 136:
 
| start of buffer
 
| start of buffer
 
| Alt-<
 
| Alt-<
|-
 
 
| end of buffer
 
| end of buffer
 
| Alt->
 
| Alt->
Строка 148: Строка 141:
 
| line n
 
| line n
 
| Alt-G n.
 
| Alt-G n.
|-
 
 
| word left
 
| word left
 
| Alt-DEL
 
| Alt-DEL
Строка 154: Строка 146:
 
| word right
 
| word right
 
| Alt-D
 
| Alt-D
|-
 
 
| end of line
 
| end of line
 
| Ctrl-K
 
| Ctrl-K
Строка 160: Строка 151:
 
| line
 
| line
 
| Ctrl-A Ctrl-K
 
| Ctrl-A Ctrl-K
|-
 
 
| search
 
| search
 
| Ctrl-S text
 
| Ctrl-S text
Строка 166: Строка 156:
 
| replace
 
| replace
 
| Alt-%
 
| Alt-%
|-
 
 
| start selection
 
| start selection
 
| Ctrl-SPACE
 
| Ctrl-SPACE
Строка 172: Строка 161:
 
| cut
 
| cut
 
| Ctrl-W
 
| Ctrl-W
|-
 
 
| copy
 
| copy
 
| Alt-W
 
| Alt-W
Строка 178: Строка 166:
 
| paste
 
| paste
 
| Ctrl-Y
 
| Ctrl-Y
 +
|
 +
|
 
|}
 
|}
 +
 
===Слайд: Возможности ===
 
===Слайд: Возможности ===
  

Версия 13:44, 18 сентября 2012

Заголовок
Введение в системы идентификации...
Автор
Зайцев В.С.
Нижний колонтитул
Спец курс (Избранные главы VHDL)/Вспомним VHDL
Дополнительный нижний колонтитул
Зайцев В.С., 00:27, 29 сентября 2015

Содержание

Слайд:Языки описания аппаратуры

  • С начала 70-х годов стала актуальна проблема создания стандартного средства документации схем и алгоритмов дискретных систем переработки информации, пригодных как для восприятия человеком, так и для обработки в ЭВМ.
  • Этим средством явились языки VHDL и Verilog
  • Стандартность (лучше плохой, чем никакого)
  • Многоаспектность и многоуровневость
    • Схемы
    • Тестовые окружения
    • Диапазон детализации
  • Человеко-машинность
    • Язык описания
    • Средство документирования
  • Было много предшественников
    • «МОДИС », «Автокод», «Модис-В78», «MPL», «OCC-2», «Форос», «Алгоритмы», «Пульс», «Симпатия»
    • CDL, DDL, ISPS, CONLAN, HILO

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

Entity

library ieee;
use ieee.std_logic_1164.all;
 
entity xc is
 
  port (
    clk : in  std_logic;
    d   : out std_logic);
 
end xc;

Слайд: Entity

Entity
Entity


Architecture

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

Слайд:Architecture

architecture
architecture


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;

Слайд: Process

architecture


When Else

t1 <= not t1 when clk'event and clk = '1' else
      t1;

Слайд:When Else

Данная запись является компактным описанием триггера, но она не соответствует стандарту синтезируемого подмножества. Поэтому не все системы синтеза её поддерживают. Например, Leonardo Spectrum синтезирует данную конструкцию, а в ранних версиях Synopsys`а эта запись не поддерживалась.

when else code


Слайд:Работа с редактором EMACS

Emacs (Ема́кс, Е́макс, также И́макс) — семейство многофункциональных расширяемых текстовых редакторов.

Слайд: Первый запуск

Слайд: Горчие клавиши

Действие Hot key Действие Hot key
command mode Alt-X open file Ctrl-X Ctrl-F
insert file Ctrl-Xi save file Ctrl-X Ctrl-S
save as file Ctrl-X Ctrl-W name close file Ctrl-XK
change buffer Ctrl-XB undo Ctrl-XU, Ctrl-_
redo Ctrl-^ exit Ctrl-X Ctrl-C
word left Alt-B word right Alt-F
start of line Ctrl-A end of line Ctrl-E
page up Alt-V page down Ctrl-V
start of buffer Alt-< end of buffer Alt->
line n Alt-G n. word left Alt-DEL
word right Alt-D end of line Ctrl-K
line Ctrl-A Ctrl-K search Ctrl-S text
replace Alt-% start selection Ctrl-SPACE
cut Ctrl-W copy Alt-W
paste Ctrl-Y

Слайд: Возможности

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

Запуск QuestaSim

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

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

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

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

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