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)不再提示

如何簡(jiǎn)單快速地計(jì)算FIFO的最小深度

C29F_xilinx_inc ? 來(lái)源:賽靈思 ? 作者:賽靈思 ? 2022-02-26 17:41 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1、為什么需要計(jì)算FIFO的最小深度

因?yàn)楣P試常考。

開(kāi)玩笑的。首先我們來(lái)想下FIFO有哪些作用?我大概總結(jié)下FIFO的幾個(gè)重要作用:

解決不同時(shí)鐘域傳輸?shù)膯?wèn)題

用來(lái)緩存一定量的數(shù)據(jù)

解決位寬不匹配的問(wèn)題

FIFO最常被用來(lái)解決寫(xiě)、讀不匹配的問(wèn)題(時(shí)鐘、位寬),總結(jié)下來(lái),其實(shí)FIFO最大的作用就是緩沖。既然是緩沖,那么就要知道這個(gè)緩存的空間到底需要多大。接下來(lái)的討論,都建立在滿足一次FIFO突發(fā)傳輸?shù)幕A(chǔ)上。連續(xù)無(wú)止境的突發(fā)不考慮。比如寫(xiě)時(shí)鐘100M,讀時(shí)鐘50M,無(wú)限制的讀寫(xiě),那么FIFO的深度只能是無(wú)窮大了,因?yàn)閷?xiě)比讀快,F(xiàn)IFO一定永遠(yuǎn)都不夠用。所以在實(shí)際運(yùn)用中,不會(huì)存在無(wú)限制的對(duì)FIFO進(jìn)行讀寫(xiě)。如果這樣的話,F(xiàn)IFO就變成了一個(gè)“存儲(chǔ)器件”,而不是一個(gè)“緩存器件”,對(duì)于FIFO的這種用法無(wú)疑是毫無(wú)意義的。

2、實(shí)例

2.1、寫(xiě)時(shí)鐘快、讀時(shí)鐘慢

2.1.1、無(wú)間斷的寫(xiě)、讀操作

條件:

寫(xiě)入時(shí)鐘頻率 fA = 80MHz;讀取時(shí)鐘頻率 fB = 50MHz. 一次寫(xiě)入的突發(fā)長(zhǎng)度120

讀寫(xiě)操作不間斷

解法:

寫(xiě)入一個(gè)數(shù)據(jù)需要的時(shí)間:1/80MHz = 12.5ns;讀取一個(gè)數(shù)據(jù)需要的時(shí)間:1/50MHz = 20ns

寫(xiě)入120個(gè)數(shù)據(jù),需要的時(shí)間:120 * 12.5ns = 1500ns

在寫(xiě)入全部數(shù)據(jù)所需的時(shí)間(1500ns)內(nèi),可以讀取出的數(shù)據(jù)數(shù):1500ns / 20ns = 75

所以一次突發(fā),一共需要寫(xiě)入120數(shù)據(jù),在這段時(shí)間內(nèi)可以被讀出75數(shù)據(jù),剩下的數(shù)據(jù)就是需要使用FIFO來(lái)緩存,所以FIFO的最小深度為120 - 75 = 45

2.1.2、間斷的寫(xiě)、讀操作

條件:

寫(xiě)入時(shí)鐘頻率 fA = 80MHz;讀取時(shí)鐘頻率 fB = 50MHz. 一次寫(xiě)入的突發(fā)長(zhǎng)度120。

每?jī)纱螌?xiě)入操作間隔1個(gè)寫(xiě)時(shí)鐘周期,每?jī)纱巫x取操作間隔3個(gè)讀時(shí)鐘周期。

解法:

每?jī)纱螌?xiě)入操作間隔1個(gè)寫(xiě)時(shí)鐘周期,等于每?jī)蓚€(gè)寫(xiě)時(shí)鐘周期才寫(xiě)入1個(gè)數(shù)據(jù),即等價(jià)的寫(xiě)入時(shí)鐘頻率 fA'=40MHz,寫(xiě)入一個(gè)數(shù)據(jù)需要的時(shí)間:1/40MHz = 25ns

