一種高效動(dòng)態(tài)軟硬件劃分方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種用于嵌入式系統(tǒng)的軟硬件劃分方法。特別是涉及一種高效動(dòng)態(tài)軟 硬件劃分方法。
【背景技術(shù)】
[0002] 嵌入式系統(tǒng)是以應(yīng)用為中心、以計(jì)算機(jī)和集成電路技術(shù)為基礎(chǔ)、軟硬件可裁剪、適 應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗等嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。嵌入式系統(tǒng)內(nèi) 部功能模塊有兩種基本的實(shí)現(xiàn)方法:軟件和硬件。軟件方法以微處理器為平臺(tái),通過(guò)設(shè)計(jì)代 碼程序來(lái)完成系統(tǒng)的特定功能。而硬件方法是通過(guò)設(shè)計(jì)專用邏輯電路來(lái)實(shí)現(xiàn)系統(tǒng)功能。一 般來(lái)說(shuō),硬件比軟件能提供更好的性能,而軟件更容易開發(fā)和修改,靈活性更強(qiáng)、成本比硬 件更低。這兩種手段在性能和成本上存在巨大差異,為了達(dá)到成本和性能的最佳結(jié)合,兼顧 速度和靈活性,目前大部分嵌入式系統(tǒng)都采用軟硬件共同實(shí)現(xiàn)的方式。既然嵌入式系統(tǒng)大 多采用軟硬件共同實(shí)現(xiàn)的方式,那么軟硬件劃分就成了一個(gè)影響嵌入式系統(tǒng)性能非常重要 的環(huán)節(jié)。
[0003] 軟硬件劃分是軟硬件協(xié)同設(shè)計(jì)的重要環(huán)節(jié)和組成部分,起著非常關(guān)鍵的作用。軟 硬件劃分是指在設(shè)計(jì)系統(tǒng)時(shí),確定各個(gè)模塊是采取軟件還是硬件的實(shí)現(xiàn)方式。其主要任務(wù) 是在滿足各項(xiàng)設(shè)計(jì)約束的條件下,把系統(tǒng)功能劃分到目標(biāo)結(jié)構(gòu)中的軟件和硬件部分上,并 為系統(tǒng)提供最佳的軟硬件折衷方案。
[0004] 軟硬件劃分問(wèn)題的描述:
[0005] 軟硬件劃分問(wèn)題的模型可以用一個(gè)任務(wù)流圖來(lái)描述,整個(gè)任務(wù)流圖又是一個(gè)有向 無(wú)環(huán)圖(DAG圖),如圖1所示,記作G = (V,E)。
[0006] 其中,V是任務(wù)的集合,V =作。^,. . . .,Vn},示系統(tǒng)中的一個(gè)任務(wù),可以用 軟件或者硬件實(shí)現(xiàn),每個(gè)任務(wù)節(jié)點(diǎn)包含其軟件、硬件的執(zhí)行時(shí)間與功耗等節(jié)點(diǎn)屬性信息;E 是邊的集合,E = {%,ei,. . . .,ej,代表任務(wù)之間的控制關(guān)系或數(shù)據(jù)流向,每條邊的終點(diǎn)任 務(wù)必須在此邊的始點(diǎn)任務(wù)完成之后才可以開始執(zhí)行,邊的權(quán)重代表兩個(gè)節(jié)點(diǎn)之間的通訊開 銷。
[0007] 設(shè)X = {xp x2, . .,xn}為一個(gè)軟硬件劃分方案,Xi代表一個(gè)任務(wù)節(jié)點(diǎn)的軟硬件實(shí)現(xiàn) 方式,Xi= 1表示該節(jié)點(diǎn)用硬件實(shí)現(xiàn),x i= 0表示該節(jié)點(diǎn)用軟件實(shí)現(xiàn)。
[0008] 為了方便系統(tǒng)分析,也使得系統(tǒng)分析更具針對(duì)性,將目標(biāo)函數(shù)設(shè)為執(zhí)行時(shí)間,對(duì)其 他系統(tǒng)參數(shù)有一定的約束即可。在這種情況下,軟硬件劃分問(wèn)題的精確模型為:
[0009]
【主權(quán)項(xiàng)】
1. 一種高效動(dòng)態(tài)軟硬件劃分方法,用于嵌入式系統(tǒng)的設(shè)計(jì),其特征在于,包括如下步 驟: 1) 建立軟硬件劃分問(wèn)題的精確數(shù)學(xué)模型,假設(shè)有n個(gè)任務(wù)節(jié)點(diǎn)和m個(gè)約束條件,系統(tǒng)執(zhí) 行時(shí)間作為優(yōu)化目標(biāo)函數(shù),建立如下所示的精確數(shù)學(xué)模型:
式中,Xi代表一個(gè)任務(wù)節(jié)點(diǎn)的軟硬件實(shí)現(xiàn)方式,Xi= 1表示該節(jié)點(diǎn)用硬件實(shí)現(xiàn),Xi= 0表示該節(jié)點(diǎn)用軟件實(shí)現(xiàn),ai#Pci是嵌入式系統(tǒng)的性能參數(shù),bi是嵌入式系統(tǒng)的性能約束 值; 2) 針對(duì)約束條件中系數(shù)矩陣中系數(shù)的相關(guān)性,將精確數(shù)學(xué)模型化簡(jiǎn)為低維度的簡(jiǎn)單模 型,化簡(jiǎn)后的模型如下所示:
式中i、j和k是簡(jiǎn)化模型約束項(xiàng); 3)求解簡(jiǎn)化模型 選用自動(dòng)劃分算法,求解步驟2)的簡(jiǎn)化模型,得到最優(yōu)軟硬件劃分方案,并記錄算法 求解的運(yùn)行時(shí)間,觀察自動(dòng)劃分算法對(duì)簡(jiǎn)化模型求解的效率; 4)驗(yàn)證軟硬件劃分方案的可行性 將步驟3)所述的最優(yōu)軟硬件劃分方案代入步驟1)所述的精確數(shù)學(xué)模型中的約束條件 組,對(duì)求解簡(jiǎn)化模型得出的最優(yōu)軟硬件劃分方案進(jìn)行可行性驗(yàn)證,如果滿足精確數(shù)學(xué)模型 中的各約束條件,最優(yōu)軟硬件劃分方案在精確數(shù)學(xué)模型中是可行解,進(jìn)入步驟5),如果最優(yōu) 軟硬件劃分方案不滿足精確數(shù)學(xué)模型中的各約束條件,最優(yōu)軟硬件劃分方案在精確數(shù)學(xué)模 型中是不可行解,則返回到步驟2)循環(huán)迭代直到得出的最優(yōu)軟硬件劃分方案是可行解為 止; 5)輸出最優(yōu)軟硬件劃分方案。
2. 根據(jù)權(quán)利要求1所述的一種高效動(dòng)態(tài)軟硬件劃分方法,其特征在于,步驟1)所述的 嵌入式系統(tǒng)的性能參數(shù)包括有:系統(tǒng)的執(zhí)行時(shí)間、面積、成本、功耗和存儲(chǔ)開銷。
3.根據(jù)權(quán)利要求1所述的一種高效動(dòng)態(tài)軟硬件劃分方法,其特征在于,步驟2)所述的 相關(guān)性是系數(shù)矩陣?yán)镄邢蛄恐g的線性相關(guān)性。
4.根據(jù)權(quán)利要求1所述的一種高效動(dòng)態(tài)軟硬件劃分方法,其特征在于,步驟3)所述的 自動(dòng)劃分算法是遺傳算法或粒子群算法或蛙跳算法。
【專利摘要】一種高效動(dòng)態(tài)軟硬件劃分方法,用于嵌入式系統(tǒng)的設(shè)計(jì),包括1)建立軟硬件劃分問(wèn)題的精確數(shù)學(xué)模型;2)針對(duì)約束條件中系數(shù)矩陣中系數(shù)的相關(guān)性,將精確數(shù)學(xué)模型化簡(jiǎn)為低維度的簡(jiǎn)單模型;3)選用自動(dòng)劃分算法,求解步驟2)的簡(jiǎn)化模型,得到最優(yōu)軟硬件劃分方案,并記錄算法求解的運(yùn)行時(shí)間,觀察自動(dòng)劃分算法對(duì)簡(jiǎn)化模型求解的效率;4)驗(yàn)證軟硬件劃分方案的可行性;5)輸出最優(yōu)軟硬件劃分方案。本發(fā)明能降低模型的復(fù)雜度,使自動(dòng)劃分算法對(duì)模型求解的時(shí)間大大減少,提高了劃分算法的求解效率,尤其對(duì)大規(guī)模軟硬件劃分來(lái)說(shuō),速度會(huì)很明顯地得到提升,使得解決大規(guī)模的復(fù)雜軟硬件劃分成為一種可能,提高了模型適用的范圍。
【IPC分類】G06F9-46
【公開號(hào)】CN104572268
【申請(qǐng)?zhí)枴緾N201510018282
【發(fā)明人】張濤, 余益科, 趙鑫, 李康康
【申請(qǐng)人】天津大學(xué)
【公開日】2015年4月29日
【申請(qǐng)日】2015年1月14日