郭 亮
(總參第63研究所,江蘇南京 210007)
基于可編程模擬器件的演化硬件的研究
郭 亮
(總參第63研究所,江蘇南京 210007)
研究了一種利用可編程模擬電子器件設計電路的方法。該模擬器件具有非常優(yōu)越的可重構特性,通過編程控制可以方便地改變其結(jié)構,特別適用于模擬電路類型的演化硬件電路的設計。闡明了電路進化硬件的基本原理和實現(xiàn)技術,提出了一種基于可編程模擬器件的進化電路設計方法。
進化硬件;可編程模擬器件;進化算法
演化硬件(evolvable hardware,EHW)是如今仿真技術中比較熱門的一個研究方向,無論是模擬進化硬件還是數(shù)字進化硬件,其本質(zhì)都是利用演化算法改變可編程器件內(nèi)部資源的連接方式而形成具有特定功能的電路拓撲結(jié)構,演化算法作為電路進化的軟件基礎,而可編程器件作為電路進化的硬件載體,可概括為演化硬件=演化算法+可編程器件。因此,根據(jù)以上定義,我們可以將模擬EHW定義為模擬演化硬件=演化算法+可編程模擬器件。模擬EHW技術主要利用可編程模擬器件的電路結(jié)構可多次重構的優(yōu)點,其內(nèi)部模擬電路資源間通過大量可編程開關節(jié)點互連,并能夠通過編程接口控制其工作狀態(tài),通過智能的進化算法形成染色體,經(jīng)解碼后形成配置文件下載到器件中,能夠?qū)崿F(xiàn)既定功能的電路拓撲結(jié)構。因此在模擬EHW研究中進化算法和可編程模擬器件的研究并重,進化算法決定電路設計的規(guī)模和效率,模擬器件決定此方法的工程實現(xiàn),要注重二者的有機結(jié)合。
一般選擇演化算法作為全局優(yōu)化的主要工具,以期在解空間中尋找到目標解的過程。演化算法是一種模仿生物進化的搜索算法[1],它是從待解決問題解空間中的一個初始值開始,通過遺傳操作和適應度計算的迭代過程而得到最優(yōu)解。種群中每個個體攜帶遺傳物質(zhì)并對應于一染色體實體,染色體中遺傳編碼信息對應于一種電路結(jié)構,作為解空間內(nèi)的某一點,決定了此個體的獨特性質(zhì)和其外部表現(xiàn)形狀。初始種群選定之后,就按照優(yōu)勝劣汰的原則,通過遺傳操作和性能評估的方式,不斷進化直到進化出適應環(huán)境的最優(yōu)個體。在進化過程中,根據(jù)每個種群個體的適應度挑選出較適應環(huán)境的精英個體作為父代,并利用遺傳學中的遺傳算子對父代種群進行交叉和變異,產(chǎn)生出新的子代種群。像自然進化一樣將使染色體種群后代比前代種群更加適應環(huán)境,亦即更加符合電路功能要求或邏輯功能要求。在一定范圍內(nèi)越來越接近問題的最優(yōu)近似解。最后一代種群中的最優(yōu)個體經(jīng)過解碼映射后,可以作為問題最優(yōu)解或近似最優(yōu)解對電路編程實現(xiàn)最終的設定功能。
可編程模擬器件(programmable analog device,PAD)是一種新型的處理模擬信號的集成電路芯片,借助它可以快速、方便地設計模擬電路。它不但具有簡單高速、低價低功耗的優(yōu)勢,還能夠使用戶通過編程控制來配置其內(nèi)部器件和元件的參數(shù)而獲得所需的電路功能,因此,其特點可概括為易于設計、便于維護、環(huán)境適應性強。
可編程模擬器件的配置信息可以由外部控制單元由可編程接口輸入,而配置信息又是可以通過智能算法迭代計算獲取,進而自動高效地控制內(nèi)部器件的相關電氣參數(shù)和器件間的連接關系,內(nèi)部相關功能單元通過不同的組合形式完成特定的電路功能。因此,可編程模擬器件的設計可按圖1所示方式獲得此種可編程的能力,PAD的核心部件為可編程模擬計算單元(configurable analog block,CAB)和可編程互連網(wǎng)絡(programmable interconnection network,PIN),外圍資源包括配置數(shù)據(jù)存儲器(configuration data memory)、輸入輸出(input/output blocks,I/Os)單元等。
圖1 可編程模擬器件組成圖
模擬EHW技術主要基于PAD的在線重配置的特性,在線控制單元通過可編程接口將配置信息寫入配置數(shù)據(jù)存儲器,使得模擬單元實現(xiàn)電路拓撲結(jié)構的在線重構,并通過進化算法更改目標電路的功能。通常模擬EHW可分為外部進化和內(nèi)部進化兩種。前者是一種形式虛擬而功能實體的方式,即首先建立電子器件的模型,再把進化算法產(chǎn)生的染色體注入到模擬電子元器件的SPICE仿真模型里,形成具有某種功能的電路結(jié)構的描述文件,然后演化算法通過調(diào)用TCL腳本程序利用相應的仿真軟件對此電路描述文件進行仿真而得到其相應的電路響應,通常以SPICE為核心的電路仿真軟件為主,最后將電路響應和目標結(jié)果的波形進行比對,利用適應度計算方法對其進行評估,得到此電路所對應染色體個體的適應度以備遺傳操作的依據(jù),如果達不到既定電路運算的目標,則利用演化算法通過遺傳操作對父代種群進化產(chǎn)生新一代的染色體子代種群,重復前面的循環(huán)操作,直到找到能夠完成電路功能的最優(yōu)染色體。而內(nèi)部進化是一種在線操作,演化過程中產(chǎn)生的每一個染色體都要在實際器件內(nèi)進行適應度評估,所有染色體都將轉(zhuǎn)化為所對應的電路的配置信息,通過可編程接口直接下載到實際的器件中,控制單元通過通用接口記錄實際的電路輸出,在實際環(huán)境中評價每種電路結(jié)構的輸出性能。其基本流程如圖2所示。
圖2 模擬EHW實現(xiàn)方法的流程圖
通過軟件建立電路模型,產(chǎn)生初始染色體信息即電路的一種配置結(jié)構、評價染色體將個體所對應的電路進行評價、轉(zhuǎn)換電路模型完成每個染色體所對應的所有電路描述文件、評估電路響應與既定電路的輸出結(jié)果進行對比以及交叉、變異、精英保留等遺傳操作。智能進化算法是HereBoy算法,它主要是基于遺傳算法的模擬退火算法,在遺傳算法的基礎之上,融合了模擬退火算法的基本思想,綜合了遺傳操作和模擬退火兩者的優(yōu)點,收斂速度和全局優(yōu)化能力都較強。本文中所研究的天饋線駐波比的測試決定了阻抗的匹配程度,駐波比越接近“1”阻抗的匹配程度越好,如圖3是本文為改善阻抗匹配程度所設計的一個可調(diào)電路,通過進化算法自動調(diào)節(jié)電阻和電容,可以根據(jù)不同的天饋線自動實時得到阻抗最為匹配的電路。
對于EHW模擬電路演化設計,編碼實現(xiàn)了數(shù)字代碼序列與實際功能電路間的映射,合適的編碼方法簡便而高效,既降低演化算法操作染色體的負擔,又能易于解決大規(guī)模電路的設計問題,是借助于智能進化算法解決問題的前提條件[2],本文對器件的屬性參數(shù)采用了二進制編碼,染色體中的每一位只有1和0兩種狀態(tài),這易于計算機仿真實現(xiàn)。編碼元素是由數(shù)字1和0所組成的二值符號集{1,0},在與具體電路結(jié)構進行映射時,染色體每一位的每個符號對應于相應電路模型中某一位置上可編程開關的“打開”和“關閉”狀態(tài),因此,演化算法所需要操作的每個染色體一個相應的二進制編碼符號串,其對應于電路模型中各節(jié)點的一種連接形式,完成一定拓撲結(jié)構的電路功能。二進制符號串具有編解碼操作簡單的優(yōu)勢,無論是外進化還是內(nèi)進化研究都比較方便實用,并且易于演化算法進行的各種操作,如交叉和變異,交叉只需改變某些位的信息而不用數(shù)學運算,變異只需將相應位的信息進行翻轉(zhuǎn)操作。
適應度函數(shù)用于評價相應個體的適應度,是演化算法遺傳操作的重要依據(jù),其他的遺傳或變異細節(jié)都被適應度屏蔽,適應度既是進化操作的總結(jié),又決定著進化操作是否停止,決定了演化過程中算法在整個解空間的搜索方向,并且其效率和準確度也大大制約了算法的整體性能,因此適應函數(shù)在演化算法中的地位十分重要。函數(shù)的設計應具體情況具體分析,由電路的具體要求選取或設計出合適的適應度函數(shù)。例如本文所論及的功放適配電路就采用了電路中的反射回波的度量作為適應度函數(shù),見式(1)和式(2)。
圖3 求解駐波比可調(diào)電路圖
式(1)中:R為反射系數(shù);ZL為負載阻抗;Z0為特性阻抗。式(2)反映了圖3中求解的駐波比。適應度函數(shù)的值也就是反射系數(shù)R越小,駐波比ZWR的值就越接近1,電路的阻抗匹配也就越好。在算法中要限定R的值是非負的。
具體實現(xiàn)步驟如圖4所示。1)隨機產(chǎn)生初始種群的染色體;2)對所有染色體所對應的電路進行適應度評估,由具體的功能要求,根據(jù)公式(1)得到該具體電路的適應度值;3)由適應度判斷該個體是否滿足功能要求,是否可以終止演化;4)對適應度最高的染色體保留下來作為精英個體,對其進行交叉、變異等遺傳操作,以生成新的子代染色體個體替代父代個體;5)將子代染色體和精英個體保留作為新的種群,評估子代染色體個體的適應度;6)判斷新種群的有效性:如果子代染色體中有個體的適應度超過精英個體的適應度,則用子代染色體來代替精英個體并轉(zhuǎn)步驟3),否則,以精英個體重新進行遺傳操作。
在特定的電路中特性阻抗的值一般固定設置為50Ω或75Ω,在這里的電路中選擇了50Ω,在進化算法自動優(yōu)化調(diào)節(jié)的過程中,負載阻抗的值最終自動調(diào)節(jié)為46.5Ω,得出的駐波比為1.075,可以看出,通過進化算法自動調(diào)節(jié)負載阻抗的值可以是電路的阻抗達到很好的匹配。
圖4 主控程序流程圖
由于器件性能的非理想,計算結(jié)果與實際狀態(tài)會有差異,如果不加限制會導致電路不斷更新,陷入循環(huán)而影響工作。所以實際上是實測值在理論進化值的一定范圍內(nèi)(如±5%)就認為已經(jīng)進入了優(yōu)化狀態(tài),更新的周期也不宜過短。
給出了基于可編程模擬器件的演化硬件基本框架,較為全面地闡述了進化硬件實現(xiàn)的整個流程,并以實例說明了一個進化設計的思路。
[1]李敏強,寇紀淞,林 丹,等.遺傳算法的基本理論與應用[M].北京:科學出版社,2002.
[2]趙曙光,楊萬海.一種用于進化硬件的染色體編碼新方法[J].西安電子科技大學學報(自然科學版),2000,27(1):1-3.
TN6
A
1008-1542(2011)12-0060-03
2011-06-20;責任編輯:馮 民
郭 亮(1981-),男,江蘇鹽城人,工程師,碩士,主要從事智能信息處理方面的研究。