加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入
  • 正文
    • 聯(lián)系方式
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

FPGA最小系統(tǒng)之:實(shí)例2 在Xilinx的FPGA開發(fā)板上運(yùn)行第一個(gè)FPGA程序

2013/08/15
閱讀需 33 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

?

2.6.1? 實(shí)例的內(nèi)容及目標(biāo)

1.實(shí)例的主要內(nèi)容

本節(jié)旨在通過給定的工程實(shí)例——“按鍵開關(guān)控制LED”來熟悉Xilinx ISE軟件的基本操作、設(shè)計(jì)、編譯及仿真流程。同時(shí)使用基于Xilinx FPGA開發(fā)板將該實(shí)例進(jìn)行下載、驗(yàn)證及調(diào)試,完成工程設(shè)計(jì)的硬件實(shí)現(xiàn),熟悉Xilinx FPGA開發(fā)板的使用及配置方式。

在本訓(xùn)練中設(shè)計(jì)軟件采用ISE 7.1i,實(shí)現(xiàn)功能是利用4個(gè)按鍵開關(guān)來控制8個(gè)LED燈。具體的顯示方案是由4個(gè)按鍵開關(guān)控制8個(gè)LED燈,根據(jù)按鍵開關(guān)按下的不同,會(huì)有不同的燈點(diǎn)亮。

在本訓(xùn)練中,將主要講解下面一些知識(shí)點(diǎn)。

  • Xilinx ISE工程創(chuàng)建及屬性設(shè)置。
  • Xilinx ISE源文件設(shè)計(jì)輸入方式。
  • Xilinx ISE綜合。
  • Xilinx ISE行為仿真。
  • Xilinx ISE約束設(shè)計(jì)。
  • Xilinx ISE布局布線。
  • Xilinx ISE時(shí)序仿真。
  • Xilinx ISE硬件下載。

通過這些知識(shí)點(diǎn),按照下面提供的訓(xùn)練流程,讀者可以迅速地掌握使用Xilinx ISE軟件進(jìn)行FPGA開發(fā)的方法。

2.實(shí)例目標(biāo)

通過詳細(xì)的流程講解,讀者應(yīng)達(dá)到下面的目標(biāo)。

  • 熟悉Xilinx ISE軟件的操作環(huán)境。
  • 熟悉Xilinx ISE軟件開發(fā)FPGA的基本流程。
  • 可獨(dú)立使用Xilinx ISE軟件開發(fā)新工程。

2.6.2? 平臺(tái)簡介

本實(shí)例基于紅色颶風(fēng)II代Xilinx板,此開發(fā)板集成了Xilinx的Spartan3 40萬門FPGA及相關(guān)的豐富外設(shè)資源。

此開發(fā)板更加詳細(xì)的信息、擴(kuò)展附件及使用方法,可以到紅色颶風(fēng)的官方網(wǎng)站:https://www.fpgadev.com獲取更多的信息。

本實(shí)例將通過一個(gè)簡單的實(shí)例在這個(gè)開發(fā)板上對(duì)Xilinx的FPGA設(shè)計(jì)流程做一個(gè)全面的介紹,依照此例程的流程便可在該開發(fā)板上運(yùn)行一個(gè)FPGA程序。

如圖2.65所示為此開發(fā)板的一個(gè)外觀圖。

?

圖2.65? 紅色颶風(fēng)II代Xilinx板外觀圖

?

2.6.3? 實(shí)例詳解

本節(jié)同樣將使用圖解的方式將整個(gè)流程一步一步展現(xiàn)給讀者,使讀者能夠輕松掌握ISE的開發(fā)流程。

1.工程創(chuàng)建及屬性設(shè)置

(1)啟動(dòng)Project Navigator。

安裝好ISE7.1套件后,可以按照以下的方法打開Project Navigator。

① 在桌面上面雙擊Xilinx ISE 7.1i的快捷方式圖標(biāo),如圖2.66左圖所示。

② 選擇“開始”→“所有程序”→“Xilinx ISE 7.1i”→“Project Navigator”,打開Project Navigator,如圖2.66右圖所示。

打開后的Project Navigator界面如圖2.67所示??梢钥吹?,Project Navigator的界面是一個(gè)標(biāo)準(zhǔn)的Windows軟件視窗。分別包括標(biāo)題欄、菜單欄、工具欄、工程瀏覽器、進(jìn)度瀏覽器、主工作區(qū)、信息欄、狀態(tài)欄。

?????

