目前,大多數(shù)FPGA芯片是基于 SRAM 的結(jié)構(gòu)的, 而 SRAM 單元中的數(shù)據(jù)掉電就會丟失,因此系統(tǒng)上電后,必須要由配置電路將正確的配置數(shù)據(jù)加載到 SRAM 中,此后 FPGA 才能夠正常的運(yùn)行。
常見的配置芯片有EPCS 芯片 (EPCS4、EPCS8、EPCS16、EPCS64、EPCS128),還有通用的串行 SPI FLASH 芯片如 M25P40、 M25P16、 W25Q16 等。
配置(configuration)是對FPGA的內(nèi)容進(jìn)行編程的過程。每次上電后都需要進(jìn)行配置是基于SRAM工藝FPGA的一個特點(diǎn),也可以說是一個缺點(diǎn)。FPGA配置過程如下:
FPGA配置方式
根據(jù)FPGA在配置電路中的角色,可以將配置方式分為三類:
1.FPGA主動串行(AS)方式
2. JTAG方式
3. FPGA被動(Passive)方式
FPGA配置過程
FPGA的配置包括3各階段:復(fù)位、配置和初始化。
FPGA正常上電后,當(dāng)其nCONFIG管腳被拉低時(shí),器件處于復(fù)位狀態(tài),這時(shí)所有的配置RAM內(nèi)容被清空,并且所有I/O處于高阻態(tài),F(xiàn)PGA的狀態(tài)管腳nSTATUS和CONFIG_DONE管腳也將輸出為低。當(dāng)FPGA的nCONFIG管腳上出現(xiàn)一個從低到高的跳變以后,配置就開始了,同時(shí)芯片還會去采樣配置模式(MSEL)管腳的信號狀態(tài),決定接受何種配置模式。
隨之,芯片將釋放漏極開路(open-drain)輸出的nSTATUS管腳,使其由片外的上拉電阻拉高,這樣,就表示FPGA可以接收配置數(shù)據(jù)了。在配置之前和配置過程中,F(xiàn)PGA的用戶I/O均處于高阻態(tài)。
在接收配置數(shù)據(jù)的過程中,配置數(shù)據(jù)由DATA管腳送入,而配置時(shí)鐘信號由DCLK管腳送入,配置數(shù)據(jù)在DCLK的上升沿被鎖存到FPGA中,當(dāng)配置數(shù)據(jù)被全部載入到FPGA中以后,F(xiàn)PGA上的CONF_DONE信號就會被釋放,而漏極開路輸出的CONF_DONE信號同樣將由外部的上拉電阻拉高。因此,CONF_DONE管腳的從低到高的跳變意味著配置的完成,初始化過程的開始,而并不是芯片開始正常工作。
INIT_DONE是初始化完成的指示信號,它是FPGA中可選的信號,需要通過Quartus II工具中的設(shè)置決定是否使用該管腳。在初始化過程中,內(nèi)部邏輯、內(nèi)部寄存器和I/O寄存器將被初始化,I/O驅(qū)動器將被使能。
當(dāng)初始化完成以后,器件上漏極開始輸出的INIT_DONE管腳被釋放,同時(shí)被外部的上拉電阻拉高。這時(shí),F(xiàn)PGA完全進(jìn)入用戶模式,所有的內(nèi)部邏輯以及I/O都按照用戶的設(shè)計(jì)運(yùn)行,這時(shí),那些FPGA配置過程中的I/O弱上拉將不復(fù)存在。不過,還有一些器件在用戶模式下I/O也有可編程的弱上拉電阻。在完成配置以后,DCLK信號和DATA管腳不應(yīng)該被浮空(floating),而應(yīng)該被拉成固定電平,高或低都可以。
FPGA配置模式選擇
用戶可以通過設(shè)置FPGA上的MSEL0、MESL1兩個引腳的狀態(tài)來選擇配置方式。各種方式的MSEL0、MESL1設(shè)置如下表所列:
說明:
在上表中,如果只采用一種配置方式,則可以直接將MSEL0、MESL1連接到VCC(注意要與FPGA的IO口的供電VCCIO相同)或GND;
如果需要多種配置方式,那么MSEL要用控制器(單片機(jī)、CPLD等)來控制以進(jìn)行切換;
MSEL管腳在配置開始前必須處于一個固定的狀態(tài),因此不能將MSEL管腳懸空。
主動串行配置
主動串行配置方式(AS)是將配置數(shù)據(jù)事先存儲在串行配置器件EPCS中,然后在系統(tǒng)上電時(shí)Cyclone IV FPGA通過串行接口讀取配置數(shù)據(jù)(如果是壓縮數(shù)據(jù),還會進(jìn)行解壓縮處理)對內(nèi)部的SRAM單元進(jìn)行配置。
因?yàn)樯鲜雠渲眠^程中FPGA控制配置接口,因此通常稱為主動配置方式。在配置期間,Cyclone IV用過串行接口來讀配置數(shù)據(jù),來對里面的SRAM編程。串行配置器件的四個接口包括,串行時(shí)鐘輸入DCLK,串行數(shù)據(jù)輸出DATA,低有效的片選信號NCE,串行數(shù)據(jù)輸入ASDI。
主動串行配置電路圖:
因?yàn)镕PGA上的nSTATUS、CONFIG_DONE管腳都是開漏結(jié)構(gòu),所以都要接上拉電阻。FPGA的片選腳nCE必須接地。
JTAG配置
通過JTAG接口,利用Quartus II軟件可以直接對FPGA進(jìn)行單獨(dú)的硬件重新配置。Quartus II軟件在編譯時(shí)會自動生成用于JTAG配置的.sof文件。
如果同時(shí)使用AS方式和JTAG方式來配置FPGA,JTAG配置方式擁有最高的優(yōu)先級,此時(shí)AS方式將停止,而執(zhí)行JTAG方式配置。
利用Quartus II軟件和USB Blaster等下載電纜可下載配置數(shù)據(jù)到FPGA。Quartus II軟件可以驗(yàn)證JTAG配置是否成功。JTAG配置通過下載電纜使用SOF、Jam或者JBC文件直接對FPGA進(jìn)行配置,這種配置方式只能用于調(diào)試階段,因?yàn)?,掉電后FPGA中的配置數(shù)據(jù)將丟失。
被動串行配置
被動串行PS配置方式是Altera Cyclone IV系列FPGA配置方式中比較常用的方式。但是,在工程應(yīng)用中若采用這種配置方式,F(xiàn)PGA需要連接一個智能主機(jī)(比如復(fù)雜可編程邏輯器件CPLD/微控制單元MCU等)以給其提供配置時(shí)鐘和配置數(shù)據(jù)。
在該配置方式下,智能主機(jī)在保證與存儲配置數(shù)據(jù)的閃存通信無誤的情況下,只需向FPGA提供一個DCLK信號和一個DATA0信號即可實(shí)現(xiàn)對FPGA的配置。另外,該DCLK信號還可以實(shí)現(xiàn)多種頻率以滿足用戶對配置時(shí)間的需求,這是該配置方式的一大亮點(diǎn)。
本文介紹了以Altera型的FPGA芯片為例介紹了FPGA的上電過程,并描述了三種常見的配置模式,用戶可以根據(jù)不同的需求來采用對應(yīng)的配置模式,每種配置模式下對應(yīng)的配置數(shù)據(jù)類型也是不相同的。
今天的內(nèi)容就到這了,如果您對文章內(nèi)容方面還有疑問,可以掃描下方二維碼,會有專門的老師幫你解決。
掃描失敗可添加微信號:18138814636
加入發(fā)燒友VIP會員獲取更多學(xué)習(xí)資料請點(diǎn)擊下方鏈接:
﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌
免責(zé)聲明:內(nèi)容整理自網(wǎng)絡(luò),版權(quán)歸原作者所有,如涉及作品版權(quán)問題,請及時(shí)與我們聯(lián)系,謝謝!
————你可能錯過的往期干貨,更多干貨請點(diǎn)擊文末閱讀原文————
向上劃動即可查看更多哦
1、華為卷入美國政府權(quán)力“黑洞”漩渦,中國芯能否遇強(qiáng)則強(qiáng)?
2、經(jīng)典!一文講透靜電保護(hù)(ESD)原理和設(shè)計(jì)
3、55條模電數(shù)電學(xué)習(xí)筆記,記得一定要看!
5、關(guān)于射頻芯片,看這一篇就夠了?。ǜ韶浭詹兀?/span>
6、無刷電機(jī)與有刷電機(jī)的區(qū)別,這樣看一目了然!
7、55頁P(yáng)PT!很火的MOS管電路工作原理及詳解,沒有之一!
8、超經(jīng)典的機(jī)械原理動圖合集,足足看了十遍,過癮!
10、史上最強(qiáng)單片機(jī)科普,看完給跪了!
13、盤點(diǎn)當(dāng)今市面主流單片機(jī),總有一款適合你!
15、單片機(jī)實(shí)用工具大全,超級贊,工程師必備!
1、大神教你DIY | 如何用一塊FPGA開發(fā)板制作音樂盒?!
2、DIY一個太陽充電器,僅需六步!準(zhǔn)工程師表示:秒懂!
3、四旋翼 DIY高大上!用STM32單片機(jī)搞定四旋翼無人機(jī)飛控
4、簡單實(shí)用,5分鐘教你DIY個人電子名片(工程師標(biāo)配)
5、史上最具創(chuàng)意鬼才10大DIY詳細(xì)集錦,你趕緊看看吧?。ㄊ詹匕妫?/span>
6、重磅!國外牛人教你DIY固態(tài)特斯拉線圈(附詳細(xì)流程)
8、暴力拆解特斯拉電池組,探究美帝黑科技?。@呆了?。?/a>
電子發(fā)燒友學(xué)院精選
1、限時(shí)!免費(fèi)!3節(jié)FPGA課程,快搶!
2、【學(xué)院推薦】LabVIEW與PLC如何進(jìn)行Modbus通信?
3、【學(xué)院推薦】什么是 BLDC 電機(jī)換向的最有效方法?
4、【學(xué)院推薦】LabVIEW編程實(shí)例:手把手教你按鍵監(jiān)視小軟件的實(shí)現(xiàn)
5、【學(xué)院推薦】PCB工程師不得不看:超級實(shí)用AD常用快捷鍵總結(jié)
電子發(fā)燒友活動推薦
1、關(guān)于ESD原理及防護(hù),這篇文章太專業(yè)了!點(diǎn)贊!(征文)
2、工程師搞PCB設(shè)計(jì),到底該學(xué)哪款軟件?——PADS篇
3、超強(qiáng)的四軸無人機(jī)飛控源代碼,支持STM32所有系列(附項(xiàng)目資料)
4、11個電源設(shè)計(jì)小技巧,看完提高一半的工作效率!(附資料下載)
5、從菜鳥到高手,學(xué)習(xí)arm32位單片機(jī)的必經(jīng)之路,給大家分享個人經(jīng)驗(yàn)!
6、2G資料!FPGA入門進(jìn)階必看資源合集(免費(fèi)下載)
7、學(xué)好LLC開關(guān)電源設(shè)計(jì),你必須要弄懂的原理知識(文末送資料大禮包)
電子發(fā)燒友電路精選
2、20個超經(jīng)典模擬電路,工程師你知道幾個?(收藏:附答案下載)
3、學(xué)好單片機(jī)必須要了解的的8個電路設(shè)計(jì)
4、單片機(jī)11種常見的電路設(shè)計(jì)模塊
7、太牛了!電路圖符號超強(qiáng)科普,不懂物理也能輕松看懂電路圖?。ㄍ扑]收藏)
8、555定時(shí)器常見應(yīng)用及50個經(jīng)典設(shè)計(jì)電路
電子發(fā)燒友資料精選
2、STM32大神筆記,超詳細(xì)單片機(jī)學(xué)習(xí)匯總資料(干貨分享)
3、工程師快速提升技能就看這份資料——固態(tài)繼電器(SSR)使用指南
4、承包你的電路圖資料!請收下這份國內(nèi)外精選電路圖集
6、測量電子電路設(shè)計(jì)資料大全(電路圖集+設(shè)計(jì)方案+制作流程)
7、無刷電機(jī)資料大全(基本原理+接線方法+解決方案)
電子發(fā)燒友熱文推薦
1、華為卷入美國政府權(quán)力“黑洞”漩渦,中國芯能否遇強(qiáng)則強(qiáng)?
2、經(jīng)典!一文講透靜電保護(hù)(ESD)原理和設(shè)計(jì)
3、55條模電數(shù)電學(xué)習(xí)筆記,記得一定要看!
5、關(guān)于射頻芯片,看這一篇就夠了?。ǜ韶浭詹兀?/span>
6、無刷電機(jī)與有刷電機(jī)的區(qū)別,這樣看一目了然!
7、55頁P(yáng)PT!很火的MOS管電路工作原理及詳解,沒有之一!
8、超經(jīng)典的機(jī)械原理動圖合集,足足看了十遍,過癮!
10、史上最強(qiáng)單片機(jī)科普,看完給跪了!
13、盤點(diǎn)當(dāng)今市面主流單片機(jī),總有一款適合你!
15、單片機(jī)實(shí)用工具大全,超級贊,工程師必備!
電子發(fā)燒友拆解及DIY推薦
1、大神教你DIY | 如何用一塊FPGA開發(fā)板制作音樂盒?!
2、DIY一個太陽充電器,僅需六步!準(zhǔn)工程師表示:秒懂!
3、四旋翼 DIY高大上!用STM32單片機(jī)搞定四旋翼無人機(jī)飛控
4、簡單實(shí)用,5分鐘教你DIY個人電子名片(工程師標(biāo)配)
5、史上最具創(chuàng)意鬼才10大DIY詳細(xì)集錦,你趕緊看看吧?。ㄊ詹匕妫?/span>
6、重磅!國外牛人教你DIY固態(tài)特斯拉線圈(附詳細(xì)流程)
電子發(fā)燒友學(xué)院精選
1、限時(shí)!免費(fèi)!3節(jié)FPGA課程,快搶!
2、【學(xué)院推薦】LabVIEW與PLC如何進(jìn)行Modbus通信?
3、【學(xué)院推薦】什么是 BLDC 電機(jī)換向的最有效方法?
4、【學(xué)院推薦】LabVIEW編程實(shí)例:手把手教你按鍵監(jiān)視小軟件的實(shí)現(xiàn)
5、【學(xué)院推薦】PCB工程師不得不看:超級實(shí)用AD常用快捷鍵總結(jié)
電子發(fā)燒友活動推薦
1、關(guān)于ESD原理及防護(hù),這篇文章太專業(yè)了!點(diǎn)贊!(征文)
2、工程師搞PCB設(shè)計(jì),到底該學(xué)哪款軟件?——PADS篇
3、超強(qiáng)的四軸無人機(jī)飛控源代碼,支持STM32所有系列(附項(xiàng)目資料)
4、11個電源設(shè)計(jì)小技巧,看完提高一半的工作效率?。ǜ劫Y料下載)
5、從菜鳥到高手,學(xué)習(xí)arm32位單片機(jī)的必經(jīng)之路,給大家分享個人經(jīng)驗(yàn)!
6、2G資料!FPGA入門進(jìn)階必看資源合集(免費(fèi)下載)
7、學(xué)好LLC開關(guān)電源設(shè)計(jì),你必須要弄懂的原理知識(文末送資料大禮包)
電子發(fā)燒友電路精選
2、20個超經(jīng)典模擬電路,工程師你知道幾個?(收藏:附答案下載)
3、學(xué)好單片機(jī)必須要了解的的8個電路設(shè)計(jì)
4、單片機(jī)11種常見的電路設(shè)計(jì)模塊
7、太牛了!電路圖符號超強(qiáng)科普,不懂物理也能輕松看懂電路圖?。ㄍ扑]收藏)
8、555定時(shí)器常見應(yīng)用及50個經(jīng)典設(shè)計(jì)電路
電子發(fā)燒友資料精選
2、STM32大神筆記,超詳細(xì)單片機(jī)學(xué)習(xí)匯總資料(干貨分享)
3、工程師快速提升技能就看這份資料——固態(tài)繼電器(SSR)使用指南
4、承包你的電路圖資料!請收下這份國內(nèi)外精選電路圖集
-
FPGA
+關(guān)注
關(guān)注
1629文章
21736瀏覽量
603317 -
時(shí)序
+關(guān)注
關(guān)注
5文章
387瀏覽量
37331
原文標(biāo)題:FPGA上電加載時(shí)序介紹
文章出處:【微信號:elecfans,微信公眾號:電子發(fā)燒友網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論