Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лаба_12 / Лабораторная работа12.docx
Скачиваний:
0
Добавлен:
16.06.2026
Размер:
1.92 Mб
Скачать

МИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ,

СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА»

(СПбГУТ)

ФАКУЛЬТЕТ КИБЕРБЕЗОПАСНОСТИ (КБ)

КАФЕДРА ЗАЩИЩЕННЫХ СИСТЕМ СВЯЗИ (ЗСС)

______________________________________________________________________________

Лабораторная работа №2

«E12FA КОМБИНАЦИОННЫЕ ЦИФРОВЫЕ УСТРОЙСТВА

(ASCII, 7SEG, MUX, DMX, CD, DC, ADD)»

Направление/специальность подготовки:

Выполнили: студенты группы ИБС-32

Цель работы

Рассмотреть работу устройств преобразования (драйверов) для отображения информации.

Задачи работы

  • Разработать описание драйвера для семисегментного индикатора на Verilog HDL в Quartus II;

  • Рассмотреть работу драйвера для семисегментного индикатора в симуляторе Quartus II.

  • Разработать описание ASCII-драйвера на Verilog HDL в Quartus II;

  • Рассмотреть работу ASCII-драйвера в симуляторе Quartus II.

  • Разработать описание мультиплексоров на Verilog HDL в Quartus II;

  • Рассмотреть работу мультиплексоров в симуляторе Quartus II.

  • Разработать описание демультиплексоров на Verilog HDL в Quartus II;

  • Рассмотреть работу демультиплексоров в симуляторе Quartus II.

  • Разработать описание дешифратора на Verilog HDL в Quartus II;

  • Рассмотреть работу дешифратора в симуляторе Quartus II.

  • Разработать описание шифратора на Verilog HDL в Quartus II;

  • Рассмотреть работу шифратора в симуляторе Quartus II.

  • Разработать описание одноразрядного полного сумматора на Verilog HDL в Quartus II;

  • Рассмотреть работу одноразрядного полного сумматора в симуляторе Quartus II.

  • Разработать описание четырехразрядного сумматора, основанного на одноразрядных полных сумматорах, на Verilog HDL в Quartus II,

  • Ознакомиться с принципами объединения модулей в многомодульное устройство;

  • Рассмотреть работу четырехразрядного сумматора в симуляторе Quartus II.

  • *Рассмотреть работу четырехразрядного сумматора на отладочной плате DE1-SoC.

Модуль driver7seg — драйвер для семисегментного индикатора

#

bin[3:0]

7seg[6:0]

3

2

1

0

6/g

5/f

4/e

3/d

2/c

1/b

0/a

0

0

0

0

0

1

0

0

0

0

0

0

0

1

0

0

0

1

1

1

1

1

0

0

1

1

2

0

0

1

0

0

1

0

0

1

0

0

2

3

0

0

1

1

0

1

0

0

1

0

0

3

4

0

1

0

0

0

0

1

1

0

0

1

4

5

0

1

0

1

0

0

1

0

0

1

0

5

6

0

1

1

0

0

0

0

0

0

1

0

6

7

0

1

1

1

1

1

1

1

0

0

0

7

8

1

0

0

0

0

0

0

0

0

0

0

8

9

1

0

0

1

0

0

1

0

0

0

0

9

10

1

0

1

0

0

0

0

1

0

0

0

A

11

1

0

1

1

0

0

0

0

0

1

1

B

12

1

1

0

0

1

0

0

0

1

1

0

C

13

1

1

0

1

0

1

0

0

0

0

1

D

14

1

1

1

0

0

0

0

0

1

1

0

E

15

1

1

1

1

0

0

0

1

1

1

0

F

module driver7seg(

input [3:0] bin,

output [6:0] hex

);

reg [6:0] rhex;

always @*

case (bin)

4'b0000: rhex = 7'b1000000;

4'b0001: rhex = 7'b1111001;

4'b0010: rhex = 7'b0100100;

4'b0011: rhex = 7'b0110000;

4'b0100: rhex = 7'b0011001;

4'b0101: rhex = 7'b0010010;

4'b0110: rhex = 7'b0000010;

4'b0111: rhex = 7'b1111000;

4'b1000: rhex = 7'b0000000;

4'b1001: rhex = 7'b0010000;

4'b1010: rhex = 7'b0001000;

4'b1011: rhex = 7'b0000011;

4'b1100: rhex = 7'b1000110;

4'b1101: rhex = 7'b0100001;

4'b1110: rhex = 7'b0000110;

4'b1111: rhex = 7'b0001110;

endcase

assign hex = rhex;

endmodule