91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

揭秘FPGA跨時(shí)鐘域處理的三大方法

454398 ? 來(lái)源:alpha007 ? 作者:alpha007 ? 2022-12-05 16:41 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

時(shí)鐘域處理是 FPGA 設(shè)計(jì)中經(jīng)常遇到的問(wèn)題,而如何處理好跨時(shí)鐘域間的數(shù)據(jù),可以說(shuō)是每個(gè) FPGA 初學(xué)者的必修課。如果是還在校生,跨時(shí)鐘域處理也是面試中經(jīng)常常被問(wèn)到的一個(gè)問(wèn)題。

這里主要介紹三種跨時(shí)鐘域處理的方法,這三種方法可以說(shuō)是 FPGA 界最常用也最實(shí)用的方法,這三種方法包含了單 bit 和多 bit 數(shù)據(jù)的跨時(shí)鐘域處理,學(xué)會(huì)這三招之后,對(duì)于 FPGA 相關(guān)的跨時(shí)鐘域數(shù)據(jù)處理便可以手到擒來(lái)。

這里介紹的三種方法跨時(shí)鐘域處理方法如下:

打兩拍;

異步雙口 RAM;

格雷碼轉(zhuǎn)換。

01

方法一:打兩拍

大家很清楚,處理跨時(shí)鐘域的數(shù)據(jù)有單 bit 和多 bit 之分,而打兩拍的方式常見(jiàn)于處理單 bit 數(shù)據(jù)的跨時(shí)鐘域問(wèn)題。

打兩拍的方式,其實(shí)說(shuō)白了,就是定義兩級(jí)寄存器,對(duì)輸入的數(shù)據(jù)進(jìn)行延拍。

應(yīng)該很多人都會(huì)問(wèn),為什么是打兩拍呢,打一拍、打三拍行不行呢?

先簡(jiǎn)單說(shuō)下兩級(jí)寄存器的原理:兩級(jí)寄存是一級(jí)寄存的平方,兩級(jí)并不能完全消除亞穩(wěn)態(tài)危害,但是提高了可靠性減少其發(fā)生概率??偟膩?lái)講,就是一級(jí)概率很大,三級(jí)改善不大。

data 是時(shí)鐘域 1 的數(shù)據(jù),需要傳到時(shí)鐘域 2(clk)進(jìn)行處理,寄存器 1 和寄存器 2 使用的時(shí)鐘都為 clk。假設(shè)在 clk 的上升沿正好采到 data 的跳變沿(從 0 變 1 的上升沿,實(shí)際上的數(shù)據(jù)跳變不可能是瞬時(shí)的,所以有短暫的跳變時(shí)間),那這時(shí)作為寄存器 1 的輸入到底應(yīng)該是 0 還是 1 呢?這是一個(gè)不確定的問(wèn)題。所以 Q1 的值也不能確定,但至少可以保證,在 clk 的下一個(gè)上升沿,Q1 基本可以滿足第二級(jí)寄存器的保持時(shí)間和建立時(shí)間要求,出現(xiàn)亞穩(wěn)態(tài)的概率得到了很大的改善。

如果再加上第三級(jí)寄存器,由于第二級(jí)寄存器對(duì)于亞穩(wěn)態(tài)的處理已經(jīng)起到了很大的改善作用,第三級(jí)寄存器在很大程度上可以說(shuō)只是對(duì)于第二級(jí)寄存器的延拍,所以意義是不大的。

02

方法二:異步雙口 RAM

處理多 bit 數(shù)據(jù)的跨時(shí)鐘域,一般采用異步雙口 RAM。假設(shè)我們現(xiàn)在有一個(gè)信號(hào)采集平臺(tái),ADC 芯片提供源同步時(shí)鐘 60MHz,ADC 芯片輸出的數(shù)據(jù)在 60MHz 的時(shí)鐘上升沿變化,而 FPGA 內(nèi)部需要使用 100MHz 的時(shí)鐘來(lái)處理 ADC 采集到的數(shù)據(jù)(多 bit)。在這種類(lèi)似的場(chǎng)景中,我們便可以使用異步雙口 RAM 來(lái)做跨時(shí)鐘域處理。

