多級多處理單元的可重構(gòu)陣列的網(wǎng)絡(luò)互連架構(gòu)的制作方法
【專利摘要】本實(shí)用新型涉及集成電路【技術(shù)領(lǐng)域】,為提供實(shí)現(xiàn)可重構(gòu)處理單元陣列的裝置,能夠保證數(shù)據(jù)交互速率的前提下最大限度的實(shí)現(xiàn)互連的靈活性并減少互連線數(shù)目,降低功耗。為此,本實(shí)用新型采取的技術(shù)方案是,多級多處理單元的可重構(gòu)陣列的網(wǎng)絡(luò)互連架構(gòu),包括三級互連架構(gòu):第一級互連:二維mesh網(wǎng)絡(luò)連接;第二級互連:在相鄰處理單元數(shù)據(jù)可直接交互的基礎(chǔ)上能夠進(jìn)行二級互連,即每4個可重構(gòu)處理單元與一個開關(guān)盒相連,這4個基本處理單元之間通過開關(guān)盒進(jìn)行任意兩個的數(shù)據(jù)交互;第三級互連是開關(guān)盒之間的二維mesh網(wǎng)絡(luò)的連接。本實(shí)用新型主要應(yīng)用于集成電路設(shè)計(jì)、生產(chǎn)。
【專利說明】多級多處理單元的可重構(gòu)陣列的網(wǎng)絡(luò)互連架構(gòu)
【技術(shù)領(lǐng)域】
[0001]本實(shí)用新型涉及集成電路【技術(shù)領(lǐng)域】,特別涉及一種用于可重構(gòu)處理陣列的互連結(jié)構(gòu)。
技術(shù)背景
[0002]可重構(gòu)陣列是由一定數(shù)量的處理單元通過一定的互連方式對不同的算法進(jìn)行并行處理的一種處理器。相較于傳統(tǒng)ASIC的設(shè)計(jì)周期長、設(shè)計(jì)成本高和其專用性以及通用處理器的不能充分利用算法并行性而只能實(shí)現(xiàn)指令級并行,可重構(gòu)處理器有能夠在性能、靈活性和成本等方面進(jìn)行很好的平衡?;诳芍貥?gòu)陣列的處理器可以很容易的解決陣列規(guī)模與算法計(jì)算規(guī)模的匹配問題,可以較靈活的實(shí)現(xiàn)塊級和宏級并發(fā)執(zhí)行操作。同時(shí),基于可重構(gòu)陣列的處理器簡化了數(shù)據(jù)流的控制難度,其訪存代價(jià)比基于指令的處理器小得多,并且具有同樣的通用性,優(yōu)勢明顯。
[0003]目前主流的可重構(gòu)處理單元陣列大多采用點(diǎn)對點(diǎn)全局和部分互連的方式進(jìn)行連接,全局互連能夠快速的進(jìn)行任意處理單元之間的數(shù)據(jù)交互,但過多的互連線導(dǎo)致陣列面積的增加和功耗的損失。而部分互連則是陣列中部分的陣列單元進(jìn)行互連,減少互連線數(shù)量進(jìn)而降低功耗和面積,但是部分互連使得算法映射難度增大,這是因?yàn)樵谒惴ㄓ成溥^程中要考慮處理單元之間是否能夠互連,從而確定映射方案。部分互連一般有二維網(wǎng)絡(luò)互連,二維網(wǎng)絡(luò)互連以及行/列間相鄰處理單元互連,二維網(wǎng)絡(luò)互連以及行/列間相鄰處理單元互連和行/列間的處理單元全互連,棋盤距離為2的處理單元互連等。
[0004]綜上所述,不論采用全局或部分互連都屬于點(diǎn)對點(diǎn)互連且都有一定的弊端。
【發(fā)明內(nèi)容】
[0005]為了克服現(xiàn)有技術(shù)的不足,提供實(shí)現(xiàn)可重構(gòu)處理單元陣列的裝置,能夠保證數(shù)據(jù)交互速率的前提下最大限度的實(shí)現(xiàn)互連的靈活性并減少互連線數(shù)目,降低功耗。為此,本實(shí)用新型采取的技術(shù)方案是,多級多處理單元的可重構(gòu)陣列的網(wǎng)絡(luò)互連架構(gòu),包括三級互連架構(gòu):
[0006]第一級互連:二維mesh網(wǎng)絡(luò)連接,即相鄰的處理單元能夠直接進(jìn)行數(shù)據(jù)交互;
[0007]第二級互連:在相鄰處理單元數(shù)據(jù)可直接交互的基礎(chǔ)上能夠進(jìn)行二級互連,即每4個可重構(gòu)處理單元與一個開關(guān)盒相連,這4個基本處理單元之間通過開關(guān)盒進(jìn)行任意兩個的數(shù)據(jù)交互,4個處理單元之間可以通過3種方式進(jìn)行基于開關(guān)盒的數(shù)據(jù)交互:通過開關(guān)盒,每一個可重構(gòu)處理單元都能夠與其他三個處理單元進(jìn)行數(shù)據(jù)交互;
[0008]第三級互連是開關(guān)盒之間的二維mesh網(wǎng)絡(luò)的連接。
[0009]第三級互連是開關(guān)盒之間的二維mesh網(wǎng)絡(luò)的連接是通過增加第二級互連中的開關(guān)盒端口得以實(shí)現(xiàn),具體為開關(guān)盒端口數(shù)為n+4個,除與4個可重構(gòu)處理單元相連外,其余端口與周邊開關(guān)盒相連,形成開關(guān)盒二維mesh網(wǎng)絡(luò)。
[0010]每個開關(guān)盒端口為6或8個,其中4個端口用于和4個可重構(gòu)處理單元相連,余下的2或4個對應(yīng)與周圍的2個或4個開關(guān)盒相連,形成開關(guān)盒二維mesh網(wǎng)絡(luò)。
[0011]與已有技術(shù)相比,本實(shí)用新型的技術(shù)特點(diǎn)與效果:
[0012]本實(shí)用新型所采用的二維mesh網(wǎng)絡(luò)互連與開關(guān)盒的兩種邏輯互連結(jié)構(gòu)相結(jié)合的方式能夠使得整個可重構(gòu)陣列的互連可以根據(jù)算法的不同進(jìn)行配置,使得其靈活性與全互連相當(dāng),但互連線數(shù)目大大減少,并且兩種邏輯互連結(jié)構(gòu)相結(jié)合的方式能夠在可重構(gòu)陣列中某條路徑出現(xiàn)故障時(shí)以降低系統(tǒng)性能為代價(jià)繼續(xù)運(yùn)行,使得整個可重構(gòu)陣列結(jié)構(gòu)的穩(wěn)定性大大提尚。
【專利附圖】
【附圖說明】
[0013]圖1 16個可重構(gòu)處理單元的二維mesh網(wǎng)絡(luò)邏輯互連結(jié)構(gòu)。
[0014]圖2 4個處理單元與開關(guān)盒之間邏輯互連結(jié)構(gòu)。
[0015]圖3 4端口開關(guān)盒示意圖(虛線代表開關(guān)盒,實(shí)線為所有可能連接方式,圖中連線兩兩不相交)。
[0016]圖4與同一開關(guān)盒相連的處理單元通過開關(guān)盒相連的3種方式(虛線為開關(guān)盒,圖中連線兩兩不相交)。
[0017]圖5 8端口開關(guān)盒每個端口的連接方式(虛線為開關(guān)盒,每種配置下,至多有4條通路保證端口兩兩互連,圖中連線兩兩不相交)。
[0018]圖6 16個處理單元的可重構(gòu)陣列邏輯互連結(jié)構(gòu)。
【具體實(shí)施方式】
[0019]本實(shí)用新型是基于二維mesh網(wǎng)絡(luò)與開關(guān)盒結(jié)合的多處理單元可重構(gòu)陣列邏輯互連結(jié)構(gòu)。如圖1所示,這里我們以4x4陣列為例,但該實(shí)用新型不只限于該尺寸,它可應(yīng)用于任意尺寸的二維mesh網(wǎng)絡(luò)架構(gòu)。mesh網(wǎng)絡(luò)為網(wǎng)狀網(wǎng)絡(luò)。
[0020]本實(shí)用新型中,可重構(gòu)處理單元陣列首先進(jìn)行一級互連,二維mesh網(wǎng)絡(luò)連接,即相鄰的處理單元可以直接進(jìn)行數(shù)據(jù)交互。這種交互方式是本實(shí)用新型所涉及的互連方式中數(shù)據(jù)交互速度最快的。這種互連方式保證了對相鄰兩個處理單元能夠分享上一個計(jì)算周期計(jì)算結(jié)果的需求,這是最基本的算法映射需求。
[0021]以16個處理單元為例,其二維mesh結(jié)構(gòu)如圖1所示。在相鄰處理單元數(shù)據(jù)可直接交互的基礎(chǔ)上可進(jìn)行二級互連,即每4個可重構(gòu)處理單元與一個開關(guān)盒相連,如圖2所示。這4個基本處理單元之間可以通過開關(guān)盒進(jìn)行任意兩個的數(shù)據(jù)交互。其具體的連接方式如圖3所示。圖3中給出的是4個端口的開關(guān)盒示意圖。4個處理單元之間可以通過3種方式進(jìn)行基于開關(guān)盒的數(shù)據(jù)交互,如圖4所示。通過開關(guān)盒,每一個可重構(gòu)處理單元都可以與其他三個處理單元進(jìn)行數(shù)據(jù)交互。其中前兩種連接方式是針對相鄰兩個可重構(gòu)處理單元的。它們是對數(shù)據(jù)直接交互的一種補(bǔ)充連接方式。當(dāng)直接相連的某條互連通路出現(xiàn)故障或數(shù)據(jù)擁堵時(shí),可利用開關(guān)盒將相關(guān)通路上的這兩個相鄰處理單元連接起來,進(jìn)行數(shù)據(jù)交互。第三種連接方式是針對對角線上的兩個處理單元之間的數(shù)據(jù)交互。在直接數(shù)據(jù)交互中,對角線上的處理單元無法直接進(jìn)行數(shù)據(jù)交互,必須通過XY的路徑選擇,繞行其它處理單元才能夠?qū)崿F(xiàn)數(shù)據(jù)交互。這樣做不僅減小了數(shù)據(jù)傳輸?shù)男?,還增加了功耗。在本實(shí)用新型中,利用開關(guān)盒,可實(shí)現(xiàn)對角線處理單元通過開關(guān)盒的連接。通過這種方式,不僅避免了對于數(shù)據(jù)通路的競爭,也提高了傳輸效率,降低了功耗。
[0022]第三級互連是開關(guān)盒之間的二維mesh網(wǎng)絡(luò)的連接,如圖6所示。每個開關(guān)盒可以通過直連與其余三個開關(guān)盒進(jìn)行數(shù)據(jù)交互。如圖6所示的4x4的mesh網(wǎng)絡(luò)架構(gòu)中,由于需要連接四個可重構(gòu)處理單元和至少兩個開關(guān)盒,因此每一個開關(guān)盒至少需要6個數(shù)據(jù)端口。如圖5所示,為了保證結(jié)構(gòu)的可擴(kuò)展性,每個開關(guān)盒具有8個輸入輸出端口,其中包括與其相連的4個可重構(gòu)處理單元連接以及與其相鄰的4個開關(guān)盒之間的連接,這8個端口之間可以根據(jù)配置進(jìn)行兩兩互連,從而使不相鄰的兩個處理單元之間進(jìn)行數(shù)據(jù)交互,并且可以組成多種不同的互連結(jié)構(gòu),以適應(yīng)不同的算法要求,與同一個開關(guān)盒相連的處理單元中的每個可重構(gòu)處理單元可以通過兩種方式進(jìn)行互連,即二維mesh網(wǎng)絡(luò)中的點(diǎn)對點(diǎn)直接互連以及通過開關(guān)盒的互連,由此增加了結(jié)構(gòu)的可靠性。8端口開關(guān)盒與圖3、4中的4個端口開關(guān)盒類似。這樣,每一個開關(guān)盒便可以與周圍4個可重構(gòu)處理單元以及上下左右4個相鄰開關(guān)盒相連,進(jìn)行數(shù)據(jù)的直接交互。當(dāng)然,開關(guān)盒的數(shù)據(jù)端口不僅限于8個,可根據(jù)具體的實(shí)現(xiàn)方案進(jìn)行調(diào)整。
[0023]綜上所述,這三級互連的組合便構(gòu)成了整體的多處理單元的可重構(gòu)陣列邏輯互連結(jié)構(gòu)。該互連結(jié)構(gòu)可以實(shí)現(xiàn)相鄰可重構(gòu)處理單元的直接互連以及通過開關(guān)盒的對角線上的可重構(gòu)處理單元的數(shù)據(jù)交互,在此基礎(chǔ)上,通過相鄰開關(guān)盒的連接,可實(shí)現(xiàn)不相鄰處理單元之間的間接數(shù)據(jù)交互。該交互方式為數(shù)據(jù)交互提供了多種選擇,可降低數(shù)據(jù)通路的擁堵和競爭,提高數(shù)據(jù)的傳輸效率,特別是那些對時(shí)序要求嚴(yán)格的數(shù)據(jù)交互,降低了系統(tǒng)的功耗,提升了系統(tǒng)的性能。從圖5,圖6中,還可以看出本實(shí)用新型所提出的開關(guān)盒的連接方式有很多種,在此不作一一列舉。在面對不同的需求時(shí),用戶可根據(jù)應(yīng)用的不同要求自定義不同的連接方案以提高互連的效率。從圖中還可看出這些開關(guān)盒能夠形成閉合回路,所以在不相鄰的可重構(gòu)處理單元之間通過開關(guān)盒的連接方式也有多種,比如說,從處理單元PE_11傳輸數(shù)據(jù)到PE_33,可以通過開關(guān)盒s_box_ll, s_box_12和s_box_22來進(jìn)行數(shù)據(jù)傳輸;也可以通過開關(guān)盒s_box_ll, s_box_21和s_box_22來進(jìn)行數(shù)據(jù)傳輸。這也大大提高了可重構(gòu)處理單元陣列的靈活性和通用性。
[0024]采用如圖5所示的16個處理單元的邏輯互連結(jié)構(gòu)為例,本實(shí)用新型中所提出的多級多處理單元的可重構(gòu)陣列邏輯互連結(jié)構(gòu)可以分3級:
[0025]第一級為二維mesh網(wǎng)路邏輯互連,如圖1所示,二維mesh網(wǎng)絡(luò)的互連結(jié)構(gòu)是最為基礎(chǔ)的邏輯互連結(jié)構(gòu),它可以實(shí)現(xiàn)相鄰處理單元間的直接數(shù)據(jù)交互。該結(jié)構(gòu)能夠在使用較少互連線的基礎(chǔ)上適應(yīng)一般算法映射要求。
[0026]第二級為每4個處理單元與一個開關(guān)盒的邏輯互連,如圖2,圖5所示。PE_11,PE_12,PE_21,PE_22 分別與 S_box_l I 互連;同理 PE_13,PE_14,PE_23,PE_24 與 S_box_l2 互連;PE_31,PE_32,PE_41,PE_42 與 S_box_21 互連;PE_33,PE_34,PE_43,PE_44 與 S_box_22互連,這4個與開關(guān)盒相連的處理單元占用4個開關(guān)盒端口。這些處理單元之間可通過開關(guān)盒進(jìn)行數(shù)據(jù)交互,而無需通過其它處理單元。
[0027]第三級互連開關(guān)盒之間的互連。如圖6所示。在16個處理單元陣列中,共采用4個開關(guān)盒,那么在此例中,開關(guān)盒的端口數(shù)量便可以定義為6個,從而節(jié)省硬件資源。每個開關(guān)盒的2個端口用來與其他開關(guān)盒進(jìn)行互連,形成第三級網(wǎng)絡(luò)架構(gòu)。
[0028]通過這三級互連結(jié)構(gòu),整體的這16個可重構(gòu)處理單元陣列互連架構(gòu)能夠?qū)崿F(xiàn)部分處理單元的兩種互連方式:通過二維網(wǎng)絡(luò)點(diǎn)對點(diǎn)直接互連以及通過開關(guān)盒的間接互連。這兩種互連方式相輔相成,能夠在處理單元陣列某些互連線出現(xiàn)故障或擁堵時(shí),以降低性能為代價(jià)繼續(xù)運(yùn)行可重構(gòu)系統(tǒng),提高系統(tǒng)的可靠性。通過4個開關(guān)盒能夠?qū)崿F(xiàn)16個處理單元中任意兩個處理單元的互連,當(dāng)然互連線路也可根據(jù)配置不同而改變,這樣提高可重構(gòu)陣列的靈活性和通用性。
【權(quán)利要求】
1.一種多級多處理單元的可重構(gòu)陣列的網(wǎng)絡(luò)互連架構(gòu),其特征是,包括三級互連架構(gòu): 第一級互連:二維mesh網(wǎng)絡(luò)連接,即相鄰的處理單元能夠直接進(jìn)行數(shù)據(jù)交互; 第二級互連:在相鄰處理單元數(shù)據(jù)可直接交互的基礎(chǔ)上能夠進(jìn)行二級互連,即每4個可重構(gòu)處理單元與一個開關(guān)盒相連,這4個基本處理單元之間通過開關(guān)盒進(jìn)行任意兩個的數(shù)據(jù)交互,4個處理單元之間可以通過3種方式進(jìn)行基于開關(guān)盒的數(shù)據(jù)交互:通過開關(guān)盒,每一個可重構(gòu)處理單元都能夠與其他三個處理單元進(jìn)行數(shù)據(jù)交互; 第三級互連是開關(guān)盒之間的二維mesh網(wǎng)絡(luò)的連接。
2.如權(quán)利要求1所述的多級多處理單元的可重構(gòu)陣列的網(wǎng)絡(luò)互連架構(gòu),其特征是,第三級互連是開關(guān)盒之間的二維mesh網(wǎng)絡(luò)的連接是通過增加第二級互連中的開關(guān)盒端口得以實(shí)現(xiàn),具體為開關(guān)盒端口數(shù)為n+4個,除與4個可重構(gòu)處理單元相連外,其余端口與周邊開關(guān)盒相連,形成開關(guān)盒二維mesh網(wǎng)絡(luò)。
3.如權(quán)利要求1或2所述的多級多處理單元的可重構(gòu)陣列的網(wǎng)絡(luò)互連架構(gòu),其特征是,每個開關(guān)盒端口為6或8個,其中4個端口用于和4個可重構(gòu)處理單元相連,余下的2或4個對應(yīng)與周圍的2個或4個開關(guān)盒相連,形成開關(guān)盒二維mesh網(wǎng)絡(luò)。
【文檔編號】G06F15/78GK204256740SQ201420691749
【公開日】2015年4月8日 申請日期:2014年11月17日 優(yōu)先權(quán)日:2014年11月17日
【發(fā)明者】史再峰, 周佳慧, 龐科, 劉江明, 徐江濤, 李斌橋 申請人:天津大學(xué)