色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

常見的流控機制之fifo與帶外流控

sakobpqhz6 ? 來源:IC學習 ? 2023-07-26 12:40 ? 次閱讀

在數據處理模塊中,我們經常會涉及數據流控反壓。什么是流控呢?簡單來說就是控制數據流停止發送。常見的流控機制分為帶內流控和帶外流控。帶外流控流控比較簡單,就是需要一根額外的信號線來表示流控信息,如ready,1表示可以發送數據,0表示不可以發送數據.如果取名為fc(flowcontrol),則0表示可以發送數據,1表示停止發送數據。帶內流控機制中,流控信息是通過數據通路傳輸的,沒有額外的流控信號線。帶內流控在接口模塊非常常見,例如以太MAC的pause幀和PCIe的信用量機制。流控系列文章分為4篇,今天是第一篇。首先將最簡單的流控機制,fifo與帶外流控。

1、什么是FIFO

FIFO(first in first out)是一種用寄存器reg或者RAM實現的存儲結構,常用于存儲數據通道中的數據流,采用先入先出的數據,當下游模塊無法及時處理上流模塊輸出的數據時,此時需要用FIFO暫存數據,防止數據丟失。

2、FIFO的流水反壓機制

每一個fifo都有一個將滿閾值cfg_afull_value(名稱隨意,看得懂就行),通常由寄存器配置模塊cfg_csr提供。當fifo內的數據量達到或超過cfg_afull_value時,將滿信號afull從0跳變成1,即fc信號從0跳變1。上游發送模塊感知到fc為1時,則停止發送數據,有可能是1~2周期就停止,有可能是一個整包發送完才停止,根據代碼實現才能判斷。在fc跳變成1后,fifo需要能夠緩存路徑上的data以及上游發送模塊停止發流之前發出的所有data。這就是fifo的流控機制。

894b9626-2b6c-11ee-a368-dac502259ad0.png

圖1:fifo流控示意圖

3、FIFO深度如何設置

如圖2所示,數據data和有效信號vld從模塊A產生,經過N拍延時,輸入到FIFO,FIFO產生將滿信號afull,經過M拍延時反饋到模塊A,假設模塊A接收到afull=1時,立即停止發送數據。假設FIFO深度為fifo_depth,每拍為一個時鐘周期。

897db4b2-2b6c-11ee-a368-dac502259ad0.png

圖2:fifo深度計算示意圖

1為了保證FIFO不發生溢出,請問將滿閾值cfg_afull_value至少應該設置成多少?

2為了充分發揮FIFO的性能,FIFO深度depth應該為多少?

FIFO將滿閾值如何設置:

當FIFO中的數據為cfg_afull_value時,產生afull=1,

Afull=1經過M拍到達模塊A,此時FIFO中應該有(cfg_afull_value+M)個數據。

Afull=1到達模塊A時,模塊A立即停止發送數據,此時電路中還存在N拍數據將陸續送到FIFO中,所以最后FIFO中應該為(cfg_afull_value+M+N)個數據,

為了保證數據不會溢出,所以應該滿足公式fifo_depth>= cfg_afull_value+M+N,因此,將滿閾值應該至少為depth_fifo-(M+N)

FIFO深度depth應該為多少?

若fifo_depth過小,afull有效之后,fifo中存儲的數據將很快被下游數據讀取,而新的數據又無法及時到達FIFO,因此會造成流水氣泡,影響電路性能。

假設M=5 ,N=10,假設fifo_depth=20,則cfg_afull_value=5, 所以在T時刻,fifo中存了5個數據后afull=1會有效,在之后的15個周期內會陸續存入15個數據。假設下游模塊B每個周期讀取FIFO中的一個數據,因為當FIFO內的數據data_cnt小于5時,afull才會無效(為0),因此在T+15和T+30的時刻內,下游電路B只能讀5個數據,因此會造成數據斷流,影響電路性能。

899b3bfe-2b6c-11ee-a368-dac502259ad0.jpg

圖3:流控信號時序圖

為保證電路性能,在T+15到T+30這個時間段內應該有15個數據可讀,因此cfg_afull_value應該不小于15(M+N)。所以FIFO深度應該不小于2*(M+N)

結束語

其實FIFO的流控方式有個明顯的弊端,一旦反壓路徑M(見圖2)過大,會明顯浪費資源。

編輯:黃飛

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

    關注

    31

    文章

    5336

    瀏覽量

    120232
  • RAM
    RAM
    +關注

    關注

    8

    文章

    1368

    瀏覽量

    114643
  • fifo
    +關注

    關注

    3

    文章

    387

    瀏覽量

    43649
  • Mac
    Mac
    +關注

    關注

    0

    文章

    1104

    瀏覽量

    51458

原文標題:4種常見的流控機制(一) FIFO與流控

