[發明專利]多通道先進先出緩存隊列控制器及訪問方法有效
| 申請號: | 201310388500.2 | 申請日: | 2013-08-30 |
| 公開(公告)號: | CN103455442A | 公開(公告)日: | 2013-12-18 |
| 發明(設計)人: | 鄭述乾;李天林;區樹雄 | 申請(專利權)人: | 華為技術有限公司 |
| 主分類號: | G06F12/08 | 分類號: | G06F12/08 |
| 代理公司: | 北京同達信恒知識產權代理有限公司 11291 | 代理人: | 潘珺 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 通道 先進 緩存 隊列 控制器 訪問 方法 | ||
技術領域
本發明涉及數據傳送技術領域,尤其涉及多通道先進先出緩存隊列(first?in?first?out?queue,FIFO?queue)控制器及訪問方法。
背景技術
在傳送領域,隨著傳輸帶寬越來越大(例如100G、200G或者400G),通訊設備中的現場可編程邏輯門陣列(Field?Programmable?Gate?Array,FPGA)在處理多業務時、往往把多路的低帶寬業務變換成統一位寬的時分信號(如640bit)。多業務對應的帶寬可能隨著時間變化。在不同業務處理之間進行適配的時候,需要一個FIFO?queue對業務的數據進行緩存。在大位寬的場景下,可能非常消耗FIFO?queue的資源。具體來說,可能非常消耗FIFO?queue對應的隨機存儲器(Random?Access?Memory,RAM)資源,查找表(Look?Up?Table,LUT)資源以及布線資源。
一個現有的解決方案(簡稱方案1)如圖1所示。方案1將多個大位寬的FIFO實體,包封在一起作為一個多業務通道FIFO實體來使用。在數據輸入側,進來的數據流按照業務的通道號分發到對應的FIFO實體;在數據輸出側,根據業務的通道號,從不同的FIFO實體中讀取數據。
上述方案1中,多業務通道FIFO?queue中不同業務通道對應的RAM緩存和控制電路都不能共享,多業務通道FIFO?queue所使用的RAM的大小必須按照最大業務帶寬顆粒的大小來設計,當業務通道數量很多(例如>=64)時,RAM的資源耗費相當巨大,例如一個640bit位寬,80個業務通道,每業務通道最深128個單元的多業務通道FIFO,在FPGA上設計需要近400塊RAM,而一片較大的FPGA上總的RAM資源也就2000多塊。并且,在實際應用場景中,只有非常少數的幾個業務通道會有大帶寬的業務,其他業務通道都是空閑的(總的帶寬不變,某些業務通道帶寬大,其他的業務通道必然帶寬小或者沒有),這樣就造成了RAM資源的浪費。
另外一種解決方案(下面簡述方案2)如圖2所示,該方案2中,所有業務通道共享一塊大的緩存,每個業務通道按照業務顆粒大小分配空間,每個業務通道的空間通過一個循環鏈表組織起來。每個業務通道都有自己的鏈表指針,每個業務通道都通過當前的讀寫指針進行緩存的讀寫操作。
該方案2中所有業務通道的空間通過循環鏈表形式組織起來,當鏈表的指針發生異常錯誤時,會導致無法恢復的錯誤,可靠性較差。
發明內容
本發明實施例提供了一種多通道先進先出緩存隊列控制器及多通道先進先出緩存隊列訪問方法,有助于減少對多個業務進行處理時,對FIFO?queue的資源占用較多的問題。
第一方面,提供了一種多通道FIFO?queue控制器,包括:地址確定電路和控制電路;
所述地址確定電路用于:
根據業務的標識確定在數據緩存中的待訪問的塊的物理地址,所述數據緩存包含多個塊,每個塊包含m個存儲單元,m為正整數;
根據所述待訪問的塊的物理地址和待訪問的數據在所述待訪問的塊內的地址,確定所述待訪問的數據在所述數據緩存中的物理地址;
所述控制電路用于:
根據所述地址確定電路確定的所述待訪問的數據在所述數據緩存中的物理地址訪問所述待訪問的數據。
第一方面的第一種可能的實現方式中,所述地址確定電路具體用于:
根據所述業務的標識,確定所述待訪問的塊的邏輯地址和所述待訪問的數據在所述待訪問的塊內的地址;
根據所述待訪問的塊的邏輯地址,以及所述待訪問的塊的邏輯地址與所述待訪問的塊的物理地址之間的映射關系,確定所述待訪問的塊的物理地址;
根據所述待訪問的塊的物理地址和所述待訪問的數據在所述待訪問的塊內的地址,確定所述待訪問的數據在所述數據緩存中的物理地址。
根據第一方面的第一種可能的實現方式,在第一方面的第二種可能的實現方式中,所述地址確定電路具體用于:
根據所述業務的標識查詢邏輯地址表,獲取所述待訪問的數據的邏輯地址;
根據所述待訪問的數據的邏輯地址得到所述待訪問的塊的第一邏輯地址logic_blk_addr和塊內偏移地址logic_shift_addr;
根據所述業務的標識查詢首塊地址表,得到所述業務占用的多個塊中首個塊的邏輯地址first_blk_addr;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華為技術有限公司,未經華為技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310388500.2/2.html,轉載請聲明來源鉆瓜專利網。





