專利名稱:嵌入式異構(gòu)多核體系片上通信互連組織層次的實現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及嵌入式異構(gòu)多核技術(shù)領(lǐng)域,特別是涉及一種嵌入式異構(gòu)多核體系 片上通信互連組織層次的實現(xiàn)方法。
技術(shù)背景隨著集成電路工藝發(fā)展到深亞微米的階段,當(dāng)代處理器體系結(jié)構(gòu)的研究正在 朝著多核的方向發(fā)展。無論對于提高處理器性能,還是考慮單位計算性能的能 耗因素,多核體系結(jié)構(gòu)都是目前的熱點研究方向。在產(chǎn)業(yè)界,Intel、 IBM、 AMD、 SUN等國際頂級芯片公司都己經(jīng)在市場上 發(fā)布了多核處理器。這里面既有同構(gòu)多核處理器,也有異構(gòu)多核處理器。目前多核處理器的發(fā)展還處于起步階段,有很多問題還亟待解決。其中,一 個主要的方面就是設(shè)計高效的片上通信架構(gòu)。這里的通信不僅包括多個片上處 理核之間的通信,也包括處理核對于內(nèi)存數(shù)據(jù)的存取。當(dāng)前,單核處理器的處理能力已經(jīng)達到了非常高的水平。為了充分發(fā)揮單個 芯片上多個處理核的性能,片上的通信架構(gòu)必須在反應(yīng)時間、帶寬等方面都能 有非常好的表現(xiàn)而傳統(tǒng)的片外總線和其他通信方式并不能直接適應(yīng)片上通信的 需求,因此多核處理器的設(shè)計者必須針對片上多核的特點重新設(shè)計合適的片上 通信架構(gòu)。進一步,當(dāng)面對嵌入式異構(gòu)多核這一類多核體系時,片上通信架構(gòu)的設(shè)計又 需要新的考慮。異構(gòu)多核處理器的特點是面向應(yīng)用,結(jié)構(gòu)多變,經(jīng)常是一個處 理芯片上集成有幾類不同的處理核。這要求片上通信的設(shè)計需充分考慮片上各 個不同種類處理核的通信需求與特點,并結(jié)合相應(yīng)應(yīng)用的特點、內(nèi)存架構(gòu)的設(shè) 置等。面向嵌入式領(lǐng)域,對于處理器的設(shè)計、實現(xiàn)、使用的代價都有更加嚴(yán)格 的要求,而且嵌入式異構(gòu)多核處理器大多應(yīng)用在多媒體處理、信號編解碼、數(shù) 據(jù)比對等領(lǐng)域中,要求片上通信能夠在有限的代價下提供更好的片內(nèi)數(shù)據(jù)傳輸 性能。這一方面表明了片上通信在嵌入式異構(gòu)多核處理器設(shè)計中的重要性,也展示 了設(shè)計一個能充分發(fā)揮出處理器中各個處理核心性能的片上通信架構(gòu)的艱難。 總的來說,嵌入式異構(gòu)多核體系的片上通信研究才剛剛起步,面向嵌入式系統(tǒng)、 面向應(yīng)用的定制也才剛剛出現(xiàn),很多問題還有待解決。當(dāng)前,多核架構(gòu)已經(jīng)成為處理器體系發(fā)展的主要方向,并發(fā)展出了同構(gòu)多核
與異構(gòu)多核兩個主要分支。同構(gòu)多核體系的如IBM的Power4、 Power5, Intel 的Core微架構(gòu),Sun的UltraSPARC等,而異構(gòu)多核的典型有IBM的CELL, TI的OMAP。這些多核體系的設(shè)計架構(gòu)代表了當(dāng)前多核處理器領(lǐng)域的主要方向。
然而,目前多核處理器的發(fā)展還處于起步階段,許多方面的研究還需要進一 步的開展。多核的片上通信就是其中的一個主要研究難點。當(dāng)前,單核處理器 的處理能力已經(jīng)達到了非常高的水平。為了充分發(fā)揮單個芯片上多個處理核的 性能,片上的通信架構(gòu)必須在反應(yīng)時間、帶寬等方面都能有非常好的表現(xiàn)。因 而片上通信的設(shè)計是否優(yōu)良直接關(guān)系到芯片內(nèi)各個處理核的性能發(fā)揮。
目前,主流的片上高效通信機制有兩種, 一是基于總線共享存儲媒介(主要 是Cache)的結(jié)構(gòu), 一種是基于片上的互連結(jié)構(gòu)。
總線共享Cache的結(jié)構(gòu)是指芯片上的各個處理器核通過片上的互連總線共 享一個二級或三級Cache,進而達到對數(shù)據(jù)的共享和相互間通信。核間要傳遞的 數(shù)據(jù)一般都通過共享的Cache做一個中轉(zhuǎn)。典型的總線共享Cache架構(gòu)如斯坦 福大學(xué)的Hydra多核處理器。
正如上文所述,目前多核處理器正在成為處理器發(fā)展的焦點,而片上通信則 是這個焦點的重心。嵌入式異構(gòu)多核體系中片上通信架構(gòu)設(shè)計的研究難點主要 體現(xiàn)在嵌入式異構(gòu)多核體系片上通信設(shè)計與實現(xiàn)。
目前,片上通信設(shè)計中出現(xiàn)了種類繁多的組織層次。比如在基于共享Cache 的多核體系中,有用交叉總線來連接各個處理核的本地Cache和共享Cache的, 也有用片上網(wǎng)絡(luò)(Network on chip) [9]來連接的;而在基于共享總線的多核體系 中,總線架構(gòu)又可以分為普通單總線、多層次總線、環(huán)形總線以及交叉總線和 片上網(wǎng)絡(luò)等等。這些一方面豐富了片上通信的設(shè)計選擇,同時也增加了片上通 信設(shè)計的自由度和復(fù)雜度。
同時,現(xiàn)有的組織層次都沒有較好的考慮片上各個處理核的不同特性及需 求。對于集成到單一芯片上的多個處理核,如果是同構(gòu)配置,則只需考慮一類 處理核的特性;而如果是異構(gòu)配置,則需綜合考慮多種需求特征。這就要求設(shè) 計者充分了解其所用片上處理核的各項技術(shù)特征,并為這些參數(shù)尋求合適的片 上通信設(shè)計方案。特別是對于嵌入式異構(gòu)多核處理器,片上通信互連層次的設(shè) 計者還應(yīng)考慮不同的處理核對于內(nèi)存訪問的不同需求,并為計算密集型處理提 供高效的數(shù)據(jù)傳輸性能。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種嵌入式異構(gòu)多核體系片上通信互連組織層次的 實現(xiàn)方法。
本發(fā)明解決其技術(shù)問題采用的技術(shù)方案如下
1) 對處理器核分類
根據(jù)嵌入式異構(gòu)多核體系中處理器核功能特性的不同,將片上處理核分成 控制密集型處理核和計算密集型處理核兩類,控制密集型處理核主要功能為系 統(tǒng)控制,計算密集型處理核功能主要是對大規(guī)模數(shù)據(jù)的計算處理;
2) 構(gòu)建統(tǒng)一通信模型
構(gòu)建統(tǒng)一通信模型做為,統(tǒng)一通信模型是基于片上總線的架構(gòu),主要由兩 條片上總線, 一個總線互連橋和一個共享Cache構(gòu)成;
其中, 一條總線被命名為控制總線,其主要為控制密集型處理核而設(shè);另 一條總線被稱為計算總線,是計算密集型處理核的連接平臺;總線間的橋構(gòu)成 了兩條總線之間的連接通路。在控制總線上還連接有一個共享Cache,它主要是 作為連接在控制總線上的控制密集型處理核的存儲層次之一;
3) 構(gòu)建通信通道
對于多核片上通信的不同需求,構(gòu)建五種不同的通信通道,包括控制-控 制通道、控制-內(nèi)存通道、計算-計算通道、計算-內(nèi)存通道,控制-計算通道;在 這五條通道中,控制-控制通道、計算-計算通道和控制-計算通道屬于處理核之 間的通信路徑,而控制-內(nèi)存通道和計算-內(nèi)存通道是處理核與內(nèi)存之間的數(shù)據(jù)交 換路徑;通過這五條通道,能夠為異構(gòu)多核處理器上的各個處理核提供完善且 高性能的片上通信互連結(jié)構(gòu)。
本發(fā)明與背景技術(shù)相比,具有的有益的效果是
本發(fā)明是一種嵌入式異構(gòu)多核體系片上通信互連組織層次的實現(xiàn)方法S,其 主要功能是結(jié)合嵌入式異構(gòu)多核體系結(jié)構(gòu)的特點,設(shè)計了兩條核間總線,分別 為負(fù)責(zé)連接計算密集型核的計算總線與負(fù)責(zé)控制密集型核的控制總線。同時, 內(nèi)存控制器被看作處理核連接在計算總線上,從而統(tǒng)一了片內(nèi)的處理核間、處 理核與內(nèi)存間的控制通信與數(shù)據(jù)存取通信。
(1) 高效性。實現(xiàn)了主輔核間以總線形式進行的通信,有效提高了核間協(xié) 作以及數(shù)據(jù)傳輸性能。
(2) 實用性。面向嵌入式多核領(lǐng)域的較常見的多媒體處理、數(shù)據(jù)比對、信 號編解碼、模式匹配等計算密集型處理,具有很強的實用性。
圖1是本發(fā)明的實施過程示意圖。
圖2是本發(fā)明統(tǒng)一通信模型的組織架構(gòu)圖。 圖3是本發(fā)明控制-控制通道結(jié)構(gòu)圖。 圖4是本發(fā)明控制-內(nèi)存通道結(jié)構(gòu)圖。 圖5是本發(fā)明計算-計算通道結(jié)構(gòu)圖。 圖6是本發(fā)明計算-內(nèi)存通道結(jié)構(gòu)圖。 圖7是本發(fā)明控制-計算通道結(jié)構(gòu)圖。
具體實施例方式
本發(fā)明是一種嵌入式異構(gòu)多核體系片上通信互連組織層次的實現(xiàn)方法,下 面結(jié)合圖1說明其具體實施過程。 l)對處理器核分類
根據(jù)嵌入式異構(gòu)多核體系中處理器核功能特性的不同,將片上處理核分成 控制密集型處理核和計算密集型處理核兩類。
控制密集型處理核意味著其主要功能為系統(tǒng)控制。這類處理核的指令集 (Instruction Set Architecture, ISA)都不是面向計算為主的。操作系統(tǒng)、服務(wù)器 應(yīng)用、1/0密集的應(yīng)用等都是這類處理核比較適合的領(lǐng)域。因而控制密集的特點 是數(shù)據(jù)計算僅是其應(yīng)用中的一小部分,而大多數(shù)都是I/0控制類的操作。同時, 控制密集型處理核的計算一般需要的數(shù)據(jù)量都較少,其計算任務(wù)本身也較小。
而對于數(shù)據(jù)傳輸通路,最適合控制密集型處理核的存儲層次是高速緩存 (Cache)。這主要是由于Cache能提供高效的小規(guī)模、高頻率的數(shù)據(jù)存取。由 上文提到的控制密集型處理核的特性可知,其存取數(shù)據(jù)的頻率較高,但大多數(shù) 數(shù)據(jù)都具有較高的重用性。Cache正好能對這些需求提供很好的支持,其內(nèi)部存 儲的數(shù)據(jù)較少,但具有很高的重用性。
計算密集型處理核也就意味著其功能主要是對大規(guī)模數(shù)據(jù)的計算處理。它 們的指令集一般都針對數(shù)據(jù)處理而進行專門的設(shè)計,添加了諸如多參數(shù)、SIMD、 矩陣處理等指令功能。這類處理核的典型應(yīng)用領(lǐng)域如多媒體數(shù)據(jù)處理、數(shù)據(jù)庫 數(shù)據(jù)處理、科學(xué)計算等。因而,可知計算密集的特點就是任務(wù)的巨大部分都是 數(shù)據(jù)計算。同時任務(wù)的數(shù)據(jù)需求量較大,且一般數(shù)據(jù)的重用性都較低。
在存儲層次上,計算密集型處理核與控制密集型處理核也不相同, 一般最 適合計算密集型處理核的是本地存儲(Local Memoiy)。這主要是因為本地存儲 支持快速的數(shù)據(jù)存取操作,并能夠提供大量連續(xù)的數(shù)據(jù)。通過上文描述的特性可知,計算密集型處理核由于絕大部分時間都在進行數(shù)據(jù)處理運算,因而其需 要快速的存取數(shù)據(jù)。并且由于其數(shù)據(jù)需求量大、重用性低,計算密集型處理核
需要存儲層次能夠提供連續(xù)大量的數(shù)據(jù)。面對這些需求,Cache已經(jīng)不能夠勝任, 因為其內(nèi)部存儲的數(shù)據(jù)量較小,且一般都不連續(xù),再加上內(nèi)部控制邏輯的復(fù)雜 造成了數(shù)據(jù)存取較慢。而本地存儲內(nèi)部控制邏輯簡單,存取操作快,且能夠與 系統(tǒng)內(nèi)存進行快速的大規(guī)模數(shù)據(jù)交換,以提供大量連續(xù)的數(shù)據(jù),因而能夠很好 的滿足計算密集型處理核對存儲層次的需求。
2) 構(gòu)建統(tǒng)一通信模型
統(tǒng)一通信模型主要是基于片上總線的架構(gòu)。如圖2所示,它主要由兩條片 上總線, 一個總線互連橋和一個共享Cache (Shared-Cache)構(gòu)成。
其中, 一條總線被命名為控制總線(Control-Bus),其主要為控制密集型處 理核而設(shè)。另一條總線被稱為計算總線(Computation-Bus),是計算密集型處理 核的連接平臺。總線間的橋(Bridge)構(gòu)成了兩條總線之間的連接通路。在控制 總線上還連接有一個共享Cache (Shared-Cache)。它主要是作為連接在控制總線 上的控制密集型處理核的存儲層次之一。
由于現(xiàn)在的異構(gòu)多核處理器一般都將內(nèi)存控制器連接在核間總線上以提高 數(shù)據(jù)存取速度,而在統(tǒng)一通信模型中,系統(tǒng)中有兩條核間總線,內(nèi)存控制器應(yīng) 該被連接在計算總線上。這主要是計算總線上的處理核對于內(nèi)存數(shù)據(jù)的存取需 求較控制總線上的大。
統(tǒng)一通信模型主要是對控制密集型處理核進行了基于總線的共享Cache設(shè) 計,而對計算密集型處理核則進行了共享總線的設(shè)計。同時,通過總線橋(Bridge) 連接兩條總線以完成兩類核之間的通信通路。
3) 構(gòu)建通信通道
對于多核片上通信的不同需求,構(gòu)建五種不同的通信通道,包括控制-控 制通道(通道1)、控制-內(nèi)存通道(通道2)、計算-計算通道(通道3)、計算-內(nèi)存通道(通道4),控制-計算通道(通道5)。
1、控制-控制通道
控制-控制通道也就是兩個控制密集型處理核之間的通信路徑,其結(jié)構(gòu)如圖 3中的通道1 (Pathl)所示。控制核1 (CtrlPUl)和控制核2 (CtrlPU2)是兩 個控制密集型處理核,且每一個都擁有一個本地Cache作為其本地存儲層次。
CtrlPUl和CtrlPU2之間的通信需求主要是兩者之間共享的數(shù)據(jù)以及同步的 信號等。例如CtrlPUl和CtrlPU2共享一個同步數(shù)據(jù)。本發(fā)明采用的一種基于共享Cache的改進的寫無效一致性協(xié)議下,若CtrlPU2更改了該同步數(shù)據(jù),則其 向Control-Bus發(fā)送一個寫無效請求;Control-Bus控制器仲裁該請求后將該請求 轉(zhuǎn)向CtrlPUl和Shared-Cache致使兩者里的該同步數(shù)據(jù)無效。這樣,當(dāng)CtrlPUl 需要該同步數(shù)據(jù)時,其本地Cache發(fā)出的該同步數(shù)據(jù)失效的信號會引導(dǎo) Control-Bus從CtrlPU2處獲得新的同步數(shù)據(jù)并返回給CtrlPUl ,從而形成一條從 CtrlPU2到CtrlPUl的通道(實際上,該數(shù)據(jù)也會同時到達Shared-Cache并引起 其數(shù)據(jù)的更新)。當(dāng)然,不同的一致性協(xié)議下通信的細(xì)節(jié)會有所不同。不過總體 的通信通路是不變的,就是最終在Control-Bus上形成控制密集型處理核之間的 通信通道。
總的來說,這條通信路徑比較短且比較簡單。它僅影響需要通信的處理核、 Control-Bus及其上的Shared-Cache。系統(tǒng)中的Computation-Bus及其上的計算密 集型處理核都不受任何影響而可以正常工作。如果在這同時還有針對通道3或 通道4的請求,由于其與通道1無直接關(guān)聯(lián),則通信層還可繼續(xù)滿足其通信的 要求,即同時建立一條通道1和一條通道3或者通道4。這極大的提高了系統(tǒng)的 整體通信帶寬。
2、控制-內(nèi)存通道
控制-內(nèi)存通道主要是完成控制密集型處理核與系統(tǒng)內(nèi)存之間的數(shù)據(jù)"通信" 的路徑。圖4中的通道2 (Path2)就是控制-內(nèi)存通道。本文將該通道分為高層 和低層兩個部分。通道2的高層主要是連接了控制核1 (CtrlPUl)、控制總線 (Control-Bus)和共享Cache (Shared-Cache),而其底層則連接了 Shared-Cache、 Control-Bus、總線橋(Bridge)、計算總線(Computation-Bus)和內(nèi)存控制器(圖 中直接用內(nèi)存表示)。同上文所述,CtrlPUl是一個控制密集型處理核。
當(dāng)一個內(nèi)存數(shù)據(jù)存取請求從CtrlPUl發(fā)出后,Control-Bus控制器仲裁該請 求并將其發(fā)送給Shared-Cache,從而形成通道2的高層部分。Shared-Cache在其 內(nèi)部查找該操作數(shù)據(jù)的地址,若Cache命中則執(zhí)行操作并將信息通過Control-Bus 反饋給CtrlPUl;否則,Shared-Cache發(fā)出 一個Cache失效信號并請求訪問內(nèi)存 控制器以獲得該數(shù)據(jù)。若是后一種情況,它首先向Control-Bus發(fā)出一個內(nèi)存訪 問請求;由于內(nèi)存控制器在Computation-Bus上,Control-Bus處理該請求后將其 通過Bridge轉(zhuǎn)給了 Computation-Bus; Computation-Bus控制器仲裁該請求并將 其發(fā)給了內(nèi)存控制器,從而形成了通道2的底層部分。最后,數(shù)據(jù)從內(nèi)存控制 器經(jīng)過通道2的底層部分到達Shared-Cache,再從Shared-Cache經(jīng)由通道2的 高層部分到達CtrlPUl ??梢钥闯觯ǖ?相對通道1要復(fù)雜的多,其通信路徑也較長。但是,由 于本發(fā)明對該通道進行了劃分,從而可以大大減少通信層的負(fù)擔(dān)。這主要是由 于控制密集型處理核所需的數(shù)據(jù)訪問操作一般都有較好的局部性,因而在本地
Cache以及Shared-Cache中的數(shù)據(jù)都有較高的重用性?;谶@個原因,CtrlPUl 的內(nèi)存數(shù)據(jù)訪問操作大部分時間只會需要通道2的高層部分,而其底層部分則 僅在Shared-Cache失效這一極小部分時期才需要。這一劃分的設(shè)計使得大多數(shù) 情況下Computation-Bus以及其上的計算密集型處理核的通信都不受影響,可以 大大減少控制密集型處理核與計算密集型爭搶內(nèi)存控制器的幾率,從而能夠為 計算密集型處理核提供更好的內(nèi)存數(shù)據(jù)存取環(huán)境。
3、 計算-計算通道
正如控制-控制通道是專為控制密集型處理核之間通信的路徑,計算-計算通 道也就是專為計算密集型處理核之間通信的路徑。如圖5所示,兩個計算密集 型處理核CptPUl和CptPU2之間通過Computation-Bus進行核間數(shù)據(jù)通信。
計算密集型處理核之間的通信過程如下CptPUl需要CptPU2中的一段數(shù) 據(jù),則其首先將數(shù)據(jù)訪問請求發(fā)送給Computation-Bus; Computation-Bus控制器 仲裁該請求后將其傳遞給CptPU2,形成通道3; CptPU2接受該請求,進行相應(yīng) 的操作之后將反饋發(fā)送到Computation-Bus上,再由其傳回給CptPUl。
與通道1類似,通道3也是一條短且簡單的路徑。在這條通道被請求而形 成時,Computation-Bus被占用,而Control-Bus則可以繼續(xù)正常的工作。從而, 系統(tǒng)可以同時再接受對于通道1的通信請求。
4、 計算-內(nèi)存通道
另一條只影響Computation-Bus的通道就是計算-內(nèi)存通道,也就是計算密 集型處理核對內(nèi)存控制器的訪問通信。如圖6所示,計算-內(nèi)存通道(通道4, Path4)主要包括計算密集型處理核(CptPUl)、 Computation-Bus和內(nèi)存控制器 (圖中直接用內(nèi)存表示)。
這條通信通道的通信過程如下CptPUl向Computation-Bus發(fā)送一個內(nèi)存 訪問請求;Computation-Bus控制器仲裁該請求之后將其轉(zhuǎn)發(fā)給Memory,形成 通道4; Memory接受該請求并執(zhí)行相應(yīng)操作,并將反饋信息發(fā)送回 Computation-Bus;最終,Computation-Bus將反饋信息傳回CptPUl 。
通道4結(jié)構(gòu)簡單,路徑也很短,卻十分的重要。計算密集型處理核由于其 本身特性需要大量的數(shù)據(jù),而且數(shù)據(jù)重用性很低。這就要求其與系統(tǒng)內(nèi)存之間 的通信通道能提供便捷快速的數(shù)據(jù)存取性能。而在統(tǒng)一通信模型設(shè)計中,針對這一點做了特別的考慮其一,通過將內(nèi)存控制器與計算密集型處理核一同連
接在Computation-Bus上以縮短計算密集型處理核的內(nèi)存訪問路徑;其二,采取 雙總線的設(shè)計并在Control-Bus上加上Shared-Cache以盡量減少控制密集型處理 核的內(nèi)存訪問影響計算密集型處理核的內(nèi)存訪問,將內(nèi)存控制器盡可能的供給 數(shù)據(jù)需求量大的計算密集型處理核使用。 5、控制-計算通道
控制-計算通道(通道5, Path5)完成的是控制密集型處理核與計算密集型 處理核之間的通信。
如圖7所示,控制密集型處理核CtrlPUl與計算密集型處理核CptPUl通過 Control-Bus、 Bridge禾口 Computation-Bus進4亍相互通f言。
控制-計算通道的典型通信過程如下CtrlPUl需要向CptPUl發(fā)送一個數(shù)據(jù) 信息,其首先向Control-Bus發(fā)出請求;Control-Bus控制器仲裁后將該請求通過 Bridge轉(zhuǎn)到Computation-Bus; Computation-Bus控制器仲裁該請求并將其傳遞給 CptPUl,通道5形成;CptPUl接受該操作請求,執(zhí)行相應(yīng)操作后反饋操作信息。
這條路徑要經(jīng)由兩條總線以及中間的Bridge,相對較長且復(fù)雜。當(dāng)這條通 路的通信形成之后,系統(tǒng)中所有片上通信資源都被占用,其他通信路徑全都無 法與通道5同時存在。
在這五條通道中,通道l、通道3和通道5屬于處理核之間的通信路徑,而 通道2和通道4是處理核與內(nèi)存之間的數(shù)據(jù)交換路徑。通過這五條通道,"統(tǒng)一 通信"層能夠為異構(gòu)多核處理器上的各個處理核提供完善且高性能的片上通信 互連結(jié)構(gòu)。
權(quán)利要求
1.一種嵌入式異構(gòu)多核體系片上通信互連組織層次的實現(xiàn)方法,其特征在于1)對處理器核分類根據(jù)嵌入式異構(gòu)多核體系中處理器核功能特性的不同,將片上處理核分成控制密集型處理核和計算密集型處理核兩類,控制密集型處理核主要功能為系統(tǒng)控制,計算密集型處理核功能主要是對大規(guī)模數(shù)據(jù)的計算處理;2)構(gòu)建統(tǒng)一通信模型構(gòu)建統(tǒng)一通信模型做為,統(tǒng)一通信模型是基于片上總線的架構(gòu),主要由兩條片上總線,一個總線互連橋和一個共享Cache構(gòu)成;其中,一條總線被命名為控制總線,其主要為控制密集型處理核而設(shè);另一條總線被稱為計算總線,是計算密集型處理核的連接平臺;總線間的橋構(gòu)成了兩條總線之間的連接通路。在控制總線上還連接有一個共享Cache,它主要是作為連接在控制總線上的控制密集型處理核的存儲層次之一;3)構(gòu)建通信通道對于多核片上通信的不同需求,構(gòu)建五種不同的通信通道,包括控制-控制通道、控制-內(nèi)存通道、計算-計算通道、計算-內(nèi)存通道,控制-計算通道;在這五條通道中,控制-控制通道、計算-計算通道和控制-計算通道屬于處理核之間的通信路徑,而控制-內(nèi)存通道和計算-內(nèi)存通道是處理核與內(nèi)存之間的數(shù)據(jù)交換路徑;通過這五條通道,能夠為異構(gòu)多核處理器上的各個處理核提供完善且高性能的片上通信互連結(jié)構(gòu)。
全文摘要
本發(fā)明公開了一種嵌入式異構(gòu)多核體系片上通信互連組織層次的實現(xiàn)方法。本發(fā)明的方法結(jié)合嵌入式異構(gòu)多核體系結(jié)構(gòu)的特點,設(shè)計了兩條核間總線,分別為負(fù)責(zé)連接計算密集型核的計算總線與負(fù)責(zé)控制密集型核的控制總線。同時,內(nèi)存控制器被看作處理核連接在計算總線上,從而統(tǒng)一了片內(nèi)的處理核間、處理核與內(nèi)存間的控制通信與數(shù)據(jù)存取通信。本發(fā)明實現(xiàn)了主輔核間以總線形式進行的通信,有效提高了核間協(xié)作以及數(shù)據(jù)傳輸性能;面向嵌入式多核領(lǐng)域的較常見的多媒體處理、數(shù)據(jù)比對、信號編解碼、模式匹配等計算密集型處理,具有很強的實用性。
文檔編號G06F15/80GK101290610SQ20081006216
公開日2008年10月22日 申請日期2008年6月3日 優(yōu)先權(quán)日2008年6月3日
發(fā)明者嚴(yán)力科, 馮德貴, 施青松, 章鐵飛, 威 胡, 斌 謝, 劍 陳, 陳天洲, 項凌祥, 黃江偉 申請人:浙江大學(xué)