一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

基于RR的多路分發(fā)調(diào)用

Spinal FPGA ? 來源:Spinal FPGA ? 2023-04-15 10:40 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

》多路一出的場(chǎng)景

在SpinalHDL代碼中,StreamArbiter提供了完善的多入一出的調(diào)度機(jī)制。里面可能應(yīng)用的較多的是Round Robin調(diào)度。在之前的文章《你知道如何做多端口仲裁么》中詳細(xì)講述了Round Robin調(diào)度思想。然而還有一類應(yīng)用場(chǎng)景就是針對(duì)一入多出的情況:

f2fa93ce-db35-11ed-bfe3-dac502259ad0.jpg

這其實(shí)也是之前微信群里面群友問的一個(gè)類似的場(chǎng)景。在一些應(yīng)用里,來自上游的數(shù)據(jù)或者任務(wù)分發(fā)給多個(gè)Kernel來進(jìn)行執(zhí)行處理(如多個(gè)報(bào)文解析模塊)。針對(duì)每個(gè)任務(wù),其具體的執(zhí)行時(shí)間會(huì)有差異(比如在網(wǎng)絡(luò)報(bào)文頭解析中,不同層協(xié)議所需要的時(shí)鐘周期數(shù)并不相同)。那么為了盡可能避免Kernel空閑,顯然如果采用簡(jiǎn)單的順序分發(fā)至Kernel1~kerneln會(huì)存在潛在的Kernel空閑。比如(假定n=3):

Task1——>Kernel1;100 Clock Cycle

Task2——>Kernel2;50 Clock Cycle

Task3——>Kernel3;10 Clock Cycle

Task4——>Kernel1;10 Clock Cycle

顯然,這里如果將Task4分發(fā)至Kernel1將會(huì)導(dǎo)致Dispatcher的阻塞。那么針對(duì)這種場(chǎng)景,顯然是下游Kernel誰空閑將任務(wù)分發(fā)給誰更合適。 》StreamFragmentRoundRobinDispatcher

不同于StreamArbiter所針對(duì)的多入一出的誰有任務(wù)調(diào)度誰的RR調(diào)度,這里是一種一入多出的誰空閑任務(wù)給誰的RR調(diào)度,即Dispatcher By Round。如果你看過之前上面的文章,那么這里可以很容易做實(shí)現(xiàn)。考慮到真實(shí)的應(yīng)用場(chǎng)景,這里僅針對(duì)Stream Fragment形式的調(diào)度實(shí)現(xiàn):

f3052474-db35-11ed-bfe3-dac502259ad0.png

相比于StreamArbiter中采用多路輸入信號(hào)的valid信號(hào)作為調(diào)度請(qǐng)求request相反,這里(Line:19)采用多路輸出端口的ready信號(hào)作為roundRobin的request請(qǐng)求,從而實(shí)現(xiàn)誰空閑把任務(wù)給誰。

如之前前文所說,Round Robin其實(shí)是一種優(yōu)先級(jí)位置變化的最低優(yōu)先級(jí)調(diào)度,故這里(Line:19)通過mask_locked的循環(huán)左移來實(shí)現(xiàn)優(yōu)先級(jí)排序。故這里在初始化時(shí)將mask_locked的最高位初始化為1。

這里采用mask_route來標(biāo)識(shí)對(duì)應(yīng)的端口仲裁結(jié)果。對(duì)于一幀F(xiàn)ragment Stream流,其首拍時(shí)由于仲裁結(jié)果還未鎖定,故采用mask_arbited來充當(dāng)仲裁標(biāo)示,而在隨后報(bào)文鎖定后采用mask_locked來執(zhí)行(確保一幀任務(wù)的調(diào)度不會(huì)被下游ready信號(hào)的變化所影響。如果下游端口能一幀完整報(bào)文之間不會(huì)拉低ready那么這里還可以進(jìn)一步進(jìn)行優(yōu)化)。

對(duì)于多Kernel處理結(jié)果需要保序輸出的場(chǎng)景,這里提供了port_sel_oh信號(hào)來輸出指示當(dāng)前報(bào)文送至哪個(gè)端口。使用時(shí)可能需要再例化一個(gè)FIFO作為保序結(jié)果存儲(chǔ),此時(shí)在例化該模塊連接port_in端口時(shí)可能需要一個(gè)continueWhen將保序Fifo的push.ready考慮進(jìn)去。在port_in.firstFire時(shí)將port_sel_oh寫入保序Fifo。






審核編輯:劉清

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

    關(guān)注

    8

    文章

    330

    瀏覽量

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

    關(guān)注

    0

    文章

    103

    瀏覽量

    6188

原文標(biāo)題:Dispatcher By Round Robin