圖2.66? ISE的啟動(dòng)

?

圖2.67? Project Navigator主界面

?

(2)創(chuàng)建一個(gè)新的工程。

單擊“File”→“New Project…”,彈出如圖2.68所示對(duì)話框。

?

圖2.68? 新建工程對(duì)話框

?

在這里填寫將要?jiǎng)?chuàng)建的工程的名稱(Project Name)、路徑(Project Location)和工程的頂層模塊類型(Top-Level Module Type)。

頂層模塊類型我們主要使用前面兩種:HDL(Hardware Design Language)硬件設(shè)計(jì)語言模式和Schematic原理圖模式,這里選擇HDL。

(3)設(shè)置工程屬性。

填寫好后,單擊“Next”按鈕,在如圖2.69所示的對(duì)話框中設(shè)置工程的屬性。

?

圖2.69? 工程屬性對(duì)話框

?

在這個(gè)對(duì)話框可設(shè)置的屬性定義,如表2.4所示。

表2.4????????????????????????????????????????????????????????????????? 屬性定義

Device Family

使用的FPGA的種類

Device

使用的FPGA的型號(hào)

Package

使用的FPGA的封裝

Speed Grade

使用的FPGA的速度級(jí)別

Top-Level Module Type

頂層模塊類型

Synthesis Tool

綜合工具

Simulator

仿真工具

Generated Simulation Language

仿真模塊語言類型

?

本實(shí)例選用的都是ISE自己帶的綜合工具和仿真工具,這里也可以選擇第三方的應(yīng)用軟件,如圖2.70和圖2.71所示。

?

圖2.70? 工程屬性對(duì)話框選擇第三方綜合工具

?

圖2.71? 工程屬性對(duì)話框選擇第三方仿真工具

?

ModelSim和Synplify Pro是比較通用的第三方仿真和綜合軟件。在這里如果我們選擇了使用第三方的軟件進(jìn)行綜合及仿真的話,在后面執(zhí)行相應(yīng)步驟的時(shí)候ISE Navigator就會(huì)自動(dòng)尋找并打開相應(yīng)的軟件。

(4)添加設(shè)計(jì)文件。

填寫好FPGA型號(hào)和使用的綜合,仿真軟件后,單擊“Next”按鈕打開如圖2.72所示的創(chuàng)建源文件對(duì)話框。

?

圖2.72? 創(chuàng)建源文件對(duì)話框

?

在這個(gè)對(duì)話框里面,允許用戶為即將建立的工程創(chuàng)建一個(gè)新的源文件,并且這里只可以創(chuàng)建一個(gè)源文件。其他的要在工程建立以后創(chuàng)建,也可以在創(chuàng)建工程以后再建立所有的源文件。直接單擊“Next”按鈕,進(jìn)入如圖2.73所示的添加源文件對(duì)話框。

在這個(gè)對(duì)話框里面為即將建立的工程添加已經(jīng)存在的源文件。如果沒有現(xiàn)成的源文件,直接單擊“Next”按鈕,完成新工程的創(chuàng)建。

(5)完成工程創(chuàng)建。

在如圖2.74所示的新工程信息對(duì)話框中,列出了新建工程的相關(guān)參數(shù)及屬性。

在這個(gè)對(duì)話框里面顯示將要?jiǎng)?chuàng)建的工程的全部信息,確認(rèn)無誤后單擊“Finish”按鈕,Project Navigator將自動(dòng)創(chuàng)建一個(gè)名為sw_led的工程。如圖2.75所示是新工程的界面。

圖2.73? 添加源文件對(duì)話框

?

圖2.74? 工程信息對(duì)話框

?

圖2.75? 工程創(chuàng)建后的界面

?

2.設(shè)計(jì)輸入

創(chuàng)建好工程以后就要為工程添加源文件了,具體方法如下。

為工程添加源文件有兩種方式,可以雙擊“Process View”對(duì)話框里面的“Create New Source”,也可以在“Module View”對(duì)話框里面的“xc3s400-4pq208”圖標(biāo)上面單擊鼠標(biāo)右鍵,選擇“New Source…”選項(xiàng),如圖2.76所示。

??

圖2.76? 添加源文件的兩種方式

?

選擇“New Source”,彈出如圖2.77所示的新建源文件對(duì)話框。

?

圖2.77? 新建資源對(duì)話框

?

