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

?

FPGA的PS配置方式在顯示系統(tǒng)中的應(yīng)用

2013-04-25 07:28:38吳乾科陳國(guó)慶
電子科技 2013年9期
關(guān)鍵詞:管腳配置文件被動(dòng)

吳乾科,陳國(guó)慶

(西安電子科技大學(xué) 技術(shù)物理學(xué)院,陜西 西安710126)

在當(dāng)今的市場(chǎng)變化環(huán)境中,產(chǎn)品是否能在線升級(jí),是否能方便使用,成為產(chǎn)品進(jìn)入市場(chǎng)的關(guān)鍵。在這種背景下,Altera公司的基于SARM LUT的FPGA器件得到了廣泛應(yīng)用,這類(lèi)器件的配置數(shù)據(jù)存儲(chǔ)在SARM,然而由于SARM具有掉電易失性,故通電自動(dòng)加載配置是這類(lèi)器件應(yīng)用必需的。Altera公司也提供了幾種被動(dòng)下載的配置的方式,本文就其中的PS下載配置方式作詳細(xì)概述,并介紹在遠(yuǎn)程顯示系統(tǒng)中的應(yīng)用過(guò)程。

1 FPGA常用加載方式介紹

Altera公司生產(chǎn)的FPGA器件中CycloneⅣ系列提供了以下幾種配置方案:主動(dòng)串行(AS)、主動(dòng)并行(AP)、被動(dòng)串行(PS)[1]、快速被動(dòng)并行(FPP)和JTAG,其中最常用的是主動(dòng)串行、被動(dòng)串行與JTAG。AS、PS、JTAG配置方式的區(qū)別有:AS模式:燒到FPGA的配置芯片里保存的,F(xiàn)PGA器件每次上電時(shí),作為控制器從配置器件EPCS主動(dòng)發(fā)出讀取數(shù)據(jù)信號(hào),從而把EPCS的數(shù)據(jù)讀入FPGA中,實(shí)現(xiàn)對(duì)FPGA的編程,AS配置方案中這些配置器件是具有非易失內(nèi)存的低成本器件,具有簡(jiǎn)化4管腳接口和小型化的特征;PS模式:EPCS作為控制器件,把FPGA當(dāng)做存儲(chǔ)器,把數(shù)據(jù)寫(xiě)入FPGA中,實(shí)現(xiàn)對(duì)FPGA的編程。該模式可以實(shí)現(xiàn)對(duì)FPGA在線可編程;JTAG:直接燒到FPGA里面的,由于是SRAM,斷電后要重?zé)?,JTAG配置方案可以使用USB-Blaster等下載電纜下載數(shù)據(jù)到器件上,這種方式便于測(cè)試,可以進(jìn)行在線仿真??紤]到在產(chǎn)品上的應(yīng)用,PS配置可實(shí)現(xiàn)遠(yuǎn)程的在線配置[2],便于產(chǎn)品的維護(hù)與升級(jí),所以得到廣泛應(yīng)用。

2 PS加載方案

2.1 使用外部主機(jī)進(jìn)行單器件PS配置

當(dāng)開(kāi)始配置時(shí),外部主機(jī)器件必須在nCONFIG管腳中產(chǎn)生一個(gè)由低至高的跳變。當(dāng)拉高nSTATUS時(shí),外部主機(jī)器件必須一次一位地將配置數(shù)據(jù)放置在DATA[0]上。在使用.rbf、.hex、.ttf格式時(shí),必須首先發(fā)送每個(gè)數(shù)據(jù)字節(jié)的LSB。CylongⅣ器件在DATA[0]上接收配置數(shù)據(jù),時(shí)鐘在DCLK上被接收。在DCLK的上升沿,數(shù)據(jù)被鎖存到器件中。數(shù)據(jù)不斷送入目標(biāo)器件,直到CONF_DONE變高以及器件進(jìn)入初始化狀態(tài)。

圖1 單器件配置結(jié)構(gòu)圖

