女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

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

異步FIFO用格雷碼的原因有哪些

FPGA設計論壇 ? 來源:博客園 ? 作者:子皿木公 ? 2021-08-04 14:05 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

異步FIFO通過比較讀寫地址進行滿空判斷,但是讀寫地址屬于不同的時鐘域,所以在比較之前需要先將讀寫地址進行同步處理,將寫地址同步到讀時鐘域再和讀地址比較進行FIFO空狀態(tài)判斷(同步后的寫地址一定是小于或者等于當前的寫地址,所以此時判斷FIFO為空不一定是真空,這樣更保守)。

將讀地址同步到寫時鐘域再和寫地址比較進行FIFO滿狀態(tài)判斷(同步后的讀地址一定是小于或者等于當前的讀地址,所以此時判斷FIFO為滿不一定是真空,這樣更保守),這樣可以保證FIFO的特性:FIFO空之后不能繼續(xù)讀取,F(xiàn)IFO滿之后不能繼續(xù)寫入。

大多數(shù)情形下,異步FIFO兩端的時鐘不是同頻的,或者讀快寫慢,或者讀慢寫快,這時候進行地址同步的時候,可能會有地址遺漏,以讀慢寫快為例,進行滿標志判斷的時候需要將讀地址同步到寫時鐘域,因為讀慢寫快,所以不會有讀地址遺漏,同步后的讀地址滯后當前讀地址,所以可能滿標志會提前產(chǎn)生。

進行空標志判斷的時候需要將寫地址同步到讀地址,因為讀慢寫快,所以當讀時鐘同步寫地址的時候,必然會漏掉一部分寫地址(寫時鐘快,寫地址隨寫時鐘翻轉(zhuǎn),直到滿標志出現(xiàn)為止),那到底讀時鐘會同步到哪個寫地址?

不必在意是哪一個,我們關(guān)注的是漏掉的地址會不會對FIFO的空標志產(chǎn)生影響。比如寫地址從0寫到10,期間讀時鐘域只同步到了2,5,7這三個寫地址,漏掉了其他地址。同步到7地址時,真實的寫地址可能已經(jīng)寫到10地址,相當于“在讀時鐘域還沒來得及覺察的情況下,寫時鐘域可能偷偷寫了數(shù)據(jù)到FIFO去”,這樣在比較讀寫地址的時候不會產(chǎn)生FIFO“空”讀操作。漏掉的地址也沒有對FIFO的邏輯操作產(chǎn)生影響。

我們可以對異步FIFO的地址采用binary編碼,這樣并不影響異步FIFO的功能,前提是讀寫地址同步時能夠保持正確。這種情況在功能仿真時完全正確,問題只有到時序仿真時才會遇到。毛刺可以說是異步電路的殺手,一個毛刺被觸發(fā)器采樣后會被放大,然后傳播,導致電路功能出錯。

binary編碼的地址總線在跳變時極易產(chǎn)生毛刺,因為binary編碼是多位跳變,在實現(xiàn)電路時不可能做到所有的地址總線等長,address bus skew必然存在,而且寫地址和讀地址分屬不同時鐘域,讀寫時鐘完全異步,這樣地址總線在進行同步過程中出錯不可避免,比如寫地址在從0111到1000轉(zhuǎn)換時4條地址線同時跳變,這樣讀時鐘在進行寫地址同步后得到的寫地址可能是0000-1111的某個值,這個完全不能確定,所以用這個同步后的寫地址進行FIFO空判斷的時候難免出錯。

這個時候gray碼體現(xiàn)了價值,一次只有一位數(shù)據(jù)發(fā)生變化,這樣在進行地址同步的時候,只有兩種情況:1.地址同步正確;2.地址同步出錯,但是只有1位出錯;

第一種正確的情況不需要分析,我們關(guān)注第二種,假設寫地址從000-》001,讀時鐘域同步出錯,寫地址為000-》000,也就是地址沒有跳變,但是用這個錯誤的寫地址去做空判斷不會出錯,最多是讓空標志在FIFO不是真正空的時候產(chǎn)生,而不會出現(xiàn)空讀的情形。

