一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

異步復(fù)位異步釋放會有什么問題?FPGA異步復(fù)位為什么要同步釋放呢?

FPGA研究院 ? 來源:FPGA開發(fā)之路 ? 2024-01-24 09:32 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一般來說,復(fù)位信號有效后會保持比較長一段時(shí)間,確保 register 被復(fù)位完成。但是復(fù)位信號釋放時(shí),因?yàn)槠浜?a href="http://www.www27dydycom.cn/tags/時(shí)鐘/" target="_blank">時(shí)鐘是異步的關(guān)系,我們不知道它會在什么時(shí)刻被釋放。

首先看圖1,考慮復(fù)位信號在兩個(gè)時(shí)鐘沿之間被釋放的情況。Reset 信號從 Device Pin 到 Flip-Flop 的延遲最大不能超過“Max Time Available”,如果延遲超過了這個(gè)限制,那么復(fù)位信號的釋放會進(jìn)入 Setup Time 要求的區(qū)間,導(dǎo)致 Flip-Flop 進(jìn)入亞穩(wěn)態(tài)。當(dāng)時(shí)鐘頻率變高,時(shí)鐘周期變短,不難發(fā)現(xiàn),要滿足這個(gè)要求是越來越難的。

1c3763b0-ba48-11ee-8b88-92fbcf53809c.jpg

圖1 - Reset timing diagram, deasserted between clock edges

前面我們提到過,因?yàn)槭钱惒叫盘?,我們無法確保信號的釋放在一個(gè)確定的區(qū)間。如圖2所示,對于 Flip-Flop 來說,異步信號的釋放可能在A區(qū)間,也可能在B或者C區(qū)間。假設(shè)現(xiàn)在我們的設(shè)計(jì)中包含三個(gè) Flip-Flop,分別為FF1,F(xiàn)F2 和 FF3。FF1 的復(fù)位釋放落在A區(qū)間,所以 FF1 會在復(fù)位信號釋放后的第一個(gè)時(shí)鐘沿有效,F(xiàn)F3 的復(fù)位釋放落在C區(qū)間,那么 FF3 會在復(fù)位信號釋放后的第二個(gè)時(shí)鐘沿有效,而 FF2 的復(fù)位釋放落在B區(qū)間,所以 FF2 可能會進(jìn)入亞穩(wěn)態(tài)。

1c40eafc-ba48-11ee-8b88-92fbcf53809c.jpg

圖2 - Reset deasserted asynchronously to the clock

不同的 FF 因?yàn)閺?fù)位信號釋放的位置不同而在不同的時(shí)刻有效,這會對設(shè)計(jì)造成影響嗎?

假如我們的設(shè)計(jì)是如圖3所示的情況,是不會對設(shè)計(jì)的功能造成影響的。在復(fù)位釋放之后,任何有問題的數(shù)據(jù)會被Pipeline排出去,經(jīng)過4個(gè)cycle之后,這個(gè)pipeline便會恢復(fù)到正常的工作狀態(tài)。

1c4468ee-ba48-11ee-8b88-92fbcf53809c.jpg

圖3 - Reset for a pipeline

但如果我們的設(shè)計(jì)是如圖4所示。被復(fù)位的FF是狀態(tài)機(jī)的狀態(tài),那么復(fù)位釋放后很有可能狀態(tài)機(jī)會被復(fù)位到一個(gè)無效的狀態(tài),影響正常的功能。

1c483a96-ba48-11ee-8b88-92fbcf53809c.jpg

圖4 - Reset for a one-hot state machine

什么是同步釋放 ?

從上一部分的內(nèi)容我們發(fā)現(xiàn),異步信號的異步釋放會導(dǎo)致 FF 在不同的時(shí)刻有效,甚至進(jìn)入亞穩(wěn)態(tài),從而影響設(shè)計(jì)的功能運(yùn)行。如何避免這個(gè)問題呢?考慮同步釋放。顧名思義,同步釋放就是讓復(fù)位信號的釋放過程與時(shí)鐘同步,從而確保所有 FF 在同一時(shí)刻有效。

如圖5所示,是異步復(fù)位同步釋放的電路設(shè)計(jì)。FDP的個(gè)數(shù)決定復(fù)位信號保持的長度,最少要有兩個(gè)。當(dāng)復(fù)位信號釋放后,F(xiàn)DP chain 會將接地的0逐級pipe到最后一個(gè)FDP輸出,因?yàn)樵揊DP的輸出是和Clock同步的,所以FDR的復(fù)位釋放便是和Clock 同步的。

