




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、FPGA系統(tǒng)設(shè)計(jì)實(shí)驗(yàn)報(bào)告學(xué)院: 計(jì)算機(jī)與通信工程學(xué)院 班級(jí): 電信10 學(xué)號(hào): 41050204 姓名: 陳小慧 指導(dǎo)教師: 2013年3月27日FPGA系統(tǒng)設(shè)計(jì)實(shí)驗(yàn)報(bào)告陳小慧計(jì)算機(jī)與通信工程學(xué)院,電信10,學(xué)號(hào):41050204【摘要】 本文第一部分主要介紹了FPGA;第二部分為實(shí)驗(yàn)的內(nèi)容和結(jié)果;第三部分為根據(jù)實(shí)驗(yàn)二設(shè)計(jì)的拓展實(shí)驗(yàn);最后部分為實(shí)驗(yàn)報(bào)告總結(jié)?!娟P(guān)鍵字】 FPGA ;SOPC;20nm1 引言FPGA 自1984年Xilinx公司發(fā)明以來(lái),逐漸一起全球集成電路格局的變化。從一開(kāi)始僅僅實(shí)現(xiàn)粘合邏輯到后來(lái)的數(shù)字信號(hào)處理以及目前的系統(tǒng)級(jí)解決方案,F(xiàn)PGA 不斷蠶食著微處理器、DSP以及
2、ASIC的市場(chǎng),成為目前發(fā)展最為迅猛的熱門(mén)技術(shù)之一。本文便在高校學(xué)習(xí)的基礎(chǔ)上,簡(jiǎn)單介紹了一些FPGA的概念和應(yīng)用,并在完成實(shí)驗(yàn)的基礎(chǔ)上寫(xiě)了實(shí)驗(yàn)的過(guò)程和總結(jié)。2 FPGA簡(jiǎn)介2.1 FPGA的概述單片機(jī)可以理解為集成在單一芯片上的微型計(jì)算機(jī)系統(tǒng),麻雀雖小可是五臟俱全,也有運(yùn)算器、控制器、存儲(chǔ)器、總線及輸入輸出設(shè)備,采用也是存儲(chǔ)程序執(zhí)行的方式,對(duì)單片機(jī)的編程就是對(duì)其中的ROM寫(xiě)入程序,在加電后ROM中的程序會(huì)像計(jì)算機(jī)內(nèi)存中的程序一樣得到逐條的執(zhí)行。當(dāng)今的單片機(jī)還集成了A/D、D/A轉(zhuǎn)換,并串口等多種與外界進(jìn)行數(shù)據(jù)交換的手段。單片機(jī)計(jì)算速度和性能有限,但在一些基本控制上搓綽綽有余。FPGA則是操控層
3、次更低,所以自由度更大的芯片,對(duì)FPGA的編程在編譯后是轉(zhuǎn)化為FPGA內(nèi)的連線表,相當(dāng)于FPGA內(nèi)提供了大量的與非門(mén)、或非門(mén)、觸發(fā)器(可以用與非門(mén)形成吧)等基本數(shù)字器件,編程決定了有多少器件被使用以及它們之間的連接。只要FPGA規(guī)模夠大,這些數(shù)字器件理論上能形成一切數(shù)字系統(tǒng),包括單片機(jī)甚至CPU。FPGA在抗干擾,速度上有很大優(yōu)勢(shì)。2.2 FPGA的發(fā)展前沿2.2.1 FPGA向SOPC方向發(fā)展System-on-a-Programmable-Chip,即可編程片上系統(tǒng)。 用可編程邏輯技術(shù)把整個(gè)系統(tǒng)放到一塊硅片上,稱作SOPC。可編程片上系統(tǒng)(SOPC)是一種特殊的嵌入式系統(tǒng):首先它是片上系統(tǒng)
4、(SOC),即由單個(gè)芯片完成整個(gè)系統(tǒng)的主要邏輯功能;其次,它是可編程系統(tǒng),具有靈活的設(shè)計(jì)方式,可裁減、可擴(kuò)充、可升級(jí),并具備軟硬件在系統(tǒng)可編程的功能。SOPC是SOC與FPGA相結(jié)合的產(chǎn)物。SOC(System-On-a-Chip)的定義,是指在一個(gè)芯片上包含了計(jì)算機(jī)引擎、存儲(chǔ)器和邏輯電路的集成電路,其在本質(zhì)上具備作為一個(gè)系統(tǒng)的基本要素。Soc采用單一芯片的形式實(shí)現(xiàn)了系統(tǒng)的功能,把系統(tǒng)從原來(lái)的整機(jī)、電路板縮小到芯片,不僅有利于實(shí)現(xiàn)系統(tǒng)的小型化、一體化,減少板級(jí)和整機(jī)對(duì)電路的干擾,同時(shí)還有助于降低產(chǎn)品成本。SOPC可以在一塊現(xiàn)成的可編程芯片上提供系統(tǒng)集成。可編程系統(tǒng)級(jí)芯片還具有掩膜ASIC的高集
5、成度及FPGA的低風(fēng)險(xiǎn)、靈活和快速上市的特性1。相關(guān)成品為2012年10月中旬,Microsemi公司宣布推出其新一代SmartFusion2 SoC FPGA系列產(chǎn)品。該系列產(chǎn)品是市場(chǎng)上最安全的FPGA;還具備高可靠性、低功耗等優(yōu)勢(shì);應(yīng)用極其廣泛。2.2.2 20納米FPGA時(shí)代臺(tái)積電28nm良率大幅提升的利好還沒(méi)被市場(chǎng)徹底消化,F(xiàn)PGA業(yè)界雙雄已爭(zhēng)先恐后地發(fā)布20nm FPGA戰(zhàn)略,在性能、功耗、集成度等方面均大幅躍升,蠶食ASIC之勢(shì)將愈演愈烈。在45nm工藝節(jié)點(diǎn),大量ASIC廠商率先量產(chǎn);而到了28nm工藝時(shí)代,率先量產(chǎn)的7家公司中已有兩家是FPGA廠商;在20nm時(shí)代,F(xiàn)PGA或?qū)?/p>
6、得頭籌。在28nm工藝節(jié)點(diǎn)上,賽靈思率先推出了統(tǒng)All Programmable的7系列FPGA、嵌入ARM cortex-A9的FPGA SoC以及采用3D封裝技術(shù)的Virtex-7 2000T,賽靈思20nm產(chǎn)品依然是三個(gè)產(chǎn)品系列并行發(fā)展,分別“進(jìn)化”成8系列FPGA、第二代FPGA SoC和第二代3D封裝FPGA。賽靈思20nm 8系列All Programmable FPGA將有更快的DSP、BRAM(Block RAM)、DDR4及收發(fā)器,有最高的帶寬(100個(gè)33Gb/s收發(fā)器),可以實(shí)現(xiàn)更高的帶寬總線和更快的設(shè)計(jì)收斂。FPGA另一重要供應(yīng)商Altera在20nm工藝也導(dǎo)入了三項(xiàng)新
7、技術(shù)。Altera高級(jí)副總裁、首席技術(shù)官M(fèi)isha Burich介紹,Altera的20nm工藝FPGA一是可將芯片間的數(shù)據(jù)傳輸速度提高至40Gbps,而現(xiàn)行的28nm工藝FPGA為28Gbps。為了實(shí)現(xiàn)高速化,20nm工藝FPGA提高了收發(fā)器電路使用的晶體管性能,同時(shí)導(dǎo)入了根據(jù)在芯片間交換信號(hào)的波形來(lái)修正信號(hào)、改善信號(hào)干擾及衰減程度的電路技術(shù)。二是配備浮點(diǎn)運(yùn)算性能達(dá)到5TFLOPS(每秒5萬(wàn)億次浮點(diǎn)運(yùn)算)以下的可變精度DSP模塊。為了提高性能,將原來(lái)用軟件實(shí)現(xiàn)的DSP部分運(yùn)算處理改為了硬件操作。三是異構(gòu)3D IC的應(yīng)用。Altera的異構(gòu)20nm FPGA的開(kāi)發(fā)通過(guò)全功能高級(jí)設(shè)計(jì)環(huán)境得以實(shí)現(xiàn)
8、,這一設(shè)計(jì)環(huán)境包括系統(tǒng)集成工具(Qsys)、基于C語(yǔ)言的設(shè)計(jì)工具(OpenCL)以及DSP開(kāi)發(fā)軟件(DSP Builder)。Misha Burich表示,下一代高性能設(shè)計(jì)DSP開(kāi)發(fā)人員不再需要花費(fèi)數(shù)天甚至幾個(gè)星期的時(shí)間來(lái)評(píng)估FPGA DSP解決方案的性能。通過(guò)集成OpenCL和DSP創(chuàng)新技術(shù),采用業(yè)界標(biāo)準(zhǔn)設(shè)計(jì)工具和軟件庫(kù),Altera產(chǎn)品能夠?qū)崿F(xiàn)5 TFLOPS的單精度DSP能力,這將重新樹(shù)立業(yè)界TFLOPS/W硅片效率的標(biāo)準(zhǔn)。參考文獻(xiàn)1 劉皖、何道君、譚明,FPGA設(shè)計(jì)與應(yīng)用,清華大學(xué)出版社 ,2006年6月第1版,P2013 FPGA實(shí)驗(yàn)實(shí)驗(yàn)一 LED實(shí)驗(yàn)1.1實(shí)驗(yàn)?zāi)康膌 學(xué)習(xí)Xilin
9、x公司ISE8.2i軟件設(shè)計(jì)流程;l 熟悉SEED-XDTK XUPV2PRO實(shí)驗(yàn)環(huán)境;l 了解Verilog語(yǔ)言在FPGA中的使用;l FPGA管腳與外設(shè)的配置;l 了解時(shí)鐘分頻的Verilog實(shí)現(xiàn)。1.2實(shí)驗(yàn)內(nèi)容l 定時(shí)時(shí)鐘設(shè)計(jì);l LED點(diǎn)亮。1.3實(shí)驗(yàn)步驟1.3.1創(chuàng)建工程 1. 雙擊桌面Xilinx ISE8.2 快捷方式或者選擇【開(kāi)始】/【所有程序】/【Xilinx ISE 8.2i】/【Project Navigator】打開(kāi) ISE 工程管理器(Project Navigator)。 2. 打開(kāi)Project Navigator后,選擇 File New Project,彈出新
10、建工程對(duì)話框建立文件名和路徑。器件族類型(Device Family)選擇“Virtex2P”,器件型號(hào)(Device)選“XC2VP30ff896-7”,綜合工具(Synthesis Tool)選“XST(VHDL/Verilog)”,仿真器(Simulator)選“ISE Simulator”1.3.2新建Verilog源代碼新工程創(chuàng)建完在【Sources】面板右擊,選【New Source】命令打開(kāi)新建代碼智能向?qū)?輸入源代碼;選【Add Source】命令調(diào)用以給源代碼程序。如果以有源代碼,則選擇.v.文件,自動(dòng)添加到窗口中。選擇【Verilog Module】新建一個(gè)Verilog源
11、代碼,然后在【File name】欄中輸入文件名稱led(區(qū)別大小寫(xiě))。單擊Next按鈕進(jìn)入模塊定義頁(yè)面,這個(gè)頁(yè)面的【Port Name】欄中可以輸入相應(yīng)的端口名稱(可在程序中定義);。直接點(diǎn)【Next】按鈕進(jìn)入新建代碼總結(jié)頁(yè)面單擊【Finish】按鈕完成新建代碼過(guò)程。ISE將自動(dòng)打開(kāi)源代碼視圖以及設(shè)計(jì)總結(jié)視圖,選擇源代碼視圖。1.3.3編輯Verilog源代碼。編輯led.v源代碼成如下形式。module led(led_cona,led_conb,reset,clk,led_data);input reset;input clk;output led_cona;output led_con
12、b;output 7:0led_data;reg 7:0led_data;reg clk_1k;reg 15:0cnt_1k;reg 11:0cnt_led;parameter freq_1k=16'h3a98; assign led_cona=0;assign led_conb=1;initialbegincnt_1k<=0;clk_1k<=0;cnt_led<=0;endalways(posedge clk)beginif(reset=0)begincnt_1k<=0;clk_1k<=0;endelse if(cnt_1k=freq_1k)beginc
13、nt_1k<=0;clk_1k<=clk_1k;endelse cnt_1k<=cnt_1k+1;endalways(posedge clk_1k)if(reset=0) begin cnt_led<=0; led_data<='h01; endelsebegincase(cnt_led)'h001: led_data<='h01;'h07D: led_data<='h02;'h0FA: led_data<='h04;'h177: led_data<='h08;'
14、;h1F4: led_data<='h10;'h271: led_data<='h20;'h2EE: led_data<='h40;'h36B: led_data<='h80;'h3EC: beginled_data<='hff; cnt_led<='h000;enddefault: cnt_led<=cnt_led;endcasecnt_led<=cnt_led+1;endendmodule輸入完畢保存。1.3.4綜合(Synthesize XST)(1) 確保源代
15、碼【led.v】在【Synthesis/Implementation】模式下(2) 在【Sources】窗口中選擇【led】模塊,然后在相關(guān)的程序窗口【processes】中雙擊【Synthesize-XST】。1.3.5添加約束在【Sources】窗口選中l(wèi)ed.v文件,【Processes】窗口單擊【User Constraints】左邊的“”號(hào)展開(kāi),雙擊【Assign Package Pins】, 彈出新建一個(gè)UCF文件的對(duì)話框,點(diǎn)“yes”后就可以打開(kāi)PACE。在【Design Object ListI/O pins】窗口的【Loc】欄輸入連接FPGA的管腳名,在【Device Arc
16、hitecture】窗口放大即可以看清管腳分配。 管腳分配完畢,點(diǎn)擊保存。退出PACE。在【Sources】窗口選中l(wèi)ed.v文件,【Processes】窗口雙擊【User Constraints】下的【Edit Constrains】即可查看UCF文本實(shí)例的管腳約束文件(*.UCF文件)如下:NET "clk" LOC = "AH15" ;NET "led_cona" LOC = "R3" ;NET "led_conb" LOC = "V1" ;NET "led_
17、data0" LOC = "U8" ;NET "led_data1" LOC = "Y2" ;NET "led_data2" LOC = "Y1" ;NET "led_data3" LOC = "V5" ;NET "led_data4" LOC = "V4" ;NET "led_data5" LOC = "U7" ;NET "led_data6"
18、LOC = "U9" ;NET "led_data7" LOC = "W1" ;NET "reset" LOC = "AH5" ;即clk連接FPGA的AH15管腳,led_cona連接FPGA的R3管腳1.3.6FPGA的實(shí)現(xiàn)和下載配置Place&Route之后,進(jìn)入配置FPGA階段展開(kāi)【Implement Design】左邊的“”號(hào),自動(dòng)執(zhí)行FPGA實(shí)現(xiàn)階段的過(guò)程。雙擊【Generate Programming】生成可下載的*.bit文件展開(kāi)【Processes】欄的【Generat
19、e Programming】旁的“”號(hào),雙擊【Configure Device】打開(kāi)iMPACT下載程序。彈出【iMPACTWelcome to iMPACT】對(duì)畫(huà)框,選中【Configure devices using BoundaryScan(JTAG)】,單擊【FINISH】。彈出【Assign New Configuration File】對(duì)話框,即給器件指定配置文件,其中前兩個(gè)器件為PROM和CPLD,都選擇【Bypass】按鈕,最后一個(gè)器件為FPGA,選擇led.bit文件,選擇【Open】按鈕, 彈出的對(duì)話框單擊【OK】,彈出一個(gè)警告信息,再單擊【OK】按鈕。右擊最后一個(gè)器件,單
20、擊【Program】彈出的對(duì)話框單擊【OK】,如果下載成功則出現(xiàn)Program Succeed。1.4實(shí)驗(yàn)結(jié)果會(huì)看到實(shí)驗(yàn)箱的LED燈閃爍,證明結(jié)果正確。實(shí)驗(yàn)二 LED點(diǎn)陣實(shí)驗(yàn)2.1實(shí)驗(yàn)?zāi)康模菏煜SE8.2開(kāi)發(fā)環(huán)境,掌握工程的生成方法;熟悉SEED-XDTK XUPV2Pro實(shí)驗(yàn)環(huán)境;了解Verilog語(yǔ)言在FPGA中的使用。了解定時(shí)器的Verilog實(shí)現(xiàn)。2.2實(shí)驗(yàn)內(nèi)容定時(shí)時(shí)鐘設(shè)計(jì);LED點(diǎn)陣亮點(diǎn)的控制。2.3實(shí)驗(yàn)步驟: 2.3.1創(chuàng)建工程 雙擊桌面Xilinx ISE8.2 快捷方式或者選擇【開(kāi)始】/【所有程序】/【Xilinx ISE 8.2i】/【Project Navigator】打
21、開(kāi) ISE 工程管理器(Project Navigator)。 打開(kāi)Project Navigator后,選擇 File New Project,彈出新建工程對(duì)話框,選擇工程存放的目錄單擊確定,Project Name(工程名稱)輸入工程名lab2。點(diǎn)擊【Next】按鈕,彈出器件特性對(duì)話框。器件族類型(Device Family)選擇“Virtex2P”,器件型號(hào)(Device)選“XC2VP30ff896-7”,綜合工具(Synthesis Tool)選“XST(VHDL/Verilog)”,仿真器(Simulator)選“ISE Simulator”,單擊【Next】直到【Finish】。
22、 2.3.2添加源代碼在【Sources】面板右擊,選【Add Source】按鈕,指向工程存放的目錄文件夾下,打開(kāi)dot.v文件。在彈出的【Adding Source Files】對(duì)話框單擊【OK】,2.3.3綜合雙擊dot.v打開(kāi)源代碼視圖,雙擊【SynthesizeXST】進(jìn)行綜合。2.3.4添加約束本實(shí)例的管腳約束文件(UCF文件)如下:NET "clk" LOC = "AH15" ;NET "cpld_cona" LOC = "R3" ;NET "cpld_conb" LOC = &q
23、uot;V1" ;NET "dot_con0" LOC = "AA3" ;NET "dot_con10" LOC = "R4" ;NET "dot_con11" LOC = "T2" ;NET "dot_con12" LOC = "R7" ;NET "dot_con13" LOC = "P4" ;NET "dot_con14" LOC = "R2"
24、 ;NET "dot_con15" LOC = "P5" ;NET "dot_con1" LOC = "AB1" ;NET "dot_con2" LOC = "Y4" ;NET "dot_con3" LOC = "W4" ;NET "dot_con4" LOC = "V8" ;NET "dot_con5" LOC = "W5" ;NET "dot_
25、con6" LOC = "AA1" ;NET "dot_con7" LOC = "AA2" ;NET "dot_con8" LOC = "R6" ;NET "dot_con9" LOC = "U1" ;NET "dot_data0" LOC = "M4" ;NET "dot_data10" LOC = "U7" ;NET "dot_data11"
26、LOC = "V4" ;NET "dot_data12" LOC = "V5" ;NET "dot_data13" LOC = "Y1" ;NET "dot_data14" LOC = "Y2" ;NET "dot_data15" LOC = "U8" ;NET "dot_data1" LOC = "N2" ;NET "dot_data2" LOC = &q
27、uot;P9" ;NET "dot_data3" LOC = "L4" ;NET "dot_data4" LOC = "M2" ;NET "dot_data5" LOC = "N5" ;NET "dot_data6" LOC = "L5" ;NET "dot_data7" LOC = "N6" ;NET "dot_data8" LOC = "W1"
28、 ;NET "dot_data9" LOC = "U9" ;NET "reset" LOC = "AH5" ;在【Sources】窗口選中dot.v文件,【Processes】窗口單擊【User Constraints】左邊的“”號(hào)展開(kāi),雙擊【Assign Package Pins】 彈出新建一個(gè)UCF文件的對(duì)話框,點(diǎn)“yes”后就可以打開(kāi)PACE。在【Design Object ListI/O pins】窗口的【Loc】欄輸入連接FPGA的管腳名,在【Device Architecture】窗口放大即可以看清管腳
29、分配。管腳分配完畢,點(diǎn)擊保存。退出PACE。在【Sources】窗口選中dot.v文件,【Processes】窗口雙擊【User Constraints】下的【Edit Constrains】即可查看*.UCF管腳約束文件。2.3.5配置下載文件雙擊【Generate Programming】生成可下載的bit文件。展開(kāi)【Processes】欄的【Generate Programming】旁的“”號(hào),雙擊【Configure Device】打開(kāi)iMPACT下載程序。彈出【iMPACTWelcome to iMPACT】對(duì)畫(huà)框,選中【Configure devices using Boundar
30、yScan(JTAG)】,單擊【finsh】。彈出【Assign New Configuration File】對(duì)話框,即給器件指定配置文件,其中前兩個(gè)器件為PROM和CPLD,都選擇【Bypass】按鈕,最后一個(gè)器件為FPGA,選擇dot.bit文件,選擇【Open】按鈕 彈出的對(duì)話框單擊【OK】,彈出一個(gè)警告信息,單擊【OK】按鈕。右擊最后一個(gè)器件,單擊【Program】右擊FPGA,選中Program彈出的對(duì)話框單擊【OK】,如果下載成功則出現(xiàn)Program Succeed。2.4實(shí)驗(yàn)結(jié)果實(shí)驗(yàn)結(jié)果可以看到合眾達(dá)的圖標(biāo)(如圖2-1)圖2-1實(shí)驗(yàn)三鍵盤(pán)實(shí)驗(yàn)3.1實(shí)驗(yàn)?zāi)康模褐髂K調(diào)用子模塊接口
31、程序了解子模塊數(shù)碼管顯示程序顯示的特點(diǎn)了解子模塊鍵盤(pán)控制程序的特點(diǎn)3.2實(shí)驗(yàn)內(nèi)容時(shí)鐘分頻設(shè)計(jì);鍵盤(pán)數(shù)據(jù)讀??;數(shù)碼管點(diǎn)亮;蜂鳴器驅(qū)動(dòng)。3.3實(shí)驗(yàn)例程介紹3.3.1例程流程圖如圖3-1 圖3-13.3.2例程包含文件1. main.v:程序主模塊,通過(guò)調(diào)用各功能模塊實(shí)現(xiàn)鍵盤(pán)數(shù)據(jù)的讀取、蜂鳴器的驅(qū)動(dòng)以及數(shù)碼管的顯示 (主模塊包含調(diào)用子模塊的接口語(yǔ)句,但個(gè)子模塊程序還未調(diào)用)2. v2_dcm.xaw:系統(tǒng)輸入時(shí)鐘處理文件,將外部輸入時(shí)鐘(100M)進(jìn)行10 分頻3. CLK_DIV.v:系統(tǒng)運(yùn)行時(shí)鐘分頻文件,將系統(tǒng)運(yùn)行時(shí)間進(jìn)行分頻,通過(guò)重載提供 100K 及 1K 的模塊處理時(shí)鐘 4. KEY_SC
32、AN.v:鍵盤(pán)讀取程序,包含鍵盤(pán)去抖處理 5. DEBOUNCE.v:鍵盤(pán)去抖延時(shí)程序 6. THAN_HEX_LED.v:數(shù)碼管點(diǎn)亮程序 7. main.ucf:FPGA 管腳分配程序 3.4實(shí)驗(yàn)步驟3.4.1創(chuàng)建工程1.雙擊桌面Xilinx ISE8.2 快捷方式或者選擇【開(kāi)始】/【所有程序】/【Xilinx ISE 8.2i】/【Project Navigator】打開(kāi) ISE 工程管理器(Project Navigator)。 2.打開(kāi)Project Navigator后,選擇 File New Project,彈出新建工程對(duì)話框, 在工程路徑中單擊“”按鈕,選擇工程存放的目錄單擊確定
33、,Project Name(工程名稱)輸入工程名lab3。點(diǎn)擊【Next】按鈕,彈出器件特性對(duì)話框。器件族類型(Device Family)選擇“Virtex2P”,器件型號(hào)(Device)選“XC2VP30ff896-7”,綜合工具(Synthesis Tool)選“XST(VHDL/Verilog)”,仿真器(Simulator)選“ISE Simulator”。單擊【Next】直到【Finish】。3.4.2添加源代碼在【Sources】面板右擊,選【Add Source】按鈕,指向工程存放的目錄文件夾下,打開(kāi)main.v文件在彈出的【Adding Source Files】對(duì)話框單擊【
34、OK】, 用【Add Source】命令接著添加【CLK_DIV.v】,【v2_dcm.v】,【THAN_HEX_LED.v】,【KEY_SCAN.v】,【DEBOUNCE.v】文件,方法和添加頂層模塊相同。展開(kāi)【KEY_SCAN.v】旁的“”號(hào),展開(kāi)后會(huì)發(fā)現(xiàn)此文件關(guān)聯(lián)的文件有“?”號(hào),繼續(xù)添加【DEBOUNCE.v】文件。共添加了五個(gè)程序模塊.3.4.3綜合雙擊main.v打開(kāi)源代碼視圖,雙擊【SynthesizeXST】進(jìn)行綜合。雙擊進(jìn)行綜合3.4.4添加約束在【Sources】面板右擊,選【Add Source】按鈕,指向工程存放的目錄文件夾下,打開(kāi)【main.ucf】文件。彈出的對(duì)話框
35、單擊【OK】。3.4.5配置下載文件雙擊【Generate Programming】生成可下載的bit文件。如圖3-13。展開(kāi)【Processes】欄的【Generate Programming】旁的“”號(hào),雙擊【Configure Device】打開(kāi)iMPACT下載程序彈出【iMPACTWelcome to iMPACT】對(duì)畫(huà)框,選中【Configure devices using BoundaryScan(JTAG)】,單擊【FINISH】。彈出【Assign New Configuration File】對(duì)話框,即給器件指定配置文件,其中前兩個(gè)器件為PROM和CPLD,都選擇【Bypas
36、s】按鈕,最后一個(gè)器件為FPGA,選擇【main.bit】文件,選擇【Open】按鈕彈出的對(duì)話框單擊【OK】,彈出一個(gè)警告信息,單擊【OK】按鈕。右擊最后一個(gè)器件,單擊【Program】彈出的對(duì)話框單擊【OK】,如果下載成功則出現(xiàn)Program Succeed。3.5實(shí)驗(yàn)結(jié)果按下按鍵,觀察數(shù)碼管的顯示,在按鍵按下的同時(shí)可聽(tīng)見(jiàn)蜂鳴器的聲音。按下“5”按鍵,實(shí)驗(yàn)結(jié)果如圖3-1:圖3-1 實(shí)驗(yàn)四 LCD顯示實(shí)驗(yàn)4.1實(shí)驗(yàn)?zāi)康模洪W頻顯示4.2實(shí)驗(yàn)內(nèi)容:系統(tǒng)時(shí)鐘DCM核的調(diào)用和編寫(xiě)時(shí)鐘分頻設(shè)計(jì);LCD文字顯示;FPGA的memory IP 核調(diào)用。4.3實(shí)驗(yàn)例程介紹:4.3.1例程流程圖如圖4-1所示。
37、圖4-14.3.2例程包含文件:1. main.v:程序主模塊,實(shí)現(xiàn)功能將AD 輸入波形還原至 DA 輸出 2. v2_dcm.xaw:系統(tǒng)輸入時(shí)鐘處理文件,將外部輸入時(shí)鐘(100M)進(jìn)行10 分頻 3. CLK_DIV.v:系統(tǒng)運(yùn)行時(shí)鐘分頻文件,將系統(tǒng)運(yùn)行時(shí)間進(jìn)行分頻,提供100K的模塊處理時(shí)鐘 4. LCD_DISPLAY.v:LCD 初始化,以及數(shù)據(jù)顯示 4.1. LCD_WRITE.v:LCD 寫(xiě)操作函數(shù) 5. MEMORT_LCD.v:漢字字庫(kù)存儲(chǔ)空間 (IP核)6. main.ucf:FPGA 管腳分配程序4.4實(shí)驗(yàn)步驟:4.4.1創(chuàng)建工程1.雙擊桌面Xilinx ISE8.2 快
38、捷方式或者選擇【開(kāi)始】/【所有程序】/【Xilinx ISE 8.2i】/【Project Navigator】打開(kāi) ISE 工程管理器(Project Navigator)。 2.打開(kāi)Project Navigator后,選擇 File New Project,彈出新建工程對(duì)話框。在工程路徑中單擊“”按鈕,選擇工程存放的目錄工程存放的目錄,單擊確定,Project Name(工程名稱)輸入工程名lab4。點(diǎn)擊【Next】按鈕,彈出器件特性對(duì)話框。器件族類型(Device Family)選擇“Virtex2P”,器件型號(hào)(Device)選“XC2VP30ff896-7”,綜合工具(Synthe
39、sis Tool)選“XST(VHDL/Verilog)”,仿真器(Simulator)選“ISE Simulator”。單擊【Next】直到【Finish】。4.4.2添加源代碼在【Sources】面板右擊,選【Add Source】按鈕,指向工程存放的目錄文件夾下,打開(kāi)main.v文件。如圖4-4所示。在彈出的【Adding Source Files】對(duì)話框單擊【OK】。會(huì)發(fā)現(xiàn)main模塊為頂層模塊,單擊【sources】欄中的main.v旁邊的“號(hào), 用【Add Source】命令接著添加【CLK_DIV.v】,【LCD_DISPLAY.v】,【LCD_WRITE.v】文件,方法和添加頂
40、層模塊相同?!緑2_lcd_ziku.xco】文件為存儲(chǔ)器核,看源代碼【v2_lcd_ziku.v】,該文件已放在lcd文件夾下?!続dd Source】命令接著添加【v2_dcm.xaw】文件的過(guò)程,方法和添加頂層模塊相同。此時(shí)只顯示主程序(main)等待編譯。用同樣的方法添加約束文件main.ucf。4.4.3配置下載文件雙擊【Generate Programming】生成可下載的bit文件。如圖4-10。運(yùn)行中展開(kāi)【Processes】欄的【Generate Programming】旁的“”號(hào),雙擊【Configure Device】打開(kāi)iMPACT下載程序。彈出【iMPACTWelco
41、me to iMPACT】對(duì)畫(huà)框,選中【Configure devices using BoundaryScan(JTAG)】,單擊【Finish】彈出【Assign New Configuration File】對(duì)話框,即給器件指定配置文件,其中前兩個(gè)器件為PROM和CPLD,都選擇【Bypass】按鈕,最后一個(gè)器件為FPGA,選擇【main.bit】文件,選擇【Open】按鈕,如圖4-12。彈出的對(duì)話框單擊【OK】,彈出一個(gè)警告信息,單擊【OK】按鈕。右擊最后一個(gè)器件,單擊【Program】彈出的對(duì)話框單擊【OK】,如果下載成功則出現(xiàn)Program Succeed。4.5實(shí)驗(yàn)結(jié)果觀察LCD
42、,合眾達(dá)刷屏顯示,如下圖4-1為當(dāng)前時(shí)刻的顯示,圖4-2為幾秒之后的顯示。圖4-1 圖4-2 實(shí)驗(yàn)五RTC讀取實(shí)驗(yàn)5.1實(shí)驗(yàn)?zāi)康模菏煜SE8.2開(kāi)發(fā)環(huán)境,掌握工程的生成方法;熟悉SEED-XDTK XUPV2PRO實(shí)驗(yàn)環(huán)境;了解Verilog語(yǔ)言在FPGA中的使用;了解RTC操作的Verilog實(shí)現(xiàn)5.2實(shí)驗(yàn)內(nèi)容:系統(tǒng)時(shí)鐘設(shè)計(jì)數(shù)碼管點(diǎn)亮I2C實(shí)現(xiàn)5.3實(shí)驗(yàn)例程介紹5.3.1例程流程圖如圖5-1 圖5-15.3.2例程包含文件1.main.v:程序主模塊,實(shí)現(xiàn)功能將AD 輸入波形還原至 DA 輸出 2. v2_dcm.xaw:系統(tǒng)輸入時(shí)鐘處理文件,將外部輸入時(shí)鐘(100M)進(jìn)行10 分頻 3.
43、 CLK_DIV.v:系統(tǒng)運(yùn)行時(shí)鐘分頻文件,將系統(tǒng)運(yùn)行時(shí)間進(jìn)行分頻,通過(guò)重載提供 100K 及 1K 的模塊處理時(shí)鐘 4. I2C_FUNC.v:I2C 功能實(shí)現(xiàn) 5. LED_DISPLAY.v:RTC 時(shí)鐘信息寫(xiě)操作函數(shù) 6. TRAN_HEX_LED.v:數(shù)碼管顯示函數(shù) 7. main.ucf:FPGA 管腳分配程序5.4實(shí)驗(yàn)步驟:5.4.1創(chuàng)建工程1.雙擊桌面Xilinx ISE8.2 快捷方式或者選擇【開(kāi)始】/【所有程序】/【Xilinx ISE 8.2i】/【Project Navigator】打開(kāi) ISE 工程管理器(Project Navigator)。 2.打開(kāi)Project
44、 Navigator后,選擇 File New Project,彈出新建工程對(duì)話框。在工程路徑中單擊“”按鈕,選擇工程存放的目錄工程存放的目錄,單擊確定,Project Name(工程名稱)輸入工程名lab4。點(diǎn)擊【Next】按鈕,彈出器件特性對(duì)話框。器件族類型(Device Family)選擇“Virtex2P”,器件型號(hào)(Device)選“XC2VP30ff896-7”,綜合工具(Synthesis Tool)選“XST(VHDL/Verilog)”,仿真器(Simulator)選“ISE Simulator”。單擊【Next】直到【Finish】。5.4.2添加源代碼在【Sources】
45、面板右擊,選【Add Source】按鈕,指向工程存放的目錄文件夾下,打開(kāi)main.v文件。如圖5-4所示。用【Add Source】命令接著添加【v2_dcm.xaw】【CLK_DIV.v】【I2C_FUNC.v】【TRAN_HEX_LED.v】【LED_DISPLAY.v】以及約束文件【main.ucf】文件,方法和添加頂層模塊相同。5.4.3配置下載文件雙擊【Generate Programming】生成可下載的bit文件。展開(kāi)【Processes】欄的【Generate Programming】旁的“”號(hào),雙擊【Configure Device】打開(kāi)iMPACT下載程序。彈出【iMPA
46、CTWelcome to iMPACT】對(duì)畫(huà)框,選中【Configure devices using BoundaryScan(JTAG)】,單擊【FINISH】。彈出【Assign New Configuration File】對(duì)話框,即給器件指定配置文件,其中前兩個(gè)器件為PROM和CPLD,都選擇【Bypass】按鈕,最后一個(gè)器件為FPGA,選擇【main.bit】文件,選擇【Open】按鈕。 彈出的對(duì)話框單擊【OK】,彈出一個(gè)警告信息,單擊【OK】按鈕。右擊最后一個(gè)器件,單擊【Program】彈出的對(duì)話框單擊【OK】,如果下載成功則出現(xiàn)Program Succeed。5.5實(shí)驗(yàn)結(jié)果數(shù)碼管
47、將顯示RTC時(shí)鐘,如圖5-1所示顯示為“23”秒,圖5-2顯示“28”秒,反應(yīng)時(shí)鐘在變化。圖5-1 圖5-2 4 FPGA實(shí)驗(yàn)拓展4.1實(shí)驗(yàn)?zāi)康模荷钊肜斫鈱?shí)驗(yàn)二的內(nèi)容了解16*16LED點(diǎn)陣的控制程序通過(guò)LED點(diǎn)陣設(shè)計(jì)自己喜歡的圖案4.2實(shí)驗(yàn)內(nèi)容定時(shí)時(shí)鐘設(shè)計(jì);LED點(diǎn)陣亮點(diǎn)顯示“陳小慧”三個(gè)漢字和一個(gè)笑臉圖案。4.3實(shí)驗(yàn)步驟: 實(shí)驗(yàn)步驟與實(shí)驗(yàn)二的一樣,只是將dot.v源文件代碼改為如下:module my_hart(cpld_cona,cpld_conb,reset,dot_data,dot_con,clk);output cpld_cona;output cpld_conb;input re
48、set;output 15:0dot_data;output 15:0dot_con;input clk;reg dot_con;reg dot_data;reg 15:0cnt_1k;reg clk_1k;reg 3:0cnt;parameter freq_1k=16'h3a98;/cpld pinsassign cpld_cona=1;assign cpld_conb=1;/iniinitialbeginclk_1k=0;cnt_1k=0;cnt=0;end/freqalways(posedge clk)beginif(reset=0)begincnt_1k<=0;clk_1
49、k<=0;endelse if(cnt_1k=freq_1k)begincnt_1k<=0;clk_1k<=clk_1k;endelse cnt_1k<=cnt_1k+1;end/always(posedge clk_1k)if(reset=0)cnt<=0;elsebegincase(cnt)'h0:begindot_con<='h8000;dot_data<='hD17F; end'h1:begindot_con<='h4000;dot_data<='hEAE3;end'h2:begindot_con<='h2000;dot_data<='hE0D5;end'h3:begindot_con<='h1000;dot_data<='hF0AA;end'h4:begindot_con<='h0800;dot_data<='hE0BE;end'h5:begindot_con<='h0400;dot_data<='hC42A;end'h6:begindot_con<='h0200;dot_data<='
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 舞蹈藝術(shù)在藝術(shù)市場(chǎng)趨勢(shì)分析與發(fā)展預(yù)測(cè)考核試卷
- 萍鄉(xiāng)學(xué)院《藥物化學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 沈陽(yáng)科技學(xué)院《科倫理與學(xué)術(shù)規(guī)范博士》2023-2024學(xué)年第二學(xué)期期末試卷
- 山西省朔州市右玉縣2025屆四下數(shù)學(xué)期末學(xué)業(yè)質(zhì)量監(jiān)測(cè)模擬試題含解析
- 蘭州信息科技學(xué)院《口譯理論與實(shí)踐》2023-2024學(xué)年第一學(xué)期期末試卷
- 山東省聊城市文苑中學(xué)2025年高三3月綜合測(cè)試歷史試題含解析
- 山東菏澤定陶區(qū)2025年初三年級(jí)第二次模擬考試數(shù)學(xué)試題含解析
- 山東杏林科技職業(yè)學(xué)院《入侵檢測(cè)與防御》2023-2024學(xué)年第二學(xué)期期末試卷
- 石嘴山市2024-2025學(xué)年四年級(jí)數(shù)學(xué)第二學(xué)期期末統(tǒng)考試題含解析
- 江西司法警官職業(yè)學(xué)院《心肺康復(fù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 一例巨大兒分娩的個(gè)案護(hù)理-課件
- 蘇教版三年級(jí)科學(xué)下冊(cè)單元測(cè)試卷及答案(全冊(cè))
- 室內(nèi)質(zhì)控-檢驗(yàn)科課件
- (完整)人力資源六大模塊ppt
- 小學(xué)四年級(jí)下學(xué)期英語(yǔ)閱讀理解
- 彩色手繪卡通兒科小兒護(hù)理高熱驚厥健康宣教教案PPT課件講義
- DB43∕T 498-2009 博落回葉-行業(yè)標(biāo)準(zhǔn)
- 心力衰竭病人的護(hù)理查房pptppt(ppt)課件
- T∕CADERM 2002-2018 胸痛中心(基層版)建設(shè)與評(píng)估標(biāo)準(zhǔn)
- 二次函數(shù)的應(yīng)用——橋洞問(wèn)題
- 《天然高分子》PPT課件.ppt
評(píng)論
0/150
提交評(píng)論