所以gray碼保證的是同步后的讀寫地址即使在出錯的情形下依然能夠保證FIFO功能的正確性,當然同步后的讀寫地址出錯總是存在的(因為時鐘異步,采樣點不確定)。

這里需要注意gray碼只是在相鄰兩次跳變之間才會出現(xiàn)只有1位數(shù)據(jù)不一致的情形,超過兩個周期則不一定,所有地址總線bus skew一定不能超過一個周期,否則可能出現(xiàn)gray碼多位數(shù)據(jù)跳變的情況,這個時候gray碼就失去了作用,因為這時候同步后的地址已經(jīng)不能保證只有1位跳變了。

另外需要將地址總線打兩拍,這是為了避免亞穩(wěn)態(tài)傳播,理論上將打兩拍不能消除亞穩(wěn)態(tài)現(xiàn)象,因為時鐘異步,亞穩(wěn)態(tài)不可避免,但是可以極大降低亞穩(wěn)態(tài)傳播的概率,低頻情況下甚至STA不需要分析這里的異步時序,因為寄存器都可以在一拍內(nèi)將亞穩(wěn)態(tài)消除,恢復到正常0/1態(tài)。而在高頻情況下則不一定,尤其在28nm工藝以下,需要檢查兩級觸發(fā)器的延遲,保證延遲低,這樣可以提高Tr,提高系統(tǒng)MTBF。

編輯:jq

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

    關(guān)注

    0

    文章

    20

    瀏覽量

    8571

原文標題:異步FIFO為什么用格雷碼

