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

不同場(chǎng)景的FPGA外圍電路的上電時(shí)序分析與設(shè)計(jì)

FPGA從并加載解決方案的介紹

FPGA配置模式選擇 FPGA上電加載時(shí)序介紹

英業(yè)達(dá)上電時(shí)序的詳細(xì)資料說(shuō)明

基于DSP芯片TMS320C6416實(shí)現(xiàn)上電Flash自行加載FPGA的應(yīng)用設(shè)計(jì)

FPGA設(shè)計(jì)之時(shí)序約束

評(píng)論