关于信号延迟问题

[复制链接]
2856|6
 楼主| huangjianhuang 发表于 2012-6-28 16:47 | 显示全部楼层 |阅读模式
目前小弟在做个小实验。需要将一信号延迟一段时间后再输出。但是仿真的结果都不对。希望各位给点建议

module delay(clk,sigin,clkout);
input clk,sigin;
output clkout;
reg clkout;
reg [0:4] cnt;
integer k1;
always@(posedge sigin)
begin
if(sigin==1)
k1=1;
else
k1=0;

end
always@(posedge clk)
begin
if(k1==1)
begin
cnt<=0;
end
if((cnt<4)&&(k1==1))
begin
cnt<=cnt+1;
clkout<=1;
end
else if(cnt==4)
begin
cnt<=0;
clkout<=0;
k1<=0;
end
else
clkout<=0;
end
endmodule

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| huangjianhuang 发表于 2012-6-28 16:57 | 显示全部楼层
我qq 117519992也可以加我 谢谢
drentsi 发表于 2012-6-28 22:33 | 显示全部楼层
怎么这个问题那么像我当年招聘时出的题?
forrest11 发表于 2012-6-28 22:55 | 显示全部楼层
应该是没有reset引起,cnt初始值不定。
GoldSunMonkey 发表于 2012-6-29 17:34 | 显示全部楼层
我觉得代码里面有问题,两个进程同时对K1进行赋值这是不可以的。
另外你的顺序执行的时候也有问题。
li37hao 发表于 2012-7-9 20:27 | 显示全部楼层
楼主要是理解了奇数分频的代码,应该就不会出现这些问题了
GoldSunMonkey 发表于 2012-7-9 22:12 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

23

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部