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

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

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

CDC跨時(shí)鐘域的基礎(chǔ)概念

西西 ? 來源:IP與SoC設(shè)計(jì) ? 作者:IP與SoC設(shè)計(jì) ? 2022-08-29 15:11 ? 次閱讀

CDC(Clock Domain Crossing)跨時(shí)鐘

在一款芯片中多個(gè)時(shí)鐘域非常常見,跨時(shí)鐘域檢查至關(guān)重要。本篇記錄的是CDC跨時(shí)鐘域的基礎(chǔ)概念。

時(shí)鐘域clock domain:以寄存器捕獲的時(shí)鐘來劃分時(shí)鐘域。

單時(shí)鐘域single clock domain,數(shù)據(jù)發(fā)送和接收是同一個(gè)時(shí)鐘

多時(shí)鐘域multiple clock domain,數(shù)據(jù)發(fā)送和接收是不是同一個(gè)時(shí)鐘

同步 & 異步

是否為同一個(gè)時(shí)鐘通過同步和異步來判定。

同步時(shí)鐘:同源,有固定的相位關(guān)系

異步時(shí)鐘:不同源,沒有固定的相位關(guān)系

那么問題來了

問題1: 有兩個(gè)時(shí)鐘是通過兩個(gè)時(shí)鐘源出來,但是頻率和相位相同,那么它們是否為同步時(shí)鐘?

不是,不同的時(shí)鐘源出來頻率相同,但隨著時(shí)鐘的偏移和抖動(dòng),都會(huì)導(dǎo)致相位的不確定性。所以是異步時(shí)鐘。

問題2: 有兩個(gè)時(shí)鐘是通過同一個(gè)時(shí)鐘源分頻出來的,但他們的頻率不同,那么它們是否為同步時(shí)鐘?

是同步時(shí)鐘,時(shí)鐘的同步關(guān)系與頻率無關(guān),只要是同源、有固定的相位關(guān)系,就是一組同步時(shí)鐘。不需要做異步時(shí)鐘處理,做跨時(shí)鐘域處理。

Jitter & Skew

時(shí)鐘抖動(dòng)(Clock Jitter):兩個(gè)時(shí)鐘周期之間存在的差值,這個(gè)誤差是在時(shí)鐘發(fā)生器內(nèi)部產(chǎn)生的,和晶振或者PLL內(nèi)部電路有關(guān),使得時(shí)鐘周期在不同的周期上可能加長或縮短。

時(shí)鐘偏移(Clock Skew):同一個(gè)信號(hào)到達(dá)兩個(gè)不同的寄存器之間的時(shí)間差值,Skew的定義就是時(shí)鐘最長路徑減去最短路徑的值。由于布線長度及負(fù)載不同引起。

區(qū)別:Jitter是在時(shí)鐘發(fā)生器內(nèi)部產(chǎn)生的,和晶振或者PLL內(nèi)部電路有關(guān),布線對(duì)其沒有影響。Skew是由不同布線長度導(dǎo)致的不同路徑的時(shí)鐘上升沿到來的延時(shí)不同。

跨時(shí)鐘域

一個(gè)電路的launch時(shí)鐘和capture時(shí)鐘不是同一個(gè)時(shí)鐘,就是跨時(shí)鐘域。

兩個(gè)時(shí)鐘是同步時(shí)鐘就是同步時(shí)鐘域。

兩個(gè)時(shí)鐘是異步時(shí)鐘就是異步時(shí)鐘域。

亞穩(wěn)態(tài)

觸發(fā)器無法在某個(gè)確定的時(shí)間段內(nèi)達(dá)到一個(gè)可確認(rèn)的狀態(tài),帶來功能錯(cuò)誤

如何處理亞穩(wěn)態(tài)?

降低系統(tǒng)時(shí)鐘頻率

用速度更快的FF

引入同步機(jī)制,防止亞穩(wěn)態(tài)傳播

改善時(shí)鐘質(zhì)量,用邊沿快速變化的時(shí)鐘信號(hào)