在CONF_DONE變高后需要兩個(gè)DCLK的下降沿以開(kāi)始初始化器件。當(dāng)初始化完成后,INIT_DONE被釋放和拉高。外部主機(jī)器件必須能檢測(cè)到由低到高的跳變,其標(biāo)志著器件已進(jìn)入用戶(hù)模式。在PS方案中,DATA[0]管腳在用戶(hù)模式下默認(rèn)為三態(tài),它必須由外部主機(jī)器件驅(qū)動(dòng)。要在QuartusⅡ軟件中更改這種默認(rèn)選項(xiàng),選擇Device and Pin Options對(duì)話框中的Dual-Purpose標(biāo)簽。配置時(shí)鐘(DCLK)的速度必須低于指定系統(tǒng)頻率,以確保正確的配置。無(wú)上限D(zhuǎn)CLK周期的存在,意味著可以通過(guò)停止DCLK無(wú)限期地暫停配置。CONF_DONE管腳必須由外部主機(jī)器件監(jiān)控以便檢測(cè)錯(cuò)誤和確定編程序是否完成。如果所有配置數(shù)據(jù)被發(fā)送后,但CONF_DONE INIT_DONE沒(méi)有變高,外部器件必須對(duì)目標(biāo)器件進(jìn)行重配置。

2.2 使用外部主機(jī)進(jìn)行多器件PS配置

在多器件配置鏈中完成第一器件配置后,其nNEO管腳驅(qū)動(dòng)至低電平以激活第二個(gè)器件中的nCE管腳,提示第二個(gè)器件開(kāi)始進(jìn)行配置。鏈中第二個(gè)器件開(kāi)始在一個(gè)時(shí)鐘周期中的配置。因此,對(duì)于外部主機(jī)器件,傳輸數(shù)據(jù)的目的地是透明的。nCONFIG、nSTATUS、DCLK、DATA[0]和CONF_DONE配置管腳都連接到鏈中的每個(gè)器件上。為了確保信號(hào)的完整性以及防止時(shí)鐘的偏斜問(wèn)題,配置信號(hào)可能需要緩沖。確保DCLK和DATA線是緩沖的。所有器件初始化并且同時(shí)進(jìn)入用戶(hù)模式,因?yàn)樗械腃ONF_DONE管腳都是連在一起的。

圖2 多器件配置結(jié)構(gòu)圖

如果任何器件檢測(cè)到一個(gè)錯(cuò)誤,整條鏈的配置都將停止,然后必須對(duì)其進(jìn)行重配置。

2.3 PS配置時(shí)序

PS配置時(shí)序[3],如圖3所示。

圖3 PS配置時(shí)序

配置結(jié)束后,F(xiàn)PGA還需要一個(gè)初始化的過(guò)程才能進(jìn)入正常工作狀態(tài)。在QuartusⅡ生成的配置文件中已經(jīng)包含了額外的初始化比特,只需要將配置文件的數(shù)據(jù)在配置時(shí)鐘的同步下全部送出就已經(jīng)完成了初始化。

2.4 配置文件的使用

Altera公司的開(kāi)發(fā)工具QuartusⅡ可以生成多種格式的配置文件,針對(duì)不同的配置方式需要使用不同格式的配置文件[5]。設(shè)計(jì)項(xiàng)目編譯后自動(dòng)生成.sof文件和.pof文件?;?sof文件還可以生成.hex、.rbf和ttf文件。其中,.rbf文件時(shí)二進(jìn)制文件,1 Byte的rbf數(shù)據(jù)包包含8 bit的配置數(shù)據(jù),使用時(shí)將其存入ROM中。微控制器從ROM中將其讀出再送入FPGA[4],串行和并行配置方式都可以使用這種格式的文件。

3 系統(tǒng)設(shè)計(jì)

3.1 硬件設(shè)計(jì)

顯示系統(tǒng)利用STC12LE54單片機(jī)對(duì)EP4CE6F256C8N進(jìn)行PS配置的硬件結(jié)構(gòu)如圖4所示。

圖4 系統(tǒng)結(jié)構(gòu)圖

因?yàn)檫@里用的FPGA是EP4CE6,其配置文件大小有2 Mbit,在給FPGA配置數(shù)據(jù)時(shí),配置文件經(jīng)由上位機(jī)通過(guò)MCU存儲(chǔ)在Flash中,因?yàn)镸CU的內(nèi)部容量有限,上位機(jī)也分次傳送,由于選用的Flash為W25x32VSSIG,其所支持的頁(yè)操作為256 Byte,故每次傳送256 Byte,最后一次傳送剩下的字節(jié)。在配置FPGA的過(guò)程中,MCU一邊讀取Flash中的數(shù)據(jù),一邊在給FPGA配置,這里采用PS配置多器件的方案,當(dāng)配置完控制板上的FPGA后繼續(xù)從Flash中讀取接口板FPGA的配置數(shù)據(jù),數(shù)據(jù)通過(guò)總線的工作方式從控制板FPGA到串化器,在另一端的解串器解出這3位并行數(shù)據(jù),從而完成接口板的FPGA配置。

