版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第5章 FPGA配置和Flash編程,本章將首先介紹FPGA配置方式和配置過程,然后簡(jiǎn)單介紹了配置芯片、配置文件的種類以及配置電路設(shè)計(jì)要點(diǎn),本章最后講述了配置文件下載、Flash編程等方面的內(nèi)容,其中Flash編程包括Flash的編程、EPCS的編程。,主要內(nèi)容,第5章 目錄,5.1 FPGA配置 5.2 Cyclone及Cyclone II FPGA配置5.3 配置芯片5.4 配置的軟件設(shè)置
2、5.5 配置文件5.6 配置可靠性及電路設(shè)計(jì)注意事項(xiàng)5.7 下載配置文件到FPGA5.8 下載配置文件到EPCS5.9 IDE Flash Programmer介紹5.10 用戶程序引導(dǎo)5.11 使用IDE Flash Programmer 編程,第5章 目錄,5.1 FPGA配置 5.2 Cyclone及Cyclone II FPGA配置5.3 配置芯片5.4 配置的軟件
3、設(shè)置5.5 配置文件5.6 配置可靠性及電路設(shè)計(jì)注意事項(xiàng)5.7 下載配置文件到FPGA5.8 下載配置文件到EPCS5.9 IDE Flash Programmer介紹5.10 用戶程序引導(dǎo)5.11 使用IDE Flash Programmer 編程,5.1 FPGA配置,,,,配置(configuration)是對(duì)FPGA的內(nèi)容進(jìn)行編程的過程。每次上電后都需要進(jìn)行配置是基于SRAM工藝FPGA的一個(gè)特點(diǎn),也
4、可以說是一個(gè)缺點(diǎn)。FPGA配置過程如下:,外部電路將配置數(shù)據(jù)載入片內(nèi)配置RAM中,,,外部電路,,FPGA配置完成,配置RAM,配置RAM中的配置數(shù)據(jù):用于控制FPGA內(nèi)部可編程的內(nèi)部邏輯、內(nèi)部寄存器和I/O引腳初始化,I/O驅(qū)動(dòng)器使能等。之后FPGA進(jìn)入用戶模式。,,,,5.1 FPGA配置,,,FPGA配置方式根據(jù)FPGA在配置電路中的角色,可以將配置方式分為三類:1.FPGA主動(dòng)串行(AS)方式 2. JTAG方式 3
5、. FPGA被動(dòng)(Passive)方式,,,,配置數(shù)據(jù),FPGA主動(dòng)串行(AS)方式,,1,下載工具或智能主機(jī),,,JTAG方式,2,,,,FPGA僅輸出響應(yīng)信號(hào),,FPGA被動(dòng)(Passive)方式,3,,,5.1 FPGA配置,,,FPGA配置方式根據(jù)FPGA在配置電路中的角色,可以將配置方式分為三類:1.FPGA主動(dòng)串行(AS)方式 2. JTAG方式 3. FPGA被動(dòng)(Passive)方式,,,,配置數(shù)據(jù),FPGA
6、主動(dòng)串行(AS)方式,,1,下載工具或智能主機(jī),,,JTAG方式,2,,,,FPGA僅輸出響應(yīng)信號(hào),,FPGA被動(dòng)(Passive)方式,3,,被動(dòng)方式可分為下列幾種方式: 被動(dòng)串行方式(PS) 快速被動(dòng)并行(FPP)方式 被動(dòng)并行異步(PPA)方式 被動(dòng)并行同步(PPS)方式 被動(dòng)串行異步(PSA)方式,,5.1 FPGA配置,,,Altera F
7、PGA配置方式列表,5.1 FPGA配置,,,Cyclone FPGA配置方式表,5.1 FPGA配置,,FPGA配置過程FPGA的配置包括3各階段:復(fù)位、配置和初始化。,,,,復(fù)位,配置,初始化,進(jìn)入用戶模式,,,,,,,配置過程波形圖,5.1 FPGA配置,,FPGA配置過程FPGA的配置包括3各階段:復(fù)位、配置和初始化。,,,,復(fù)位,配置,初始化,進(jìn)入用戶模式,,,,,,,,,,配置數(shù)據(jù)寫入到器件中,,器件內(nèi)部邏輯和寄存器
8、初始化,I/O緩沖使能,,配置過程波形圖,,FPGA配置過程,,FPGA 配置流程圖,第5章 目錄,5.1 FPGA配置 5.2 Cyclone及Cyclone II FPGA配置5.3 配置芯片5.4 配置的軟件設(shè)置5.5 配置文件5.6 配置可靠性及電路設(shè)計(jì)注意事項(xiàng)5.7 下載配置文件到FPGA5.8 下載配置文件到EPCS5.9 IDE Flash Programmer介紹
9、5.10 用戶程序引導(dǎo)5.11 使用IDE Flash Programmer 編程,5.2 Cyclone及Cyclone II FPGA配置,,,,Cyclone 以及Cyclone II FPGA使用SRAM單元來存儲(chǔ)配置數(shù)據(jù)。FPGA中的SRAM是易失性的,每次上電之前,配置數(shù)據(jù)(或壓縮的配置數(shù)據(jù))必須重新下載到FPGA中。下面的2個(gè)條件均可使FPGA產(chǎn)生一次配置請(qǐng)求:給FPGA重新上電;FPGA的nConfig引腳
10、上產(chǎn)生一個(gè)低電平到高電平的上升沿。,5.2 Cyclone及Cyclone II FPGA配置,,,,Cyclone及Cyclone II FPGA的配置方式包括:FPGA主動(dòng)串行(AS)配置方式; FPGA被動(dòng)串行(PS)配置方式 ;JTAG配置方式 。用戶可以通過設(shè)置FPGA上的MSEL0、MESL1兩個(gè)引腳的狀態(tài)來選擇配置方式。各種方式的MSEL0、MESL1設(shè)置如下表所列:,5.2 Cyclone及Cyclone
11、II FPGA配置,,,配置方式設(shè)置,說明:在上表中,如果只采用一種配置方式,則可以直接將MSEL0、MESL1連接到VCC(注意要與FPGA的IO口的供電VCCIO相同)或GND;如果需要多種配置方式,那么MSEL要用控制器(單片機(jī)、CPLD等)來控制以進(jìn)行切換;MSEL管腳在配置開始前必須處于一個(gè)固定的狀態(tài),因此不能將MSEL管腳懸空。,5.2 Cyclone及Cyclone II FPGA配置,,,,另外,不同型號(hào)FPGA
12、的配置文件大小不同,下表中列出了FPGA在不壓縮情況下二進(jìn)制配置文件(.rbf)的最大大小。設(shè)計(jì)者可以根據(jù)配置文件的大小來選擇合適的配置器件和其它存儲(chǔ)器。并可使用壓縮功能,來減小配置文件的大小。,說明:同型號(hào)的FPGA配置文件會(huì)因所使用的單元不同而不同,配置文件越小下載速度和配置速度越快。,5.2 Cyclone及Cyclone II FPGA配置,,,Cyclone FPGA 二進(jìn)制文件(.rbf)大小,,,主動(dòng)串行配置主動(dòng)串行
13、配置方式(AS)是將配置數(shù)據(jù)事先存儲(chǔ)在串行配置器件EPCS中,然后在系統(tǒng)上電時(shí)Cyclone及Cyclone II FPGA通過串行接口讀取配置數(shù)據(jù)(如果是壓縮數(shù)據(jù),還會(huì)進(jìn)行解壓縮處理)對(duì)內(nèi)部的SRAM單元進(jìn)行配置。因?yàn)樯鲜雠渲眠^程中FPGA控制配置接口,因此通常稱為主動(dòng)配置方式。,5.2 Cyclone及Cyclone II FPGA配置,,,主動(dòng)串行配置,主動(dòng)串行配置的電路原理圖,說明:因?yàn)镕PGA上的nSTATUS、CONFI
14、G_DONE管腳都是開漏結(jié)構(gòu),所以都要接上拉電阻。FPGA的片選腳nCE必須接地。,用于對(duì)EPCS的編程,5.2 Cyclone及Cyclone II FPGA配置,主動(dòng)串行配置(一個(gè)配置器件配置多個(gè)FPGA芯片1),主動(dòng)串行配置(一個(gè)配置器件配置多個(gè)FPGA芯片2),主動(dòng)串行配置(一個(gè)配置器件配置多個(gè)FPGA芯片3),,主動(dòng)串行配置,,,,復(fù)位,配置,初始化,進(jìn)入用戶模式,,,,,,,,,配置數(shù)據(jù)寫入到器件中,器件內(nèi)部邏輯和寄存器
15、初始化,I/O緩沖使能,配置過程波形圖,,,主動(dòng)串行配置串行時(shí)鐘(DCLK)在配置結(jié)束后內(nèi)部振蕩器關(guān)閉。下表列出了DCLK的輸出頻率。對(duì)于Cyclone II FPGA,通過MSEL[]可以選擇時(shí)鐘為20MHz或40MHz。配置的時(shí)間與配置文件大小以及DCLK的頻率有關(guān)。,5.2 Cyclone及Cyclone II FPGA配置,,,主動(dòng)串行配置用戶可以在QuartusII軟件中選擇,用哪一個(gè)時(shí)鐘來進(jìn)行FPGA寄存器和用戶I/
16、O口的初始化、以及是否在配置出錯(cuò)后重新開始配置等內(nèi)容。如下圖所示的彈出窗口:,5.2 Cyclone及Cyclone II FPGA配置,功能服用引腳設(shè)置,,,,,主動(dòng)串行配置(AS)的配置時(shí)間估算主動(dòng)串行配置時(shí)間為串行配置器件數(shù)據(jù)傳送到FPGA的時(shí)間,這取決于DCLK的頻率以及配置文件的大小。以Cyclone EP1C6器件為例,非壓縮的.rbf格式配置文件的大小為1167216位、DCLK最低頻率為14MHz(71ns),則最
17、大配置時(shí)間為:1167216*71ns=82872336ns≈83ms當(dāng)DCLK的典型頻率為17MHz(59ns)時(shí),配置時(shí)間為:1167216*59ns=68865744ns ≈69ms,5.2 Cyclone及Cyclone II FPGA配置,,,主動(dòng)串行配置(AS)的配置時(shí)間估算如果允許配置數(shù)據(jù)壓縮,由于配置時(shí)要對(duì)數(shù)據(jù)進(jìn)行解壓縮,需要增加配置時(shí)間,一般要增加50%的配置時(shí)間,即EP1C6器件在采用壓縮數(shù)據(jù)進(jìn)行配置時(shí)需要
18、約103.5ms的時(shí)間。此外,在配置完成后緊接著的FPGA寄存器和用戶I/O口初始化也需要消耗一定的時(shí)間(Cyclone為136個(gè)時(shí)鐘周期,Cyclone II為299個(gè)時(shí)鐘周期),當(dāng)不采用CLKUSR管腳時(shí)鐘,而使用FPGA內(nèi)部10MHz時(shí)鐘時(shí),Cyclone EP1C6消耗13.6us的初始化時(shí)間。,5.2 Cyclone及Cyclone II FPGA配置,,,JTAG配置通過JTAG接口,利用Quartus II軟件可以直
19、接對(duì)FPGA進(jìn)行單獨(dú)的硬件重新配置。Quartus II軟件在編譯時(shí)會(huì)自動(dòng)生成用于JTAG配置的.sof文件。如果同時(shí)使用AS方式和JTAG方式來配置FPGA,JTAG配置方式擁有最高的優(yōu)先級(jí),此時(shí)AS方式將停止,而執(zhí)行JTAG方式配置。,5.2 Cyclone及Cyclone II FPGA配置,,主動(dòng)串行配置的電路原理圖,,,JTAG配置,5.2 Cyclone及Cyclone II FPGA配置,,,,JTAG配置利用Qu
20、artus II軟件和USB Blaster、ByteBlaster II等下載電纜可下載配置數(shù)據(jù)到FPGA。Quartus II軟件可以驗(yàn)證JTAG配置是否成功。JTAG配置通過下載電纜使用SOF、Jam或者JBC文件直接對(duì)FPGA進(jìn)行配置,這種配置方式只能用于調(diào)試階段,因?yàn)?,掉電后FPGA中的配置數(shù)據(jù)將丟失。,5.2 Cyclone及Cyclone II FPGA配置,ByteBlaster II,USB Blaster,第5章
21、 目錄,5.1 FPGA配置 5.2 Cyclone及Cyclone II FPGA配置5.3 配置芯片5.4 配置的軟件設(shè)置5.5 配置文件5.6 配置可靠性及電路設(shè)計(jì)注意事項(xiàng)5.7 下載配置文件到FPGA5.8 下載配置文件到EPCS5.9 IDE Flash Programmer介紹5.10 用戶程序引導(dǎo)5.11 使用IDE Flash Programmer 編程,
22、,,Altera FPGA的配置芯片可以分為3類:增強(qiáng)型配置器件:EPC16、EPC8、EPC4;主動(dòng)串行配置器件:EPCS64、EPCS16、EPCS4和EPCS1;普通配置器件:EPC2、EPC1、EPC1441。,5.3 配置芯片,,,5.3 配置芯片,各配置芯片的屬性如下表所示:,第5章 目錄,5.1 FPGA配置 5.2 Cyclone及Cyclone II FPGA配置5.3 配置芯片
23、5.4 配置的軟件設(shè)置5.5 配置文件5.6 配置可靠性及電路設(shè)計(jì)注意事項(xiàng)5.7 下載配置文件到FPGA5.8 下載配置文件到EPCS5.9 IDE Flash Programmer介紹5.10 用戶程序引導(dǎo)5.11 使用IDE Flash Programmer 編程,,,5.4 配置的軟件設(shè)置,配置方式及配置芯片選擇在Quartus II軟件中,可以設(shè)置配置方式和配置芯片。,,,,,配置選項(xiàng)卡,,,5
24、.4 配置的軟件設(shè)置,配置方式及配置芯片選擇在Quartus II軟件中,可以設(shè)置配置方式和配置芯片。,,配置方式(AS、PS)選擇,,配置模式(本地或遠(yuǎn)程)選擇,,配置器件(EPCS系列、EPC系列),,壓縮,配置選項(xiàng)卡,,,5.4 配置的軟件設(shè)置,復(fù)用配置引腳處理當(dāng)用戶選擇了一種配置方式后,在【Dual-Purpose Pins】選項(xiàng)卡中將自動(dòng)把這種方式下可復(fù)用為IO口的管腳列出。用戶可選擇如何處理這些引腳。,復(fù)用配置引腳處
25、理,,第5章 目錄,5.1 FPGA配置 5.2 Cyclone及Cyclone II FPGA配置5.3 配置芯片5.4 配置的軟件設(shè)置5.5 配置文件5.6 配置可靠性及電路設(shè)計(jì)注意事項(xiàng)5.7 下載配置文件到FPGA5.8 下載配置文件到EPCS5.9 IDE Flash Programmer介紹5.10 用戶程序引導(dǎo)5.11 使用IDE Flash Programm
26、er 編程,,,,5.5 配置文件,配置文件的格式Quartus II開發(fā)軟件能生成一個(gè)或多個(gè)用于配置電路的配置文件。,SRAM目標(biāo)文件(.sof).sof文件一般是在調(diào)試時(shí)通過下載電纜和JTAG直接下載到FPGA中的SRAM中。SOF文件在Quattus II軟件編譯時(shí)自動(dòng)生成。所有其他配置文件都是由SOF文件轉(zhuǎn)換生成的。,,,5.5 配置文件,配置文件的格式Quartus II開發(fā)軟件能生成一個(gè)或多個(gè)用于配置電路的配置文件。,
27、,編程目標(biāo)文件(.pof).pof文件用于對(duì)各種Altera配置芯片進(jìn)行編程。當(dāng)在Quartus II中設(shè)置好配置芯片類型后,軟件會(huì)在編譯時(shí)為用戶生成對(duì)應(yīng)器件類型的POF文件。多個(gè)FPGA的sof文件可放到一個(gè)POF文件中,形成一個(gè)配置文件。Quartus II也可以將配置文件分到幾個(gè)配置芯片中。,,,5.5 配置文件,配置文件的格式Quartus II開發(fā)軟件能生成一個(gè)或多個(gè)用于配置電路的配置文件。,,原始二進(jìn)制文件(.rbf)
28、RBF是原始二進(jìn)制配置數(shù)據(jù)的文件,只包含配置數(shù)據(jù)的內(nèi)容。RBF文件通常被用于外部帶微處理器的配置電路中。在被動(dòng)配置方式(PS)時(shí),可以將.rbf文件存儲(chǔ)在大容量存儲(chǔ)器中(如NOR Flash),然后通過微控制器讀取二進(jìn)制數(shù)據(jù)并裝載到FPGA中去。,,,5.5 配置文件,配置文件的格式Quartus II開發(fā)軟件能生成一個(gè)或多個(gè)用于配置電路的配置文件。,,原始編程數(shù)據(jù)文件(.rpd)RPD是包含Cyclone器件二進(jìn)制位流配置數(shù)據(jù)
29、的二進(jìn)制文件。該文件存儲(chǔ)在串行配置器件中,用于沒有Quartus II軟件的嵌入式環(huán)境。FPGA可以以此進(jìn)行主動(dòng)串行配置。RPD文件的大小等于目標(biāo)串行配置器件存儲(chǔ)容量大小。但不同于RBF文件,即使只是給單一的配置器件提供配置。每個(gè)字節(jié)的低位LSB應(yīng)先寫入串行配置器件。,,,5.5 配置文件,配置文件的格式Quartus II開發(fā)軟件能生成一個(gè)或多個(gè)用于配置電路的配置文件。,,十六進(jìn)制文件(.hex)HEX文件是Intel HEX格式
30、的ASCII文件。微控制器或外部主機(jī)可使用HEX文件來存儲(chǔ)和傳送配置數(shù)據(jù)。該文件也可以用于第三方的編程器對(duì)Altera公司的配置器件進(jìn)行編程。,,,5.5 配置文件,配置文件的格式Quartus II開發(fā)軟件能生成一個(gè)或多個(gè)用于配置電路的配置文件。,,文本列表文件(.ttf)文本列表文件是一種提供了逗號(hào)分隔的列表ASCII文件,該文件中的配置數(shù)據(jù)用于FPP、PPS、PPA和位寬。TTF文件可以允許用戶將配置數(shù)據(jù)以包含或源命令行的形
31、式作為微控制器的源代碼,微控制器能從配置器件和大容量存儲(chǔ)器中訪問這些數(shù)據(jù)并下載到目標(biāo)器件(FPGA)。,,,5.5 配置文件,配置文件的格式Quartus II開發(fā)軟件能生成一個(gè)或多個(gè)用于配置電路的配置文件。,,JAM文件(.jam)JAM文件是用來存儲(chǔ)器件編程信息的ASCII文本文件。這些文件在QusrtusII編程器和帶嵌入式處理器的環(huán)境中常用于一個(gè)或多個(gè)器件的編程、校驗(yàn)、查空。,,,5.5 配置文件,配置文件的格式Quart
32、us II開發(fā)軟件能生成一個(gè)或多個(gè)用于配置電路的配置文件。,,字節(jié)編碼文件(.jbc)JBC文件是同JAM文件內(nèi)容一樣的二進(jìn)制文件。此外還有串行位流文件(.sbf)是用于FLEX 10K和FLEX6000器件的配置。,,,5.5 配置文件,配置文件設(shè)置和轉(zhuǎn)換Quartus II軟件中指定生成哪種格式的配置文件。,,,,,配置文件格式設(shè)置,,,5.5 配置文件,配置文件設(shè)置和轉(zhuǎn)換用Quartus II軟件可對(duì)SOF和POF文件進(jìn)
33、行轉(zhuǎn)換,生成其它格式的文件。,編程文件的轉(zhuǎn)換,,,5.5 配置文件,配置文件設(shè)置和轉(zhuǎn)換SOF文件->RBF文件轉(zhuǎn)換步驟如下:,①,②,③,④,⑤,⑥,配置文件格式轉(zhuǎn)換,,,5.5 配置文件,配置文件的壓縮Quartus II 為Cyclone、Cyclone II以及StratixII提供了配置數(shù)據(jù)可壓縮特性,用戶可以為FPGA選擇容量較小的EPCS器件,以節(jié)省成本。ALTERA給出對(duì)配置數(shù)據(jù)的壓縮率可達(dá)到35%到60%。當(dāng)
34、在Quartus II軟件中使能壓縮特性時(shí),軟件自動(dòng)采用壓縮配置數(shù)據(jù)來生成POF配置文件。通過壓縮后的配置文件減小了對(duì)配置器件或Flash的存儲(chǔ)空間需求。,,,5.5 配置文件,配置文件的壓縮有兩種方法來使用壓縮特性:在用戶設(shè)計(jì)編譯前,可在編譯設(shè)置菜單中來選擇壓縮特性;在用戶設(shè)計(jì)編譯后,可利用File菜單中的文件轉(zhuǎn)換器Convet Programming Files進(jìn)行壓縮。通過文件轉(zhuǎn)換可利用SOF文件生成各種格式的壓縮文件。,
35、,,5.5 配置文件,配置文件的壓縮,方法一:編譯前選擇壓縮特性,方法二:用文件轉(zhuǎn)換器進(jìn)行壓縮,第5章 目錄,5.1 FPGA配置 5.2 Cyclone及Cyclone II FPGA配置5.3 配置芯片5.4 配置的軟件設(shè)置5.5 配置文件5.6 配置可靠性及電路設(shè)計(jì)注意事項(xiàng)5.7 下載配置文件到FPGA5.8 下載配置文件到EPCS5.9 IDE Flash Program
36、mer介紹5.10 用戶程序引導(dǎo)5.11 使用IDE Flash Programmer 編程,,,5.6 配置可靠性及電路設(shè)計(jì)注意事項(xiàng),配置的可靠性Altera的FPGA結(jié)構(gòu)中設(shè)計(jì)了一些保護(hù)電路來減小電源上電和數(shù)據(jù)噪聲的影響,使基于SRAM工藝的FPGA可靠性大大提高。為了提供可靠性主要采取了以下幾個(gè)方面:1.在配置過程中,采用CRC電路對(duì)輸入到FPGA中的每一幀配置數(shù)據(jù)進(jìn)行校驗(yàn),確保配置數(shù)據(jù)的正確性;2.Altera F
37、PGA提供了保護(hù)電路要求在系統(tǒng)在掉電后重新配置,以保證FPGA在系統(tǒng)掉電時(shí)的高可靠性。,,,5.6 配置可靠性及電路設(shè)計(jì)注意事項(xiàng),電路設(shè)計(jì)注意事項(xiàng)在配置電路設(shè)計(jì)時(shí),通常應(yīng)該注意下面幾點(diǎn):1.在設(shè)計(jì)DCLK和TCK時(shí),要將其當(dāng)作高速的時(shí)鐘信號(hào)來處理;2.在有多片F(xiàn)PGA配置鏈中,一般建議將各片F(xiàn)PGA的DCLK、DATA0(DATA[7..0]、nCONFIG、nSTATUS、和CONF_DONE信號(hào)連在一起。這樣可以確保各FPGA
38、配置同時(shí)開始和結(jié)束;3.確保FPGA配置管腳的電平和配置器件的電平兼容;4.確保所有配置管腳按照FPGA的數(shù)據(jù)手冊(cè)進(jìn)行連接。,第5章 目錄,5.1 FPGA配置 5.2 Cyclone及Cyclone II FPGA配置5.3 配置芯片5.4 配置的軟件設(shè)置5.5 配置文件5.6 配置可靠性及電路設(shè)計(jì)注意事項(xiàng)5.7 下載配置文件到FPGA5.8 下載配置文件到EPCS5.9
39、IDE Flash Programmer介紹5.10 用戶程序引導(dǎo)5.11 使用IDE Flash Programmer 編程,,5.7 下載配置文件到FPGA,要使用JTAG下載配置數(shù)據(jù)到FPGA,首先要生成可用于JTAG下載的配置數(shù)據(jù)文件,這些配置數(shù)據(jù)文件包括:.sof、.Jam以及.JBC。一般來說,JTAG方式利用SOF文件即可,JAM和JBC可以不用。利用JATG接口和ByteBlasterII電纜下載配置數(shù)據(jù)到FP
40、GA的過程,如下:,,5.7 下載配置文件到FPGA,①,②,③,④,⑤,⑥,⑦,JTAG下載配置數(shù)據(jù)過程,,5.7 下載配置文件到FPGA,①,②,③,④,ByteBlaster II 下載電纜安裝,第5章 目錄,5.1 FPGA配置 5.2 Cyclone及Cyclone II FPGA配置5.3 配置芯片5.4 配置的軟件設(shè)置5.5 配置文件5.6 配置可靠性及電路設(shè)計(jì)注意事項(xiàng)5.7
41、 下載配置文件到FPGA5.8 下載配置文件到EPCS5.9 IDE Flash Programmer介紹5.10 用戶程序引導(dǎo)5.11 使用IDE Flash Programmer 編程,,5.8 下載配置文件到EPCS,使用AS方式對(duì)Cyclone FPGA配置前,必須將配置文件寫入串行配置器件EPCS。寫入的方法有3種:在QuartusII的Programmer中,通過專門與EPCS連接的AS下載接口來下載.p
42、of文件到EPCS;在QuartusII的Programmer中,使用JTAG接口,通過FPGA中間通道來間接對(duì)EPCS進(jìn)行編程;使用Nios II IDE中的Flash Programmer對(duì)EPCS進(jìn)行編程。,,,5.8 下載配置文件到EPCS,AS接口的EPCS直接編程利用ByteBlasterII、AS接口、.pof配置文件以及QuartusII的Programmer可直接對(duì)EPCS進(jìn)行編程,這種方式速度快,但需要專門的A
43、S接口。下載過程如下:,,5.8 下載配置文件到EPCS,①,②,③,④,⑤,⑥,⑦,EPCS的AS編程,,,5.8 下載配置文件到EPCS,JTAG接口的EPCS間接編程JTAG接口的EPCS間接編程是指利用Quartus II的Programmer、FPGA的JTAG接口以及Altera提供的用于編程時(shí)配置FPGA的Serial FlashLoader(SFL)來對(duì)EPCS進(jìn)行編程。,EPCS編程示意圖,(a) 傳統(tǒng)通過AS接口對(duì)
44、AS接口對(duì)EPCS編程,(a) 通過SFL和JTAG接口對(duì)EPCS編程,,,,5.8 下載配置文件到EPCS,,利用JTAG和SFL對(duì)EPCS的編程過程示意圖,.jic或.jam,,,5.8 下載配置文件到EPCS,①,②,③,④,⑤,文件轉(zhuǎn)換對(duì)話框,SOF文件轉(zhuǎn)換為JIC文件,,5.8 下載配置文件到EPCS,⑥·,⑦,選擇器件,,5.8 下載配置文件到EPCS,⑧,⑨,⑩,選擇添加被轉(zhuǎn)換文件,,5.8 下載配置文件到EPC
45、S,⑾,⑿,⒀,設(shè)置轉(zhuǎn)換配置文件壓縮窗口,,,5.8 下載配置文件到EPCS,JIC文件轉(zhuǎn)換為JAM文件要使用JAM文件,用戶必須首先將SOF文件轉(zhuǎn)換為JIC文件,然后再將JIC文件轉(zhuǎn)換為JAM文件。轉(zhuǎn)換步驟如下:,,5.8 下載配置文件到EPCS,①,②,③,④,選擇添加進(jìn)行轉(zhuǎn)換的JIC文件,,5.8 下載配置文件到EPCS,⑤,⑥,⑦,,,5.8 下載配置文件到EPCS,JIC和JAM文件的內(nèi)容SFL的配置映像。這個(gè)配置映像是在
46、文件轉(zhuǎn)換時(shí)當(dāng)用戶選擇目標(biāo)FPGA時(shí)由QuartusII軟件創(chuàng)建的;在對(duì)串行配置器件進(jìn)行編程之前,SFL配置映像要對(duì)FPGA進(jìn)行配置;串行配置器件的配置數(shù)據(jù)。這個(gè)配置數(shù)據(jù)來源于用戶選擇的SOF文件,在編程過程中這些配置數(shù)據(jù)將被寫入串行配置器件EPCS。,,,5.8 下載配置文件到EPCS,使用JIC文件和Quartus II Programmer對(duì)EPCS編程通過前面的方法將SOF文件轉(zhuǎn)換成JIC文件??梢岳肑IC文件和Qusrtu
47、s II Programmer 對(duì)串行配置器件EPCS進(jìn)行編程,步驟如下:,選中SFL映像對(duì)FPGA進(jìn)行配置,選中配置數(shù)據(jù)寫入EPCS,開始編程,,,5.8 下載配置文件到EPCS,使用JAM文件和Quartus II Programmer對(duì)EPCS編程JIC文件轉(zhuǎn)成JAM文件,可以利用JAM文件和Quartus II Programmer對(duì)串行配置器件EPCS進(jìn)行編程,步驟如下:,使用JIC和Quartus II Progrmme
48、r 進(jìn)行EPCS編程,第5章 目錄,5.1 FPGA配置 5.2 Cyclone及Cyclone II FPGA配置5.3 配置芯片5.4 配置的軟件設(shè)置5.5 配置文件5.6 配置可靠性及電路設(shè)計(jì)注意事項(xiàng)5.7 下載配置文件到FPGA5.8 下載配置文件到EPCS5.9 IDE Flash Programmer介紹5.10 用戶程序引導(dǎo)5.11 使用IDE Flash
49、Programmer 編程,,5.9 IDE Flash Programmer介紹,Nios II IDE 提供了Flash Programer工具來對(duì)目標(biāo)板上遵守CFI(common flash interface)規(guī)范的Flash進(jìn)行編程。Flash Programer通過使用Altera的下載電纜能夠方便的對(duì)目標(biāo)板上連接在FPGA上的Flash進(jìn)行編程。IDE的Flash Programer除了能對(duì)連接在FPGA上的Flash進(jìn)
50、行編程外,還能對(duì)連接在FPGA上的串行配置器件EPCS進(jìn)行編程。,,,,5.9 IDE Flash Programmer介紹,IDE Flash Programmer編程工作過程IDE Flash Programmer通過2個(gè)過程將數(shù)據(jù)寫入Flash。,第一步:使用Flash編程設(shè)計(jì)對(duì)FPGA進(jìn)行配置,第二步:傳送編程內(nèi)容到Flash器件,,,5.9 IDE Flash Programmer介紹,Flash編程內(nèi)容的類型用戶軟件;
51、FPGA的配置數(shù)據(jù);任意內(nèi)容。,,,5.9 IDE Flash Programmer介紹,Flash文件所有要通過IDE Programmer寫入Flash中的數(shù)據(jù)文件都要轉(zhuǎn)換為能被Flash Programmer讀取的.flash文件。IDE Flash Programmer在后臺(tái)提供了elf2flash、sof2flash、bin2flash三個(gè)命令來分別將這三種文件轉(zhuǎn)換為flash文件,這三個(gè)命令在IDE Flash Pro
52、grammer后臺(tái)自動(dòng)調(diào)用執(zhí)行而不需用戶干預(yù)。,第5章 目錄,5.1 FPGA配置 5.2 Cyclone及Cyclone II FPGA配置5.3 配置芯片5.4 配置的軟件設(shè)置5.5 配置文件5.6 配置可靠性及電路設(shè)計(jì)注意事項(xiàng)5.7 下載配置文件到FPGA5.8 下載配置文件到EPCS5.9 IDE Flash Programmer介紹5.10 用戶程序引導(dǎo)5.11
53、 使用IDE Flash Programmer 編程,,5.10 用戶程序引導(dǎo),用戶程序可以存放在Flash中,也可以存放在EPCS,因此用戶程序可以從Flash引導(dǎo),也可以從EPCS中引導(dǎo)。,用戶程序,用戶程序,用戶引導(dǎo)程序,,,5.10 用戶程序引導(dǎo),從CFI Flash引導(dǎo)FPGA上電或復(fù)位配置成功后,如果配置中包含的Nios II處理器復(fù)位地址指向Flash的地址空間,那么程序?qū)腇lash引導(dǎo)。,SOPC Builder指定
54、復(fù)位地址為Flash,,,,5.10 用戶程序引導(dǎo),從串行配置器件EPCS引導(dǎo)如果使用串行配置器件EPCS,且配置數(shù)據(jù)的容量小于EPCS的容量,那么剩余的存儲(chǔ)空間可用來存放用戶程序。,EPCS控制器結(jié)構(gòu)框圖,,,,,,Boot-Loader,ROM,EPCS控制器,,,,配置存,儲(chǔ)空間,,通用存,儲(chǔ)空間,EPCS配置器件,,,Avalon,總線,,,NiosII,CPU,,,片內(nèi)外設(shè),Altera FPGA,,,,,,,,,,,,,,
55、,,,存儲(chǔ)FPGA配置數(shù)據(jù),剩余空間可用于存儲(chǔ)用戶非易失性數(shù)據(jù)。,1KB的片內(nèi)存儲(chǔ)器,,,5.10 用戶程序引導(dǎo),從串行配置器件EPCS引導(dǎo)IDE的Flash Programmer能將配置數(shù)據(jù)文件(.sof)和用戶程序(.elf)寫入到EPCS中。當(dāng)用戶程序存放在EPCS中時(shí),如果想從EPCS中引導(dǎo)程序,在SOPC Builder中必須添加EPCS控制器,且必須在SOPC Builder中指定Nios II處理器的復(fù)位地址指向EPC
56、S控制器(epcs_controller)。,,5.10 用戶程序引導(dǎo),從串行配置器件EPCS引導(dǎo),SOPC Builder指定復(fù)位地址為epcs_controller,,,5.10 用戶程序引導(dǎo),引導(dǎo)復(fù)制程序Altera提供了引導(dǎo)復(fù)制程序,它能根據(jù)用戶在IDE中設(shè)置的用戶程序文件(.elf)連接地址來重新裝載程序,然后跳到.elf文件的連接地址執(zhí)行程序。,,引導(dǎo)復(fù)制程序是IDE Flash Programmer在后臺(tái)執(zhí)行elf2fl
57、ash命令時(shí)判斷并自動(dòng)加入完成的。,,加入Boot Copier 示意圖,,5.10 用戶程序引導(dǎo),,用戶程序ELF文件連接設(shè)置在Nios II IDE中工程的屬性頁控制了工程中的程序與硬件系統(tǒng)的相互影響關(guān)系以及IDE怎樣編譯連接該應(yīng)用工程。,用戶IDE工程庫屬性設(shè)置對(duì)話框局部圖,,,5.10 用戶程序引導(dǎo),用戶程序引導(dǎo)小結(jié)通過SOPC Builder和IDE用戶工程庫屬性頁中的不同設(shè)置,可實(shí)現(xiàn)用戶程序的不同引導(dǎo)和在不同存儲(chǔ)空間運(yùn)行
58、,現(xiàn)總結(jié)于下表。,,第5章 目錄,5.1 FPGA配置 5.2 Cyclone及Cyclone II FPGA配置5.3 配置芯片5.4 配置的軟件設(shè)置5.5 配置文件5.6 配置可靠性及電路設(shè)計(jì)注意事項(xiàng)5.7 下載配置文件到FPGA5.8 下載配置文件到EPCS5.9 IDE Flash Programmer介紹5.10 用戶程序引導(dǎo)5.11 使用IDE Flash P
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- NAND FLASH編程驗(yàn)證和算法優(yōu)化.pdf
- NAND Flash控制器的FPGA驗(yàn)證.pdf
- 基于FPGA的Flash存儲(chǔ)器測(cè)試系統(tǒng).pdf
- 基于FPGA的USB、Flash控制器設(shè)計(jì).pdf
- 基于FPGA的NAND FLASH壞塊管理模塊研究.pdf
- 基于FPGA的NAND Flash控制器系統(tǒng)設(shè)計(jì).pdf
- flash繪圖方法和技巧
- 基于Flash FPGA的電子內(nèi)窺鏡圖像處理系統(tǒng)研究.pdf
- 液晶電視用FPGA串行flash配置方法的研究與應(yīng)用.pdf
- flash和dreamweaver快捷鍵大全
- 使用niosⅱide對(duì)flash存儲(chǔ)器編程的步驟啟動(dòng)niosiiide。建立軟件
- 可編程fpga數(shù)字系統(tǒng)設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)書
- 基于FPGA的可編程技術(shù)的應(yīng)用.pdf
- flash
- flash制作mtv論文 flash畢業(yè)論文 flash mtv論文
- mc9s08系列單片機(jī)flash存儲(chǔ)器的在線編程
- Flash Memory的研究和設(shè)計(jì)實(shí)現(xiàn).pdf
- FPGA中可編程邏輯單元的設(shè)計(jì)與研究.pdf
- 便攜式FPGA編程器的設(shè)計(jì)與實(shí)現(xiàn).pdf
- 建立ug編程模板提高編程質(zhì)量和效率
評(píng)論
0/150
提交評(píng)論