欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

具有高速pe間數(shù)據(jù)再配置功能的處理器陣列系統(tǒng)的制作方法

文檔序號(hào):6454142閱讀:227來(lái)源:國(guó)知局
專利名稱:具有高速pe間數(shù)據(jù)再配置功能的處理器陣列系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及在單片上將多個(gè)處理部件(PE)相互連接的處理器陣列系統(tǒng)。
背景技術(shù)
過(guò)去,在視頻信號(hào)等圖像處理用中使用單片一維處理器陣列或結(jié)構(gòu)與 其類似的具有SIMD (Single Instruction Multiple Data)命令的介質(zhì)處理器。 例如,非專利文獻(xiàn)1提示的面向視頻圖像識(shí)別處理的一維處理器陣列中, 如圖7所示,從一端起順序地按行單位輸入圖像,然后,在鄰接的PE之 間中分配鄰接的1 幾列的圖像列之后,根據(jù)SIMD型控制,各PE通過(guò) 將從控制處理器(CP)廣播的命令應(yīng)用于自己的本地存儲(chǔ)器上的數(shù)據(jù)中, 來(lái)實(shí)現(xiàn)PE數(shù)量部分的并行處理。專利文獻(xiàn)l: JP特開(kāi)平5-34284號(hào)公報(bào)非專利文獻(xiàn)1:京昭倫著「集成128個(gè)4路VLIW型RISC鐵心的面 向車載的動(dòng)畫識(shí)別LSI」電子信息通信學(xué)會(huì)研究會(huì)報(bào)告,集成電路研究會(huì) (ICD), 2003年5月,Vol.l03, No.89, pp.19-24發(fā)明內(nèi)容一方面,在圖像處理中,特別地對(duì)圖像進(jìn)行識(shí)別處理的情況下,在最 初的階段,正像以所有像素為對(duì)象進(jìn)行的邊緣檢測(cè)處理等那樣,雖然要處 理的對(duì)象數(shù)據(jù)平等地存在于所有PE上,但大多隨著處理的推進(jìn),要處理 的對(duì)象數(shù)據(jù)在PE間會(huì)變得不均衡。例如,在大多圖像識(shí)別處理中,通過(guò)到此為止的處理,將圖像內(nèi)的幾 個(gè)(矩形)區(qū)域確定為存在識(shí)別對(duì)象物的部位時(shí),則僅這些候選區(qū)域成為 以后的處理對(duì)象。此外,例如,如圖8所示,這些候選區(qū)域大多在具有相 互重合這樣的位置關(guān)系中被找到的情形多也是特征之一。 但是,例如非專利文獻(xiàn)l所示,在以圖像列為單位進(jìn)行向PE的數(shù)據(jù) 分配的一維處理器陣列中,在區(qū)域間,存在在列方向上的位置的重合時(shí),通常擔(dān)任發(fā)生重合的圖像列的處理的PE (例如圖9 (a)的PEN-2)與不 是那樣的PE相比,與重合的次數(shù)成比例,會(huì)增加處理量,在PE間負(fù)荷成 為不均衡的狀態(tài),且處理性能下降。為了解決這樣的處理負(fù)荷不均衡,如圖9 (b)所示,就必須進(jìn)行一 模一樣地在PE間移動(dòng)多個(gè)矩形區(qū)域內(nèi)像素?cái)?shù)據(jù)的這種像素?cái)?shù)據(jù)的再配置 處理。在過(guò)去的一維處理器陣列上,為了實(shí)現(xiàn)這樣的像素?cái)?shù)據(jù)再配置處理, 如果設(shè)PE數(shù)與1行的像素?cái)?shù)相同為N時(shí),就如圖10所示,以通過(guò)CP的 方式,1個(gè)1個(gè)逐次地從PE向PE移動(dòng)N個(gè)像素成為最有效率的方法。在計(jì)數(shù)器C中設(shè)置N (步驟1000)。進(jìn)行重復(fù)直到計(jì)數(shù)器C為零。在步驟1001的判定中,計(jì)數(shù)器C不是 零的情況下,進(jìn)行以下處理,在零的情況下結(jié)束。讀出PE編號(hào)是C的PE上的K (步驟1002)。設(shè)TMP為C+K (步驟1003)。讀出PE編號(hào)是TMP的PE上的D (步驟1004)。在PE編號(hào)是C的PE上的T中寫入D (步驟1005)。將C設(shè)置為C-1 (步驟1006),返回步驟1001的判定。此情況下,如圖10的1001 1006所示,由于N次重復(fù)6個(gè)處理步 驟,所以如果加上圖10的1000,則在PE間再配置1行像素需要合計(jì)6N+1 的步驟數(shù),存在所謂效率差的課題。再有,作為此課題的一個(gè)解決方法,考慮通過(guò)在PE間連接中采用不 是1維連接,而是例如如專利文獻(xiàn)1所公開(kāi)的、稱為2維環(huán)面或超立方的、 更高維的連接方式,來(lái)減少每步驟的PE間距離的方法。但是,如果增加了連接的維數(shù),則存在所謂芯片上的布局的自由度減 少,或PE間的布線距離會(huì)變長(zhǎng)的問(wèn)題點(diǎn)。因此,本發(fā)明的主要目的在于,提供一種通過(guò)在PE間高速地再配置 像素等數(shù)據(jù)就能高效的實(shí)現(xiàn)處理的負(fù)荷分散的處理器陣列系統(tǒng)。本發(fā)明的第l側(cè)面(方面)相關(guān)的處理器陣列系統(tǒng),包括至少具有三 個(gè)包含多個(gè)(M個(gè))處理部件(以下稱為「PE」)的PE塊的PE塊陣列;
其特征在于,至少一個(gè)PE塊,通過(guò)M條的每1條都是規(guī)定位的第1信號(hào)線來(lái)連接與上述一個(gè)PE塊不同的至少一個(gè)其它的PE塊、同時(shí)還通過(guò)M 條的每1條都是規(guī)定位的第2信號(hào)線來(lái)連接與上述一個(gè)PE塊及上述其它 PE塊不同的至少一個(gè)另外的PE塊;上述一個(gè)PE塊中所含的上述PE包 括選擇電路,從上述M條第1信號(hào)線和上述M條第2信號(hào)線之中選擇 1條信號(hào)線。在本發(fā)明中,上述選擇單元包括第1選擇單元,從上述M條第1信號(hào)線中選擇一條信號(hào)線;第2選擇單元,從上述M條上述第2信號(hào)線 中選擇一條信號(hào)線;第3選擇單元,從由上述第l選擇單元選擇出的上述 1條信號(hào)線和由上述第2選擇單元選擇出的上述1條信號(hào)線中選擇一條信 號(hào)線。在本發(fā)明中,以一 PE塊為一個(gè)節(jié)點(diǎn)的一維連接或環(huán)路連接的方式連 接多個(gè)上述PE塊;上述PE塊通過(guò)上述M條的第1信號(hào)線與在上述PE 塊的一側(cè)鄰接的PE塊相互連接,同時(shí)還通過(guò)上述M條第2信號(hào)線與在上 述PE塊的另一側(cè)鄰接的PE塊相互連接。在本發(fā)明中,關(guān)于N個(gè)上述PE,在連接距離是M的PE的PE間, 有向第1傳輸方向及第2傳輸方向的各個(gè)傳輸路徑,其中N是比1大的自 然數(shù),M是比l大、比N小的自然數(shù),是N的約數(shù);M個(gè)鄰接的PE構(gòu) 成一個(gè)PE塊,根據(jù)上述PE塊內(nèi)的M個(gè)PE的向上述第1傳輸方向的傳 輸路徑構(gòu)成上述M條的第1信號(hào)線;根據(jù)上述PE塊內(nèi)的所有M個(gè)的PE 的向上述第2傳輸方向的傳輸路徑構(gòu)成上述M條第2信號(hào)線。在本發(fā)明中,以一個(gè)PE塊為一個(gè)節(jié)點(diǎn)的一維連接或環(huán)路連接的方式 連接N個(gè)上述PE塊,其中N是比1大的自然數(shù);除鄰接PE間的連接線 外,還包括在連接距離是M的各PE的PE間的向上述第1傳輸方向及上 述第2傳輸方向的各個(gè)傳輸路徑,其中M是比1大、比N小的自然數(shù), 是N的約數(shù);M個(gè)鄰接的PE構(gòu)成一個(gè)PE塊;根據(jù)上述PE塊內(nèi)的M個(gè) PE的向第1傳輸方向的傳輸路徑構(gòu)成上述M條的第1信號(hào)線;根據(jù)上述 PE塊內(nèi)的M個(gè)PE的向第2傳輸方向的傳輸路徑構(gòu)成上述M條的第2信 號(hào)線。在本發(fā)明中,上述PE塊內(nèi)的各PE,通過(guò)對(duì)上述PE塊內(nèi)的所有PE
的第1傳輸方向的連接線及第2傳輸方向的連接線,分別與處于鄰接的PE 塊內(nèi)的、距本PE距離M的PE連接。 在本發(fā)明中,上述各PE包括第1傳輸緩沖器單元(L),存儲(chǔ)連接與上述PE的距離為M的所有 PE的向上述第1傳送方向的傳送路徑(BO)的傳輸數(shù)據(jù);第2傳輸緩沖器單元(R),存儲(chǔ)連接與上述PE的距離為M的所有 PE的向上述第2傳送方向的傳送路徑(Bl)的傳輸數(shù)據(jù);第1選擇單元(LS),從上述PE塊內(nèi)的多個(gè)上述第1傳輸緩沖器單 元之中選擇一個(gè)傳輸緩沖器單元;第2選擇單元(RS),從上述PE塊內(nèi)的多個(gè)上述第2傳輸緩沖器單 元之中選擇一個(gè)傳輸緩沖器單元;寄存器單元(F),存儲(chǔ)傳送方向信息;和傳輸結(jié)果緩沖器單元(T),利用傳送路徑在所有PE間進(jìn)行距離M的 傳送時(shí),使存儲(chǔ)值的絕對(duì)值減少僅M,在存儲(chǔ)值變得比M小的時(shí)刻,根 據(jù)寄存器單元(F)的值,選擇按照上述存儲(chǔ)值控制上述第1選擇單元(LS) 及第2選擇單元(RS)得到的選擇結(jié)果的任意一個(gè),作為向PE的傳輸結(jié) 果而進(jìn)行存儲(chǔ)。在本發(fā)明中,上述各PE包括傳輸緩沖器單元(L),存儲(chǔ)連接與上述PE的距離為M的所有PE的 向第1傳送方向或第2傳送方向的傳送路徑的傳輸數(shù)據(jù);選擇單元(LS),從上述PE塊內(nèi)的多個(gè)上述第1傳輸緩沖器單元(L) 之中選擇一個(gè)傳輸緩沖器單元;和傳輸結(jié)果緩沖器單元(T),利用傳送路徑在所有PE間進(jìn)行距離M的 傳送時(shí),使存儲(chǔ)值的絕對(duì)值減少僅M,在上述存儲(chǔ)值變得比M小的時(shí)刻, 將用上述存儲(chǔ)值控制上述選擇單元(LS)得到的選擇結(jié)果作為向同PE的 傳輸結(jié)果而進(jìn)行存儲(chǔ)。在本發(fā)明中,按以下方式進(jìn)行控制在使本PE的右方向或左方向?yàn)?正,其相反為負(fù),使最終保有在本PE中再配置的數(shù)據(jù)(D)的PE的從本 PE位置看的點(diǎn)陣距離為K (但是,K也可以是-N/2^K^N/2的任意值) 的情況下,將決定像參加傳送工作這樣的各PE的工作'不工作的掩碼寄存
器(MR)設(shè)定在工作側(cè);在上述第1傳輸緩沖器單元(L)和上述第2緩沖器單元(R)中存儲(chǔ)本PE上的數(shù)據(jù)(D);點(diǎn)陣距離(K)為正的情況下,使寄存器單元(F)導(dǎo)通,在上述傳 輸結(jié)果緩沖單元(T)中存儲(chǔ)點(diǎn)陣距離(K)和在PE塊內(nèi)從左或右計(jì)數(shù)的情況下的本PE編號(hào)的相加結(jié)果;點(diǎn)陣距離(K)為負(fù)的情況下,使寄存器單元(F)截止,在上述傳 輸結(jié)果緩沖單元(T)中存儲(chǔ)點(diǎn)陣距離(K)和在PE塊內(nèi)從左或右計(jì)數(shù)的 情況下的本PE編號(hào)的相減結(jié)果。在本發(fā)明中,按以下方式進(jìn)行控制在使本PE的右方向或左方向?yàn)?正,其相反為負(fù),設(shè)最終保有在本PE中再配置的數(shù)據(jù)D的PE的從本PE 位置看的點(diǎn)陣距離為K (但是,K也可以是0^KSN-1的任意值)的情況 下,將決定像參加傳送工作這樣的各PE的工作,不工作的掩碼寄存器(MR) 設(shè)定在工作側(cè);在上述傳輸緩沖器單元(L)中存儲(chǔ)本PE上的數(shù)據(jù)(D);在上述傳輸結(jié)果緩沖單元(T)中存儲(chǔ)點(diǎn)陣距離(K)和在PE塊內(nèi)從 左或右計(jì)數(shù)的情況下的本PE編號(hào)的相加結(jié)果制。在本發(fā)明中,包括用于進(jìn)行如下方式控制的單元(控制處理器CP):在寄存器單元(F)導(dǎo)通的情況下,如果上述傳輸結(jié)果緩沖器單元的 值T是M以上,就將T-M的值存儲(chǔ)在上述傳輸結(jié)果緩沖器單元(T)中, 如果上述傳輸結(jié)果緩沖器單元(T)比M小,就利用上述第1選擇單元(LS) 選擇在PE塊內(nèi)從左計(jì)數(shù)的情況下的PE編號(hào)為T的PE的上述第1傳輸緩 沖器單元(L)的內(nèi)容,存儲(chǔ)在上述傳輸結(jié)果緩沖器單元(T)中,將掩碼 寄存器(MR)設(shè)定為不工作;在寄存器單元(F)截止的情況下,如果上述傳輸結(jié)果緩沖器單元(T) 是-M以下,就將T+M的值存儲(chǔ)在上述傳輸結(jié)果緩沖器單元(T)中,如 果T比-M大,就利用上述第2選擇單元(RS)選擇在PE塊內(nèi)從右計(jì)數(shù) 的情況下的PE編號(hào)為-T的PE的上述第2傳輸緩沖器單元(R)的內(nèi)容, 存儲(chǔ)在上述傳輸結(jié)果緩沖器單元(T)中,將掩碼寄存器(MR)設(shè)定為不 工作;此后,所有PE利用左連接線(B0)和右連接線(Bl),分別將上
述第1傳輸緩沖器單元(L)和上述第2緩沖器單元(R)的內(nèi)容向M鄰 接的左和右的PE傳送的同時(shí),掩碼寄存器(MR)是工作設(shè)定的各PE重 復(fù)進(jìn)行將分別從右M鄰接和左M鄰接的PE傳送過(guò)來(lái)的數(shù)據(jù)存儲(chǔ)在上述 第1傳輸緩沖器單元(L)和上述第2傳輸緩沖器單元(R)中的工作,直 到所有PE的掩碼寄存器MR成為不工作的設(shè)定為止。在本發(fā)明中,包括用于進(jìn)行如下控制的單元(控制處理器CP): 如果上述傳輸結(jié)果緩沖器單元(T)是M以上,就將T-M的值存儲(chǔ) 在上述傳輸結(jié)果緩沖器單元(T)中,如果T比M小,就利用第1選擇單元(LS)選擇在PE塊內(nèi)從左計(jì) 數(shù)的情況下的PE編號(hào)為T的PE的上述第1傳輸緩沖器單元(L)的內(nèi)容, 存儲(chǔ)在上述傳輸結(jié)果緩沖器單元(T)中,將掩碼寄存器(MR)設(shè)定為不 工作,此后,所有PE利用左連接線(BO),將上述第1傳輸緩沖器單元(L) 的內(nèi)容向M鄰接的左的PE傳送的同時(shí),掩碼寄存器(MR)是工作設(shè)定 的各PE還重復(fù)進(jìn)行將從右M鄰接的PE傳送過(guò)來(lái)的數(shù)據(jù)存儲(chǔ)在上述第1 傳輸緩沖器單元(L)中的工作,直到所有PE的掩碼寄存器MR成為不工 作的設(shè)定為止。根據(jù)本發(fā)明的其它側(cè)面,提供一種PE,構(gòu)成處理器陣列系統(tǒng),該處 理器陣列系統(tǒng)具有各自由M個(gè)處理部件(以下稱為「PE」)構(gòu)成的多個(gè) PE塊,包括在連接距離為M (M是比1大的自然數(shù))的所有PE的PE間 的向第l傳送方向和/或第2傳送方向的傳送路徑;其中,上述PE包括選 擇單元,從根據(jù)向上述第l和/或第2傳送方向的傳送路徑的、向上述PE 所屬的PE塊的多個(gè)傳輸數(shù)據(jù)之中選擇一個(gè)傳輸數(shù)據(jù)。本發(fā)明的PE包括第1傳輸緩沖器單元,存儲(chǔ)連接與上述PE的距離 為M的各PE的向上述第1傳輸方向的傳輸路徑的傳輸數(shù)據(jù);第2傳輸緩 沖器單元,存儲(chǔ)連接與上述PE的距離為M的各PE的向上述第2傳輸方 向的傳輸路徑的傳輸數(shù)據(jù);第1選擇器,從上述PE塊內(nèi)的M個(gè)上述第1 傳輸緩沖器單元之中選擇一個(gè);第2選擇器,從上述PE塊內(nèi)的M個(gè)上述 第2傳輸緩沖器單元之中選擇一個(gè);寄存器單元,存儲(chǔ)傳輸方向信息;以 及傳輸結(jié)果緩沖器單元,每次利用傳輸路徑在所有PE間進(jìn)行距離M的傳 輸時(shí),使存儲(chǔ)值的絕對(duì)值減少僅M,在存儲(chǔ)值變得比M更小的時(shí)刻,根
據(jù)上述寄存器單元的值,選擇按照上述存儲(chǔ)值控制上述第1選擇器及上述第2選擇器得到的選擇結(jié)果的任意一個(gè),作為向上述PE的傳輸結(jié)果而進(jìn)行存儲(chǔ)。或者,本發(fā)明的PE:包括傳輸緩沖器單元,該傳輸緩沖器單元存儲(chǔ)連接與上述PE的距離為M的各PE的向上述第1傳輸方向或第2傳 輸方向的傳輸路徑的傳輸數(shù)據(jù);上述選擇單元,從存儲(chǔ)向上述第l傳輸方 向或第2傳輸方向的傳輸路徑的傳輸數(shù)據(jù)的多個(gè)上述傳輸緩沖器單元之中 選擇一個(gè)傳輸緩沖器單元;上述PE包含傳輸結(jié)果緩沖器單元,每次利用 傳輸路徑在所有PE間進(jìn)行距離M的傳輸時(shí),該傳輸結(jié)果緩沖器單元使存 儲(chǔ)值的絕對(duì)值減少僅M,在上述存儲(chǔ)值變得比M更小的時(shí)刻,將按照上 述存儲(chǔ)值控制上述選擇單元得到的選擇結(jié)果作為向上述PE的傳輸結(jié)果而 進(jìn)行存儲(chǔ)。
本發(fā)明相關(guān)的系統(tǒng),具有各自含有多個(gè)處理部件(以下稱為「PE」)、 一維連接或環(huán)路連接的多個(gè)PE塊,上述PE,
通過(guò)向第1傳輸方向的連接線,連接與上述第1傳輸方向相關(guān)且與本 PE離開(kāi)預(yù)先設(shè)定的規(guī)定距離的其它PE塊的PE;
通過(guò)向與上述第l傳輸方向相反方向的第2傳輸方向的連接線,連接 與上述第2傳輸方向相關(guān)且與本PE離開(kāi)預(yù)先設(shè)定的規(guī)定距離的另外的PE塊的PE;
上述PE包括
第1及第2傳輸緩沖器單元,分別存儲(chǔ)向上述第1及第2傳輸方向的 連接線的傳輸數(shù)據(jù);
第1選擇單元,從本PE的上述第1傳輸緩沖器單元、和上述本PE 所屬的PE塊內(nèi)的其它的PE的上述第1傳輸緩沖器單元之中選擇一個(gè)傳輸 緩沖器單元;
第2選擇單元,從上述本PE的上述第2傳輸緩沖器單元、和上述本 PE所屬的上述PE塊內(nèi)的其它的PE的上述第2傳輸緩沖器單元之中選擇 一個(gè)傳輸緩沖器單元;以及
傳輸結(jié)果緩沖器單元,利用上述連接線,進(jìn)行在離開(kāi)上述規(guī)定距離的 PE間的傳輸工作時(shí),將存儲(chǔ)值僅更新上述規(guī)定距離的值,在上述存儲(chǔ)值 和上述規(guī)定距離的值成為預(yù)先設(shè)定的大小關(guān)系的時(shí)刻,根據(jù)傳輸方向,選
擇按照上述存儲(chǔ)值控制上述第1選擇單元及上述第2選擇單元得到的選擇 結(jié)果的任意一個(gè),將選擇結(jié)果作為向本PE的傳輸結(jié)果而進(jìn)行存儲(chǔ)。或者,上述PE,通過(guò)連接線,連接與本PE離開(kāi)預(yù)先設(shè)定的規(guī)定距離的其它PE 的塊的PE,上述PE包括傳輸緩沖器單元,存儲(chǔ)上述連接線的傳輸數(shù)據(jù);選擇單元,從本PE的上述傳輸緩沖器單元、和上述本PE所屬的PE 塊內(nèi)的其它的PE的上述傳輸緩沖器中選擇一個(gè)傳輸緩沖器;傳輸結(jié)果緩沖器單元,在利用上述連接線進(jìn)行離開(kāi)上述規(guī)定距離的PE 間的傳輸工作時(shí),將存儲(chǔ)值僅更新上述規(guī)定距離的值,在上述存儲(chǔ)值和上 述規(guī)定距離的值成為預(yù)先設(shè)定的大小關(guān)系的時(shí)刻,將根據(jù)上述存儲(chǔ)值控制 上述選擇單元得到的選擇結(jié)果作為向本PE的傳輸結(jié)果而進(jìn)行存儲(chǔ)。發(fā)明效果根據(jù)本發(fā)明,能夠高效地實(shí)現(xiàn)處理的負(fù)荷分散。其理由是因?yàn)?,在?發(fā)明中,在具有N個(gè)PE的一維處理器陣列型系統(tǒng)上,不增加PE間連接 的維數(shù),就能夠縮短在PE間相互交換1行(=N個(gè))的數(shù)據(jù)所需的步驟數(shù)。 此外,根據(jù)本發(fā)明,能夠維持布局的容易性。并且,根據(jù)本發(fā)明,能夠減 小硬件規(guī)模。