每?jī)纱巫x取操作間隔3個(gè)讀時(shí)鐘周期,等于每4個(gè)寫(xiě)時(shí)鐘周期才讀取1個(gè)數(shù)據(jù),即等價(jià)的讀取時(shí)鐘頻率 fB'=12.5MHz,讀取一個(gè)數(shù)據(jù)需要的時(shí)間:1/12.5MHz = 80ns

寫(xiě)入120個(gè)數(shù)據(jù),需要的時(shí)間:120 * 25ns = 3000ns

在寫(xiě)入全部數(shù)據(jù)所需的時(shí)間(3000ns)內(nèi),可以讀取出的數(shù)據(jù)數(shù):3000ns / 80ns = 37.5 ≈ 37(要向下取整,不然有1個(gè)數(shù)據(jù)會(huì)丟)

所以一次突發(fā),一共需要寫(xiě)入120數(shù)據(jù),在這段時(shí)間內(nèi)可以被讀出37數(shù)據(jù),剩下的數(shù)據(jù)就是需要使用FIFO來(lái)緩存,所以FIFO的最小深度為120 - 37 = 83

2.2、寫(xiě)時(shí)鐘慢、讀時(shí)鐘快

2.2.1、無(wú)間斷的寫(xiě)、讀操作

條件:

寫(xiě)入時(shí)鐘頻率 fA = 30MHz;讀取時(shí)鐘頻率 fB = 50MHz. 一次寫(xiě)入的突發(fā)長(zhǎng)度120

寫(xiě)、讀操作無(wú)間斷

解法:

因?yàn)樽x操作的頻率快于寫(xiě)操作的頻率,所以數(shù)據(jù)一旦被寫(xiě)入FIFO后很快就會(huì)被讀走,所以FIFO的最小深度為1即可

2.2.2、間斷的寫(xiě)、讀操作

條件:

寫(xiě)入時(shí)鐘頻率 fA = 30MHz;讀取時(shí)鐘頻率 fB = 50MHz. 一次寫(xiě)入的突發(fā)長(zhǎng)度120。

每?jī)纱螌?xiě)入操作間隔1個(gè)寫(xiě)時(shí)鐘周期,每?jī)纱巫x取操作間隔3個(gè)讀時(shí)鐘周期。

解法:

每?jī)纱螌?xiě)入操作間隔1個(gè)寫(xiě)時(shí)鐘周期,等于每?jī)蓚€(gè)寫(xiě)時(shí)鐘周期才寫(xiě)入1個(gè)數(shù)據(jù),即等價(jià)的寫(xiě)入時(shí)鐘頻率 fA'=15MHz,寫(xiě)入一個(gè)數(shù)據(jù)需要的時(shí)間:1/15MHz = 66.667ns

每?jī)纱巫x取操作間隔3個(gè)讀時(shí)鐘周期,等于每4個(gè)寫(xiě)時(shí)鐘周期才讀取1個(gè)數(shù)據(jù),即等價(jià)的讀取時(shí)鐘頻率 fB'=12.5MHz,讀取一個(gè)數(shù)據(jù)需要的時(shí)間:1/12.5MHz = 80ns

寫(xiě)入120個(gè)數(shù)據(jù),需要的時(shí)間:120 * 66.667ns = 8000ns

在寫(xiě)入全部數(shù)據(jù)所需的時(shí)間(8000ns)內(nèi),可以讀取出的數(shù)據(jù)數(shù):8000ns / 80ns = 100

所以一次突發(fā),一共需要寫(xiě)入120數(shù)據(jù),在這段時(shí)間內(nèi)可以被讀出100數(shù)據(jù),剩下的數(shù)據(jù)就是需要使用FIFO來(lái)緩存,所以FIFO的最小深度為120 - 100 = 20

2.3、寫(xiě)時(shí)鐘、讀時(shí)鐘一樣快

2.3.1、無(wú)間斷的寫(xiě)、讀操作

條件:

寫(xiě)入時(shí)鐘頻率 fA = 讀取時(shí)鐘頻率 fB = 30MHz。一次寫(xiě)入的突發(fā)長(zhǎng)度120。

寫(xiě)、讀操作無(wú)間斷

解法:

1、假設(shè)讀、寫(xiě)時(shí)鐘無(wú)位差、則兩個(gè)時(shí)鐘同頻、同相,是同步信號(hào),故可以直接對(duì)接操作,無(wú)需FIFO

2、若讀、寫(xiě)時(shí)鐘存在相位差,則被寫(xiě)入的數(shù)據(jù)在一個(gè)時(shí)鐘周期內(nèi)會(huì)被讀走,所以FIFO的最小深度為1即可

2.3.2、間斷的寫(xiě)、讀操作

條件:

寫(xiě)入時(shí)鐘頻率 fA = 讀取時(shí)鐘頻率 fB = 50MHz。一次寫(xiě)入的突發(fā)長(zhǎng)度120。

每?jī)纱螌?xiě)入操作間隔1個(gè)時(shí)鐘周期,每?jī)纱巫x取操作間隔3個(gè)時(shí)鐘周期。

解法:

每?jī)纱螌?xiě)入操作間隔1個(gè)寫(xiě)時(shí)鐘周期,等于每?jī)蓚€(gè)寫(xiě)時(shí)鐘周期才寫(xiě)入1個(gè)數(shù)據(jù),即等價(jià)的寫(xiě)入時(shí)鐘頻率 fA'=25MHz,寫(xiě)入一個(gè)數(shù)據(jù)需要的時(shí)間:1/25MHz = 40ns

每?jī)纱巫x取操作間隔3個(gè)讀時(shí)鐘周期,等于每4個(gè)寫(xiě)時(shí)鐘周期才讀取1個(gè)數(shù)據(jù),即等價(jià)的讀取時(shí)鐘頻率 fB'=12.5MHz,讀取一個(gè)數(shù)據(jù)需要的時(shí)間:1/12.5MHz = 80ns

寫(xiě)入120個(gè)數(shù)據(jù),需要的時(shí)間:120 * 40ns = 4800ns

在寫(xiě)入全部數(shù)據(jù)所需的時(shí)間(4800ns)內(nèi),可以讀取出的數(shù)據(jù)數(shù):4800ns / 80ns = 60

所以一次突發(fā),一共需要寫(xiě)入120數(shù)據(jù),在這段時(shí)間內(nèi)可以被讀出60數(shù)據(jù),剩下的數(shù)據(jù)就是需要使用FIFO來(lái)緩存,所以FIFO的最小深度為120 - 60 = 60

2.4、特定時(shí)間內(nèi)時(shí)間寫(xiě)、讀速率固定

條件:

每100個(gè)時(shí)鐘寫(xiě)入80個(gè)數(shù)據(jù),剩余20個(gè)隨機(jī)值(無(wú)效)

每10個(gè)時(shí)鐘讀出8個(gè)數(shù)據(jù)

一次寫(xiě)入的突發(fā)長(zhǎng)度160

解法:

因?yàn)槊?00個(gè)時(shí)鐘內(nèi),僅寫(xiě)入80個(gè)數(shù)據(jù),而這80個(gè)數(shù)據(jù)可能任意分布,所以160個(gè)數(shù)據(jù)的寫(xiě)入可能有以下幾種情況:

如何簡(jiǎn)單快速地計(jì)算FIFO的最小深度

可以看到,第4種情況是最極端的:一次性需要寫(xiě)入160數(shù)據(jù),時(shí)間為160個(gè)時(shí)鐘

160個(gè)時(shí)鐘內(nèi),讀出的數(shù)據(jù)是160*8/10 = 128

所以一共需要寫(xiě)入160數(shù)據(jù),在這段時(shí)間內(nèi)可以被讀出128數(shù)據(jù),剩下的數(shù)據(jù)就是需要使用FIFO來(lái)緩存,所以FIFO的最小深度為160 - 128 = 32