在右面的“File Name”欄里面填寫要生成的源文件的名字,在“Location”欄填寫源文件保存的路徑,一般位于工程文件夾里面,沒有特殊需要不必更改。另外一定要選擇“Add to project”選項(xiàng),然后在左邊的一排圖標(biāo)里面選擇源文件的類型后單擊“Next”按鈕,進(jìn)入如圖2.78所示的Verilog源定義對(duì)話框。

可以在上面的對(duì)話框里面輸入源文件的模塊名稱和管腳定義,也可以先不輸入,后面寫程序的時(shí)候自己輸入。單擊“Next”按鈕,完成源文件的創(chuàng)建,在如圖2.79所示的對(duì)話框中列出了新建源文件的一些信息。

確認(rèn)信息無誤后,單擊“Finish”按鈕,ISE將生成名為sw_led.v的源文件,如圖2.80所示。

?

圖2.78? 新建Verilog文件設(shè)置對(duì)話框

?

圖2.79? 新建源文件信息對(duì)話框

?

圖2.80? 添加新資源后工程界面

?

用戶可以在工作區(qū)中開始進(jìn)行設(shè)計(jì)的輸入,也可參考實(shí)例代碼中的例程,將代碼直接復(fù)制到新建的Verilog文件下。輸入好程序以后,保存源文件,完成設(shè)計(jì)的輸入。

?

3.綜合及仿真

(1)綜合。

在“Process View”對(duì)話框里面雙擊“Synthesize – XST”,開始進(jìn)行工程的綜合,如圖2.81所示。

綜合主要檢查源文件程序里面的語法錯(cuò)誤(Check Syntax),雙擊“View Synthesis Report”可以觀察綜合的結(jié)果報(bào)告,如圖2.82所示。

?

圖2.82? 綜合報(bào)告

?

如果在這步發(fā)現(xiàn)源程序的設(shè)計(jì)語言有語法毛病,就會(huì)彈出Error警告。這樣就可以根據(jù)報(bào)錯(cuò)的位置,在源程序里面查找錯(cuò)誤位置,修改好以后重新進(jìn)行綜合,直至無錯(cuò)誤為止。

(2)綜合后仿真。

這里的仿真是綜合后的仿真,也可以稱為功能仿真。仿真時(shí)并不考慮工程的約束條件及器件的資源使用狀況,因此不會(huì)產(chǎn)生仿真延遲。這里使用的是ISE自帶的仿真工具進(jìn)行綜合后仿真。下面是仿真的步驟。

① 產(chǎn)生仿真文件。

如圖2.76的方式,在“New Source”對(duì)話框里面選擇創(chuàng)建Test Bench Wavefrom文件,如圖2.83所示。

單擊“Next”按鈕,在如圖2.84所示對(duì)話框中為Test Bench指定源文件。如圖所示在源文件對(duì)話框中只有一個(gè)文件,這是因?yàn)槲覀冎粸楣こ烫砑恿艘粋€(gè)設(shè)計(jì)文件。如果我們?yōu)楣こ烫砑恿藥讉€(gè)設(shè)計(jì)文件,在這個(gè)對(duì)話框中,將出現(xiàn)多個(gè)源文件。此時(shí)用戶可以選擇需要進(jìn)行仿真的源文件即可。

圖2.83? 新建Test Bench對(duì)話框

在本訓(xùn)練中,將要進(jìn)行仿真的源文件是sw_led,如圖2.84所示。單擊“Next”按鈕完成仿真文件的產(chǎn)生,如圖2.85所示。

?

圖2.84? 為Test Bench指定源文件

?

圖2.85? Test Bench信息對(duì)話框

單擊“完成”按鈕,ISE將創(chuàng)建名為test.tbw的仿真文件,同時(shí)彈出如圖2.86所示的對(duì)話框。在該對(duì)話框中,用戶可以對(duì)仿真的時(shí)間參數(shù)進(jìn)行設(shè)置。

在這個(gè)對(duì)話框中,包括時(shí)鐘信息、時(shí)鐘時(shí)間信息、全局信號(hào)、仿真時(shí)間等多個(gè)參數(shù)都可以進(jìn)行設(shè)置。按照仿真需求修改好時(shí)間參數(shù)以后,單擊“OK”按鈕就能在ISE的工作區(qū)里面看見新建的波形文件了,如圖2.87所示。

在波形文件里面,clk是時(shí)鐘信號(hào),在前面的時(shí)間參數(shù)設(shè)計(jì)里面已經(jīng)設(shè)置好了。用戶若需要對(duì)時(shí)鐘進(jìn)行更改,可選擇執(zhí)行“Test Bench”→“Rescale Timing…”命令,彈出修改時(shí)間參數(shù)的對(duì)話框,如圖2.88所示。