3.2 軟件設(shè)計(jì)

在該配置方案中,軟件包括在PC上位機(jī)端的控制軟件和在MCU端的控制程序。PC上位機(jī)端的窗口軟件采用C#編寫(xiě),MCU程序采用C語(yǔ)言。

對(duì)于文中所用的FPGA:EP4CE6,其配置文件大小為2 Mbit,由于單片機(jī)存儲(chǔ)限制使得無(wú)法一次性地將配置文件全部發(fā)送至單片機(jī),所以一些通用的串口調(diào)試助手無(wú)法使用,所以必須在PC上位機(jī)上編寫(xiě)個(gè)一個(gè)文件分割的串口軟件。

上位機(jī)軟件如圖5所示,主要功能是將.rbf配置文件進(jìn)行256 Byte分割,發(fā)送至MCU,使MCU方便對(duì)Flash的寫(xiě)頁(yè)操作。

圖5 PC上位機(jī)軟件界面

MCU對(duì)FPGA的配置程序流程圖如圖6所示。

圖6 單片機(jī)程序流程圖

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

利用單片機(jī)采用PS配置方案實(shí)現(xiàn)FPGA的數(shù)據(jù)加載方式,經(jīng)過(guò)系統(tǒng)調(diào)試,當(dāng)給單片機(jī)加載程序后,通過(guò)PC上位機(jī)串口助手將配置文件發(fā)送給單片機(jī)后斷電,然后重新通電,系統(tǒng)在2 min后正常工作,雖然配置時(shí)間較長(zhǎng),但比較穩(wěn)定,重置率低。其主要優(yōu)勢(shì)在于一方面可以上電被動(dòng)加載,無(wú)需次次重新配置,另一方面當(dāng)要更新系統(tǒng)時(shí)只需通過(guò)串口發(fā)送更新的配置文件即可,為實(shí)際應(yīng)用帶來(lái)較大的便利。

[1] 薛昀,李宗艷,張德安.基于單片機(jī)的FPGA被動(dòng)串行配置方式[J].桂林電子工業(yè)學(xué)院學(xué)報(bào),2005(3):29-32.

[2]胡啟道,張福洪,戴紹港.基于MCU的FPGA在線配置[J].電子器件,2007(3):1049-1051.

[3]Altera公司.Cyclone device handbook[EB/OL].(2013-03-01)[2013-03-12]http://www.pudn.com/downloads193/ebook/deta.

[4] 徐維祥,劉旭敏.單片微型機(jī)原理及應(yīng)用[M].大連:大連理工大學(xué)出版社,1996.

[5] 胡修林,席向清,張?zhí)N玉.嵌入式系統(tǒng)中FPGA的被動(dòng)串行配置方式[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2004(3):21-23.

猜你喜歡
管腳配置文件被動(dòng)
提示用戶(hù)配置文件錯(cuò)誤 這樣解決
新聞?wù)Z篇中被動(dòng)化的認(rèn)知話語(yǔ)分析
搭建簡(jiǎn)單的Kubernetes集群
互不干涉混用Chromium Edge
主動(dòng)句都能轉(zhuǎn)換成被動(dòng)句嗎
第五課 拒絕被動(dòng)
忘記ESXi主機(jī)root密碼怎么辦
基于圖像處理的異型電子元器件管腳偏移誤差檢測(cè)方法研究
CMOS數(shù)字IC管腳電容的估算與測(cè)量
HC08芯片JVT測(cè)試方法的探究
霍山县| 富源县| 杂多县| 长子县| 阳江市| 平阴县| 永丰县| 沁源县| 三亚市| 宁波市| 钟祥市| 荣昌县| 庆城县| 玉屏| 长春市| 鄢陵县| 新兴县| 宜川县| 龙胜| 黄陵县| 玉龙| 甘孜县| 刚察县| 璧山县| 汤原县| 桐梓县| 开平市| 康平县| 凤翔县| 余干县| 宣武区| 安阳市| 江川县| 黄大仙区| 彭州市| 泾川县| 西和县| 禄劝| 保亭| 得荣县| 沂水县|