亞穩(wěn)態(tài)需要一段時(shí)間才能達(dá)到穩(wěn)態(tài),二級(jí)寄存器可以增加一個(gè)clock cycle的時(shí)間使亞穩(wěn)態(tài)穩(wěn)定。如果一個(gè)clock cycle后,亞穩(wěn)態(tài)還未穩(wěn)定,第二級(jí)輸出就還可能是亞穩(wěn)態(tài)。

需要注意的是,兩級(jí)寄存器并不能完全隔離亞穩(wěn)態(tài),但可以極大的概率隔離了亞穩(wěn)態(tài)發(fā)生的概率。

而且,亞穩(wěn)態(tài)不是糾錯(cuò),如果產(chǎn)生亞穩(wěn)態(tài),那么采樣值可能是不正確的,兩級(jí)寄存器或多級(jí)寄存器級(jí)聯(lián)只是防止亞穩(wěn)態(tài)在時(shí)序電路中傳播擴(kuò)散。

根據(jù)MTBF Mean Time Between Failure 平均故障時(shí)間,推薦電路頻率500MHz以下用兩級(jí)觸發(fā)器,500MHz以上用三級(jí)觸發(fā)器。

編輯:黃飛

聲明:本文內(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)投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5294

    瀏覽量

    119814
  • DCDC
    +關(guān)注

    關(guān)注

    28

    文章

    804

    瀏覽量

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

    關(guān)注

    0

    文章

    44

    瀏覽量

    3213

原文標(biāo)題:同步還是異步?這是一個(gè)問題

