dsd1-10 / dsd-07=Verilog / Лабораторная работа3
.docЛабораторная работа №3
Построение цифровых синхронных счетчиков прямых, обратных, реверсивных.
Целью данной работы является получение начальных навыков проектирования простейших элементов цифровых устройств посредством описания их на языке VerilogHDL.
Работа выполняется на рабочей станции SUN под операционной системой Solaris.
Задание на выполнение работы:
Составить таблицу истинности на устройство указанное в вариантах лабораторной работы №1.
Осуществить вход на рабочую станцию введением login и password.
Создать рабочую папку verilog_lab3 в директории project.
>cd project
>mkdir verilog_lab3
>cd verilog_lab3
Открыть в терминале текстовый редактор nedit.
>nedit my_counter.v
В ходе выполнения работы необходимо написать Verilog файл цифрового устройства по варианту используя таблицу истинности, а также Verilog файл test bench для проведения функционально-логического моделирования.
Моделирование производится в среде CADENCE ncverilog. Для этого в командной строке терминала вводится следующее:
> ncverilog +gui +access+rwc my_counter.v test_bench.v
Цифровой счетчик – конечный автомат, который выполняет функцию подсчета входного сигнала определенной частоты.
Данный класс схем можно условно поделит на две группы:
-
Синхронный
-
Асинхронный
А каждую группу на подгруппу:
-
Прямой счетчик – значение выхода увеличивается на каждом такте входной частоты.
-
Обратный счетчик – значение выхода уменьшается на каждом такте входной частоты.
-
Реверсивный счетчик – значение выхода уменьшается или увеличивается на каждом такте входной частоты в зависимости от состояния входного сигнала управления.
Пример прямого синхронного счетчика:
module Counter (Clk, Reset, Out);
input Clk,Reset;
output [1:0] Out;
reg {1:0] Out ;
always @(posedge Clk or posedge Reset)
if (Reset)
Out=2’b00;
else
Out=Out+1;
endmodule
№ |
Описание задания |
1 |
Прямой счетчик от «0» до «4» |
2 |
Прямой счетчик от «0» до «5» |
3 |
Прямой счетчик от «0» до «6» |
4 |
Прямой счетчик от «0» до «8» |
5 |
Прямой счетчик от «0» до «9» |
6 |
Прямой счетчик от «0» до «10» |
7 |
Прямой счетчик от «0» до «11» |
8 |
Прямой счетчик от «0» до «12» |
9 |
Прямой счетчик от «0» до «13» |
0 |
Прямой счетчик от «0» до «14» |
11 |
Обратный счетчик от «4» до «0» |
12 |
Обратный счетчик от «5» до «0» |
13 |
Обратный счетчик от «6» до «0» |
14 |
Обратный счетчик от «8» до «0» |
15 |
Обратный счетчик от «9» до «0» |
16 |
Обратный счетчик от «10» до «0» |
17 |
Обратный счетчик от «11» до «0» |
18 |
Обратный счетчик от «12» до «0» |
19 |
Обратный счетчик от «13» до «0» |
20 |
Обратный счетчик от «14» до «0» |
21 |
Реверсивный счетчик от «0» до «4» |
22 |
Реверсивный счетчик от «0» до «5» |
23 |
Реверсивный счетчик от «0» до «6» |
24 |
Реверсивный счетчик от «0» до «8» |
25 |
Реверсивный счетчик от «0» до «9» |
26 |
Реверсивный счетчик от «0» до «10» |