專利名稱:動(dòng)態(tài)可重構(gòu)處理器之間的數(shù)據(jù)傳輸方法、處理器和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及處理器之間的數(shù)據(jù)傳輸,特別是指一種動(dòng)態(tài)可重構(gòu)處理器之間的數(shù)據(jù)傳輸方法、處理器和系統(tǒng)。
背景技術(shù):
動(dòng)態(tài)可重構(gòu)處理器其較之以往的單核處理器、專用芯片、現(xiàn)場可編程邏輯陣列有著良好的技術(shù)優(yōu)勢,是未來電路結(jié)構(gòu)發(fā)展的一個(gè)方向。動(dòng)態(tài)可重構(gòu)處理器內(nèi)通常具有多個(gè)子單元,各個(gè)子單元之間也可以進(jìn)行數(shù)據(jù)交互和處理。每個(gè)子單元內(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)處理器通常單獨(dú)使用,每個(gè)子單元分別處理相應(yīng)的任務(wù)。由于功能的需求,一些數(shù)據(jù)量較大的任務(wù)需要多個(gè)動(dòng)態(tài)可重構(gòu)處理器聯(lián)合處理,但目前的多個(gè)動(dòng)態(tài)可重構(gòu)處理器之間,尚無法進(jìn)行數(shù)據(jù)交互。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的實(shí)施例在于提供一種動(dòng)態(tài)可重構(gòu)處理器之間的數(shù)據(jù)傳輸方法、處理器和系統(tǒng),以解決上述一些數(shù)據(jù)量較大的任務(wù)需要多個(gè)動(dòng)態(tài)可重構(gòu)處理器聯(lián)合處理,動(dòng)態(tài)可重構(gòu)處理器之間尚無法進(jìn)行數(shù)據(jù)交互的問題。為解決上述問題,本發(fā)明的實(shí)施例提供一種動(dòng)態(tài)可重構(gòu)處理器之間的數(shù)據(jù)傳輸方法,包括第一動(dòng)態(tài)可重構(gòu)處理器將數(shù)據(jù)寫入到多個(gè)動(dòng)態(tài)可重構(gòu)處理器所連接的存儲(chǔ)器內(nèi)的對(duì)應(yīng)區(qū)域,同時(shí)設(shè)置所述數(shù)據(jù)的訪問次數(shù);第二動(dòng)態(tài)可重構(gòu)處理器判斷出所述訪問次數(shù)有效,讀取所述對(duì)應(yīng)區(qū)域內(nèi)數(shù)據(jù)。本發(fā)明的實(shí)施例提供一種動(dòng)態(tài)可重構(gòu)處理器,包括內(nèi)部數(shù)據(jù)寫出裝置和處理器間數(shù)據(jù)交互裝置;所述內(nèi)部數(shù)據(jù)寫出裝置,包括寫入模塊,用于將數(shù)據(jù)寫入到其連接的存儲(chǔ)器內(nèi)各個(gè)區(qū)域中的一個(gè)對(duì)應(yīng)區(qū)域;賦值模塊,用于在所述存儲(chǔ)器內(nèi)設(shè)置所述對(duì)應(yīng)區(qū)域存儲(chǔ)的數(shù)據(jù)的訪問次數(shù);所述處理器間數(shù)據(jù)交互裝置,包括判斷模塊,用于判斷存儲(chǔ)器內(nèi)各個(gè)區(qū)域中的一個(gè)區(qū)域的訪問次數(shù)是否有效;讀取模塊,用于在所述判斷模塊判斷有效后,讀取區(qū)域內(nèi)的數(shù)據(jù)。本發(fā)明的實(shí)施例提供一種動(dòng)態(tài)可重構(gòu)處理器之間的數(shù)據(jù)傳輸系統(tǒng),包括至少兩個(gè)動(dòng)態(tài)可重構(gòu)處理器,以及所述動(dòng)態(tài)可重構(gòu)處理器連接的存儲(chǔ)器;其中,所述存儲(chǔ)器內(nèi)設(shè)置有每個(gè)動(dòng)態(tài)可重構(gòu)處理器對(duì)應(yīng)的存儲(chǔ)數(shù)據(jù)的區(qū)域、以及該區(qū)域訪問次數(shù)的寄存器;第一動(dòng)態(tài)可重構(gòu)處理器,用于將數(shù)據(jù)寫入到多個(gè)動(dòng)態(tài)可重構(gòu)處理器所連接的存儲(chǔ)器內(nèi)的對(duì)應(yīng)區(qū)域,同時(shí)在所述存儲(chǔ)器中其自身對(duì)應(yīng)的寄存器內(nèi)設(shè)置所述數(shù)據(jù)的訪問次數(shù);第二動(dòng)態(tài)可重構(gòu)處理器,用于判斷出所述訪問次數(shù)有效,讀取所述對(duì)應(yīng)區(qū)域內(nèi)數(shù)據(jù)。本發(fā)明的實(shí)施例的方法、處理器和系統(tǒng),通過設(shè)定的訪問次數(shù),可有效實(shí)現(xiàn)處理器之間的數(shù)據(jù)傳輸。通過設(shè)置訪問次數(shù),可限定數(shù)據(jù)的讀取次數(shù),在有效的訪問次數(shù)結(jié)束后, 防止其它處理器的誤讀。本發(fā)明的實(shí)施例還可在讀寫之前,判斷當(dāng)前的存儲(chǔ)器狀態(tài),從而避免處理器相互之間的干擾。
圖1是本發(fā)明的實(shí)施例中的結(jié)構(gòu)示意圖;圖2是本發(fā)明的實(shí)施例中動(dòng)態(tài)可重構(gòu)處理器之間的數(shù)據(jù)傳輸示意圖;圖3是圖2中數(shù)據(jù)處理器間數(shù)據(jù)交互暫存器的結(jié)構(gòu)示意圖;圖4是本發(fā)明實(shí)施例一的流程圖;圖5是本發(fā)明實(shí)施例二的流程圖;圖6是本發(fā)明實(shí)施例三的動(dòng)態(tài)可重構(gòu)處理器結(jié)構(gòu)示意圖;圖7是本發(fā)明實(shí)施例四的系統(tǒng)結(jié)構(gòu)示意圖。
具體實(shí)施例方式為清楚說明本發(fā)明中的方案,下面給出優(yōu)選的實(shí)施例并結(jié)合附圖詳細(xì)說明。本發(fā)明的實(shí)施例在多個(gè)動(dòng)態(tài)可重構(gòu)處理器之間進(jìn)行數(shù)據(jù)交互,下面首先闡述本發(fā)明的實(shí)施例中選用的一種動(dòng)態(tài)可重構(gòu)處理器的工作流程,參見圖1,包括1、動(dòng)態(tài)可重構(gòu)處理器由外部數(shù)據(jù)讀入裝置將處理器外存儲(chǔ)器內(nèi)待處理的數(shù)據(jù)讀入處理器內(nèi),分發(fā)至多個(gè)子單元處理內(nèi)的外部數(shù)據(jù)緩存器。2、多個(gè)子單元將數(shù)據(jù)從各自的外部數(shù)據(jù)緩存器讀出,再進(jìn)行處理。多個(gè)子單元同時(shí)處理,以達(dá)并行處理的效果。各子單元處理完后,將結(jié)果數(shù)據(jù)存于各自的內(nèi)部數(shù)據(jù)緩存器。3、外部數(shù)據(jù)寫出裝置將結(jié)果數(shù)據(jù)從各子單元的內(nèi)部數(shù)據(jù)緩存器讀出,并寫出到處理器外部存儲(chǔ)器。在上述的處理過程中,子單元間的數(shù)據(jù)交互時(shí),由子單元1向子單元間數(shù)據(jù)交互暫存器寫入數(shù)據(jù),子單元2從子單元間數(shù)據(jù)交互暫存器讀出此數(shù)據(jù)來實(shí)現(xiàn)。使用時(shí)還需結(jié)合子單元間的同步機(jī)制,即子單元1向子單元間數(shù)據(jù)交互暫存器寫完數(shù)據(jù)后,子單元2才可開始讀取子單元間數(shù)據(jù)交互暫存器。子單元間的同步機(jī)制通過子單元間同步控制器來實(shí)現(xiàn)。子單元間數(shù)據(jù)交互裝置, 用于將子單元間數(shù)據(jù)交換暫存器內(nèi)存儲(chǔ)的其它子單元的結(jié)果數(shù)據(jù)讀出,并在一定程度上進(jìn)行整合,最終將整合后的數(shù)據(jù)分發(fā)至當(dāng)前子單元的內(nèi)部數(shù)據(jù)存儲(chǔ)器或直接分發(fā)至處理單元陣列。本發(fā)明的實(shí)施例采用圖2所示的多個(gè)動(dòng)態(tài)可重構(gòu)處理器連接的結(jié)構(gòu)示意圖,在多個(gè)動(dòng)態(tài)可重構(gòu)處理器之間,加入了處理器間數(shù)據(jù)交互暫存器,在該實(shí)施例中,具有N個(gè)動(dòng)態(tài)可重構(gòu)處理器。每個(gè)動(dòng)態(tài)可重構(gòu)處理器內(nèi),設(shè)置有處理器間數(shù)據(jù)交互裝置。在每個(gè)子單元內(nèi)劃分出兩個(gè)用于存儲(chǔ)數(shù)據(jù)的內(nèi)部數(shù)據(jù)存儲(chǔ)區(qū)域,例如子單元1內(nèi)劃分出的用于放置讀取到的數(shù)據(jù)的內(nèi)部數(shù)據(jù)存儲(chǔ)器14和用于放置寫出數(shù)據(jù)的內(nèi)部數(shù)據(jù)存儲(chǔ)器15。圖2中的處理器間數(shù)據(jù)交互暫存器的結(jié)構(gòu)如圖3所示,在其內(nèi)部設(shè)置有一個(gè)處理器間數(shù)據(jù)交互存儲(chǔ)器和N個(gè)可讀寄存器,N為進(jìn)行數(shù)據(jù)交互的多個(gè)動(dòng)態(tài)可重構(gòu)處理器的個(gè)數(shù)。其中,處理器間數(shù)據(jù)交互存儲(chǔ)器具有N個(gè)存儲(chǔ)區(qū)域,用于存儲(chǔ)每個(gè)動(dòng)態(tài)可重構(gòu)處理器的數(shù)據(jù),每個(gè)寄存器用于存儲(chǔ)該區(qū)域的訪問次數(shù)。下面結(jié)合附圖詳細(xì)說明本發(fā)明方法的實(shí)施例一,在圖2中的連接結(jié)構(gòu)中,各個(gè)處理器、及其內(nèi)部的子單元采用相同的結(jié)構(gòu),各個(gè)動(dòng)態(tài)可重構(gòu)處理器在相互傳輸數(shù)據(jù)的過程可參見圖4,包括以下步驟步驟S41 第一動(dòng)態(tài)可重構(gòu)處理器將數(shù)據(jù)寫入到多個(gè)動(dòng)態(tài)可重構(gòu)處理器所連接的存儲(chǔ)器內(nèi)的對(duì)應(yīng)區(qū)域,同時(shí)設(shè)置所述數(shù)據(jù)的訪問次數(shù)。其中,第一動(dòng)態(tài)可重構(gòu)處理器為圖2中的動(dòng)態(tài)可重構(gòu)處理器11,動(dòng)態(tài)可重構(gòu)處理器11可通過自身或內(nèi)部的內(nèi)部數(shù)據(jù)寫出裝置,讀取放置需要寫出數(shù)據(jù)的內(nèi)部數(shù)據(jù)存儲(chǔ)器 15,將讀取的數(shù)據(jù)寫入到存儲(chǔ)器,即處理器間數(shù)據(jù)交互暫存器中的對(duì)應(yīng)區(qū)域,同時(shí)設(shè)置存儲(chǔ)的數(shù)據(jù)的訪問次數(shù)。步驟S42 第二動(dòng)態(tài)可重構(gòu)處理器判斷出所述訪問次數(shù)有效,讀取所述對(duì)應(yīng)區(qū)域內(nèi)數(shù)據(jù)。其中,第二動(dòng)態(tài)可重構(gòu)處理器為圖2中的動(dòng)態(tài)可重構(gòu)處理器12,其內(nèi)部的處理器間數(shù)據(jù)交互裝置需要讀取第一動(dòng)態(tài)可重構(gòu)處理器寫入的數(shù)據(jù)時(shí),先讀取對(duì)應(yīng)區(qū)域內(nèi)的訪問次數(shù),如果判斷出訪問次數(shù)在有效的范圍內(nèi),則讀取對(duì)應(yīng)區(qū)域內(nèi)數(shù)據(jù)。通過上述的步驟,即可實(shí)現(xiàn)各個(gè)動(dòng)態(tài)可重構(gòu)處理器之間進(jìn)行數(shù)據(jù)傳輸。通過設(shè)置訪問次數(shù),可限定數(shù)據(jù)的讀取次數(shù),在有效的訪問次數(shù)結(jié)束后,防止其它處理器的誤讀。參見圖2和圖5,圖2中的動(dòng)態(tài)可重構(gòu)處理器11包括子單元1和子單元2等多個(gè)子單元;動(dòng)態(tài)可重構(gòu)處理器12包括子單元3和子單元4等多個(gè)子單元,子單元3內(nèi)劃分出的用于放置讀取到的數(shù)據(jù)的內(nèi)部數(shù)據(jù)存儲(chǔ)器16和用于放置寫出數(shù)據(jù)的內(nèi)部數(shù)據(jù)存儲(chǔ)器17。下面說明本發(fā)明的實(shí)施例二,以說明子單元1的數(shù)據(jù)傳輸至另一個(gè)處理器的子單元3中的過程,包括以下步驟S51 子單元1的內(nèi)部數(shù)據(jù)寫出裝置不斷的判斷處理器間數(shù)據(jù)交互暫存器是否被占用,可判斷處理器間數(shù)據(jù)交互暫存器的工作狀態(tài)的標(biāo)志位判斷是否占用,如果發(fā)現(xiàn)沒有被占用,則執(zhí)行步驟S52;S52 子單元1的內(nèi)部數(shù)據(jù)寫出裝置判斷寄存器內(nèi)最近一次自身設(shè)置的訪問次數(shù)是否無效,如果無效,則執(zhí)行步驟S53 ;訪問次數(shù)可以為零或正整數(shù),如果為零,則表示無效;如果為正整數(shù),則表示訪問次數(shù)有效,即還會(huì)有其它處理器訪問并讀取數(shù)據(jù)。子單元1的內(nèi)部數(shù)據(jù)寫出裝置判斷存儲(chǔ)訪問次數(shù)的寄存器,為其所在的動(dòng)態(tài)可重構(gòu)處理器11對(duì)應(yīng)的寄存器。S53 子單元1的內(nèi)部數(shù)據(jù)寫出裝置讀取數(shù)據(jù);
子單元1的內(nèi)部數(shù)據(jù)寫出裝置讀取內(nèi)部數(shù)據(jù)存儲(chǔ)器15內(nèi)存儲(chǔ)的數(shù)據(jù)。S54 子單元1的內(nèi)部數(shù)據(jù)寫出裝置寫出數(shù)據(jù);將讀取的數(shù)據(jù)寫出到處理器間數(shù)據(jù)交互暫存器內(nèi)的一個(gè)對(duì)應(yīng)區(qū)域,該對(duì)應(yīng)區(qū)域位于處理器間數(shù)據(jù)交互暫存器內(nèi)的處理器間數(shù)據(jù)交互存儲(chǔ)器中,同時(shí)在處理器間數(shù)據(jù)交互暫存器內(nèi)的動(dòng)態(tài)可重構(gòu)處理器11的對(duì)應(yīng)寄存器中設(shè)置訪問次數(shù)為1,該對(duì)應(yīng)的寄存器可也可稱為第一寄存器。S55 子單元3連接的處理器間數(shù)據(jù)交互裝置32不斷的判斷處理器間數(shù)據(jù)交互暫存器是否被占用,如果發(fā)現(xiàn)沒有被占用,則執(zhí)行步驟S56 ;S56 處理器間數(shù)據(jù)交互裝置32判斷第一寄存器內(nèi)的訪問次數(shù)非零,屬于有效的訪問次數(shù);S57 處理器間數(shù)據(jù)交互裝置32訪問處理器間數(shù)據(jù)交互暫存器,讀取子單元1存儲(chǔ)在對(duì)應(yīng)區(qū)域的數(shù)據(jù)。S58 處理器間數(shù)據(jù)交互裝置32將讀取到的數(shù)據(jù)寫入到子單元3的內(nèi)部數(shù)據(jù)存儲(chǔ)器16內(nèi)。S59 處理器間數(shù)據(jù)交互裝置32修改處理器間數(shù)據(jù)交互暫存器內(nèi)第一寄存器的訪問次數(shù)。處理器間數(shù)據(jù)交互裝置32將訪問次數(shù)減1,訪問次數(shù)變?yōu)榱?。通過上述的步驟,即可實(shí)現(xiàn)處理器之間的數(shù)據(jù)傳輸。同理,按照上述步驟,子單元 3的內(nèi)部數(shù)據(jù)寫出裝置也可讀取內(nèi)部數(shù)據(jù)存儲(chǔ)器17內(nèi)的數(shù)據(jù),并寫入到處理器間數(shù)據(jù)交換暫存器內(nèi),同時(shí)在處理器間數(shù)據(jù)交換暫存器內(nèi),修改動(dòng)態(tài)可重構(gòu)處理器12所對(duì)應(yīng)寄存器內(nèi)存儲(chǔ)的訪問次數(shù)。子單元1相連的處理器間數(shù)據(jù)交互裝置31讀取處理器間數(shù)據(jù)交互暫存器內(nèi)數(shù)據(jù),并寫回至內(nèi)部數(shù)據(jù)存儲(chǔ)器14內(nèi)。從而實(shí)現(xiàn)動(dòng)態(tài)可重構(gòu)處理器12的子單元3的數(shù)據(jù)傳輸至動(dòng)態(tài)可重構(gòu)處理器11的子單元1內(nèi)。上述的步驟中,各個(gè)處理器內(nèi)的子單元之間進(jìn)行數(shù)據(jù)交互的過程中,可按照預(yù)先設(shè)置的時(shí)序規(guī)則控制進(jìn)行數(shù)據(jù)交互,如按照程序的觸發(fā),控制其中的某個(gè)子單元寫出數(shù)據(jù)、 寫入數(shù)據(jù)。子單元在處理器間數(shù)據(jù)交換暫存器內(nèi)的存儲(chǔ)器和寄存器內(nèi)的尋址規(guī)則,可固化在處理器內(nèi)部,也可由外部芯片或程序控制其在指定位置尋址。本發(fā)明的數(shù)據(jù)傳輸過程,不局限于在多個(gè)處理器之間,每個(gè)處理器內(nèi)一個(gè)子單元參與數(shù)據(jù)交互,還可以是多個(gè)處理器之間,每個(gè)處理器內(nèi)的多個(gè)子單元參與數(shù)據(jù)交互。通過設(shè)置的訪問狀態(tài)和訪問次數(shù),可有效防止后續(xù)的誤讀、誤寫操作,并可保證有效的讀寫操作。提高了讀寫的有效性。本發(fā)明的實(shí)施例三還提供一種動(dòng)態(tài)可重構(gòu)處理器,參見圖5,包括內(nèi)部數(shù)據(jù)寫出裝置和處理器間數(shù)據(jù)交互裝置;所述內(nèi)部數(shù)據(jù)寫出裝置,包括寫入模塊,用于將數(shù)據(jù)寫入到其連接的存儲(chǔ)器內(nèi)各個(gè)區(qū)域中的一個(gè)對(duì)應(yīng)區(qū)域;賦值模塊,用于在所述存儲(chǔ)器內(nèi)設(shè)置所述對(duì)應(yīng)區(qū)域存儲(chǔ)的數(shù)據(jù)的訪問次數(shù);所述處理器間數(shù)據(jù)交互裝置,包括判斷模塊,用于判斷存儲(chǔ)器內(nèi)各個(gè)區(qū)域中的一個(gè)區(qū)域的訪問次數(shù)是否有效;讀取模塊,用于在所述判斷模塊判斷有效后,讀取區(qū)域內(nèi)的數(shù)據(jù)。
7
優(yōu)選地,所述處理器間數(shù)據(jù)交互裝置還包括修改模塊,用于在所述讀取模塊讀取對(duì)應(yīng)區(qū)域內(nèi)數(shù)據(jù)之后,修改該區(qū)域?qū)?yīng)的訪問次數(shù)。優(yōu)選地,所述內(nèi)部數(shù)據(jù)寫出裝置還包括寫入狀態(tài)判斷模塊,用于如果判斷所述存儲(chǔ)器處于空閑狀態(tài)、且自身最近一次設(shè)置的訪問次數(shù)處于無效狀態(tài),則觸發(fā)所述寫入模塊;所述處理器間數(shù)據(jù)交互裝置還包括讀取狀態(tài)判斷模塊,用于在所述判斷模塊執(zhí)行操作前,判斷出所述存儲(chǔ)器處于空閑狀態(tài),則觸發(fā)所述判斷模塊。優(yōu)選地,所述動(dòng)態(tài)可重構(gòu)處理器包括多個(gè)子單元,每個(gè)子單元內(nèi)包括一個(gè)所述內(nèi)部數(shù)據(jù)寫出裝置,所述多個(gè)子單元連接一個(gè)處理器間數(shù)據(jù)交互裝置。本發(fā)明的實(shí)施例還四提供一種動(dòng)態(tài)可重構(gòu)處理器之間的數(shù)據(jù)傳輸系統(tǒng),參見圖7, 包括至少兩個(gè)動(dòng)態(tài)可重構(gòu)處理器,以及所述動(dòng)態(tài)可重構(gòu)處理器連接的存儲(chǔ)器;其中,所述存儲(chǔ)器內(nèi)設(shè)置有每個(gè)動(dòng)態(tài)可重構(gòu)處理器對(duì)應(yīng)的存儲(chǔ)數(shù)據(jù)的區(qū)域、以及該區(qū)域訪問次數(shù)的寄存器;第一動(dòng)態(tài)可重構(gòu)處理器,用于將數(shù)據(jù)寫入到多個(gè)動(dòng)態(tài)可重構(gòu)處理器所連接的存儲(chǔ)器內(nèi)的對(duì)應(yīng)區(qū)域,同時(shí)在所述存儲(chǔ)器中其自身對(duì)應(yīng)的寄存器內(nèi)設(shè)置所述數(shù)據(jù)的訪問次數(shù);第二動(dòng)態(tài)可重構(gòu)處理器,用于判斷出所述訪問次數(shù)有效,讀取所述對(duì)應(yīng)區(qū)域內(nèi)數(shù)據(jù)。對(duì)于本發(fā)明各個(gè)實(shí)施例中所闡述的方法、處理器和系統(tǒng),凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種動(dòng)態(tài)可重構(gòu)處理器之間的數(shù)據(jù)傳輸方法,其特征在于,包括第一動(dòng)態(tài)可重構(gòu)處理器將數(shù)據(jù)寫入到多個(gè)動(dòng)態(tài)可重構(gòu)處理器所連接的存儲(chǔ)器內(nèi)的對(duì)應(yīng)區(qū)域,同時(shí)設(shè)置所述數(shù)據(jù)的訪問次數(shù);第二動(dòng)態(tài)可重構(gòu)處理器判斷出所述訪問次數(shù)有效,讀取所述對(duì)應(yīng)區(qū)域內(nèi)數(shù)據(jù)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述讀取對(duì)應(yīng)區(qū)域內(nèi)數(shù)據(jù)之后,還包括修改所述訪問次數(shù)。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述寫入之前,還包括如果判斷所述存儲(chǔ)器處于空閑狀態(tài)、且自身最近一次設(shè)置的訪問次數(shù)處于無效狀態(tài), 則執(zhí)行所述寫入操作。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述判斷出所述訪問次數(shù)有效之前,還包括如果判斷所述存儲(chǔ)器處于空閑狀態(tài),則執(zhí)行所述判斷訪問次數(shù)的操作。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述動(dòng)態(tài)可重構(gòu)處理器內(nèi)包括多個(gè)子單元;每個(gè)所述子單元內(nèi)的內(nèi)部數(shù)據(jù)寫出裝置執(zhí)行所述寫入操作; 所述多個(gè)子單元連接的處理器間數(shù)據(jù)交互裝置執(zhí)行所述讀取操作。
6.一種動(dòng)態(tài)可重構(gòu)處理器,其特征在于,包括內(nèi)部數(shù)據(jù)寫出裝置和處理器間數(shù)據(jù)交互裝置;所述內(nèi)部數(shù)據(jù)寫出裝置,包括寫入模塊,用于將數(shù)據(jù)寫入到其連接的存儲(chǔ)器內(nèi)各個(gè)區(qū)域中的一個(gè)對(duì)應(yīng)區(qū)域; 賦值模塊,用于在所述存儲(chǔ)器內(nèi)設(shè)置所述對(duì)應(yīng)區(qū)域存儲(chǔ)的數(shù)據(jù)的訪問次數(shù); 所述處理器間數(shù)據(jù)交互裝置,包括判斷模塊,用于判斷存儲(chǔ)器內(nèi)各個(gè)區(qū)域中的一個(gè)區(qū)域的訪問次數(shù)是否有效; 讀取模塊,用于在所述判斷模塊判斷有效后,讀取區(qū)域內(nèi)的數(shù)據(jù)。
7.根據(jù)權(quán)利要求6所述的處理器,其特征在于,所述處理器間數(shù)據(jù)交互裝置還包括 修改模塊,用于在所述讀取模塊讀取對(duì)應(yīng)區(qū)域內(nèi)數(shù)據(jù)之后,修改該區(qū)域?qū)?yīng)的訪問次數(shù)。
8.根據(jù)權(quán)利要求6所述的處理器,其特征在于,所述內(nèi)部數(shù)據(jù)寫出裝置還包括寫入狀態(tài)判斷模塊,用于如果判斷所述存儲(chǔ)器處于空閑狀態(tài)、且自身最近一次設(shè)置的訪問次數(shù)處于無效狀態(tài),則觸發(fā)所述寫入模塊; 所述處理器間數(shù)據(jù)交互裝置還包括讀取狀態(tài)判斷模塊,用于在所述判斷模塊執(zhí)行操作前,判斷出所述存儲(chǔ)器處于空閑狀態(tài),則觸發(fā)所述判斷模塊。
9.根據(jù)權(quán)利要求6所述的處理器,其特征在于,所述動(dòng)態(tài)可重構(gòu)處理器包括多個(gè)子單元,每個(gè)子單元內(nèi)包括一個(gè)所述內(nèi)部數(shù)據(jù)寫出裝置,所述多個(gè)子單元連接一個(gè)處理器間數(shù)據(jù)交互裝置。
10.一種動(dòng)態(tài)可重構(gòu)處理器之間的數(shù)據(jù)傳輸系統(tǒng),其特征在于,包括至少兩個(gè)動(dòng)態(tài)可重構(gòu)處理器,以及所述動(dòng)態(tài)可重構(gòu)處理器連接的存儲(chǔ)器;其中,所述存儲(chǔ)器內(nèi)設(shè)置有每個(gè)動(dòng)態(tài)可重構(gòu)處理器對(duì)應(yīng)的存儲(chǔ)數(shù)據(jù)的區(qū)域、以及該區(qū)域訪問次數(shù)的寄存器;第一動(dòng)態(tài)可重構(gòu)處理器,用于將數(shù)據(jù)寫入到多個(gè)動(dòng)態(tài)可重構(gòu)處理器所連接的存儲(chǔ)器內(nèi)的對(duì)應(yīng)區(qū)域,同時(shí)在所述存儲(chǔ)器中其自身對(duì)應(yīng)的寄存器內(nèi)設(shè)置所述數(shù)據(jù)的訪問次數(shù); 第二動(dòng)態(tài)可重構(gòu)處理器,用于判斷出所述訪問次數(shù)有效,讀取所述對(duì)應(yīng)區(qū)域內(nèi)數(shù)據(jù)。
全文摘要
本發(fā)明公開了一種動(dòng)態(tài)可重構(gòu)處理器之間的數(shù)據(jù)傳輸方法、處理器和系統(tǒng),方法包括第一動(dòng)態(tài)可重構(gòu)處理器將數(shù)據(jù)寫入到多個(gè)動(dòng)態(tài)可重構(gòu)處理器所連接的存儲(chǔ)器內(nèi)的對(duì)應(yīng)區(qū)域,同時(shí)設(shè)置所述數(shù)據(jù)的訪問次數(shù);第二動(dòng)態(tài)可重構(gòu)處理器判斷出所述訪問次數(shù)有效,讀取所述對(duì)應(yīng)區(qū)域內(nèi)數(shù)據(jù)。本發(fā)明還公開了一種動(dòng)態(tài)可重構(gòu)處理器、以及動(dòng)態(tài)可重構(gòu)處理器之間的數(shù)據(jù)傳輸系統(tǒng)。通過設(shè)定的訪問次數(shù),可有效實(shí)現(xiàn)處理器之間的數(shù)據(jù)傳輸。通過設(shè)置訪問次數(shù),在有效的訪問次數(shù)結(jié)束后,防止其它處理器的誤讀、誤寫。本發(fā)明的實(shí)施例還可在讀寫之前,判斷當(dāng)前的存儲(chǔ)器狀態(tài),從而避免處理器相互之間的干擾。
文檔編號(hào)G06F15/167GK102207927SQ20111014037
公開日2011年10月5日 申請日期2011年5月27日 優(yōu)先權(quán)日2011年5月27日
發(fā)明者劉雷波, 尹首一, 時(shí)龍興, 曹鵬, 朱敏, 楊軍, 王延升, 鄒于佳, 魏少軍 申請人:清華大學(xué)