欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于交叉開關(guān)結(jié)構(gòu)的片上互聯(lián)方法

文檔序號(hào):6429294閱讀:194來源:國知局
專利名稱:一種基于交叉開關(guān)結(jié)構(gòu)的片上互聯(lián)方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種基于交叉開關(guān)結(jié)構(gòu)的片上互聯(lián)方法,屬于計(jì)算技術(shù)領(lǐng)域。
背景技術(shù)
網(wǎng)絡(luò)處理器作為面向網(wǎng)絡(luò)應(yīng)用領(lǐng)域的應(yīng)用特定指令處理器,是面向數(shù)據(jù)分組處理的專用設(shè)備,應(yīng)用于特定通信領(lǐng)域的各種任務(wù),比如包處理、協(xié)議分析、聲音/數(shù)據(jù)的匯聚、 路由查找、防火墻、QoS(Quality of krvice,即服務(wù)質(zhì)量)等。例如以網(wǎng)絡(luò)處理器為核心的交換機(jī)和路由器等網(wǎng)絡(luò)設(shè)備被設(shè)計(jì)成以包的形式在高速率下轉(zhuǎn)發(fā)網(wǎng)絡(luò)通信量。處理網(wǎng)絡(luò)通信量的一個(gè)最重要的考慮是包吞吐量。為了處理包,網(wǎng)絡(luò)處理器需要分析發(fā)往本設(shè)備的數(shù)據(jù)報(bào)文中的包報(bào)頭信息,提取包目的地,服務(wù)分類等信息,確定數(shù)據(jù)報(bào)文的下一跳目的地址,修改數(shù)據(jù)報(bào)文并發(fā)往相應(yīng)網(wǎng)絡(luò)端口。現(xiàn)代網(wǎng)絡(luò)處理器一般由多個(gè)多線程包處理單元(通常稱為PPE)、通用處理器、靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)控制器、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(SDRAM)控制器、加解密鑒權(quán)單元、 數(shù)據(jù)流接口單元構(gòu)成。多線程包處理單元和通用處理器(通常統(tǒng)一稱作處理元件)作為包處理動(dòng)作的發(fā)起者,執(zhí)行大量存取操作來訪問系統(tǒng)內(nèi)的多種共享資源;靜態(tài)隨機(jī)存取存儲(chǔ)器控制器、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器控制器、加解密鑒權(quán)單元、數(shù)據(jù)流接口單元作為包數(shù)據(jù)處理具體實(shí)施者可被任一包處理單元訪問,是網(wǎng)絡(luò)處理中典型的共享資源。在包處理期間,包處理單元以及比如通用處理器的其它可選擇的處理元件通過總線共享訪問多種系統(tǒng)資源。因此必須提供一套高性能的系統(tǒng)互聯(lián)總線,以提供芯片上的大量處理元件以及芯片上大量共享資源之間的片上數(shù)據(jù)傳輸基礎(chǔ)結(jié)構(gòu)。傳統(tǒng)的網(wǎng)絡(luò)處理器系統(tǒng)互聯(lián)采用共享總線的結(jié)構(gòu),共享總線一般采用多路復(fù)用技術(shù)。多種處理元件被耦合到一組共享總線上通過爭用總線訪問被耦合到總線上的多個(gè)資源目標(biāo),不同處理元件一般具有不同的總線訪問優(yōu)先級(jí)權(quán)限,總線仲裁器根據(jù)訪問優(yōu)先級(jí)由高到低對(duì)處理元件依次授權(quán)。圖1提供了一個(gè)傳統(tǒng)的共享總線體系結(jié)構(gòu)示意圖。該體系結(jié)構(gòu)包含有多個(gè)包處理元件102,以及多種共享資源,包括SRAM單元112、DRAM單元114、加解密鑒權(quán)單元116和數(shù)據(jù)流接口 118。這些處理單元全部被耦合到一組系統(tǒng)共享總線上,如圖 1所示命令及數(shù)據(jù)總線120。此外,系統(tǒng)中還包括一個(gè)負(fù)責(zé)調(diào)度各處理單元爭用共享總線的全局仲裁器110。系統(tǒng)內(nèi)處理元件與資源目標(biāo)之間通過共享總線進(jìn)行通信,一般分為以下幾個(gè)步驟步驟一處理元件首先向全局仲裁器申請(qǐng)總線占有權(quán)。步驟二 如果總線處于空閑狀態(tài),全局仲裁器監(jiān)測當(dāng)前總線的申請(qǐng)請(qǐng)求,并對(duì)具有最高優(yōu)先級(jí)的總線申請(qǐng)請(qǐng)求發(fā)起者進(jìn)行授權(quán)。如果總線正在傳輸數(shù)據(jù),則仲裁器等待當(dāng)前通信結(jié)束后再對(duì)總線申請(qǐng)請(qǐng)求進(jìn)行仲裁。步驟三處理元件獲得總線授權(quán)后開始占用總線與目標(biāo)單元進(jìn)行通信。步驟四通信結(jié)束后釋放總線,仲裁器再次監(jiān)測當(dāng)前總線的申請(qǐng)請(qǐng)求進(jìn)行授權(quán)。共享總線互聯(lián)方式的特點(diǎn)是系統(tǒng)僅包含一組共享總線,其好處是結(jié)構(gòu)緊湊,節(jié)省布線資源。然而這種共享總線的結(jié)構(gòu)在任一時(shí)間節(jié)點(diǎn)上僅允許單獨(dú)的一組數(shù)據(jù)在總線上傳輸,因此限制了處理元件與共享資源之間的通信帶寬。此外,在多個(gè)處理元件同時(shí)請(qǐng)求使用總線時(shí),由于上述原因在該時(shí)間節(jié)點(diǎn)上僅有一個(gè)處理元件可被授權(quán),因此會(huì)引入總線訪問的爭用問題,處理元件發(fā)起的通信請(qǐng)求由于優(yōu)先級(jí)較低可能長時(shí)間得不到授權(quán)從而使該處理元件長時(shí)間處于停滯狀態(tài),從而影響系統(tǒng)包處理速率。

