新聞中心

EEPW首頁(yè) > EDA/PCB > 設(shè)計(jì)應(yīng)用 > FPGA自動(dòng)加載系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)

FPGA自動(dòng)加載系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)

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

摘要:針對(duì)可以在每次上電時(shí)自動(dòng)獲取配置文件的需求,提出了一種由USB芯片和、CPLD組成的可對(duì)上電后自動(dòng)加載的系統(tǒng)。該系統(tǒng)可以通過(guò)USB芯片和CPLD將PC中的配置文件寫(xiě)入,并且在CPLD的控制下將配置文件以PS模式配置給FPGA。測(cè)試表明,該系統(tǒng)可以在上電時(shí)自動(dòng)對(duì)FPGA進(jìn)行加載,彌補(bǔ)了FPGA掉電后數(shù)據(jù)消失的不足。

本文引用地址:http://butianyuan.cn/article/201610/308546.htm

0 引言

FPGA(Field Programmable Gate Array)即現(xiàn)場(chǎng)可編程門(mén)陣列,隨著微電子技術(shù)的發(fā)展,F(xiàn)PGA的性能變的越來(lái)越優(yōu)越,應(yīng)用空間也變得越來(lái)越廣。FPGA具有支持重復(fù)編程的特點(diǎn),但是掉電后不能保存配置信息。因此在上電后,都需要用戶將設(shè)計(jì)的FPGA配置文件從外部存儲(chǔ)器中下載到FPGA中才能工作。針對(duì)這種情況,本文提出了一種以USB芯片,和CPLD組成的FPGA。該系統(tǒng)通過(guò)USB芯片將PC中的配置文件傳送給CPLD,CPLD再將其寫(xiě)入FLASH芯片,F(xiàn)LASH芯片可以長(zhǎng)久地存儲(chǔ)配置文件。這樣FPGA每次上電后CPLD將FLASH中的配置文件讀出來(lái)配置FPGA。從而使FPGA在每次上電后都可以自動(dòng)獲取配置文件,使其可以作為一個(gè)獨(dú)立“芯片”工作,具有很強(qiáng)的實(shí)用性。在PS模式配置方式上也有改進(jìn),在傳統(tǒng)PS模式下配置多個(gè)FPGA時(shí)通常使用前一級(jí)的FPGA的nCEO連接后一級(jí)FPGA的nCE來(lái)使能后一級(jí)FPGA,這樣在第一個(gè)FPGA配置好后,nCEO會(huì)使能下一級(jí)的FPGA開(kāi)始配置。這樣只能先配置第一個(gè)FPGA,而且不能自由控制來(lái)配置下一級(jí)的FPGA。采用CPLD同時(shí)連接兩個(gè)nCE,在前一級(jí)FPGA配置好后,獲取完成信號(hào)來(lái)配置第二個(gè)FPGA,這樣不受FPGA前后級(jí)聯(lián)的順序影響,可以自由選擇配置FPGA。

1 系統(tǒng)框架及芯片簡(jiǎn)介

系統(tǒng)由CPLD,USB芯片和FLASH芯片組成,外加PC部分配合系統(tǒng)工作。系統(tǒng)框架見(jiàn)圖1。系統(tǒng)中USB芯片連接PC與CPLD,PC通過(guò)USB向CPLD發(fā)送命令來(lái)操作FLASH。首先發(fā)送擦除FLASH命令,擦除完畢或?qū)⑴渲梦募?xiě)入FLASH芯片。在FLASH芯片中可以存入多個(gè)FPGA的配置文件,在上電后或者需要加載時(shí),CPLD讀取FLASH中的配置文件并且對(duì)FPGA進(jìn)行配置。

FPGA自動(dòng)加載系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)

2 燒寫(xiě)FLASH時(shí)序

USB、CPLD和FLASH的連接關(guān)系如圖2所示。USB將PC的命令和配置文件發(fā)送給CPLD,CPLD通過(guò)時(shí)序邏輯控制FLASH。

FPGA自動(dòng)加載系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)

系統(tǒng)中所使用的USB芯片是FTDI公司的FT245BL,將USB芯片與PC連接后,USB芯片會(huì)自動(dòng)識(shí)別為串口,利用串口調(diào)試助手可以向其發(fā)送命令或文件。

擦除和燒寫(xiě)FLASH操作如下所述:

FLASH芯片選用恒憶公司的M29EW系列512MNOR型FLASH。采用異步時(shí)鐘操作,時(shí)序圖中的fls_byte管腳對(duì)應(yīng)的位寬選擇信號(hào),在本系統(tǒng)中將其拉低表示使用8 b位寬fls_adr表示地址,fls_dat表示數(shù)據(jù),fls_cen為芯片使能信號(hào),fls_oen為芯片讀使能信號(hào),fls_wen為芯片寫(xiě)使能信號(hào)。

