module signalgenerator (CP,D,Q,F,OC);
input [3:0] D;
input CP;
output [3:0] Q;
output OC;
output F;
reg [3:0] Q;
reg F,OC;
initial
begin
Q[3]=1;
end
always @(posedge CP)
begin
OC=(Q==15)?1:0;
if (OC)
Q[3:0]<=D[3:0];
else
Q=Q+1;
F=(~Q[0]&Q[3])|(~Q[1]&(~Q[2]))|(Q[1]&Q[2]);
end
endmodule
请问21ic的各位大神们,我写的这个程序是1101011的序列信号发生器,但是我想把Q赋初值为1001,但是我用了一个initial块赋初值怎么不行啊,对verilog也不是很了解,initial块也不是很懂,请教各位啊,本人新手,勿喷。 |