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

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

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

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

冬至子 ? 來源:IC的世界 ? 作者:IC小鴿 ? 2023-09-28 09:55 ? 次閱讀

1、RR輪詢調(diào)度?

在設(shè)計中,我們經(jīng)常會用到RR(Round-Robin,RR)輪詢調(diào)度,用于保證在一個時間段內(nèi)的多個請求信號都能得到公平響應(yīng)。

如下所示:輸入rr_req[3:0]為4個請求信號,輸出rr_grant[3:0]為4請求信號對應(yīng)的4個響應(yīng)信號:rr_req[n]表示第n請求申請響應(yīng),rr_grant[n]為1表示第n個請求被響應(yīng)。

如表所示,T1周期,所有請求均有效,首先響應(yīng)低bit的請求,所以rr_grant[0]=1。

T3周期,請求rr_req[0]有效,但是在T2時刻中被響應(yīng)(rr_grant[1]=1),因此此次不再響應(yīng),而是響應(yīng)rr_req[2],所以rr_grant[2]=1.

image.png

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

在verilog實現(xiàn)中,僅僅采用簡單的組合邏輯和寄存器就可以實現(xiàn)rr輪詢調(diào)度,不需要狀態(tài)機等設(shè)計。

基本原理是鎖存上一次輸出請求響應(yīng)rr_grant[3:0],并且生成相應(yīng)的有效位rr_mask[3:0],從(rr_valid[3:0]&rr_mask[3:0]) 和 rr_valid[3:0]&(~rr_mask[3:0]) 選取不為0的作為獲得rr_grant_tmp,rr_grant_tmp再經(jīng)過組合邏輯并且取最低有效位。此處mask中1表示請求有效。

image.png

B列:為請求信號rr_req[3:0]
C列:pre_rr_result 為模塊內(nèi)部鎖存的上一拍rr_grant[3:0],即寄存器鎖存打拍
D列:rr_mask為pre_rr_result經(jīng)過組合邏輯得到的掩碼,rr_mask= {pre_rr_result[2:0],pre_rr_result[3]}-1’b1
E列: rr_mask為pre_rr_result經(jīng)過組合邏輯得到的掩碼,rr_mask= ( {pre_rr_result[2:0],pre_rr_result[3]}-1’b1)
F列:rr_grant_tmp為B&D or B&E,取其中不為0的
G列:rr_grant_tmp經(jīng)過組合邏輯輸出最低有效位:(~rr_grant_tmp+1’b1)&rr_grant_tmp

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

    關(guān)注

    31

    文章

    5253

    瀏覽量

    119201
  • IC設(shè)計
    +關(guān)注

    關(guān)注

    37

    文章

    1287

    瀏覽量

    103434
  • 鎖存器
    +關(guān)注

    關(guān)注

    8

    文章

    903

    瀏覽量

    41314
  • 狀態(tài)機
    +關(guān)注

    關(guān)注

    2

    文章

    489

    瀏覽量

    27393
  • Verilog語言
    +關(guān)注

    關(guān)注

    0

    文章

    113

    瀏覽量

    8192
