Menu
Coddy logo textTech

Aceitar Amostras Habilitadas

Parte da seção Design e Verificação RTL do Journey de Verilog da Coddy. Lição 32 de 38.

challenge icon

Desafio

Difícil

Construa um Sample Monitor em cinco etapas. Adicione o controle de habilitação: após a prioridade do reset, en=1 aceita os dados e os adiciona ao total; en=0 mantém o total. Mantenha todo o comportamento anterior. Mantenha tudo das etapas anteriores, incluindo seu testbench e o comportamento de saída anterior. Todos os valores de entrada são conhecidos. Os cenários contêm no máximo 40 bordas, portanto o total cabe em 16 bits. O testbench fixo imprime o total para os cenários 1-9, o total e o count para os cenários 10-12, e o total, o count e o alarm para os cenários 13-15. Somente os cenários habilitados para esta etapa são avaliados.

Complete design.v e preserve os nomes e as portas de seus módulos. O testbench.v bloqueado fornece as alterações de entrada e imprime as saídas depois que elas se estabilizam. Ele escolhe um cenário usando um argumento do simulador, como +CASE=1; não é necessária entrada padrão. Não adicione impressão, atrasos ou encerramento da simulação ao design. A saída esperada é uma linha de valores decimais por observação, separados por um espaço e terminando com uma nova linha.

Experimente você mesmo

module dut(input clk,rst,en,clear, input [7:0] data, input [15:0] limit, output reg [15:0] total, output reg [3:0] count, output alarm);
    always @(posedge clk)begin
        if(rst)total<=0;else total<=total+data;
        count<=0;
    end
    assign alarm=0;
endmodule

Todas as lições de Design e Verificação RTL

Pratique por conta própria: Compilador de Verilog online