圖2.86? 仿真時(shí)間參數(shù)設(shè)置對(duì)話框

?????????????

圖2.87? 時(shí)鐘波形???????????????????????????? 圖2.88? 修改時(shí)間參數(shù)對(duì)話框

?

同樣也可以執(zhí)行“Test Bench”→“Set End of Test Bench…”,在彈出的對(duì)話框里面修改仿真波形的截止時(shí)間,如圖2.89所示。

圖2.89? 截止時(shí)間設(shè)置對(duì)話框

?

單擊“OK”按鈕就會(huì)發(fā)現(xiàn)仿真波形的時(shí)間長度由1000ns變成了2000ns。

② 添加仿真激勵(lì)。

要進(jìn)行仿真,還需要為仿真添加激勵(lì)。這里可以通過點(diǎn)擊波形圖中的藍(lán)色方塊來設(shè)置輸入波形電平的高低,如圖2.90所示。

圖2.90? 設(shè)置輸入電平

?

設(shè)置好以后一定不要忘記保存波形文件。保存以后就會(huì)在工程瀏覽器的當(dāng)前工程的子目錄下看見剛生成測(cè)試的文件,如圖2.91所示。

?

圖2.91? 保存仿真文件到工程

?

③ 仿真。

首先在工程瀏覽器的【Module View】里面選擇“test(test.tbw)”。

?

圖2.92? 由波形文件生成測(cè)試代碼

?

然后在進(jìn)度瀏覽器的“Process View”對(duì)話框里面雙擊“View Generated Test Bench As HDL”圖標(biāo),就能看見ISE根據(jù)剛才設(shè)置的波形文件自動(dòng)生成的測(cè)試文件,如圖2.93所示。

圖2.93? 生成的測(cè)試代碼

?

在進(jìn)度瀏覽器中雙擊【Generate Expected Simulation Result】,彈出兩個(gè)對(duì)話框,都選擇是(Y),將看見生成的預(yù)期輸出波形,如圖2.94所示。

?

圖2.94? 預(yù)期仿真波形

?

在進(jìn)度瀏覽器中雙擊“Add Test Bench to Project”,將測(cè)試波形添加到工程里面。將會(huì)看到工程瀏覽器中test文件的圖標(biāo)由變成。

如圖2.95所示,在進(jìn)度瀏覽器中雙擊“Simulate Behavioral Model”將對(duì)工程進(jìn)行行為仿真,仿真結(jié)果如圖2.96所示。

?

圖2.95? 運(yùn)行功能仿真

?

圖2.96? 功能仿真結(jié)果

?

從圖中可以看出功能仿真結(jié)果符合設(shè)計(jì)要求,可以繼續(xù)進(jìn)行下面的設(shè)計(jì)。如果此處仿真發(fā)現(xiàn)設(shè)計(jì)功能不符合要求,則要對(duì)原代碼進(jìn)行修改,直到仿真結(jié)果符合設(shè)計(jì)要求為止。

4.約束設(shè)計(jì)

在源程序輸入完成以后,就可以設(shè)置約束,規(guī)劃布局布線了。

約束有很多種:時(shí)序約束(Timing Constrains)、管腳約束(Assign Package Pins)以及面積約束(Area Const- raints)等。

如圖2.97所示是ISE進(jìn)度瀏覽器中包含的用戶約束的選項(xiàng)。

圖2.97? 設(shè)置約束

?

(1)時(shí)序約束。

時(shí)需約束主要約束設(shè)計(jì)的時(shí)序和時(shí)鐘頻率,雙擊圖2.97中的“Create Timing Constraints”圖標(biāo),ISE將打開約束編輯器,如圖2.98所示。

圖2.98? 時(shí)序約束界面

?

在約束編輯器里面有4個(gè)復(fù)選頁,定義如表2.5所示。

表2.5????????????????????????????????????????????????????????????????? 屬性定義

屬??? 性

定??? 義

Global

用于附加全局約束,包括周期約束,輸入延遲約束和輸出延遲約束

Ports

附加端口約束,可以對(duì)每一個(gè)端口進(jìn)行單獨(dú)設(shè)置,包括物理位置、輸入延遲和輸出延遲。同時(shí),也可以設(shè)置分組,進(jìn)行分組約束

Advanced

