<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > ARM設計的FPGA可重構配置方法的實(shí)現及應用

ARM設計的FPGA可重構配置方法的實(shí)現及應用

作者: 時(shí)間:2010-12-11 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要:文中詳述了被動(dòng)串行方式的時(shí)序,給出流程圖及的程序代碼,并通過(guò)實(shí)例驗證了該的優(yōu)越性及前景.通過(guò)介紹的各種方式,提出了一種基于處理器的動(dòng)態(tài)配置,充分利用處理器功能強、速度快、廣的特點(diǎn),結合FPGA重配置特性,了對FPGA的動(dòng)態(tài)配置.

本文引用地址:http://dyxdggzs.com/article/151245.htm

隨著(zhù)半導體工藝技術(shù)的迅猛發(fā)展,現場(chǎng)可編程邏輯器件FPGA的集成度迅速提高,已達到百萬(wàn)門(mén)量級,與此同時(shí),FPGA中的邏輯資源也日益豐富,使得基于FPGA的片上系統成為可能.基于FPGA的片上系統因其具有開(kāi)發(fā)周期短,成本低,軟硬件可編程,系統設計靈活、可裁減、可擴充、可升級等優(yōu)點(diǎn)正在成為電子系統設計的研究熱點(diǎn),且已經(jīng)在通訊、工控等領(lǐng)域得到實(shí)際

目前FPGA從技術(shù)上進(jìn)行分類(lèi),可以分為基于查找表(LuT,k—up table)技術(shù),SRAM工藝的FPGA、基于nash技術(shù)的FPGA和基于反熔絲(Anti—fuse)技術(shù)的FPGA,而使用最多的還是基于SRAM工藝的FPGA,如Altem的Cycl0ne和S tix系列、xilin)【的Spanan和Virtex系列.基于SRAM 的FPGA片內帶有存儲配置位流的sRAM,上電時(shí),將存儲在專(zhuān)用配置芯片中的配置信息加載到FPGA中,從而實(shí)現一定的邏輯功能,掉電時(shí)片內SRAM中的配置數據遺失,需要下一次加電時(shí)重新加載配置.這種片內易失存儲器存儲配置數據的結構,使得FPGA可以在線(xiàn)動(dòng)態(tài)的對其sRAM中的配置數據進(jìn)行更新,從而實(shí)現電路邏輯功能動(dòng)態(tài)改變.系統可主要就是利用基于sRAM的FPGA這種動(dòng)態(tài)重配置特性才得以實(shí)現的,下面就以Altem公司Cyclone II系列FPGA分析其配置方式及其可應用.

1 可配置

根據FPGA在配置過(guò)程中的角色可把cyclone II系列FPGA的配置方式分為三種:FPGA主動(dòng)串行(As)方式、FPGA被動(dòng)串行(PS)方式和JATG方式.不同配置模式通過(guò)配置模式選擇管腳MsEL[1:0]進(jìn)行選擇,其中MsEL[1:0]=o0時(shí)選擇As模式,MsEL[1:O]=01時(shí)選擇PS模式,對于某些串行配置器件當MsEL[1:0]=l0時(shí)為快速AS模式,配置速度比PS模式快一倍.Cyclone II系列FPGA支持配置數據自解壓,將壓縮的配置數據存儲在配置器件或其它存儲器中,配置時(shí)傳送壓縮的位流數據到FPGA中,FPGA可實(shí)時(shí)的解壓縮并對內部sRAM進(jìn)行編程,配置數據的壓縮比例可達35%-5O% ,可有效節省配置存儲空間.

在A(yíng)s方式下,由FPGA主動(dòng)輸出控制和同步信號給專(zhuān)用串行配置芯片,配置芯片接收到配置命令后,就開(kāi)始將配置數據串行的發(fā)送至FPGA,完成配置工作.目前常用的專(zhuān)用串行配置芯片為容量為4 Mb的EPCS4和16 Mb的EPcS16等.AS配置模式主要用到四個(gè)信號:串行數據輸入DcLK、控制信號輸入AsDI、片選信號ncs和串行數據輸出DATA.

在PS方式下,由系統中其它設備發(fā)起配置過(guò)程,FPGA在配置過(guò)程中只輸出應答信號,發(fā)起控制配置過(guò)程的設備可以是處理器、Altem EPC系列配置芯片、CPLD等功能設備.在下一小節將對PS配置方式做詳細的介紹.JTAG調試接口已經(jīng)作為一個(gè)標準接口集成在芯片內,主要用于芯片的測試,cycl0ne II系列FPGA都支持JTAG方式對FPGA進(jìn)行配置,JrrAG方式具有比其它配置方式都高的優(yōu)先級.JrI'AG接口定義了四個(gè)標準信H號:

● rI℃K測試時(shí)鐘,各種信號都需要與測試時(shí)鐘同步;

● TDI測試數據輸入,測試數據串行輸入,數據在TCK上升沿傳送;

● TDO測試數據輸出,測試數據串行輸出,數據在TCK下降沿傳送;

●TMs測試模式選擇,決定JTAG電路內部TAP控制器狀態(tài)機的變化.

2 基于的配置方法及實(shí)現

2.1 PS配置原理

如圖l所示,利用s3c2410x作為主控制器采用被動(dòng)串行方式對EP2c20內部邏輯進(jìn)行重構.FPGA的PS配置方式是比較常用的一種配置方式,可以有效實(shí)現FPGA的在線(xiàn)配置,其基本流程為:在系統中將FPGA被動(dòng)配置方式配置接口與ARM處理器的IO管腳相連,在處理器端通過(guò)軟件控制相應管腳的高低電平將數據串行的發(fā)送到FPGA中.重構程序運行在A(yíng)RM處理器中作為實(shí)時(shí)系統的一個(gè)任務(wù),當需要重配FPcA內部邏輯時(shí),調用相應任務(wù),配置完成后,刪除當前任務(wù)即可,因此,可將預先建立的配置文件庫存儲到ARM的nash中,由ARM處理器中運行的配置程序來(lái)完成動(dòng)態(tài)重構任務(wù)。FPGA與Ps配置方式有關(guān)的管腳功能如表l所示:

整個(gè)配置過(guò)程幾個(gè)關(guān)鍵信號的時(shí)序圖如圖2所示,配置過(guò)程可以分為復位、配置和初始化三個(gè)階段:

在復位階段,微處理器首先在nc0NFIG信號線(xiàn)上產(chǎn)生一個(gè)寬度大于8 s的負脈沖,然后開(kāi)始檢測nsTATus信號的狀態(tài).FPGA檢測到ncONFIG信號的下降沿后會(huì )迫使nsTATus和cONF—DONE信號拉低,使FPGA處于復位狀態(tài),當ncONFIG變?yōu)楦唠娖綍r(shí),FPGA退出復位狀態(tài),釋放漏級開(kāi)路的nSTATUS管腳,nSTATuS在外部需要被l0 K的上拉電阻拉高,nSTATUS管腳變?yōu)楦唠娖胶?,FPGA即進(jìn)人配置階段,此時(shí),FPGA已做好了接收配置數據的準備.

FPGA的nsTATuS管腳變高后,延時(shí)5 s左右,在DCLK的上升沿FPGA即可從DA L0管腳串行的接收配置數據,配置數據按低位在先高位在后的順序從數據線(xiàn)上送出.當所有數據都接收完后釋放漏級開(kāi)路的CONFIG— DONE管腳,CONFIG—DONE管腳在外部需要被10 K的上拉電阻拉高,CONFIG—DONE管腳由低到高的跳變表明配置階段結束,FPGA進(jìn)入初始化階段.如果在配置過(guò)程中出現錯誤,則n rATuS管腳將輸出低電平,FPGA在內部自動(dòng)復位,處理器可以通過(guò)查詢(xún)ns1IATuS管腳狀態(tài)判斷在配置過(guò)程中是否有錯誤發(fā)生,如果nsTATuS管腳在配置過(guò)程中變低則表明有錯誤發(fā)生,如果在軟件中設置了錯誤發(fā)生后自動(dòng)重新開(kāi)始配置選項則FPcA會(huì )延時(shí)一段時(shí)間后釋放nsTATuS,此時(shí)nsTATuS被外部上拉電阻拉高,CPu在nsTA—Tus上檢測到一個(gè)由低到高的跳變后重新開(kāi)始配置.若軟件中未設置“錯誤發(fā)生后自動(dòng)重新開(kāi)始配置”選項則需要CPu首先將nCONFIC管腳置低再拉高以開(kāi)始重新配置.

在初始化階段,初始化時(shí)鐘可以是FPGA內部時(shí)鐘或外部由CLKusR管腳提供的時(shí)鐘,本例使用了FPGA內部時(shí)鐘,FPGA將為初始化提供時(shí)鐘,這樣,初始化階段不再需要外部時(shí)鐘.初始化階段完成后INIT—DONE管腳變?yōu)楦唠娖?,指示FPGA成功進(jìn)人用戶(hù)模式,配置過(guò)程結束.需要注意的是,若此時(shí)CONF—DONE或INIT_DONE未變?yōu)楦唠娖?,則表明此次配置過(guò)程不成功,需要cPu重新進(jìn)行配置.


上一頁(yè) 1 2 3 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>