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

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

3天內不再提示

芯片跨時鐘域設計案例簡析(一)

全棧芯片工程師 ? 來源:全棧芯片工程師 ? 2024-01-18 09:24 ? 次閱讀

(一)單bit信號同步器

最經典的2DFF 1-bit同步器如下,下圖結構通常用于單bit控制信號的異步處理:

3a796b5a-b54a-11ee-8b88-92fbcf53809c.png

絕大數情況下,當第一個寄存器R1進入亞穩態后,在第二級寄存器R2采樣R1的輸出前,R1的輸出已經能穩定在0或1。

注意:

cdc_s信號必須做到glitch free,也就是我們通常說的寄存輸出;

int_s信號鏈路禁止組合邏輯,其本質也是杜絕glitch的出現。

偏執狂的IC designer肯定會問,第一級寄存器R1的行為到底是啥樣子的?由于cdc_s信號是Tx clock Domain,而R1寄存器的采用時鐘是Rx clock Domain,當Rx clock采樣時,若cdc_s正好跳變(不滿足setup/hold),那么就會出現如下兩種情況,而前仿真是無法仿真出下圖2種行為的(具體見芯片設計之CDC異步電路(一)一文)。

3a8b93a2-b54a-11ee-8b88-92fbcf53809c.png

(二DMUX同步器 兩級寄存器(先進工藝要求三級)的同步器通常用于控制信號的異步處理,但是data bus的異步處理呢?我們可以采用DMUX結構。

3a9e4b8c-b54a-11ee-8b88-92fbcf53809c.png

注意:

tx_sel、rx_sel有效時,cdc_d數據總線必須保持穩定;

(三握手處理

源時鐘域先將數據發送到總線上,并給出一個valid信號,而目標時鐘域同步valid信號后,若valid信號為高電平則采樣總線數據,并返回一個ready信號給源時鐘域。源時鐘域再次同步該ready信號,若ready信號為高,則代表一次握手成功,數據傳輸完畢,開始進行下一次數據傳輸。

采用握手機制可以保證異步multi-bit數據傳輸不出現錯誤,但由于需要等待握手的完成再傳輸數據,因此傳輸效率較低。

3aae9bb8-b54a-11ee-8b88-92fbcf53809c.png

(四)異步FIFO

老生常談的異步FIFO,其本質是采用格雷碼,在地址連續的情況下,其對應格雷碼每個周期只變化1bit,因此可以直接異步采樣。

3ac449fe-b54a-11ee-8b88-92fbcf53809c.png

注意:

FIFO的overflow、underflow問題;

tx_addr是連續的,即地址hamming distance是1;

FIFO深度須2^n;

經典的FIFO結構如下:

3adb6062-b54a-11ee-8b88-92fbcf53809c.png

核心電路:是將FIFO讀寫地址指針的二進制碼轉成格雷碼,方便同步器打兩拍傳遞到對向時鐘域去做空滿判斷。

3ae5ce9e-b54a-11ee-8b88-92fbcf53809c.png

空滿判斷:為了區別空滿,我們增加1bit的地址(MSB),我習慣直接用Gray碼比較讀寫指針判定空滿:

當Gray碼讀寫指針完全相等時,FIFO空;

當Gray碼讀寫指針最高2bit相反,其余bit相同時,FIFO滿; 通常二進制碼比較空滿是:最高bit不同,其余bit相同,則FIFO滿,而格雷碼則不同哈。

3af20dda-b54a-11ee-8b88-92fbcf53809c.png








審核編輯:劉清

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

    關注

    30

    文章

    5141

    瀏覽量

    118055
  • CDC
    CDC
    +關注

    關注

    0

    文章

    55

    瀏覽量

    17694
  • 同步器
    +關注

    關注

    1

    文章

    79

    瀏覽量

    14508
  • FIFO存儲
    +關注

    關注

    0

    文章

    103

    瀏覽量

    5904
  • 異步處理
    +關注

    關注

    0

    文章

    7

    瀏覽量

    6536

原文標題:芯片跨時鐘域設計(一)

文章出處:【微信號:全棧芯片工程師,微信公眾號:全棧芯片工程師】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    射頻識別芯片設計中時鐘樹功耗的優化與實現

    在RFID芯片中的功耗主要有模擬射頻前端電路,存儲器,數字邏輯三部分,而在數字邏輯電路中時鐘樹上的功耗會占邏輯功耗不小的部分。本文著重從降低數字邏輯時鐘樹功耗方面闡述了一款基于ISO18000-6
    發表于 03-24 14:36 ?3927次閱讀

    TC3xx芯片時鐘系統的鎖相環PLL詳解

    中的Tick數就是基于模塊時鐘的)。本系列文章就來詳細介紹TC3xx芯片時鐘系統及其具體配置。本文為TC3xx芯片時鐘系統的鎖相環PLL詳解。
    的頭像 發表于 12-01 09:37 ?1024次閱讀
    TC3xx<b class='flag-5'>芯片時鐘</b>系統的鎖相環PLL詳解

    兩級DFF同步器時鐘處理

    異步bus交互()— 兩級DFF同步器時鐘處理 & 亞穩態處理1.問題產生現在的芯片(比如SOC,片上系統)集成度和復雜度越來越高,通
    發表于 02-17 06:34

    高性能鎖相回路(PLL)的單芯片時鐘IC Si5374和Si5375

    Si5374和Si5375是業界第一款集成了四個獨立高性能鎖相回路(PLL)的單芯片時鐘IC,它所提供的PLL集成是其它競爭解決方案的兩倍,抖動則低了40%。
    發表于 05-18 09:39 ?2305次閱讀
    高性能鎖相回路(PLL)的單<b class='flag-5'>芯片時鐘</b>IC Si5374和Si5375

    時鐘芯片有哪些,時鐘芯片作用是什么?

    目前,在市場所比較流行的時鐘芯片有很多種,并且被廣泛的使用。這些時鐘芯片具有著價格低廉、使用方便、功能強大的作用。那么時鐘
    發表于 10-18 15:18 ?4.1w次閱讀

    實時時鐘芯片有哪些_實時時鐘芯片選型介紹

    本文主要介紹了時鐘芯片有哪些、時鐘芯片結構與工作原理,其次介紹了時鐘芯片布線與
    發表于 01-29 08:44 ?3.9w次閱讀
    實時<b class='flag-5'>時鐘</b><b class='flag-5'>芯片</b>有哪些_實時<b class='flag-5'>時鐘</b><b class='flag-5'>芯片</b>選型介紹

    使用51單片機和DS1302芯片設計的LED時鐘的C語言程序和工程文件

    本文檔的主要內容詳細介紹的是使用51單片機和DS1302芯片設計的LED時鐘的C語言程序和工程文件免費下載。
    發表于 09-03 08:00 ?7次下載
    使用51單片機和DS1302<b class='flag-5'>芯片</b>設計的LED<b class='flag-5'>時鐘</b>的C語言程序和工程文件

    GD32107C芯片RTC時鐘源代碼

    GD32107C芯片-RTC時鐘源代碼
    發表于 10-08 14:57 ?1次下載

    芯片為什么要時鐘信號

    芯片為什么要時鐘信號 芯片是現代電子設備的核心組成部分,廣泛應用于計算機、手機、電視等各個領域。芯片內部有著復雜的電子元件和電路結構,這些元件和電路結構需要進行同步操作,以實現正確的工
    的頭像 發表于 09-01 15:38 ?1732次閱讀

    用FPGA的鎖相環PLL給外圍芯片提供時鐘

    用FPGA的鎖相環PLL給外圍芯片提供時鐘 FPGA鎖相環PLL(Phase-Locked Loop)是一種廣泛使用的時鐘管理電路,可以對輸入時鐘信號進行精確控制和提高穩定性,以滿足各
    的頭像 發表于 09-02 15:12 ?1702次閱讀

    芯片為什么要時鐘信號?

    芯片為什么需要時鐘信號? 在我們日常生活中,我們所使用的各種電子設備都需要一個時鐘信號來進行計時和同步,例如:手機、電腦、電視、汽車、機器人、智能家居等設備都需要時鐘信號。對于各種這些
    的頭像 發表于 09-15 16:28 ?1698次閱讀

    芯片時鐘不穩定會怎么樣?芯片內部時鐘紊亂的原因

    芯片時鐘不穩定會怎么樣?芯片內部時鐘紊亂的原因? 芯片是電子設備中最重要的組成部分之一,因為它們負責控制電子設備的整個操作,并保證設備的穩定運行。在
    的頭像 發表于 10-25 15:07 ?1431次閱讀

    FPGA為什么有時候還需要一個時鐘配置芯片提供時鐘呢?

    FPGA為什么有時候還需要一個時鐘配置芯片提供時鐘呢? FPGA(Field Programmable Gate Array)是一種可編程邏輯器件,可以根據不同需要編程,實現不同的功能。在FPGA
    的頭像 發表于 10-25 15:14 ?1217次閱讀

    Xilinx FPGA芯片內部時鐘和復位信號使用方法

    如果FPGA沒有外部時鐘源輸入,可以通過調用STARTUP原語,來使用FPGA芯片內部的時鐘和復位信號,Spartan-6系列內部時鐘源是50MHz,Artix-7、Kintex-7等
    的頭像 發表于 10-27 11:26 ?1168次閱讀
    Xilinx FPGA<b class='flag-5'>芯片</b>內部<b class='flag-5'>時鐘</b>和復位信號使用方法

    芯片為什么要時鐘信號 時鐘芯片的作用是什么?

    芯片為什么要時鐘信號 時鐘芯片的作用是什么? 時鐘信號在芯片中起著非常重要的作用。它是
    的頭像 發表于 01-29 18:11 ?1475次閱讀
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>