附加分組約束(TNM/TNM_NET/TIMEGRP)和時(shí)序約束(FROM_TO/TIG O/OFFSET)等

Misc

附加專用約束,包括電壓、初始值等

?

注意

附加約束的原則是先加全局約束后加分組約束。

在本實(shí)例中只做簡單的時(shí)鐘約束。在clk的period中輸入:20ns HIGH 50%,即設(shè)置時(shí)鐘的周期和占空比。設(shè)置后保存,完成時(shí)序約束。

(2)管腳約束。

管腳約束即約束工程設(shè)計(jì)源文件與選定器件對(duì)應(yīng)的輸入/輸出管腳屬性。雙擊圖2.97中的“Assign Package Pins”圖標(biāo),ISE將打開PACE工具,如圖2.99所示。

通過圖2.99的“Design Object List”對(duì)話框里面的Loc列,可以為設(shè)計(jì)添加輸入/輸出管腳,添加形式為“Pxxx”或者“pxxx”。其中P/p代表Pin,xxx是數(shù)值。

(3)面積約束。

面積約束目的在于規(guī)劃FPGA里面的邏輯使用大小。雙擊圖2.97中的“Create Area Constraints”圖標(biāo),ISE同樣打開PACE工具,面積約束和管腳約束用的是一個(gè)界面。在面積約束里面我們可以對(duì)設(shè)計(jì)使用的資源面積加以規(guī)劃,控制使用資源在FPGA里面的位置。

這里只使用到管腳約束,按照按鍵和LED燈與FPGA的連接,輸入管腳分配,然后保存分配。在保存選項(xiàng)中,選擇“XST Optional”,如圖2.100所示,關(guān)閉對(duì)話框,完成約束設(shè)計(jì)。

圖2.99? 管腳約束工具PACE

?

圖2.100? 保存管腳約束結(jié)果

?

5.布局布線

設(shè)置好了各種約束以后就可以進(jìn)行布局和布線了。雙擊進(jìn)度瀏覽器中的“Implement Design”,開始進(jìn)行布局布線實(shí)現(xiàn)。與綜合相同,如果在“Implement Design”的右邊出現(xiàn)綠色的對(duì)號(hào),說明已經(jīng)完成布局布線,沒有發(fā)現(xiàn)錯(cuò)誤,如圖2.101所示。

圖2.101? 運(yùn)行布局布線

?

如果實(shí)現(xiàn)過程中出現(xiàn)錯(cuò)誤,在信息欄中根據(jù)錯(cuò)誤的提示,修改相關(guān)的約束設(shè)計(jì),再進(jìn)行布局布線的實(shí)現(xiàn),直至沒有錯(cuò)誤為止。

6.布局布線后仿真

在工程瀏覽器中選擇測(cè)試文件,雙擊進(jìn)度瀏覽器中“Implement Design”下面的“Simulate Post-Place & Route Model”,對(duì)工程進(jìn)行布局布線后仿真,仿真結(jié)果如圖2.102所示。

圖2.102? 時(shí)序仿真結(jié)果

?

通過與行為仿真結(jié)果圖2.96對(duì)比,可以發(fā)現(xiàn),布局布線后仿真加入了布線的延遲,輸出的結(jié)果相對(duì)于時(shí)鐘有相應(yīng)的延遲。在工作區(qū)里面單擊鼠標(biāo)右鍵,在彈出的菜單里面選擇“Add Measure”選項(xiàng),可以通過放大工作區(qū)和拖動(dòng)時(shí)間測(cè)量游標(biāo),讀取時(shí)間延遲,如圖2.103所示。

由上圖可以看出,盡管輸出相對(duì)于時(shí)鐘存在一定的延時(shí),但輸出結(jié)果是正確的,符合設(shè)計(jì)要求,可以進(jìn)行下載和在線調(diào)試了。

圖2.103? 測(cè)量時(shí)間延遲

?

7.下載程序

布局布線完成以后就可以將程序下載到開發(fā)板上進(jìn)行調(diào)試。開發(fā)板提供兩種下載方式:JTAG模式和PROM模式。區(qū)別在于JTAG模式是用于在線調(diào)試使用的,斷電后不保留程序;而PROM模式則是將程序燒寫在存儲(chǔ)器里面,上電后自動(dòng)加載。

(1)JTAG模式下載。

如圖2.104所示,在進(jìn)度瀏覽器中“Generate Programming File”下面可以看到有3個(gè)選項(xiàng),分別是編程文件生成報(bào)告、生成編程文件和使用iMPACT配置器件。

