




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、FPGA实验培训讲义利用RCII-SP3S400开发板做FPGA实验,应具备一些条件:1、应用此开发板应该具备的基础知识1)HDL相关知识:Verilog或FPGA的设计与应用涉及到软件和硬件相关的知识,要求学员具备了一定的VHDL基础。如果没有这方面的基础,可以利用课余时间把相关内容补上。2)电路相关知识:由于用FPGA开发板做实验,可能要涉及到硬件的测试等,这要求学员对开发板的整个结构和原理图要有个充分的了解,有利于硬件的调试和测试。3)接口协议该开发板提供了相关标准接口,如串口、LCD、USB等,如果要用这些接口,希望对大家能对这些接口协议有了基本的了解,有助于相关实验的进行。4)FPG
2、A知识对FPGA的内部结构和相关资源的了解,能充分利用FPGA的资源,可加速实验的进展。所以建议学员对FPGA的基本结构和性能有个大体了解。2、使用开发板前的准备工作:1)设计软件的安装使用此开发板前,首先确保已安装了相关的设计软件,在开发包中提供现在主流的一些设计软件,包括:ISE12.2、ModelSim、Synplify,ChipScope和XilinxEDK,其中ISE12.2为Xilinx公司专门用于FPGA开发的工具,ModelSim和Synplify是目前应用比较广泛的仿真工具和综合工具,ChipScopePro是一个功能很强大的在线逻辑分析工具,在FPGA的调试阶段很有用,如果
3、没有安装这些软件,请先安装上述软件。建议先装ISE,再装其它的辅助工具。2)熟悉开发板的硬件环境对照开发板,了解一下FPGA外围器件和接口的配置,对电路板的整体情况有个了解,便于以后的开发。特别是FPGA的供电电路以及以后做相关FPGA的开发。3)利用本开发板进行FPGA实验的安排利用本开发板的实验分为四个节点,不同的节点侧重点不同,不同。下面给出学习建议:第一节点为基本实验。通过这部分实验,希望学员能够掌握参照提供的原理图,从设计到验证再到最后的实现,主要是熟悉FLASH的配置方法,有助于学习的内容和深度也有所FPGA开发的一个基本的流程,XilinxFPGA设计工具ISE的使用。通过Ver
4、ilog或VHDL源代码的输入,设计译码器逻辑功能,熟悉FPGA的基本设计流程。第二节点为存储器IP实验,通过这部分实验,了解如何利用FPGA内部的BlockRAM资源和FPGA外围电路中经常用到的几种存储器SRAM、SDRAM、FIFO和FLASH,掌握利用开发工具所提供的存储器IP核来实现存储器的设计和使用。第三节点为设计实验,在第一节点和第二节点的基础上,利用Verilog或VHDL适合分层设计的思想,通过采用存储器IP核和相关逻辑实现FIFO功能,学习如何利用FPGA来实现比较复杂器件功能。第四节点为接口设计实验,这一部分内容有一定的难度,是前几部分的综合运用。首先在FPGA内实现一个
5、FIFO;再在FPGA内设计一个接口逻辑电路可实现ARM对FIFO读写操作,通过编写ARM程序实现对FIFO的读写。通过这几个节点的实验,使得大家对FPGA的设计有个比较全面的了解,从简单到复杂,由浅入深,能够自己独立的完成设计。FPGA的学习涉及很多内容,不是一朝一夕就能精通的,需要付出艰辛的努力,希望这套开发系统能够让给您有一个好的开始,为您未来的学习打下比较坚实的基础。请记住下面的一些经验要开发FPGA,不仅需要熟练掌握verilogHDL语言,还需要了解FPGA芯片结构、专用模块和其底层内嵌单元(全局时钟网络、DLL模块、DCM模块、内嵌的块存储单元、硬核乘法器、高速收发器和嵌入式处理
6、器等)的使用方法。实用的FPGA设计方法把verilogHDL看成是一种胶合物,将芯片特有的组件融合电路来实现,再用具体合适的语言去描述,而不是凭空写verilog代码。其中,只有这样才能进行高效的开发,达到事半功倍的效果。RTL级模型,选择具体的物理面向硬件的设计思维就是指将具体功能形成硬件的语法和语句,更多的要积累实践经验,一定要注意调试过程中对相关问题和结论进verilogHD的并不是所有用verilogHDL语言写的程序都是硬件可综合的。用verilogHDL语言来编程必须采用良好的代码风格;不仅在于了解行积累,才能逐步形成优秀的代码设计风格。充分合理地利用约束文件。FPGA的可编程特
7、性使PCB设计、加工和FPGA设计可同时进行,不必等到FPGA管脚位置完全确定后再进行,节省系统开发时间。在高速FPGA设计开发时,一定要重视时序!4、使用开发板的注意事项使用此开发板需要注意以下几个问题:1)供电问题。开发系统为开发板提供了一个5V的电源,请勿使用其他电源,以免电压不符导致开发板损坏。另外,在开发板电源边上有一个开关,用户可以不必每次插拔电源,只需用此开关来控制即可。2)请不要在上电时插拔各种接口,如JTAG、串口、VGA口、USB等3)带电测量时千万要小心不要引起电路短路实验一、ISE安装和开发流程一、了解软件的功能和组成Xilinx公司的ISE软件是一套以开发Xilinx
8、公司的能够给用户提供一个无需借助任何第三方从设计输入到综合、布线、仿真、下载的全套解决方案EDA软件,但其也可以很方便地与其他FPGA&CPLD的集成开发软件,它,其工作流程EDA工具接口。设计输入:HDL代码输入、原理图编辑输入、IPcore输入、StateCAD状态机编辑输入和约束文件输入。综合:Xilinx自身提供的综合工具XST,可以与MentorGraphic公司的LeonardoSpectrum和Synplicity公司的Synplify无缝链接。仿真:ISE自带一个具有图形化波形编辑功能的仿真工具HDLBencher,同时提供使用MentorGraphic公司的ModelSim进
9、行仿真的接口。实现:包括翻译、映射、布局布线等,还具备时序分析、管脚指定以及增量设计等功能。iMPACT进行设备配置和通信,下载:BitGen将布局布线后的设计文件转换为位流文件;控制将程序烧写到FPGA芯片或PROM芯片中去。二、安装软件和开发环境建立1.ISE12.2的安装1)、选择安装文件下的xsetup.exe,连续nextoraccept。巒黄:鵜野遭吾瞬卿弟尊毬野nc文件妥装営层i)|?ski:i刁1丄:口心沖1_jNLc/Q5t-TO0.VfjNLPioEtAlBO.:KInext,耳它随SffSK件夹隹务也1:3亡)E:屁豔箱先盘E二圾2越订渎型锻日期0%谥|戸穌总如点13勺X
10、X-X-X-X文文文文aqaDJ勺3:sebill.=s:=!2010-6-22.010-&-2下午.勿10&字下午.iO-6-2-.TT.罚1卜8占下午.西16贬下午.i01O-6-Tf.Z01O-9-31.2010-9-Sv1.010-9-31.tpiO-9-3.-1.E.biO-9-31.010-9-31.Z010-9S?71.纠1珂技严1.S10-9-31.文件夬313-9-3下午:ISEBeslan5ui7e12.2InstalleiSelectEditiontoInstall文件夬313-9-3下午:ditiooo血碌Ign已Fit:Etan知ea_onListISEVebPi:I
11、SELesion2ult5:LogicEditiunISE门fu二EnhadTRHEdiiiq_TSEDesign5ul2:ESPEditionISEDesignEults:EditionL:itiTools:MATLAB2010,则不会提示。可以选择chooselater。文件夬313-9-3下午:文件夬313-9-3下午:4)、license安装。选择LocateExistingLicense(s)。文件夬313-9-3下午:文件夬313-9-3下午:13亟AciJULr5a.Istnuztions:(ilirj:i;jlic=itLor.saLionatizallycetsct7:ili
12、c,皿血-ImGEkcer.iesMlie)resLiliiLZinit.eLriz:illiliimiLrectory.Usetr.eCcpj1LicsiLseRitoLId:o:yalizesaEileir.:oDimcirecicyEerva1liccie,詰topc:r.:tolitsr亡自fileslillcc:ior.sstrierthm.ec:or.asftrie咼vimTCELtvari=11estlovQJjlhnsri祈匸nfecIdnueikeseocieliIe:dihiseppLi:aticiL.1E::iripLe51Z31lhervt-;C:Jlcenses:il
13、jatijil;ipnsji.MpE_uil2_3e7ice_v?:F1.30-jdi-2:l:BliJhIuitlIF1.30-J3E-2::lloJelozkEi.liLiociLtecli:er.EE_Iyfa:Hardare_EvaljatijilMpE_nar1165=0::fzoio.orr30-jdi-2:l:HoJelozk)Ed-InzocjLtecli2er.sE_Im::ire_l7:=iljatijil;:匸仃弧KpE_F13St_lC_Vl:F1.lloJelozkEi.liLiociLted-i弱匚来_1兀三:耳辽曲:址飞丿卩辺”匕jilMpE_nDSt_lC:F刃
14、1I折30-jdi-2:l:HoJelozk)Ed.liLiouiteclizer.sejm:Harch:ire_l7:=iljati:hl;ip仃弧KpE_lL_tHn:ii:_:F1.:I30-j3E-2:l:lloJelozkEd.liLiociLtecli:er.E_Iyfs;H:i2_ih:ife_E|:iljatijilMpE_lL_tenai:_vl:F1.30-jdi-2:l:BliJhIuit1.liLiociLteclizer.sejm::ire_l7:=iljati:hlKpE_lL_tHn:ii:pE_ilc_t2:F刃11.0730-j3E-:l:Bid已_。曲1.l
15、iLiociLtec-i:er.E_Iyfs;H-ih:ifeJiljljatijil;ipnsji.:F1.30-jdi-2:l:HoiEhzkEil.liLiociLtecli二EC.来_Iyfm::ife_l7:=ilj:iti:il.心1忙兀宜ELlcrCJE$iT.iT:atOCf:亓:斗Jjd/zsrFPGA可编程逻7)、ISE122组件在开始程序XilinxISEDesignSuite12.2。比1:工:卫辺.Soi:i12.2堀(7d:psrSuits?!2_DxTir.t=:ia_F1:M心电源开机步骤如下:1)首先确定电源已关闭按下图图示连接硬件设备和配件FPGA下载器|_
16、USB线接电源适配器-.:.;、电源开关USB口3)4)血I接入电源,检查下载器知护/上僦儁郵SK弾個卜覘*郦土齢旳擢2.2天机操作1)关闭电源2)拆除连接线装箱三、的使用在计算机桌面上双击ISE图标,便可以启动ISE软件的运行。整个界面采用标准Windows格式,共分8个部分:标题栏、菜单栏、工具栏、工程管理栏、源代码文件编辑区、过程管理区、信息显示区和状态栏。gIf=-:ki扯二:-:A伽j:论湖丫:三心i:瀕二牙:-is:-ikik:t:.-;囲:唯EXg心灯肿d訂睥|艸触f|!标题栏菜单栏工具栏XJJnf目也如由1m册:耳鏗ST-.I-.;j-:U!:d:h:_r2fJllI,込i;i
17、l=.:i:i;.:icipaiK:Iqiriis-:5/5./i-jr.-::;=-di二二血曲二I?,1;?t3ignKsje:$,1;jduhK?J:3:rirzn:n:源代码编辑区过程管理区詁:levisici1-二匕眺心j.hdiLi戈:C3MIZ3:jb汀幺lij.飞五bi:也匕Idj|审h:臥Lili二芒卜Hl.fGl.i.Tidaal.i:上上J“It:ih:ILiajlalcr.L:ci:iFjfJJlifblf匚CjCi;具体菜单栏中的各项的具体功能21ml;二jxi:iier:r.:ii::匸叽壬翅加廿.ijctuhctcd5r?cE:mput2:1j二:!L出puh兀配
18、町25cur.pir:Tc.c.:-.!5以阅读相关资料。下面具体介绍利用ISE28信息显示区状态栏住HE:蚁:;is:Sas!F:h:J:imilitssipic:?LiE:r.:Ig巧|u(jl3k:.v卜泊选择“FilelNewProjiect”选项,弹出新建工程的对话框,输入工程名,选择所存路径,至于顶层源文件类型默认为HDL,点击NEXT进入工程属性,选择器件类型、封装、速度、综合工具、仿真工具以及喜欢的硬件描述语言,详见下图设置。择好后点击OK进入下一页,可以选择新建源代码文件,也可直接跳过,进入下一页。如已有源代码文件,则可以添加到=|九山ykxr:Fir年jj:.ri.?il;
19、!FjcII:工程中;如没有,则单击“NEXT”进入最户一页,单击“OK”就建立一个完整的工程文2、代码输入1)在工程管理区点击鼠标右键,弹出菜单选择NewSource,或者在Project栏目菜单中选择NewSource,弹出界面;ISEProjectlavigator(L6c)-E:壮pta_ptytesttytest.sise-ISEDesignSuiteInfnCentErfileEJit丘歸FrdjectSou-*:=rrozezzTocls匕丁/卅L=oc:llelpC扌H1乜,。X約e3eslpr.阿:(S):iEiier.-atioC泾5Lndat:o-Tt加30-=Empty
20、ViewTTi:ewcure-tf:.curiarenzfisu:aiddcfieitot-e:rqjec:i-Ericliizbxitizrieft.,CLfrrr-anzsfrcrrtheFrojectrii:ru.-3nzb:,-usncth=DbNr:ies-an:Lttd-epzres1rtj&leaseOwr艇*1DesljiiRfesoLircesDoDumentatimProject叭洋卢刀声剧巨|區日EM丿阳洱ISEDesjiSuite12RfleasEChrviewISEDesiSuiteHighlglfts:Xilin:-iIEE目Design3j1e-2E-sblesj
21、/nami:powerreducionusrgpat3-:pendi-:autoDes:rpresercalionlowforStrgpredizlabilN曲14czrpliantIF$叩卩。走sstreamledplu-3-c-|:I駅FFGLEsignfcw.r:on-cin:Intui:iihgeiEmionpaalreczrfiguratcndesi:rflowfo-Vr1&-6e-i;deslT/?ersyste!TiMhdimnnrtnrViiinrlnn!:FanrlfiTYiA12)输入文件名,选择源码类型,这里选择VerilogModule,单击NEXT进入端口定义对话框;
22、VerilogM:duleVeri10gTastFixWILModuleUserIlijcijiierLtSchematicChipscopeDefinit:iTLdCdrtle匚titmFileInipleniHrLtaAidtlCutletr:“:rLt呂FileIF(COFLEJerLerator&Ai-chitectm-eWiz:rdjMEMFileBMMFileElSelectSourceTypeSelectsi:mrcetype_,filetl:引tie:r.ditm1ucatXiun.0AddtofrojectMoreInfciHevSourceVizardEmbeddedPro
23、cessorLitrii-/FackigeTestBenehFilerL:=jrie:输入端口名,选择端口的方向属性、总线以及MSB、LSB等,也可以在代码中进行声明。单击NEXT进入下一个界面;4)示例程序的verilogHDL程序:moduleSEGdisp(SEG_LED,VD_data,SW);output3:0SEG_LED;input3:0SW;output7:0VD_data;reg7:0VD_data;reg3:0SEG_LED;always(SW)begincase(SW)4b1110:beginSEG_LED=4b0001;VD_data=8b0110_0000;end4b
24、1101:beginSEG_LED=4b0010;VD_data=b1101_1010;end4b1011:beginSEG_LED=4b0100;VD_data=8b1111_0010;end4b0111:beginSEG_LED=4b1000;VD_data=8b0110_0110;enddefault:beginSEG_LED=4b0000;VD_dataSchematic|=|lJEerII0ruinentIvJVeri10gModuleVVerilogTestFixtureVHDLModuleVHDLLiWaryVHDLPackageVHDLBenchEmbeddHilProcess
25、orFilerL:iiTie:berLch_deniuLoatiome:i.demuAddtoprojectMoreIntoNextC:=ltlch1i-.bdU11匚17匚匚1UHJ-IJ-1:c)选择要仿真的文件,点击NEXT;d)点击“FINISH”就生成一个Verilog测试模块。ISE能自动生成测试平台的完整构架,包括所需信号、端口声明以及模块调用的实现。所需要完成的工作就是initial.end模块中的“/Addstimulushere”后面添加测试向量生成代码。这里给出示例测试代码,将其添加于/Addstimulushere处#100;SW=7;#100;SW=11;#100;S
26、W=13;#100;SW=14;2)测试平台建立后,在工程管理区将状态设置为“Simulation”选择要仿真的文件名,过程管理区就会显示“Isimsimlator”3)下拉“Isimsimlator”,选择“SimulateBehavioralModel”,单击鼠标右键,现在“ProcessProperties”可修改仿真远行时间等。4)修改后,直接双击“Isimsimlator”中的“SimulateBehavioralModel”进行仿真。(3亟检查仿真结果是否达到预期设计目标。ISii匾血)-Default,fcfg區?::!1A-A7iiid出口血.如L=I(ilHelpSorjfC
27、E-fjj=c:slijSrj_=ti:DObjectsrglbl7l=s:_doT(n=)0:04、纟(.U用的约束是FP(CF)、网表FPGA管脚卩约束文件进行描A开发中不可缺约束文件(.NCI嘉2门EL11E111111111ID/0-40tV.Uli-I-31mEIn.1.ru-二.y-V-r-1-EDff-AAA1)约束件建立2:(in-ij:i.sCZDCDCZJ0L::.(UisXX中选择NewSource,弹出界面;X巨NevSourceWizardSelectSourceTypeSelecteuUli-cetypmfilen:dJTieandiIs1ucaticm.阳BMMF
28、ileCMChipScupeDefinition:ndCoriiLectionFileWIniplemerLtNtionConstraintsFile:-JIF(COFLEGener:ti:ir&krchilectureWi工:ard;lMEMFilemSchematic=1UserDocuiTierLtVeri1ugM:duleVJVerilogTestFixtureModijleVHDLQVHDL弓VHDL3VHDLFEmbeddedProcessorLibr:ai_yFackageTestBenchFilerL:=uTie:Locatidtl:e:i.dem0XX0Addtoprojec
29、tXX输入文件名,选择ImplementionConstraintsFile,点击NEXT;如有多个文件,则选择相应文件,点击NEXT;点击“FINISH”完成约束文件的创建。2)编辑约束文件管脚约束文件的语法为:NET“Signal_Port_Name”LOC=“Chip_Port”;可用“#”或“/*.*/”添加注释。需要注意的是UCF文件对字母的大小写敏感,信号名必须和设计中保持大小写一致。另外要搞清楚FPGA芯片管脚的编号方式,因不同类型的FPGA管脚编号可能是不同的,一旦选定了FPGA,知道其编号方式,就可在管脚约束文件引用。否则会出错的。#pin2ucf-ThuNov2517:05
30、:092010#ThefollowingconstraintswerenewlyaddedNETSEG_LEDLOC=P5;NETSEG_LEDLOC=P4;NETSEG_LEDLOC=P3;NETSEG_LEDLOC=P2;NETSWLOC=P58;NETSWLOC=P57;NETVD_dataLOC=P194;NETSWLOC=P52;NETVD_dataLOC=P196;NETSWLOC=P51;NETVD_dataLOC=P197;NETVD_dataLOC=P198;NETVD_dataLOC=P199;NETVD_dataLOC=P200;NETVD_dataLOC=P203;NE
31、TVD_dataLOC=P204;5、综合完成了输入、仿真以及管脚分配后,就可以进行综合和实现。选择要综合的文件,在过程管理区中双击“Synthesis-XST”可以完成综合操作,综合可能有3种结果:NoFrocessesFhirLTiiTLgFrocesses:deccde3to8十一+L.De5ignSuitifi:ai-y.i1ReportsDeeignUtilitiesIJeerCunzti_aintsCreaTimingCcmEtriiLt三I.rLlTinFl:rLrLLrLg(P1=LnAlLead)一Pre-Sj-Tithmmi三I/LlTiriIl:TLTLLrLg(Fl=L
32、nAlLe:ad)一Pozt-EFTiAhmwPloi:irpl:iiLArea.i11匚1/Logic(Fl:iriAheadjSjLthesize一aSTImjil&mentHesignGeTLerateFtugr=diriniingFileCotli百i工r已T:=LtgetDwiceAil:lyzeDeeignUeingChipScupe3Start农Design,Files騎LibrariesConsolea)综合后完全正确,则在“Synthesis-XST”前面有一个打钩的绿色小圆圈,且在信息显示区里显示process“Synthesis-XST”completedsucessfu
33、lly。用鼠标右键点击“Synthesis-XST”选择“viewTextReport”查看综合报告,了解FPGA资源使用情况等。如有告警,则出现一个带感叹号的黄色小圆圈,在信息显示区的“warning”中可以看到相关信息;如有出错,则出现一个带叉的红色小圆圈,在在信息显示区的error”中可以看到相关的出错信息;综合正确完成后,可以通过双击“ViewRTLSchematic”来查看RTL级构图,检查是否按照设计意图来实现电路。另外需注意的,一般可使用XST属性的默认值来综合,但XST也提供丰富、灵活的属性配置,可鼠标用右键点击“Synthesis-XST”,选择“processpropert
34、ies”从三个方面来配置:synthesisoption、HDLoption以及specificoption,具体可参阅相关资料。6、实现将综合输出的逻辑网表翻译成所选器件的底层模块和硬件原语,将设计映射到器件结构上,进行布局布线,到达在选定器件上实现设计的目的。涉及三个步骤:翻译(Translate)逻辑网表、映射(Map)和布局布线(Place&Route)0通过选择“ImplementDesign”便可以完成整个实现过程,实现后在“ImplementDesign”前面有一个打钩的绿色小圆圈,同时可在信息显示区中得到精确的资源占用情况。7、编程文件产生只需在过程管理区中双击“GenerateProgra
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 设施设备转让合同协议
- 购青贮合同协议
- 解除委托拍卖合同协议
- 贷款机合同协议
- 设计合同补充协议书格式
- 设计制作类合同协议
- 购销产品合同协议书范本
- 购买改装件喷漆合同协议
- 2025年大学物理考试创新考点试题及答案
- 广东省广雅中学2024-2025学年高一下学期期中考试英语试题(原卷版+解析版)
- 新高考:地理选科指导
- 各种变频器的使用说明书.lg-ig53parameter list
- GB/T 3091-2015低压流体输送用焊接钢管
- 广东省国家公务员录用体检表
- GB/T 19582.2-2008基于Modbus协议的工业自动化网络规范第2部分:Modbus协议在串行链路上的实现指南
- GB/T 12686-2017草甘膦原药
- 细胞的能量“货币”ATP说课课件-高一上学期生物人教版必修1
- 企业合规管理培训课件讲义
- 解剖学课件神经系统课件
- 《公司治理》课件
- 上市公司的投资者关系管理和危机公关-精选文档
评论
0/150
提交评论