/FFBD_lab1

Functional flow block diagram lab 1

Primary LanguageVerilog

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

Вариант 6

№ варианта Логический базис БОЭ
6 NAND Позиционный дешифратор "3 в 8"

Цель работы

Получить навыки описания схем базовых операционных элементов (БОЭ) комбинационного типа на вентильном уровне с использованием языка описания аппаратуры Verilog HDL.

Комбинационная схема БОЭ

комбинационная схема БОЭ правильная комбинационная схема БОЭ

Исходный код разработанного модуля БОЭ

   wire not_a0, not_a1, not_a2;
    
    not(not_a0, a0);
    not(not_a1, a1);
    not(not_a2, a2);
    
    and(b0, not_a0, not_a1, not_a2);
    and(b1, a0, not_a1, not_a2);
    and(b2, not_a0, a1, not_a2);
    and(b3, a0, a1, not_a2);
    and(b4, not_a0, not_a1, a2);
    and(b5, a0, not_a1, a2);
    and(b6, not_a0, a1, a2);
    and(b7, a0, a1, a2);

Исходный код разработанного тестового окружения

   initial begin
        for (x = 0; x < 7; x = x + 1) begin
            i = 2**x;
            #10
            
            $display("Input: 0x%h Output: 0x%h", x, o);
            if (o == i) begin
                $display("Test %d passed", x);
            end
        end
    end

Таблица истинности дешифратора 3 в 8

X2 X1 X0 Z0 Z1 Z2 Z3 Z4 Z5 Z6 Z7
0 0 0 1 0 0 0 0 0 0 0
0 0 1 0 1 0 0 0 0 0 0
0 1 0 0 0 1 0 0 0 0 0
0 1 1 0 0 0 1 0 0 0 0
1 0 0 0 0 0 0 1 0 0 0
1 0 1 0 0 0 0 0 1 0 0
1 1 0 0 0 0 0 0 0 1 0
1 1 1 0 0 0 0 0 0 0 1

Временная диаграмма

временная диаграмма

Расход ресурсов на fpga

Заключение

В ходе работы самым сложным было разобраться в самой среде разработке, куча полей, кнопочек, пимпочек глаза разбегаются. Как только разобрались дело сразу пошло. В результате разработали заданную БОЭ, познакомились с верилогом, протестировали, все работает.