打印

verilog 赋初值的问题

[复制链接]
2343|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
就是一枪|  楼主 | 2012-4-16 13:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
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块也不是很懂,请教各位啊,本人新手,勿喷。

相关帖子

沙发
zuxingshui| | 2012-4-17 23:22 | 只看该作者
既然是“序列信号发生器”,那么当然是不能用initial来申明了,因为,initial是不可综合的语句之一啊。。。你可以换为其他的试试!!!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

20

帖子

0

粉丝