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

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

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

同步時(shí)鐘和異步時(shí)鐘詳解

CHANBAEK ? 來源:數(shù)字IC與好好生活的兩居室 ? 作者:除夕之夜啊 ? 2023-03-28 13:46 ? 次閱讀

當(dāng)觸發(fā)器輸入端的數(shù)據(jù)和觸發(fā)器的時(shí)鐘不相關(guān)時(shí),很容易導(dǎo)致電路時(shí)序約束不滿足。 本章主要解決模塊間可導(dǎo)致時(shí)序 violation 的異步問題。

關(guān)于異步與同步的定義,許多地方都有介紹,細(xì)節(jié)上也有所差異。 本章主要的關(guān)注點(diǎn)是解決異步問題的方法,而不關(guān)心為什么會(huì)出現(xiàn)異步時(shí)鐘,也不關(guān)心異步電路的具體結(jié)構(gòu),僅從異步時(shí)鐘的時(shí)序結(jié)果去分析解決問題。

同步時(shí)鐘

數(shù)字設(shè)計(jì)中,一般認(rèn)為,頻率相同或頻率比為整數(shù)倍、且相位相同或相位差固定的兩個(gè)時(shí)鐘為同步時(shí)鐘。

或者理解為,時(shí)鐘同源且頻率比為整數(shù)倍的兩個(gè)時(shí)鐘為同步時(shí)鐘。 其實(shí),時(shí)鐘同源,就保證了時(shí)鐘相位差的固定性。 具體可以分類如下:

同源同頻同相位

此類時(shí)鐘頻率和相位均相同,是同步的。 時(shí)鐘間數(shù)據(jù)傳輸只要滿足正常的建立時(shí)間和保持時(shí)間即可,不需要特殊的同步設(shè)計(jì)。

同源同頻不同相位

兩個(gè)時(shí)鐘同頻但不同相位時(shí),只要相位差保持固定,也可以認(rèn)為是同步的。 因?yàn)橹灰WC在兩個(gè)時(shí)鐘間傳輸?shù)臄?shù)據(jù)信號(hào)延遲,固定的控制在合理范圍內(nèi),就不會(huì)導(dǎo)致時(shí)序問題。 而且,固定的時(shí)鐘延遲也可以在版圖級(jí)網(wǎng)表中修復(fù)。

固定的相位差可以理解為同源時(shí)鐘下兩個(gè)時(shí)鐘因路徑不同而導(dǎo)致的偏移。

圖片

同源不同頻但存在整數(shù)倍分頻比

此類時(shí)一個(gè)時(shí)鐘往往是另一個(gè)時(shí)鐘的分頻,即便存在相位差也是固定的。

當(dāng)單 bit 信號(hào)從慢時(shí)鐘域傳遞到快時(shí)鐘域時(shí),因?yàn)橥?,只要滿足建立時(shí)間和保持時(shí)間,快時(shí)鐘域總會(huì)采集到從慢時(shí)鐘域傳遞來的信號(hào)。

如下圖所示,clk2 上升沿總能采集從 clk1 域來的信號(hào) sig1,且采集到的信號(hào) sig2 高電平持續(xù)周期也是兩個(gè)時(shí)鐘的頻率比,即 2 個(gè)周期。

圖片

如果 clk2 域的信號(hào) sig2 只需要一個(gè)持續(xù)一個(gè)時(shí)鐘周期,則需要對(duì) sig1 進(jìn)行上升沿檢測(cè)。

同步信號(hào)間的上升沿檢測(cè)程序 Verilog 描述如下。

reg [1:0]    sig2_r ;
   always @(posedge clk2 or negedge rstn) begin
     if (!rstn) sig2_r  <= 2'b0 ;
     else       sig2_r  <= {sig2_r[0], sig1} ;
   end
   assign sig2 = sig2_r[0] && !sig2_r[1];

此時(shí),快時(shí)鐘域的信號(hào) sig2 只會(huì)持續(xù)一個(gè)時(shí)鐘周期,如下圖所示。

圖片

當(dāng)單 bit 信號(hào)從快時(shí)鐘域傳遞到慢時(shí)鐘域時(shí),只要慢時(shí)鐘域能安全采集到從快時(shí)鐘域傳遞來的信號(hào),就不存在異步問題。 因?yàn)閮蓚€(gè)時(shí)鐘是同源的。 如下圖 sig1 到 sig2 的傳輸。