1c5e5a4c-ba48-11ee-8b88-92fbcf53809c.jpg

圖5 - Async reset with sync dessertion

最后一個(gè)FDP不是仍然是異步復(fù)位異步釋放么,會不會這個(gè)FDP因?yàn)楫惒结尫胚M(jìn)入亞穩(wěn)態(tài),那么其輸出的復(fù)位信號也不確定從而導(dǎo)致復(fù)位失?。?/p>

答案是不會。FDP會進(jìn)入亞穩(wěn)態(tài)的條件是什么?一是異步釋放非常貼近時(shí)鐘沿,二是 FDP 輸入D在時(shí)鐘沿附近發(fā)生跳變。根據(jù)這個(gè)電路設(shè)計(jì),F(xiàn)DP的輸入D時(shí)不會在異步釋放時(shí)發(fā)生跳變的,所以FDP不會進(jìn)入亞穩(wěn)態(tài)。

異步復(fù)位同步釋放的時(shí)序約束

異步復(fù)位同步釋放的電路我們已經(jīng)設(shè)計(jì)好了,如何進(jìn)行時(shí)序約束呢?

對于 FDR,我們可以不用考慮的。因?yàn)楣ぞ邥治鰪?fù)位信號的 Recovery Time 和 Removal Time 來確保時(shí)序收斂。如果發(fā)現(xiàn) Recovey Time 或者 Removal Time 的違反,我們可能需要看一下 reset tree 或者 clock skew。一般都是 Recovey Time的違反,類似于 Setup Time,可能是由于 reset path的延遲太長導(dǎo)致。

對于 FDP,D端是同步電路,而CLR輸入端是異步信號,通過電路的設(shè)計(jì)我們已經(jīng)避免的異步信號帶來的問題,所以為了避免 false timing violation,我們可以對 FDP 的 CLR 端設(shè)置 false path。





審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA設(shè)計(jì)
    +關(guān)注

    關(guān)注

    9

    文章

    428

    瀏覽量

    27347
  • 狀態(tài)機(jī)
    +關(guān)注

    關(guān)注

    2

    文章

    493

    瀏覽量

    28237
  • FDR
    FDR
    +關(guān)注

    關(guān)注

    0

    文章

    11

    瀏覽量

    8803
  • 異步復(fù)位
    +關(guān)注

    關(guān)注

    0

    文章

    47

    瀏覽量

    13515

原文標(biāo)題:FPGA復(fù)位設(shè)計(jì)中異步復(fù)位為什么要同步釋放 ?

