2.4 КОД НА HDL
Ниже представлен код на SystemVerilog HDL:
module asin_chet_sv ( input C,
output [4:0] cnt_out, pipo_out); chet_a_sv as (C, cnt_out); always_ff @ (posedge C) begin pipo_out <= cnt_out;
end endmodule
2.5 СХЕМА ИЗ RTL VIEWER ДЛЯ КОДА HDL
На рисунке 2.5.1 приведена схема из RTL Viewer для кода HDL.
Рисунок 2.5.1 – схема из RTL Viewer
2.6 МОДЕЛИРОВАНИЕ УСТРОЙСТВА, ОПИСАННОГО КОДОМ
HDL
На рисунке 2.6.1 представлено моделирование в режиме Timing для кода
HDL.
Рисунок 2.6.1 – моделирование устройства, описанного кодом HDL
Сравнивая результат моделирования и таблицу истинности, можно сделать
выводы о том, что они совпадают.
3.СИНХРОННЫЙ СЧЕТЧИК С ВЫХОДНЫМ БУФЕРОМ
3.1ТАБЛИЦА ИСТИННОСТИ
Втаблице 3.1.1 приведена таблица функционирования синхронного счетчика.
Таблица 3.1.1 – таблица функционирования
№ |
вход |
|
|
выходы |
|
|
|
|
|
Cnt_out |
|
|
|||
сигнала |
|
|
|
|
|
||
|
|
|
|
|
|
||
CLR |
4 |
3 |
2 |
1 |
0 |
||
|
|||||||
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
1 |
0 |
0 |
0 |
0 |
0 |
1 |
|
2 |
0 |
0 |
0 |
0 |
1 |
0 |
|
3 |
0 |
0 |
0 |
0 |
1 |
1 |
|
4 |
0 |
0 |
0 |
1 |
0 |
0 |
|
5 |
0 |
0 |
0 |
1 |
0 |
1 |
|
6 |
0 |
0 |
0 |
1 |
1 |
0 |
|
7 |
0 |
0 |
0 |
1 |
1 |
1 |
|
8 |
0 |
0 |
1 |
0 |
0 |
0 |
|
9 |
0 |
0 |
1 |
0 |
0 |
1 |
|
10 |
0 |
0 |
1 |
0 |
1 |
0 |
|
11 |
0 |
0 |
1 |
0 |
1 |
1 |
|
12 |
0 |
0 |
1 |
1 |
0 |
0 |
|
13 |
0 |
0 |
1 |
1 |
0 |
1 |
|
14 |
0 |
0 |
1 |
1 |
1 |
0 |
|
15 |
0 |
0 |
1 |
1 |
1 |
1 |
|
16 |
0 |
1 |
0 |
0 |
0 |
0 |
|
17 |
0 |
1 |
0 |
0 |
0 |
1 |
|
18 |
0 |
1 |
0 |
0 |
1 |
0 |
|
19 |
0 |
1 |
0 |
0 |
1 |
1 |
|
20 |
0 |
1 |
0 |
1 |
0 |
0 |
|
21 |
0 |
1 |
0 |
1 |
0 |
1 |
|
22 |
0 |
1 |
0 |
1 |
1 |
0 |
|
23 |
1 |
0 |
0 |
0 |
0 |
0 |
|
24 |
0 |
0 |
0 |
0 |
0 |
0 |
3.2 ФУНКЦИОНАЛЬНАЯ СХЕМА
На рисунке 3.2.1 приведена функциональная схема для асинхронного счетчика.
Рисунок 3.2.1 – функциональная схема
3.3 МОДЕЛИРОВАНИЕ
На рисунке 3.3.1 представлено моделирование в режиме Functional.
Рисунок 3.3.1 – моделирование схемы в режиме Funtional
Один временной интервал равен 100 наносекунд. Если сравнить моделирование с таблицей истинности, то они совпадают.
На рисунке 3.3.2 представлено моделирование в режиме Timing.
Рисунок 3.3.2 – моделирование в режиме Timing
Так как моделирование в режиме Timing приближено к реальности и
отображает задержки переключения, из-за чего результат немного искажается
от идеального.
3.4 КОД НА HDL
Ниже представлен код на SystemVerilog HDL:
module sin_chet_sv ( input S, C,
output [4:0] cnt_out, pipo_out); chet_b_sv sin (C, S, cnt_out[4:0]); always_ff @ (negedge C) begin pipo_out <= cnt_out;
end endmodule
3.5 СХЕМА ИЗ RTL VIEWER ДЛЯ КОДА HDL
На рисунке 3.5.1 приведена схема из RTL Viewer для кода HDL.
Рисунок 3.5.1 – схема из RTL Viewer
3.6 МОДЕЛИРОВАНИЕ УСТРОЙСТВА, ОПИСАННОГО КОДОМ
HDL
На рисунке 3.6.1 представлено моделирование в режиме Timing для кода
HDL.
Рисунок 3.6.1 – моделирование устройства, описанного кодом HDL
Сравнивая результат моделирования и таблицу истинности, можно сделать
выводы о том, что они совпадают.
Заключение
В результате выполнения лабораторной работы были получены навыки
совместного применения регистров и счетчиков, также выполнены следующие
задачи:
-Составлены таблицы истинности
-Собраны схемы на холстах и промоделированы эти схемы
-написан код для каждой из схем и так же промоделированы