那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

跨時鐘域信號該如何處理呢?

冬至子 ? 來源:跟IC君一起學習集成電路 ? 作者:IC君 ? 2023-06-27 11:39 ? 次閱讀

1

時鐘域是如何產生的呢?現在的芯片(比如SOC,片上系統)集成度和復雜度越來越高,通常一顆芯片上會有許多不同的信號工作在不同的時鐘頻率下。比如SOC芯片中的CPU通常會工作在一個頻率上,總線信號(比如DRAM BUS)會工作在另一個時鐘頻率下,而普通的信號又會工作在另外的時鐘頻率下。這3個不同時鐘頻率下工作的信號往往需要相互溝通和傳遞信號。

圖片

不同時鐘域下的信號傳遞就涉及到跨時鐘域信號處理,因為相互之間的頻率、相位不一樣,如果不做處理或者處理不當,如下圖所示的時鐘域CLK_A的數據信號A可能無法滿足時鐘域CLK_B的setup/hold時間,可能導致:

1.數據丟失,無法采到預期中的信號;

**2.**亞穩態的產生。

從而導致某個電路模塊或者整顆IC無法工作。

圖片

2

那么,常見的跨時鐘域信號處理方法都有哪些呢?有如下的三種:

  1. 兩級DFF同步器
  2. 握手協議
  3. 異步FIFO

最簡單的單比特信號處理通常采用兩級DFF串聯進行同步,如下圖所示:

圖片

從時鐘域A(CLKA)傳過來的信號a_in, 直接用時鐘域B CLKB采用很容易產生亞穩態,用兩級DFF 敲過后再使用就可以把亞穩態概率降到一個合理的值。

很多人可能會問,為什么是兩級DFF呢?一級或者三級DFF行不行呢?這里有一個平均失效間隔時間MTBF(Mean Time Between Failure)的考慮。MTBF時間越長,出現亞穩態的概率就越小,但是也不能完全避免亞穩態。注意采樣時鐘頻率越高,MTBF可能會迅速減小。

有文獻給出的數據:對于一個采樣頻率為200Mhz的系統,如果不做同步MTBF是2.5us,一級DFF同步的MTBF大概是23年,兩級DFF同步的大約MTBF大概是640年,MTBF越長出錯的概率越小。所以一級看上去不太穩,二級差不多夠用了,至于三級可能會影響到系統的性能,而且增加面積,所以看上去沒什么必要。

兩級DFF同步器聽起來夠簡單的吧?這個方法雖然很簡單,但是很多人用起來還是常常會犯錯。

3

錯誤1 :時鐘域A的組合邏輯信號直接敲兩級DFF同步到時鐘域B

如下圖(1)所示雖然時鐘域A的邏輯信號c0 傳輸到時鐘域B的時候,也用了兩級DFF 同步器,但我們知道組合邏輯電路各個輸入信號的不一致性以及組合邏輯內部路徑的延時時間不一樣,運算后的信號存在毛刺如圖(2),而我們又無法預先知道CLKB 的上升沿何時會到來,CLKB 采樣到的信號就無法預知,這顯然不是我們想要的結果。

圖片

因此,要想CLKB 能采到穩定的信號,時鐘域A的信號必須是經過CLKA 敲過,在一個時鐘周期內是穩定的信號,如圖(3)所示:

圖片

4

錯誤2 : Clock-gating enable 信號沒有經過異步處理

在下圖中a_in 信號經過CLKA的DFF敲過,再送到兩級DFF 同步器處理,完全沒毛病。但是F2的使能信號EN是從時鐘域A來的,當EN信號變化的時候,由于時鐘域不一樣,無法保證使能之后的CLKB信號采樣數據時滿足setup/hold time 要求,這時F2輸出信號也就變得無法預測了。

圖片

兩級同步器處理單比特信號雖然比較簡單,但還是要注意它的使用方法,不要犯上面的錯誤哦。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • IC設計
    +關注

    關注

    38

    文章

    1302

    瀏覽量

    104292
  • SoC系統
    +關注

    關注

    0

    文章

    52

    瀏覽量

    10729
  • 同步器
    +關注

    關注

    1

    文章

    98

    瀏覽量

    14704
  • FIFO存儲
    +關注

    關注

    0

    文章

    103

    瀏覽量

    6037
  • DRAM控制器
    +關注

    關注

    0

    文章

    11

    瀏覽量

    7819