在“Generate Programming File”圖標(biāo)上面單擊右鍵,選擇“Properties…”,彈出如圖2.105所示的屬性對(duì)話框,在其中可以設(shè)置下載文件的屬性。

? ? ? ? ? ? ? ?

圖2.104? 生成下載文件???????????????????? 圖2.105? “General Options”選項(xiàng)卡

?

在該對(duì)話框中有4個(gè)選項(xiàng)卡,可以對(duì)相應(yīng)的下載參數(shù)進(jìn)行設(shè)置。

“General Options”選項(xiàng)卡里面的“Create Bit File”選項(xiàng)生成用于JTAG模式下載的二進(jìn)制下載文件。確定選擇該項(xiàng),如圖2.105所示。

在“Startup Options”選項(xiàng)卡里面將“FPGA Start-Up Clock”后面的內(nèi)容改為“JTAG Clock”,如圖2.106所示,在這里要根據(jù)不同的下載模式正確地選擇時(shí)鐘。

在“Readback Options”選項(xiàng)卡里面將“Security”后面的內(nèi)容置為“Enable Readback an Reconfiguration”,如圖2.107所示,然后單擊“OK”按鈕,完成下載的屬性設(shè)置。

? ? ? ? ? ?? ? ? ? ? ?

圖2.106? “Startup Options”選項(xiàng)卡?????????????? ? 圖2.107? “Readback Options”選項(xiàng)卡

?

如圖2.108所示,雙擊進(jìn)度瀏覽器里面的“Generate Programming File”圖標(biāo),ISE將生成供 JTAG模式下載的bit文件?!癎enerate Programming File”左邊的綠色對(duì)號(hào)說明已經(jīng)成功生成了下載?? 文件。

圖2.108? 生成下載文件

雙擊“Generate Programming File”下面的“Configure Device(iMPACT)”圖標(biāo),打開如圖2.109所示的iMPACT工具。

圖2.109? iMPACT工具

?

在如圖2.109所示的對(duì)話框里面選擇器件配置的模式,這里選擇邊界掃描模式“Boundary-Scan Mode”,單擊“下一步”按鈕,如圖2.110所示。

?

圖2.110? 邊界掃描模式選擇對(duì)話框

?

選擇自動(dòng)加載邊界掃描鏈路,單擊完成。

由于開發(fā)板上面的JTAG和PROM下載是在一條鏈路上的,所以會(huì)彈出如圖2.111所示的對(duì)話框,單擊“確定”按鈕就能看見ISE掃描到的開發(fā)板上面的下載鏈,如圖2.112所示。

圖2.111? 邊界掃描檢測(cè)結(jié)果對(duì)話框

?

圖2.112? ISE掃描下載鏈結(jié)果

?

其中下面標(biāo)有xcf02s的圖標(biāo)代表的是PROM,下面標(biāo)有xc3s400的圖標(biāo)代表FPGA。

雙擊FPGA圖標(biāo),在彈出的對(duì)話框里面選擇剛才生成的二進(jìn)制下載文件(后綴為.bit)。配置好以后右鍵單擊FPGA圖標(biāo),在彈出的菜單里面選擇“Program…”選項(xiàng),如圖2.113所示。此時(shí)將會(huì)出現(xiàn)如圖2.114所示的下載屬性設(shè)置對(duì)話框。

?? ? ? ??? ?? ???

圖2.113? 設(shè)置配置文件?????????????? 圖2.114? 配置設(shè)置對(duì)話框

?

單擊“OK”按鈕就可以開始下載了。若下載成功將會(huì)有如圖2.115所示的下載成功提示。

?

圖2.115? JTAG下載成功

?

(2)PROM模式下載。

PROM模式下載是把程序存在一塊存儲(chǔ)器里面(開發(fā)板上面使用的是Xilinx公司的xcf02s)。當(dāng)開發(fā)板上電的時(shí)候,F(xiàn)PGA就自動(dòng)加載存儲(chǔ)器里面的程序。下面是PROM模式下載的具體操作方法。

要進(jìn)行PROM模式下載,首先要生成相應(yīng)的二進(jìn)制下載文件,雙擊進(jìn)程瀏覽器中“Generate Programming File”下面的“Generate PROM, ACE, or JTAG File”圖標(biāo),彈出如圖2.116的對(duì)話框。

圖2.116? 生成PROM文件對(duì)話框

?