文章出處:【微信號:gh_9d70b445f494,微信公眾號:FPGA設計論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

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

    KT148A語音芯片發(fā)很難播放,將4腳對地一下再發(fā)正常,什么原因

    KT148A 這顆芯片, 我們上電后發(fā)很難觸發(fā)播放, 但鑷子將4pin PB0對地短接觸發(fā)一下,再發(fā)就很正常,這是什么原因?
    的頭像 發(fā)表于 07-02 17:12 ?178次閱讀
    KT148A語音芯片發(fā)<b class='flag-5'>碼</b>很難播放,將4腳對地一下再發(fā)正常,什么<b class='flag-5'>原因</b>?

    cy7c68013a異步slave fifo模式,外部mcu無法讀寫fifo怎么解決?

    cy7c68013a 異步slave fifo 模式,外部mcu無法讀寫fifo 上位機發(fā)送bulk數(shù)據(jù),flag標志是對的,SLCS也拉低了,是設置的低有效, 檢測到了flag不為空的標志后
    發(fā)表于 06-03 10:49

    希爾亮相2025深圳國際電池展,以高效方案賦能新能源測試全鏈路

    2025年5月15日至17日,第十七屆深圳國際電池技術(shù)展覽會(CIBF2025)在深圳國際會展中心隆重舉行。希爾GripSeal攜快速連接器、C9對接板總成及E10系列電測試連接器等核心產(chǎn)品亮相
    的頭像 發(fā)表于 05-20 09:57 ?404次閱讀
    <b class='flag-5'>格</b><b class='flag-5'>雷</b>希爾亮相2025深圳國際電池展,以高效方案賦能新能源測試全鏈路

    智多晶FIFO_Generator IP介紹

    FIFO_Generator是智多晶設計的一款通用型FIFO IP。當前發(fā)布的FIFO_Generator IP是2.0版本,相比之前的1.1版本主要新增了非等比輸入輸出數(shù)據(jù)位寬支持和異步
    的頭像 發(fā)表于 04-25 17:24 ?955次閱讀
    智多晶<b class='flag-5'>FIFO</b>_Generator IP介紹

    AXI接口FIFO簡介

    AXI接口FIFO是從Native接口FIFO派生而來的。AXI內(nèi)存映射接口提供了三種樣式:AXI4、AXI3和AXI4-Lite。除了Native接口FIFO支持的應用外,AXI FIFO
    的頭像 發(fā)表于 03-17 10:31 ?1060次閱讀
    AXI接口<b class='flag-5'>FIFO</b>簡介

    SDRAM控制器的設計——Sdram_Control.v代碼解析(異步FIFO讀寫模塊、讀寫SDRAM過程)

    前言 SDRAM控制器里面包含5個主要的模塊,分別是PLL模塊,異步FIFO 寫模塊,異步FIFO讀模塊,SDRAM接口控制模塊,SDRAM指令執(zhí)行模塊。 其中
    的頭像 發(fā)表于 03-04 10:49 ?1531次閱讀
    SDRAM控制器的設計——Sdram_Control.v代碼解析(<b class='flag-5'>異步</b><b class='flag-5'>FIFO</b>讀寫模塊、讀寫SDRAM過程)

    使用MSVC編譯器重新生成了DLP_SDK,執(zhí)行Prepare DLP LightCrafter 4500時,生成的兩張編碼圖片問題,為什么?

    最近完成使用MSVC編譯器重新生成了DLP_SDK,并且將TIDA-00254項目也在msvc編譯器下重新生成成功,但是在執(zhí)行Prepare DLP LightCrafter 4500時,生成的兩張編碼圖片
    發(fā)表于 02-28 06:37

    dlp4500模式序列投射,當設置pattern exposure:8333,pattern period為9000時其投射出來的圖案就亂了,為什么?

    dlp4500模式序列投射,但是當設置pattern exposure:8333,pattern period為9000時其投射出來的圖案就亂了,我看了一下他的圖片連接時間image load timing 每一張都大
    發(fā)表于 02-26 07:22

    運行LCr4500 3d程序時報錯怎么解決?

    ,我想用進行3D重建,這個的固件直接生成好的demo嗎,還是說要在opencv里自己
    發(fā)表于 02-26 06:13

    使用DLPC350投射時,當切換pattern頻率&gt;10frame/s,出現(xiàn)了圖像重疊的問題怎么解決?

    你好,我在使用DLPC350 投射(8bit深度)時,當 切換pattern頻率 &gt; 10frame/s,出現(xiàn)了圖像錯誤或者說 圖像重疊的問題: 從圖像看,像
    發(fā)表于 02-21 16:03

    如何保證DLP4500與巴斯勒相機同步?

    連接了相機觸發(fā)線和投影儀j14引腳的trig1的接線。投影儀燒錄了8位相移和圖共19張,曝光時間和周期設置為10000us和11000us,巴斯勒相機為220幀的,相機曝光設置為
    發(fā)表于 02-17 08:07

    DAC3482內(nèi)部的FIFO作用是什么?

    我現(xiàn)在正在使用DAC3482芯片,想請教一下其內(nèi)部的FIFO作用是什么? FIFO讀寫指針分別由DATACLK和DACCLK(或其分頻)來驅(qū)動,用于“緩沖”的作用,我兩種理解: 1.只能緩沖讀寫
    發(fā)表于 12-23 07:06

    FIFO Generator的Xilinx官方手冊

    FIFO作為FPGA崗位求職過程中最常被問到的基礎知識點,也是項目中最常被使用到的IP,其意義是非常重要的。本文基于對FIFO Generator的Xilinx官方手冊的閱讀與總結(jié),匯總主要知識點
    的頭像 發(fā)表于 11-12 10:46 ?1722次閱讀
    <b class='flag-5'>FIFO</b> Generator的Xilinx官方手冊

    什么是工業(yè)設備,工業(yè)掃什么優(yōu)勢

    工業(yè)設備概述工業(yè)設備,通常指的是工業(yè)掃器,是一種高性能的一維條碼和二維條碼掃描設備,廣泛應用于工業(yè)生產(chǎn)、倉儲等場景中。相較于普
    的頭像 發(fā)表于 11-07 14:44 ?677次閱讀
    什么是工業(yè)<b class='flag-5'>用</b>掃<b class='flag-5'>碼</b>設備,工業(yè)掃<b class='flag-5'>碼</b>器<b class='flag-5'>有</b>什么優(yōu)勢

    總線異步通信幾種聯(lián)絡類型

    的靈活性和擴展性。 在總線異步通信中,多種聯(lián)絡類型,每種類型都有其特定的應用場景和特點。以下是對這些聯(lián)絡類型的介紹: 單工通信 單工通信是一種最基本的通信方式,它只允許數(shù)據(jù)在一個方向上傳輸。在這種通信方式中,
    的頭像 發(fā)表于 07-23 09:21 ?948次閱讀