3、總結(jié)

FIFO是用來(lái)緩存的,不是用來(lái)存數(shù)據(jù)的,當(dāng)寫(xiě)快讀慢時(shí),無(wú)止境的對(duì)FIFO操作是沒(méi)有意義的(不管FIFO多大,一定都會(huì)被寫(xiě)滿)

FIFO深度的計(jì)算建立在滿足一次突發(fā)傳輸?shù)幕A(chǔ)上

當(dāng)讀快寫(xiě)滿或者讀寫(xiě)一樣快時(shí),F(xiàn)IFO的深度最多只需要1

當(dāng)寫(xiě)快讀慢時(shí),在一次突發(fā)傳輸時(shí),因?yàn)樽x慢,所以肯定無(wú)法全部讀走。全部寫(xiě)入的數(shù)據(jù)量 - 已經(jīng)被讀走的數(shù)據(jù)量 = 需要緩存到FIFO的數(shù)據(jù)量,即異步FIFO的最小深度

審核編輯:湯梓紅

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

    關(guān)注

    13

    文章

    4787

    瀏覽量

    90057
  • fifo
    +關(guān)注

    關(guān)注

    3

    文章

    407

    瀏覽量

    45746
  • 計(jì)算
    +關(guān)注

    關(guān)注

    2

    文章

    460

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    電子工程師必備:LM3881簡(jiǎn)單電源排序器深度解析

    電子工程師必備:LM3881簡(jiǎn)單電源排序器深度解析 作為電子工程師,在設(shè)計(jì)電源系統(tǒng)時(shí)常常會(huì)面臨諸多挑戰(zhàn),如多個(gè)電源上電和下電的時(shí)序控制、避免浪涌電流和閂鎖問(wèn)題等。今天,我將為大家詳細(xì)介紹一款能有
    的頭像 發(fā)表于 02-26 17:10 ?456次閱讀

    FIFO存儲(chǔ)器的種類、IP配置及應(yīng)用

    FIRST IN FIRST OUT (先入先出)。顧名思義,FIFO是一個(gè)數(shù)據(jù)具有先進(jìn)先出的存儲(chǔ)器。
    的頭像 發(fā)表于 01-13 15:15 ?370次閱讀
    <b class='flag-5'>FIFO</b>存儲(chǔ)器的種類、IP配置及應(yīng)用

    請(qǐng)問(wèn)有沒(méi)有最小化系統(tǒng)程序,編程時(shí)可以快速設(shè)置?

    請(qǐng)問(wèn)有沒(méi)有最小化系統(tǒng)程序,編程時(shí)可以快速設(shè)置
    發(fā)表于 12-23 08:16

    請(qǐng)問(wèn)UART硬件FIFO深度是多少?如何避免數(shù)據(jù)溢出?

    UART 硬件 FIFO 深度是多少?如何避免數(shù)據(jù)溢出?
    發(fā)表于 11-21 06:59

    分享---簡(jiǎn)單快速實(shí)現(xiàn)烘烤設(shè)備UI界面的方法

    本文分享下,如何簡(jiǎn)單快速的設(shè)計(jì)出工業(yè)烘烤設(shè)備的UI界面方法, 借助 \"墨刀\" 界面原型設(shè)計(jì)工具,設(shè)計(jì)烘烤機(jī)主界面圖片。 使用拓普微 SGTools開(kāi)發(fā)工具,建立工程和頁(yè)面
    發(fā)表于 08-26 11:58

    大模型推理顯存和計(jì)算量估計(jì)方法研究

    隨著人工智能技術(shù)的飛速發(fā)展,深度學(xué)習(xí)大模型在各個(gè)領(lǐng)域得到了廣泛應(yīng)用。然而,大模型的推理過(guò)程對(duì)顯存和計(jì)算資源的需求較高,給實(shí)際應(yīng)用帶來(lái)了挑戰(zhàn)。為了解決這一問(wèn)題,本文將探討大模型推理顯存和計(jì)算量的估計(jì)
    發(fā)表于 07-03 19:43

    降壓式電路的緩沖電路原理和快速設(shè)計(jì)

    摘要 本應(yīng)用報(bào)告首先給出了降壓式開(kāi)關(guān)電路(buck)在上管開(kāi)通瞬間的的一個(gè)等效諧振回路模型。根據(jù)該模型推導(dǎo)出使得開(kāi)關(guān)振鈴最小化的阻容緩沖電路(snubber)的參數(shù)計(jì)算公式,并結(jié)合參數(shù)公式給出
    發(fā)表于 06-05 14:27

    cy7c68013a異步slave fifo模式,外部mcu無(wú)法讀寫(xiě)fifo怎么解決?

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

    存儲(chǔ)示波器的存儲(chǔ)深度對(duì)信號(hào)分析有什么影響?

    /周期才能精確計(jì)算RMS抖動(dòng))。 案例: 采樣率1GS/s,存儲(chǔ)深度10kpts → 記錄時(shí)間僅10μs,每周期僅10點(diǎn)(100MHz信號(hào)),邊沿重建質(zhì)量差。 存儲(chǔ)深度升級(jí)至1Mpts → 記錄時(shí)間
    發(fā)表于 05-27 14:39

    智多晶FIFO_Generator IP介紹

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

    基于FPGA的FIFO實(shí)現(xiàn)

    FIFO(First in First out)為先進(jìn)先出隊(duì)列,具有存儲(chǔ)功能,可用于不同時(shí)鐘域間傳輸數(shù)據(jù)以及不同的數(shù)據(jù)寬度進(jìn)行數(shù)據(jù)匹配。如其名稱,數(shù)據(jù)傳輸為單向,從一側(cè)進(jìn)入,再?gòu)牧硪粋?cè)出來(lái),出來(lái)的順序和進(jìn)入的順序相同。
    的頭像 發(fā)表于 04-09 09:55 ?1456次閱讀
    基于FPGA的<b class='flag-5'>FIFO</b>實(shí)現(xiàn)

    Claude 3.7:編碼助手首選,claude api key如何申請(qǐng)獲取與深度解析*

    核心看點(diǎn) 混合推理引擎 :Claude 3.7 融合快速代碼生成與深度問(wèn)題解決能力,實(shí)現(xiàn)“快思考”與“深思考”的無(wú)縫切換。 便捷API訪問(wèn) :三步快速獲取Claude 3.7 API密鑰,安全、
    的頭像 發(fā)表于 03-24 09:43 ?1860次閱讀
    Claude 3.7:編碼助手首選,claude api key如何申請(qǐng)獲取與<b class='flag-5'>深度</b>解析*

    【AIBOX 應(yīng)用案例】單目深度估計(jì)

    ?Firefly所推出的NVIDIA系列的AIBOX可實(shí)現(xiàn)深度估計(jì),該技術(shù)是一種從單張或者多張圖像預(yù)測(cè)場(chǎng)景深度信息的技術(shù),廣泛應(yīng)用于計(jì)算機(jī)視覺(jué)領(lǐng)域,尤其是在三維重建、場(chǎng)景理解和環(huán)境感知等任務(wù)中起到
    的頭像 發(fā)表于 03-19 16:33 ?1104次閱讀
    【AIBOX 應(yīng)用案例】單目<b class='flag-5'>深度</b>估計(jì)

    AXI接口FIFO簡(jiǎn)介

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

    解鎖TSMaster fifo函數(shù):報(bào)文讀取的高效方法

    前言:TSMaster目前有兩種讀取報(bào)文的模式:回調(diào)函數(shù)模式和fifo模式。fifo函數(shù)是TSMaster近期新增的函數(shù),本文將重點(diǎn)介紹fifo模塊。關(guān)于回調(diào)函數(shù)的使用方法可以參考幫助模塊的《
    的頭像 發(fā)表于 03-14 20:04 ?1143次閱讀
    解鎖TSMaster <b class='flag-5'>fifo</b>函數(shù):報(bào)文讀取的高效方法