發(fā)明內(nèi)容
有鑒于此,本發(fā)明提出一種交叉開關(guān)(crossbar switch)結(jié)構(gòu)與分布式總線互連相結(jié)合的片上互聯(lián)方案,通過在處理元件與共享資源間提供多組并行總線以提高數(shù)據(jù)交互的并行性,解決因共享總線所帶來的通信帶寬瓶頸問題,從而提高網(wǎng)絡(luò)處理器系統(tǒng)包處理速率。為了實(shí)現(xiàn)上述目的,本發(fā)明的互聯(lián)方案包括本發(fā)明將包處理單元作為主控端(master),是包處理事務(wù)的發(fā)起者;靜態(tài)隨機(jī)存儲(chǔ)器控制器、動(dòng)態(tài)隨機(jī)存儲(chǔ)器控制器、加解密鑒權(quán)單元、數(shù)據(jù)流接口單元是數(shù)據(jù)處理的具體實(shí)施者,作為系統(tǒng)共享資源可被任一主控端訪問。本發(fā)明為網(wǎng)絡(luò)處理器系統(tǒng)互聯(lián)提供命令總線與數(shù)據(jù)總線分離的技術(shù),提高總線交易執(zhí)行的并行性。將包處理事務(wù)的發(fā)起與執(zhí)行分離,包處理單元不必監(jiān)測事務(wù)執(zhí)行的細(xì)節(jié), 僅專注于數(shù)據(jù)的分組與轉(zhuǎn)發(fā);包處理單元發(fā)起事務(wù)可根據(jù)系統(tǒng)需要轉(zhuǎn)而執(zhí)行其它事務(wù),而不必一直等待上一事務(wù)的完成。為了緩解共享總線中訪問爭用的問題,本方案為每個(gè)資源目標(biāo)的數(shù)據(jù)讀取和數(shù)據(jù)寫入提供單獨(dú)的總線,這些總線被稱為讀總線和寫總線。(需要注意的是,數(shù)據(jù)讀取與數(shù)據(jù)寫入是從共享資源目標(biāo)的觀點(diǎn)而言。即數(shù)據(jù)讀取是從資源目標(biāo)中讀取數(shù)據(jù)發(fā)往主控端,而數(shù)據(jù)寫入是將主控端發(fā)出的數(shù)據(jù)寫入資源目標(biāo)。)其中讀總線包括讀數(shù)據(jù)總線和讀ID總線;寫總線包括寫數(shù)據(jù)總線和寫ID總線。讀ID總線和寫ID總線作為數(shù)據(jù)讀取和寫入的標(biāo)識(shí)信息配合讀數(shù)據(jù)總線和寫數(shù)據(jù)總線完成包處理單元與共享資源之間的數(shù)據(jù)傳輸。為了支持命令總線與數(shù)據(jù)總線分離的技術(shù)以及數(shù)據(jù)總線內(nèi)讀總線與寫總線分離的技術(shù)。本發(fā)明提供分布式的仲裁方案,而不是使用傳統(tǒng)的采用系統(tǒng)全局仲裁的方法。本發(fā)明為命令總線、讀總線以及寫總線分別提供一組輕型仲裁器。每一個(gè)仲裁器僅對(duì)一個(gè)主控端或資源目標(biāo)進(jìn)行控制;此外,系統(tǒng)設(shè)計(jì)者可根據(jù)系統(tǒng)實(shí)際要求對(duì)仲裁器采用不同的優(yōu)先級(jí)算法。正如以上所述,本發(fā)明的一個(gè)或多個(gè)方面可提供以下優(yōu)點(diǎn)。本發(fā)明采用命令總線與數(shù)據(jù)總線分離的技術(shù),將事務(wù)發(fā)起與事務(wù)具體實(shí)施分離, 保證包處理單元僅關(guān)注事務(wù)的發(fā)起及調(diào)度,共享資源負(fù)責(zé)事務(wù)具體實(shí)施以及數(shù)據(jù)交互。在同一時(shí)間節(jié)點(diǎn)為上,系統(tǒng)總線中可發(fā)出多個(gè)事務(wù),并且支持多個(gè)包處理單元與資源目標(biāo)之間的數(shù)據(jù)通信,保證了系統(tǒng)事務(wù)的并行執(zhí)行,提高系統(tǒng)總線數(shù)據(jù)吞吐率。本發(fā)明在數(shù)據(jù)總線中還提供相互獨(dú)立的讀數(shù)據(jù)總線和寫數(shù)據(jù)總線以及對(duì)應(yīng)的讀 ID總線和寫ID總線,將讀/寫數(shù)據(jù)傳輸隔離,多個(gè)處理元件可以在一個(gè)時(shí)間節(jié)點(diǎn)上同時(shí)對(duì)不同的共享資源目標(biāo)進(jìn)行讀和寫訪問,從而更加有效的緩解了共享總線中訪問爭用的問題。
本發(fā)明還提供分布式的仲裁方案,為命令總線、讀總線以及寫總線分別提供一組輕型仲裁器。其最大的特點(diǎn)是極大的降低了系統(tǒng)仲裁的復(fù)雜度,每一組仲裁器以及一組仲裁器中的任意兩個(gè)仲裁器都是相互獨(dú)立的。從而可為系統(tǒng)設(shè)計(jì)者提供多種仲裁算法。此外,基于本仲裁方案中仲裁器的獨(dú)立性的特點(diǎn),系統(tǒng)總線的擴(kuò)展變得極其簡單,從而提高了網(wǎng)絡(luò)處理器系統(tǒng)的可擴(kuò)展性。