先利用 ADC 芯片提供的 60MHz 時(shí)鐘將 ADC 輸出的數(shù)據(jù)寫(xiě)入異步雙口 RAM,然后使用 100MHz 的時(shí)鐘從 RAM 中讀出。對(duì)于使用異步雙口 RAM 來(lái)處理多 bit 數(shù)據(jù)的跨時(shí)鐘域,相信大家還是可以理解的。當(dāng)然,在能使用異步雙口 RAM 來(lái)處理跨時(shí)鐘域的場(chǎng)景中,也可以使用異步 FIFO 來(lái)達(dá)到同樣的目的。

03

方法三:格雷碼轉(zhuǎn)換

我們依然繼續(xù)使用介紹第二種方法中用到的 ADC 例子,將 ADC 采樣的數(shù)據(jù)寫(xiě)入 RAM 時(shí),需要產(chǎn)生 RAM 的寫(xiě)地址,但我們讀出 RAM 中的數(shù)據(jù)時(shí),肯定不是一上電就直接讀取,而是要等 RAM 中有 ADC 的數(shù)據(jù)之后才去讀 RAM。這就需要 100MHz 的時(shí)鐘對(duì) RAM 的寫(xiě)地址進(jìn)行判斷,當(dāng)寫(xiě)地址大于某個(gè)值之后再去讀取 RAM。

在這個(gè)場(chǎng)景中,其實(shí)很多人都是使用直接用 100MHz 的時(shí)鐘與 RAM 的寫(xiě)地址進(jìn)行打兩拍的方式,但 RAM 的寫(xiě)地址屬于多 bit,如果單純只是打兩拍,那不一定能確保寫(xiě)地址數(shù)據(jù)的每一個(gè) bit 在 100MHz 的時(shí)鐘域變化都是同步的,肯定有一個(gè)先后順序。如果在低速的環(huán)境中不一定會(huì)出錯(cuò),在高速的環(huán)境下就不一定能保證了。所以更為妥當(dāng)?shù)囊环N處理方法就是使用格雷碼轉(zhuǎn)換。

對(duì)于格雷碼,相鄰的兩個(gè)數(shù)間只有一個(gè) bit 是不一樣的(格雷碼,在本文中不作詳細(xì)介紹),如果先將 RAM 的寫(xiě)地址轉(zhuǎn)為格雷碼,然后再將寫(xiě)地址的格雷碼進(jìn)行打兩拍,之后再在 RAM 的讀時(shí)鐘域?qū)⒏窭状a恢復(fù)成 10 進(jìn)制。這種處理就相當(dāng)于對(duì)單 bit 數(shù)據(jù)的跨時(shí)鐘域處理了。

對(duì)于格雷碼與十進(jìn)制互換的代碼,僅提供給大家作參考:

代碼使用的是函數(shù)的形式,方便調(diào)用,op 表示編碼或者譯碼,WADDRWIDTH 和 RADDRWIDTH 表示位寬。

