蔡金燕,朱 賽,孟亞峰
(軍械工程學(xué)院電子與光學(xué)工程系,河北石家莊 050003)
?
一種新型的仿生電子細(xì)胞基因存儲(chǔ)結(jié)構(gòu)
蔡金燕,朱 賽,孟亞峰
(軍械工程學(xué)院電子與光學(xué)工程系,河北石家莊 050003)
基因存儲(chǔ)是電子細(xì)胞的重要組成部分,已有的基因存儲(chǔ)無法兼顧系統(tǒng)的可靠性和硬件消耗.設(shè)計(jì)了一種新型的基因存儲(chǔ)結(jié)構(gòu),細(xì)胞采用相關(guān)冗余方式存儲(chǔ)系統(tǒng)的部分基因.通過基因更新過程,基于相鄰細(xì)胞的基因信息恢復(fù)故障細(xì)胞損失的基因.細(xì)胞內(nèi)存儲(chǔ)基因數(shù)目與陣列和目標(biāo)電路規(guī)模無關(guān),可由設(shè)計(jì)者根據(jù)系統(tǒng)需求設(shè)置.理論分析和仿真實(shí)驗(yàn)表明,該基因存儲(chǔ)不僅實(shí)現(xiàn)了陣列功能分化和自修復(fù),而且可在保持系統(tǒng)可靠性的前提下,降低基因存儲(chǔ)的硬件消耗,可用于大規(guī)模仿生自修復(fù)芯片的設(shè)計(jì).
胚胎電子陣列;自修復(fù);部分基因循環(huán)存儲(chǔ);基因移位;基因備份數(shù)目
電子學(xué)報(bào)URL:http://www.ejournal.org.cn DOI:10.3969/j.issn.0372-2112.2016.08.021
胚胎電子陣列是一種新型的仿生電子硬件,基于該硬件實(shí)現(xiàn)的目標(biāo)電路具有快速自修復(fù)能力[1].胚胎電子陣列中基本單位為仿生電子細(xì)胞,經(jīng)典的仿生電子細(xì)胞中,95%的硬件消耗來源于基因存儲(chǔ)[2],研究者以降低硬件消耗為目的,在全存儲(chǔ)基礎(chǔ)上,提出了多種基因存儲(chǔ)結(jié)構(gòu),如只存儲(chǔ)所在行/列表達(dá)基因的行/列存儲(chǔ)與循環(huán)變形存儲(chǔ)[3]、只存儲(chǔ)部分相鄰細(xì)胞表達(dá)基因的部分基因存儲(chǔ)[4]、只存儲(chǔ)自身和其后一個(gè)鄰居細(xì)胞的循環(huán)備份存儲(chǔ)[5]、原核存儲(chǔ)[6,7]等.
全存儲(chǔ)、行/列存儲(chǔ)、循環(huán)變形存儲(chǔ)及部分基因存儲(chǔ)中采用硬件冗余方式,硬件消耗大.同時(shí),用于通用自修復(fù)芯片設(shè)計(jì)時(shí),芯片內(nèi)存儲(chǔ)規(guī)模與芯片規(guī)模呈非線性增長關(guān)系,當(dāng)芯片規(guī)模較大時(shí),所需基因存儲(chǔ)規(guī)模巨大.循環(huán)備份存儲(chǔ)、原核存儲(chǔ)中采用相關(guān)冗余方式,降低了硬件消耗,但由于基因備份數(shù)目較少,系統(tǒng)可靠性較低.
水平基因轉(zhuǎn)移(Horizontal Gene Transfer,HGT)能跨越物種隔離,在親緣關(guān)系或遠(yuǎn)或近的生物有機(jī)體間進(jìn)行遺傳信息轉(zhuǎn)移.水平基因轉(zhuǎn)移能幫助受體生物繞過通過點(diǎn)突變和重組創(chuàng)造新基因的緩慢過程,從而加速基因組的革新和進(jìn)化[8].對(duì)于生物菌群,通過高效的基因水平轉(zhuǎn)移,遺傳物質(zhì)頻繁交換,其致病性和耐藥性不斷提高[9].
早期真核生物以單細(xì)胞形式存在,該階段的另一種形式的基因轉(zhuǎn)移—胞內(nèi)基因轉(zhuǎn)移(Intracellular Gene Transfer,IGT)對(duì)整個(gè)真核生物類群的進(jìn)化產(chǎn)生了深遠(yuǎn)影響[8].
受HTG和IGT現(xiàn)象的啟發(fā),提出了一種新型的基因存儲(chǔ)結(jié)構(gòu)—部分基因循環(huán)存儲(chǔ),該存儲(chǔ)采用相關(guān)冗余方式進(jìn)行基因存儲(chǔ),通過細(xì)胞的IGT、細(xì)胞間的HTG進(jìn)行基因操作,在自修復(fù)過程中根據(jù)周圍細(xì)胞進(jìn)行細(xì)胞存儲(chǔ)的更新,且基因備份數(shù)目可以根據(jù)實(shí)際需求設(shè)置,在保持系統(tǒng)可靠性的同時(shí),降低了基因存儲(chǔ)的硬件消耗.電子細(xì)胞只存儲(chǔ)自身和其后若干相鄰細(xì)胞的表達(dá)基因,所存儲(chǔ)的基因數(shù)目與陣列規(guī)模無關(guān),可用于大規(guī)模通用自修復(fù)芯片的設(shè)計(jì).
2.1 細(xì)胞及基因存儲(chǔ)結(jié)構(gòu)
部分基因循環(huán)存儲(chǔ)中,細(xì)胞內(nèi)存儲(chǔ)自身和其后連續(xù)k-1個(gè)細(xì)胞的表達(dá)基因,k為基因備份數(shù)目,根據(jù)目標(biāo)可靠性及硬件消耗需求在設(shè)計(jì)階段確定.對(duì)于具有n個(gè)細(xì)胞的陣列,第i個(gè)細(xì)胞的表達(dá)基因記為gi,1≤i≤n,則細(xì)胞Ci內(nèi)的存儲(chǔ)基因?yàn)間i~gi+k-1.
基于部分基因循環(huán)存儲(chǔ)的細(xì)胞結(jié)構(gòu)如圖1所示.由邏輯模塊(Logical Block,LB)、開關(guān)盒(Switch Box,SB)、內(nèi)建自測試(Built-In Self-Test,BIST)、基因存儲(chǔ)單元(Memory Unit)和狀態(tài)控制電路(State Control Circuit)組成.LB、SB和BIST采用已有研究成果[10],本文不再贅述.
圖1中所示Ci細(xì)胞結(jié)構(gòu)中,RunState為陣列運(yùn)行狀態(tài)信號(hào),當(dāng)RunState=0時(shí),陣列為功能分化狀態(tài),RunState為1時(shí),陣列處于運(yùn)行狀態(tài);Ci-1SE為細(xì)胞Ci-1的移位使能信號(hào),Ci-1SE=1,細(xì)胞Ci-1的存儲(chǔ)單元可以移位,否則,其存儲(chǔ)單元停止移位;Ci+1FS、Ci+2FS、…、Ci+k-1FS為其后相鄰的k-1個(gè)細(xì)胞的故障信號(hào),CjFS=1表示細(xì)胞Cj發(fā)生故障,否則,Cj正常.
基因存儲(chǔ)單元存儲(chǔ)細(xì)胞所需基因,GI為輸入基因,GO為輸出基因;基因存儲(chǔ)單元具有k個(gè)基因寄存器r1、r2、…、rk,每個(gè)寄存器存儲(chǔ)一個(gè)基因,且r1存儲(chǔ)細(xì)胞的表達(dá)基因;第i個(gè)寄存器ri的輸出為rio;寄存器的0位為基因標(biāo)記,rio(0)=0時(shí)ri內(nèi)為空閑基因,rio(0)=1時(shí)ri內(nèi)為功能基因;ri的輸入由2-1多路復(fù)用器Mi選擇,以控制存儲(chǔ)單元中基因的移動(dòng)方向.每個(gè)寄存器移位與否可單獨(dú)控制,其移位使能信號(hào)RiSE由第i個(gè)寄存器控制電路(Register Control Circuit,RC)RCi產(chǎn)生,RiSE=1時(shí)ri可以移位,否則ri不能移位.
狀態(tài)控制電路根據(jù)陣列狀態(tài)和其后k-1個(gè)后續(xù)細(xì)胞的狀態(tài)產(chǎn)生存儲(chǔ)單元的移位使能信號(hào)和移位控制信號(hào),控制存儲(chǔ)單元內(nèi)基因的移位,完成陣列的功能分化和自修復(fù).
2.2 陣列中的基因存儲(chǔ)串
陣列中相鄰細(xì)胞的GI端和GO端相連,組成圖2所示環(huán)狀結(jié)構(gòu),所有細(xì)胞內(nèi)的基因存儲(chǔ)構(gòu)成基因存儲(chǔ)串.
陣列具有一個(gè)母細(xì)胞,進(jìn)行與外界信息交互,如圖2中(1,1)細(xì)胞.母細(xì)胞通過2-1多路復(fù)用器M根據(jù)陣列運(yùn)行狀態(tài)信號(hào)RunState選擇輸入.當(dāng)陣列為功能分化狀態(tài),母細(xì)胞的輸入為基因配置串ConfGene;陣列處于運(yùn)行狀態(tài)時(shí)其輸入為基因存儲(chǔ)串末端細(xì)胞的輸出,整個(gè)陣列內(nèi)的基因存儲(chǔ)構(gòu)成環(huán)狀,進(jìn)行基因的傳遞.
2.3 基因移位
與IGT和HTG類似,陣列的分化及自修復(fù)通過細(xì)胞內(nèi)和細(xì)胞間基因移位完成.
細(xì)胞內(nèi)基因移位包括順時(shí)針非循環(huán)移位、順時(shí)針循環(huán)移位和逆時(shí)針循環(huán)移位,在移位控制信號(hào)CiS的控制下執(zhí)行.CiS=00時(shí),細(xì)胞進(jìn)行順時(shí)針非循環(huán)移位,在時(shí)鐘驅(qū)動(dòng)下,r1內(nèi)基因移至r2、r2內(nèi)基因移位至r3、…、rk-1內(nèi)基因移位至rk,rk上基因被覆蓋,如圖3(a)所示;CiS=01時(shí)執(zhí)行順時(shí)針循環(huán)移位,在順時(shí)針非循環(huán)移位的基礎(chǔ)上,rk上的基因移位到r1,如圖3(b)所示;當(dāng)CiS=1x時(shí),為逆時(shí)針循環(huán)移位模式,rk內(nèi)基因移至rk-1、rk-1內(nèi)基因移至rk-2、…、r2內(nèi)基因移位至r1、r1內(nèi)基因移位至rk,如圖3(c)所示.
順時(shí)針非循環(huán)移位中,通過控制寄存器的移位使能信號(hào),可以使部分寄存器參與移位.
細(xì)胞間基因的移位通過圖2所示基因存儲(chǔ)串進(jìn)行,通過GI接收前一細(xì)胞的輸入,并由GO將基因信息傳遞至后一細(xì)胞.
控制電路產(chǎn)生存儲(chǔ)單元的移位控制信號(hào)及寄存器移位使能信號(hào),完成陣列的功能分化和自修復(fù)過程,包括狀態(tài)控制電路和寄存器控制電路.
3.1 陣列的分化和自修復(fù)
3.1.1 陣列的分化過程
對(duì)于具有n個(gè)電子細(xì)胞、基因備份數(shù)目為k的陣列,分化所需基因配置串為g1g2…gng1g2…gk-1.
在陣列全局時(shí)鐘的控制下,基因配置串以gk-1到g1的次序送入母細(xì)胞,通過細(xì)胞間和細(xì)胞內(nèi)的移位將各細(xì)胞的表達(dá)基因移位至其r1寄存器,完成陣列的分化:細(xì)胞間基因由母細(xì)胞的GI開始,依次在C1、C2、…、Cn等細(xì)胞的r1寄存器上擴(kuò)散;同時(shí)陣列中所有細(xì)胞執(zhí)行順時(shí)針非循環(huán)移位,基因信息在細(xì)胞內(nèi)的r1、r2、…、rk寄存器上傳遞.經(jīng)過n+k個(gè)周期的移位,所有基因移位到相應(yīng)的寄存器中,陣列分化過程完成.
3.1.2 陣列的自修復(fù)過程
陣列的自修復(fù)是在控制細(xì)胞的控制下,通過細(xì)胞基因存儲(chǔ)的更新完成的.陣列中的每個(gè)細(xì)胞均具有控制能力,自修復(fù)過程中控制細(xì)胞及需要更新基因的細(xì)胞更新范圍確定規(guī)則如下:
規(guī)則1:當(dāng)陣列中出現(xiàn)一個(gè)故障細(xì)胞時(shí),位于故障細(xì)胞前的正常細(xì)胞為控制細(xì)胞,更新范圍包括位于故障細(xì)胞后的正常細(xì)胞及一個(gè)空閑細(xì)胞;
規(guī)則2:當(dāng)陣列中出現(xiàn)多個(gè)相鄰細(xì)胞故障時(shí),位于故障細(xì)胞前的正常細(xì)胞為控制細(xì)胞,更新范圍為位于故障細(xì)胞后的正常細(xì)胞及與故障細(xì)胞相同數(shù)目的空閑細(xì)胞;
規(guī)則3:當(dāng)陣列中出現(xiàn)兩個(gè)不相鄰的細(xì)胞同時(shí)發(fā)生故障時(shí),首先按照規(guī)則1對(duì)位置較為靠后的故障細(xì)胞進(jìn)行操作,操作完成后,再按照規(guī)則1對(duì)位置靠前的故障細(xì)胞進(jìn)行操作.
在控制細(xì)胞的控制下,陣列開始自修復(fù)過程:首先控制細(xì)胞計(jì)算其后k-1個(gè)細(xì)胞中故障細(xì)胞數(shù)目,記為fcn,fcn≤k-1,自身基因進(jìn)行fcn次逆時(shí)針循環(huán)移位;其次控制自身及更新范圍內(nèi)的細(xì)胞進(jìn)行基因更新,同時(shí)進(jìn)行fcn次移位,控制細(xì)胞進(jìn)行順時(shí)針循環(huán)移位,其他細(xì)胞進(jìn)行順時(shí)針非循環(huán)移位.
基因更新過程中,故障細(xì)胞處于“透明”狀態(tài),其基因存儲(chǔ)不參與移位,控制細(xì)胞內(nèi)的基因直接傳遞到故障后面的細(xì)胞;基因更新過程中,更新范圍內(nèi)細(xì)胞中空閑基因后的寄存器不參與移位.
通過以上操作,可以完成陣列的自修復(fù),耗時(shí)(fcn+fcn=2*fcn)個(gè)時(shí)鐘周期.
3.2 狀態(tài)控制電路
對(duì)于圖1所示Ci細(xì)胞,CCI為后方細(xì)胞控制角色信號(hào),CCI=1表示后方存在控制細(xì)胞,否則,后方細(xì)胞全部為非控制細(xì)胞;CCO為輸出控制角色信號(hào),該信號(hào)為前方細(xì)胞的CCI信號(hào).設(shè)置控制角色信號(hào)CE,CE=1則Ci為控制細(xì)胞,否則Ci不是控制細(xì)胞.
3.2.1 電子細(xì)胞狀態(tài)
由3.1節(jié)可知,基于本文基因存儲(chǔ)的電子細(xì)胞在運(yùn)行過程中具有功能分化、正常運(yùn)行及自修復(fù)三種狀態(tài).
陣列進(jìn)行3.1.1節(jié)所述的功能分化時(shí),所有細(xì)胞處于功能分化狀態(tài).基因配置信息由母細(xì)胞開始在基因配置串上的細(xì)胞及細(xì)胞內(nèi)部的寄存器間擴(kuò)散,所有細(xì)胞的存儲(chǔ)單元執(zhí)行順時(shí)針非循環(huán)移位操作;
陣列無故障運(yùn)行過程中,所有細(xì)胞處于正常運(yùn)行狀態(tài),執(zhí)行3.1.2所述控制細(xì)胞判斷狀態(tài),細(xì)胞存儲(chǔ)單元無操作;
陣列中細(xì)胞發(fā)生故障時(shí),控制細(xì)胞及更新范圍內(nèi)的細(xì)胞轉(zhuǎn)至自修復(fù)狀態(tài),狀態(tài)控制電路產(chǎn)生控制信號(hào)完成修復(fù)過程所需基因移位操作.
3.2.2 狀態(tài)控制電路功能與實(shí)現(xiàn)
為了完成細(xì)胞整個(gè)生命周期的控制,狀態(tài)控制電路需要具有控制角色判斷、存儲(chǔ)單元控制功能.
正常運(yùn)行狀態(tài)下,狀態(tài)控制電路根據(jù)控制角色判斷規(guī)則進(jìn)行控制角色信號(hào)的生成,由3.2.1節(jié)可知,角色判斷功能為
(1)
功能分化、自修復(fù)狀態(tài)下,進(jìn)行各種基因操作,的狀態(tài)控制電路在陣列運(yùn)行狀態(tài)信號(hào)RunState、細(xì)胞控制角色信號(hào)CE、前面細(xì)胞移位使能信號(hào)Ci-1SE及其狀態(tài)信號(hào)Ci-1ST決定存儲(chǔ)單元的移位使能信號(hào)CiSE.具體規(guī)則如表1所示.
表1 存儲(chǔ)單元移位使能信號(hào)確定規(guī)則
細(xì)胞狀態(tài)信號(hào)Ci-1ST=0時(shí),細(xì)胞處于空閑狀態(tài),其表達(dá)基因?yàn)榭臻e基因,Ci-1ST=1時(shí)細(xì)胞處于激活狀態(tài),其表達(dá)基因?yàn)楣δ芑?因此細(xì)胞的狀態(tài)信號(hào)與其表達(dá)基因的標(biāo)志一致,有Ci-1ST=Ci-1r1o(0).則狀態(tài)控制電路中移位使能信號(hào)產(chǎn)生電路功能為
(2)
自修復(fù)過程中,控制細(xì)胞、更新范圍內(nèi)細(xì)胞進(jìn)行基因移位時(shí),移位次數(shù)與故障細(xì)胞數(shù)目相關(guān),故障細(xì)胞數(shù)目fcn計(jì)算為
fcn=Ci+1FS+Ci+1FS*Ci+2FS+…
+Ci+1FS*Ci+2FS*…*Ci+k-1FS
(3)
移位過程中,使用計(jì)數(shù)器進(jìn)行移位次數(shù)的計(jì)數(shù).在更新準(zhǔn)備階段,到移位次數(shù)達(dá)到fcn時(shí),停止移位,開始基因更新階段,并重新開始計(jì)數(shù),當(dāng)再次計(jì)數(shù)到fcn時(shí),自修復(fù)完成.
為了避免同時(shí)出現(xiàn)兩個(gè)控制細(xì)胞,陣列中一旦出現(xiàn)控制細(xì)胞,便將控制細(xì)胞信號(hào)向前傳遞,由下式實(shí)現(xiàn)
CCO=CCI+CE
(4)
實(shí)現(xiàn)上述功能的狀態(tài)控制電路如圖4所示.
3.3 寄存器控制電路
在功能分化及自修復(fù)過程中的控制細(xì)胞準(zhǔn)備階段,細(xì)胞所有的基因存儲(chǔ)寄存器均參與移位.在自修復(fù)過程的基因更新階段,非控制細(xì)胞內(nèi)空閑基因后的寄存器不參與移位,需要寄存器控制電路根據(jù)細(xì)胞狀態(tài)及前方寄存器移位狀態(tài)產(chǎn)生相應(yīng)的寄存器移位控制信號(hào).
對(duì)于細(xì)胞中的第i個(gè)基因存儲(chǔ)寄存器,其移位使能信號(hào)RiSE由陣列狀態(tài)信號(hào)RunState、細(xì)胞控制角色信號(hào)CE和第i-1個(gè)寄存器移位狀態(tài)Ri-1SE及其基因標(biāo)識(shí)ri-1o(0)確定,其確定規(guī)則如表2所示.
當(dāng)i=1時(shí),即對(duì)于細(xì)胞內(nèi)的第一個(gè)基因存儲(chǔ)寄存器,其移位使能信號(hào)由RunState、CE和存儲(chǔ)單元移位使能信號(hào)CiSE確定.
表2 寄存器控制電路功能表
則基因寄存器移位控制電路功能為
(5)
結(jié)合所提基因存儲(chǔ)在自修復(fù)過程中的特點(diǎn),對(duì)其可靠性、硬件消耗及在大規(guī)模通用自修復(fù)芯片中的應(yīng)用進(jìn)行了分析.分析過程中設(shè)陣列規(guī)模為M×N,目標(biāo)電路規(guī)模為m×n,基因?qū)挾葹閣.
4.1 可靠性分析
根據(jù)自修復(fù)過程的基因更新特征,設(shè)每個(gè)細(xì)胞可靠性符合指數(shù)分布,即r(t)=e-λt,自修復(fù)過程中采用列移除自修復(fù),則系統(tǒng)可靠性函數(shù)[11]為
(6)
其中Rrr(t)=r(t)m=e-mλt為每一行的可靠度.
系統(tǒng)的失效前平均時(shí)間(Mean Time to Failure,MTTF) MTTFtrr為
(7)
對(duì)于規(guī)模為20*20的目標(biāo)電路,當(dāng)其在20*30、20*40、20*50、20*60、20*70、20*80等不同規(guī)模的陣列上實(shí)現(xiàn),且基因備份數(shù)目在[2,20]變化時(shí),系統(tǒng)MTTF的變化如圖5所示.
由圖5可以看出,系統(tǒng)的MTTF與陣列規(guī)模和基因備份數(shù)目相關(guān).當(dāng)陣列規(guī)模越大時(shí),系統(tǒng)中冗余行/列數(shù)目越大,其MTTF越大,這一特性與已有基因存儲(chǔ)是一致的.
由于具有基因更新過程,當(dāng)基因備份數(shù)目較小時(shí),系統(tǒng)MTTF隨基因備份數(shù)目的增加而快速升高,當(dāng)基因備份數(shù)目稍大時(shí),系統(tǒng)MTTF趨于穩(wěn)定.
已有的循環(huán)備份基因存儲(chǔ)和原核基因存儲(chǔ)也存在基因更新過程,但其基因備份數(shù)目為2,由圖5可知,其系統(tǒng)MTTF較低.而本文基因存儲(chǔ)可以任意設(shè)置基因備份數(shù)目,通過將基因備份數(shù)目設(shè)置為5~10,可以在較小的基因備份數(shù)目下取得較大的系統(tǒng)可靠性,使得本文基因存儲(chǔ)避免了循環(huán)備份基因存儲(chǔ)和原核基因存儲(chǔ)中系統(tǒng)可靠性低的問題.
4.2 硬件消耗分析
本文基因存儲(chǔ)的硬件消耗主要包括兩部分:基因存儲(chǔ)和控制電路,首先對(duì)基因存儲(chǔ)和控制電路在Xilinx ISE 12.2中進(jìn)行了實(shí)現(xiàn),通過綜合分析了其硬件消耗,其次根據(jù)硬件消耗模型,分析了基因存儲(chǔ)的硬件消耗MOS管數(shù)目.
4.2.1 控制電路硬件消耗分析
為了研究控制電路硬件消耗,在Xilinx ISE 12.2中對(duì)控制電路和基因存儲(chǔ)進(jìn)行了實(shí)現(xiàn),并通過XST進(jìn)行了電路綜合,統(tǒng)計(jì)綜合后使用Slice、FF及LUT數(shù)目.
通過3.2節(jié)可知,控制電路只與基因備份數(shù)目k相關(guān),而與基因?qū)挾葁無關(guān);而基因存儲(chǔ)與基因備份數(shù)目和基因?qū)挾染嚓P(guān).因此,在不同的基因備份數(shù)目、基因?qū)挾认逻M(jìn)行了基因存儲(chǔ)的實(shí)現(xiàn).設(shè)基因備份數(shù)目分別為4、8、16、32、64和128,基因?qū)挾确謩e為32、64、128,基因存儲(chǔ)和控制電路的硬件消耗如表3所示.
由表3所示不同基因備份數(shù)目和基因?qū)挾认麓鎯?chǔ)單元和控制單元硬件消耗可以看出,存儲(chǔ)單元的硬件消耗隨著基因備份數(shù)目和基因?qū)挾鹊脑黾佣黾?這是由于隨著基因備份數(shù)目、基因?qū)挾鹊脑黾?存儲(chǔ)單元中需要的寄存器數(shù)目相應(yīng)增加造成的,因此硬件消耗中FF數(shù)目隨著基因備份數(shù)目、基因?qū)挾仍黾用黠@,而存儲(chǔ)單元中邏輯電路消耗較少,且隨基因?qū)挾茸兓淮?如表3中4-LUT數(shù)目;控制電路的硬件消耗隨著基因備份數(shù)目的增加而增加,FF消耗數(shù)目較少,而邏輯電路所消耗4-LUT數(shù)目隨著基因備份數(shù)目的增加而顯著增加,這是由于控制電路中計(jì)算式(3)與基因備份數(shù)目相關(guān)造成的,當(dāng)基因備份數(shù)目較大時(shí),式(3)的計(jì)算需要較大的邏輯電路完成.
當(dāng)基因備份數(shù)目較小時(shí),控制電路硬件消耗與基因存儲(chǔ)的硬件消耗比較小,如k≤16時(shí),消耗比低于6.6%,當(dāng)基因備份數(shù)目較大時(shí),控制電路硬件消耗增加,當(dāng)k=64,w=32時(shí),消耗比達(dá)到16.3%,其余均在15%以下.
表3 基因存儲(chǔ)與控制電路的硬件消耗
通過選擇較小的基因備份數(shù)目,可以在保持系統(tǒng)可靠性變化不大的情況下降低基因存儲(chǔ)的硬件消耗,同時(shí)降低控制電路的硬件消耗.當(dāng)基因備份數(shù)目小于16時(shí),控制電路的硬件消耗可以忽略不計(jì).
4.2.2 基因存儲(chǔ)消耗分析
本文存儲(chǔ)結(jié)構(gòu)基于寄存器實(shí)現(xiàn),使用MOS管數(shù)目計(jì)算基因存儲(chǔ)的硬件消耗,其計(jì)算模型[11]為
H=M*N*k*w*24
(8)
對(duì)于5.1節(jié)的目標(biāo)電路,若陣列基因?qū)挾葹?7[10],則硬件消耗如圖6所示.
由圖6可以看出,消耗MOS管數(shù)目隨著基因備份數(shù)目的增加而線性上升,且陣列規(guī)模越大,其上升速度越快.
結(jié)合圖5可以看出,通過選擇較小的基因備份數(shù)目,可以在保持較大的系統(tǒng)MTTF的情況下降低系統(tǒng)的硬件消耗.
4.3 大規(guī)模自修復(fù)芯片中的應(yīng)用分析
仿生電子細(xì)胞一個(gè)重要研究目的是研制具有自修復(fù)能力的通用仿生芯片,其上運(yùn)行的目標(biāo)電路規(guī)模不確定,有1≤m≤M,1≤n≤N.為了支持不確定規(guī)模的目標(biāo)電路運(yùn)行,細(xì)胞內(nèi)所需基因存儲(chǔ)規(guī)模有:
全存儲(chǔ):max(m*n);
行列存儲(chǔ)存儲(chǔ):max(n);
部分基因存儲(chǔ):max((M-m+1)*(N-n+1));
循環(huán)變形存儲(chǔ):max(n);
則不同存儲(chǔ)用于設(shè)計(jì)通用自修復(fù)芯片時(shí),細(xì)胞內(nèi)及陣列內(nèi)所需基因存儲(chǔ)規(guī)模如表4所示.
由表4可以看出,全存儲(chǔ)、行/列存儲(chǔ)、部分基因存儲(chǔ)和循環(huán)變形存儲(chǔ)細(xì)胞內(nèi)存儲(chǔ)規(guī)模與陣列規(guī)模相關(guān),芯片中所需基因存儲(chǔ)規(guī)模與陣列規(guī)模呈非線性增加關(guān)系;循環(huán)備份存、原核存儲(chǔ)及本文存儲(chǔ)中細(xì)胞內(nèi)存儲(chǔ)規(guī)模為常數(shù),與陣列規(guī)模無關(guān),芯片中所需基因存儲(chǔ)規(guī)模與陣列規(guī)模成線性增長關(guān)系.
當(dāng)芯片規(guī)模從10*10到100*100變化,分別采用全存儲(chǔ)、行/列存儲(chǔ)、部分基因存儲(chǔ)、循環(huán)變形存儲(chǔ)、循環(huán)備份存儲(chǔ)、原核細(xì)胞存儲(chǔ)及本文存儲(chǔ)時(shí),且采用本文存儲(chǔ)時(shí),基因備份數(shù)目k取10,芯片中存儲(chǔ)規(guī)模如圖7所示.
由圖7可以看出,當(dāng)芯片行/列數(shù)目從10增加到100,即芯片中細(xì)胞數(shù)目增加100倍時(shí),全存儲(chǔ)、部分基因存儲(chǔ)的規(guī)模從104增加到108,增加了104倍;行/列存儲(chǔ)、循環(huán)變形存儲(chǔ)從103增加到106,增加了103倍;循環(huán)變形存儲(chǔ)、原核存儲(chǔ)從2*102增加到2*104,增加了100倍;本文存儲(chǔ)在基因備份數(shù)目k=10時(shí),基因存儲(chǔ)規(guī)模由103增加到105,增加了100倍.當(dāng)芯片行/列數(shù)目為100時(shí),全存儲(chǔ)、部分基因存儲(chǔ),行/列存儲(chǔ)、循環(huán)變形存儲(chǔ),本文存儲(chǔ)(k=10),循環(huán)備份存儲(chǔ)、原核存儲(chǔ)所需存儲(chǔ)規(guī)模比例為108∶106∶105∶2*104,即104∶102∶10∶2=104∶102∶k∶2.
表4 芯片中存儲(chǔ)規(guī)模
采用本文基因存儲(chǔ)結(jié)構(gòu)在Xilinx ISE 12.2環(huán)境中對(duì)文獻(xiàn)[4]中的半加器進(jìn)行實(shí)現(xiàn),陣列規(guī)模為6行5列,并利用ISE自帶的仿真軟件ISim對(duì)功能分化及自修復(fù)過程進(jìn)行仿真.
實(shí)驗(yàn)中以第一列細(xì)胞為觀察對(duì)象,記為C1、C2、C3、C4、C5、C6,其表達(dá)基因分別為3207、3079、903、903、4097、4097,其中4097為空閑基因,C5、C6為空閑細(xì)胞.為了對(duì)功能基因和空閑基因進(jìn)行識(shí)別,需要增加基因標(biāo)志位,實(shí)際存儲(chǔ)基因?yàn)?415、6159、1807、1807、8194、8194.基因備份數(shù)目k設(shè)置為4.實(shí)驗(yàn)中監(jiān)測細(xì)胞基因存儲(chǔ)器內(nèi)容及關(guān)鍵控制信號(hào),Cirj為第i個(gè)細(xì)胞的第j個(gè)寄存器存儲(chǔ)內(nèi)容;CirjCE為第i個(gè)細(xì)胞內(nèi)第j個(gè)寄存器的移位控制信號(hào).
5.1 陣列的功能分化及單細(xì)胞故障自修復(fù)
按照3.1.1節(jié)基因配置串規(guī)則,分化過程所需輸入配置ConfGene為1807、6159、6415、8194、8194、1807、1807、6159、6415.230ns陣列的狀態(tài)控制信號(hào)RunState置為0,開始功能分化.在時(shí)鐘clk的驅(qū)動(dòng)下,配置基因依次送入母細(xì)胞,并由母細(xì)胞的r1寄存器開始在陣列上按照3.1節(jié)規(guī)則擴(kuò)散.430ns,細(xì)胞表達(dá)基因均存入其第一個(gè)基因寄存器中,且細(xì)胞內(nèi)另外三個(gè)寄存器存儲(chǔ)后續(xù)三個(gè)細(xì)胞的表達(dá)基因,陣列分化完成,耗時(shí)10個(gè)時(shí)鐘周期.具體過程如圖8所示.
在陣列運(yùn)行過程中,480ns C2細(xì)胞故障,自檢單元發(fā)出細(xì)胞故障信號(hào),C2FS置為高,開始自修復(fù)過程:
(1)C1為修復(fù)控制細(xì)胞,進(jìn)行一個(gè)周期的逆時(shí)針循環(huán)移位,如500ns所示;
(2)C1進(jìn)行一次順時(shí)針循環(huán)移位,同時(shí)陣列中的C3、C4、C5進(jìn)行一次順時(shí)針非循環(huán)移位,如520ns所示.
至520ns,故障細(xì)胞C2的表達(dá)基因6159移至C3的r1寄存器,由C3細(xì)胞表達(dá),C3、C4的功能分布由C4、C5執(zhí)行,完成故障的自修復(fù),耗時(shí)2個(gè)時(shí)鐘周期.
5.2 相鄰多細(xì)胞故障的自修復(fù)
480ns相鄰的C2、C3細(xì)胞故障,細(xì)胞故障信號(hào)C2FS、C3FS置為高.C1轉(zhuǎn)變?yōu)榭刂萍?xì)胞,控制完成整個(gè)自修復(fù)過程,如圖9所示.
首先,C1內(nèi)基因信息逆時(shí)針循環(huán)移位兩次,為基因更新做準(zhǔn)備,如480ns~520ns所示;然后C1和更新范圍內(nèi)細(xì)胞同時(shí)進(jìn)行兩次順時(shí)針循環(huán)移位和順時(shí)針非循環(huán)移位,完成基因的更新,如520ns~560ns所示.
至560ns,故障細(xì)胞C2、C3功能由其后的C4、C5執(zhí)行,C4的表達(dá)基因1807移至C6細(xì)胞的r1寄存器,由C6表達(dá),陣列完成自修復(fù),耗時(shí)4個(gè)時(shí)鐘周期.
通過實(shí)驗(yàn)可以看出,所設(shè)計(jì)的部分基因循環(huán)存儲(chǔ)通過細(xì)胞內(nèi)和細(xì)胞間基因移位,能夠完成陣列的分化和自修復(fù),且分化、自修復(fù)時(shí)間較短.
設(shè)計(jì)了一種新型的基因存儲(chǔ)方式—部分基因循環(huán)存儲(chǔ),采用了相關(guān)冗余進(jìn)行基因存儲(chǔ),細(xì)胞只存儲(chǔ)系統(tǒng)的部分基因,自修復(fù)過程中通過相鄰細(xì)胞的基因存儲(chǔ)進(jìn)行基因更新,更新過程中無需故障細(xì)胞參與,可適用于細(xì)胞的多種故障的自修復(fù).
模仿生物的HTG和IGT現(xiàn)象,所提出的基因存儲(chǔ)通過細(xì)胞間、細(xì)胞內(nèi)的基因移位進(jìn)行陣列的功能分化和自修復(fù),分化耗時(shí)(細(xì)胞個(gè)數(shù)+基因備份數(shù)目)個(gè)時(shí)鐘周期,自修復(fù)耗時(shí)(故障細(xì)胞數(shù)目*2)個(gè)時(shí)鐘周期,分化過程迅速,而自修復(fù)時(shí)耗與故障細(xì)胞數(shù)目相關(guān),耗時(shí)極短.
該基因存儲(chǔ)中基因備份數(shù)目與目標(biāo)電路和陣列的規(guī)模無關(guān),通過選擇基因備份數(shù)目,可在保持系統(tǒng)可靠性的基礎(chǔ)上降低硬件消耗.且系統(tǒng)中基因存儲(chǔ)規(guī)模與陣列規(guī)模成線性關(guān)系增加,可用于大規(guī)模通用芯片的設(shè)計(jì).
[1]郝國峰,王友仁,張砦,等.可重構(gòu)硬件芯片級(jí)故障定位與自主修復(fù)方法[J].電子學(xué)報(bào),2012,40(2):384-388.
HAO Guo-feng,WANG You-ren,ZHANG Zhai,et al.In-chip fault localization and self-repairing method for reconfigurable hardware[J].Acta Electronica Sinica,2012,40(2):384-388.(in Chinese)
[2]A H Jackson,R Canham,A M Tyrrell.Robot fault-tolerance using an embryonic array[A].Proceedings of the 2003 NASA/Dod Conference on Evolvable Hardware[C].Los Alamitos:IEEE Comput Soc,2003,91-100.
[3]M Samie,E Farjah,G Dragffy.Cyclic metamorphic memory for cellular bio-inspired electronic systems[J].Genet Program Evol M,2008,9(3):183-201.
[4]X Zhang,G Dragffy,A G Pipe,et al.Partial-DNA supported artificial-life in an embryonic array[A].Proceedings of the International Conference on VLSI[C].Avon:Csrea Pressathens,2004,203-208.
[5]Xu Guili,Xia Zhenghao,Wang Haibin,et al.Design of embryo-electronic systems capable of self-diagnosing and self-healing and configuration control[J].Chinese Journal of Aeronautics,2009,22(6):637-643.
[6]李岳,王南天,錢彥嶺.原核細(xì)胞仿生自修復(fù)電路設(shè)計(jì)[J].國防科技大學(xué)學(xué)報(bào),2012,34(3):154-157.
LI Y,WANG N T,QIAN Y L.Self-healing circuit design inspired by prokaryotic cell[J].Journal of National University of Defense Technology,2012,34(3):154-157(in Chinese).
[7]M Samie,G Dragffy,A M Tyrrell,et al.Novel bio-inspired approach for fault-tolerant VLSI systems[J].IEEE T VLSI Syst,2012,21(10):1878-1891.
[8]王洽,樂霽培,張?bào)w操,等.水平基因轉(zhuǎn)移在生物進(jìn)化中的作用.科學(xué)通報(bào),2014,59:2055-2064.
WANG Q,YUE J P,ZHANG T C,et al.Horizontal gene transfer provides new insights into biological evolution[J].Chin Sci Bull (Chin Ver),2014,59:2055-2064.(in Chinese)
[9]張瑞福,蔣建東,代先祝,等.環(huán)境中污染物降解基因的水平轉(zhuǎn)移(HGT)及其在生物修復(fù)中的作用[J].遺傳,2005,27(5):845-851.
ZHANG Rui-fu,JIANG Jian-dong,DAI Xian-zhu,et al.Horizontal transfer of environmental pollutant-degrading gene and application in bioremediation[J].Hereditas,2005,27(5):845-851.(in Chinese)
[10]S Zhu,J Y Cai,Y F Meng,et al,A novel structure of embryonics electronic cell array[J].WSEAS Trans Cir Syst,2014,13:224-232.
[11]朱賽, 蔡金燕, 孟亞峰, 等 . 胚胎電子細(xì)胞中基因備份數(shù)目優(yōu)選方法[J/OL]. 北京航空航天大學(xué)學(xué)報(bào),http://www.cnki.net/kcms/detail/11.2625.V.20150617.1132.003.html, 2015-06-20.
Zhu S,Cai J Y,Meng Y F,et al. Gene backup number selection method for embryonics cell[J/OL].Journal of Beijing University of Aeronautics and Astronautics, http://www.cnki.net/kcms/detail/11.2625.V.20150617.1132.003.html,2015-06-20.(in Chinese)
蔡金燕 女,1961年生于天津.教授,博士生導(dǎo)師.研究方向?yàn)殡娮酉到y(tǒng)性能檢測與故障診斷、電子系統(tǒng)可靠性分析與設(shè)計(jì)及電子系統(tǒng)仿生自修復(fù)設(shè)計(jì).
E-mail:radarc@126.com
朱 賽 男,1987年生于河南鄲城.博士研究生,研究方向?yàn)殡娮酉到y(tǒng)仿生自修復(fù)設(shè)計(jì).
A Novel Gene Memory Structure for Bio-inspired Electronic Cell
CAI Jin-yan,ZHU Sai,MENG Ya-feng
(DepartmentofElectronicandOpticalEngineering,OrdnanceEngineeringCollege,Shijiazhuang,Hebei050003,China)
Gene memory is an important part of electronic cell,and the existing genes memory structure cannot take into account the reliability and hardware cost.A novel gene memory structure named partial-DNA cyclic memory was presented,and only part of the system’s entire DNA was stored with correlated redundancy.The lost genes caused by faulty cells could be obtained through gene update according to the faulty cells’ neighbor cells.The stored gene number is independent form the scale of embryonics array and target circuit,and can be set according to actual demand in design process.Theoretical analysis and simulation results show that the novel gene memory not only to achieve the embryonics array’s functional differentiation and self-repair,but also reducing hardware overhead while keeping system reliability.The proposed gene memory can be used to design larger scale self-repair chip.
embryonics array;self-repair;partial-DNA cyclic memory;gene shift;gene backup number
2014-12-06;
2015-08-02;責(zé)任編輯:藍(lán)紅杰
國家自然科學(xué)基金(No.61372039,No.61271153)
TP302.8
A
0372-2112 (2016)08-1915-09