亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

動(dòng)態(tài)可重構(gòu)陣列調(diào)用配置信息的方法、緩存器和處理器的制作方法

文檔序號(hào):6426265閱讀:223來源:國知局
專利名稱:動(dòng)態(tài)可重構(gòu)陣列調(diào)用配置信息的方法、緩存器和處理器的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及處理器內(nèi)的信息調(diào)用方法,特別是指一種動(dòng)態(tài)可重構(gòu)陣列調(diào)用配置信息的方法、緩存器和處理器。
背景技術(shù)
動(dòng)態(tài)可重構(gòu)處理器內(nèi)往往含有多個(gè)算術(shù)邏輯單元,且數(shù)量巨大,稱之為眾核陣列。 陣列內(nèi)部配以靈活度高的路由單元,實(shí)現(xiàn)算術(shù)邏輯單元之間多樣化的互聯(lián)。因此,經(jīng)路由單元連接后的眾核陣列可實(shí)現(xiàn)對(duì)數(shù)據(jù)流的高速處理,較傳統(tǒng)的單核以及少核處理器在性能上有著巨大的優(yōu)勢。同時(shí),較固化的專用電路在靈活性上也有著巨大的優(yōu)勢。目前的動(dòng)態(tài)可重構(gòu)處理器的結(jié)構(gòu)示意圖如

