国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

利用局部刷新技術(shù)提高FPGA運(yùn)行穩(wěn)定性

2018-02-26 04:46:44于志成劉克李亮
電子技術(shù)與軟件工程 2018年14期
關(guān)鍵詞:中斷處理器重構(gòu)

于志成 劉克 李亮

摘要 衛(wèi)星作為重要的航天器之一,在很多領(lǐng)域中都發(fā)揮了很大的作用,具有代表性的就是信息傳遞、軍事偵察等領(lǐng)域。局部刷新技術(shù)是SRAM型FPGA一種新興的可重配置技術(shù),它的出現(xiàn)適應(yīng)了現(xiàn)代衛(wèi)星的發(fā)展需求,在本文中,通過(guò)重配置手段,實(shí)現(xiàn)了對(duì)基礎(chǔ)的嵌入式系統(tǒng)的設(shè)計(jì),此系統(tǒng)是以FPGA為前提所構(gòu)成的,同時(shí),對(duì)于微處理器MicroBlaze、AXI總線以及ICAP控制器的使用,進(jìn)行了一定的分析,最后,通過(guò)硬件平臺(tái)的安裝,確保了可重配置系統(tǒng)的順利運(yùn)行,并實(shí)施了對(duì)軟件的開(kāi)發(fā)等工作,具體為定時(shí)器、IGAP、GPIO以及串口接收和發(fā)送模塊,在設(shè)計(jì)內(nèi)所選擇的設(shè)計(jì)措施,主要為基于EAPR的部分重配置的設(shè)計(jì)方法。結(jié)果表明局部刷新技術(shù)是一種對(duì)抗宇宙空間單粒子效應(yīng)的有效方法,能極大提高航天器的運(yùn)行穩(wěn)定性。

【關(guān)鍵詞】動(dòng)態(tài)局部自重構(gòu) 片上可編程系統(tǒng)內(nèi)部配置接口

在科學(xué)技術(shù)不斷發(fā)展的今天,數(shù)字電路系統(tǒng)的設(shè)計(jì)也隨之進(jìn)步,規(guī)模不斷擴(kuò)大,并且也能夠更加穩(wěn)定、可靠的運(yùn)行,而宇宙空間中的復(fù)雜環(huán)境也對(duì)航天器的可靠新提出了更高的要求,如何提高電子系統(tǒng)的抗單粒子性能一直是航天工作人員努力的方向。

1 系統(tǒng)運(yùn)行穩(wěn)定性簡(jiǎn)介

就系統(tǒng)運(yùn)行的穩(wěn)定性來(lái)看,其主要為系統(tǒng)于一定環(huán)境重,能夠于一定時(shí)間中依照已有要求實(shí)現(xiàn)相應(yīng)功能的概率。提高系統(tǒng)運(yùn)行穩(wěn)定性的方法總的來(lái)說(shuō)有兩種:一種是故障預(yù)防,另一種是故障容錯(cuò)。故障預(yù)防是指采取措施防止故障的產(chǎn)生,如使用防輻射指數(shù)較高的芯片和元器件,但就現(xiàn)實(shí)來(lái)看,無(wú)法實(shí)現(xiàn)一致故障,所以,必須最大程度的取降低出現(xiàn)故障的概率。就故障容錯(cuò)來(lái)看,其主要為通過(guò)冗余的元件或模塊,來(lái)進(jìn)行對(duì)己出現(xiàn)故障的屏蔽,進(jìn)而確保系統(tǒng)的運(yùn)行,如數(shù)傳接口、時(shí)鐘信號(hào)或同步信號(hào)的主備份設(shè)計(jì),目的就在于一旦主份設(shè)計(jì)發(fā)生故障并失效,可以馬上啟動(dòng)備用設(shè)計(jì),不至于設(shè)備完全失效。

可以說(shuō),若某系統(tǒng)于產(chǎn)生部分運(yùn)行性故障的情況下,可以通過(guò)系統(tǒng)中內(nèi)駐的能力,確保系統(tǒng)能夠?qū)崿F(xiàn)對(duì)命令的執(zhí)行,發(fā)揮它的程序與輸出功能,那么就可以把這一系統(tǒng)看為故障容錯(cuò)系統(tǒng)。

基于SRAM技術(shù)的FPGA,利用對(duì)芯片重新布局布線和網(wǎng)表數(shù)據(jù)的重載,來(lái)完成對(duì)芯片邏輯功能的相應(yīng)操作,也就是使其現(xiàn)場(chǎng)重構(gòu)。近年來(lái),隨著FPGA工藝和技術(shù)的不斷進(jìn)步,器件結(jié)構(gòu)改進(jìn)和緩存邏輯的概念被提出,使得FPGA的局部重構(gòu)手段能夠進(jìn)一步的創(chuàng)新發(fā)展,確保了航天電子系統(tǒng)的穩(wěn)定性得以提升,

