chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

在valid ready協(xié)議中對(duì)ready進(jìn)行timing修復(fù)打拍的方法

冬至子 ? 來(lái)源:數(shù)字邏輯電路小站 ? 作者:孟祥志 ? 2023-06-27 16:20 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

問題提出:ready時(shí)序如何優(yōu)化?

在valid/ready 握手協(xié)議中,valid 與 data的時(shí)序優(yōu)化比較容易理解。

但是有時(shí)候,關(guān)鍵路徑是在ready信號(hào)上,如何對(duì)ready信號(hào)打拍呢?

首先將把目標(biāo)設(shè)計(jì)想象成一個(gè)黑盒子,如圖1所示,我們的目標(biāo)是將READY_DOWN通過打拍的方法獲得時(shí)序優(yōu)化。

圖片

(圖1)

嘗試直接對(duì)ready打一拍

1.jpg

(僅示例,非verilog代碼。下同)

這樣是行不通的。

一個(gè)簡(jiǎn)單的例子(case 1)就是你讓READY_DOWN像一個(gè)時(shí)鐘一個(gè),間隔一個(gè)cycle起來(lái)一次,那么VALID_UP && READY_UP 與 VALID_DOWN && READY_DOWN無(wú)法同步,數(shù)據(jù)無(wú)法傳輸下去。

思路:將其分解成兩個(gè)interfaces

將ready打拍的邏輯想象成一個(gè)黑盒子,去分析這個(gè)黑盒子的設(shè)計(jì),分為up interface 和down interface將問題細(xì)化:

  • up interface 有VALID_UP, DATA_UP, READY_UP

  • down interface 有VALID_DOWN, DATA_DOWN, READY_DOWN

    可以總結(jié)成下面的樣子:

1.jpg

如果去解決剛才例子(case 1),那么這個(gè)黑盒子:

當(dāng)READY_UP為高的時(shí)候,可以接受數(shù)據(jù);

當(dāng)READY_DOWN為高的時(shí)候, 如果我們有數(shù)據(jù)可發(fā)的話 ,我們可以向downstream發(fā)送數(shù)據(jù);

是不是很像一個(gè)FIFO?

用FIFO去解決

將一個(gè)FIFO插在黑盒子這里,那么就會(huì)變成這樣子:

圖片

(圖2)

VALID_UP/READ_YUP ==> FIFO ==> VALID_DOWN/READY_DOWN

也就是:

1.jpg

現(xiàn)在問題變成了:如何設(shè)計(jì)這個(gè)FIFO呢?

  • 這個(gè)FIFO深度多少?
  • 怎么設(shè)計(jì),能夠保證READY_UP是READY_DOWN打過一拍的呢?

FIFO設(shè)計(jì)多深?

因?yàn)楸旧韛alid/ready協(xié)議是 反壓協(xié)議 ( 也就是READY_UP為0的時(shí)候,不會(huì)寫FIFO,而不會(huì)導(dǎo)致FIFO溢出 )而且此處的讀寫時(shí)鐘是同一個(gè)時(shí)鐘,是一個(gè)同步FIFO,所以FIFO深度是1或者2就足夠了。

深度是1還是2要看極端情況下需要存儲(chǔ)幾筆數(shù)據(jù)。

簡(jiǎn)單分析可以知道,只有一種情況會(huì)去向FIFO中存儲(chǔ)數(shù)據(jù):

  • READY_UP是1,可以從upstream接收數(shù)據(jù)
  • 同時(shí)READY_DOWN是0,不可以向downstream發(fā)送數(shù)據(jù)

這種情況在極端情況下最多維持多久呢?

答案是: 一個(gè)周期 。

因?yàn)槿绻鹀ycle a 時(shí):READY_DOWN=0,那么cycle a+1時(shí),READY_UP變?yōu)?了,開始反壓,所以只用存一個(gè)數(shù)就夠了。

所以設(shè)計(jì)為一個(gè)深度為1的FIFO就可以了。