文章出處:【微信號:IC學習,微信公眾號:IC學習】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    FIFO隊列原理簡述

    FIFO是隊列機制中最簡單的,每個接口上只有一個FIFO隊列,表面上看FIFO隊列并沒有提供什么QoS保證,甚至很多人認為FIFO嚴格意義上
    發表于 07-10 09:22 ?1656次閱讀

    轎車外流場的數值模擬

    轎車外流場的數值模擬本論文以某轎車為例,車身數據取自實際產品設計數據庫,利用目前通用的CAD軟件UG,構建本轎車的1:5模型,構件幾何模型,導入STAR-CD前處理器時生成轎車表面網格,利用網格自動
    發表于 03-20 11:18

    鏈接后的RX郵箱的FIFO機制是什么意思?

    你好,有人能解釋一下鏈接后的RX郵箱的FIFO機制嗎?我已經注意到,當X是FIFOSIZE時,每X消息只有一個中斷。這是否意味著我必須在中斷中同時處理所有消息,當下一個中斷發生時,完整
    發表于 08-15 14:20

    鏈接CAN RX郵箱的FIFO機制怎么使用?

    你好,我聯系在一起,可以接收郵箱能夠使用它背后的FIFO機制。我已經了解基本的原則,像在這里所說的:https://secure.cypress.com/?ID = 4 &;擺脫
    發表于 08-28 10:41

    FIFO的具體設計和常見問題

    FIFO的具體設計和常見問題
    發表于 01-06 06:04

    什么是FIFO的OV7670

    什么是FIFO的OV7670?為什么要帶FIFO呢?
    發表于 01-19 06:41

    控制機制,控制機制原理是什么?

    控制機制,控制機制原理是什么? 可以將網絡服務分為最優的無連接服務或可靠的面向連接的服務。在Internet協議集中,IP屬于最優服
    發表于 03-20 15:22 ?633次閱讀

    Proteus程序AMP應用UART0_FIFO

    Proteus程序AMP應用UART0_FIFO
    發表于 01-18 17:44 ?4次下載

    可重構密碼處理器片外流訪存系統的設計

    可重構密碼處理器片外流訪存系統的設計_朱玉飛
    發表于 01-07 20:49 ?0次下載

    FPGAFIFO練習3:設計思路

    根據FIFO工作的時鐘域,可以將FIFO分為同步FIFO和異步FIFO。同步FIFO是指讀時鐘和寫時鐘為同一個時鐘。在時鐘沿來臨時同時發生讀
    的頭像 發表于 11-29 07:08 ?1874次閱讀

    FPGAFIFO的原理概述

    FIFO隊列不對報文進行分類,當報文進入接口的速度大于接口能發送的速度時,FIFO按報文到達接口的先后順序讓報文進入隊列,同時,FIFO在隊列的出口讓報文按進隊的順序出隊,先進的報文將先出隊,后進的報文將后出隊。
    的頭像 發表于 11-29 07:04 ?4652次閱讀

    同步FIFOVerilog實現

    FIFO的分類根均FIFO工作的時鐘域,可以將FIFO分為同步FIFO和異步FIFO。同步FIFO
    的頭像 發表于 11-01 09:57 ?1977次閱讀

    異步FIFOVerilog代碼實現案例

    同步FIFO的意思是說FIFO的讀寫時鐘是同一個時鐘,不同于異步FIFO,異步FIFO的讀寫時鐘是完全異步的。同步FIFO的對外接口包括時鐘
    發表于 11-01 09:58 ?1662次閱讀

    保護是由什么組成 過保護與其它保護機制的區別

    保護和過載保護是電路中常見的兩種保護機制,它們的目標都是防止電流超過設定值而引發設備損壞或安全風險。盡管它們的目標相似,但針對的情況略有不同。
    的頭像 發表于 07-12 16:05 ?2672次閱讀

    XILINX FPGA IPFIFO Generator例化仿真

    上文XILINX FPGA IPFIFO對XILINX FIFO Generator IP的特性和內部處理流程進行了簡要的說明,本文通過實際例子對該IP的使用進行進一步的說明。本例子例化一個讀數
    的頭像 發表于 09-07 18:31 ?1896次閱讀
    XILINX FPGA IP<b class='flag-5'>之</b><b class='flag-5'>FIFO</b> Generator例化仿真
    主站蜘蛛池模板: 一本道的mv中文字幕| 成人毛片免费观看视频大全| 日日噜噜噜夜夜爽爽狠狠图片| 久久热免费视频| 国产这里有精品| 久久久久久91香蕉国产| 国产亚洲欧美ai在线看片| 草柳最新地址| XXXchinese国产HD| 超碰在线视频97| 国产精品青青草原app大全| 国产精品99久久久精品无码| 久久黄色网| 舔1V1高H糙汉| 4455永久在线毛片观看| 国产精品爽爽久久久久久蜜桃网站| 啦啦啦 中国 日本 高清 在线| 少妇第一次交换| 97在线国内自拍视频| 国产自拍视频在线一区| 全免费A敌肛交毛片免费懂色AV| 亚洲欧美一区二区成人片| 大香伊蕉在人线国产最新| 快播最新电影网站| 亚洲精品123区| 俄罗斯人xxx| 免费视频网站嗯啊轻点| 亚洲精品午夜VA久久成人| 二级毛片在线观看| 免费夜里18款禁用软粉色| 亚洲色噜噜狠狠站欲八| 国产成人无码免费精品果冻传媒| 蜜臀AV浪潮99国产麻豆| 亚洲欧美中文日韩v在线| 国产成人精品三级在线| 欧美国产精品久久久乱码| 伊人网伊人网| 国模玲玲自拍337p| 午夜看片网| 无码国产成人午夜在线观看不卡| 55夜色66夜亚洲精品播放|