2 FPGA局部刷新的理論依據(jù)

就SRAM型FPGA來(lái)看,其中存在各種資源,具體有配置邏輯塊(CLB)、輸入輸出塊(IOB)、block RAM、時(shí)鐘資源和編程布線等資源。通過(guò)CLB,能夠有效確保用戶所需邏輯功能單元的產(chǎn)生,而通過(guò)IOB,則可以帶來(lái)封裝引腳和內(nèi)部信號(hào)引線的接口。利用可編程互聯(lián)網(wǎng)資源,能夠以布線通道連接可配置原件的輸入和輸出到相應(yīng)的網(wǎng)絡(luò),而FPGA完成的邏輯功能,以及其互聯(lián)方式,都和存儲(chǔ)于內(nèi)部靜態(tài)存儲(chǔ)單元的數(shù)值有著很大關(guān)聯(lián),利用配置比特率,確保了此邏輯功能的發(fā)揮,在配置比特率中,存在著配置命令以及數(shù)據(jù)。

就SRAM型FPGA來(lái)看,其配置存儲(chǔ)器的主要構(gòu)成,通常為配置列(ConfigurationColumns)來(lái)實(shí)現(xiàn),在排列方式上,該配置列表現(xiàn)為垂直陣列,具體見(jiàn)圖1。在配置存儲(chǔ)器內(nèi),存在著不同的配置列,分別是表現(xiàn)為Center列、兩個(gè)IOB列、CLB列存儲(chǔ)、BlockSelectRAM Content列以及Block SelectRAMInterconnect列,它們所存儲(chǔ)的信息也存在著差異,分別存儲(chǔ)著四個(gè)全局時(shí)鐘的配置信息、位于其間左邊和右邊所有IOB的配置信息、FPGA基本邏輯功能的配置信息、內(nèi)部塊RAM的配置信息以及內(nèi)部塊RAM間互聯(lián)的配置信息。

在配置列內(nèi)所存儲(chǔ)的數(shù)據(jù),就其構(gòu)成來(lái)看,通常是由配置幀(Configuration Frames)的措施來(lái)實(shí)現(xiàn)的。就配置幀來(lái)看,具體表現(xiàn)為一位比特寬、垂直排列的配置的那遠(yuǎn),每一個(gè)配置列內(nèi),所存在的配置幀數(shù)量都是差異的,在配置存儲(chǔ)器內(nèi),配置幀為其能夠讀寫(xiě)的最小單位,所以,實(shí)現(xiàn)局部刷新的最小單元式配置幀。

在FPGA中,通過(guò)分配于配置列的配置地址,來(lái)進(jìn)行對(duì)配置列的尋址。就FPGA地址空間來(lái)看,它可具體劃分成兩種不同地址,也就是主地址與次地址,在FPGA中,所有的配置列均存在著唯一的主地址空間,在配置列內(nèi),相應(yīng)的,所有配置幀均存在著唯一的子地址空間。

為確保可以將配置幀更加順利的存儲(chǔ)進(jìn)正確的配置空間,就要合理的使用配置寄存器。利用FPGA的配置數(shù)據(jù)線,能夠進(jìn)行對(duì)內(nèi)部配置寄存器的讀寫(xiě),以確保均布刷新配置功能的運(yùn)行。

3 使用ICAP接口配置FPGA

在傳統(tǒng)的可重構(gòu)計(jì)算系統(tǒng)內(nèi),通過(guò)在可編程編輯器外部的處理器,實(shí)現(xiàn)對(duì)配置操作的控制,這一過(guò)程僅可利用FPGA外部配置接口,利用變成電纜,來(lái)完成讀寫(xiě)和寫(xiě)入配置數(shù)據(jù)的操作。但就實(shí)際來(lái)看,這一方式存在著較大的問(wèn)題,容易被系統(tǒng)外設(shè)性能所影響,而且效率也不高。

因此,為解決此問(wèn)題,在SRAM型FPGA以后的FPGA,均存在著ICAP,在FPGA內(nèi),確保了通過(guò)器內(nèi)嵌處理器的運(yùn)行,實(shí)現(xiàn)了對(duì)配置數(shù)據(jù)所實(shí)施的操作。在FPGA中,ICAP通常作為硬件原語(yǔ)在其中運(yùn)行,支持用戶進(jìn)行對(duì)其配置數(shù)據(jù)的操作。就協(xié)議來(lái)看,ICAP和SelectMAP有一些共同之處,具體見(jiàn)圖2。