文章出處:【微信號(hào):IP與SoC設(shè)計(jì),微信公眾號(hào):IP與SoC設(shè)計(jì)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    多位寬數(shù)據(jù)通過握手方式時(shí)鐘

    對(duì)于多位寬數(shù)據(jù),我們可以采用握手方式實(shí)現(xiàn)時(shí)鐘操作。該方式可直接使用xpm_cdc_handshake實(shí)現(xiàn),如下圖所示。
    的頭像 發(fā)表于 05-06 09:22 ?1074次閱讀
    多位寬數(shù)據(jù)通過握手方式<b class='flag-5'>跨</b><b class='flag-5'>時(shí)鐘</b><b class='flag-5'>域</b>

    處理時(shí)鐘CDC)信號(hào)同步的最常見方法

    時(shí)鐘( **Clock Domain Crossing,CDC** )通俗地講,就是 **模塊之間數(shù)據(jù)交互時(shí)用的不是同一個(gè)時(shí)鐘進(jìn)行驅(qū)動(dòng)*
    的頭像 發(fā)表于 09-20 11:24 ?3632次閱讀
    處理<b class='flag-5'>跨</b><b class='flag-5'>時(shí)鐘</b><b class='flag-5'>域</b>(<b class='flag-5'>CDC</b>)信號(hào)同步的最常見方法

    關(guān)于cdc時(shí)鐘處理的知識(shí)點(diǎn),不看肯定后悔

    關(guān)于cdc時(shí)鐘處理的知識(shí)點(diǎn),不看肯定后悔
    發(fā)表于 06-21 07:44

    cdc路徑方案幫您解決時(shí)鐘難題

    這一章介紹一下CDC也就是時(shí)鐘可能存在的一些問題以及基本的時(shí)鐘
    的頭像 發(fā)表于 11-30 06:29 ?7112次閱讀
    <b class='flag-5'>cdc</b>路徑方案幫您解決<b class='flag-5'>跨</b><b class='flag-5'>時(shí)鐘</b><b class='flag-5'>域</b>難題

    關(guān)于FPGA中時(shí)鐘的問題分析

    時(shí)鐘問題(CDC,Clock Domain Crossing )是多時(shí)鐘設(shè)計(jì)中的常見現(xiàn)象。在FPGA領(lǐng)域,互動(dòng)的異步
    發(fā)表于 08-19 14:52 ?3305次閱讀

    CDC單bit脈沖時(shí)鐘的處理介紹

    單bit 脈沖時(shí)鐘處理 簡要概述: 在上一篇講了總線全握手時(shí)鐘處理,本文講述單bit脈沖
    的頭像 發(fā)表于 03-22 09:54 ?3447次閱讀

    關(guān)于時(shí)鐘的詳細(xì)解答

    每一個(gè)做數(shù)字邏輯的都繞不開時(shí)鐘處理,談一談SpinalHDL里用于時(shí)鐘處理的一些手段方法
    的頭像 發(fā)表于 04-27 10:52 ?4216次閱讀
    關(guān)于<b class='flag-5'>跨</b><b class='flag-5'>時(shí)鐘</b><b class='flag-5'>域</b>的詳細(xì)解答

    CDC時(shí)鐘的基礎(chǔ)概念介紹

    時(shí)鐘clock domain:以寄存器捕獲的時(shí)鐘來劃分時(shí)鐘。單時(shí)鐘
    的頭像 發(fā)表于 12-26 15:21 ?1670次閱讀

    單位寬信號(hào)如何時(shí)鐘

    單位寬(Single bit)信號(hào)即該信號(hào)的位寬為1,通常控制信號(hào)居多。對(duì)于此類信號(hào),如需時(shí)鐘可直接使用xpm_cdc_single
    的頭像 發(fā)表于 04-13 09:11 ?1259次閱讀

    時(shí)鐘電路設(shè)計(jì)總結(jié)

    時(shí)鐘操作包括同步時(shí)鐘操作和異步
    的頭像 發(fā)表于 05-18 09:18 ?694次閱讀
    <b class='flag-5'>跨</b><b class='flag-5'>時(shí)鐘</b><b class='flag-5'>域</b>電路設(shè)計(jì)總結(jié)

    FPGA時(shí)鐘處理方法(二)

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

    CDC時(shí)鐘處理及相應(yīng)的時(shí)序約束

    CDC(Clock Domain Conversion)時(shí)鐘分單bit和多bit傳輸
    的頭像 發(fā)表于 06-21 14:59 ?1726次閱讀

    時(shí)鐘電路設(shè)計(jì)—單比特信號(hào)傳輸

    時(shí)鐘CDC)的應(yīng)從對(duì)亞穩(wěn)定性和同步性的基本了解開始。
    的頭像 發(fā)表于 06-27 14:25 ?985次閱讀
    <b class='flag-5'>跨</b><b class='flag-5'>時(shí)鐘</b><b class='flag-5'>域</b>電路設(shè)計(jì)—單比特信號(hào)傳輸

    時(shí)鐘電路設(shè)計(jì):單位寬信號(hào)如何時(shí)鐘

    單位寬(Single bit)信號(hào)即該信號(hào)的位寬為1,通常控制信號(hào)居多。對(duì)于此類信號(hào),如需時(shí)鐘可直接使用xpm_cdc_single,如下圖代碼所示。參數(shù)DEST_SYNC_FF決
    的頭像 發(fā)表于 08-16 09:53 ?1190次閱讀
    <b class='flag-5'>跨</b><b class='flag-5'>時(shí)鐘</b><b class='flag-5'>域</b>電路設(shè)計(jì):單位寬信號(hào)如何<b class='flag-5'>跨</b><b class='flag-5'>時(shí)鐘</b><b class='flag-5'>域</b>

    如何處理時(shí)鐘這些基礎(chǔ)問題

    對(duì)于數(shù)字設(shè)計(jì)人員來講,只要信號(hào)從一個(gè)時(shí)鐘跨越到另一個(gè)時(shí)鐘,那么就可能發(fā)生亞穩(wěn)態(tài)。我們稱為“時(shí)鐘
    發(fā)表于 01-08 09:39 ?566次閱讀
    如何處理<b class='flag-5'>跨</b><b class='flag-5'>時(shí)鐘</b><b class='flag-5'>域</b>這些基礎(chǔ)問題