收藏 人收藏

    評論

    相關(guān)推薦

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

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

    核心路由器的多端口線卡調(diào)度

    ,符合AAL5處理的需求;二是在采用ATM方式時,PM5380內(nèi)部的 FIFO只能夠緩存4個信元,深度有限;三是固定長度包的輪詢調(diào)度,其理論研究較成熟,也較易于實現(xiàn),相比不定長包調(diào)度
    發(fā)表于 05-14 07:00

    Linux系統(tǒng)調(diào)度實現(xiàn)特性的關(guān)鍵部分

    1、綜述  Linux作為多任務(wù)、多用戶的操作系統(tǒng),其進程/線程調(diào)度管理是實現(xiàn)這些特性的關(guān)鍵部分。調(diào)度管理決定系統(tǒng)中的眾多線程中哪個線程獲得執(zhí)行、什么時候開始執(zhí)行、執(zhí)行多久。一個好的調(diào)度
    發(fā)表于 07-05 07:05

    請問FreeRTOS是如何實現(xiàn)調(diào)度的?

    了stm32的官方例程,原理上的東西大致懂了,可在程序中是如何實現(xiàn)的呢,C語言障礙,沒看懂。首先是調(diào)度函數(shù),函數(shù)函數(shù)是如何執(zhí)行的呢?如下圖,新建任務(wù)后執(zhí)行調(diào)度函數(shù),為什么沒用循環(huán),調(diào)度
    發(fā)表于 07-30 07:40

    Microchip單片機固定時間片輪詢調(diào)度匯編代碼 精選資料分享

    這是一個能在PIC16F877A開發(fā)板上運行的固定時間片輪詢調(diào)度匯編程序代碼。為什么要用時間片輪詢調(diào)度?假如我們要寫一個單片機程序,程序的目的就是用GPIO控制一個燈亮一秒再暗一秒…最
    發(fā)表于 07-13 08:53

    Microchip單片機固定時間片輪詢調(diào)度匯編代碼 精選資料推薦

    這是一個能在PIC16F877A開發(fā)板上運行的固定時間片輪詢調(diào)度匯編程序代碼。為什么要用時間片輪詢調(diào)度?假如我們要寫一個單片機程序,程序的目的就是用GPIO控制一個燈亮一秒再暗一秒…最
    發(fā)表于 07-13 08:14

    基于PIC16F877A開發(fā)板的固定時間片輪詢調(diào)度匯編程序干了啥

    為什么要用時間片輪詢調(diào)度?基于PIC16F877A開發(fā)板的固定時間片輪詢調(diào)度匯編程序干了啥?
    發(fā)表于 08-02 07:36

    STM32是怎樣去實現(xiàn)軟件時間片調(diào)度

    STM32 實現(xiàn)軟件時間片調(diào)度前言:在有些時候嵌入式系統(tǒng)不需要上RTOS的情況下,使用一個while大循環(huán),有可能會造成一層while套一層while的情況出現(xiàn).為了解決這種情況(更好的裝X).這里
    發(fā)表于 08-24 07:33

    基于FPGA的輪詢合路的設(shè)計和實現(xiàn)

    針對高密度接口設(shè)計中基于字節(jié)處理和整包處理的轉(zhuǎn)換問題,本文提出了分片輪詢調(diào)度和改進式欠賬輪詢調(diào)度相結(jié)合的調(diào)度策略,該策略在很大程度上保證了公
    發(fā)表于 08-09 15:30 ?21次下載

    基于SDH芯片的S19202的輪詢合路的設(shè)計

    針對高密度接口設(shè)計中基于字節(jié)處理和整包處理的轉(zhuǎn)換問題,本文提出了分片輪詢調(diào)度和改進式欠賬輪詢調(diào)度相結(jié)合的調(diào)度策略,該策略在很大程度上保證了公
    發(fā)表于 07-31 09:23 ?891次閱讀
    基于SDH芯片的S19202的<b class='flag-5'>輪詢</b>合路的設(shè)計

    基于動態(tài)分組的M2M上行優(yōu)先級調(diào)度算法綜述

    以延遲容忍剩余時長為度量依據(jù),提出一種對業(yè)務(wù)進行動態(tài)分組的上行優(yōu)先級調(diào)度算法。采用資源塊(RB大小可變的分配方式滿足RB的鄰接約束,引入混合自動輪詢機制解決算法對低優(yōu)先級業(yè)務(wù)調(diào)度不公平的問題。仿真
    發(fā)表于 06-11 11:17 ?14次下載

    MCU--時間片&分時輪詢

    目錄1、任務(wù)調(diào)度2、"先來先服務(wù)調(diào)度"與“前后臺架構(gòu)”1)先來先服務(wù)調(diào)度2)先來先服務(wù)VS前后臺架構(gòu)3、時間片調(diào)度-(也叫RR
    發(fā)表于 11-05 17:20 ?2次下載
    MCU--時間片&分時<b class='flag-5'>輪詢</b>

    Microchip單片機固定時間片輪詢調(diào)度匯編代碼

    這是一個能在PIC16F877A開發(fā)板上運行的固定時間片輪詢調(diào)度匯編程序代碼。為什么要用時間片輪詢調(diào)度?假如我們要寫一個單片機程序,程序的目的就是用GPIO控制一個燈亮一秒再暗一秒…最
    發(fā)表于 11-16 16:21 ?4次下載
    Microchip單片機固定時間片<b class='flag-5'>輪詢</b><b class='flag-5'>調(diào)度</b>匯編代碼

    STM32 操作系統(tǒng)內(nèi)核調(diào)度原理與實現(xiàn)(1):輪詢系統(tǒng),前后臺系統(tǒng)與多線程系統(tǒng)

    一、輪詢系統(tǒng)輪詢系統(tǒng)是 MCU 中最簡單的入門系統(tǒng),它的程序結(jié)構(gòu)是通常只需要一個 While(1)或For(;;)死循環(huán)來實現(xiàn)://程序清單 1.1......int main(void
    發(fā)表于 12-07 19:36 ?7次下載
    STM32 操作系統(tǒng)內(nèi)核<b class='flag-5'>調(diào)度</b>原理與<b class='flag-5'>實現(xiàn)</b>(1):<b class='flag-5'>輪詢</b>系統(tǒng),前后臺系統(tǒng)與多線程系統(tǒng)

    IC設(shè)計的特殊信號打拍方式及RR輪詢調(diào)度

    Axi總線打拍模塊通常會采用特殊設(shè)計的IP模塊,將所有axi總線信號互聯(lián)到axi打拍ip上,起到一個橋接的作用,能夠解決時序問題。
    發(fā)表于 10-03 15:26 ?1277次閱讀