Скачиваний:
14
Добавлен:
31.05.2023
Размер:
85.43 Кб
Скачать

Выполнили:

Отчёт по лабораторной работе №1.

ОСНОВЫ РАЗРАБОТКИ ПРОЕКТА В СРЕДЕ VIVADO

Цель работы

Изучение среды разработки цифровых устройств на ПЛИС Xilinx Vivado 2016.4. Написание модулей на языке Verilog и тестирующих окружений. Проверка работоспособности разработанного устройства на временной симуляции в XSim.

1. module < name_of_module > (

< объявление входов и выходов >

);

< оператор >;

< оператор >;

< оператор >;

endmodule

2. Объект wire нужен для объявления промежуточных переменных.

3. module sw_led(

input wire [7:0] in,

output wire [7:0] out

);

assign out[0] = in[0] & in[1];

assign out[1] = in[1];

assign out[2] = ~in[2];

assign out[3] = in[1];

assign out[4] = ~(in[4] & in[6]);

assign out[5] = in[3] | in[5];

assign out[6] = in[6] & in[7];

assign out[7] = ~(in[6] & in[7]);

endmodule

4. Ключевое слово assign - это оператор непрерывного назначения. Он предназначен для объявления переменных. Выполняется параллельно, независимо от места в коде.

5. `timescale 1ns / 1ps

module sw_led_tb_1(

);

reg [7:0] in_tb;

wire [7:0] out_tb;

integer i;

sw_led DUT(

.in (in_tb),

.out (out_tb)

);

initial

begin

for (i = 0; i < 256; i = i + 1)

begin

#10;

in_tb = i;

end

end

endmodule

6.

7. 7. Входные и выходные значения из диаграммы

in

out

in

out

in

out

in

out

in

out

t, ns

366.000

460.356

510.203

622.605

956.906

[7]

0

1

0

1

0

1

0

1

0

1

[6]

0

0

0

0

0

0

0

0

1

0

[5]

1

1

1

1

1

1

1

1

0

1

[4]

0

1

0

1

1

1

1

1

1

0

[3]

0

1

1

0

0

1

1

0

1

1

[2]

0

1

1

0

0

1

1

0

1

0

[1]

1

1

0

0

1

1

0

0

1

1

[0]

1

1

1

0

0

0

1

0

0

0

Вывод

Программа работает корректно. Все вычисления выполнены верно.

Соседние файлы в предмете Основы проектирования электронных средств на ПЛИС