如圖3和圖4所示,在執(zhí)行擦除或?qū)懖僮鲿r(shí)序時(shí),將fls_cen拉低、fls_oen拉高時(shí)可以執(zhí)行寫(xiě)或擦除命令,fls_wen上升沿采樣地址,下降沿采樣數(shù)據(jù)。fls_ry_by是芯片的繁忙或空閑信號(hào),是FLASH芯片惟一的輸出信號(hào),用于表示正在執(zhí)行擦除或者寫(xiě)操作。

FPGA自動(dòng)加載系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)
FPGA自動(dòng)加載系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)

(1)擦除FLASH

在使用FALSH芯片之前需要對(duì)其進(jìn)行擦除,PC通過(guò)USB向CPLD發(fā)出擦除命令后如圖3所示。寫(xiě)入連續(xù)5個(gè)對(duì)應(yīng)的地址和數(shù)據(jù)后,F(xiàn)LASH芯片將整個(gè)芯片的數(shù)據(jù)擦除,如圖3所示在執(zhí)行后,fls_ry_by信號(hào)拉低表示進(jìn)入了擦除狀態(tài)。

(2)燒寫(xiě)FLASH

如圖4所示,在執(zhí)行寫(xiě)FLASH操作時(shí),首先需要給出寫(xiě)FLASH三次對(duì)應(yīng)的數(shù)據(jù)和地址作為前置命令,然后給出需要寫(xiě)入FLASH的地址和數(shù)據(jù)。在接到命令后,CPLD根據(jù)圖中時(shí)序?qū)PGA的配置文件寫(xiě)入FLASH。

3 PS模式自動(dòng)加載FPGA

FPGA的配置管腳如圖5所示。

在PS模式下配置FPGA的FLASH,CPLD和FPGA的連接關(guān)系如圖5所示。

FPGA自動(dòng)加載系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)

圖6所示為FPGA的流程圖。在加載過(guò)程中,將ps_nce拉低并且將ps_nconfig拉低至少40μs后再拉高,正常情況下這個(gè)操作會(huì)使ps_nstatus產(chǎn)生一個(gè)由低到高的一個(gè)脈沖信號(hào)并且使ps_conf_done由高變低。在ps_nstatus產(chǎn)生上升沿的瞬間立即給出ps_dclk和ps_data0來(lái)配置FPGA,其中ps_data0信號(hào)是通過(guò)讀取FLASH芯片中的數(shù)據(jù)實(shí)現(xiàn)的。FPGA在接收配置文件的過(guò)程會(huì)自動(dòng)識(shí)別文件的結(jié)尾,在配置結(jié)束后ps_ conf_done信號(hào)會(huì)拉高以表明配置結(jié)束,配置過(guò)程中init_done會(huì)由高變低,在經(jīng)過(guò)至少18μs后init_done信號(hào)拉高表明完成初始化,隨后進(jìn)入用戶模式。常規(guī)的方式采用nCONFIG,nSTATUTS,CONF_DONE復(fù)用,并且前一級(jí)FPGA的nCE連接后一級(jí)的FPGA的nCEO,這樣加載順序就被固定,而且每次加載只能先加載第一個(gè)FPGA,待加載完畢后才能加載第二個(gè)FPGA。與常規(guī)的配置方式不同之處在于通過(guò)使能nCE來(lái)選擇需要配置的FPGA,給出相應(yīng)的配置文件與信號(hào)ps_conf_done的時(shí)序來(lái)判斷是否配置完成,這樣就可以自由選擇配置FPGA。

FPGA自動(dòng)加載系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)
FPGA自動(dòng)加載系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)

如圖7所示為FPGA自動(dòng)加載的平臺(tái),通過(guò)CPLD的邏輯控制和USB芯片的總線可以將PC端配置文件寫(xiě)入FLASH芯片中。在需要使用自動(dòng)加載功能時(shí),在上電后CPLD會(huì)立即讀出存取在FLAHS中的FPGA配置文件,以PS模式配置相應(yīng)的FPGA。

4 結(jié)論

經(jīng)測(cè)試系統(tǒng)可以在上電后對(duì)FPGA進(jìn)行自動(dòng)加載。本文提供了系統(tǒng)的結(jié)構(gòu)框架和實(shí)施方案整體流程以及時(shí)序要求,具有很強(qiáng)的應(yīng)用和參考價(jià)值。



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