FPGA设计中对输入信号的处理.doc

上传人:白大夫 文档编号:3251994 上传时间:2019-08-06 格式:DOC 页数:1 大小:13KB
返回 下载 相关 举报
FPGA设计中对输入信号的处理.doc_第1页
第1页 / 共1页
亲,该文档总共1页,全部预览完了,如果喜欢就下载吧!
资源描述

《FPGA设计中对输入信号的处理.doc》由会员分享,可在线阅读,更多相关《FPGA设计中对输入信号的处理.doc(1页珍藏版)》请在三一文库上搜索。

1、FPGA设计中对输入信号的处理1.输入信号为什么要寄存一般来说,在全同步设计中,如果信号来自同一时钟域,各模块的输入不需要寄存。只要满足建立时间,保持时间的约束,可以保证在时钟上升沿到来时,输入信号已经稳定,可以采样得到正确的值。但是如果模块需要使用输入信号的跳变沿(比如帧同步信号),千万不要直接这样哦。always (posedge inputs)begin.end2.所有信号都需要寄存两拍吗如果这个输入信号来自异步时钟域(比如FPGA芯片外部的输入),必须寄存两拍。第一拍将输入信号同步化,同步化后的输出可能带来建立/保持时间的冲突,产生亚稳态。需要再寄存一拍,减少(注意是减少)亚稳态带来的

2、影响。如果这个输入信号来自于同一时钟域且需要用到跳变沿,需要寄存一拍。否则时序报告多半会报clock skew data delay,造成建立/保持时间的冲突。总而言之,五条原则:1.全局时钟的跳变沿最可靠。2.来自异步时钟域的输入需要寄存一次以同步化,再寄存一次以减少亚稳态带来的影响。3.不需要用到跳变沿的来自同一时钟域的输入,没有必要对信号进行寄存。4.需要用到跳变沿的来自同一时钟域的输入,寄存一次即可。5.需要用到跳变沿的来自不同时钟域的输入,需要用到3个触发器,前两个用以同步,第3个触发器的输出和第2个的输出经过逻辑门来判断跳变沿。给出一个verilog模板:always (posed

3、ge Clk) /不对输入信号进行寄存beginif (inputs)begin.end.endalways (posedge Clk) /对输入信号寄存一拍begininputs_reg = inputs;if (inputs_reg = 1b0 inputs = 1b1)begin.end.endalways (posedge Clk) /对输入信号寄存三拍begininputs_reg1 = inputs;inputs_reg2 = inputs_reg1;inputs_reg3 = inputs_reg2;if (inputs_reg2 = 1b1 inputs_reg3 = 1b0)begin.end.end

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1