圖1所示。動(dòng)態(tài)可重構(gòu)處理器的工作流程可概括為如下步驟動(dòng)態(tài)可重構(gòu)處理器由外部數(shù)據(jù)讀入裝置將處理器外存儲(chǔ)器內(nèi)待處理的數(shù)據(jù)讀入處理器內(nèi),分發(fā)至子單元1、子單元2至子單元N等多個(gè)子單元處理內(nèi)的外部數(shù)據(jù)緩存器。多個(gè)子單元將數(shù)據(jù)從各自的外部數(shù)據(jù)緩存器讀入,再進(jìn)行處理。多個(gè)子單元同時(shí)處理,以達(dá)并行處理的效果。各子單元處理完后,將結(jié)果數(shù)據(jù)存于各自的內(nèi)部數(shù)據(jù)緩存器。外部數(shù)據(jù)寫出裝置將結(jié)果數(shù)據(jù)從各子單元的內(nèi)部數(shù)據(jù)緩存器讀入,并寫出到處理器外部存儲(chǔ)器。另外,除上述步驟外,在工作流程中,還包括子單元間的同步機(jī)制通過子單元間同步控制器來實(shí)現(xiàn)。子單元間的數(shù)據(jù)交互通過由子單元1向子單元間數(shù)據(jù)交互暫存器寫入數(shù)據(jù),子單元2從子單元間數(shù)據(jù)交互暫存器讀出此數(shù)據(jù)來實(shí)現(xiàn)。使用時(shí)還需結(jié)合子單元間的同步機(jī)制,即子單元1向子單元間數(shù)據(jù)交互暫存器寫完數(shù)據(jù)后,子單元2才可開始讀取子單元間數(shù)據(jù)交互暫存器。動(dòng)態(tài)可重構(gòu)處理器可從數(shù)據(jù)流和配置流的角度去被描述。數(shù)據(jù)流的角度是指從對(duì)數(shù)據(jù)流的處理的角度出發(fā),遍歷數(shù)據(jù)流所經(jīng)過的動(dòng)態(tài)可重構(gòu)處理器內(nèi)的各模塊,提出各模塊所需的功能。從數(shù)據(jù)流的角度出發(fā),動(dòng)態(tài)可重構(gòu)處理器在結(jié)構(gòu)上可分為以下四個(gè)部分一、數(shù)據(jù)存儲(chǔ)裝置包括1、外部數(shù)據(jù)緩存器用于將讀入的外部數(shù)據(jù)緩存,待需要時(shí)被讀出。2、內(nèi)部數(shù)據(jù)存儲(chǔ)器用于暫存處理單元陣列運(yùn)算所要使用的數(shù)據(jù),待需要時(shí)數(shù)據(jù)被讀出,輸出到處理單元陣列。3、內(nèi)部數(shù)據(jù)緩存器用于對(duì)處理單元陣列的結(jié)果數(shù)據(jù)進(jìn)行緩存,待輸出至處理器外。4、子單元間數(shù)據(jù)交互暫存器用于暫存子單元1的結(jié)果數(shù)據(jù),待子單元2讀出,以實(shí)現(xiàn)子單元間的數(shù)據(jù)交互。5、處理器間數(shù)據(jù)交互暫存器用于暫存第一處理器的子單元的結(jié)果數(shù)據(jù),待第二處理器的子單元讀出,以實(shí)現(xiàn)處理器間的數(shù)據(jù)交互。
二、數(shù)據(jù)轉(zhuǎn)移裝置用于將數(shù)據(jù)從數(shù)據(jù)存儲(chǔ)裝置讀出,并寫入另一個(gè)數(shù)據(jù)存儲(chǔ)裝置,使數(shù)據(jù)在數(shù)據(jù)存儲(chǔ)裝置之間轉(zhuǎn)移。最終實(shí)現(xiàn)將數(shù)據(jù)寫入處理單元陣列,處理單元陣列運(yùn)行完后,將處理單元陣列的結(jié)果數(shù)據(jù)讀出。圖1中的數(shù)據(jù)轉(zhuǎn)移裝置分為6個(gè),包括外部數(shù)據(jù)讀入裝置,片內(nèi)數(shù)據(jù)交互裝置,內(nèi)外部數(shù)據(jù)轉(zhuǎn)換裝置,內(nèi)部數(shù)據(jù)讀入裝置,內(nèi)部數(shù)據(jù)寫出裝置,外部數(shù)據(jù)寫出裝置。按數(shù)據(jù)流的流動(dòng)方向,具體說明如下。1、外部數(shù)據(jù)讀入裝置用于將動(dòng)態(tài)可重構(gòu)處理器外待處理的數(shù)據(jù)讀入動(dòng)態(tài)可重構(gòu)處理器內(nèi),緩存于外部數(shù)據(jù)緩存器。2、片內(nèi)數(shù)據(jù)交互裝置用于將子單元間數(shù)據(jù)交換暫存器或者處理器間數(shù)據(jù)交互暫存器內(nèi)存儲(chǔ)的其他子單元的結(jié)果數(shù)據(jù)讀出,分發(fā)至當(dāng)前子單元的內(nèi)部數(shù)據(jù)存儲(chǔ)器或直接分發(fā)至處理單元陣列,這取決于此子單元的結(jié)果數(shù)據(jù)是否可直接被處理單元陣列處理。3、內(nèi)外部數(shù)據(jù)轉(zhuǎn)換裝置用于將外部數(shù)據(jù)緩存器內(nèi)緩存的外部數(shù)據(jù)分發(fā)至內(nèi)部數(shù)據(jù)存儲(chǔ)器或直接分發(fā)至處理單元陣列,這取決于此外部數(shù)據(jù)是否可直接被處理單元陣列處理。4、內(nèi)部數(shù)據(jù)讀入裝置用于將內(nèi)部數(shù)據(jù)存儲(chǔ)器里存儲(chǔ)的當(dāng)前子單元的內(nèi)部數(shù)據(jù)讀出,并且在需要時(shí)將多塊2D數(shù)據(jù)拼接成一塊2D數(shù)據(jù),最終將拼接后的數(shù)據(jù)(如果需要拼接的話)發(fā)送到處理單元陣列。注在本發(fā)明中,以2D的方式描述數(shù)據(jù),一塊2D數(shù)據(jù)塊每行數(shù)據(jù)個(gè)數(shù)相同,并且以行對(duì)齊的方式存儲(chǔ)在存儲(chǔ)器中。5、內(nèi)部數(shù)據(jù)寫出裝置用于將處理單元陣列的結(jié)果數(shù)據(jù)讀出,再寫入至處理單元陣列供緊接著運(yùn)行處理單元陣列時(shí)使用,或?qū)懭胫羶?nèi)部數(shù)據(jù)存儲(chǔ)器將數(shù)據(jù)緩存起來,或?qū)懭胱訂卧g數(shù)據(jù)交互暫存器供子單元間數(shù)據(jù)交互使用,或?qū)懭胩幚砥鏖g數(shù)據(jù)交互暫存器供處理器間數(shù)據(jù)交互使用,或?qū)懭雰?nèi)部數(shù)據(jù)緩存器待輸出至處理器外。6、外部數(shù)據(jù)寫出裝置用于將緩存于內(nèi)部數(shù)據(jù)緩存器的子單元的結(jié)果數(shù)據(jù)輸出至處理器外。三、運(yùn)算單元圖1中的運(yùn)算單元即處理單元陣列,處理單元是一個(gè)算術(shù)邏輯運(yùn)算單元,可實(shí)現(xiàn)基本的算術(shù)運(yùn)算功能和邏輯運(yùn)算功能以及一些定制的算術(shù)邏輯運(yùn)算功能。處理單元之間通過路由單元連接,以實(shí)現(xiàn)處理單元之間的靈活且快速的數(shù)據(jù)傳遞。整個(gè)處理單元陣列通過時(shí)序控制單元控制,以協(xié)調(diào)處理單元陣列的輸入、運(yùn)算、輸出之間的時(shí)序關(guān)系。處理單元陣列可實(shí)現(xiàn)對(duì)大批量數(shù)據(jù)進(jìn)行循環(huán)操作的快速處理。四、同步控制裝置同步控制裝置即子單元間同步控制器,可實(shí)現(xiàn)多個(gè)子單元(1個(gè)至N個(gè),N為子單元個(gè)數(shù))均完成其各自的指定子任務(wù)后多個(gè)子單元(此處的多個(gè)可與之前的多個(gè)不一致) 才可執(zhí)行其各自子任務(wù)序列中的下一個(gè)子任務(wù)。子單元間同步控制器實(shí)現(xiàn)了某任務(wù)在被劃分為多個(gè)子任務(wù)后,分發(fā)至多個(gè)子單元并行執(zhí)行,多個(gè)子單元并行執(zhí)行完多個(gè)子任務(wù)后的同步。同步后才可開始下一任務(wù)的并行
5化執(zhí)行。上面說明了處理器的結(jié)構(gòu)以及數(shù)據(jù)處理流程,下面通過配置流說明處理器處理任務(wù)的過程。定義出一套有效的控制信息和一組有效的控制機(jī)制,不僅對(duì)動(dòng)態(tài)可重構(gòu)處理器內(nèi)的各個(gè)模塊的功能進(jìn)行控制,更使得各個(gè)模塊之間可正確的協(xié)同工作。配置流從底層出發(fā),首先完成一個(gè)簡單的子任務(wù),再由多個(gè)子任務(wù)串聯(lián)起一個(gè)任務(wù),最終由多個(gè)任務(wù)串聯(lián)起一個(gè)完整的應(yīng)用算法。層次化的動(dòng)態(tài)可重構(gòu)處理器的配置信息定義如下(為便于理解,采取自底向上的方式來層層描述動(dòng)態(tài)可重構(gòu)處理器的配置信息)配置信息層次3——處理單元陣列的配置信息,參見表1,包括每個(gè)處理單元的算術(shù)邏輯功能的選擇信息。每個(gè)處理單元的輸入選擇信息,這體現(xiàn)了處理單元陣列的路由結(jié)構(gòu)。處理單元陣列的時(shí)序控制信息。表1處理單元陣列配置信息
權(quán)利要求
1.一種動(dòng)態(tài)可重構(gòu)陣列處理器內(nèi)調(diào)用配置信息的方法,其特征在于,包括 子單元向處理單元陣列配置信息緩存器發(fā)出配置信息請(qǐng)求;按照所述配置信息請(qǐng)求,在所述處理單元陣列配置信息緩存器內(nèi)查找到一定時(shí)間內(nèi)調(diào)用過的配置信息;將所述配置信息反饋到所述子單元。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述配置信息請(qǐng)求中包括配置信息地址; 查找到具有相同所述配置信息地址的所述配置信息,反饋到所述子單元。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述反饋之后,還包括在所述處理單元陣列配置信息緩存器內(nèi),獲得存在時(shí)間比所述查找到的配置信息的存在時(shí)間小的配置信息,更新所述獲得的配置信息的存在時(shí)間;在所述更新過程中,將所述查找到的所述配置信息的存在時(shí)間,設(shè)置為最小。
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,還包括如果在所述處理單元陣列配置信息緩存器沒有查找到所述配置信息,則將所述配置信息地址發(fā)送至處理單元陣列配置信息存儲(chǔ)器;按照所述配置信息地址,在所述處理單元陣列配置信息存儲(chǔ)器內(nèi)查找到具有相同所述配置信息地址的所述配置信息;將所述配置信息反饋到所述子單元。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述處理單元陣列配置信息緩存器,將所述處理單元陣列配置信息存儲(chǔ)器查找到的所述配置信息轉(zhuǎn)發(fā)到所述子單元; 還包括所述處理單元陣列配置信息緩存器轉(zhuǎn)發(fā)所述配置信息的過程中,將所述配置信息替換自身存儲(chǔ)的存在時(shí)間最長的配置信息。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述替換之后,還包括 更新所述處理單元陣列配置信息緩存器內(nèi)的各個(gè)配置信息的存在時(shí)間;在所述更新過程中,將所述替換后的所述配置信息的存在時(shí)間,設(shè)置為最小。
7.一種用于動(dòng)態(tài)可重構(gòu)陣列處理器的處理單元陣列配置信息緩存器,其特征在于,包括所述處理單元陣列配置信息緩存器包括多個(gè)配置信息存儲(chǔ)單元、邏輯控制單元; 每個(gè)所述信息存儲(chǔ)單元,用于存儲(chǔ)一條配置信息;所述邏輯控制單元,用于接收配置信息請(qǐng)求,在所述信息存儲(chǔ)單元中查找到一定時(shí)間內(nèi)調(diào)用過的配置信息,并將所述查找到的配置信息回復(fù)所述配置信息請(qǐng)求的發(fā)起方。
8.根據(jù)權(quán)利要求7所述的緩存器,其特征在于,所述邏輯控制單元包括檢索模塊,用于按照接收的所述配置信息請(qǐng)求中的配置信息地址,在所述配置信息存儲(chǔ)單元中,查找到具有相同所述配置信息地址的配置信息,發(fā)送至所述子單元;轉(zhuǎn)發(fā)模塊,用于在所述檢索模塊沒有查找到所述配置信息,將轉(zhuǎn)發(fā)所述配置信息請(qǐng)求; 接收所述配置信息請(qǐng)求對(duì)應(yīng)的所述配置信息,轉(zhuǎn)發(fā)至所述子單元,并將所述配置信息替換所述配置信息存儲(chǔ)單元中存在時(shí)間最長的配置信息;時(shí)間戳模塊,用于記錄每個(gè)所述配置信息的存在時(shí)間,在所述檢索模塊發(fā)送所述配置信息后,獲得存在時(shí)間比所述查找到的配置信息的存在時(shí)間小的配置信息,更新所述獲得的配置信息的存在時(shí)間,并將所述查找到的配置信息的存在時(shí)間設(shè)置為最?。换蜣D(zhuǎn)發(fā)模塊發(fā)送所述配置信息后,更新每個(gè)所述配置信息的存在時(shí)間,并將所述替換后的配置信息的存在時(shí)間,設(shè)置為最小。
9.一種動(dòng)態(tài)可重構(gòu)陣列處理器,其特征在于,包括子單元,用于向處理單元陣列配置信息緩存器發(fā)出配置信息請(qǐng)求;所述處理單元陣列配置信息緩存器包括多個(gè)配置信息存儲(chǔ)單元、邏輯控制單元;每個(gè)所述信息存儲(chǔ)單元,用于存儲(chǔ)一條配置信息;所述邏輯控制單元,用于接收配置信息請(qǐng)求,在所述信息存儲(chǔ)單元中查找到一定時(shí)間內(nèi)調(diào)用過的配置信息,并將所述查找到的配置信息回復(fù)所述子單元;如果沒有查找到,則將所述配置信息請(qǐng)求輸出,接收回復(fù)的對(duì)應(yīng)所述配置信息請(qǐng)求的配置信息,將所述接收的配置轉(zhuǎn)發(fā)所述子單元。
10.根據(jù)權(quán)利要求9所述的處理器,其特征在于,還包括處理單元陣列配置信息存儲(chǔ)器,用于接收來自所述處理單元陣列配置信息緩存器的所述配置請(qǐng)求;按照所述配置信息請(qǐng)求,在自身內(nèi)查找到相應(yīng)的所述配置信息,將所述配置信息回復(fù)給所述處理單元陣列配置信息緩存器。
全文摘要
本發(fā)明公開了一種動(dòng)態(tài)可重構(gòu)陣列調(diào)用配置信息的方法、緩存器和處理器,方法包括子單元向處理單元陣列配置信息緩存器發(fā)出配置信息請(qǐng)求;按照所述配置信息請(qǐng)求,在所述處理單元陣列配置信息緩存器內(nèi)查找到一定時(shí)間內(nèi)調(diào)用過的配置信息;將所述配置信息反饋到所述子單元。本發(fā)明還提供一種用于動(dòng)態(tài)可重構(gòu)處理器的處理單元陣列配置信息緩存器以及動(dòng)態(tài)可重構(gòu)處理器。由于緩存器內(nèi)存儲(chǔ)子單元存儲(chǔ)著在一定時(shí)間內(nèi)調(diào)用的配置信息,只有在處理單元陣列配置信息高速緩存器內(nèi)沒有找到配置信息時(shí),才會(huì)到處理單元陣列配置信息存儲(chǔ)器內(nèi)獲得配置信息,從而提高了配置信息的調(diào)用效率,縮短了調(diào)用時(shí)間。
文檔編號(hào)G06F9/34GK102279729SQ20111015950
公開日2011年12月14日 申請(qǐng)日期2011年6月14日 優(yōu)先權(quán)日2011年6月14日
發(fā)明者劉雷波, 尹首一, 戚斌, 時(shí)龍興, 曹鵬, 朱敏, 楊軍, 王延升, 魏少軍 申請(qǐng)人:清華大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1