收藏 人收藏

    評論

    相關推薦

    何處理時鐘信號

    最近是IC相關專業學生找工作的高峰期,大家可以在文章末尾或者知識星球留言討論筆試或者面試題哦。時鐘處理在面試中常常被問到,今天IC君就來聊一聊這個話題。
    的頭像 發表于 09-25 09:39 ?7775次閱讀

    關于時鐘信號處理方法

    我在知乎看到了多bit信號時鐘的問題,于是整理了一下自己對于時鐘
    的頭像 發表于 10-09 10:44 ?6394次閱讀

    FPGA設計中有多個時鐘時如何處理

    FPGA設計中有多個時鐘時如何處理時鐘的基本設計方法是:(1)對于單個
    發表于 02-24 15:47

    何處理好FPGA設計中時鐘問題?

    時鐘處理是 FPGA 設計中經常遇到的問題,而如何處理
    發表于 09-22 10:24

    三種時鐘處理的方法

      時鐘處理是FPGA設計中經常遇到的問題,而如何處理
    發表于 01-08 16:55

    何處理好FPGA設計中時鐘間的數據

    時鐘處理是FPGA設計中經常遇到的問題,而如何處理
    發表于 07-29 06:19

    何處理時鐘間的數據

    時鐘處理是什么意思?如何處理時鐘
    發表于 11-01 07:44

    時鐘信號的幾種同步方法研究

    時鐘信號的同步方法應根據源時鐘與目標時鐘的相位關系、
    發表于 05-09 15:21 ?63次下載
    <b class='flag-5'>跨</b><b class='flag-5'>時鐘</b><b class='flag-5'>域</b><b class='flag-5'>信號</b>的幾種同步方法研究

    時鐘信號何處理

    想象一下,如果頻率較高的時鐘A中的信號D1 要傳到頻率較低的時鐘B,但是D1只有一個時鐘脈沖
    的頭像 發表于 02-04 15:52 ?1.1w次閱讀
    <b class='flag-5'>跨</b><b class='flag-5'>時鐘</b><b class='flag-5'>域</b><b class='flag-5'>信號</b>如<b class='flag-5'>何處理</b>?

    揭秘FPGA時鐘處理的三大方法

    時鐘處理是 FPGA 設計中經常遇到的問題,而如何處理
    的頭像 發表于 12-05 16:41 ?1705次閱讀

    介紹3種方法時鐘處理方法

    時鐘處理是FPGA設計中經常遇到的問題,而如何處理
    的頭像 發表于 09-18 11:33 ?2.2w次閱讀
    介紹3種方法<b class='flag-5'>跨</b><b class='flag-5'>時鐘</b><b class='flag-5'>域</b><b class='flag-5'>處理</b>方法

    基于FPGA的時鐘信號處理——MCU

    問題,不過請注意,今后的這些關于異步信號處理的文 章里將會重點從工程實踐的角度出發,以一些特權同學遇到過的典型案例的設計為依托,從代碼的角度來剖析一些特權同學認為經典的時鐘
    發表于 11-01 16:24 ?11次下載
    基于FPGA的<b class='flag-5'>跨</b><b class='flag-5'>時鐘</b><b class='flag-5'>域</b><b class='flag-5'>信號</b><b class='flag-5'>處理</b>——MCU

    三種時鐘處理的方法

    時鐘處理是FPGA設計中經常遇到的問題,而如何處理
    的頭像 發表于 10-18 09:12 ?8008次閱讀

    FPGA時鐘處理方法(二)

    上一篇文章已經講過了單bit時鐘處理方法,這次解說一下多bit的時鐘
    的頭像 發表于 05-25 15:07 ?1083次閱讀
    FPGA<b class='flag-5'>跨</b><b class='flag-5'>時鐘</b><b class='flag-5'>域</b><b class='flag-5'>處理</b>方法(二)

    何處理時鐘這些基礎問題

    對于數字設計人員來講,只要信號從一個時鐘跨越到另一個時鐘,那么就可能發生亞穩態。我們稱為“
    發表于 01-08 09:39 ?735次閱讀
    如<b class='flag-5'>何處理</b><b class='flag-5'>跨</b><b class='flag-5'>時鐘</b><b class='flag-5'>域</b>這些基礎問題
    云鼎百家乐官网程序开发有限公司| 杰克百家乐玩法| 大发888官方注册| 百家乐官网的桌布| 百家乐娱乐网开户| 百家乐官网投注科学公式| 网络百家乐破解器| 澳门百家乐官网赢钱| 网上百家乐官网乐代理| bet365怎么存款| 百家乐官网手论坛48491| 赌球网| 百家乐赌假的工具| 金钻国际娱乐城| 棋牌百家乐程序破解| 百家乐官网下注时机| 订做百家乐桌子| 百家乐官网娱乐城博彩正网| 巴宝莉百家乐的玩法技巧和规则 | 海晏县| 百家乐优博娱乐城| 百家乐官网有方法赚反水| 悦榕庄百家乐的玩法技巧和规则 | 百家乐官网公式计算| 百家乐牌路图表下| 百家乐官网赌博走势图| 大发888娱乐城游戏下载| 大发888网址怎么找| 金城百家乐玩法| 时尚| 金满堂百家乐的玩法技巧和规则| 百家乐官网玩的技巧| 六合彩官网| 豪华百家乐人桌| 德州扑克胜率计算器| 百家乐经验博彩正网| 百家乐官网注册开户送彩金| 大发888棋牌下载| 网上百家乐骗人吗| 百家乐官网黑牌靴| 大发888娱乐场ylc8|