Recapitulação — Diferença com Sinal
Parte da seção Design e Verificação RTL do Journey de Verilog da Coddy. Lição 10 de 38.
Desafio
MédioCalcule signed 8-bit a menos b com saturação de -128 a 127. Retorne y saturado e clipped=1 quando a diferença exata estiver fora desse intervalo. Colunas de saída: y, clipped. Todos os valores de estímulo são valores binários conhecidos.
Complete design.v e preserve os nomes e as portas do módulo. O testbench.v bloqueado fornece alterações nas entradas e imprime as saídas após elas se estabilizarem. 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 signed [7:0] a, input signed [7:0] b, output reg signed [7:0] y, output reg clipped);
// Substitua este placeholder pelo seu design.
initial y = 0;
initial clipped = 0;
endmoduleTodas as lições de Design e Verificação RTL
1RTL Combinacional Confiável
Valores padrão evitam latchesCodificadores de prioridadeValidação One-HotDecodificação segura de caseRecapitulação - Roteador de requisições4RTL Sequencial Controlado
Prioridade de Reset e EnableContadores SaturantesPipeline de Dados e ValidDetecção de Bordas AmostradasRecapitulação - Contador de Eventos7Projeto - Monitor de Amostras
Acumular AmostrasAceitar Amostras Habilitadas2Larguras e Aritmética com Sinal
Preservando Bits de CarryComparações com SinalDeslocamentos Aritméticos à DireitaOverflow e SaturaçãoRecapitulação — Diferença com SinalPratique por conta própria: Compilador de Verilog online