選擇“PROM File”選項(xiàng),單擊“下一步”按鈕,打開如圖2.117所示的PROM文件配置對(duì)話框。

?

圖2.117? PROM文件設(shè)置對(duì)話框

?

在該對(duì)話框中,選擇生成一個(gè)Xilinx PROM,后綴選擇MCS,文件格式選擇FF(十六進(jìn)制),在“PROM File Name”后面填寫生成的PROM下載文件的名稱,在“Location”后面填寫PROM文件保存地址。配置后單擊“Next”按鈕,出現(xiàn)PROM器件配置對(duì)話框,如圖2.118所示。

選擇PROM的型號(hào),要與開發(fā)板上面使用的對(duì)應(yīng)。這里選擇xcf02s,單擊“Next”按鈕。

圖2.118? 選擇PROM型號(hào)

?

圖2.119? 為生成PROM文件添加二進(jìn)制文件

?

在出現(xiàn)的如圖2.119所示對(duì)話框中單擊“Add File…”按鈕,在彈出的對(duì)話框里面選擇JTAG下載的時(shí)候使用的二進(jìn)制文件(后綴為.bit),ISE將通過這個(gè)二進(jìn)制文件生成PROM文件。

圖2.120? 是否還要加載一個(gè)設(shè)計(jì)文件對(duì)話框

?

選擇完一個(gè)二進(jìn)制文件后,會(huì)彈出如圖2.120所示的對(duì)話框,詢問是否還要加載一個(gè)設(shè)計(jì)文件。單擊“NO”按鈕,完成PROM模式下載的配置。

?

圖2.121? 生成PROM文件

?

在出現(xiàn)的圖2.121中單擊“Finish”按鈕,ISE就會(huì)自動(dòng)為我們生成后綴為.MCS的十六進(jìn)制PROM下載文件。生成成功后,將出現(xiàn)如圖2.122所示的提示。

圖2.122? PROM文件生成成功提示

?

生成了PROM的下載文件以后,再按照J(rèn)TAG下載的方法,掃描下載鏈。將生成的.MCS文件加載到PROM圖標(biāo)中去,然后再在PROM圖標(biāo)上面點(diǎn)擊右鍵,選擇“Program…”選項(xiàng),如圖2.123所示。

如圖2.124,在出現(xiàn)的下載屬性配置對(duì)話框中選擇相應(yīng)的選項(xiàng)后,單擊“OK”按鈕就開始PROM的下載了(PROM下載相對(duì)比較慢,并且最好先擦除PROM里面的內(nèi)容再下載)。成功下載會(huì)出現(xiàn)如圖2.125所示的提示。

?? ? ? ? ?????

圖2.123? 下載PROM器件???????????????? 圖2.124? 下載PROM器件設(shè)置對(duì)話框

?

圖2.125? 完成對(duì)PROM器件的燒寫

?

需要注意的是,如果選用JTAG下載模式,則下載成功后,F(xiàn)PGA就可實(shí)現(xiàn)預(yù)想的功能。如果選用PROM下載模式,下載成功后,要重新上電后FPGA才能正常工作。

因?yàn)镻ROM直接方式是將文件下載到PROM器件中,并沒有直接下載到FPGA里,要重新上電后由FPGA自動(dòng)從PROM器件中加載配置文件,才能實(shí)現(xiàn)預(yù)想的功能。

當(dāng)然用戶也可以在如圖2.124所示的屬性配置中選擇“Load FPGA”選項(xiàng)。這樣PROM下載完成后,下載的邏輯將自動(dòng)加載至FPGA內(nèi),而無需重新上電。

2.6.4? 小結(jié)

上述步驟就是利用ISE進(jìn)行的一個(gè)完整的FPGA設(shè)計(jì)流程。雖然例程實(shí)現(xiàn)的功能比較簡單,但對(duì)于初學(xué)者來說,是一個(gè)不錯(cuò)的入門實(shí)例。此實(shí)例的主要目的是讓初學(xué)者對(duì)FPGA的設(shè)計(jì)有一個(gè)初步的了解,并熟悉ISE軟件的使用,為今后的學(xué)習(xí)打下基礎(chǔ)。

聯(lián)系方式

集團(tuán)官網(wǎng):www.hqyj.com????????? 嵌入式學(xué)院:www.embedu.org????? 移動(dòng)互聯(lián)網(wǎng)學(xué)院:www.3g-edu.org
企業(yè)學(xué)院:www.farsight.com.cn?? 物聯(lián)網(wǎng)學(xué)院:www.topsight.cn???? 研發(fā)中心:dev.hqyj.com

