¿Cómo escribir un programa Verilog para un contador de módulo variable diseñado con un flip-flop D X=0, conteo de módulo siete, x=1, conteo de módulo 8?
Hola, la siguiente es la lógica verilog correspondiente.
contador de módulo(clk,cout,num,Rst_n,x);
entrada clk;//reloj
entrada Rst_n;//tecla de reinicio p>
p>
salida reg cout=0;//carry
salida reg [3:0] num=0;//salida para mostrar números, código BCD
cable [ 3:0] cuentaV;
asignar cuentaV = (x==1'b0) 3'h7: 3'h8; //x==0 módulo 7 cuenta, x= =1, módulo 8 Count
siempre@( posedge clk o negedge Rst_n)
if(!Rst_n) num=0
else if(num== countV)begin p>
num<=0;cout<=1;
end
si no comienza
num<=num+1 ;cout<=0 ;
fin
endmodule