本發(fā)明涉及芯片設(shè)計(jì)中矢量處理器相關(guān)技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)重排方法及裝置。
背景技術(shù):
Benes網(wǎng)絡(luò)是一種重排無(wú)阻塞網(wǎng)絡(luò),在數(shù)據(jù)重排方面有著較好的應(yīng)用。N-N Benes網(wǎng)絡(luò)有N個(gè)輸入數(shù)據(jù)及N個(gè)輸出數(shù)據(jù),共有2log2N-1級(jí),每級(jí)包含N/2個(gè)開關(guān)電路,每個(gè)開關(guān)電路為2輸入2輸出,且每個(gè)開關(guān)電路包含兩個(gè)2-1選擇器,如圖1所示為N=8的8-8Benes網(wǎng)絡(luò)示意圖;圖1中每個(gè)矩形塊代表一個(gè)開關(guān)電路,所述開關(guān)電路的內(nèi)部電路如圖2所示。
現(xiàn)有的Benes網(wǎng)絡(luò)相對(duì)于通常的交叉開關(guān)矩陣cross bar節(jié)省了較多電路資源,然而仍需要較多電路資源,實(shí)現(xiàn)較復(fù)雜,因此,提供一種數(shù)據(jù)重排方案,能夠減少N-N Benes網(wǎng)絡(luò)的電路資源、降低實(shí)現(xiàn)成本,已成為亟待解決的問(wèn)題。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本發(fā)明實(shí)施例期望提供一種數(shù)據(jù)重排方法及裝置,能夠減少N-N Benes網(wǎng)絡(luò)的電路資源、降低成本,且實(shí)現(xiàn)簡(jiǎn)單、可靠性高。
為達(dá)到上述目的,本發(fā)明實(shí)施例的技術(shù)方案是這樣實(shí)現(xiàn)的:
本發(fā)明實(shí)施例提供了一種數(shù)據(jù)重排方法,所述方法包括:
確定當(dāng)前N-N Benes網(wǎng)絡(luò)中的N/4個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò);
依據(jù)預(yù)設(shè)的數(shù)據(jù)重排規(guī)則確定每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)的序號(hào);
依據(jù)4-4數(shù)據(jù)重排網(wǎng)絡(luò)中開關(guān)電路的輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)確定所述開關(guān)電路的數(shù)據(jù)輸出方式,并按照當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中每個(gè)開關(guān)電路對(duì)應(yīng)的數(shù)據(jù) 輸出方式將當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)輸出;其中,N為2的n次冪,n為大于1的正整數(shù)。
上述方案中,所述確定當(dāng)前N-N Benes網(wǎng)絡(luò)中的N/4個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)包括:
確定當(dāng)前N-N Benes網(wǎng)絡(luò)的第(m-1)/2級(jí)、第(m+1)/2級(jí)及第(m+3)/2級(jí)分別作為4-4數(shù)據(jù)重排網(wǎng)絡(luò)的第1級(jí)、第2級(jí)及第3級(jí)的N/4個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò);其中,所述m為當(dāng)前N-N Benes網(wǎng)絡(luò)的級(jí)數(shù),m=2log2N-1。
上述方案中,確定當(dāng)前N-N Benes網(wǎng)絡(luò)中的N/4個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)之后,所述方法還包括:
獲取每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)及輸出數(shù)據(jù)。
上述方案中,所述依據(jù)預(yù)設(shè)的數(shù)據(jù)重排規(guī)則確定每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)的序號(hào)包括:
依據(jù)降序或升序?qū)γ總€(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸出數(shù)據(jù)進(jìn)行排序,并依據(jù)每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸出數(shù)據(jù)的序號(hào)確定對(duì)應(yīng)的4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)的序號(hào)。
上述方案中,所述依據(jù)4-4數(shù)據(jù)重排網(wǎng)絡(luò)中開關(guān)電路的輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)確定所述開關(guān)電路的數(shù)據(jù)輸出方式包括:
比較當(dāng)前開關(guān)電路中第二輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)與第一輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)的大小,依據(jù)比較結(jié)果確定所述開關(guān)電路的數(shù)據(jù)輸出方式為交叉輸出或直通輸出。
上述方案中,所述按照當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中每個(gè)開關(guān)電路對(duì)應(yīng)的數(shù)據(jù)輸出方式將當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)輸出,包括:
按照當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中每個(gè)開關(guān)電路對(duì)應(yīng)的數(shù)據(jù)輸出方式,將當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中第一開關(guān)電路的第一輸出數(shù)據(jù)及第二開關(guān)電路的第一輸出數(shù)據(jù)分別作為第三開關(guān)電路的第一輸入數(shù)據(jù)及第二輸入數(shù)據(jù),將第一開關(guān)電路的第二輸出數(shù)據(jù)及第二開關(guān)電路的第二輸出數(shù)據(jù)分別作為第四開關(guān)電路的第一輸入數(shù)據(jù)及第二輸入數(shù)據(jù),輸出第三開關(guān)電路的第一輸出數(shù)據(jù)及第四開關(guān)電路 的第二數(shù)據(jù),并將第三開關(guān)電路的第二輸出數(shù)據(jù)及第四開關(guān)電路的第一輸出數(shù)據(jù)分別作為第五開關(guān)電路的第一輸入數(shù)據(jù)及第二輸入數(shù)據(jù),輸出第五開關(guān)電路的第一輸出數(shù)據(jù)及第二輸出數(shù)據(jù)。
本發(fā)明實(shí)施例還提供了一種數(shù)據(jù)重排裝置,所述裝置包括:確定模塊、排序模塊及處理模塊;其中,
所述確定模塊,用于確定當(dāng)前N-N Benes網(wǎng)絡(luò)中的N/4個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò);
所述排序模塊,用于依據(jù)預(yù)設(shè)的數(shù)據(jù)重排規(guī)則確定每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)的序號(hào);
所述處理模塊,用于依據(jù)4-4數(shù)據(jù)重排網(wǎng)絡(luò)中開關(guān)電路的輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)確定所述開關(guān)電路的數(shù)據(jù)輸出方式,并按照當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中每個(gè)開關(guān)電路對(duì)應(yīng)的數(shù)據(jù)輸出方式將當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)輸出;其中,N為2的n次冪,n為大于1的正整數(shù)。
上述方案中,所述確定模塊,具體用于確定當(dāng)前N-N Benes網(wǎng)絡(luò)的第(m-1)/2級(jí)、第(m+1)/2級(jí)及第(m+3)/2級(jí)分別作為4-4數(shù)據(jù)重排網(wǎng)絡(luò)的第1級(jí)、第2級(jí)及第3級(jí)的N/4個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò);其中,所述m為當(dāng)前N-N Benes網(wǎng)絡(luò)的級(jí)數(shù),m=2log2N-1。
上述方案中,所述裝置還包括獲取模塊,用于獲取每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)及輸出數(shù)據(jù)。
上述方案中,所述排序模塊,具體用于依據(jù)降序或升序?qū)γ總€(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸出數(shù)據(jù)進(jìn)行排序,并依據(jù)每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸出數(shù)據(jù)的序號(hào)確定對(duì)應(yīng)的4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)的序號(hào)。
上述方案中,所述處理模塊,具體用于比較當(dāng)前開關(guān)電路中第二輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)與第一輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)的大小,依據(jù)比較結(jié)果確定所述開關(guān)電路的數(shù)據(jù)輸出方式為交叉輸出或直通輸出。
上述方案中,所述處理模塊,具體用于按照當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中每個(gè)開關(guān)電路對(duì)應(yīng)的數(shù)據(jù)輸出方式,將當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中第一開關(guān)電路的第 一輸出數(shù)據(jù)及第二開關(guān)電路的第一輸出數(shù)據(jù)分別作為第三開關(guān)電路的第一輸入數(shù)據(jù)及第二輸入數(shù)據(jù),將第一開關(guān)電路的第二輸出數(shù)據(jù)及第二開關(guān)電路的第二輸出數(shù)據(jù)分別作為第四開關(guān)電路的第一輸入數(shù)據(jù)及第二輸入數(shù)據(jù),輸出第三開關(guān)電路的第一輸出數(shù)據(jù)及第四開關(guān)電路的第二數(shù)據(jù),并將第三開關(guān)電路的第二輸出數(shù)據(jù)及第四開關(guān)電路的第一輸出數(shù)據(jù)分別作為第五開關(guān)電路的第一輸入數(shù)據(jù)及第二輸入數(shù)據(jù),輸出第五開關(guān)電路的第一輸出數(shù)據(jù)及第二輸出數(shù)據(jù)。
本發(fā)明實(shí)施例所提供的數(shù)據(jù)重排方法及裝置,確定當(dāng)前N-N Benes網(wǎng)絡(luò)中的N/4個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò);依據(jù)預(yù)設(shè)的數(shù)據(jù)重排規(guī)則確定每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)的序號(hào);依據(jù)4-4數(shù)據(jù)重排網(wǎng)絡(luò)中開關(guān)電路的輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)確定所述開關(guān)電路的數(shù)據(jù)輸出方式,并按照當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中每個(gè)開關(guān)電路對(duì)應(yīng)的數(shù)據(jù)輸出方式將當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)輸出;其中,N為2的n次冪,n為大于1的正整數(shù)。如此,通過(guò)輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)確定開關(guān)電路的數(shù)據(jù)輸出方式,并按照當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中每個(gè)開關(guān)電路對(duì)應(yīng)的數(shù)據(jù)輸出方式將當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)輸出,能夠減少4-4數(shù)據(jù)重排網(wǎng)絡(luò)的電路資源,進(jìn)而減少整個(gè)N-N Benes網(wǎng)絡(luò)的電路資源,降低實(shí)現(xiàn)成本,且實(shí)現(xiàn)簡(jiǎn)單、可靠性高。
附圖說(shuō)明
圖1為現(xiàn)有8-8Benes網(wǎng)絡(luò)示意圖;
圖2為現(xiàn)有8-8Benes網(wǎng)絡(luò)中開關(guān)電路內(nèi)部電路示意圖;
圖3為本發(fā)明實(shí)施例一數(shù)據(jù)重排方法流程示意圖;
圖4為本發(fā)明實(shí)施例8-8Benes網(wǎng)絡(luò)示意圖;
圖5為本發(fā)明實(shí)施例二數(shù)據(jù)重排方法流程示意圖;
圖6為本發(fā)明實(shí)施例數(shù)據(jù)重排裝置組成結(jié)構(gòu)示意圖。
具體實(shí)施方式
在本發(fā)明實(shí)施例中,確定當(dāng)前N-N Benes網(wǎng)絡(luò)中的N/4個(gè)4-4數(shù)據(jù)重排網(wǎng) 絡(luò);依據(jù)預(yù)設(shè)的數(shù)據(jù)重排規(guī)則確定每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)的序號(hào);依據(jù)4-4數(shù)據(jù)重排網(wǎng)絡(luò)中開關(guān)電路的輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)確定所述開關(guān)電路的數(shù)據(jù)輸出方式,并按照當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中每個(gè)開關(guān)電路對(duì)應(yīng)的數(shù)據(jù)輸出方式將當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)輸出;其中,N為2的n次冪,n為大于1的正整數(shù)。
圖3所示為本發(fā)明實(shí)施例一數(shù)據(jù)重排方法流程示意圖;如圖3所示,本發(fā)明實(shí)施例數(shù)據(jù)重排方法包括:
步驟301:確定當(dāng)前N-N Benes網(wǎng)絡(luò)中的N/4個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò);
本步驟具體包括:確定當(dāng)前N-N Benes網(wǎng)絡(luò)的第(m-1)/2級(jí)、第(m+1)/2級(jí)及第(m+3)/2級(jí)分別作為4-4數(shù)據(jù)重排網(wǎng)絡(luò)的第1級(jí)、第2級(jí)及第3級(jí)的N/4個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò);其中,所述m為當(dāng)前N-N Benes網(wǎng)絡(luò)的級(jí)數(shù),m=2log2N-1;例如:當(dāng)前為8-8Benes網(wǎng)絡(luò),共有m=2log2N-1=5級(jí),則以所述8-8Benes網(wǎng)絡(luò)的第2級(jí)、第3級(jí)及第4級(jí)作為4-4數(shù)據(jù)重排網(wǎng)絡(luò)的第1級(jí)、第2級(jí)及第3級(jí)的2個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò),為確定的當(dāng)前N-N Benes網(wǎng)絡(luò)中的N/4個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò),如圖4所示為本發(fā)明實(shí)施例8-8Benes網(wǎng)絡(luò)示意圖,圖中的兩個(gè)虛線框中的部分為確定的兩個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)。
步驟302:依據(jù)預(yù)設(shè)的數(shù)據(jù)重排規(guī)則確定每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)的序號(hào);
本步驟具體包括:依據(jù)降序或升序?qū)γ總€(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸出數(shù)據(jù)進(jìn)行排序,并依據(jù)每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸出數(shù)據(jù)的序號(hào)確定對(duì)應(yīng)的4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)的序號(hào);
例如:當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸出數(shù)據(jù)為8、1、4、6,這里所述8、1、4、6可為實(shí)際輸出數(shù)據(jù)的序號(hào),依據(jù)降序?qū)λ鲚敵鰯?shù)據(jù)進(jìn)行排序?yàn)?(4)、1(3)、4(2)、6(1),若所述4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)為1、4、6、8,這里所述1、4、6、8可為實(shí)際輸入數(shù)據(jù)的序號(hào),則依據(jù)每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸出數(shù)據(jù)的序號(hào)確定對(duì)應(yīng)的4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)的序號(hào)為:1(3)、4(2)、6(1)、8(4);其中,括號(hào)內(nèi)的數(shù)字為相應(yīng)數(shù)據(jù)的序號(hào)。
進(jìn)一步的,本步驟之前,所述方法還包括:獲取每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)及輸出數(shù)據(jù);
這里,獲取所述每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)及輸出數(shù)據(jù)可以采用現(xiàn)有技術(shù)中多種方法,在本發(fā)明實(shí)施例中,采用尋找互斥對(duì)的方法獲取所述每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)及輸出數(shù)據(jù);
例如:當(dāng)前8-8Benes網(wǎng)絡(luò)的輸入數(shù)據(jù)為1、2、3、4、5、6、7、8,配置的經(jīng)第5級(jí)最終的輸出數(shù)據(jù)為8、3、1、5、4、2、7、6,則輸入互斥對(duì)為:O1={1,2},O2={3,4},O3={5,6},O4={7,8};輸出互斥對(duì)為:P1={8,3},P2={1,5},P3={4,2},P4={7,6};則第一級(jí)輸出時(shí)走上半路徑的數(shù)據(jù)選取過(guò)程包括:先從輸入組1任意選擇1,在輸出組找到1走上半路徑,則5必走下半路徑,不能選;在輸入組找到5,則6必走上半路徑,選取6;在輸出組找到6,則7必走下半路徑,不能選;在輸入組找到7,則8必走上半路徑,選取8;在輸出組找到8,則3必走下半路徑,不能選;在輸入組找到3,則4必走上半路徑,選取4;如此,從輸入組-輸出組-輸入組-輸出組反復(fù)選取得到上半路徑選擇的數(shù)據(jù)為1、4、6、8,剩下的4個(gè)數(shù)據(jù)走下半路徑,然后可確定第一級(jí)及第五級(jí)的開關(guān)電路的數(shù)據(jù)輸出方式,進(jìn)而可確定第二級(jí)的輸入數(shù)據(jù)及第四級(jí)的輸出數(shù)據(jù),即可確定當(dāng)前8-8Benes網(wǎng)絡(luò)中兩個(gè)數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)及輸出數(shù)據(jù);其中,所述數(shù)據(jù)輸出方式包括:交叉輸出及直通輸出;如圖2中,當(dāng)out1=int1、out2=int2時(shí),為直通輸出;當(dāng)out1=int2、out2=int1時(shí),為交叉輸出;
進(jìn)一步的,對(duì)于N-N Benes網(wǎng)絡(luò),采用互斥對(duì)的方法獲取每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)及輸出數(shù)據(jù)的過(guò)程,可確定第一級(jí)至第(m-3)/2級(jí)及第(m+5)/2級(jí)至第m級(jí)的數(shù)據(jù)輸出方式,以及第二級(jí)至第(m-1)/2級(jí)的輸入數(shù)據(jù)、第(m+3)/2級(jí)至第m-1級(jí)的輸出數(shù)據(jù)。
步驟303:依據(jù)4-4數(shù)據(jù)重排網(wǎng)絡(luò)中開關(guān)電路的輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)確定所述開關(guān)電路的數(shù)據(jù)輸出方式,并按照當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中每個(gè)開關(guān)電路對(duì)應(yīng)的數(shù)據(jù)輸出方式將當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)輸出;
這里,所述依據(jù)4-4數(shù)據(jù)重排網(wǎng)絡(luò)中開關(guān)電路的輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)確定 所述開關(guān)電路的數(shù)據(jù)輸出方式包括:
比較當(dāng)前開關(guān)電路中第二輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)與第一輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)的大小,依據(jù)比較結(jié)果確定所述開關(guān)電路的數(shù)據(jù)輸出方式為交叉輸出或直通輸出;
其中,依據(jù)比較結(jié)果確定所述開關(guān)電路的數(shù)據(jù)輸出方式為交叉輸出或直通輸出包括:
若第二輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)大于第一輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào),即in2>in1,則確定所述開關(guān)電路的數(shù)據(jù)輸出方式為交叉輸出;否則,確定所述開關(guān)電路的數(shù)據(jù)輸出方式為直通輸出;例如:當(dāng)前開關(guān)電路中第二輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)為2,第一輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)為3,則確定所述開關(guān)電路的數(shù)據(jù)輸出方式為直通輸出。
進(jìn)一步的,所述按照當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中每個(gè)開關(guān)電路對(duì)應(yīng)的數(shù)據(jù)輸出方式將當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)輸出包括:
按照當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中每個(gè)開關(guān)電路對(duì)應(yīng)的數(shù)據(jù)輸出方式,將當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中第一開關(guān)電路的第一輸出數(shù)據(jù)及第二開關(guān)電路的第一輸出數(shù)據(jù)分別作為第三開關(guān)電路的第一輸入數(shù)據(jù)及第二輸入數(shù)據(jù),將第一開關(guān)電路的第二輸出數(shù)據(jù)及第二開關(guān)電路的第二輸出數(shù)據(jù)分別作為第四開關(guān)電路的第一輸入數(shù)據(jù)及第二輸入數(shù)據(jù),輸出第三開關(guān)電路的第一輸出數(shù)據(jù)及第四開關(guān)電路的第二數(shù)據(jù),并將第三開關(guān)電路的第二輸出數(shù)據(jù)及第四開關(guān)電路的第一輸出數(shù)據(jù)分別作為第五開關(guān)電路的第一輸入數(shù)據(jù)及第二輸入數(shù)據(jù),輸出第五開關(guān)電路的第一輸出數(shù)據(jù)及第二輸出數(shù)據(jù);如此,通過(guò)輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)確定開關(guān)電路的數(shù)據(jù)輸出方式,并按照當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中每個(gè)開關(guān)電路對(duì)應(yīng)的數(shù)據(jù)輸出方式將當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)輸出,可使每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)相較現(xiàn)有的Benes網(wǎng)絡(luò)節(jié)省一個(gè)開關(guān)電路資源,通過(guò)對(duì)比圖4及圖2可明顯看出,對(duì)于8-8Benes網(wǎng)絡(luò),采用本發(fā)明實(shí)施例所述數(shù)據(jù)重排方法可比現(xiàn)有8-8Benes網(wǎng)絡(luò)節(jié)省兩個(gè)開關(guān)電路資源,即節(jié)省四個(gè)選擇器資源;進(jìn)而可得,對(duì)于N-N Benes網(wǎng)絡(luò),采用本發(fā)明實(shí)施例所述數(shù)據(jù)重排方法可比現(xiàn)有N-N Benes 網(wǎng)絡(luò)節(jié)省N/4個(gè)開關(guān)電路資源,即節(jié)省N/2個(gè)選擇器資源。
在本發(fā)明實(shí)施例中,當(dāng)實(shí)現(xiàn)將當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)輸出后,再通過(guò)采用互斥對(duì)確定的第一級(jí)至第(m-3)/2級(jí)及第(m+5)/2級(jí)至第m級(jí)的數(shù)據(jù)輸出方式,實(shí)現(xiàn)當(dāng)前N-N Benes網(wǎng)絡(luò)預(yù)設(shè)的輸出數(shù)據(jù)的輸出。
圖5為本發(fā)明實(shí)施例二數(shù)據(jù)重排方法流程示意圖;如圖5所示,本發(fā)明實(shí)施例數(shù)據(jù)重排方法包括:
步驟501:確定當(dāng)前N-N Benes網(wǎng)絡(luò)中的N/4個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò);
本步驟具體包括:確定當(dāng)前N-N Benes網(wǎng)絡(luò)的第(m-1)/2級(jí)、第(m+1)/2級(jí)及第(m+3)/2級(jí)分別作為4-4數(shù)據(jù)重排網(wǎng)絡(luò)的第1級(jí)、第2級(jí)及第3級(jí)的N/4個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò);其中,所述m為當(dāng)前N-N Benes網(wǎng)絡(luò)的級(jí)數(shù),m=2log2N-1;
在本實(shí)施例中,所述N-N Benes網(wǎng)絡(luò)為16-16Benes網(wǎng)絡(luò),共有m=2log2N-1=7級(jí),則以所述16-16Benes網(wǎng)絡(luò)的第3級(jí)、第4級(jí)及第5級(jí)作為4-4數(shù)據(jù)重排網(wǎng)絡(luò)的第1級(jí)、第2級(jí)及第3級(jí)的4個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò),為確定的當(dāng)前16-16Benes網(wǎng)絡(luò)中的4個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)。
步驟502:獲取每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)及輸出數(shù)據(jù);
這里,獲取所述每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)及輸出數(shù)據(jù)可以采用現(xiàn)有技術(shù)中多種方法,在本發(fā)明實(shí)施例中,采用尋找互斥對(duì)的方法獲取所述每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)及輸出數(shù)據(jù);
采用互斥對(duì)的方法從輸入組-輸出組-輸入組-輸出組反復(fù)選取得到上半路徑選擇的數(shù)據(jù),剩下的數(shù)據(jù)則走下半路徑,然后可確定第一級(jí)及第七級(jí)、第二級(jí)及第六級(jí)的開關(guān)電路的數(shù)據(jù)輸出方式,進(jìn)而可確定第三級(jí)的輸入數(shù)據(jù)及第五級(jí)的輸出數(shù)據(jù),即可確定當(dāng)前16-16Benes網(wǎng)絡(luò)中四個(gè)數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)及輸出數(shù)據(jù);其中,所述數(shù)據(jù)輸出方式包括:交叉輸出及直通輸出;如圖2中,當(dāng)out1=int1、out2=int2時(shí),為直通輸出;當(dāng)out1=int2、out2=int1時(shí),為交叉輸出。
步驟503:依據(jù)預(yù)設(shè)的數(shù)據(jù)重排規(guī)則確定每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)的序號(hào);
本步驟具體包括:依據(jù)降序或升序?qū)γ總€(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸出數(shù)據(jù)進(jìn)行排序,并依據(jù)每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸出數(shù)據(jù)的序號(hào)確定對(duì)應(yīng)的4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)的序號(hào);
例如:獲得的當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸出數(shù)據(jù)為8、1、4、6,這里所述8、1、4、6可為實(shí)際輸出數(shù)據(jù)的序號(hào),依據(jù)升序?qū)λ鲚敵鰯?shù)據(jù)進(jìn)行排序?yàn)?(1)、1(2)、4(3)、6(4),若獲得的所述4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)為1、4、6、8,這里所述1、4、6、8可為實(shí)際輸入數(shù)據(jù)的序號(hào),則依據(jù)每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸出數(shù)據(jù)的序號(hào)確定對(duì)應(yīng)的4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)的序號(hào)為:1(2)、4(3)、6(4)、8(1);其中,括號(hào)內(nèi)的數(shù)字為相應(yīng)數(shù)據(jù)的序號(hào)。
步驟504:依據(jù)4-4數(shù)據(jù)重排網(wǎng)絡(luò)中開關(guān)電路的輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)確定所述開關(guān)電路的數(shù)據(jù)輸出方式,并按照當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中每個(gè)開關(guān)電路對(duì)應(yīng)的數(shù)據(jù)輸出方式將當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)輸出;
這里,所述依據(jù)4-4數(shù)據(jù)重排網(wǎng)絡(luò)中開關(guān)電路的輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)確定所述開關(guān)電路的數(shù)據(jù)輸出方式包括:
比較當(dāng)前開關(guān)電路中第二輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)與第一輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)的大小,依據(jù)比較結(jié)果確定所述開關(guān)電路的數(shù)據(jù)輸出方式為交叉輸出或直通輸出;
其中,依據(jù)比較結(jié)果確定所述開關(guān)電路的數(shù)據(jù)輸出方式為交叉輸出或直通輸出包括:
若第二輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)大于第一輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào),即in2>in1,則確定所述開關(guān)電路的數(shù)據(jù)輸出方式為交叉輸出;否則,確定所述開關(guān)電路的數(shù)據(jù)輸出方式為直通輸出;例如:當(dāng)前開關(guān)電路中第二輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)為3,第一輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)為2,則確定所述開關(guān)電路的數(shù)據(jù)輸出方式為交叉輸出。
進(jìn)一步的,所述按照當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中每個(gè)開關(guān)電路對(duì)應(yīng)的數(shù)據(jù)輸 出方式將當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)輸出包括:
按照當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中每個(gè)開關(guān)電路對(duì)應(yīng)的數(shù)據(jù)輸出方式,將當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中第一開關(guān)電路的第一輸出數(shù)據(jù)及第二開關(guān)電路的第一輸出數(shù)據(jù)分別作為第三開關(guān)電路的第一輸入數(shù)據(jù)及第二輸入數(shù)據(jù),將第一開關(guān)電路的第二輸出數(shù)據(jù)及第二開關(guān)電路的第二輸出數(shù)據(jù)分別作為第四開關(guān)電路的第一輸入數(shù)據(jù)及第二輸入數(shù)據(jù),輸出第三開關(guān)電路的第一輸出數(shù)據(jù)及第四開關(guān)電路的第二數(shù)據(jù),并將第三開關(guān)電路的第二輸出數(shù)據(jù)及第四開關(guān)電路的第一輸出數(shù)據(jù)分別作為第五開關(guān)電路的第一輸入數(shù)據(jù)及第二輸入數(shù)據(jù),輸出第五開關(guān)電路的第一輸出數(shù)據(jù)及第二輸出數(shù)據(jù);進(jìn)而,在本實(shí)施例中,通過(guò)采用尋找互斥對(duì)的方法確定的第六級(jí)及第七級(jí)的數(shù)據(jù)輸出方式可實(shí)現(xiàn)當(dāng)前的16-16Benes網(wǎng)絡(luò)預(yù)設(shè)的輸出數(shù)據(jù)的輸出。
圖6為本發(fā)明實(shí)施例數(shù)據(jù)重排裝置組成結(jié)構(gòu)示意圖;如圖6所示,本發(fā)明實(shí)施例數(shù)據(jù)重排裝置包括:確定模塊61、排序模塊62及處理模塊63;其中,
所述確定模塊61,用于確定當(dāng)前N-N Benes網(wǎng)絡(luò)中的N/4個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò);
所述排序模塊62,用于依據(jù)預(yù)設(shè)的數(shù)據(jù)重排規(guī)則確定每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)的序號(hào);
所述處理模塊63,用于依據(jù)4-4數(shù)據(jù)重排網(wǎng)絡(luò)中開關(guān)電路的輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)確定所述開關(guān)電路的數(shù)據(jù)輸出方式,并按照當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中每個(gè)開關(guān)電路對(duì)應(yīng)的數(shù)據(jù)輸出方式將當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)輸出;其中,N為2的n次冪,n為大于1的正整數(shù)。
進(jìn)一步的,所述確定模塊61,具體用于確定當(dāng)前N-N Benes網(wǎng)絡(luò)的第(m-1)/2級(jí)、第(m+1)/2級(jí)及第(m+3)/2級(jí)分別作為4-4數(shù)據(jù)重排網(wǎng)絡(luò)的第1級(jí)、第2級(jí)及第3級(jí)的N/4個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò);其中,所述m為當(dāng)前N-N Benes網(wǎng)絡(luò)的級(jí)數(shù),m=2log2N-1。例如:當(dāng)前為8-8Benes網(wǎng)絡(luò),共有m=2log2N-1=5級(jí),則以所述8-8Benes網(wǎng)絡(luò)的第2級(jí)、第3級(jí)及第4級(jí)作為4-4數(shù)據(jù)重排網(wǎng)絡(luò)的第1級(jí)、第2級(jí)及第3級(jí)的2個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò),為確定的當(dāng)前N-N Benes 網(wǎng)絡(luò)中的N/4個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò),如圖4所示為本發(fā)明實(shí)施例8-8Benes網(wǎng)絡(luò)示意圖,圖中的兩個(gè)虛線框中的部分為確定的兩個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)。
進(jìn)一步的,所述裝置還包括獲取模塊64,用于獲取每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)及輸出數(shù)據(jù);
所述獲取模塊64,具體用于采用尋找互斥對(duì)的方法獲取每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)及輸出數(shù)據(jù);相應(yīng)的,所述獲取模塊74,還用于確定當(dāng)前N-N Benes網(wǎng)絡(luò)的第一級(jí)至第(m-3)/2級(jí)及第(m+5)/2級(jí)至第m級(jí)的數(shù)據(jù)輸出方式,以及第二級(jí)至第(m-1)/2級(jí)的輸入數(shù)據(jù)、第(m+3)/2級(jí)至第m-1級(jí)的輸出數(shù)據(jù)。
進(jìn)一步的,所述排序模塊62,具體用于依據(jù)降序或升序?qū)γ總€(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸出數(shù)據(jù)進(jìn)行排序,并依據(jù)每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸出數(shù)據(jù)的序號(hào)確定對(duì)應(yīng)的4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)的序號(hào);
例如:當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸出數(shù)據(jù)為8、1、4、6,這里所述8、1、4、6可為實(shí)際輸出數(shù)據(jù)的序號(hào),依據(jù)降序?qū)λ鲚敵鰯?shù)據(jù)進(jìn)行排序?yàn)?(4)、1(3)、4(2)、6(1),若所述4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)為1、4、6、8,這里所述1、4、6、8可為實(shí)際輸入數(shù)據(jù)的序號(hào),則依據(jù)每個(gè)4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸出數(shù)據(jù)的序號(hào)確定對(duì)應(yīng)的4-4數(shù)據(jù)重排網(wǎng)絡(luò)的輸入數(shù)據(jù)的序號(hào)為:1(3)、4(2)、6(1)、8(4);其中,括號(hào)內(nèi)的數(shù)字為相應(yīng)數(shù)據(jù)的序號(hào)。
進(jìn)一步的,所述處理模塊63,具體用于比較當(dāng)前開關(guān)電路中第二輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)與第一輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)的大小,依據(jù)比較結(jié)果確定所述開關(guān)電路的數(shù)據(jù)輸出方式為交叉輸出或直通輸出;
其中,所述處理模塊63依據(jù)比較結(jié)果確定所述開關(guān)電路的數(shù)據(jù)輸出方式為交叉輸出或直通輸出,包括:
所述處理模塊63判斷若第二輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào)大于第一輸入數(shù)據(jù)對(duì)應(yīng)的序號(hào),即in2>in1,則確定所述開關(guān)電路的數(shù)據(jù)輸出方式為交叉輸出;否則,確定所述開關(guān)電路的數(shù)據(jù)輸出方式為直通輸出。
進(jìn)一步的,所述處理模塊63,具體用于按照當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中每個(gè) 開關(guān)電路對(duì)應(yīng)的數(shù)據(jù)輸出方式,將當(dāng)前4-4數(shù)據(jù)重排網(wǎng)絡(luò)中第一開關(guān)電路的第一輸出數(shù)據(jù)及第二開關(guān)電路的第一輸出數(shù)據(jù)分別作為第三開關(guān)電路的第一輸入數(shù)據(jù)及第二輸入數(shù)據(jù),將第一開關(guān)電路的第二輸出數(shù)據(jù)及第二開關(guān)電路的第二輸出數(shù)據(jù)分別作為第四開關(guān)電路的第一輸入數(shù)據(jù)及第二輸入數(shù)據(jù),輸出第三開關(guān)電路的第一輸出數(shù)據(jù)及第四開關(guān)電路的第二數(shù)據(jù),并將第三開關(guān)電路的第二輸出數(shù)據(jù)及第四開關(guān)電路的第一輸出數(shù)據(jù)分別作為第五開關(guān)電路的第一輸入數(shù)據(jù)及第二輸入數(shù)據(jù),輸出第五開關(guān)電路的第一輸出數(shù)據(jù)及第二輸出數(shù)據(jù)。
進(jìn)一步的,所述處理模塊63,還用于通過(guò)確定的第一級(jí)至第(m-3)/2級(jí)及第(m+5)/2級(jí)至第m級(jí)的數(shù)據(jù)輸出方式,實(shí)現(xiàn)控制當(dāng)前N-N Benes網(wǎng)絡(luò)預(yù)設(shè)的輸出數(shù)據(jù)的輸出。
在本發(fā)明實(shí)施例中,所述確定模塊61、排序模塊62、處理模塊63及獲取模塊64均可由終端中的中央處理器(CPU,Central Processing Unit)或數(shù)字信號(hào)處理器(DSP,Digital Signal Processor)、或現(xiàn)場(chǎng)可編程門陣列(FPGA,F(xiàn)ield Programmable Gate Array)、或集成電路(ASIC,Application Specific Integrated Circuit)實(shí)現(xiàn)。
以上所述,僅為本發(fā)明較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。