Así que soy bastante nuevo en Verilog y estoy trabajando en un proyecto multiplicador de 3 bits que genera la solución decimal del multiplicador a la pantalla de 7 segmentos en mi tablero de fpga. Tengo un problema con la conceptualización de cómo exactamente mi módulo de contador que me fue entregado me permitiría cambiar entre entradas. El contador se ve así:
module counter (
input clk,
output [1:0]Y
);
reg [24:0] counter;
always @ (posedge clk)
begin
counter <= counter + 1;
end
assign Y[1] = counter[24];
assign Y[0] = counter[23];
endmodule
Siento que necesito usar un mux 2: 1 o un pestillo. He empezado mi código y se ve así:
module cath_mux(
input clk,
input [3:0]ones,
input [3:0]tens,
output [3:0] disp
);
reg [3:0] disp;
wire [1:0] Y;
counter count(.clk(clk), .Y(Y));
always @ (Y)
begin
case (Y)
endmodule
No estoy seguro de cómo configurar mis declaraciones de caso, ya que habría 4 casos con una matriz de 2 bits para Y. Las entradas provienen de un decodificador BCD y la salida iría a un módulo que cambiará mi cátodo Los valores basados en mi dígito BCD ingresaron desde la salida de este módulo. También necesito averiguar cómo usar el módulo contador para cambiar entre ánodos activos en mi tablero también.
Esta pregunta parecía similar pero no estoy seguro de cómo se aplica a mi pregunta.
Nuestro profesor de circuitos lógicos se ha ido por dos semanas y nadie en nuestra clase ha podido resolver esto realmente. Cualquier sugerencia o ayuda sería realmente apreciada!