深度為1的FIFO有很多特點(diǎn),設(shè)計(jì)起來(lái)比較簡(jiǎn)單。比如:wr_ptr/rd_ptr始終指向地址0,所以我們可以刪掉wr_ptr和rd_ptr,因?yàn)槭且粋€(gè)常值0。

簡(jiǎn)單的depth-1 FIFO實(shí)現(xiàn)

使用depth-1 FIFO傳輸數(shù)據(jù),可以這樣設(shè)計(jì):

1.jpg

這解決了READY打拍的問題。但是這里有一些可以改進(jìn)的地方,比如:

  • 是不是可以擠掉多于的氣泡?
  • 在FIFO為空的時(shí)候,數(shù)據(jù)是不是可以直接bypass FIFO?

無(wú)氣泡傳輸

具體的說,就是既然你這里有個(gè)深度為1的FIFO了,那么我是不是可以利用起來(lái),放點(diǎn)數(shù)據(jù)啊……

當(dāng)READY_DOWN持續(xù)是0的時(shí)候,READY_UP依然可以有一個(gè)cycle去接收一筆數(shù)據(jù),把FIFO資源利用起來(lái):

1.jpg

同樣的原因,在RESET情況下,READY_UP可以為1,可以將復(fù)位值修改。

那么FIFO穿越呢?

FIFO穿越

考慮一個(gè)特殊情況(case 2):

假設(shè)READY_DOWN在復(fù)位之后始終為1,

然后某個(gè)時(shí)刻開始VALID_UP為1了。

是不是每個(gè)周期,數(shù)據(jù)都可以直接傳下來(lái)而不用進(jìn)入FIFO,即使READY_DOWN打過一拍?

換句話說: ***如果READY_UP=1, READY_DOWN=1, FIFO是空的這種情況下,數(shù)據(jù)可以直通*** 。

  • 上文特殊情況(case 2),READY_DOWN/READY_UP一直是1,顯然可以。
  • READY_UP從0到1的跳變:READY_DOWN也會(huì)在前一周期有一個(gè)從0到1的跳變。在READY_DOWN為0時(shí),有一筆數(shù)據(jù)存到FIFO里邊(無(wú)氣泡傳輸);當(dāng)READY_DOWN在時(shí)刻a從0變到1時(shí),READY_UP在時(shí)刻a+1也會(huì)從0變?yōu)?。如果此時(shí)READY_DOWN也為1,可以直通,不用進(jìn)入FIFO。也就是:

1.jpg

注意在直通時(shí),我們不希望數(shù)據(jù)進(jìn)入FIFO:

1.jpg

將所有這些結(jié)合起來(lái):

1.jpg

1.jpg

1.jpg

(注:代碼未經(jīng)詳細(xì)驗(yàn)證)

換一種思路

經(jīng)過上面對(duì)FIFO的分析,我們可以總結(jié)起來(lái),主要是以下幾點(diǎn):

  • 加入一個(gè)深度為1的同步FIFO,這個(gè)FIFO在READY_DOWN為0,且READY_UP為1時(shí)暫存一個(gè)數(shù)據(jù);
  • 在READY_DOWN從0->1時(shí),F(xiàn)IFO里邊的數(shù)據(jù)先輸出到下級(jí);
  • 如果READY_DOWN繼續(xù)為1,數(shù)據(jù)可以繞過FIFO直通;

深度為1的FIFO(不管是同步還是異步FIFO),都是一個(gè)特殊的邏輯單元。

對(duì)于深度為1的同步FIFO,其實(shí)就是一拍寄存器打拍。

所以,我們可以這樣重新設(shè)計(jì):

  1. 加一級(jí)寄存器作為buffer(實(shí)際上就是深度為1的FIFO)

  2. 當(dāng)以下條件滿足,這一級(jí)寄存器會(huì)暫存一級(jí)數(shù)據(jù):

    2.1 READY_DOWN是0,并且

    2.2 READY_UP是1,并且

    2.3 VALID_UP是1;

也就是:

1.jpg

  1. 當(dāng)READY_UP是1時(shí),數(shù)據(jù)可以直接暴露在下級(jí)接口:READY_UP為1時(shí),BUFFER中一定是空的,因?yàn)樯弦粋€(gè)時(shí)鐘周期數(shù)據(jù)已經(jīng)排空了。也就是:

1.jpg

這其實(shí)就是上面的FIFO直通模式。同樣我們可以擠掉氣泡:

1.jpg

把這所有的總結(jié)起來(lái):

1.jpg

1.jpg

(注:代碼未經(jīng)詳細(xì)驗(yàn)證)

其他

  1. 我在電腦上簡(jiǎn)單跑了兩個(gè)波形,F(xiàn)IFO方法和Buffer方法結(jié)果是一樣的。
  2. 用FIFO去隔離開上下兩個(gè)interface思考,比較容易想明白。
  3. 無(wú)氣泡傳輸、FIFO直通這兩個(gè)小feature拿掉,也可以工作、也是能實(shí)現(xiàn)READY_DOWN時(shí)序優(yōu)化的設(shè)計(jì)目標(biāo)的。
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5495

    瀏覽量

    127800
  • AXI總線
    +關(guān)注

    關(guān)注

    0

    文章

    67

    瀏覽量

    14683
  • FIFO存儲(chǔ)
    +關(guān)注

    關(guān)注

    0

    文章

    103

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    時(shí)序優(yōu)化之接收端打拍策略探討

    這篇文章是探討對(duì)接收端進(jìn)行時(shí)序優(yōu)化(即ready打拍,或稱backward打拍)的方式。
    的頭像 發(fā)表于 12-04 10:20 ?1073次閱讀
    時(shí)序優(yōu)化之接收端<b class='flag-5'>打拍</b>策略探討

    valid-ready握手協(xié)議和enable-xoff協(xié)議對(duì)比

    這一篇主要對(duì)比下valid-ready握手協(xié)議和enable-xoff協(xié)議,當(dāng)然這個(gè)對(duì)比僅限于同時(shí)鐘域下的信號(hào)傳輸。
    的頭像 發(fā)表于 12-04 10:32 ?1462次閱讀
    <b class='flag-5'>valid-ready</b>握手<b class='flag-5'>協(xié)議</b>和enable-xoff<b class='flag-5'>協(xié)議</b>對(duì)比

    ADS131A04復(fù)位后以READY進(jìn)行響應(yīng),第一個(gè)幀接收到的響應(yīng)不正確,為什么?

    ADS131A0x 的數(shù)據(jù)表指出器件復(fù)位后以 READY進(jìn)行響應(yīng):對(duì)于 ADS131A02 為 0xFF02,對(duì)于 ADS131A04 為 0xFF04。但是,如果我發(fā)送多個(gè) NULL 命令
    發(fā)表于 11-25 08:11

    任務(wù)處于Ready狀態(tài)如何調(diào)試?

    Hi: 各位大俠好,我們調(diào)試的時(shí)候遇到有幾個(gè)任務(wù)處于Ready狀態(tài),但是Ready了的任務(wù)不執(zhí)行,而是Idle任務(wù)執(zhí)行的問題,現(xiàn)象如下圖所示:請(qǐng)問遇到這種問題如何調(diào)試?
    發(fā)表于 01-02 15:07

    Stream的halfPipe方法為什么會(huì)導(dǎo)致帶寬減半?

    。pipelinedStream諸多打拍握手方法,或許你記起來(lái)比較麻煩,那么可以使用時(shí)采用下面的方法:m2s:
    發(fā)表于 06-23 15:57

    什么是“HD Ready”標(biāo)準(zhǔn)

    什么是“HD Ready”標(biāo)準(zhǔn) 歐洲EICTA(歐洲通信家電工業(yè)聯(lián)合會(huì))日前推出了高清顯示器標(biāo)志“HDTV Ready”以及獲得該標(biāo)志需要滿足的條件。凡帶有該標(biāo)志
    發(fā)表于 02-05 10:39 ?1066次閱讀

    GeForce現(xiàn)在增加了其不斷發(fā)展的Game Ready庫(kù)

    GeForce Now正在穩(wěn)步增長(zhǎng)該程序提供的游戲庫(kù)。Game Ready旗幟下,Nvidia不斷將新游戲添加到玩家可以購(gòu)買的組合,并借助Nvidia的計(jì)算機(jī)上的云立即進(jìn)行游戲。
    的頭像 發(fā)表于 10-19 11:29 ?1602次閱讀

    SD-WAN Ready工業(yè)互聯(lián)網(wǎng)的實(shí)踐

    近日,第三屆SD-WAN產(chǎn)業(yè)發(fā)展論壇上,網(wǎng)銀互聯(lián)鄭永為參會(huì)企業(yè)帶來(lái)了《SD-WAN Ready工業(yè)互聯(lián)網(wǎng)的實(shí)踐》的主題演講。
    的頭像 發(fā)表于 02-18 15:09 ?1795次閱讀
    SD-WAN <b class='flag-5'>Ready</b><b class='flag-5'>在</b>工業(yè)互聯(lián)網(wǎng)的實(shí)踐

    setup/hold的概念

    協(xié)議,需要打拍的信號(hào)間存在時(shí)序的耦合。 所以問題就簡(jiǎn)化成如何在遵循valid -ready協(xié)議的master和slave 之間完成“
    的頭像 發(fā)表于 07-25 10:09 ?2593次閱讀

    AXI4協(xié)議五個(gè)不同通道的握手機(jī)制

    AXI4 協(xié)議定義了五個(gè)不同的通道,如 AXI 通道中所述。所有這些通道共享基于 VALIDREADY 信號(hào)的相同握手機(jī)制
    的頭像 發(fā)表于 05-08 11:37 ?1826次閱讀
    AXI4<b class='flag-5'>協(xié)議</b>五個(gè)不同通道的握手機(jī)制

    在握手協(xié)議Valid及data打拍技巧

    AXI 協(xié)議使用的是valid-ready握手的方式去傳輸數(shù)據(jù)。
    發(fā)表于 06-27 16:12 ?2715次閱讀
    在握手<b class='flag-5'>協(xié)議</b><b class='flag-5'>中</b>的<b class='flag-5'>Valid</b>及data<b class='flag-5'>打拍</b>技巧

    validready信號(hào)有哪三種情況

    validready信號(hào)分三種情況: (1)valid信號(hào)先到達(dá) 主機(jī)valid信號(hào)早早就到了,T2時(shí)刻并沒有見到接收方的ready信號(hào)。
    的頭像 發(fā)表于 10-31 15:44 ?3147次閱讀
    <b class='flag-5'>valid</b>與<b class='flag-5'>ready</b>信號(hào)有哪三種情況

    Valid-Ready握手協(xié)議的介紹與時(shí)序說明

    "Valid-Ready" 握手協(xié)議是一種常用于數(shù)字電路的接口協(xié)議,用于控制數(shù)據(jù)的傳輸和處理。
    的頭像 發(fā)表于 12-04 10:37 ?2266次閱讀
    <b class='flag-5'>Valid-Ready</b>握手<b class='flag-5'>協(xié)議</b>的介紹與時(shí)序說明

    AI ready是什么?文明的發(fā)展需要做好準(zhǔn)備

    接入”那么簡(jiǎn)單,還需要做好“AI ready”。 AI ready及其重要性 AI ready這個(gè)概念最早是由飛書提出的,去年11月末的飛書7發(fā)布會(huì)上,飛書CEO謝欣提到:“
    的頭像 發(fā)表于 01-17 10:19 ?1309次閱讀
    AI <b class='flag-5'>ready</b>是什么?文明的發(fā)展需要做好準(zhǔn)備

    AXI握手時(shí)序優(yōu)化—pipeline緩沖器

    /prdy或者valid-ready或AXI)Valid及data打拍技巧?;只關(guān)心ready時(shí)序修復(fù)
    的頭像 發(fā)表于 03-08 17:10 ?802次閱讀
    AXI握手時(shí)序優(yōu)化—pipeline緩沖器