專利名稱:緩沖以優(yōu)化片上網(wǎng)絡(luò)中突發(fā)脈沖長(zhǎng)度的集成電路和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種具有多個(gè)處理模塊和耦合所述多個(gè)處理的互聯(lián)裝置的集成電路,以及一種用于緩沖的方法和一種數(shù)據(jù)處理系統(tǒng)。
背景技術(shù):
由于實(shí)現(xiàn)新特性和改善現(xiàn)有功能的需要不斷增長(zhǎng),因此硅上系統(tǒng)復(fù)雜性持續(xù)增加。這能通過增加部件集成在集成電路上的密度來實(shí)現(xiàn)。同時(shí),操作電路的時(shí)鐘脈沖速度也趨于增加。較高的時(shí)鐘脈沖速度與增加的部件密度相組合,減小了可在相同時(shí)鐘域內(nèi)同步操作的區(qū)域。這已經(jīng)產(chǎn)生了對(duì)模塊方法的需求。根據(jù)這種方法,處理系統(tǒng)包括多個(gè)相對(duì)獨(dú)立、復(fù)雜的模塊。在常規(guī)處理系統(tǒng)中,系統(tǒng)模塊通常通過總線相互通信。然而,隨著模塊數(shù)量的增加,由于以下原因這種通信方式不再實(shí)用。一方面,大量模塊形成過高的總線負(fù)載。另一方面,由于總線僅能使一個(gè)器件將數(shù)據(jù)發(fā)送到總線而形成了通信瓶頸。
通信網(wǎng)絡(luò)形成一種有效方式,以克服這些缺點(diǎn)。目前片上網(wǎng)絡(luò)(NoC)作為高復(fù)雜芯片中互聯(lián)問題的一種解決方案受到相當(dāng)多的注意。原因是雙重的。首先,由于NoC構(gòu)成并管理總的布線,因此NoC有助于解決新的深亞微米技術(shù)中的電問題。同時(shí),其共享布線,從而降低其數(shù)量并增加其利用率。NoC也可以高能效且可靠,并且與總線相比其可伸縮。第二,NoC還將計(jì)算與通信去耦,這在管理十億晶體管芯片的設(shè)計(jì)中很關(guān)鍵。NoC實(shí)現(xiàn)這種去耦是由于傳統(tǒng)上使用協(xié)議棧來設(shè)計(jì)NoC,該協(xié)議棧提供良好限定的接口,將通信服務(wù)應(yīng)用與服務(wù)實(shí)施相分開。
然而在設(shè)計(jì)片上系統(tǒng)(SoC)時(shí)使用網(wǎng)絡(luò)進(jìn)行片上通信帶來了很多新的問題,必須將這些問題納入考慮。這是因?yàn)?,與直接連接通信模塊的現(xiàn)有片上互聯(lián)(即,總線、開關(guān)或點(diǎn)對(duì)點(diǎn)布線)相反,在NoC中,模塊通過網(wǎng)絡(luò)節(jié)點(diǎn)遠(yuǎn)程通信。結(jié)果,互聯(lián)仲裁從集中式改變?yōu)榉稚⑹剑胰绻收咸幚?、過高等待時(shí)間和首尾相接信息流控制問題必須通過知識(shí)產(chǎn)權(quán)塊(IPintellectual property block)或網(wǎng)絡(luò)來解決。
大部分這些主題都已經(jīng)成為局域網(wǎng)或廣域網(wǎng)(計(jì)算機(jī)網(wǎng)絡(luò))領(lǐng)域中研究的課題,并已經(jīng)作為平行機(jī)組互聯(lián)網(wǎng)絡(luò)的互聯(lián)。這兩者與片上網(wǎng)絡(luò)有很大相關(guān)性,且這些領(lǐng)域中的很多結(jié)果也都可應(yīng)用到芯片上。然而,NoC的前提與片外網(wǎng)絡(luò)不同,因此,必須再次評(píng)估大部分網(wǎng)絡(luò)設(shè)計(jì)選擇。片上網(wǎng)絡(luò)具有導(dǎo)致不同設(shè)計(jì)選擇的不同特性(例如較緊鏈接同步)和限制(例如,較高存儲(chǔ)成本),其最終影響網(wǎng)絡(luò)服務(wù)。
與直接互聯(lián)如總線或開關(guān)相比,引入作為片上互聯(lián)的網(wǎng)絡(luò)從根本上改變了通信。這是由于網(wǎng)絡(luò)的多跳性質(zhì),其中通信模塊不直接連接,而是由一個(gè)或多個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)分開。這與模塊直接連接的流行的現(xiàn)有互聯(lián)(即,總線)相反。
當(dāng)前片上通信協(xié)議(如,設(shè)備事務(wù)級(jí)DTL和AXI協(xié)議(DeviceTransaction Level DTL and AXI-Protocol))在分開且流水線性的基線上以由請(qǐng)求和響應(yīng)構(gòu)成的事務(wù)進(jìn)行操作,且在主設(shè)備發(fā)出的請(qǐng)求被相應(yīng)的從設(shè)備接受之后釋放總線以由其他使用。分開的流水線性通信協(xié)議專用在多跳互聯(lián)中(例如,片上網(wǎng)絡(luò)或具有橋的總線),允許有效利用互聯(lián)。對(duì)于在從設(shè)備中產(chǎn)生響應(yīng)費(fèi)時(shí)的情況,分開總線的效率增加。基于流水線性協(xié)議,允許主設(shè)備具有多個(gè)未處理的請(qǐng)求(即,期望對(duì)于這些請(qǐng)求的響應(yīng),或即將來臨)。
設(shè)計(jì)上述協(xié)議以在器件級(jí)別進(jìn)行操作,而不是系統(tǒng)或互聯(lián)級(jí)別。換句話說,將其設(shè)計(jì)為獨(dú)立于實(shí)際的互聯(lián)實(shí)施(例如,仲裁信號(hào)不可見),以允許重復(fù)使用知識(shí)產(chǎn)權(quán)塊IP以及其較早的集成。
尤其,上述片上通信協(xié)議包括四個(gè)主要信號(hào)組,即指令(或地址)、寫數(shù)據(jù)、讀數(shù)據(jù)和寫響應(yīng)。指令組由指令、地址和諸如突發(fā)脈沖長(zhǎng)度和掩碼的指令標(biāo)志構(gòu)成。指令和寫數(shù)據(jù)組由啟動(dòng)程序驅(qū)動(dòng)到目標(biāo)。在啟動(dòng)程序指令之后,讀數(shù)據(jù)和寫響應(yīng)被目標(biāo)驅(qū)動(dòng)到啟動(dòng)程序。所有四個(gè)組都相互獨(dú)立,存在一些命令限制于其間,如在指令之前不會(huì)發(fā)布響應(yīng)。
這些片上通信協(xié)議還施行緩沖數(shù)據(jù)的概念,其在現(xiàn)有芯片設(shè)計(jì)技術(shù)中非常公知。通常,緩沖用于去耦不同模塊,其中一個(gè)模塊產(chǎn)生數(shù)據(jù)且另一個(gè)使用該數(shù)據(jù)。無緩沖的情況下,使用模塊會(huì)阻礙制造模塊,直到使用模塊準(zhǔn)備好接收該數(shù)據(jù)為止。為了避免阻礙制造模塊,引入一個(gè)緩沖器,存儲(chǔ)由制造模塊產(chǎn)生的數(shù)據(jù),并由此允許制造模塊即使在使用模塊未準(zhǔn)備好時(shí)也能繼續(xù)運(yùn)行。當(dāng)使用模塊將接收一些或全部緩沖數(shù)據(jù)時(shí),存儲(chǔ)在緩沖器中的數(shù)據(jù)可立即提供給使用模塊。
另一方面,當(dāng)前片上通信協(xié)議還使用寫指令或數(shù)據(jù)的緩沖,從而改善互聯(lián)使用率。因此,在將小的寫突發(fā)脈沖在互聯(lián)上發(fā)送之前,將其存儲(chǔ)或聚集在緩沖器中。代替以短突發(fā)脈沖傳遞,可將聚集的數(shù)據(jù)以長(zhǎng)突發(fā)脈沖在互聯(lián)上傳送,這通常導(dǎo)致改善的互聯(lián)使用率。這可通過緩沖之后直到例如第二寫數(shù)據(jù)W2到達(dá)該緩沖器之前不傳送的第一寫數(shù)據(jù)W1(即,不在互聯(lián)上傳遞數(shù)據(jù))來實(shí)現(xiàn),以將其作為互聯(lián)使用率的一個(gè)最佳長(zhǎng)度突發(fā)脈沖傳送。
因此,多次寫操作的數(shù)據(jù)可被緩沖,并聚集在一個(gè)突發(fā)脈沖中。此外,可將寫指令中的部分?jǐn)?shù)據(jù)以分開的突發(fā)脈沖發(fā)送。
在上述片上通信協(xié)議中施行該緩沖技術(shù)的原因是互聯(lián)連接的片上系統(tǒng)中的知識(shí)產(chǎn)權(quán)塊IP能“自然地”通信,即將碼寬度和突發(fā)脈沖大小構(gòu)造得比互聯(lián)更適合于器件。例如,如果知識(shí)產(chǎn)權(quán)塊IP處理像素,則這些知識(shí)產(chǎn)權(quán)塊使用并制造像素,而在其處理視頻幀的情況下,其使用并制造視頻幀。通過緩沖數(shù)據(jù),強(qiáng)制互聯(lián)上傳輸?shù)臄?shù)據(jù)等待,直到聚集了足夠數(shù)量的數(shù)據(jù)使這些數(shù)據(jù)能夠在一個(gè)突發(fā)脈沖中被一次傳送。
已經(jīng)將上述片上協(xié)議設(shè)計(jì)為主要用于具有小等待時(shí)間的總線。此外,基于以下假設(shè)設(shè)計(jì)這些協(xié)議,即,讀操作通常較緊迫,因此應(yīng)盡快將其完成而不需不必要的緩沖。然而,由于系統(tǒng)越來越大,并且由于諸如網(wǎng)絡(luò)或具有橋的總線的多跳式互聯(lián),等待時(shí)間也增加。在這些情況下,通信粒度變得越來越粗且等待時(shí)間要求變得越來越不嚴(yán)格。
此外,盡管沒有達(dá)到最佳脈沖長(zhǎng)度,但是這些協(xié)議仍包括強(qiáng)制傳送一些當(dāng)前緩沖數(shù)據(jù)的措施,從而防止由無限緩沖數(shù)據(jù)導(dǎo)致的死鎖。DTL通信協(xié)議提供了一個(gè)沖洗信號(hào)(flush signal),它強(qiáng)制在互聯(lián)上傳輸直至當(dāng)前字的所有數(shù)據(jù)。AXI協(xié)議為寫指令提供非緩沖標(biāo)志以強(qiáng)制傳送緩沖數(shù)據(jù)。
發(fā)明內(nèi)容
因此本發(fā)明的一個(gè)目的是提供一種集成電路、一種緩沖方法、以及一種具有改善互聯(lián)使用率的數(shù)據(jù)處理系統(tǒng)。
該目的通過根據(jù)權(quán)利要求1的集成電路、根據(jù)權(quán)利要求13的緩沖方法以及根據(jù)權(quán)利要求14的數(shù)據(jù)處理系統(tǒng)來實(shí)現(xiàn)。
因此,提供了一種包括多個(gè)通過互聯(lián)裝置耦合的處理模塊的集成電路。第一處理模塊基于事務(wù)與第二處理模塊通信。與所述第二處理模塊相關(guān)聯(lián)的第一包封裝置對(duì)來自第二處理模塊的即將通過所述互聯(lián)裝置傳輸?shù)臄?shù)據(jù)進(jìn)行緩沖,直到緩沖了第一數(shù)據(jù)量為止,然后將所述第一緩沖數(shù)據(jù)量傳送到所述第一處理模塊。
因此,在從設(shè)備一側(cè)上緩沖數(shù)據(jù),直到單個(gè)數(shù)據(jù)包中有足夠多的數(shù)據(jù)在互聯(lián)上傳送為止。由于需要較少的數(shù)據(jù)包標(biāo)題,因此降低互聯(lián)上發(fā)送的數(shù)據(jù)包數(shù)量會(huì)降低通信總開銷。緩沖即將被傳送的數(shù)據(jù)直到聚集了足夠數(shù)量的數(shù)據(jù)。
根據(jù)本發(fā)明的一個(gè)方面,第二包封裝置與第一處理模塊相關(guān)聯(lián),用于對(duì)來自所述第一處理模塊的即將通過互聯(lián)裝置傳送到第二處理模塊的數(shù)據(jù)進(jìn)行緩沖,直到緩沖了第二數(shù)量的數(shù)據(jù)為止,然后所述第二包封裝置將所述緩沖數(shù)據(jù)傳送到所述第二處理模塊。因此,緩沖主以及從設(shè)備一側(cè)上的數(shù)據(jù),直到單個(gè)數(shù)據(jù)包中有足夠多的數(shù)據(jù)將在互聯(lián)上傳送為止。
根據(jù)本發(fā)明的另一方面,所述第一和第二包封裝置可分別響應(yīng)于第一和第二非緩沖信號(hào)、或特別是一組信號(hào)的組合來傳送緩沖數(shù)據(jù)(即使比第一和第二數(shù)量少的數(shù)據(jù)在第一和第二包封裝置中被緩沖)。通過發(fā)送非緩沖(unbuffer)信號(hào),可避免發(fā)生由緩沖數(shù)據(jù)的處理等待導(dǎo)致的死鎖。
根據(jù)本發(fā)明的再一方面,所述第一和第二包封裝置可分別根據(jù)第一和第二非緩沖標(biāo)志來傳送緩沖數(shù)據(jù)(即使比第一和第二數(shù)量少的數(shù)據(jù)在所述第一和第二包封裝中被緩沖)。因此,提供了一種沖洗緩沖數(shù)據(jù)的可選方法。與對(duì)每個(gè)事務(wù)所給出的信號(hào)相反,標(biāo)志可被設(shè)置較長(zhǎng)時(shí)間。以這種方式,可打開或關(guān)閉緩沖。標(biāo)志能以任何方式設(shè)置/復(fù)位,例如,通過來自IP的作為事務(wù)一部分的信號(hào)、或通過分開的配置事務(wù)(專門的沖洗事務(wù)或存儲(chǔ)器映象式讀寫)。這些事務(wù)可由相同IP或分開的結(jié)構(gòu)模塊執(zhí)行。
根據(jù)本發(fā)明的優(yōu)選方面,第一和第二包封裝置中的至少一個(gè)包括一個(gè)確定單元BLDU,其用于在傳輸所述數(shù)據(jù)之前,根據(jù)所述第一和第二處理模塊之間的所述通信的通信特性確定所述第一和第二包封裝置中緩沖的最佳第一和第二數(shù)據(jù)數(shù)量。因此,可根據(jù)實(shí)際通信特性來調(diào)整互聯(lián)上傳送的數(shù)據(jù)包尺寸,從而改善互聯(lián)使用率。
本發(fā)明還涉及一種用于在集成電路中緩沖數(shù)據(jù)的方法,該集成電路具有與互聯(lián)裝置連接的多個(gè)處理模塊,其中第一處理模塊基于事務(wù)與第二處理模塊通信,包括步驟對(duì)來自第二處理模塊的在互聯(lián)裝置上傳送的數(shù)據(jù)進(jìn)行緩沖,直到緩沖了第一數(shù)量的數(shù)據(jù)為止,其中當(dāng)已經(jīng)緩沖了第一數(shù)量數(shù)據(jù)時(shí)傳送緩沖的數(shù)據(jù)。
本發(fā)明還涉及一種數(shù)據(jù)處理系統(tǒng),其包括具有多個(gè)通過互聯(lián)裝置耦合的處理模塊的集成電路。第一處理模塊基于事務(wù)與第二處理模塊通信。與所述第二處理模塊相關(guān)聯(lián)的第二包封裝置對(duì)來自第二處理模塊的在所述互聯(lián)裝置上傳送的數(shù)據(jù)進(jìn)行緩沖,直到緩沖了第一數(shù)量的數(shù)據(jù)為止,然后將所述第一數(shù)量的緩沖數(shù)據(jù)傳送到所述第一處理模塊。
因此,如上所述的數(shù)據(jù)緩沖還可用在包括多個(gè)集成電路的系統(tǒng)中。
本發(fā)明基于該思想來緩沖數(shù)據(jù),直到被緩沖的數(shù)據(jù)足夠的,以便在一個(gè)數(shù)據(jù)包中在互聯(lián)裝置上最佳傳送。數(shù)據(jù)包越大,數(shù)據(jù)包標(biāo)題量就越小,因此降低了總開銷并更加有效地利用了互聯(lián)。只有緩沖了最佳數(shù)據(jù)包尺寸的足夠數(shù)據(jù)才能發(fā)送數(shù)據(jù)(即使可以更早發(fā)送數(shù)據(jù))。滿足最佳傳送條件時(shí)只從緩沖器傳送數(shù)據(jù)。
本發(fā)明的其它方面在附屬的權(quán)利要求中描述。
根據(jù)以下描述的一個(gè)(或多個(gè))實(shí)施例,本發(fā)明的這些和其他方面是顯而易見的,且參考以下描述的一個(gè)(或多個(gè))實(shí)施例來說明本發(fā)明的這些和其它方面。
圖1示出了根據(jù)第一實(shí)施例的片上網(wǎng)絡(luò)的概略表示,和圖2示出了根據(jù)第二實(shí)施例的片上網(wǎng)絡(luò)的概略表示。
具體實(shí)施例方式
以下實(shí)施例涉及片上系統(tǒng),即,同一芯片上(例如包括在一個(gè)封裝中的系統(tǒng)、多管芯模塊)或不同芯片上的多個(gè)模塊通過某種互聯(lián)相互通信?;ヂ?lián)可實(shí)施為片上網(wǎng)絡(luò)NOC。片上網(wǎng)絡(luò)可包括布線、總線、時(shí)分多路傳輸、開關(guān)和/或網(wǎng)內(nèi)路由器。在所述網(wǎng)絡(luò)的傳輸層上,模塊之間的通信可在連接上進(jìn)行。把連接看作是在第一模塊和至少一個(gè)第二模塊之間的一組通道,其每一個(gè)都具有一組連接特性。對(duì)于第一模塊和單個(gè)第二模塊之間的連接,該連接可包括兩個(gè)通道,即一個(gè)從第一模塊到第二通道即請(qǐng)求通道,第二個(gè)從第二到第一模塊即響應(yīng)通道。該請(qǐng)求通道被預(yù)留給從第一到第二模塊的數(shù)據(jù)和消息,而響應(yīng)通道被預(yù)留給從第二到第一模塊的數(shù)據(jù)和消息。然而,如果該連接包括一個(gè)第一和N個(gè)第二模塊,則提供2*N個(gè)通道。該連接特性可包括排序(數(shù)據(jù)按順序傳輸)、數(shù)據(jù)流控制(一個(gè)遠(yuǎn)程緩沖器被預(yù)留給一個(gè)連接,且在能夠保證所產(chǎn)生數(shù)據(jù)具有可用空間時(shí)允許數(shù)據(jù)產(chǎn)生器發(fā)送數(shù)據(jù))、吞吐量(保證吞吐量的下限)、等待時(shí)間(保證等待時(shí)間的上限)、損耗(數(shù)據(jù)丟棄)、傳輸終止、事務(wù)完成、數(shù)據(jù)正確性、優(yōu)先級(jí)或數(shù)據(jù)供給。
圖1示出了根據(jù)本發(fā)明的片上網(wǎng)絡(luò)的基本設(shè)置。特別地,描述了每一個(gè)都具有相關(guān)網(wǎng)絡(luò)接口NI的主模塊M和從模塊S。每個(gè)模塊M、S都分別通過其相關(guān)的網(wǎng)絡(luò)接口NI連接到網(wǎng)絡(luò)N。網(wǎng)絡(luò)接口NI用作主模塊M和從模塊S同網(wǎng)絡(luò)N之間的接口。提供網(wǎng)絡(luò)接口NI來管理相應(yīng)模塊M、S和網(wǎng)絡(luò)N之間的通信,以使模塊執(zhí)行他們的專用操作而不需處理與網(wǎng)絡(luò)或其他模塊的通信。網(wǎng)絡(luò)N可包括多個(gè)網(wǎng)絡(luò)路由器R,用于通過網(wǎng)絡(luò)從一個(gè)網(wǎng)絡(luò)接口NI向另一個(gè)發(fā)送數(shù)據(jù)。
如以下描述的模塊是所謂的知識(shí)產(chǎn)權(quán)塊IP(計(jì)算元件,可內(nèi)部含有互聯(lián)模塊的存儲(chǔ)器或子系統(tǒng)),其在所述網(wǎng)絡(luò)接口NI處同網(wǎng)絡(luò)相互作用。一個(gè)網(wǎng)絡(luò)接口NI可連接到一個(gè)或多個(gè)IP塊。相似地,一個(gè)IP塊可連接到多于一個(gè)的網(wǎng)絡(luò)接口NI。
與主模塊M和從模塊S相關(guān)聯(lián)的每一個(gè)網(wǎng)絡(luò)接口都分別包括包封裝置WM2、WM1。包封裝置WM2、WM1負(fù)責(zé)緩沖主模塊M和從模塊S在網(wǎng)絡(luò)N上發(fā)送的任何數(shù)據(jù)。尤其,兩個(gè)包封裝置WM1、WM2分別緩沖來自主模塊M或從模塊S的數(shù)據(jù),直到緩沖了一定量的數(shù)據(jù)為止。之后,作為一定突發(fā)脈沖長(zhǎng)度內(nèi)的數(shù)據(jù)包在網(wǎng)絡(luò)N即互聯(lián)上傳送緩沖數(shù)據(jù)。應(yīng)當(dāng)注意,包封裝置WM2、WM1與主模塊M以及從模塊S相關(guān)聯(lián),以使請(qǐng)求以及響應(yīng)數(shù)據(jù)被緩沖并以各自的突發(fā)脈沖長(zhǎng)度被發(fā)送。由于該響應(yīng)與請(qǐng)求可以不同,因此其突發(fā)脈沖長(zhǎng)度也可以不同。應(yīng)當(dāng)將所選突發(fā)脈沖長(zhǎng)度調(diào)整為適合于網(wǎng)絡(luò)N,以改善網(wǎng)絡(luò)使用率。
圖2示出了根據(jù)第二實(shí)施例的片上網(wǎng)絡(luò)的概略表示。尤其,第二實(shí)施例基本對(duì)應(yīng)于根據(jù)第一實(shí)施例的片上網(wǎng)絡(luò)。因此,第一包封裝置WM1設(shè)置在與從設(shè)備S相關(guān)聯(lián)的網(wǎng)絡(luò)接口NI中,且第二包封裝置WM2設(shè)置在與主設(shè)備M相關(guān)聯(lián)的網(wǎng)絡(luò)接口NI中。與第一實(shí)施例中相同,包封裝置WM1、WM2用于緩沖將在網(wǎng)絡(luò)N上發(fā)送的數(shù)據(jù),直到滿足最佳傳輸條件為止。第一非緩沖標(biāo)志單元UBF1和第二非緩沖標(biāo)志單元UBF2分別設(shè)置在與從設(shè)備S和主設(shè)備M相關(guān)聯(lián)的網(wǎng)絡(luò)接口中。第一和第二非緩沖標(biāo)志單元UBF1、UBF2用于存儲(chǔ)第一和第二非緩沖標(biāo)志。第一和第二包封裝置WM1、WM2被調(diào)整為當(dāng)分別在第一或第二非緩沖標(biāo)記單元UBF1、UBF2中設(shè)置第一或第二非緩沖標(biāo)志時(shí)立即傳送緩沖數(shù)據(jù)。通過提供沖洗緩沖數(shù)據(jù)的這種可能性,可防止由于數(shù)據(jù)被緩沖所導(dǎo)致的死鎖。在這種情況下,正被緩沖的所有數(shù)據(jù)都盡快被傳送,而不需等待數(shù)據(jù)包尺寸適合網(wǎng)絡(luò)N的最佳脈沖長(zhǎng)度。
沖洗緩沖數(shù)據(jù)還可通過由第一或第二包封裝置WM1、WM2接收的第一或第二非緩沖信號(hào)來實(shí)現(xiàn)。因此,如果第一或第二包封裝置WM1、WM2接收到非緩沖信號(hào),則當(dāng)前緩沖的數(shù)據(jù)被盡快傳送,即,不需要等待獲得最佳脈沖長(zhǎng)度。因此,主設(shè)備M啟動(dòng)沖洗請(qǐng)求,且從設(shè)備S啟動(dòng)沖洗響應(yīng)。
和對(duì)于每個(gè)事務(wù)給出的非緩沖信號(hào)相反,非緩沖標(biāo)志可設(shè)置為更長(zhǎng)時(shí)間。以這種方式,緩沖可打開或關(guān)閉。標(biāo)志以任意方式設(shè)置/復(fù)位,例如通過來自IP的作為事務(wù)的一部分的信號(hào),或者通過分開配置的事務(wù)(具體的沖洗處理或存儲(chǔ)器映象式讀或?qū)懼?。這些處理可由相同IP或分開的結(jié)構(gòu)模塊來執(zhí)行。
此外,第一和第二確定裝置BLDU1、BLDU2分別設(shè)置在與從設(shè)備S和主設(shè)備M相關(guān)聯(lián)的網(wǎng)絡(luò)接口NI中。第一和第二確定單元BLDU1、BLDU2用于確定最佳脈沖長(zhǎng)度,以便根據(jù)當(dāng)前通信或連接特性在網(wǎng)絡(luò)N上傳送數(shù)據(jù)。在請(qǐng)求處理的最初階段或在預(yù)定時(shí)間間隔期間,可靜態(tài)或動(dòng)態(tài)地進(jìn)行最佳突發(fā)脈沖長(zhǎng)度的確定。可選地,可動(dòng)態(tài)地確定最佳脈沖長(zhǎng)度,(1)每次在網(wǎng)絡(luò)上建立用于傳輸數(shù)據(jù)的連接,(2)對(duì)于每一事務(wù),(3)IP轉(zhuǎn)換至另一連接時(shí),(4)對(duì)于每個(gè)數(shù)據(jù)包,(5)當(dāng)片上網(wǎng)絡(luò)狀態(tài)改變時(shí)(即重新構(gòu)造、NoC負(fù)載、緩沖填充等)。確定最佳突發(fā)脈沖長(zhǎng)度可基于存儲(chǔ)在確定單元BDLU1、2中的信息或基于從網(wǎng)絡(luò)N或IP塊接收的信息來進(jìn)行。因此,網(wǎng)絡(luò)N可包括一個(gè)通信特性裝置CPM,用于確定且很可能存儲(chǔ)所請(qǐng)求通信或連接的通信或連接特性。CPM可以是集中的或者是分布式的(例如,在每個(gè)NI中)。
除了最佳突發(fā)脈沖長(zhǎng)度確定之外,也能以相同方式通過第一和第二確定裝置BLDU1、BLDU2來確定傳輸時(shí)刻。為了保證的吞吐量GT連接,數(shù)據(jù)應(yīng)等待為其連接而預(yù)留的時(shí)間段中的一個(gè)。通過使用“沖洗”等信號(hào)/標(biāo)志可強(qiáng)制提前發(fā)送數(shù)據(jù)??蛇x地,對(duì)于最佳效果的BE連接,可使用跨過NI中多個(gè)連接上的輪換仲裁?!皼_洗”等信號(hào)可對(duì)連接強(qiáng)制一個(gè)臨時(shí)的較高優(yōu)先級(jí)。
在第一和第二實(shí)施例中,數(shù)據(jù)即緩沖數(shù)據(jù)以數(shù)據(jù)包的形式在網(wǎng)絡(luò)上發(fā)送。數(shù)據(jù)包優(yōu)選形成于各自的網(wǎng)絡(luò)接口NI中,并應(yīng)當(dāng)足夠大,從而以相對(duì)于網(wǎng)絡(luò)N而言的最佳方式傳輸。由于每個(gè)數(shù)據(jù)包都包括數(shù)據(jù)包標(biāo)題,因此,數(shù)據(jù)包越大,所需的數(shù)據(jù)包標(biāo)題數(shù)量就越小,將因此導(dǎo)致降低的總開銷和改善的網(wǎng)絡(luò)使用率。在緩沖的數(shù)據(jù)達(dá)到最佳數(shù)據(jù)包尺寸之前不斷緩沖數(shù)據(jù),以在網(wǎng)絡(luò)上傳輸緩沖數(shù)據(jù)。如果緩沖的數(shù)據(jù)量還沒達(dá)到最佳數(shù)據(jù)包尺寸,即使可以傳送較小尺寸數(shù)據(jù)包,也不在網(wǎng)絡(luò)N上傳送任何數(shù)據(jù)。從通信上看,突發(fā)脈沖長(zhǎng)度與總線或IP相關(guān),但只有發(fā)生信息分包時(shí)才可應(yīng)用數(shù)據(jù)包長(zhǎng)度(對(duì)于總線不是必需的)。之前段落中提到的所有突發(fā)脈沖尺寸確定方案也可用于最佳數(shù)據(jù)包尺寸確定。
優(yōu)選地,根據(jù)第一和第二實(shí)施例,在網(wǎng)絡(luò)接口NI即互聯(lián)接口中緩沖數(shù)據(jù),以使構(gòu)成知識(shí)產(chǎn)權(quán)塊的主設(shè)備M或從設(shè)備S不包括在實(shí)際通信或用于在互聯(lián)或網(wǎng)絡(luò)上通信的通信協(xié)議中。
換句話說,對(duì)于請(qǐng)求以及響應(yīng)都實(shí)現(xiàn)了緩沖,即,在互聯(lián)上進(jìn)行傳送之前,請(qǐng)求以及響應(yīng)分別聚集在主設(shè)備上的或從設(shè)備一側(cè)的緩沖器中。該請(qǐng)求和響應(yīng)聚集在突發(fā)脈沖中,其具有特定互聯(lián)的最佳長(zhǎng)度。與例如寫操作的請(qǐng)求的情況相同,使用無緩沖標(biāo)志響應(yīng)部分事務(wù)可阻止緩沖。因此,可盡快傳送未處理的且包括當(dāng)前響應(yīng)或請(qǐng)求的所有響應(yīng)或請(qǐng)求,而不需緩沖以形成互聯(lián)的最佳突發(fā)脈沖長(zhǎng)度。
根據(jù)再一個(gè)實(shí)施例,主設(shè)備獨(dú)立和/或同時(shí)啟動(dòng)請(qǐng)求以及響應(yīng)的沖洗。在這種情況下,應(yīng)當(dāng)擴(kuò)展(AXI或DTL)指令組,以允許表示不同類型的沖洗(例如,DTL中的2字節(jié)沖洗信號(hào))。響應(yīng)沖洗的這種指示應(yīng)當(dāng)被轉(zhuǎn)送到從設(shè)備NI,其相應(yīng)地動(dòng)作。當(dāng)使用標(biāo)志時(shí)也同樣適用。
根據(jù)再一個(gè)實(shí)施例,片上網(wǎng)絡(luò)的通信方案基于消息傳遞通信方案。在此,消息的消息標(biāo)題可含有沖洗信息,這將引起來自較早發(fā)送的同一個(gè)連接的所有消息被沖洗。
根據(jù)再一個(gè)實(shí)施例,片上網(wǎng)絡(luò)的通信方案是基于數(shù)據(jù)包的通信方案,即在一個(gè)或多個(gè)數(shù)據(jù)包中發(fā)送一條消息,沖洗信息應(yīng)當(dāng)包括在數(shù)據(jù)包標(biāo)題中。
上述方案可用于基于事務(wù)的協(xié)議,如DTL和AXL。尤其,該方案允許包封在事務(wù)中不只對(duì)請(qǐng)求的互聯(lián)而且也對(duì)響應(yīng)的互聯(lián)最優(yōu)化突發(fā)脈沖長(zhǎng)度。請(qǐng)求的實(shí)例是(被確認(rèn)的/無確認(rèn)的)寫指令加數(shù)據(jù)、讀指令或如測(cè)試和設(shè)置的更復(fù)雜指令、信號(hào)標(biāo)志指令(P、V)。響應(yīng)的實(shí)例是讀數(shù)據(jù)、寫應(yīng)答、和從更復(fù)雜指令返回值。由于對(duì)互聯(lián)特性的了解僅存在于包封中,因此通過包封或互聯(lián)接口連接到互聯(lián)的知識(shí)產(chǎn)權(quán)模塊可以獨(dú)立于互聯(lián)而被建立,即,可增加這些IP的重復(fù)使用率。對(duì)于請(qǐng)求,這可能帶來附加的等待時(shí)間,然而卻提高了整個(gè)系統(tǒng)的效率。
此外,通過在與主設(shè)備以及從設(shè)備相關(guān)聯(lián)的網(wǎng)絡(luò)接口中提供包封裝置,網(wǎng)絡(luò)接口能夠被對(duì)稱設(shè)計(jì),這也能夠改善其重復(fù)使用率。
應(yīng)當(dāng)注意,上述實(shí)施例是示意性的而非限制本發(fā)明,且本領(lǐng)域技術(shù)人員能夠在不超出附屬權(quán)利要求范圍的前提下設(shè)計(jì)出很多可選實(shí)施例。在權(quán)利要求中,設(shè)置在圓括號(hào)之間的任意參考符號(hào)都不解釋為限制權(quán)利要求。詞“包括”不排除存在權(quán)利要求中所列之外的元件或步驟。元件前面的詞“一個(gè)”不排除存在多個(gè)這種元件。在列舉若干裝置的設(shè)備權(quán)利要求中,這些裝置中的幾個(gè)可通過同一硬件項(xiàng)來實(shí)現(xiàn)。在相互不同的從屬權(quán)利要求中記載某些措施,但這并不表示不能從這些措施的組合中獲益。
而且,在權(quán)利要求中的任意參考符號(hào)都不應(yīng)解釋為限制權(quán)利要求的范圍。
權(quán)利要求
1.一種集成電路,具有與互聯(lián)裝置(N)連接的多個(gè)處理模塊(M、S),其中第一處理模塊(M)使用事務(wù)與第二處理模塊(S)通信,包括第一包封裝置(WM1),其與所述第二處理模塊(S)相關(guān)聯(lián),用于對(duì)來自所述第二處理模塊(S)的將在互聯(lián)裝置(N)上傳送的數(shù)據(jù)進(jìn)行緩沖,直到緩沖了第一數(shù)量的數(shù)據(jù)為止,其中當(dāng)已經(jīng)緩沖了第一數(shù)量的數(shù)據(jù)時(shí)傳送緩沖數(shù)據(jù)。
2.根據(jù)權(quán)利要求1的集成電路,進(jìn)一步包括第二包封裝置(WM2),其與所述第一處理模塊(M)相關(guān)聯(lián),用于對(duì)來自所述第一處理模塊(M)的將在互聯(lián)裝置(N)上傳送的數(shù)據(jù)進(jìn)行緩沖,直到緩沖了第二數(shù)量的數(shù)據(jù)為止,其中當(dāng)已經(jīng)緩沖了第二數(shù)量的數(shù)據(jù)時(shí)傳送緩沖數(shù)據(jù)。
3.根據(jù)權(quán)利要求1或2的集成電路,其中所述第一和第二包封裝置(WM1、WM2)適合于分別響應(yīng)第一和第二無緩沖信號(hào)或一組信號(hào)的第一和第二組合來傳送緩沖數(shù)據(jù),即使在所述第一和第二包封裝置(WM1、WM2)中緩沖了比所述第一和第二數(shù)量少的數(shù)據(jù)。
4.根據(jù)權(quán)利要求1或2的集成電路,其中所述第一和第二包封裝置(WM1、WM2)適合于分別根據(jù)第一和第二無緩沖標(biāo)志來傳送緩沖數(shù)據(jù),即使在所述第一和第二包封裝置(WM1、WM2)中緩沖了比所述第一和第二數(shù)量少的數(shù)據(jù)。
5.根據(jù)權(quán)利要求1或2的集成電路,其中所述第一和第二包封裝置(WM1、WM2)中的至少一個(gè)包括一個(gè)確定單元(BLDU1、BLDU2),用于根據(jù)所述第一和第二處理模塊(M、S)之間通信的通信特性確定將被緩沖的最佳的第一或第二數(shù)量。
6.根據(jù)權(quán)利要求1或2的集成電路,其中所述第一和第二包封裝置(WM1、WM2)中的至少一個(gè)包括一個(gè)確定單元(BLDU1、BLDU2),用于根據(jù)所述第一和第二處理模塊(M、S)之間通信的通信特性確定在所述第一和第二包封裝置(WM1、WM2)中發(fā)送數(shù)據(jù)的最佳時(shí)刻。
7.根據(jù)權(quán)利要求3的集成電路,其中所述第一無緩沖信號(hào)由所述第二處理模塊(S)啟動(dòng),并且所述第二無緩沖信號(hào)由所述第一處理模塊(M)啟動(dòng)。
8.根據(jù)權(quán)利要求4的集成電路,其中所述第一無緩沖標(biāo)志的設(shè)置由所述第二處理模塊(S)啟動(dòng),并且所述第二無緩沖標(biāo)志的設(shè)置由所述第一處理模塊(M)來啟動(dòng)。
9.根據(jù)權(quán)利要求3或4的集成電路,其中所述第一處理模塊(M)適合于啟動(dòng)所述第一和/或所述第二無緩沖信號(hào)。
10.根據(jù)權(quán)利要求4的集成電路,其中所述第一處理模塊(M)適合于啟動(dòng)所述第一和/或第二無緩沖標(biāo)志的設(shè)置。
11.根據(jù)權(quán)利要求1或2的集成電路,其中所述第一和第二處理模塊(M、S)使用消息傳遞通信方案相互通信,其中消息含有消息標(biāo)題,所述第一和第二包封裝置(WM1、WM2)適合于分別響應(yīng)于所述消息標(biāo)題中的信息來傳輸緩存數(shù)據(jù),即使在所述第一和第二包封裝置(WM1、WM2)中緩沖了比所述第一和第二數(shù)量少的數(shù)據(jù)。
12.根據(jù)權(quán)利要求1或2的集成電路,其中所述第一和第二處理模塊(M、S)使用基于數(shù)據(jù)包的通信方案相互通信,其中數(shù)據(jù)包中含有數(shù)據(jù)包標(biāo)題,所述第一和第二包封裝置(WM1、WM2)適合于分別響應(yīng)于所述數(shù)據(jù)包標(biāo)題中的信息來傳送緩沖數(shù)據(jù),即使在所述第一和第二包封裝置(WM1、WM2)中緩沖了比所述第一和第二數(shù)量少的數(shù)據(jù)。
13.一種在集成電路中緩沖數(shù)據(jù)的方法,該集成電路具有多個(gè)與互聯(lián)裝置(N)連接的處理模塊(M、S),其中第一處理模塊(M)使用事務(wù)與第二處理模塊(S)通信,該方法包括步驟對(duì)來自所述第二處理模塊(S)的將在互聯(lián)裝置(N)上傳送的數(shù)據(jù)進(jìn)行緩沖,直到緩沖了第一數(shù)量的數(shù)據(jù)為止,其中當(dāng)已經(jīng)緩沖了所述第一數(shù)量數(shù)據(jù)時(shí)傳送緩沖數(shù)據(jù)。
14.一種數(shù)據(jù)處理系統(tǒng),包括多個(gè)與互聯(lián)裝置(N)連接的處理模塊(M、S),其中第一處理模塊(M)使用事務(wù)與第二處理模塊(S)通信,包括與所述第二處理模塊(S)相關(guān)聯(lián)的第一包封裝置(WM1),用于對(duì)來自所述第二處理模塊(S)的將在互聯(lián)裝置(N)上傳送的數(shù)據(jù)進(jìn)行緩沖,直到緩沖了第一數(shù)量的數(shù)據(jù)為止,其中當(dāng)已經(jīng)緩沖了所述第二數(shù)量的數(shù)據(jù)時(shí)傳送緩沖數(shù)據(jù)。
全文摘要
提供了一種集成電路,其包括多個(gè)通過互聯(lián)裝置(N)耦合的處理模塊(M、S)。第一處理模塊(M)基于事務(wù)(transactions)與第二處理模塊(S)通信。與所述第二處理模塊(S)相關(guān)聯(lián)的第一包封裝置(WM1)對(duì)來自所述第二處理模塊(S)的將在所述互聯(lián)裝置上傳送的數(shù)據(jù)進(jìn)行緩沖,直到緩沖了第一數(shù)量的數(shù)據(jù)為止,然后將所述第一數(shù)量的緩沖數(shù)據(jù)傳送到所述第一處理模塊(M)。
文檔編號(hào)G06F13/42GK1954306SQ200580015855
公開日2007年4月25日 申請(qǐng)日期2005年5月13日 優(yōu)先權(quán)日2004年5月18日
發(fā)明者A·拉杜勒斯庫, K·G·W·古森斯 申請(qǐng)人:皇家飛利浦電子股份有限公司