在接口上,ICAP和Slave SelectMAP所存在的差異,具體見(jiàn)表1。其差異體現(xiàn)在前者為內(nèi)部連接可訪問(wèn),而后者利用FPGA外部的引腳實(shí)現(xiàn)控制。

使用ICAP時(shí),要注意以下幾點(diǎn):

(1) FPGA配置結(jié)束之后,ICAP、SelectMAP兩者無(wú)法同時(shí)進(jìn)入工作狀態(tài)。

在配置文件內(nèi),若PERSIST位被置為1,在通過(guò)SelectMAP措施實(shí)現(xiàn)配置后,信號(hào)DONE為高電平,而ICAP則停止運(yùn)行;而若PERSIST位被置為O,在通過(guò)SelectMAP措施來(lái)實(shí)現(xiàn)配置后,ICAP將運(yùn)行。

(2)在一個(gè)系統(tǒng)內(nèi),若既配置了JTAG接口,同時(shí)又配置了ICAP接口,需要特別注意。

當(dāng)ICAP在執(zhí)行配置或是讀回配置數(shù)據(jù)的情況下,在其中,JTAP CFG IN、CFGOUT、JSTART、JSHUTDOWN的指令,無(wú)法進(jìn)行對(duì)FPGA的直接發(fā)送;利用JTAG接口,在實(shí)現(xiàn)配置或是回讀配置數(shù)據(jù)后,要實(shí)施有關(guān)ICAP的操作時(shí),必須要確保配置邏輯為同步狀態(tài);相應(yīng)的,在通過(guò)ICAP接口實(shí)現(xiàn)這一操作時(shí),同樣應(yīng)該保持同步。

4 基于MicroBlaze的局部刷新系統(tǒng)設(shè)計(jì)

本文中設(shè)計(jì)的自重構(gòu)系統(tǒng)是基于SOPC技術(shù)的嵌入式系統(tǒng),利用FPGA的可編程特性,配置各個(gè)功能模塊,組成系統(tǒng)硬件平臺(tái),系統(tǒng)上電運(yùn)行時(shí),能夠通過(guò)內(nèi)嵌的軟核或者硬核處理器動(dòng)態(tài)加載配置數(shù)據(jù),通過(guò)ICAP端口對(duì)系統(tǒng)功能進(jìn)行重構(gòu),使得重構(gòu)系統(tǒng)可以完全在FPGA芯片內(nèi)部完成。

4.1 系統(tǒng)總體結(jié)構(gòu)框圖

將動(dòng)態(tài)部分重構(gòu)與SOPC嵌入式系統(tǒng)結(jié)合起來(lái),就可以設(shè)計(jì)并實(shí)現(xiàn)基于SOPC的動(dòng)態(tài)部分自重構(gòu)系統(tǒng),如圖3所示。

在設(shè)計(jì)內(nèi),就FPGA在線局部刷新的主控制器的選擇上,采用了MicroBlaze微處理器。就MicroBlaze來(lái)看,作為微處理器IP軟核,它能夠?qū)崿F(xiàn)嵌入操作,同時(shí),還能夠與不同外設(shè)IP核共同組建系統(tǒng)級(jí)集成電路,此電路中還存在著用戶IP核。因?yàn)镸icroBlaze處理器可以于FPGA內(nèi)發(fā)揮作用,同時(shí)能夠進(jìn)行對(duì)它外設(shè)IP的合理選用,能夠較好的進(jìn)行對(duì)外部電路的控制,所以,在FPGA中,通過(guò)MicroBlaze微處理器,來(lái)實(shí)現(xiàn)其在線局部刷新的控制器,是當(dāng)前人們廣泛認(rèn)可的一種方式。

4.2 系統(tǒng)實(shí)現(xiàn)流程

4.2.1 軟件整體流程

系統(tǒng)軟件整體流程圖如圖4所示,MicroBlaze系統(tǒng)運(yùn)行后,首先要初始化GPIO,接著要初始化中斷控制器,本設(shè)計(jì)中有兩個(gè)中斷,一個(gè)timer計(jì)數(shù)器中斷,一個(gè)ICAP中斷,接著查找ICAP控制器,如果找到返回O,沒(méi)找到返回.1。如果找到IC,AP控制器,下一步就是初始化這個(gè)控制器,所有設(shè)備的初始化結(jié)束后,程序進(jìn)入while循環(huán),等待定時(shí)器中斷產(chǎn)生。

4.2.2 定時(shí)器中斷流程

