<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > FPGA設計中對輸入信號的處理

FPGA設計中對輸入信號的處理

作者: 時(shí)間:2017-10-13 來(lái)源:網(wǎng)絡(luò ) 收藏

1.輸入信號為什么要寄存

一般來(lái)說(shuō),在中,如果信號來(lái)自同一時(shí)鐘域,各模塊的輸入不需要寄存。只要滿(mǎn)足建立時(shí)間,保持時(shí)間的約束,可以保證在時(shí)鐘上升沿到來(lái)時(shí),輸入信號已經(jīng)穩定,可以采樣得到正確的值。但是如果模塊需要使用輸入信號的跳變沿(比如幀同步信號),千萬(wàn)不要直接這樣哦。

本文引用地址:http://dyxdggzs.com/article/201710/365631.htm

always @ (posedge inputs)
begin
...
end

2.所有信號都需要寄存兩拍嗎

如果這個(gè)輸入信號來(lái)自異步時(shí)鐘域(比如芯片外部的輸入),必須寄存兩拍。第一拍將輸入信號同步化,同步化后的輸出可能帶來(lái)建立/保持時(shí)間的沖突,產(chǎn)生亞穩態(tài)。需要再寄存一拍,減少(注意是減少)亞穩態(tài)帶來(lái)的影響。

如果這個(gè)輸入信號來(lái)自于同一時(shí)鐘域且需要用到跳變沿,需要寄存一拍。否則時(shí)序報告多半會(huì )報clock skew > data delay,造成建立/保持時(shí)間的沖突。

總而言之,五條原則:

1.全局時(shí)鐘的跳變沿最可靠。
2.來(lái)自異步時(shí)鐘域的輸入需要寄存一次以同步化,再寄存一次以減少亞穩態(tài)帶來(lái)的影響。
3.不需要用到跳變沿的來(lái)自同一時(shí)鐘域的輸入,沒(méi)有必要對信號進(jìn)行寄存。
4.需要用到跳變沿的來(lái)自同一時(shí)鐘域的輸入,寄存一次即可。
5.需要用到跳變沿的來(lái)自不同時(shí)鐘域的輸入,需要用到3個(gè)觸發(fā)器,前兩個(gè)用以同步,第3個(gè)觸發(fā)器的輸出和第2個(gè)的輸出經(jīng)過(guò)邏輯門(mén)來(lái)判斷跳變沿。

給出一個(gè)verilog模板:

always @ (posedge Clk) //不對輸入信號進(jìn)行寄存
begin
if (inputs)
begin
...
end
...
end

always @ (posedge Clk) //對輸入信號寄存一拍
begin
inputs_reg = inputs;
if (inputs_reg == 1b0 inputs == 1b1)
begin
...
end
...
end

always @ (posedge Clk) //對輸入信號寄存三拍
begin
inputs_reg1 = inputs;
inputs_reg2 = inputs_reg1;
inputs_reg3 = inputs_reg2;
if (inputs_reg2 == 1b1 inputs_reg3 == 1b0)
begin
...
end
...
end



關(guān)鍵詞: FPGA 全同步設計

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>