但是如果快時(shí)鐘域信號(hào)過窄,慢時(shí)鐘域有可能漏掉,如下圖 sig11 到 sig22 的傳輸。 此時(shí)就需要對(duì)快時(shí)鐘域的窄脈沖信號(hào)進(jìn)行展寬。

圖片

當(dāng)兩個(gè)時(shí)鐘頻率比相對(duì)較小時(shí),可以在快時(shí)鐘域采用對(duì)信號(hào)延遲的方法進(jìn)行展寬;

當(dāng)兩個(gè)時(shí)鐘頻率比相差較大時(shí),對(duì)信號(hào)延遲的方法會(huì)有些繁瑣,可在快時(shí)鐘域采用計(jì)數(shù)的方法來延長(zhǎng)單 bit 信號(hào)有效的時(shí)間。

利用延遲來展寬窄脈沖信號(hào)的方法 Verilog 描述如下。 因?yàn)?clk1 與 clk2 的頻率比為 2,只需要延遲 2 拍 clk2 時(shí)鐘即可。

reg [1:0]    sig11_r ;
   always @(posedge clk1 or negedge rstn) begin
     if (!rstn) sig11_r  <= 2'b0 ;
     else       sig11_r  <= {sig11_r[0], sig11} ;
   end


   reg          sig22_r ;
   always @(posedge clk2 or negedge rstn) begin
      if (!rstn)        sig22_r  <= 1'b0 ;
      else              sig22_r  <= |sig11_r ;
   end
   assign sig22 = sig22_r ;

此時(shí),快時(shí)鐘域的信號(hào)被延遲 2 拍,總會(huì)被慢時(shí)鐘域采集到,如下圖所示。

圖片

總之,同源且頻率比為整數(shù)倍關(guān)系時(shí),可以理解為這兩個(gè)時(shí)鐘是同步的,不需要特殊的同步處理。 下面,簡(jiǎn)單介紹下異步時(shí)鐘的情況。

異步時(shí)鐘

工作在異步時(shí)鐘下的兩個(gè)模塊進(jìn)行數(shù)據(jù)交互時(shí),由于時(shí)鐘相位關(guān)系不可控制,很容易導(dǎo)致建立時(shí)間和保持時(shí)間 violation。 以下 3 種情況下的時(shí)鐘可以認(rèn)為是異步的。

不同源

由兩個(gè)不同的時(shí)鐘源產(chǎn)生的兩個(gè)時(shí)鐘是異步的,這是最常見的異步時(shí)鐘。 即便兩個(gè)時(shí)鐘頻率相同,但是也不能保證每次上電后兩者的相位或相位差是相同的,所以信號(hào)間的傳輸與時(shí)鐘關(guān)系也是不確定的。

同源但頻率比不是整數(shù)倍

此時(shí)兩個(gè)時(shí)鐘間相位差也可能會(huì)有多個(gè),例如同源的 7MHz 時(shí)鐘和 3MHz 時(shí)鐘,他們之間也會(huì)出現(xiàn)多個(gè)相位差,時(shí)序也不好控制。 一般情況下也需要當(dāng)異步時(shí)鐘處理。

同源雖頻率比為整數(shù)倍但不滿足時(shí)序要求

前面介紹同步問題時(shí)有說明,當(dāng)信號(hào)從快時(shí)鐘域傳遞到慢時(shí)鐘域時(shí),只要慢時(shí)鐘域能安全采集到從快時(shí)鐘域傳來的信號(hào),就不存在異步問題。 但如果信號(hào)在快時(shí)鐘域翻轉(zhuǎn)速率過快,慢時(shí)鐘域可能不會(huì)安全的采集到從快時(shí)鐘域傳來的信號(hào),這也可以認(rèn)為是異步問題。

一般來說,慢時(shí)鐘域時(shí)序約束較為寬松,快時(shí)鐘域較為嚴(yán)格。

如下圖,當(dāng)快時(shí)鐘域信號(hào)在慢時(shí)鐘域上升沿前翻轉(zhuǎn)了 2 次。 此時(shí),慢時(shí)鐘域會(huì)漏掉部分?jǐn)?shù)據(jù)。 而且,數(shù)據(jù)的快速變化也可能導(dǎo)致 timing violation。

圖片