圖1是基于共享總線結(jié)構(gòu)的傳統(tǒng)網(wǎng)絡(luò)處理器系統(tǒng)互聯(lián)方案示意圖;圖2是根據(jù)本發(fā)明的一個(gè)實(shí)施例的網(wǎng)絡(luò)處理器系統(tǒng)互聯(lián)結(jié)構(gòu)的示意圖;圖3是根據(jù)本發(fā)明的一個(gè)實(shí)施例的命令總線細(xì)節(jié)示意圖;圖4是根本本發(fā)明的一個(gè)實(shí)施例的命令傳輸流程圖;圖5是根據(jù)本發(fā)明的一個(gè)實(shí)施例的寫總線細(xì)節(jié)示意圖;圖6是根據(jù)本發(fā)明的一個(gè)實(shí)施例的寫數(shù)據(jù)傳輸流程圖;圖7是根據(jù)本發(fā)明的一個(gè)實(shí)施例的讀總線細(xì)節(jié)示意圖;圖8是根據(jù)本發(fā)明的一個(gè)實(shí)施例的讀數(shù)據(jù)傳輸流程具體實(shí)施例方式以下結(jié)合具體實(shí)施例,對(duì)本發(fā)明進(jìn)行詳細(xì)說明。實(shí)施例1參考圖2所示的一個(gè)實(shí)施例的網(wǎng)絡(luò)處理器體系結(jié)構(gòu)。在該體系結(jié)構(gòu)中,包括四個(gè)包處理單元202A、202B、202C、202D。需要注意的是本發(fā)明并不對(duì)此作出限定,例如在其它實(shí)施例中包括(但不限于)六個(gè)或八個(gè)包處理單元;包處理單元可根據(jù)系統(tǒng)設(shè)計(jì)者的需要完成相同或不同的功能。包處理單元作為網(wǎng)絡(luò)處理器包處理的核心元件,與系統(tǒng)內(nèi)其它數(shù)據(jù)處理單元頻繁交互數(shù)據(jù)。包處理單元作為主控端發(fā)起事務(wù),對(duì)目標(biāo)資源進(jìn)行訪問。正如圖2所示,本實(shí)施例的網(wǎng)絡(luò)處理器還包括多種典型的共享資源。依次為,SRAM 單元212,DRAM單元214,加解密鑒權(quán)單元216以及數(shù)據(jù)流接口 218。特別地,DRAM單元214 與SRAM單元212作為片外DRAM和SRAM存儲(chǔ)器的控制單元,負(fù)責(zé)支持包處理單元對(duì)片外存儲(chǔ)設(shè)備的共享訪問,在對(duì)片外存儲(chǔ)設(shè)備存取帶寬要求較高的系統(tǒng)中還可以采用多存儲(chǔ)控制器的結(jié)構(gòu),而不僅限于本實(shí)施例中單一的DRAM單元和SRAM單元。正如圖2所示,根據(jù)網(wǎng)絡(luò)處理器體系結(jié)構(gòu)中包處理事務(wù)的發(fā)起與事務(wù)的具體實(shí)施可分離的特點(diǎn),本實(shí)施例采用命令總線與數(shù)據(jù)總線分離的方法,即命令總線與數(shù)據(jù)總線相互獨(dú)立;包處理單元采用全雙工的通訊方式從而達(dá)到提高數(shù)據(jù)吞吐率的目的,本方案為每個(gè)共享資源的數(shù)據(jù)讀取和數(shù)據(jù)寫入提供單獨(dú)的總線,這些總線被稱為讀總線和寫總線。由于本實(shí)施例中包括四個(gè)作為主控端的包處理單元202A、202B、202C、202D,因此系統(tǒng)互聯(lián)方案提供四組總線,從而支持四個(gè)主控端并行訪問共享資源。每組總線包括命令總線以及兩組數(shù)據(jù)總線,即用于讀取數(shù)據(jù)的讀總線和用于寫入數(shù)據(jù)的寫總線。在該實(shí)施例的數(shù)據(jù)總線中除了提供用于數(shù)據(jù)傳輸?shù)淖x/寫數(shù)據(jù)總線外,還提供用于輔助主控端與目標(biāo)資源進(jìn)行數(shù)據(jù)傳輸?shù)臉?biāo)識(shí)總線,即用于輔助主控端讀取資源目標(biāo)數(shù)據(jù)的讀ID總線以及用于輔助主控端將數(shù)據(jù)寫入資源目標(biāo)的寫ID總線。正如圖2所顯示的那樣,上述實(shí)施例的網(wǎng)絡(luò)處理器所使用的總線包括命令總線220,讀數(shù)據(jù)總線222,寫數(shù)據(jù)總線224,讀ID總線226以及寫ID 總線2觀。圖3根據(jù)一個(gè)實(shí)施例展示出命令總線220的細(xì)節(jié)。命令總線使用交叉開關(guān)的結(jié)構(gòu), 包處理單元作為主控端,是命令的發(fā)起者。每個(gè)主控端固定地連接到命令總線中其中一條總線上,而每個(gè)共享資源通過一個(gè)多路復(fù)用器耦合到命令總線上,這支持每個(gè)共享資源與每個(gè)包處理單元之間的選擇性連接,多路復(fù)用器通過與其對(duì)應(yīng)的命令仲裁器控制共享資源與命令總線的接通或斷開。需要注意的是,每條總線表示對(duì)應(yīng)各自總線的一組信號(hào)線,而不是單個(gè)信號(hào);每條總線的位寬取決于網(wǎng)絡(luò)處理器實(shí)現(xiàn)的具體方式。在下文中提到的寫總線以及讀總線均不再做重復(fù)說明。參考圖3所示的命令總線細(xì)節(jié),在該體系結(jié)構(gòu)中的水平總線組(即命令總線)包括300A、300B、300C、300D。每個(gè)共享資源通過一個(gè)多路復(fù)用器耦合到水平總線組上,所述用于支持交叉開關(guān)的命令(CMD)多路復(fù)用器包括312A、312B、312C、312D。為了解決多個(gè)包處理單元在同一時(shí)間節(jié)點(diǎn)上對(duì)同一個(gè)共享資源發(fā)送命令而引起的訪問競爭問題,本實(shí)施例還在每一個(gè)交叉開關(guān)節(jié)點(diǎn)上提供節(jié)點(diǎn)緩存,即為每一個(gè)多路復(fù)用器提供一組命令緩存FIFO, 每一組命令緩存FIFO包括四個(gè)相互獨(dú)立的FIFO,每一個(gè)FIFO負(fù)責(zé)維護(hù)水平總線組中的一條總線上的命令。命令緩存FIFO組將水平總線組中訪問本共享資源的命令存入對(duì)應(yīng)的 FIFO中。所述命令緩存FIFO組包括314A、314B、314C、314D。在本實(shí)施方式中采用分布式的仲裁技術(shù),每一個(gè)命令多路復(fù)用器和與之對(duì)應(yīng)的命令緩存FIFO組通過一個(gè)輕型的命令仲裁器(CA)進(jìn)行監(jiān)測和控制。每一個(gè)命令仲裁器對(duì)水平總線組中的數(shù)據(jù)進(jìn)行監(jiān)測,將訪問本單元的命令放入對(duì)應(yīng)的命令緩存FIFO中,同時(shí)控制命令多路復(fù)用器選通某一線路將對(duì)應(yīng)FIFO中的命令發(fā)送到資源目標(biāo)。所述輕型命令仲裁器包括316A、316B、316C、316D。參照?qǐng)D3,以命令仲裁器CAl為例進(jìn)一步說明命令仲裁器對(duì)命令總線以及命令仲裁器負(fù)責(zé)維護(hù)的命令緩存FIFO組的監(jiān)控方法,包括(1)對(duì)命令總線的監(jiān)控。命令仲裁器CAl每個(gè)時(shí)鐘周期對(duì)水平總線組300中命令有效標(biāo)志進(jìn)行檢測,如果命令有效標(biāo)志有效,則將命令總線中的ID信息與仲裁器CAl的ID 進(jìn)行比較。如果匹配,則表明當(dāng)前命令的目的地是仲裁器CAl負(fù)責(zé)維護(hù)的資源目標(biāo)214,命令仲裁器CAl將命令存入緩存FIFO組314B中。(2)對(duì)命令緩存FIFO組的監(jiān)控。命令仲裁器CAl對(duì)命令緩存FIFO組314B中每一個(gè)FIFO的空滿標(biāo)志位進(jìn)行檢測。在接收命令階段,命令仲裁器CAl對(duì)每一個(gè)FIFO的滿標(biāo)志位進(jìn)行檢測,當(dāng)某一個(gè)FIFO為滿時(shí),命令仲裁器將拒絕接收此FIFO負(fù)責(zé)維護(hù)的命令總線中的命令,因此,掛入這條命令總線中的主控端將暫停向相應(yīng)的目標(biāo)資源發(fā)送命令。在目標(biāo)資源從FIFO組中取出命令階段,命令仲裁器CAl對(duì)每一個(gè)FIFO的空標(biāo)志位進(jìn)行檢測,對(duì)不為空的命令FIFO進(jìn)行優(yōu)先級(jí)排隊(duì),將最高優(yōu)先級(jí)FIFO中的命令取出發(fā)送至目標(biāo)資源214。圖4所示為依照本發(fā)明的一個(gè)實(shí)例的命令傳輸流程,包括步驟301 共享資源的命令仲裁器對(duì)命令總線以及本命令仲裁器負(fù)責(zé)維護(hù)的命令緩存FIFO組進(jìn)行監(jiān)控,當(dāng)命令總線上有命令發(fā)出時(shí),跳轉(zhuǎn)到步驟303 ;當(dāng)上一條命令從命令緩存FIFO中取出并完成發(fā)送時(shí),跳轉(zhuǎn)到步驟307 ;步驟303 命令仲裁器對(duì)命令總線上的數(shù)據(jù)進(jìn)行實(shí)時(shí)監(jiān)控,當(dāng)有命令出現(xiàn)在命令總線上時(shí)判斷該命令是否是發(fā)往本仲裁器對(duì)應(yīng)的資源目標(biāo),如果是則跳轉(zhuǎn)到步驟305,否則繼續(xù)監(jiān)控;步驟305 命令仲裁器控制對(duì)應(yīng)的緩存FIFO接收命令;步驟307 命令仲裁器對(duì)命令緩存FIFO組進(jìn)行監(jiān)控,若有FIFO不為空,則跳轉(zhuǎn)到步驟309,否則繼續(xù)監(jiān)控;步驟309 命令仲裁器篩選出不為空的命令FIFO,并控制多路復(fù)用器選通當(dāng)前具有最高優(yōu)先級(jí)FIFO的輸出線路,將命令取出發(fā)送到資源目標(biāo)。需要注意的是,根據(jù)本發(fā)明采用分布式仲裁技術(shù)的特點(diǎn),每一個(gè)共享資源對(duì)應(yīng)的命令仲裁器都會(huì)并行執(zhí)行上述步驟。此外,命令存入緩存FIFO與緩存命令發(fā)送往資源目標(biāo)是相互獨(dú)立的,因此這兩個(gè)過程也是并行執(zhí)行的,正如圖4中所顯示的那樣。下面以包處理單元202A發(fā)送訪問SRAM單元212的命令為例進(jìn)行說明(1)包處理單元202A發(fā)起事務(wù)請(qǐng)求,即將命令發(fā)送到命令總線300A。(2) SRAM單元212對(duì)應(yīng)的命令仲裁器316A監(jiān)測到命令總線中有訪問本單元的命令,因此控制命令總線300A上的命令存入命令緩存FIFO組314A中對(duì)應(yīng)FIFO中。(3)命令仲裁器316A監(jiān)測到命令緩存FIFO組314A不全為空,判斷當(dāng)前具有最高優(yōu)先級(jí)的命令FIFO,并控制多路復(fù)用器312A選通命令總線300A對(duì)應(yīng)的緩存FIFO,將命令發(fā)送到SRAM單元212。在一個(gè)實(shí)施例中,水平總線組中總線的數(shù)量等于該體系結(jié)構(gòu)中包處理單元的數(shù)量,交叉節(jié)點(diǎn)數(shù)量取決于水平總線與共享資源的數(shù)量。因此本發(fā)明不限制總線組中總線數(shù)量以及對(duì)應(yīng)的多路復(fù)用器,命令緩存FIFO的數(shù)量。例如在本實(shí)例的說明圖中,網(wǎng)絡(luò)處理器體系結(jié)構(gòu)包括四個(gè)包處理單元,從而命令總線包括四條總線;該體系結(jié)構(gòu)中包括四個(gè)共享資源,從而包括四個(gè)對(duì)應(yīng)的多路復(fù)用器,四組命令緩存FIFO以及四個(gè)輕型命令仲裁器。實(shí)施例2根據(jù)一個(gè)實(shí)施例,圖5顯示了寫總線的細(xì)節(jié)。寫總線包括用于數(shù)據(jù)傳輸?shù)膶憯?shù)據(jù)總線400A、400B、400C和400D,以及用于傳輸標(biāo)識(shí)信息的寫ID總線402A、402B、402C和 402D。正如圖5所顯示的那樣,每一個(gè)共享資源固定地連接到一條寫ID總線上,每一個(gè)主控端通過一個(gè)ID多路復(fù)用器耦合到水平的寫ID總線上。所述用于支持交叉開關(guān)的ID多路復(fù)用器依次為412A、412B、412C以及412D。每一個(gè)多路復(fù)用器通過一個(gè)輕型的寫仲載器 (WA)進(jìn)行控制,寫仲裁器監(jiān)測寫ID總線中的信息,對(duì)訪問本主控端的請(qǐng)求進(jìn)行響應(yīng),這些仲裁器依次為422A、422B、422C以及422D。在圖5說明的實(shí)施例中,數(shù)據(jù)的寫入是經(jīng)由寫數(shù)據(jù)總線傳輸完成的,每一個(gè)主控端作為數(shù)據(jù)的提供者,固定地連接到一條寫數(shù)據(jù)總線上,而每一個(gè)共享資源通過與一個(gè)數(shù)據(jù)多路復(fù)用器耦合到寫數(shù)據(jù)總線上。所述用于支持交叉開關(guān)的數(shù)據(jù)多路復(fù)用器包括414A、 414B、414C以及414D。此外,每一個(gè)數(shù)據(jù)多路復(fù)用器通過一個(gè)ID仲裁器進(jìn)行控制,ID仲裁器記錄共享資源發(fā)起數(shù)據(jù)傳輸請(qǐng)求時(shí)所發(fā)出的ID信息,并在數(shù)據(jù)寫入時(shí)控制多路復(fù)用器選通相應(yīng)寫數(shù)據(jù)總線,從而完成數(shù)據(jù)寫入。所述ID仲裁器依次為424A、4MB、424C以及 424D0圖6所示為依照本發(fā)明的一個(gè)實(shí)例展示了寫總線上寫仲裁器與ID仲裁器協(xié)調(diào)工作完成寫數(shù)據(jù)的傳輸流程,包括
步驟401 共享資源在處理一個(gè)事務(wù)時(shí),可能需要包處理單元提供相關(guān)數(shù)據(jù),此時(shí)共享資源發(fā)起寫數(shù)據(jù)請(qǐng)求,并跳轉(zhuǎn)到步驟403 ;步驟403 該共享資源的ID仲裁器記錄下ID信息,并跳轉(zhuǎn)到步驟405 ;步驟405 各包處理單元對(duì)應(yīng)的寫仲裁器對(duì)寫ID總線中的信息進(jìn)行監(jiān)控,當(dāng)檢測到寫ID總線上有訪問本單元的請(qǐng)求時(shí),跳轉(zhuǎn)到步驟407,否則繼續(xù)進(jìn)行監(jiān)控;步驟407 寫仲裁器控制多路復(fù)用器選通對(duì)應(yīng)的寫ID總線;步驟409 包處理單元接收到訪問本單元的ID信息后,準(zhǔn)備相應(yīng)數(shù)據(jù)并發(fā)送到寫數(shù)據(jù)總線上;步驟411 ID仲裁器根據(jù)資源目標(biāo)發(fā)起寫數(shù)據(jù)請(qǐng)求時(shí)所記錄的ID信息控制多路復(fù)用器選通相應(yīng)寫數(shù)據(jù)總線,完成數(shù)據(jù)傳輸。需要注意的是,根據(jù)本發(fā)明采用分布式仲裁技術(shù)的特點(diǎn),每一個(gè)共享資源對(duì)應(yīng)的 ID仲裁器只有在本單元發(fā)起寫數(shù)據(jù)操作時(shí)才會(huì)記錄相應(yīng)ID信息,各ID仲裁器是相互獨(dú)立工作的。同理,每一個(gè)主控端的寫仲裁器并行獨(dú)立的檢測寫ID總線上的信息。下面以DRAM單元214在處理事務(wù)時(shí)需要包處理單元202C對(duì)其寫入數(shù)據(jù)為例進(jìn)行說明(I)DRAM單元214在寫ID總線402B發(fā)出寫ID信息。(2) DRAM單元214對(duì)應(yīng)的ID仲裁器424B記錄相應(yīng)ID信息,同時(shí)包處理單元202C 對(duì)應(yīng)的寫仲裁器422C檢測到寫ID總線上有訪問本單元的請(qǐng)求,因此控制多路復(fù)用器412C 選通寫ID總線402B。(3)包處理單元202C接收到訪問本單元的ID信息,并將對(duì)應(yīng)的數(shù)據(jù)發(fā)往寫數(shù)據(jù)總線400C上。(4)DRAM單元214對(duì)應(yīng)的ID仲裁器424B控制多路復(fù)用器414B選通寫數(shù)據(jù)總線 400C,數(shù)據(jù)成功寫入DRAM單元。實(shí)施例3根據(jù)一個(gè)實(shí)施例,圖7顯示了讀總線的細(xì)節(jié)。讀總線包括用于數(shù)據(jù)傳輸?shù)淖x數(shù)據(jù)總線500A、500B、500C和500D,以及傳輸標(biāo)識(shí)信息的讀ID總線502A、502B、502C以及502D。 與圖5顯示的寫ID總線相似,每一個(gè)共享資源固定地連接到一條讀ID總線上。不同之處在于,在讀數(shù)據(jù)總線中,每一個(gè)共享資源固定地連接到一條讀數(shù)據(jù)總線上,而主控端通過一個(gè)數(shù)據(jù)多路復(fù)用器耦合到讀數(shù)據(jù)總線上。所述用于支持交叉開關(guān)的讀數(shù)據(jù)多路復(fù)用器包括512A、512B、512C、512D。與寫總線另一個(gè)不同之處在于,為了解決多個(gè)共享資源在同一時(shí)間節(jié)點(diǎn)上對(duì)同一個(gè)主控端返回?cái)?shù)據(jù)而引起的訪問競爭問題,本實(shí)施例還在每一個(gè)交叉開關(guān)節(jié)點(diǎn)上提供節(jié)點(diǎn)緩存,即為每一個(gè)多路復(fù)用器提供一組數(shù)據(jù)緩存FIFO,每一組緩存FIFO 包括四個(gè)相互獨(dú)立的FIFO,每一個(gè)FIFO負(fù)責(zé)維護(hù)讀數(shù)據(jù)總線中一條總線上數(shù)據(jù)。所述數(shù)據(jù)緩存FIFO組包括514A、514B、514C、514D。根據(jù)本發(fā)明采用分布式的仲裁技術(shù)的特點(diǎn),每一個(gè)數(shù)據(jù)多路復(fù)用器和對(duì)應(yīng)的數(shù)據(jù)緩存FIFO組通過一個(gè)輕型的讀仲裁器(RA)進(jìn)行監(jiān)測和控制。每一個(gè)讀仲裁器對(duì)讀總線中的數(shù)據(jù)進(jìn)行監(jiān)測,將返回本單元的數(shù)據(jù)放入對(duì)應(yīng)的命令緩存FIFO中,并添加相應(yīng)的ID信息(如地址信息等),同時(shí)控制數(shù)據(jù)多路復(fù)用器選通某一線路,將對(duì)應(yīng)FIFO中的數(shù)據(jù)發(fā)送到包處理單元。所述輕型讀仲裁器包括522A、522B、522C、 522D。
圖8所示為依照本發(fā)明的一個(gè)實(shí)例展示了讀數(shù)據(jù)總線上數(shù)據(jù)傳輸?shù)牧鞒?,包括步驟501 包處理單元所對(duì)應(yīng)的讀仲裁對(duì)讀ID總線上的信息以及各自數(shù)據(jù)緩存 FIFO組進(jìn)行監(jiān)控,當(dāng)讀ID總線上有ID信息發(fā)出時(shí),跳轉(zhuǎn)到步驟503 ;當(dāng)上一個(gè)數(shù)據(jù)從數(shù)據(jù)緩存FIFO中取出并完成發(fā)送時(shí),跳轉(zhuǎn)到步驟507 ;步驟503 讀仲裁器對(duì)讀ID總線上的信息進(jìn)行實(shí)時(shí)監(jiān)控,判斷請(qǐng)求是否是發(fā)往本仲裁器對(duì)應(yīng)的包處理單元,如果是則跳轉(zhuǎn)到步驟505,否則繼續(xù)監(jiān)控;步驟505 讀仲裁器控制對(duì)應(yīng)的緩存FIFO接收來自相應(yīng)讀數(shù)據(jù)總線上的數(shù)據(jù),并添加相應(yīng)的ID信息;步驟507 讀仲裁器對(duì)數(shù)據(jù)緩存FIFO組進(jìn)行監(jiān)控,若有FIFO不為空,則跳轉(zhuǎn)到步驟509,否則繼續(xù)監(jiān)控;步驟509 讀仲裁器篩選出不為空的FIFO,并控制多路復(fù)用器選通當(dāng)前具有最高優(yōu)先級(jí)FIFO的輸出線路,將數(shù)據(jù)取出發(fā)送到包處理單元。需要注意的是,根據(jù)本發(fā)明采用分布式仲裁技術(shù)的特點(diǎn),每一個(gè)包處理單元的讀仲裁器都會(huì)并行執(zhí)行上述步驟。此外,數(shù)據(jù)存入緩存FIFO與緩存數(shù)據(jù)發(fā)送往資源目標(biāo)是相互獨(dú)立的,因此這兩個(gè)過程也是并行執(zhí)行的,正如圖8中所顯示的那樣。下面以SRAM單元212在處理事務(wù)時(shí)需要向包處理單元202B返回?cái)?shù)據(jù)為例進(jìn)行說明(1) SRAM單元212在讀ID總線502A發(fā)出ID信息,并將數(shù)據(jù)發(fā)送到讀數(shù)據(jù)總線 500A 上。(2)包處理單元202B對(duì)應(yīng)的讀仲裁器522B檢測到讀ID總線502A上有訪問本單元的請(qǐng)求,因此控制讀數(shù)據(jù)總線500A上的數(shù)據(jù)存入的數(shù)據(jù)緩存FIFO組514B中對(duì)應(yīng)的FIFO 中,同時(shí)添加必要的ID信息。(3)讀仲裁器522B檢測數(shù)據(jù)緩存FIFO組514B中的FIFO不全為空,判斷當(dāng)前具有最高優(yōu)先級(jí)的數(shù)據(jù)緩存FIFO,并控制多路復(fù)用器512B選通讀數(shù)據(jù)總線500A對(duì)應(yīng)的緩存 FIFO,將數(shù)據(jù)發(fā)送到包處理單元。應(yīng)當(dāng)理解的是,對(duì)本領(lǐng)域普通技術(shù)人員來說,可以根據(jù)上述說明加以改進(jìn)或變換, 而所有這些改進(jìn)和變換都應(yīng)屬于本發(fā)明所附權(quán)利要求的保護(hù)范圍。
權(quán)利要求
1.一種基于交叉開關(guān)結(jié)構(gòu)的片上互聯(lián)方法,其特征在于,處理元件與共享資源間提供多組并行總線以提高數(shù)據(jù)交互的并行性;命令總線與數(shù)據(jù)總線分離;為每個(gè)資源目標(biāo)的數(shù)據(jù)讀取和數(shù)據(jù)寫入提供單獨(dú)的總線,這些總線分別稱為讀總線和寫總線;其中讀總線包括讀數(shù)據(jù)總線和讀ID總線;寫總線包括寫數(shù)據(jù)總線和寫ID總線;讀ID總線和寫ID總線作為數(shù)據(jù)讀取和寫入的標(biāo)識(shí)信息配合讀數(shù)據(jù)總線和寫數(shù)據(jù)總線完成包處理單元與共享資源之間的數(shù)據(jù)傳輸;為命令總線、讀總線以及寫總線分別提供一組輕型仲裁器。
2.根據(jù)權(quán)利要求1所述的基于交叉開關(guān)結(jié)構(gòu)的片上互聯(lián)方法,其特征在于,在命令總線中,為每一個(gè)共享資源提供一組命令緩存FIFO,用于緩存命令總線中發(fā)往共享資源的命令。
3.根據(jù)權(quán)利要求1所述的基于交叉開關(guān)結(jié)構(gòu)的片上互聯(lián)方法,其特征在于,在命令總線中,為每一個(gè)共享資源提供一個(gè)獨(dú)立的命令仲裁器,用于維護(hù)命令緩存FIFO組。
4.根據(jù)權(quán)利要求1所述的基于交叉開關(guān)結(jié)構(gòu)的片上互聯(lián)方法,其特征在于,在寫總線中,為每一個(gè)處理元件提供一個(gè)獨(dú)立的輕型寫仲裁器,用于監(jiān)測寫ID總線中的ID信息;同時(shí)為每一個(gè)共享資源提供一個(gè)獨(dú)立的ID仲裁器,用于記錄共享資源發(fā)起數(shù)據(jù)傳輸請(qǐng)求時(shí)所發(fā)出的ID信息,并控制多路復(fù)用器選通相應(yīng)線路。
5.根據(jù)權(quán)利要求1所述的基于交叉開關(guān)結(jié)構(gòu)的片上互聯(lián)方法,其特征在于,在讀總線中,為每一個(gè)處理元件提供一組相互獨(dú)立的數(shù)據(jù)緩存FIFO,用于緩存發(fā)往本單元的數(shù)據(jù)。
6.根據(jù)權(quán)利要求1所述的基于交叉開關(guān)結(jié)構(gòu)的片上互聯(lián)方法,其特征在于,在讀總線中,為每一個(gè)處理元件提供一個(gè)獨(dú)立的讀仲裁器,用于維護(hù)數(shù)據(jù)緩存FIFO。
7.根據(jù)權(quán)利要求1所述的基于交叉開關(guān)結(jié)構(gòu)的片上互聯(lián)方法,其特征在于,所述命令總線的命令傳輸流程包括以下步驟步驟301 共享資源的命令仲裁器對(duì)命令總線以及本命令仲裁器負(fù)責(zé)維護(hù)的命令緩存 FIFO組進(jìn)行監(jiān)控,當(dāng)命令總線上有命令發(fā)出時(shí),跳轉(zhuǎn)到步驟303 ;當(dāng)上一條命令從命令緩存 FIFO中取出并完成發(fā)送時(shí),跳轉(zhuǎn)到步驟307 ;步驟303 命令仲裁器對(duì)命令總線上的數(shù)據(jù)進(jìn)行實(shí)時(shí)監(jiān)控,當(dāng)有命令出現(xiàn)在命令總線上時(shí)判斷該命令是否是發(fā)往本仲裁器對(duì)應(yīng)的資源目標(biāo),如果是則跳轉(zhuǎn)到步驟305,否則繼續(xù)監(jiān)控;步驟305 命令仲裁器控制對(duì)應(yīng)的緩存FIFO接收命令;步驟307 命令仲裁器對(duì)命令緩存FIFO組進(jìn)行監(jiān)控,若有FIFO不為空,則跳轉(zhuǎn)到步驟 309,否則繼續(xù)監(jiān)控;步驟309 命令仲裁器篩選出不為空的命令FIFO,并控制多路復(fù)用器選通當(dāng)前具有最高優(yōu)先級(jí)FIFO的輸出線路,將命令取出發(fā)送到資源目標(biāo)。
8.根據(jù)權(quán)利要求1所述的基于交叉開關(guān)結(jié)構(gòu)的片上互聯(lián)方法,其特征在于,所述寫總線上數(shù)據(jù)傳輸?shù)牧鞒贪ㄒ韵虏襟E步驟401 共享資源在處理一個(gè)事務(wù)時(shí),可能需要包處理單元提供相關(guān)數(shù)據(jù),此時(shí)共享資源發(fā)起寫數(shù)據(jù)請(qǐng)求,并跳轉(zhuǎn)到步驟403 ;步驟403 該共享資源的ID仲裁器記錄下ID信息,并跳轉(zhuǎn)到步驟405 ;步驟405 各包處理單元對(duì)應(yīng)的寫仲裁器對(duì)寫ID總線中的信息進(jìn)行監(jiān)控,當(dāng)檢測到寫 ID總線上有訪問本單元的請(qǐng)求時(shí),跳轉(zhuǎn)到步驟407,否則繼續(xù)進(jìn)行監(jiān)控;步驟407 寫仲裁器控制多路復(fù)用器選通對(duì)應(yīng)的寫ID總線;步驟409 包處理單元接收到訪問本單元的ID信息后,準(zhǔn)備相應(yīng)數(shù)據(jù)并發(fā)送到寫數(shù)據(jù)總線上;步驟411 ID仲裁器根據(jù)資源目標(biāo)發(fā)起寫數(shù)據(jù)請(qǐng)求時(shí)所記錄的ID信息控制多路復(fù)用器選通相應(yīng)寫數(shù)據(jù)總線,完成數(shù)據(jù)傳輸。
9.根據(jù)權(quán)利要求1所述的基于交叉開關(guān)結(jié)構(gòu)的片上互聯(lián)方法,其特征在于,所述讀總線上的數(shù)據(jù)傳輸流程包括以下步驟步驟501 包處理單元所對(duì)應(yīng)的讀仲裁器對(duì)讀ID總線上的信息以及各自數(shù)據(jù)緩存FIFO 組進(jìn)行監(jiān)控,當(dāng)讀ID總線上有ID信息發(fā)出時(shí),跳轉(zhuǎn)到步驟503 ;當(dāng)上一個(gè)數(shù)據(jù)從數(shù)據(jù)緩存 FIFO中取出并完成發(fā)送時(shí),跳轉(zhuǎn)到步驟507 ;步驟503 讀仲裁器對(duì)讀ID總線上的信息進(jìn)行實(shí)時(shí)監(jiān)控,判斷請(qǐng)求是否是發(fā)往本仲裁器對(duì)應(yīng)的包處理單元,如果是則跳轉(zhuǎn)到步驟505,否則繼續(xù)監(jiān)控;步驟505 讀仲裁器控制對(duì)應(yīng)的緩存FIFO接收來自相應(yīng)讀數(shù)據(jù)總線上的數(shù)據(jù),并添加相應(yīng)的ID信息;步驟507 讀仲裁器對(duì)數(shù)據(jù)緩存FIFO組進(jìn)行監(jiān)控,若有FIFO不為空,則跳轉(zhuǎn)到步驟 509,否則繼續(xù)監(jiān)控;步驟509 讀仲裁器篩選出不為空的FIFO,并控制多路復(fù)用器選通當(dāng)前具有最高優(yōu)先級(jí)FIFO的輸出線路,將數(shù)據(jù)取出發(fā)送到包處理單元。
全文摘要
本發(fā)明公開了基于交叉開關(guān)結(jié)構(gòu)的片上互聯(lián)方法,處理元件與共享資源間提供多組并行總線以提高數(shù)據(jù)交互的并行性;命令總線與數(shù)據(jù)總線分離;為每個(gè)資源目標(biāo)的數(shù)據(jù)讀取和數(shù)據(jù)寫入提供單獨(dú)的總線,這些總線分別稱為讀總線和寫總線;其中讀總線包括讀數(shù)據(jù)總線和讀ID總線;寫總線包括寫數(shù)據(jù)總線和寫ID總線;讀ID總線和寫ID總線作為數(shù)據(jù)讀取和寫入的標(biāo)識(shí)信息配合讀數(shù)據(jù)總線和寫數(shù)據(jù)總線完成包處理單元與共享資源之間的數(shù)據(jù)傳輸;為命令總線、讀總線以及寫總線分別提供一組輕型仲裁器。從而可為系統(tǒng)設(shè)計(jì)者提供多種仲裁算法。此外,基于本仲裁方案中仲裁器的獨(dú)立性的特點(diǎn),系統(tǒng)總線的擴(kuò)展變得極其簡單,從而提高了網(wǎng)絡(luò)處理器系統(tǒng)的可擴(kuò)展性。
文檔編號(hào)G06F13/38GK102289421SQ20111021001
公開日2011年12月21日 申請(qǐng)日期2011年7月26日 優(yōu)先權(quán)日2011年7月26日
發(fā)明者史江一, 李康, 范勇, 趙慶賀, 郝躍, 雷理, 馬佩軍 申請(qǐng)人:西安電子科技大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
神池县| 社会| 股票| 黔西县| 龙泉市| 清流县| 三江| 中方县| 万山特区| 吉安县| 扬州市| 四会市| 上饶县| 呼玛县| 新巴尔虎右旗| 恩平市| 拜泉县| 白水县| 莱西市| 县级市| 于田县| 怀集县| 和田市| 奇台县| 丰台区| 恭城| 克拉玛依市| 彭州市| 鹤庆县| 高清| 永昌县| 孟连| 贡山| 乐山市| 江源县| 长寿区| 大庆市| 陇南市| 安岳县| 南川市| 吉林市|