圖1是表示本發(fā)明的一維處理器陣列的概括結(jié)構(gòu)的方框圖。圖2是表示本發(fā)明的一維處理器陣列的PE塊間連接線結(jié)構(gòu)的方框圖。圖3是表示用于實(shí)施本發(fā)明的最佳方式的結(jié)構(gòu)的方框圖。圖4是表示用于實(shí)施本發(fā)明的最佳方式的工作的前半部分的流程圖。圖5是表示用于實(shí)施本發(fā)明的最佳方式的工作的后半部分的流程圖。圖6是表示用于實(shí)施本發(fā)明的最佳方式的工作的具體例的圖。圖7是表示背景技術(shù)即已有的一維處理器陣列的概括結(jié)構(gòu)的方框圖。圖8是用于說(shuō)明本發(fā)明要解決的課題的圖。圖9是用于說(shuō)明本發(fā)明要解決的課題的圖。圖IO是表示現(xiàn)有技術(shù)的情形的工作流程的圖。
圖11是表示本發(fā)明的效果之一的圖。圖12是表示用于實(shí)施本發(fā)明的第2發(fā)明的最佳方式的工作的前半部 分的流程圖。圖13是表示用于實(shí)施本發(fā)明的第2發(fā)明的最佳方式的工作的后半部 分的流程圖。符號(hào)說(shuō)明100 —維處理器陣列(PE陣列)101 PE (處理部件)102 PE塊(PE集合體)103 從右向左的PE間連接線BO (左連接線)104 從左向右的PE間連接線B1 (右連接線) 110 控制處理器CP113 命令碼301 用于存儲(chǔ)來(lái)自B0的傳輸數(shù)據(jù)的傳輸緩沖器L302 用于存儲(chǔ)來(lái)自Bl的傳輸數(shù)據(jù)的傳輸緩沖器R303 選擇單元LS304 選擇單元RS305 傳輸結(jié)果緩沖器T306 方向寄存器F307 掩碼寄存器MR308 命令譯碼器DE309 寄存器堆RF310 數(shù)據(jù)存儲(chǔ)器311 運(yùn)算器400 405、 500 511、 1000 1006、 1200 1202、 1300 1306 步具體實(shí)施方式
下面,為了更詳細(xì)地進(jìn)行說(shuō)明,參照附圖來(lái)說(shuō)明如上所述的本發(fā)明。
首先,說(shuō)明本發(fā)明的概況、工作原理。具有N個(gè)PE的一維處理器陣列型系統(tǒng),設(shè)M為在芯片開(kāi)發(fā)時(shí)的作為布局的單位的PE塊內(nèi)的PE數(shù), X為PE間的單位傳送字節(jié)數(shù)。參照?qǐng)Dl、圖3,本發(fā)明的系統(tǒng)包括(A) 按通過(guò)連接距離M的所有PE得到的PE塊單位看時(shí)的M條的 X字節(jié)寬連接線單元(左連接線)B0 (從右向左)及M條X字節(jié)寬連接 線單元(右連接線)Bl (從左向右);(B) 分別存在于PE塊內(nèi)的各PE中的、存儲(chǔ)來(lái)自B0和B1的數(shù)據(jù) 的傳輸緩沖器L及傳輸緩沖器R;(C) 從處于PE塊內(nèi)的M個(gè)L和R之中選擇1個(gè)的M輸入1輸出 選擇器LS及選擇器RS;(D) 控制PE的工作/不工作的掩碼寄存器MR;(E) 作為傳輸結(jié)果的存儲(chǔ)及計(jì)數(shù)器使用的傳輸結(jié)果緩沖器T;(F) 存儲(chǔ)傳送方向的方向寄存器F。 在上述構(gòu)成之下,假定 -設(shè)再配置對(duì)象為N個(gè)X字節(jié)數(shù)據(jù)D, -使本PE的右方向?yàn)檎?、左方向?yàn)樨?fù),-設(shè)存在預(yù)定要再配置到本PE的預(yù)定數(shù)據(jù)D的PE,從本PE的位置 看的點(diǎn)陣距離為K(其中,K可以是-N/2蕓K^N/2的任意值),貝lj 控制處理器CP對(duì)PE陣列進(jìn)行以下控制(參照?qǐng)D4)。 首先,各PE將本PE上的數(shù)據(jù)D存儲(chǔ)在傳輸緩沖器L和R中(圖4 的步驟400)。當(dāng)點(diǎn)陣距離K為正或0的情況下,將在點(diǎn)陣距離K上加上在PE塊內(nèi) 從左計(jì)數(shù)的情況下的本PE編號(hào)的結(jié)果,存儲(chǔ)在傳輸結(jié)果緩沖器T中(圖 4的402)。當(dāng)點(diǎn)陣距離K為負(fù)的情況下,將在點(diǎn)陣距離K中減去在PE塊 內(nèi)從右計(jì)數(shù)的情況下的本PE編號(hào)的結(jié)果,存儲(chǔ)在傳輸結(jié)果緩沖器T中(圖 4的403)。點(diǎn)陣距離K為O以上的情況下,在方向寄存器F中設(shè)置1 (圖 4的402),當(dāng)點(diǎn)陣距離K為負(fù)的情況下,在方向寄存器F中設(shè)置O (圖4 的403),將1存儲(chǔ)在掩碼寄存器MR中(圖4的405),如此來(lái)控制PE陣 列。
接著,控制處理器CP監(jiān)視所有PE的掩碼寄存器MR,直到所有PE 的掩碼寄存器MR全都為零為止,在每步驟中重復(fù)下述工作,如此控制 PE陣列。艮口,掩碼寄存器MR為非零的PE上,根據(jù)傳輸結(jié)果緩沖器T和方向 寄存器F的值,在方向寄存器F為1的情況下,傳輸結(jié)果緩沖器T為M以上的情況 下,將T-M的值存儲(chǔ)在傳輸結(jié)果緩沖器T中(圖5的步驟506),當(dāng)傳輸 結(jié)果緩沖器T為比M小的情況下,用選擇器LS選擇在PE塊內(nèi)從左計(jì)數(shù) 的情況下的PE編號(hào)是T的PE的傳輸緩沖器L的內(nèi)容,存儲(chǔ)在傳輸結(jié)果 緩沖器T中(圖5的步驟503),將掩碼寄存器MR設(shè)置為零(圖5的504)。在方向寄存器F為0的情況下,傳輸結(jié)果緩沖器T為-M以下的情況 下,將T+M的值存儲(chǔ)在傳輸結(jié)果緩沖器T中(圖5的步驟511),當(dāng)傳輸 結(jié)果緩沖器T為比-M大的情況下,用選擇器RS選擇在PE塊內(nèi)從右計(jì)數(shù) 的情況下的PE編號(hào)是-T的PE的傳輸緩沖器R的內(nèi)容,存儲(chǔ)在傳輸結(jié)果 緩沖器T中(圖5的步驟508),并且將掩碼寄存器MR設(shè)置為零(圖5 的509),像這樣進(jìn)行控制。再有,在傳輸結(jié)果緩沖器單元T中,當(dāng)方向 寄存器F為1時(shí)選擇由選擇器LS選擇出的輸出,當(dāng)方向寄存器F為O時(shí) 選擇由選擇器RS選擇出的輸出的功能對(duì)應(yīng)于權(quán)利要求2的第3選擇單元。此后,利用連接線B0和連接線B1,向M鄰接的左和右的PE傳送傳 輸緩沖器L和傳輸緩沖器R的內(nèi)容(圖5的步驟505、 510)的同時(shí),還 在傳輸緩沖器L和傳輸緩沖器R中分別存儲(chǔ)從右M鄰接和左M鄰接的 PE傳送過(guò)來(lái)的數(shù)據(jù),如此進(jìn)行工作。根據(jù)上述構(gòu)成及工作,在最大1+ (N+2M)步驟后,在各PE的傳輸 結(jié)果緩沖器T中存儲(chǔ)處于距本PE距離K的PE上的數(shù)據(jù)。由此,與圖IO所示的現(xiàn)有的方法相比時(shí),能夠以約12M倍的效率, 再配置處于1行內(nèi)的N個(gè)X字節(jié)數(shù)據(jù)。艮P,根據(jù)本發(fā)明,可構(gòu)成如現(xiàn)有這樣,在具有不是與鄰接PE,而與 距離M的PE連接的PE間連接線BO、連接線Bl的同時(shí),各PE還在最 大(1+ (N+2M))的步驟數(shù)間的各步驟中,在從鄰接PE塊中傳送、 一個(gè) 接一個(gè)經(jīng)過(guò)本PE塊的每一步驟,使用作為構(gòu)成要素的傳輸結(jié)果緩沖器T、
方向寄存器F、傳輸緩沖器L、傳輸緩沖器S、選擇器LS、 RS,以及掩碼 寄存器MR,以簡(jiǎn)單的工作,能夠從2M個(gè)數(shù)據(jù)之中,抽取出應(yīng)事先保持 的數(shù)據(jù)的結(jié)構(gòu)。為此,根據(jù)本發(fā)明,在具有N個(gè)PE的一維處理器陣列型系統(tǒng)上不增 加PE間連接的維數(shù),就能夠?qū)⒃赑E間相互交換1行^N個(gè))數(shù)據(jù)所需 要的步驟數(shù),從現(xiàn)有的最大(l+6N)縮短到最大(1+ (N+2M))。根據(jù)本發(fā)明能夠維持布局的容易性。即,在本發(fā)明中,由于以由M 個(gè)PE組成的PE塊為布局的單位,所以維持了連接的一維性,與多維連接 的情形相比,在芯片上的布局更容易。在本發(fā)明中,設(shè)M-V^時(shí),PE間數(shù)據(jù)傳送距離最大為約#+2,這 是與作為典型的2維連接的八方點(diǎn)陣連接同等。而且,成為每一PE中所 需的數(shù)據(jù)傳送用選擇器的規(guī)模,在八方點(diǎn)陣連接的情況下,如圖11 (a) 所示,相比于從8數(shù)據(jù)中選1個(gè)需要8個(gè)選擇器,如果根據(jù)本發(fā)明,在N 是1024 (M是32)時(shí)雖然與八方點(diǎn)陣連接相同需要8個(gè),但N比1024 更小的情況下,例如256 (M為16)時(shí),則如圖ll (b)所示,由于僅用 其大約一半4個(gè)就實(shí)現(xiàn)了,所以在實(shí)用的N值域內(nèi)能夠減小硬件規(guī)模。這是因?yàn)椋诒景l(fā)明中,由于傳送方向僅由左右2方向完成,所以有 效地將每PE的本地的選擇器與實(shí)現(xiàn)所需硬件成本低的一維連接相組合。 以下,說(shuō)明實(shí)施方式。參照?qǐng)Dl,本發(fā)明的第l實(shí)施方式,包括具有N個(gè)PE101的PE陣 列100,向PE陣列提供命令的控制處理器110。PE陣列100,包括各自含有M個(gè)(其中,M是N的約數(shù))的PE101 的N+M個(gè)PE塊102,連接鄰接的PE塊們的左連接線BO( 103從右向左), 和右連接線(104從左向右)。參照?qǐng)D2, 一個(gè)PE塊102內(nèi)的各PEIOI,與處于鄰接的PE塊102內(nèi) 的距本PE距離M (圖2中M為4)的PE連接,BO和Bl,是分別相對(duì) 于PE塊102內(nèi)的所有PE的從右向左、從左向右的連接線的集合體。參照?qǐng)D3,各PEIOI,包括傳輸緩沖器單元L (301)和R (302), 存儲(chǔ)由BO和Bl中對(duì)應(yīng)的一部分的連接線傳送過(guò)來(lái)的數(shù)據(jù);M輸入(圖3中M為8) 1輸出的選擇單元LS (303)和RS (304),
從PE塊102內(nèi)的所有PE的L和R中選擇1個(gè);傳輸結(jié)果緩沖器單元T (305),作為傳輸結(jié)果的存儲(chǔ)及計(jì)數(shù)器使用。 方向寄存器F (306),存儲(chǔ)傳送方向;和掩碼寄存器MR (307),控制PE的工作/不工作,且還可以從控制處 理器CP (110)中存取。此外,PE101,通常另外包括命令譯碼器DE(308)、寄存器堆RF(309)、 數(shù)據(jù)存儲(chǔ)器(310),以及運(yùn)算器(311)。傳輸結(jié)果緩沖器單元T (305)結(jié)構(gòu)為, 一會(huì)將其內(nèi)容傳送給寄存器 堆RF (309), 一會(huì)將其內(nèi)容向數(shù)據(jù)存儲(chǔ)器(310)寫入,或者,能夠直接 作為運(yùn)算器(311)的運(yùn)算域利用。這些單元各自按如下概括的方式工作。再有,在使本PE的右方向?yàn)?正、左方向?yàn)樨?fù)的情況下,設(shè)從存在再配置在本PE的預(yù)定的數(shù)據(jù)D的PE 的本PE的位置看的點(diǎn)陣距離為K (K可以是-N/2^K^N/2的任意值)。 此定義即便相反也無(wú)妨,下面,記述在此定義(本PE的左方向?yàn)檎?、?方向?yàn)樨?fù))之下的各單元的概括工作。設(shè)從控制處理器110中將稱為「MVSET」的命令碼113傳送過(guò)來(lái)。 當(dāng)各PEIOI自身送出的數(shù)據(jù)為D時(shí),在傳輸緩沖器單元L和R中存儲(chǔ)D, 就將所有PE的MR設(shè)置成1 。當(dāng)K為正的情況下,在方向寄存器F中存儲(chǔ)1、并且在傳輸結(jié)果緩沖 器單元T中存儲(chǔ)K和在PE塊內(nèi)從左計(jì)數(shù)的情況下的本PE編碼的相加的 結(jié)果;在K為負(fù)的情況下,在F中存儲(chǔ)O、并且在傳輸結(jié)果緩沖器單元T 中存儲(chǔ)K和在PE塊內(nèi)從右計(jì)數(shù)的情況下的本PE編碼的相減的結(jié)果。通 常,由于這些工作簡(jiǎn)單,所以能夠用一個(gè)步驟來(lái)完成。當(dāng)從控制處理器110中將稱為「MVLR」的命令碼113傳送過(guò)來(lái)時(shí), 掩碼寄存器MR為1的PE,在方向寄存器F為1的情況下,如果T為M以上,則在T內(nèi)存儲(chǔ)T-M的值;如果T比M小,則用LS選擇在PE塊內(nèi)從左計(jì)數(shù)的情況下的PE編 號(hào)為T的PE的L的內(nèi)容存儲(chǔ)在T中,并且將MR設(shè)置為零。 在方向寄存器F為O的情況下,
如果T為-M以下,則在T內(nèi)存儲(chǔ)T+M的值;如果T比-M大,則用RS選擇在PE塊內(nèi)從右計(jì)數(shù)的情況下的PE編 號(hào)為-T的PE的R的內(nèi)容存儲(chǔ)在T中,并且將MR設(shè)置為零。接著,所有PE利用BO和Bl,向M鄰接的左和右的PE傳送L和R 的內(nèi)容的同時(shí),還在L和R中,存儲(chǔ)分別從右M鄰接和左M鄰接PE傳 送過(guò)來(lái)的數(shù)據(jù)。通常,由于這些工作簡(jiǎn)單,所以能夠由l步驟來(lái)完成。另一方面,控制處理器110,直到所有PE的MR變?yōu)榱阒?,在?步驟中向PE持續(xù)發(fā)送相同命令碼「MVLR」。接著,參照?qǐng)D4及圖5的流程圖,詳細(xì)地說(shuō)明本實(shí)施方式的整體的工作。圖4是從控制處理器110傳送「MVSET」命令碼時(shí)的由各PE實(shí)施的 工作相關(guān)的流程圖。在L和R中分別設(shè)置D (步驟400)。 在所有PE的MR中設(shè)置1 (步驟405)。 判定K是否在O以上(步驟401)。在K是O以上的情況下,在方向寄存器F中設(shè)置1,并且將在K上 加上在PE塊內(nèi)從左計(jì)數(shù)的情況下的本PE編號(hào)的結(jié)果而進(jìn)行存儲(chǔ)在傳輸結(jié) 果緩沖器T中(步驟402)。在K比O小的情況下,在方向寄存器F中設(shè)置O,并且在傳輸結(jié)果緩 沖器T中,將在K上加上在PE塊內(nèi)從右計(jì)數(shù)的情況下的本PE編號(hào)的結(jié) 果而進(jìn)行存儲(chǔ)在T中(步驟403)。由于步驟400 405的工作簡(jiǎn)單,所以通常能夠由1步驟來(lái)進(jìn)行。圖5是「MVLR」命令碼相關(guān)的、由控制處理器IIO及各PE實(shí)施的 工作相關(guān)的流程圖。首先,控制處理器110調(diào)查是否存在掩碼寄存器MR是1的PE (步 驟520)。在存在這樣的PE的情況下,向PE陣列100傳送命令碼「MVLR」(步 驟500)。在PE陣列側(cè),在掩碼寄存器MR是1的PE上,判定方向寄存器F 是否是l (步驟501)。
在方向寄存器F是1的情況下,進(jìn)行步驟502 505的工作,在方向 寄存器F是O的情況下,進(jìn)行步驟507 511的工作。判定傳輸結(jié)果緩沖器T是否比M小(步驟502)。如果傳輸結(jié)果緩沖器T比M小,則用LS選擇在PE塊內(nèi)從左計(jì)數(shù)的 情況下的PE編號(hào)是T的PE上的L,存儲(chǔ)在傳輸結(jié)果緩沖器T中(步驟 503)。將掩碼寄存器MR設(shè)置為O (步驟504)。使用連接線BO,將L內(nèi)數(shù)據(jù)傳送給在左方向上離開(kāi)僅M的PE的傳 輸緩沖器L (步驟505)。T為M以上的情況下,將傳輸結(jié)果緩沖器T更新為T-M (步驟506)。 判定T是否比-M大(步驟507)。如果T比-M大,則用RS選擇在PE塊內(nèi)從右計(jì)數(shù)的情況下的PE編 號(hào)是-T的PE上的R,存儲(chǔ)在傳輸結(jié)果緩沖器T中(步驟508)。 將掩碼寄存器MR設(shè)置為O (步驟509)。使用連接線Bl,將R內(nèi)數(shù)據(jù)傳送給在右方向上離開(kāi)僅M的PE的傳 輸緩沖器R (步驟510)。T為-M以下的情況下,將傳輸結(jié)果緩沖器T更新為T+M(步驟511 )。 由于步驟501 511的工作簡(jiǎn)單,所以通常能夠由1步驟來(lái)執(zhí)行。 接著,說(shuō)明本實(shí)施方式的效果。在本實(shí)施方式中,由于以距離M在雙方向上連接所有PE,所以在PE 數(shù)為N中,從所有PE送出的N個(gè)傳輸數(shù)據(jù)D,乘上1+ (N+2M)的步驟 數(shù),能夠通過(guò)所有PE塊。此外,在本實(shí)施方式中,由于各PE還包括用于從PE塊內(nèi)的M個(gè) PE所具有的傳輸緩沖器L和R的內(nèi)容之中選擇一個(gè)的選擇器LS和RS, 及將它們作為指定在哪個(gè)計(jì)時(shí)中可利用的計(jì)時(shí)器起作用的傳輸結(jié)果緩沖 器T,所以,能夠從使用B0及B1從右向左及從左向右通過(guò)各PE塊的傳 輸數(shù)據(jù)D組之中,在規(guī)定的步驟中,選擇在計(jì)時(shí)中高效、需要的,在本 PE的T中接收。在本實(shí)施方式中,由于在利用掩碼寄存器MR,所有PE得到傳輸數(shù) 據(jù)的時(shí)刻,停止處理,所以,在更多的情況下,以比1+ (N+2M)更少的
步驟數(shù)就能夠結(jié)束所有工作。接著,參照附圖,詳細(xì)地說(shuō)明本發(fā)明的第2實(shí)施方式。參照?qǐng)Dl、圖2、圖3,本發(fā)明的第2實(shí)施方式,除在圖1和圖2中不存在右連接線B1 這點(diǎn),及在圖3中不存在傳輸緩沖器R、選擇器RS、方向寄存器F以及 右連接線B1這些點(diǎn)之外,具有與本發(fā)明的第1實(shí)施方式相同的結(jié)構(gòu)。這 些單元按如下概括的方式工作。再有,設(shè)從存在再配置在本PE的預(yù)定的 數(shù)據(jù)D的PE的本PE的位置向右方向看時(shí)的點(diǎn)陣距離為K (K可以是 0SK^N-1的任意值)。從控制處理器110將稱為「MVSET」的命令碼113傳送過(guò)來(lái)。各PE101 自己送出的數(shù)據(jù)為D。在傳輸緩沖器單元L中存儲(chǔ)D,將所有的PE的MR設(shè)置為1 ,在傳 輸結(jié)果緩沖器單元T中存儲(chǔ)K和在PE塊內(nèi)從左計(jì)數(shù)的情況下的本PE編 碼的相加的結(jié)果。通常,由于這些工作簡(jiǎn)單,所以能夠用1個(gè)步驟來(lái)完成。當(dāng)從控制處理器110將稱為「MVLR」的命令碼113傳送過(guò)來(lái)時(shí), MR為非零的PE,如果T為M以上,則在傳輸結(jié)果緩沖器T內(nèi)存儲(chǔ)T-M的值;如果T比M小,則用LS選擇在PE塊內(nèi)從左計(jì)數(shù)的情況下的PE編 號(hào)為T的PE的L的內(nèi)容,存儲(chǔ)在傳輸結(jié)果緩沖器T中,并且將掩碼寄存 器MR設(shè)置為零。接著。所有PE利用BO,向M鄰接的左的PE傳送L的內(nèi)容的同時(shí), 還在L中,存儲(chǔ)從右M鄰接PE傳送過(guò)來(lái)的數(shù)據(jù)。此外,通常由于這些工作簡(jiǎn)單,所以能夠由l個(gè)步驟來(lái)來(lái)完成。另一方面,控制處理器110,直到所有PE的MR變?yōu)榱阒?,在?步驟中向PE持續(xù)發(fā)送相同命令碼「MVSETJ。接著,參照?qǐng)D12及圖13的流程圖,詳細(xì)地說(shuō)明本發(fā)明的第2發(fā)明的 實(shí)施方式的整體的工作。圖12是用于說(shuō)明「MVSET」命令碼從控制處理器110傳送時(shí)的由各 PE執(zhí)行的工作的流程圖。在傳輸緩沖器L中分別設(shè)置D (步驟1202)。在所有PE的掩碼寄存器MR中設(shè)置1 (步驟1201)。
將在K上加上在PE塊內(nèi)從左計(jì)數(shù)的情況下的本PE編號(hào)的結(jié)果存儲(chǔ) 在傳輸結(jié)果緩沖器T中(步驟1200)。由于步驟1200 1202的工作簡(jiǎn)單,所以通常能夠由1步驟來(lái)進(jìn)行。圖13是用于說(shuō)明「MVLR」命令碼相關(guān)的、由控制處理器110及各 PE實(shí)施的工作的流程圖。首先,控制處理器110調(diào)查是否存在MR是1的PE (1301),在存在 這樣的PE的情況下,向PE陣列IOO傳送命令碼「MVLR」(步驟1300)。在PE陣列側(cè),在MR是1的PE上,判定傳輸結(jié)果緩沖器T是否比 M小(步驟1302)。如果傳輸結(jié)果緩沖器T比M小,則用選擇器LS選擇在PE塊內(nèi)從左 計(jì)數(shù)的情況下的PE編號(hào)是T的PE上的L,存儲(chǔ)在傳輸結(jié)果緩沖器T中 (步驟1303)。將MR設(shè)置為O (步驟1304),此后,使用連接線BO,將L內(nèi)數(shù)據(jù)傳 送給在左方向上離開(kāi)僅M的PE的傳輸緩沖器L (步驟1305)。T為M以上的情況下,將傳輸結(jié)果緩沖器T更新為T-M(步驟1306)。 此外,由于步驟1302 1306的工作簡(jiǎn)單,所以通常能夠由l個(gè)步驟來(lái)進(jìn)行。接著,說(shuō)明本發(fā)明的第2實(shí)施方式的效果。在本實(shí)施方式中,由于以距離M連接所有PE,所以在PE數(shù)為N中, 從所有PE送出的N個(gè)傳輸數(shù)據(jù)D,乘上1+(N+M)的步驟數(shù),能夠通過(guò) 所有PE塊。此外,在本實(shí)施方式中,由于各PE還包括將用于從PE塊內(nèi)的M 個(gè)PE所具有的傳輸緩沖器L的內(nèi)容之中選擇一個(gè)的選擇器LS和RS作為 指定在哪個(gè)計(jì)時(shí)中可利用的計(jì)時(shí)器起作用的傳輸結(jié)果緩沖器T,所以,能 夠從使用BO從右向左通過(guò)各PE塊的傳輸數(shù)據(jù)D組之中,在規(guī)定的步驟 中,選擇在計(jì)時(shí)中高效、需要的,在本PE的T中接收。在本實(shí)施方式中,由于利用掩碼寄存器MR,在所有PE得到傳輸數(shù) 據(jù)的時(shí)刻停止處理,所以,在更多的情況下,以比1+ (N+M)更少的步 驟數(shù)就能夠結(jié)束所有工作。本發(fā)明的第2實(shí)施方式,與上述第l實(shí)施方式相比,雖然在PE間再
配置1行的N個(gè)像素所需的步驟數(shù)增加到2倍左右,但由于構(gòu)成要素進(jìn)一 步減少,所以存在所謂硬件規(guī)模的增加進(jìn)一步減少的效果。實(shí)施例接著,按具體的實(shí)施例進(jìn)行說(shuō)明。圖6是用于具體地說(shuō)明上述的本發(fā) 明的工作圖。在圖6 (a)中,各列中,表現(xiàn)出在1個(gè)PE上的設(shè)定,設(shè)N為16、 M為4。此外,為了簡(jiǎn)單,在各PE將本PE編號(hào)作為送出數(shù)據(jù)D,將任意 的-8 7的值作為向傳送源PE的距離指K設(shè)定的情況下,示出在發(fā)行 MVSET命令之后的、按圖4的流程圖,使用K和在塊內(nèi)的從右及從左的 PE編號(hào),設(shè)定F、 T、 L、 R、 MR的值的結(jié)果。在此,可知通過(guò)將各列的網(wǎng)格欄的內(nèi)容在K為負(fù)的情況下與屬于通 列的K相加,在K為正的情況下與屬于同列的K相減,求出圖6 (a)的 T欄。例如,通過(guò)K=-3和塊內(nèi)從右起的PE#=3的相減求出第1列的T=-6, 通過(guò)K=2和塊內(nèi)從左起的PE#=2的相加求出第3列的T=4。圖6 (b)至圖6 (d),以與圖6 (a)對(duì)應(yīng)的表的方式分別示出進(jìn)行 MVLR命令1次 第3次反復(fù)后的狀態(tài)(其中,L和R顯示更新前的值)。在圖6 (b)至圖6 (d)中,根據(jù)圖5的流程圖,通過(guò)使T的絕對(duì)值 低于M,傳輸緩沖器L或R的值,關(guān)于向傳輸結(jié)果緩沖器T存儲(chǔ)的PE, 在該T欄及MR欄中施加網(wǎng)格線,進(jìn)行顯示?;趫D6可知,位于由K指定的距離的PE上的D的值,在重復(fù)3 次(=1+16 (4x2))圖5的流程圖所示的工作后,被存儲(chǔ)在傳輸結(jié)果緩沖 器T中(參照?qǐng)D6 (d)的T欄)。圖6 (e)用箭頭線表示在圖6 (b)至圖6 (d)之間進(jìn)行的PE間數(shù) 據(jù)移動(dòng)的狀態(tài)(距離和方向)。根據(jù)本發(fā)明,通過(guò)可高速地在PE間再配置數(shù)據(jù)的一維處理器陣列的 提供,就能夠應(yīng)用于提高在PE間使處理負(fù)荷分散的一維處理器陣列的性 能的用途中。此外,不僅是處理負(fù)荷的分散,還能應(yīng)用于在一維處理器陣 列的各PE中測(cè)繪的圖像的放大、縮小、變形這樣的用途中。在上文中, 雖然按上述實(shí)施例說(shuō)明了本發(fā)明,但本發(fā)明不是僅限于上述實(shí)施例的結(jié)
構(gòu),在本發(fā)明的范圍內(nèi),毫無(wú)疑問(wèn),本領(lǐng)域普通技術(shù)人員應(yīng)當(dāng)理解,本發(fā) 明應(yīng)包含沒(méi)有展示的各種變形、修正。
權(quán)利要求
1、一種處理器陣列系統(tǒng),包括至少具有三個(gè)處理部件塊的處理部件塊陣列,以下將處理部件稱為PE,該P(yáng)E塊包含多個(gè)即M個(gè)PE;其特征在于,至少一個(gè)PE塊,通過(guò)M條的每1條都是規(guī)定位的第1信號(hào)線來(lái)連接與上述一個(gè)PE塊不同的至少一個(gè)其它的PE塊、同時(shí)還通過(guò)M條的每1條都是規(guī)定位的第2信號(hào)線來(lái)連接與上述一個(gè)PE塊及上述其它PE塊不同的至少一個(gè)另外的PE塊;上述一個(gè)PE塊中所含的上述PE包括選擇電路,從上述M條第1信號(hào)線和上述M條第2信號(hào)線之中選擇1條信號(hào)線。
2、 根據(jù)權(quán)利要求l所述的處理器陣列系統(tǒng),其特征在于, 上述選擇電路,包括第1選擇單元,從上述M條第1信號(hào)線中選擇一條信號(hào)線; 第2選擇單元,從上述M條上述第2信號(hào)線中選擇一條信號(hào)線; 第3選擇單元,從由上述第1選擇單元選擇出的上述1條信號(hào)線和由 上述第2選擇單元選擇出的上述1條信號(hào)線中選擇一條信號(hào)線。
3、 根據(jù)權(quán)利要求1所述的處理器陣列系統(tǒng),其特征在于, 以一PE塊為一個(gè)節(jié)點(diǎn)的一維連接或環(huán)路連接的方式連接多個(gè)上述PE塊;上述PE塊通過(guò)上述M條的第1信號(hào)線與在上述PE塊的一側(cè)鄰接的 PE塊相互連接,同時(shí)還通過(guò)上述M條第2信號(hào)線與在上述PE塊的另一 側(cè)鄰接的PE塊相互連接。
4、 根據(jù)權(quán)利要求1所述的處理器陣列系統(tǒng),其特征在于, 關(guān)于N個(gè)上述PE,在連接距離是M的PE的PE間,具有向第l傳輸方向及第2傳輸方向的各個(gè)傳輸路徑,其中N是比1大的自然數(shù),M是 比1大、比N小的自然數(shù),是N的約數(shù);M個(gè)鄰接的PE構(gòu)成一個(gè)PE塊,根據(jù)上述PE塊內(nèi)的M個(gè)PE的向上 述第1傳輸方向的傳輸路徑構(gòu)成上述M條的第1信號(hào)線;根據(jù)上述PE塊內(nèi)的所有M個(gè)的PE的向上述第2傳輸方向的傳輸路 徑構(gòu)成上述M條第2信號(hào)線。
5、 根據(jù)權(quán)利要求4所述的處理器陣列系統(tǒng),其特征在于,以一個(gè)PE塊為一個(gè)節(jié)點(diǎn)的一維連接或環(huán)路連接的方式連接N個(gè)上述 PE塊,其中N是比1大的自然數(shù);除鄰接PE間的連接線外,還包括在連接距離是M的各PE的PE間 的向上述第1傳輸方向及上述第2傳輸方向的各個(gè)傳輸路徑,其中M是 比1大、比N小的自然數(shù),是N的約數(shù);M個(gè)鄰接的PE構(gòu)成一個(gè)PE塊;根據(jù)上述PE塊內(nèi)的M個(gè)PE的向第1傳輸方向的傳輸路徑構(gòu)成上述 M條的第l信號(hào)線;根據(jù)上述PE塊內(nèi)的M個(gè)PE的向第2傳輸方向的傳輸路徑構(gòu)成上述 M條的第2信號(hào)線。
6、 根據(jù)權(quán)利要求3所述的處理器陣列系統(tǒng),其特征在于,上述PE塊內(nèi)的各PE,通過(guò)對(duì)上述PE塊內(nèi)的所有PE的第1傳輸方 向的連接線及第2傳輸方向的連接線,分別與處于鄰接的PE塊內(nèi)的、距 本PE距離M的PE連接。
7、 根據(jù)權(quán)利要求4、 5、 6任意一項(xiàng)所述的處理器陣列系統(tǒng),其特征 在于,上述各PE包括第1傳輸緩沖器單元,存儲(chǔ)將與上述PE的距離為M的各PE連接起 來(lái)的向上述第1傳輸方向的傳輸路徑的傳輸數(shù)據(jù);第2傳輸緩沖器單元,存儲(chǔ)將與上述PE的距離為M的各PE連接起來(lái)的向上述第2傳輸方向的傳輸路徑的傳輸數(shù)據(jù);第1選擇單元,從上述PE塊內(nèi)的多個(gè)上述第1傳輸緩沖器單元之中 選擇一個(gè)傳輸緩沖器單元;第2選擇單元,從上述PE塊內(nèi)的多個(gè)上述第2傳輸緩沖器單元之中 選擇一個(gè)傳輸緩沖器單元;寄存器單元,存儲(chǔ)傳輸方向信息;以及傳輸結(jié)果緩沖器單元,每次利用傳輸路徑在所有PE間進(jìn)行距離M的傳輸時(shí),使存儲(chǔ)值的絕對(duì)值減少僅M,在存儲(chǔ)值變得比M更小的時(shí)刻, 根據(jù)上述寄存器單元的值,選擇按照上述存儲(chǔ)值控制上述第1選擇單元及 上述第2選擇單元得到的選擇結(jié)果的任意一個(gè),作為向上述PE的傳輸結(jié) 果而進(jìn)行存儲(chǔ)。
8、 根據(jù)權(quán)利要求4、 5、 6任意一項(xiàng)所述的處理器陣列系統(tǒng),其特征 在于,上述各PE包括傳輸緩沖器單元,存儲(chǔ)將與上述PE的距離為M的各PE連接起來(lái)的 向上述第1傳輸方向或第2傳輸方向的傳輸路徑的傳輸數(shù)據(jù);選擇單元,從上述PE塊內(nèi)的多個(gè)上述傳輸緩沖器單元之中選擇一個(gè);以及傳輸結(jié)果緩沖器單元,每次利用傳輸路徑在所有PE間進(jìn)行距離M的 傳輸時(shí),使存儲(chǔ)值的絕對(duì)值減少僅M,在上述存儲(chǔ)值變得比M更小的時(shí) 刻,將用上述存儲(chǔ)值控制上述選擇單元得到的選擇結(jié)果作為向上述PE的 傳輸結(jié)果而進(jìn)行存儲(chǔ)。
9、 根據(jù)權(quán)利要求7所述的處理器陣列系統(tǒng),其特征在于, 作為傳輸方向,使本PE的上述第1傳輸方向或上述第2傳輸方向的一個(gè)傳輸方向?yàn)檎硪粋€(gè)傳輸方向?yàn)樨?fù);當(dāng)最終保有在本PE中再配置的數(shù)據(jù)D的PE的從本PE位置看的點(diǎn)陣 距離為K的情況下,將決定各PE的工作/不工作的掩碼寄存器設(shè)定在工作 側(cè),以參加傳輸工作,其中K可以是-N/2^K^N/2的任意值;在上述第1傳輸緩沖器單元和上述第2緩沖器單元中存儲(chǔ)本PE上的 數(shù)據(jù);在上述點(diǎn)陣距離為正的情況下, 使上述寄存器單元導(dǎo)通,在上述傳輸結(jié)果緩沖單元中存儲(chǔ)上述點(diǎn)陣距離與在PE塊內(nèi)從上述第 1或上述第2傳輸方向側(cè)數(shù)的情況下的本PE編號(hào)的相加結(jié)果; 在上述點(diǎn)陣距離為負(fù)的情況下, 使上述寄存器單元截止,在上述傳輸結(jié)果緩沖單元中存儲(chǔ)上述點(diǎn)陣距離與在PE塊內(nèi)從上述第1或上述第2傳輸方向側(cè)數(shù)的情況下的本PE編號(hào)的相減結(jié)果。
10、 根據(jù)權(quán)利要求8所述的處理器陣列系統(tǒng),其特征在于, 作為傳輸方向,使本PE的上述第l傳輸方向或上述第2傳輸方向的一個(gè)傳輸方向?yàn)檎?,另一個(gè)傳輸方向?yàn)樨?fù);當(dāng)最終保有在本PE中再配置 的數(shù)據(jù)的PE的從本PE位置看的點(diǎn)陣距離為K的情況下,將決定各PE的 工作/不工作的掩碼寄存器設(shè)定在工作側(cè),以參加傳輸工作,其中K可以 是0^K^N-1的任意值;在上述傳輸緩沖器單元中存儲(chǔ)本PE上的數(shù)據(jù);在上述傳輸結(jié)果緩沖單元中存儲(chǔ)上述點(diǎn)陣距離與在PE塊內(nèi)從上述第 1或上述第2傳輸方向側(cè)數(shù)的情況下的本PE編號(hào)的相加結(jié)果。
11、 根據(jù)權(quán)利要求7所述的處理器陣列系統(tǒng),其特征在于, 包括用于進(jìn)行如下控制的單元, 在上述寄存器單元導(dǎo)通的情況下, 當(dāng)上述傳輸結(jié)果緩沖器單元的值T是M以上時(shí),將T-M的值存儲(chǔ)在上述傳輸結(jié)果緩沖器單元中,當(dāng)上述傳輸結(jié)果緩沖器單元的值T比M更小時(shí),利用上述第1選擇 單元選擇在PE塊內(nèi)從上述第2傳輸方向的一側(cè)數(shù)的情況下的PE編號(hào)為T 的PE的上述第1及第2傳輸緩沖器單元的內(nèi)容,存儲(chǔ)在上述傳輸結(jié)果緩 沖器單元中,將上述掩碼寄存器設(shè)定為不工作;在上述寄存器單元截止的情況下,當(dāng)上述傳輸結(jié)果緩沖器單元的值T是-M以下時(shí),將T+M的值存儲(chǔ)在 上述傳輸結(jié)果緩沖器單元中,當(dāng)T比-M大時(shí),利用上述第2選擇單元選擇在PE塊內(nèi)從上述第1 及第2傳輸方向中的一側(cè)數(shù)的情況下的PE編號(hào)為-T的PE的上述第2傳 輸緩沖器單元的內(nèi)容,存儲(chǔ)在上述傳輸結(jié)果緩沖器單元中,將上述掩碼寄 存器設(shè)定為不工作;所有PE利用上述第1傳輸方向的連接線和上述第2傳輸方向的連接 線,分別將上述第1傳輸緩沖器單元和上述第2傳輸緩沖器單元的內(nèi)容向 M鄰接的上述第1及第2傳輸方向的PE傳輸?shù)耐瑫r(shí),上述掩碼寄存器是 工作設(shè)定的各PE重復(fù)進(jìn)行將分別從在上述第1傳輸方向M鄰接PE和在 上述第2傳輸方向M鄰接的PE傳輸過(guò)來(lái)的數(shù)據(jù)分別存儲(chǔ)到上述第1傳輸 緩沖器單元和上述第2緩沖器單元中的工作,直到所有PE的掩碼寄存器 成為不工作的設(shè)定為止。
12、 根據(jù)權(quán)利要求8所述的處理器陣列系統(tǒng),其特征在于, 包括用于進(jìn)行如下控制的單元,在上述傳輸結(jié)果緩沖器單元的值T是M以上的情況下,將T-M的值 存儲(chǔ)在上述傳輸結(jié)果緩沖器單元中,在T比M更小的情況下,利用上述第1選擇單元選擇在PE塊內(nèi)從上 述第1及第2傳輸方向中的一側(cè)數(shù)的情況下的PE編號(hào)為T的PE的上述 第l傳輸緩沖器單元的內(nèi)容,存儲(chǔ)在上述傳輸結(jié)果緩沖器單元中,將上述 掩碼寄存器設(shè)定為不工作;所有PE利用上述第1傳輸方向的連接線,將上述第1傳輸緩沖器單 元的內(nèi)容向上述第l傳輸方向的M鄰接PE傳輸?shù)耐瑫r(shí),上述掩碼寄存器 是工作設(shè)定的各PE重復(fù)進(jìn)行將從上述第2傳輸方向的M鄰接的PE傳輸 過(guò)來(lái)的數(shù)據(jù)存儲(chǔ)到上述第1傳輸緩沖器單元中的工作,直到所有PE的上 述掩碼寄存器成為不工作的設(shè)定為止。
13、 一種處理部件,以下將該處理部件稱為PE,構(gòu)成處理器陣列系 統(tǒng),該處理器陣列系統(tǒng)具有分別由M個(gè)PE構(gòu)成的多個(gè)PE塊,包括在連 接距離為M的各PE的PE間的向第1傳輸方向和/或第2傳輸方向的傳輸 路徑,其中M是比1大的自然數(shù),其特征在于,上述PE包括選擇單元,從根據(jù)向上述第1傳輸方向和/或上述第2傳輸方向的傳輸 路徑的、向上述PE所屬的PE塊的多個(gè)傳輸數(shù)據(jù)之中選擇一個(gè)傳輸數(shù)據(jù)。
14、 根據(jù)權(quán)利要求13所述的PE,其特征在于,包括第1傳輸緩沖器單元,存儲(chǔ)連接與上述PE的距離為M的各PE的向 上述第1傳輸方向的傳輸路徑的傳輸數(shù)據(jù);第2傳輸緩沖器單元,存儲(chǔ)連接與上述PE的距離為M的各PE的向 上述第2傳輸方向的傳輸路徑的傳輸數(shù)據(jù);第1選擇器,從上述PE塊內(nèi)的M個(gè)上述第1傳輸緩沖器單元之中選擇一個(gè);第2選擇器,從上述PE塊內(nèi)的M個(gè)上述第2傳輸緩沖器單元之中選 擇一個(gè);寄存器單元,存儲(chǔ)傳輸方向信息;以及傳輸結(jié)果緩沖器單元,每次利用傳輸路徑在所有PE間進(jìn)行距離M的 傳輸時(shí),使存儲(chǔ)值的絕對(duì)值減少僅M,在存儲(chǔ)值變得比M更小的時(shí)刻, 根據(jù)上述寄存器單元的值,選擇按照上述存儲(chǔ)值控制上述第1選擇器及上 述第2選擇器得到的選擇結(jié)果的任意一個(gè),作為向上述PE的傳輸結(jié)果而 進(jìn)行存儲(chǔ)。
15、 根據(jù)權(quán)利要求13所述的PE,其特征在于,包括傳輸緩沖器單元,該傳輸緩沖器單元存儲(chǔ)連接與上述PE的距離 為M的各PE的向上述第1傳輸方向或第2傳輸方向的傳輸路徑的傳輸數(shù) 據(jù);上述選擇單元,從存儲(chǔ)向上述第1傳輸方向或第2傳輸方向的傳輸路 徑的傳輸數(shù)據(jù)的多個(gè)上述傳輸緩沖器單元之中選擇一個(gè)傳輸緩沖器單元;上述PE包含傳輸結(jié)果緩沖器單元,每次利用傳輸路徑在所有PE間進(jìn) 行距離M的傳輸時(shí),該傳輸結(jié)果緩沖器單元使存儲(chǔ)值的絕對(duì)值減少僅M, 在上述存儲(chǔ)值變得比M更小的時(shí)刻,將按照上述存儲(chǔ)值控制上述選擇單 元得到的選擇結(jié)果作為向上述PE的傳輸結(jié)果而進(jìn)行存儲(chǔ)。
16、 一種處理器陣列系統(tǒng),具有各自包含多個(gè)處理部件且一維連接或 環(huán)路連接的多個(gè)處理部件塊,以下將處理部件稱為PE,其特征在于,上述PE,通過(guò)向第1傳輸方向的連接線,連接與上述第1傳輸方向相關(guān)且與本 PE離開(kāi)預(yù)先設(shè)定的規(guī)定距離的其它PE塊的PE;通過(guò)向與上述第1傳輸方向相反方向的第2傳輸方向的連接線,連接 與上述第2傳輸方向相關(guān)且與本PE離開(kāi)預(yù)先設(shè)定的規(guī)定距離的另外的PE 塊的PE;上述PE包括第l及第2傳輸緩沖器單元,分別存儲(chǔ)向上述第1及第2傳輸方向的 連接線的傳輸數(shù)據(jù);第1選擇單元,從本PE的上述第1傳輸緩沖器單元、和上述本PE 所屬的PE塊內(nèi)的其它的PE的上述第1傳輸緩沖器單元之中選擇一個(gè)傳輸 緩沖器單元;第2選擇單元,從上述本PE的上述第2傳輸緩沖器單元、和上述本 PE所屬的上述PE塊內(nèi)的其它的PE的上述第2傳輸緩沖器單元之中選擇 一個(gè)傳輸緩沖器單元;以及傳輸結(jié)果緩沖器單元,利用上述連接線,進(jìn)行在離開(kāi)上述規(guī)定距離的 PE間的傳輸工作時(shí),將存儲(chǔ)值僅更新上述規(guī)定距離的值,在上述存儲(chǔ)值 和上述規(guī)定距離的值成為預(yù)先設(shè)定的大小關(guān)系的時(shí)刻,根據(jù)傳輸方向,選 擇按照上述存儲(chǔ)值控制上述第1選擇單元及上述第2選擇單元得到的選擇 結(jié)果的任意一個(gè),將選擇結(jié)果作為向本PE的傳輸結(jié)果而進(jìn)行存儲(chǔ)。
17、 一種處理器陣列系統(tǒng),具有各自包含多個(gè)處理部件且一維連接或 環(huán)路連接的多個(gè)處理部件塊,以下將處理部件稱為PE,其特征在于,上述PE,通過(guò)連接線,連接與本PE離開(kāi)預(yù)先設(shè)定的規(guī)定距離的其它 PE的塊的PE,上述PE包括傳輸緩沖器單元,存儲(chǔ)上述連接線的傳輸數(shù)據(jù);選擇單元,從本PE的上述傳輸緩沖器單元、和上述本PE所屬的PE 塊內(nèi)的其它的PE的上述傳輸緩沖器中選擇一個(gè)傳輸緩沖器;傳輸結(jié)果緩沖器單元,在利用上述連接線進(jìn)行離開(kāi)上述規(guī)定距離的PE 間的傳輸工作時(shí),將存儲(chǔ)值僅更新上述規(guī)定距離的值,在上述存儲(chǔ)值和上 述規(guī)定距離的值成為預(yù)先設(shè)定的大小關(guān)系的時(shí)刻,將根據(jù)上述存儲(chǔ)值控制 上述選擇單元得到的選擇結(jié)果作為向本PE的傳輸結(jié)果而進(jìn)行存儲(chǔ)。
全文摘要
一種處理器陣列系統(tǒng),包括至少具有三個(gè)處理部件(PE)塊的PE塊陣列,該P(yáng)E塊包含M個(gè)PE,各PE塊通過(guò)M條左連接線BO與其它的PE塊連接,同時(shí)還通過(guò)M條右連接線B1與另外的PE塊連接;上述PE塊中所含有的上述PE包括選擇電路(LS),從連接距離M的各PE的1條上述左連接線B0和來(lái)自PE塊內(nèi)的其它PE的連接線之中選擇1條信號(hào)線;選擇電路(RS),從連接距離M的各PE的1條上述右連接線(B1)和來(lái)自PE塊內(nèi)的其它PE的連接線之中選擇1條信號(hào)線;和用于從選擇電路(LS)和選擇電路(RS)的輸出中選擇1條信號(hào)線的單元;上述處理器陣列系統(tǒng),進(jìn)行如下這樣工作,依據(jù)來(lái)自控制處理器的命令碼,所有PE使用左連接線BO和右連接線B1,向M鄰接的左和右的PE傳輸數(shù)據(jù),同時(shí)在傳輸緩沖器中存儲(chǔ)分別從右M連接和左M連接傳送過(guò)來(lái)的數(shù)據(jù)。
文檔編號(hào)G06F15/80GK101401088SQ20078000766
公開(kāi)日2009年4月1日 申請(qǐng)日期2007年2月27日 優(yōu)先權(quán)日2006年3月3日
發(fā)明者京昭倫 申請(qǐng)人:日本電氣株式會(huì)社
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
江城| 南平市| 滦南县| 临沂市| 金乡县| 南澳县| 乐平市| 南皮县| 儋州市| 瑞安市| 黔东| 修水县| 辉县市| 榆林市| 新竹市| 昌吉市| 台湾省| 来宾市| 怀来县| 福海县| 西充县| 桓台县| 涿鹿县| 古蔺县| 高密市| 屏山县| 扶沟县| 新晃| 磐石市| 合川市| 安乡县| 桑日县| 佛教| 凤山市| 元谋县| 汶上县| 阳春市| 临海市| 鲁甸县| 通州区| 无锡市|