基于EDA的嵌入式系統軟硬件劃分方法
1 引言
本文引用地址:http://dyxdggzs.com/article/191882.htm嵌入式系統是由一個(gè)或若干個(gè)微處理器、ASICs、存儲器和總線(xiàn)構成的,在一定時(shí)間內響應輸人的系統。傳統的嵌入式系統的設計方法將硬件和軟件劃分為兩個(gè)獨立的部分,由硬件工程師和軟件工程師按照擬定的設計流程分別完成。這種設計方法只能改善硬件和軟件各自的性能,而在有限的設計空間中不可能對整個(gè)系統做出較好的性能綜合優(yōu)化。隨著(zhù)嵌入式系統的功能越來(lái)越強,其結構變得越來(lái)越復雜,系統的集成度越來(lái)越高,調試越來(lái)越困難,傳統的設計方法是已經(jīng)不能滿(mǎn)足現代嵌入式系統的設計要求,取而代之的是以軟硬件協(xié)同設計為主要特征的系統設計方法,其主要思想是用自動(dòng)、優(yōu)化的系統體系結構開(kāi)發(fā)替代人工的軟硬件子系統分割,在系統設計的高層階段實(shí)現系統原型的快速開(kāi)發(fā)并預估系統實(shí)現的性能,實(shí)現系統在性能、成本等方面的優(yōu)化。
軟硬件劃分是嵌入式系統軟硬件協(xié)同設計中的一個(gè)關(guān)鍵問(wèn)題,其作用是從軟硬件系統設計空間中,根據系統功能定義,獲得一個(gè)滿(mǎn)足系統時(shí)間、成本、功耗等方面要求的趨于最優(yōu)的實(shí)現,其結果直接決定系統設計的優(yōu)劣。近年來(lái),人們將各類(lèi)啟發(fā)式算法應用于軟硬件劃分的研究中,取得了較好的方案。Eles 等[1]利用模擬退火算法,Ernst 等[2]采用模擬退火算法和禁忌搜索算法,Saha 等[3]運用遺傳算法實(shí)現軟/硬件劃分。軟硬件劃分問(wèn)題本質(zhì)上是一類(lèi)組合優(yōu)化問(wèn)題,分布估計算法(Estimation of Distribution Algorithms,EDAs)是一種新的基于種群進(jìn)化的算法,具有收斂速度快,避免陷入局部最優(yōu)的特點(diǎn)。本文提出了一個(gè)基于分布估計算法的軟硬件劃分算法,較好地應用于軟硬件協(xié)同設計中。
2 劃分模型
系統功能的軟件通常采用C/C++ 語(yǔ)言等高級程序設計語(yǔ)言實(shí)現,然后根據不同顆粒度的要求提取系統控制數據流圖CDFG??刂茢祿鲌D是系統的行為級描述,通常使用有向無(wú)環(huán)圖表示,主要描述系統中任務(wù)間的控制、數據關(guān)系及每個(gè)任務(wù)的代價(jià)信息,而與系統實(shí)現時(shí)采用什么樣的體系結構無(wú)關(guān)。
圖1 控制數據流圖CDFG
3 劃分算法
分布估計算法是一類(lèi)基于概率模型的進(jìn)化算法, 與傳統的進(jìn)化方法不同, 它不使用交叉、變異等算子,而是以群體中適應度較高的個(gè)體的概率分布作為進(jìn)化模型,并由該模型產(chǎn)生下一代子群,利用跟先進(jìn)的方法取代了遺傳算法再結合操作方式,拓展了算法的應用空間。由于進(jìn)化模型是由統計的概率分布信息推導而來(lái), 因而能最大限度地利用已有信息,更準確地反映變量間的相互關(guān)系,顯現出群體的主要特征。理論研究表明,EDAs 在迭代過(guò)程中有可能獲取群體中的個(gè)體之間及個(gè)體中不同位之間的交互信息,辨識并且操縱重要的模式塊,從而能夠有效求解決策變量之間有相互作用的優(yōu)化問(wèn)題[4]。
評論