集團(tuán)總部地址:北京市海淀區(qū)西三旗悅秀路北京明園大學(xué)校內(nèi) 華清遠(yuǎn)見教育集團(tuán)
北京地址:北京市海淀區(qū)西三旗悅秀路北京明園大學(xué)校區(qū),電話:010-82600386/5
上海地址:上海市徐匯區(qū)漕溪路銀海大廈A座8層,電話:021-54485127
深圳地址:深圳市龍華新區(qū)人民北路美麗AAA大廈15層,電話:0755-22193762
成都地址:成都市武侯區(qū)科華北路99號(hào)科華大廈6層,電話:028-85405115
南京地址:南京市白下區(qū)漢中路185號(hào)鴻運(yùn)大廈10層,電話:025-86551900
武漢地址:武漢市工程大學(xué)卓刀泉校區(qū)科技孵化器大樓8層,電話:027-87804688
西安地址:西安市高新區(qū)高新一路12號(hào)創(chuàng)業(yè)大廈D3樓5層,電話:029-68785218

賽靈思

賽靈思

賽靈思(英語:Xilinx)是一家位于美國的可編程邏輯器件的生產(chǎn)商。該公司發(fā)明了現(xiàn)場可編程邏輯門陣列,并由此成名。賽靈思還是第一個(gè)無廠半導(dǎo)體公司(Fabless)。28nm時(shí)代,賽靈思提出All Programmable 的概念,從單一的FPGA企業(yè)戰(zhàn)略轉(zhuǎn)型為All Programmable FPGA、 SoC 和 3D IC 的全球領(lǐng)先提供商。且行業(yè)領(lǐng)先的器件與新一代設(shè)計(jì)環(huán)境以及 IP 完美地整合在一起,可滿足客戶對(duì)可編程邏輯乃至可編程系統(tǒng)集成的廣泛需求賽靈思于1984年創(chuàng)建于美國加利福尼亞州的硅谷,總部位于硅谷核心的圣何塞,并在科羅拉多州、愛爾蘭、新加坡 印度、中國、日本擁有分支機(jī)構(gòu)

賽靈思(英語:Xilinx)是一家位于美國的可編程邏輯器件的生產(chǎn)商。該公司發(fā)明了現(xiàn)場可編程邏輯門陣列,并由此成名。賽靈思還是第一個(gè)無廠半導(dǎo)體公司(Fabless)。28nm時(shí)代,賽靈思提出All Programmable 的概念,從單一的FPGA企業(yè)戰(zhàn)略轉(zhuǎn)型為All Programmable FPGA、 SoC 和 3D IC 的全球領(lǐng)先提供商。且行業(yè)領(lǐng)先的器件與新一代設(shè)計(jì)環(huán)境以及 IP 完美地整合在一起,可滿足客戶對(duì)可編程邏輯乃至可編程系統(tǒng)集成的廣泛需求賽靈思于1984年創(chuàng)建于美國加利福尼亞州的硅谷,總部位于硅谷核心的圣何塞,并在科羅拉多州、愛爾蘭、新加坡 印度、中國、日本擁有分支機(jī)構(gòu)收起

查看更多

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

華清遠(yuǎn)見(www.farsight.com.cn)是國內(nèi)領(lǐng)先嵌入師培訓(xùn)機(jī)構(gòu),2004年注冊(cè)于中國北京海淀高科技園區(qū),除北京總部外,上海、深圳、成都、南京、武漢、西安、廣州均有直營分公司。華清遠(yuǎn)見除提供嵌入式相關(guān)的長期就業(yè)培訓(xùn)、短期高端培訓(xùn)、師資培訓(xùn)及企業(yè)員工內(nèi)訓(xùn)等業(yè)務(wù)外,其下屬研發(fā)中心還負(fù)責(zé)嵌入式、Android及物聯(lián)網(wǎng)方向的教學(xué)實(shí)驗(yàn)平臺(tái)的研發(fā)及培訓(xùn)教材的出版,截止目前為止已公開出版70余本嵌入式/移動(dòng)開發(fā)/物聯(lián)網(wǎng)相關(guān)圖書。企業(yè)理念:專業(yè)始于專注 卓識(shí)源于遠(yuǎn)見。企業(yè)價(jià)值觀:做良心教育、做專業(yè)教育,更要做受人尊敬的職業(yè)教育。