產(chǎn)生定時(shí)器中斷后,進(jìn)入定時(shí)器中斷函數(shù)。如圖5所示,在函數(shù)中首先重新將與現(xiàn)有功能相同的部分重構(gòu)比特流序列載入到重構(gòu)區(qū)域,然后需要手動(dòng)清除定時(shí)器中斷標(biāo)志位。這一功能用來(lái)實(shí)現(xiàn)FPGA重構(gòu)區(qū)域的定時(shí)自動(dòng)刷新。

4.2.4 載入部分配置比特流的流程

SRAM系列FPGA的比特流文件與以前的FPGA芯片有很大不同,以前的用戶不需要對(duì)FPGA配置流有bit級(jí)的了解就可以完成FPGA的配置。但是,如果想對(duì)FPGA進(jìn)行更深層次的控制,比如設(shè)計(jì)嵌入式配置或回讀操作,就需要了解FPGA配置比特流的格式。

配置比特文件的文件頭部分如圖6所示,Ox0009表示存儲(chǔ)器使用大端模式,即高位在前;后面交替的OXf0Of表示比特文件頭開(kāi)始,用來(lái)同步;Ox0001和后面的Ox61是字母“a”,也是比特文件頭的固定部分;Ox0026和后面的20個(gè)字節(jié)是ncd文件名;從Ox5573到Ox4646為UserID,Ox62為字母"b”,從Ox35到Ox36共14個(gè)字節(jié)表示使用FPGA芯片的型號(hào);Ox0063為字母“c”,從Ox32到Ox31共10個(gè)字節(jié)為比特文件生成的日期;Ox64為字母“d”;Ox32到Ox33共8個(gè)字節(jié)為比特文件生成的準(zhǔn)確時(shí)間;Ox65表示字母“e”;最后的多個(gè)Oxff和OxAA995566表示配置數(shù)據(jù)開(kāi)始。

載入部分重構(gòu)比特流文件的流程圖如圖7所示,首先讀取重構(gòu)序列的頭部信息,其中包含了時(shí)間、設(shè)計(jì)名稱、FPGA芯片型號(hào)、頭部數(shù)據(jù)長(zhǎng)度和配置數(shù)據(jù)長(zhǎng)度等信息,然后根據(jù)提取到的頭部數(shù)據(jù)的長(zhǎng)度跳過(guò)配置數(shù)據(jù)的頭部,接著根據(jù)配置信息的長(zhǎng)度,循環(huán)讀取配置數(shù)據(jù),每次讀取8位。因?yàn)镸icroBlaze系統(tǒng)總線的寬度為32位,所以要讀取4次并拼湊成32位的并行數(shù)據(jù),再利用ICAP接口將配置數(shù)據(jù)寫(xiě)入到配置存儲(chǔ)器中。

5 設(shè)計(jì)驗(yàn)證與分析

本節(jié)的主要任務(wù)是對(duì)本文中設(shè)計(jì)的基于MicroBlaze的局部刷新系統(tǒng)進(jìn)行測(cè)試和分析。測(cè)試平臺(tái)整體框圖如圖8所示。

上電后,F(xiàn)PGA將部分重構(gòu)序列保存到block RAM中,根據(jù)設(shè)置的定時(shí)器中斷,定時(shí)自動(dòng)對(duì)FPGA的重構(gòu)區(qū)域進(jìn)行定時(shí)刷新。同時(shí),在控制器的作用下,LED實(shí)現(xiàn)每秒閃爍一次,表示每秒鐘刷新重構(gòu)區(qū)域一次。

測(cè)試FPGA中的邏輯資源被分為兩部分:靜態(tài)區(qū)域和重構(gòu)區(qū)域;本設(shè)計(jì)中,在靜態(tài)區(qū)域中實(shí)現(xiàn)了一個(gè)占空比為50%,周期為13us的方波;重構(gòu)區(qū)域中局部刷新部分實(shí)現(xiàn)的是一個(gè)占空比為50%,周期為26us的方波;系統(tǒng)上電后,用示波器觀察靜態(tài)區(qū)域和重構(gòu)區(qū)域發(fā)出的信號(hào)。

實(shí)驗(yàn)結(jié)果表明,在FPGA內(nèi)部配置沒(méi)發(fā)生單粒子翻轉(zhuǎn)的情況下,每秒鐘的定時(shí)局部刷新并不會(huì)影響系統(tǒng)運(yùn)行,如圖9所示;當(dāng)系統(tǒng)發(fā)生單粒子翻轉(zhuǎn),重構(gòu)區(qū)域輸出的方波周期發(fā)生變化后,再用重構(gòu)區(qū)域的配置文件對(duì)重構(gòu)區(qū)域刷新,重構(gòu)區(qū)域輸出的方波會(huì)恢復(fù)正常。

