Llamar a un módulo en Verilog
Acabo de comenzar a aprender programación de hardware con Verilog y me siento perdido porque no puedo entender qué significan los errores. Aquí, estoy llamando al móduloreg31
module nbit_register(input clk, input [31:0]in, input reset, input L,
input load, input shift, output reg[31:0] out);
always@(*)begin
if(load==1)
reg32 add(clk, in, reset,L, out);
else
out={ in[30:0],1'b0};
end
endmodule
Pero, obtengo este error:
error: error de sintaxis cerca de "reg32"
Así es como se ve el módulo
module reg32(
input clk,
input [31:0] in,
input rst,
input L,
output [31:0] out
);
¿Alguien puede señalar el error aquí?
Respuestas
Porque quiere "seleccionar" y hacer que el módulo reg32"funcione" en una iframa.
Imágenes de la placa PCB de un teléfono celular. La unidad de altavoz está ahí fuera, incluso si está en modo silencioso. Así que cree reg32una instancia por separado, luego use su propia lógica para lidiar con las redes conectadas reg32.
wire [31:0] add_out;
reg32 add(clk, in, reset,L, add_out); // here the 4 inputs are connected to top inputs
// directly. but if you want, you can use 'load'
// to control them similar to the code below.
always@(*)begin
if(load==1)
out = add_out;
else
out = { in[30:0],1'b0};
end
Si está trabajando principalmente en software, debe estar familiarizado con el pensamiento de "hardware".