審核編輯黃昊宇

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

    關(guān)注

    1660

    文章

    22415

    瀏覽量

    636523
  • 時(shí)鐘域
    +關(guān)注

    關(guān)注

    0

    文章

    53

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    Xilinx FPGA中IDELAYCTRL參考時(shí)鐘控制模塊的使用

    IDELAYCTRL 是 Xilinx FPGA(特別是支持高速 I/O 的系列,如 Virtex-5/6/7、Kintex-7、Artix-7、Spartan-6/7 等)中用于管理和校準(zhǔn)輸入延遲模塊(IDELAYE2/IDELAYE3)的必須存在的參考時(shí)鐘控制模塊。
    的頭像 發(fā)表于 02-26 14:41 ?3259次閱讀

    揭秘LMK1D210x:高性能LVDS時(shí)鐘緩沖器的卓越之選

    揭秘LMK1D210x:高性能LVDS時(shí)鐘緩沖器的卓越之選 在電子工程領(lǐng)域,時(shí)鐘緩沖器作為信號(hào)處理與傳輸?shù)年P(guān)鍵角色,其性能直接影響著整個(gè)系統(tǒng)的穩(wěn)定性與可靠性。今天,就帶大家深入了解TI
    的頭像 發(fā)表于 02-06 17:20 ?1536次閱讀

    什么是位

    有些信息在存儲(chǔ)時(shí),并不需要占用一個(gè)完整的字節(jié), 而只需占幾個(gè)或一個(gè)二進(jìn)制位。 例如在存放一個(gè)開(kāi)關(guān)量時(shí),只有0和1 兩種狀態(tài), 用一位二進(jìn)位即可。為了節(jié)省存儲(chǔ)空間,并使處理簡(jiǎn)便,C語(yǔ)言又提供了一種
    發(fā)表于 12-15 08:07

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

    使用低頻率的高速時(shí)鐘 HSI、HSE 或低速時(shí)鐘 LSI、LSE 通過(guò)編程預(yù)分頻寄存器,降低 SYSCLK、HCLK、PCLK 的頻率 - 設(shè)置 SYSCTRL_CR0 寄存器的 SYSCLK 位
    發(fā)表于 12-10 07:34

    數(shù)字IC/FPGA設(shè)計(jì)中的時(shí)序優(yōu)化方法

    在數(shù)字IC/FPGA設(shè)計(jì)的過(guò)程中,對(duì)PPA的優(yōu)化是無(wú)處不在的,也是芯片設(shè)計(jì)工程師的使命所在。此節(jié)主要將介紹performance性能的優(yōu)化,如何對(duì)時(shí)序路徑進(jìn)行優(yōu)化,提高工作時(shí)鐘頻率。
    的頭像 發(fā)表于 12-09 10:33 ?3287次閱讀
    數(shù)字IC/<b class='flag-5'>FPGA</b>設(shè)計(jì)中的時(shí)序優(yōu)化<b class='flag-5'>方法</b>

    解讀

    C語(yǔ)言除了開(kāi)發(fā)桌面應(yīng)用等,還有一個(gè)很重要的領(lǐng)域,那就是「單片機(jī)」開(kāi)發(fā)。單片機(jī)上的硬件資源十分有限,容不得我們?nèi)ニ烈鈸]灑。單片機(jī)使一種集成電路芯片,使采用超大規(guī)模集成電路技術(shù)把具有數(shù)據(jù)處理能力的CPU
    發(fā)表于 12-05 06:45

    航盛電子搭載QNX技術(shù)的墨子融合平臺(tái)正式量產(chǎn)

    近日,航盛創(chuàng)新引領(lǐng)行業(yè)的單芯片級(jí)艙駕融合解決方案--墨子融合平臺(tái)實(shí)現(xiàn)全球量產(chǎn)首發(fā),并將配套國(guó)內(nèi)某頭部合資車(chē)企。該平臺(tái)搭載QNX Hypervisor for Safety技術(shù),具備更強(qiáng)的穩(wěn)定性、靈活性和安全性,實(shí)現(xiàn)車(chē)規(guī)級(jí)設(shè)計(jì)與功能安全、網(wǎng)絡(luò)信息安全要求,為消費(fèi)者帶來(lái)艙
    的頭像 發(fā)表于 12-04 15:19 ?506次閱讀

    黑芝麻智能武當(dāng)C1200家族作為計(jì)算芯片的核心突破

    本文圍繞汽車(chē)電子電氣架構(gòu)(EEA)向中央計(jì)算演進(jìn)的技術(shù)需求,分析分布式、集中架構(gòu)的碎片化、間壁壘等痛點(diǎn),重點(diǎn)闡述武當(dāng) C1200 家族作為計(jì)算芯片的核心突破:7nm 異構(gòu)融合架
    的頭像 發(fā)表于 11-20 16:38 ?1508次閱讀

    基于FPGA的高效內(nèi)存到串行數(shù)據(jù)傳輸模塊設(shè)計(jì)

    本文介紹了一個(gè)基于FPGA的內(nèi)存到串行數(shù)據(jù)傳輸模塊,該模塊設(shè)計(jì)用來(lái)高效地處理存儲(chǔ)器中的數(shù)據(jù)并傳輸至串行接口。項(xiàng)目中自定義的“datamover_mm2s_fpga_”方案利用異步FIFO結(jié)構(gòu)來(lái)解決不同
    的頭像 發(fā)表于 11-12 14:31 ?4345次閱讀
    基于<b class='flag-5'>FPGA</b>的高效內(nèi)存到串行數(shù)據(jù)傳輸模塊設(shè)計(jì)

    ”圖像視頻監(jiān)測(cè)裝置:為輸電線路安全保駕護(hù)航

    輸電線路“”指的是跨越高速鐵路、高速公路和重要輸電通道的架空輸電線路區(qū)段。其中,重要輸電通道由若干重要輸電線路組成。 “”的監(jiān)測(cè)難點(diǎn): 1.環(huán)境復(fù)雜多樣:“
    的頭像 發(fā)表于 10-29 09:39 ?327次閱讀

    E203軟核提高CPU時(shí)鐘頻率方法

    本文將分享我們團(tuán)隊(duì)提高E203軟核主頻的辦法。 查閱芯來(lái)科技官方出版的《手把手教你設(shè)計(jì)CPU——RISC-V處理器篇》教材,我們發(fā)現(xiàn),原本設(shè)計(jì)的E203主時(shí)鐘應(yīng)該是100MHZ
    發(fā)表于 10-29 06:19

    手機(jī)板 layout 走線分割問(wèn)題

    的layout,比如手機(jī)、筆記本。信號(hào)的分割處理已經(jīng)不在是不能分割了。 在這類(lèi)產(chǎn)品中成本是很重要的,所以層數(shù)都是能少就少。 這種情況下,如何分辨那些信號(hào)是可以分割的,
    發(fā)表于 09-16 14:56

    黑芝麻智能時(shí)間同步技術(shù):消除多計(jì)算單元的時(shí)鐘信任鴻溝

    上海2025年7月21日 /美通社/ -- 本文圍繞時(shí)間同步技術(shù)展開(kāi),作為智能汽車(chē) "感知-決策-執(zhí)行 -交互" 全鏈路的時(shí)間基準(zhǔn),文章介紹了 PTP、gPTP、CAN 等主流同步技術(shù)及特點(diǎn)
    的頭像 發(fā)表于 07-22 09:17 ?596次閱讀
    黑芝麻智能<b class='flag-5'>跨</b><b class='flag-5'>域</b>時(shí)間同步技術(shù):消除多<b class='flag-5'>域</b>計(jì)算單元的<b class='flag-5'>時(shí)鐘</b>信任鴻溝

    比亞迪 · 超級(jí)e平臺(tái) · 技術(shù)方案的全面揭秘 | 第曲: 30000轉(zhuǎn)驅(qū)動(dòng)電機(jī) · 12項(xiàng)核心技術(shù)揭秘

    比亞迪 · 超級(jí)e平臺(tái) · 技術(shù)方案的全面揭秘 | 第曲: 30000轉(zhuǎn)驅(qū)動(dòng)電機(jī) · 12項(xiàng)核心技術(shù)揭秘
    的頭像 發(fā)表于 06-08 07:20 ?2303次閱讀
    比亞迪 · 超級(jí)e平臺(tái) · 技術(shù)方案的全面<b class='flag-5'>揭秘</b> | 第<b class='flag-5'>三</b>曲: 30000轉(zhuǎn)驅(qū)動(dòng)電機(jī) · 12項(xiàng)核心技術(shù)<b class='flag-5'>揭秘</b>

    異步時(shí)鐘處理方法大全

    方法只用于慢到快時(shí)鐘的1bit信號(hào)傳遞。在Xilinx器件中,可以使用(* ASYNC_REG = "TRUE" *)標(biāo)記,將兩個(gè)寄存器盡量靠近綜合,降低 亞穩(wěn)態(tài)因?qū)Ь€延遲太大而傳播到第二個(gè)寄存器的可能性。
    的頭像 發(fā)表于 05-14 15:33 ?1537次閱讀
    <b class='flag-5'>跨</b>異步<b class='flag-5'>時(shí)鐘</b><b class='flag-5'>域</b><b class='flag-5'>處理</b><b class='flag-5'>方法</b>大全