這里只簡(jiǎn)單介紹下異步時(shí)鐘的分類情況,異步問題的解決方法請(qǐng)參考后面的章節(jié)。

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

    關(guān)注

    11

    文章

    2773

    瀏覽量

    76539
  • 觸發(fā)器
    +關(guān)注

    關(guān)注

    14

    文章

    1995

    瀏覽量

    61012
  • 異步電路
    +關(guān)注

    關(guān)注

    2

    文章

    48

    瀏覽量

    11083
  • 異步時(shí)鐘
    +關(guān)注

    關(guān)注

    0

    文章

    17

    瀏覽量

    9399
  • 同步時(shí)鐘
    +關(guān)注

    關(guān)注

    0

    文章

    44

    瀏覽量

    3213
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    異步時(shí)鐘切換電路

    異步時(shí)鐘切換電路
    發(fā)表于 05-08 09:40 ?5827次閱讀
    <b class='flag-5'>異步</b><b class='flag-5'>時(shí)鐘</b>切換電路

    FPGA異步時(shí)鐘設(shè)計(jì)中的同步策略

    摘要:FPGA異步時(shí)鐘設(shè)計(jì)中如何避免亞穩(wěn)態(tài)的產(chǎn)生是一個(gè)必須考慮的問題。本文介紹了FPGA異步時(shí)鐘設(shè)計(jì)中容易產(chǎn)生的亞穩(wěn)態(tài)現(xiàn)象及其可能造成的危害,同時(shí)根據(jù)實(shí)踐經(jīng)驗(yàn)給出了解決這些問題的幾種
    發(fā)表于 04-21 16:52

    異步時(shí)鐘同步疑惑

    在SDRAM的代碼中,有的模塊工作頻率50MHz,有的100MHz,不同時(shí)鐘域間的數(shù)據(jù)同步太難理解了,請(qǐng)各位前輩指點(diǎn)。代碼如下所示。//同步SDRAM初始化完成信號(hào)always @(posedge
    發(fā)表于 09-12 20:39

    異步時(shí)鐘域的亞穩(wěn)態(tài)問題和同步

    相較純粹的單一時(shí)鐘同步電路設(shè)計(jì),設(shè)計(jì)人員更多遇到的是多時(shí)鐘域的異步電路設(shè)計(jì)。因此,異步電路設(shè)計(jì)在數(shù)字電路設(shè)計(jì)中的重要性不言而喻。本文主要就
    發(fā)表于 07-31 16:51 ?0次下載

    FPGA異步時(shí)鐘設(shè)計(jì)中的同步策略

    FPGA 異步時(shí)鐘設(shè)計(jì)中如何避免亞穩(wěn)態(tài)的產(chǎn)生是一個(gè)必須考慮的問題。本文介紹了FPGA 異步時(shí)鐘設(shè)計(jì)中容易產(chǎn)生的亞穩(wěn)態(tài)現(xiàn)象及其可能造成的危害,同時(shí)根據(jù)實(shí)踐經(jīng)驗(yàn)給出了解決這些問題的
    發(fā)表于 12-20 17:08 ?63次下載
    FPGA<b class='flag-5'>異步</b><b class='flag-5'>時(shí)鐘</b>設(shè)計(jì)中的<b class='flag-5'>同步</b>策略

    同步異步時(shí)鐘之間是如何聯(lián)系_如何正確的約束時(shí)鐘

    現(xiàn)在的硬件設(shè)計(jì)中,大量的時(shí)鐘之間彼此相互連接是很典型的現(xiàn)象。為了保證Vivado優(yōu)化到關(guān)鍵路徑,我們必須要理解時(shí)鐘之間是如何相互作用,也就是同步異步
    的頭像 發(fā)表于 05-12 10:15 ?2w次閱讀

    簡(jiǎn)談異步電路中的時(shí)鐘同步處理方法

    大家好,又到了每日學(xué)習(xí)的時(shí)候了。今天我們來聊一聊異步電路中的時(shí)鐘同步處理方法。 既然說到了時(shí)鐘同步處理,那么什么是
    的頭像 發(fā)表于 05-21 14:56 ?1.3w次閱讀
    簡(jiǎn)談<b class='flag-5'>異步</b>電路中的<b class='flag-5'>時(shí)鐘</b><b class='flag-5'>同步</b>處理方法

    時(shí)鐘域的同步時(shí)序設(shè)計(jì)和幾種處理異步時(shí)鐘域接口的方法

    在數(shù)字電路設(shè)計(jì)中,大部分設(shè)計(jì)都是同步時(shí)序設(shè)計(jì),所有的觸發(fā)器都是在同一個(gè)時(shí)鐘節(jié)拍下進(jìn)行翻轉(zhuǎn)。這樣就簡(jiǎn)化了整個(gè)設(shè)計(jì),后端綜合、布局布線的時(shí)序約束也不用非常嚴(yán)格。但是在設(shè)計(jì)與外部設(shè)備的接口部分時(shí),大部分
    的頭像 發(fā)表于 07-24 09:52 ?4322次閱讀
    多<b class='flag-5'>時(shí)鐘</b>域的<b class='flag-5'>同步</b>時(shí)序設(shè)計(jì)和幾種處理<b class='flag-5'>異步</b><b class='flag-5'>時(shí)鐘</b>域接口的方法

    IC設(shè)計(jì)中同步復(fù)位與異步復(fù)位的區(qū)別

    1、什么是同步邏輯和異步邏輯,同步電路和異步電路的區(qū)別是什么? 同步邏輯是時(shí)鐘之間有固定的因果關(guān)
    的頭像 發(fā)表于 11-09 14:58 ?9850次閱讀

    如何將一種異步時(shí)鐘域轉(zhuǎn)換成同步時(shí)鐘

     本發(fā)明提供了一種將異步時(shí)鐘域轉(zhuǎn)換成同步時(shí)鐘域的方法,直接使用同步時(shí)鐘對(duì)
    發(fā)表于 12-21 17:10 ?5次下載
    如何將一種<b class='flag-5'>異步</b><b class='flag-5'>時(shí)鐘</b>域轉(zhuǎn)換成<b class='flag-5'>同步</b><b class='flag-5'>時(shí)鐘</b>域

    Verilog電路設(shè)計(jì)之單bit跨時(shí)鐘同步異步FIFO

    FIFO用于為匹配讀寫速度而設(shè)置的數(shù)據(jù)緩沖buffer,當(dāng)讀寫時(shí)鐘異步時(shí),就是異步FIFO。多bit的數(shù)據(jù)信號(hào),并不是直接從寫時(shí)鐘同步到讀
    發(fā)表于 01-01 16:48 ?1244次閱讀

    詳解數(shù)字設(shè)計(jì)中的時(shí)鐘與約束

    : ·同步電路與異步電路; ·時(shí)鐘/時(shí)鐘樹的屬性:偏移(skew)與時(shí)鐘的抖動(dòng)(jitter)、延時(shí)(latency)、轉(zhuǎn)換(transit
    的頭像 發(fā)表于 01-28 07:53 ?2840次閱讀
    <b class='flag-5'>詳解</b>數(shù)字設(shè)計(jì)中的<b class='flag-5'>時(shí)鐘</b>與約束

    異步時(shí)鐘同步處理

    異步系統(tǒng)中,由于數(shù)據(jù)和時(shí)鐘的關(guān)系不是固定的,因此會(huì)出現(xiàn)違反建立和保持時(shí)間的現(xiàn)象。
    的頭像 發(fā)表于 06-05 14:34 ?2560次閱讀
    <b class='flag-5'>異步</b><b class='flag-5'>時(shí)鐘</b>的<b class='flag-5'>同步</b>處理

    時(shí)鐘同步的總線電路方案

    、保持(hold)時(shí)間的時(shí)序關(guān)系,電路的輸出(布爾值)就是可預(yù)測(cè)的,這是數(shù)字邏輯電路設(shè)計(jì)的基礎(chǔ)。如果 不能滿足建立保持時(shí)間 ,我們認(rèn)為輸入是 異步 (asynchronous) 信號(hào) 。一個(gè)時(shí)鐘域的同步信號(hào)輸出到另一個(gè)
    的頭像 發(fā)表于 06-23 17:53 ?1619次閱讀
    <b class='flag-5'>時(shí)鐘</b><b class='flag-5'>同步</b>的總線電路方案

    異步電路中的時(shí)鐘同步處理方法

    異步電路中的時(shí)鐘同步處理方法? 時(shí)鐘同步異步電路中是至關(guān)重要的,它確保了電路中的各個(gè)部件在正確
    的頭像 發(fā)表于 01-16 14:42 ?1047次閱讀