1.一種動態(tài)可重構(gòu)硬件電路的設(shè)計方法,其特征在于,包括:
識別應(yīng)用中含有常數(shù)的算數(shù)操作,所述常數(shù)的取值在一定范圍內(nèi)變化;
根據(jù)精度需求調(diào)整所述常數(shù)的取值范圍,所述取值范圍由至少一個算數(shù)參數(shù)組成;
根據(jù)所述精度需求去除每個所述算數(shù)參數(shù)所對應(yīng)的算數(shù)操作中的冗余部分,據(jù)以定制所述硬件電路。
2.根據(jù)權(quán)利要求1所述的動態(tài)可重構(gòu)硬件電路的設(shè)計方法,其特征在于,所述精度需求包括:應(yīng)用精度需求和算法精度需求。
3.根據(jù)權(quán)利要求2所述的動態(tài)可重構(gòu)硬件電路的設(shè)計方法,其特征在于,所述算法精度需求的確定,包括:確定預(yù)設(shè)調(diào)整范圍,并在所述預(yù)設(shè)調(diào)整范圍內(nèi)隨機選取數(shù)值作為算法參數(shù)值,根據(jù)公式
ε(t,s)=a(t,s)-f(t,s)
計算收斂率g,其中,t、s分別代表調(diào)整參數(shù)在時間、空間域內(nèi)的位置,ε(t,s)表示算法計算真實值a(t,s)與算法計算實際值f(t,s)之間的差值;若|g|>1,則將所述預(yù)設(shè)調(diào)整范圍減半,重新選取數(shù)值所謂算法參數(shù)值進(jìn)行計算,直至計算出的收斂率|g|≤1,從而得到最終的調(diào)整范圍。
4.根據(jù)權(quán)利要求1所述的動態(tài)可重構(gòu)硬件電路的設(shè)計方法,其特征在于,所述根據(jù)所述精度需求去除每個所述算數(shù)參數(shù)所對應(yīng)的算數(shù)操作中的冗余部分,包括:
將每個所述算數(shù)參數(shù)表示為二進(jìn)制數(shù);
在滿足所述精度需求的基礎(chǔ)上,去除所需精度點前二進(jìn)制值為“0”的比特位。
5.根據(jù)權(quán)利要求1所述的動態(tài)可重構(gòu)硬件電路的設(shè)計方法,其特征在于,所述據(jù)以定制所述硬件電路還包括:令所述硬件電路支持應(yīng)用運行時不同常數(shù)的計算,具體通過靜態(tài)算數(shù)單元或動態(tài)算數(shù)單元的方式實現(xiàn):
所述靜態(tài)算數(shù)單元,采用同一硬件單元的不同疊加方式支持不同的常數(shù)運算;
所述動態(tài)算數(shù)單元,針對不同常數(shù)重構(gòu)不同的硬件單元來支持不同的常數(shù)運算。
6.根據(jù)權(quán)利要求5所述的動態(tài)可重構(gòu)硬件電路的設(shè)計方法,其特征在于,在定制完成之后還包括:分別估算所述靜態(tài)算數(shù)單元和所述動態(tài)算數(shù)單元的硬件資源消耗,并計算對應(yīng)的并行度,選取并行度高的方式。
7.一種動態(tài)可重構(gòu)硬件電路的設(shè)計系統(tǒng),其特征在于,包括:
識別模塊,用于識別應(yīng)用中含有常數(shù)的算數(shù)操作,所述常數(shù)的取值在一定范圍內(nèi)變化;
調(diào)整模塊,用于根據(jù)精度需求調(diào)整所述常數(shù)的取值范圍,所述取值范圍由至少一個算數(shù)參數(shù)組成;
剔除模塊,用于根據(jù)所述精度需求去除每個所述算數(shù)參數(shù)所對應(yīng)的算數(shù)操作中的冗余部分,據(jù)以定制所述硬件電路。
8.一種動態(tài)可重構(gòu)硬件電路,其特征在于,由權(quán)利要求1至6中任一所述的動態(tài)可重構(gòu)硬件電路的設(shè)計方法設(shè)計而成。
9.一種執(zhí)行如權(quán)利要求8所述的動態(tài)可重構(gòu)硬件電路的方法,其中,所述動態(tài)可重構(gòu)硬件電路是由權(quán)利要求5或6所述的動態(tài)可重構(gòu)硬件電路的設(shè)計方法設(shè)計而成,所述執(zhí)行方法包括:建立應(yīng)用性能模型T,并選擇性能最高的硬件電路執(zhí)行;
其中,ds表示計算數(shù)據(jù)量的大小,fknl表示硬件時鐘頻率、P表示算數(shù)單元并行度、Or表示硬件重構(gòu)成本,Nr*φ表示重構(gòu)硬件文件大小,由單元重構(gòu)文件大小φ與需重構(gòu)硬件單元個數(shù)Nr的乘積構(gòu)成,θ表示重構(gòu)帶寬。
10.一種執(zhí)行如權(quán)利要求8所述的動態(tài)可重構(gòu)硬件電路的系統(tǒng),其中,所述動態(tài)可重構(gòu)硬件電路是由權(quán)利要求5或6所述的動態(tài)可重構(gòu)硬件電路的設(shè)計方法設(shè)計而成,所述執(zhí)行系統(tǒng)包括:處理模塊,用于建立應(yīng)用性能模型T,并選擇性能最高的硬件電路執(zhí)行;
其中,ds表示計算數(shù)據(jù)量的大小,fknl表示硬件時鐘頻率、P表示算數(shù)單元并行度、Or表示硬件重構(gòu)成本,Nr*φ表示重構(gòu)硬件文件大小,由單元重構(gòu)文件大小φ與需重構(gòu)硬件單元個數(shù)Nr的乘積構(gòu)成,θ表示重構(gòu)帶寬。