6 結(jié)束語(yǔ)

在本文中,通過(guò)基于MicroBlaze軟核處理器的措施,制定了對(duì)SRAM型FPGA實(shí)施局部刷新的系統(tǒng)方案。就該方案來(lái)看,在選擇了MicroBlaze處理器的FPGA嵌入式系統(tǒng)內(nèi),本方案能夠取得較好的成效。通過(guò)實(shí)驗(yàn)驗(yàn)證的結(jié)果,可以得知,在芯片內(nèi),所完成的MicroBlaze處理器核心頻率運(yùn)行在50MHz,同時(shí),其局部刷新過(guò)程較短,通過(guò)約550us的時(shí)間即可實(shí)現(xiàn),并且,此方案還具有很好的執(zhí)行效率,還能夠確保局部刷新能夠符合其相關(guān)要求。在FPGA內(nèi),因?yàn)镸icroBlaze軟核處理器可以運(yùn)行,因此,在選擇了FPGA設(shè)計(jì)的數(shù)字系統(tǒng)內(nèi),本方案的實(shí)施,能夠不借助其他外部控制芯片,有效降低了PCB電路板面積,在確保系統(tǒng)結(jié)構(gòu)精簡(jiǎn)的同時(shí),還保證了其效率,應(yīng)用前景在今后將會(huì)更加廣闊。

參考文獻(xiàn)

[1]孫康.可重構(gòu)計(jì)算相關(guān)技術(shù)研究[D].浙江:浙江大學(xué),2007: 1-2.

[2]Abbott A L,Athanas P M,Chen L,Elliott R L.Finding lines andbuilding pyramids with SPLASH2 [C].IEEE Workshop on FPGAs for CustomComputing Machines, 1994: 155-163.

[3]覃祥菊,朱明程,張?zhí)?,魏忠義.FPGA動(dòng)態(tài)可重構(gòu)技術(shù)原理及實(shí)現(xiàn)方法分析[J].電子器件,2004,27 (02): 277-282.

[4]羅賽.可重構(gòu)計(jì)算系統(tǒng)結(jié)構(gòu)體系研究與實(shí)現(xiàn)[D].安徽:中國(guó)科學(xué)技術(shù)大學(xué),2006: 34-35.

[5]T.J. Todman,G.A.Cons trantinides,S.J.E. Wilton, et al. Reconfigurationcomputing: architectures and designmethods [J].Computers and Digital Techniques, 2005,152 (02):193-207.

[6]谷鑾,徐貴力,王友仁.FPGA動(dòng)態(tài)可重構(gòu)理論及其研究進(jìn)展[J].計(jì)算機(jī)測(cè)量與控制,2007,15 (11):1415-1418.

[7]張潤(rùn)鑫,武文波,陳瑞明,基于組合特征的航母目標(biāo)識(shí)別辦法[J].航天返回與遙感,2018, 32 (12):128-131.

猜你喜歡
中斷處理器重構(gòu)
長(zhǎng)城敘事的重構(gòu)
攝影世界(2022年1期)2022-01-21 10:50:14
北方大陸 重構(gòu)未來(lái)
北京的重構(gòu)與再造
商周刊(2017年6期)2017-08-22 03:42:36
跟蹤導(dǎo)練(二)(5)
千里移防,衛(wèi)勤保障不中斷
解放軍健康(2017年5期)2017-08-01 06:27:44
論中止行為及其對(duì)中止犯的重構(gòu)
Imagination的ClearCallTM VoIP應(yīng)用現(xiàn)可支持Cavium的OCTEON? Ⅲ多核處理器
ADI推出新一代SigmaDSP處理器
汽車零部件(2014年1期)2014-09-21 11:41:11
呼嚕處理器
AT89C51與中斷有關(guān)的寄存器功能表解
青田县| 曲阳县| 南川市| 开远市| 玛多县| 清涧县| 黄冈市| 贺兰县| 邳州市| 象州县| 芒康县| 宣城市| 凯里市| 双城市| 海伦市| 株洲市| 汉中市| 航空| 杭锦旗| 武乡县| 海宁市| 龙门县| 安福县| 长岛县| 康定县| 湘潭市| 山东省| 太仓市| 隆德县| 遵义市| 抚顺县| 乡城县| 翁牛特旗| 双鸭山市| 弥渡县| 辽中县| 桂东县| 丁青县| 谢通门县| 咸阳市| 通海县|