Je souhaite créer un diviseur de fréquence avec compteur et MUX.Erreur (10219): Erreur d'affectation continue Verilog HDL sur Mux.v (19): l'objet "muxout" sur le côté gauche de l'affectation doit avoir un type net
Je fais 3 modules pour le projet
// 4 bits contre
module Counter (input clk, input reset, output reg[3:0] out);
[email protected](posedge clk or posedge reset)
begin
if(reset)
out = 4'b0000;
else
begin
if(clk)
if(out < 4'b1111)
out = out + 4'b0001;
else
out = 4'b0000;
end
end
endmodule
// Module 4by1 Mux
module Mux (input [3:0] muxin , input [1:0] sel, output reg muxout);
function _4by1mux;
input [3:0] muxin;
input [1:0] sel;
case (sel)
2'b00 : _4by1mux = muxin[0];
2'b01 : _4by1mux = muxin[1];
2'b10 : _4by1mux = muxin[2];
2'b11 : _4by1mux = muxin[3];
endcase
endfunction
assign muxout = _4by1mux(muxin, sel);
endmodule
// Module freqDivider
module freqDivider(input clk, input reset, input [1:0] sel, output reg muxout);
wire [3:0]counterbus;
Counter ct1 (clk, reset, counterbus);
Mux mux1 (counterbus, sel, muxout);
endmodule
freqDivider module
est top, et je le module d'appel contre et Mux
mais le module MUX a un problème avec
Error (10219): Verilog HDL Continuous Assignment error at Mux.v(19):
object "muxout" on left-hand side of assignment must have a net type
cette erreur
ps. sel d'entrée sera modifiée par le temps
s'il vous plaît formater votre code en utilisant Cntrl + K. Aussi s'il vous plaît expliquer votre problème en détail et aussi où vous avez besoin d'aide pour la résolution de votre problème – mhasan
désolé c'est mon premier codage et je pense que la sortie 'muxout' ne peut pas être assigné .... mais pourquoi? – KorHotGuy
FYI: pas lié à votre énoncé de problème, mais vous devez supprimer la ligne 'if (clk)'. Les simulations fonctionneront correctement, mais la plupart des synthétiseurs considéreront tous les signaux utilisés dans un bloc procédural (alias 'always @ (posedge/negedge ...)') et seront utilisés dans le corps comme des entrées asynchrones. Sans la ligne 'if (clk)' votre module 'Counter' simulera la même chose et synthétisera correctement – Greg