FPGA中写了个锁存器,延时值如何判断

[复制链接]
3133|2
 楼主| tonylzez 发表于 2008-4-6 21:53 | 显示全部楼层 |阅读模式
用verilog写了个带锁存功能的译码器,源程序如下:<br />module&nbsp;decoder(<br />&nbsp;&nbsp;yhuo,<br />&nbsp;&nbsp;cs0,<br />&nbsp;&nbsp;addr)&nbsp;;<br />&nbsp;&nbsp;output&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;yhuo;<br />&nbsp;&nbsp;input&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cs0;<br />&nbsp;&nbsp;input&nbsp;&nbsp;[6:0]&nbsp;&nbsp;addr;<br />&nbsp;&nbsp;<br />&nbsp;&nbsp;reg&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;yhuo;<br />&nbsp;&nbsp;<br />&nbsp;&nbsp;always&nbsp;@(*)&nbsp;&nbsp;begin<br />&nbsp;&nbsp;&nbsp;&nbsp;case({cs0,addr})&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8'h65:&nbsp;&nbsp;begin<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;yhuo&nbsp;=&nbsp;1'b1;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;8'h66:&nbsp;&nbsp;begin<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;yhuo&nbsp;=&nbsp;1'b0;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br />&nbsp;&nbsp;&nbsp;&nbsp;endcase<br />&nbsp;&nbsp;end<br /><br />endmodule<br />功能仿真能过,时序仿真功能也对,但有一点不太满意,每次CS0信号变化后10ns左右输出值才能变化,如:CS0为低,addr为7'h66,对应的译码值1'b0要延时10ns才能出来,可我想延时最好能短点。查了查quartus里加时序约束的选项,改了几次,没有达到要求。有没有比较清楚的同志可以给点意见?到底怎样加约束才能限制锁存器的延时时间。
zgl7903 发表于 2008-4-7 08:54 | 显示全部楼层

10ns的信号延迟已经很快了

可以试一试Quartus带的比较器<br />10ns&nbsp;100M对一般的器件来说已经很快了<br />如果要更快,选择速度更高的芯片
 楼主| tonylzez 发表于 2008-4-7 21:03 | 显示全部楼层

“quartus带的比较器”是什么意思?

2楼的同志不会是说的是quartus自带的兆核函数吧,比如说138译码器等等。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

17

主题

70

帖子

1

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