文章出處:【微信號(hào):Spinal FPGA,微信公眾號(hào):Spinal FPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    IC設(shè)計(jì):Verilog是如何實(shí)現(xiàn)RR輪詢調(diào)度的?

    在設(shè)計(jì)中,我們經(jīng)常會(huì)用到RR(Round-Robin,RR)輪詢調(diào)度,用于保證在一個(gè)時(shí)間段內(nèi)的多個(gè)請(qǐng)求信號(hào)都能得到公平響應(yīng)。
    的頭像 發(fā)表于 12-13 16:14 ?2460次閱讀

    [求助]誰有RJ45和RR1的封裝

    跪求RJ45和RR1的封裝,,,用在LPC2378上的,,謝謝啦wwh_hn@126.com
    發(fā)表于 08-08 09:06

    心電圖的數(shù)據(jù)處理和波形顯示包括心率,RR值等的參數(shù)顯示..

    心電圖的數(shù)據(jù)處理和波形顯示包括心率,RR值等的參數(shù)顯示....還有波形的存儲(chǔ)與回放,算是一個(gè)小系統(tǒng),給大家參考一下
    發(fā)表于 11-29 11:51

    多模輸入事件分發(fā)機(jī)制詳解

    多模輸入事件分發(fā)機(jī)制詳解一、 多模輸入概述多模輸入服務(wù)旨在支撐開發(fā)者面向用戶提供豐富多樣的人機(jī)交互方式,在持續(xù)完善支持傳統(tǒng)輸入的基礎(chǔ)上,多模輸入還會(huì)發(fā)揮 OpenAtom OpenHarmony
    發(fā)表于 07-04 11:22

    OZ9RR,pdf datasheet

    OZ9RR MULTIPLE-CCFL INVERTER TRANSFORMER SELECTION/ DESIGN GUIDE1. Choose a transformer from a
    發(fā)表于 11-03 17:26 ?108次下載

    RI-TRP-RR2B, RI-TRP-WR2B, RI-T

    RI-TRP-RR2
    發(fā)表于 06-26 20:49 ?8次下載

    STM32兩路(多路)MPU6050程序

    已經(jīng)實(shí)現(xiàn)兩路,邏輯分析儀測(cè)試時(shí)間為3-4ms,只需調(diào)用初始化和讀取數(shù)據(jù)就可以提取MPU6050多路數(shù)據(jù)
    發(fā)表于 01-19 21:49 ?29次下載

    ASMT-RR45-AQ902 0.45mm基于引線框架的表面貼裝ChipLED

    電子發(fā)燒友網(wǎng)為你提供Broadcom(ti)ASMT-RR45-AQ902相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊(cè),更有ASMT-RR45-AQ902的引腳圖、接線圖、封裝手冊(cè)、中文資料、英文資料,ASMT-RR45-AQ902真值表,ASMT-
    發(fā)表于 07-04 11:20
    ASMT-<b class='flag-5'>RR</b>45-AQ902 0.45mm基于引線框架的表面貼裝ChipLED

    Arduino庫直接調(diào)用沒有原庫復(fù)雜調(diào)用有用的數(shù)據(jù)

    本文檔的主要內(nèi)容詳細(xì)介紹的是Arduino庫直接調(diào)用沒有原庫復(fù)雜調(diào)用有用的數(shù)據(jù)免費(fèi)下載。
    發(fā)表于 03-04 08:00 ?5次下載

    CAT-SE594-M1RR M12 A 編碼 MR-FS 雙頭電纜

    電子發(fā)燒友網(wǎng)為你提供TE(ti)CAT-SE594-M1RR相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊(cè),更有CAT-SE594-M1RR的引腳圖、接線圖、封裝手冊(cè)、中文資料、英文資料,CAT-SE594-M1RR真值表,CAT-SE594-M1
    發(fā)表于 07-06 01:00

    方型光電開關(guān)傳感器E3JK-TR-DR-RR11-C-DS3

    方型光電開關(guān)傳感器E3JK-TR-DR-RR11-C-DS3
    發(fā)表于 08-23 18:06 ?5次下載

    PHY1076-01QD-RR PHY1076-01QD-RR - (Maxim Integrated) - PMIC - 激光驅(qū)動(dòng)器

    電子發(fā)燒友網(wǎng)為你提供()PHY1076-01QD-RR相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊(cè),更有PHY1076-01QD-RR的引腳圖、接線圖、封裝手冊(cè)、中文資料、英文資料,PHY1076-01QD-RR真值表,PHY1076-01QD-
    發(fā)表于 11-15 21:43
    PHY1076-01QD-<b class='flag-5'>RR</b> PHY1076-01QD-<b class='flag-5'>RR</b> - (Maxim Integrated) - PMIC - 激光驅(qū)動(dòng)器

    SCL中調(diào)用函數(shù)的示例

    在此,可插入函數(shù) (FC) 調(diào)用和函數(shù)塊 (FB) 調(diào)用。函數(shù)塊可作為單實(shí)例、多重實(shí)例或參數(shù)實(shí)例進(jìn)行調(diào)用。
    的頭像 發(fā)表于 06-06 10:18 ?2902次閱讀

    RR輪詢調(diào)度?Verilog是如何實(shí)現(xiàn)RR輪詢調(diào)度的?

    在設(shè)計(jì)中,我們經(jīng)常會(huì)用到RR(Round-Robin,RR)輪詢調(diào)度,用于保證在一個(gè)時(shí)間段內(nèi)的多個(gè)請(qǐng)求信號(hào)都能得到公平響應(yīng)。
    的頭像 發(fā)表于 09-28 09:55 ?4665次閱讀
    <b class='flag-5'>RR</b>輪詢調(diào)度?Verilog是如何實(shí)現(xiàn)<b class='flag-5'>RR</b>輪詢調(diào)度的?

    R3G250-RR02-11 EC離心風(fēng)扇

    R3G250-RR02-11 EC離心風(fēng)扇
    發(fā)表于 09-18 10:09 ?0次下載