本發(fā)明涉及可重構(gòu)計(jì)算領(lǐng)域,尤其涉及一種可擴(kuò)展的支持動(dòng)態(tài)部分重構(gòu)的可重構(gòu)計(jì)算配置網(wǎng)絡(luò)系統(tǒng),該系統(tǒng)架構(gòu)采用可擴(kuò)展的樹形網(wǎng)絡(luò)結(jié)構(gòu),混合串并行配置方式,可有效減小最大配置鏈長(zhǎng)度,多方向配置流并行配置,支持動(dòng)態(tài)配置和部分配置,有效降低配置時(shí)間和配置功耗。
背景技術(shù):
可重構(gòu)計(jì)算是一種介于通用計(jì)算架構(gòu)(cpu)和專用計(jì)算架構(gòu)(asic)之間的一種領(lǐng)域通用的(domain-specific)計(jì)算架構(gòu),能夠更有效地平衡計(jì)算架構(gòu)的靈活性和高效性。可重構(gòu)計(jì)算架構(gòu)主要由配置網(wǎng)絡(luò)和計(jì)算網(wǎng)絡(luò)組成,計(jì)算網(wǎng)絡(luò)含有豐富的運(yùn)算資源以及實(shí)現(xiàn)運(yùn)算資源之間進(jìn)行高速數(shù)據(jù)傳遞的互連資源,通過配置網(wǎng)絡(luò)可以對(duì)計(jì)算網(wǎng)絡(luò)中運(yùn)算資源的功能和它們之間的互連進(jìn)行重構(gòu),從而實(shí)現(xiàn)不同的計(jì)算功能。
可重構(gòu)計(jì)算的重構(gòu)方式根據(jù)實(shí)時(shí)性可以分為靜態(tài)重構(gòu)和動(dòng)態(tài)重構(gòu),只能在可重構(gòu)計(jì)算架構(gòu)的數(shù)據(jù)通路進(jìn)行計(jì)算之前對(duì)其進(jìn)行功能重構(gòu),而計(jì)算過程中由于時(shí)間代價(jià)相對(duì)過大而無法對(duì)數(shù)據(jù)通路進(jìn)行功能重構(gòu)的特性被稱為靜態(tài)重構(gòu)。傳統(tǒng)的fpga采用的重構(gòu)方式即靜態(tài)重構(gòu)。由于功能重構(gòu)時(shí)間代價(jià)相對(duì)較小,可重構(gòu)計(jì)算架構(gòu)的數(shù)據(jù)通路在計(jì)算過程中也可以進(jìn)行功能重構(gòu)的特性被稱為動(dòng)態(tài)重構(gòu)。最典型的動(dòng)態(tài)重構(gòu)架構(gòu)是粗粒度可重構(gòu)陣列(cgra),cgra粒度大,配置信息量小,可以在不斷電的工作狀態(tài)下快速重載配置信息,完成陣列功能重構(gòu),重新讀取配置信息到生效的時(shí)間相對(duì)計(jì)算時(shí)間很小,具有實(shí)時(shí)性的特性。
重構(gòu)方式根據(jù)重構(gòu)的空間性也可分為完全重構(gòu)和部分重構(gòu)。完全重構(gòu)一次重構(gòu)對(duì)所有運(yùn)算資源功能及它們之間的互連進(jìn)行重構(gòu),而部分重構(gòu)可以在空間上將計(jì)算網(wǎng)絡(luò)劃分為多個(gè)區(qū)域,每個(gè)區(qū)域可以被重構(gòu)乘特定的功能,同時(shí)不會(huì)影響到其他區(qū)域的當(dāng)前狀態(tài)。部分重構(gòu)可以有效減少配置信息量,提高配置效率。動(dòng)態(tài)重構(gòu)和部分重構(gòu)可以有效的提高重構(gòu)的實(shí)時(shí)性和能效性,是當(dāng)前的可重構(gòu)計(jì)算領(lǐng)域的研究熱點(diǎn)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是提供一種可擴(kuò)展的支持動(dòng)態(tài)部分重構(gòu)的可重構(gòu)計(jì)算配置網(wǎng)絡(luò)系統(tǒng),具體由以下方案實(shí)現(xiàn):
可擴(kuò)展的支持動(dòng)態(tài)部分重構(gòu)的可重構(gòu)計(jì)算配置網(wǎng)絡(luò)系統(tǒng),采用多層次嵌套樹形結(jié)構(gòu)形成配置網(wǎng)絡(luò)系統(tǒng),配置流每一次改變配置路徑方向都擴(kuò)展兩個(gè)配置方向,形成一條配置鏈上配置串行傳遞、多條配置鏈上配置并行傳遞的串并行混合配置的重構(gòu)方式,多層次嵌套樹形結(jié)構(gòu)由至少一個(gè)雙樹配置網(wǎng)絡(luò)結(jié)構(gòu)與一個(gè)雙向主干配置鏈組成,雙樹配置網(wǎng)絡(luò)結(jié)構(gòu)由兩個(gè)單樹配置網(wǎng)絡(luò)結(jié)構(gòu)組成,每個(gè)單樹配置網(wǎng)絡(luò)結(jié)構(gòu)均與可重構(gòu)計(jì)算單元相連。
可擴(kuò)展的支持動(dòng)態(tài)部分重構(gòu)的可重構(gòu)計(jì)算配置網(wǎng)絡(luò)系統(tǒng)的進(jìn)一步設(shè)計(jì)在于,可重構(gòu)計(jì)算配置網(wǎng)絡(luò)系統(tǒng),基于配置包進(jìn)行配置流的傳遞,通過i型配置過濾器和ii型配置過濾器過濾配置包的傳遞,每個(gè)可重構(gòu)計(jì)算單元分別與配置過濾器的寄存輸出端連接。
可擴(kuò)展的支持動(dòng)態(tài)部分重構(gòu)的可重構(gòu)計(jì)算配置網(wǎng)絡(luò)系統(tǒng)的進(jìn)一步設(shè)計(jì)在于,單樹配置網(wǎng)絡(luò)結(jié)構(gòu)包括一條主干配置鏈和多條分支配置鏈,主干配置鏈和分支配置鏈由一個(gè)ii型配置過濾器與至少一個(gè)i型配置過濾器組成。
可擴(kuò)展的支持動(dòng)態(tài)部分重構(gòu)的可重構(gòu)計(jì)算配置網(wǎng)絡(luò)系統(tǒng)的進(jìn)一步設(shè)計(jì)在于,多層次嵌套樹形結(jié)構(gòu)中,在每個(gè)雙樹配置結(jié)構(gòu)與雙向主干配置鏈連接處兩側(cè)設(shè)置有與該雙樹結(jié)構(gòu)寬度數(shù)目一致的i型配置過濾器。
可擴(kuò)展的支持動(dòng)態(tài)部分重構(gòu)的可重構(gòu)計(jì)算配置網(wǎng)絡(luò)系統(tǒng)的進(jìn)一步設(shè)計(jì)在于,多層次嵌套樹形結(jié)構(gòu)中,雙向主干配置鏈上在相鄰的兩個(gè)雙樹配置結(jié)構(gòu)間都存在一個(gè)i型配置過濾器。
可擴(kuò)展的支持動(dòng)態(tài)部分重構(gòu)的可重構(gòu)計(jì)算配置網(wǎng)絡(luò)系統(tǒng)的進(jìn)一步設(shè)計(jì)在于,多層次嵌套樹形結(jié)構(gòu)中,在每個(gè)雙樹配置網(wǎng)絡(luò)結(jié)構(gòu)的配置流入口處設(shè)有一個(gè)ii型配置過濾器。
可擴(kuò)展的支持動(dòng)態(tài)部分重構(gòu)的可重構(gòu)計(jì)算配置網(wǎng)絡(luò)系統(tǒng)的進(jìn)一步設(shè)計(jì)在于,配置包由若干固定位寬的配置片組成,頭部數(shù)個(gè)配置片分別表示配置包的配置對(duì)象標(biāo)識(shí)和配置包的長(zhǎng)度,配置包尾部的配置片是配置的具體信息。
可擴(kuò)展的支持動(dòng)態(tài)部分重構(gòu)的可重構(gòu)計(jì)算配置網(wǎng)絡(luò)系統(tǒng)的進(jìn)一步設(shè)計(jì)在于,配置對(duì)象標(biāo)識(shí)由兩部分組成,分別為配置過濾器標(biāo)識(shí)和用于從該配置過濾器接收配置信息的可重構(gòu)單元標(biāo)識(shí)。
可擴(kuò)展的支持動(dòng)態(tài)部分重構(gòu)的可重構(gòu)計(jì)算配置網(wǎng)絡(luò)系統(tǒng)的進(jìn)一步設(shè)計(jì)在于,可重構(gòu)單元標(biāo)識(shí)的位寬為k,k取0或1。
本發(fā)明的優(yōu)點(diǎn)如下:
(1)本發(fā)明的可重構(gòu)計(jì)算配置網(wǎng)絡(luò)系統(tǒng)的配置網(wǎng)絡(luò)由多層次的配置樹結(jié)構(gòu)構(gòu)成,有效縮短最長(zhǎng)配置路徑長(zhǎng)度,混合串并行配置,多方向配置流并行配置。
(2)本發(fā)明的可重構(gòu)計(jì)算配置網(wǎng)絡(luò)系統(tǒng)的配置網(wǎng)絡(luò)具有良好的可擴(kuò)展性,能夠適應(yīng)不同規(guī)模的可重構(gòu)計(jì)算資源的配置。
(3)本發(fā)明的可重構(gòu)計(jì)算配置網(wǎng)絡(luò)系統(tǒng)支持動(dòng)態(tài)配置和部分配置。
附圖說明
圖1為單樹配置結(jié)構(gòu)示意圖。
圖2為雙樹配置網(wǎng)絡(luò)系統(tǒng)示意圖。
圖3為嵌套樹配置網(wǎng)絡(luò)系統(tǒng)示意圖。
圖4為最長(zhǎng)配置流路徑長(zhǎng)度對(duì)比圖。
圖5為平均配置包功耗對(duì)比圖。
具體實(shí)施方式
本實(shí)施例的可擴(kuò)展的支持動(dòng)態(tài)部分重構(gòu)的可重構(gòu)計(jì)算配置網(wǎng)絡(luò)系統(tǒng),采用多層次嵌套樹形結(jié)構(gòu)形成配置網(wǎng)絡(luò)系統(tǒng),配置流每一次改變配置路徑方向都擴(kuò)展兩個(gè)配置方向,形成一條配置鏈上配置串行傳遞、多條配置鏈上配置并行傳遞的串并行混合配置的重構(gòu)方式,多層次嵌套樹形結(jié)構(gòu)由至少一個(gè)雙樹配置網(wǎng)絡(luò)結(jié)構(gòu)與一個(gè)雙向主干配置鏈組成。雙樹配置網(wǎng)絡(luò)結(jié)構(gòu)由兩個(gè)單樹配置網(wǎng)絡(luò)結(jié)構(gòu)組成。每個(gè)單樹配置網(wǎng)絡(luò)結(jié)構(gòu)均與可重構(gòu)計(jì)算單元相連。
該系統(tǒng)架構(gòu)基于配置包進(jìn)行配置流的傳遞,通過i型配置過濾器和ii型配置過濾器過濾配置包的傳遞。配置包由一定長(zhǎng)度且固定位寬的配置片組成。位于頭部的數(shù)個(gè)配置片分別表示配置包的配置對(duì)象標(biāo)識(shí)和配置包的長(zhǎng)度。配置對(duì)象標(biāo)志由兩部分組成,分別為配置過濾器標(biāo)識(shí)和從該配置過濾器接收配置信息的可重構(gòu)單元的標(biāo)識(shí)。若每個(gè)配置過濾器后僅連接一個(gè)可重構(gòu)單元,則可重構(gòu)單元標(biāo)識(shí)位寬為0,配置過濾器標(biāo)識(shí)即可重構(gòu)單元標(biāo)識(shí)。配置包尾部的配置片是配置的具體信息,由配置對(duì)象可重構(gòu)計(jì)算單元進(jìn)行解析以重構(gòu)自身功能和互連。
樹形配置網(wǎng)絡(luò)系統(tǒng)根據(jù)可重構(gòu)計(jì)算單元的數(shù)量和配置信息粒度確定配置包的粒度,即組成配置包的配置片的位寬。通常情況下,第一個(gè)配置片標(biāo)志該配置包待配置對(duì)象的標(biāo)識(shí),第二個(gè)配置片代表該配置包的長(zhǎng)度,即包中配置片的數(shù)目。在單元數(shù)量較大而計(jì)算單元配置信息粒度較小情況下,可以考慮使用多個(gè)配置片代表待配置對(duì)象的標(biāo)識(shí)。
配置網(wǎng)絡(luò)系統(tǒng)基本結(jié)構(gòu)是單樹配置結(jié)構(gòu),如附圖1所示。單樹配置結(jié)構(gòu)有一條主干配置鏈和多條分支配置鏈構(gòu)成。主干配置鏈和分支配置鏈的第一個(gè)配置過濾器為ii型配置過濾器,其他為i型配置過濾器。配置過濾器的標(biāo)識(shí)編號(hào)順序如附圖1和附圖2所示。隨高度增大,先對(duì)主干配置過濾器編號(hào),然后分別對(duì)分枝配置過濾器編號(hào)。i型配置過濾器傳遞配置過濾器標(biāo)識(shí)大于或等于自身標(biāo)識(shí)的配置包,而可以通過ii型配置過濾器的配置包則額外要求配置過濾器標(biāo)識(shí)不大于本分枝或樹的最大配置過濾器標(biāo)識(shí)。
如圖2,雙樹配置配置網(wǎng)絡(luò)系統(tǒng)是本發(fā)明的基本配置網(wǎng)絡(luò)系統(tǒng),由兩個(gè)單樹配置結(jié)構(gòu)組成,由圖可知,兩個(gè)單樹配置結(jié)構(gòu)通過兩個(gè)ii型配置過濾器相互連接實(shí)現(xiàn)通信連接。嵌套樹配置網(wǎng)路架構(gòu)由多個(gè)雙樹配置網(wǎng)絡(luò)和一個(gè)雙向主干配置鏈構(gòu)成。雙向主干配置鏈上,在每個(gè)雙樹配置結(jié)構(gòu)與配置鏈連接處兩側(cè)存在于該雙樹結(jié)構(gòu)寬度數(shù)目一致的i型配置過濾器;且在相鄰的兩個(gè)雙樹配置結(jié)構(gòu)間都存在一個(gè)i型配置過濾器;同時(shí),在配置流入口兩側(cè)各有一個(gè)ii型配置過濾器。嵌套樹配置網(wǎng)路架構(gòu)的層次更深,可進(jìn)一步縮短最長(zhǎng)配置流路徑。
對(duì)于可重構(gòu)架構(gòu)的資源,2k個(gè)可重構(gòu)計(jì)算單元連接到配置過濾器的寄存輸出端,匹配配置過濾器輸出的配置包的配置對(duì)象標(biāo)識(shí),當(dāng)標(biāo)識(shí)與自身標(biāo)識(shí)一致時(shí),計(jì)算單元接收并根據(jù)自身特性解析配置包中配置信息。k等于配置對(duì)象標(biāo)識(shí)的可重構(gòu)單元標(biāo)識(shí)的位寬,應(yīng)根據(jù)可重構(gòu)計(jì)算單元粒度確定適宜的k值,一般情況下取0或1。
在擴(kuò)展方面,對(duì)于雙樹架構(gòu)可以通過增加樹的高度和寬度進(jìn)行網(wǎng)絡(luò)擴(kuò)展;對(duì)于嵌套樹架構(gòu)可以通過增加雙樹結(jié)構(gòu)的數(shù)目達(dá)到擴(kuò)展的目的。
在每一配置過濾器連接一個(gè)計(jì)算資源和配置包粒度為16的條件下,使用synopsysdc綜合工具和40nmcmos工藝對(duì)雙樹網(wǎng)絡(luò)系統(tǒng)和現(xiàn)有的配置網(wǎng)絡(luò)系統(tǒng)進(jìn)行綜合和對(duì)比,邏輯資源平均增加0.04%,可認(rèn)為幾乎沒有增加,而互連線數(shù)目則平均減少了0.152%;在每個(gè)配置過濾器連接兩個(gè)計(jì)算資源的條件下,對(duì)同樣的計(jì)算資源,配置網(wǎng)絡(luò)邏輯資源平均減少49.98%。最長(zhǎng)配置流路徑長(zhǎng)度縮短75%~97%,配置功耗平均減少71%~98%,參見圖4、圖5。其中,圖5中p表示一個(gè)配置包經(jīng)過過濾器引起的功耗。
本實(shí)施例的可重構(gòu)計(jì)算配置網(wǎng)絡(luò)系統(tǒng)的配置網(wǎng)絡(luò)由多層次的配置樹結(jié)構(gòu)構(gòu)成,有效縮短最長(zhǎng)配置路徑長(zhǎng)度,混合串并行配置,多方向配置流并行配置。另外,該配置網(wǎng)絡(luò)具有良好的可擴(kuò)展性,能夠適應(yīng)不同規(guī)模的可重構(gòu)計(jì)算資源的配置。最后,可重構(gòu)計(jì)算配置網(wǎng)絡(luò)系統(tǒng)也支持動(dòng)態(tài)配置和部分配置。
該架構(gòu)為多層次網(wǎng)絡(luò)系統(tǒng),以樹形結(jié)構(gòu)為基本單元,有效地縮短了最長(zhǎng)配置流路徑長(zhǎng)度;該架構(gòu)混合串并行配置鏈路,多方向配置鏈路可并行配置,有效縮短了配置時(shí)間和配置功耗;該架構(gòu)以單樹結(jié)構(gòu)為基本構(gòu)成單元,基本形態(tài)為雙樹架構(gòu),可以擴(kuò)展為嵌套樹架構(gòu),具有良好的可擴(kuò)展性,可以根據(jù)實(shí)際應(yīng)用需求擴(kuò)展或縮小網(wǎng)絡(luò)規(guī)模,適合于可重構(gòu)計(jì)算架構(gòu)的vlsi的設(shè)計(jì)實(shí)現(xiàn)
以上所述,僅為本發(fā)明較佳的具體實(shí)施方式,但本發(fā)明的保護(hù)范圍不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),根據(jù)本發(fā)明的技術(shù)方案及其本發(fā)明構(gòu)思加以等同替換或改變,都涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。