文章出處:【微信號:FPGA研究院,微信公眾號:FPGA研究院】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    Xilinx FPGA異步復(fù)位同步釋放同步后的復(fù)位該當(dāng)作同步復(fù)位還是異步復(fù)位

    針對異步復(fù)位、同步釋放,一直沒搞明白在使用同步化以后的復(fù)位信號時(shí),到底是使用
    發(fā)表于 06-21 09:59 ?1991次閱讀
    Xilinx <b class='flag-5'>FPGA</b><b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b><b class='flag-5'>同步</b><b class='flag-5'>釋放</b>—<b class='flag-5'>同步</b>后的<b class='flag-5'>復(fù)位</b>該當(dāng)作<b class='flag-5'>同步</b><b class='flag-5'>復(fù)位</b>還是<b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b>?

    異步復(fù)位同步釋放有多個(gè)時(shí)鐘域時(shí)如何處理 異步復(fù)位同步釋放的策略

    對于從FPGA外部進(jìn)來的信號,我們通常采用“異步復(fù)位同步釋放的策略”,具體電路如下圖所示。
    的頭像 發(fā)表于 07-20 09:04 ?2372次閱讀
    <b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b><b class='flag-5'>同步</b><b class='flag-5'>釋放</b>有多個(gè)時(shí)鐘域時(shí)如何處理 <b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b><b class='flag-5'>同步</b><b class='flag-5'>釋放</b>的策略

    同步復(fù)位sync和異步復(fù)位async

    %的同步時(shí)序電路,有利于時(shí)序分析。1)設(shè)計(jì)相對簡單。2)因?yàn)榇蠖鄶?shù)目標(biāo)器件庫的dff都有異步復(fù)位端口,因此采用異步復(fù)位可以節(jié)省資源。3)
    發(fā)表于 11-14 16:03

    verilog 異步復(fù)位同步釋放

    fpga異步復(fù)位同步釋放代碼如下module asy_rst(clk,rst_n,asy_rst);input clk;input r
    發(fā)表于 05-28 13:02

    同步復(fù)位異步復(fù)位同步釋放的對比疑問

    在網(wǎng)上了解到fpga同步復(fù)位異步復(fù)位都會存在不足,因此有人提出異步
    發(fā)表于 04-16 22:17

    同步復(fù)位異步復(fù)位到底孰優(yōu)孰劣

    異步復(fù)位,同步釋放的理解目錄目錄同步復(fù)位異步
    發(fā)表于 01-17 07:01

    同步復(fù)位異步復(fù)位有什么聯(lián)系與區(qū)別,優(yōu)缺點(diǎn)!

     異步復(fù)位原理:異步復(fù)位只要有復(fù)位信號系統(tǒng)馬上復(fù)位,因此異步
    發(fā)表于 11-30 08:45 ?10w次閱讀
    <b class='flag-5'>同步</b><b class='flag-5'>復(fù)位</b>和<b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b>有什么聯(lián)系與區(qū)別,優(yōu)缺點(diǎn)!

    關(guān)于異步復(fù)位同步釋放理解與分析

    是指復(fù)位信號是異步有效的,即復(fù)位的發(fā)生與clk無關(guān)。后半句“同步釋放”是指復(fù)位信號的撤除也與cl
    發(fā)表于 11-30 08:58 ?2.5w次閱讀
    關(guān)于<b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b><b class='flag-5'>同步</b><b class='flag-5'>釋放</b>理解與分析

    FPGA設(shè)計(jì)中的異步復(fù)位同步釋放問題

    異步復(fù)位同步釋放 首先要說一下同步復(fù)位異步
    發(fā)表于 06-07 02:46 ?2358次閱讀

    異步復(fù)位同步釋放的基本原理與代碼舉例

    異步復(fù)位同步釋放是指復(fù)位信號是異步有效的,即復(fù)位的發(fā)
    的頭像 發(fā)表于 11-20 07:06 ?4508次閱讀

    詳細(xì)講解同步后的復(fù)位同步復(fù)位還是異步復(fù)位

    針對異步復(fù)位、同步釋放,一直沒搞明白在使用同步化以后的復(fù)位信號時(shí),到底是使用
    的頭像 發(fā)表于 04-27 18:12 ?5221次閱讀
    詳細(xì)講解<b class='flag-5'>同步</b>后的<b class='flag-5'>復(fù)位</b>是<b class='flag-5'>同步</b><b class='flag-5'>復(fù)位</b>還是<b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b>?

    FPGA異步復(fù)位同步釋放的理解

    異步復(fù)位,同步釋放的理解目錄目錄 同步復(fù)位異步
    發(fā)表于 01-17 12:53 ?4次下載
    【<b class='flag-5'>FPGA</b>】<b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b>,<b class='flag-5'>同步</b><b class='flag-5'>釋放</b>的理解

    同步復(fù)位異步復(fù)位的區(qū)別

    請簡述同步復(fù)位異步復(fù)位的區(qū)別,說明兩種復(fù)位方式的優(yōu)缺點(diǎn),并解釋“異步
    的頭像 發(fā)表于 08-14 11:49 ?8033次閱讀

    淺析異步復(fù)位同步釋放同步復(fù)位打拍模塊

    異步復(fù)位同步釋放:rst_synchronizer.v
    的頭像 發(fā)表于 08-21 09:27 ?1393次閱讀
    淺析<b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b><b class='flag-5'>同步</b><b class='flag-5'>釋放</b>與<b class='flag-5'>同步</b><b class='flag-5'>復(fù)位</b>打拍模塊

    FPGA學(xué)習(xí)-異步復(fù)位,同步釋放

    點(diǎn)擊上方 藍(lán)字 關(guān)注我們 系統(tǒng)的復(fù)位對于系統(tǒng)穩(wěn)定工作至關(guān)重要,最佳的復(fù)位方式為:異步復(fù)位,同步釋放
    的頭像 發(fā)表于 09-09 14:15 ?1793次閱讀
    <b class='flag-5'>FPGA</b>學(xué)習(xí)-<b class='flag-5'>異步</b><b class='flag-5'>復(fù)位</b>,<b class='flag-5'>同步</b><b class='flag-5'>釋放</b>