3-2-基于ise的fpga开发入门教程_W_第1页
3-2-基于ise的fpga开发入门教程_W_第2页
3-2-基于ise的fpga开发入门教程_W_第3页
3-2-基于ise的fpga开发入门教程_W_第4页
3-2-基于ise的fpga开发入门教程_W_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于 ISE 的 FPGA 开发入门教程Revision HistoryDraft DateRevision No.Description2017/09/21V1.21.增加芯片型号的转换方法。 2017/03/13V1.11.芯片型号从 xc6slx9 升级到 xc6slx16。 2014/04/13V1.01.初始版本。 公司官网:销售邮箱:公司总机:020-8998-62801/56技术论坛:技术邮箱:技术热线:020-3893-9734目 录 1 工程新建和

2、程序编写31.1 新建工程31.2 新建模块文件91.3 编写程序132 程序仿真162.1 新建仿真文件162.2 设置仿真参数202.3 仿真243 时序和引脚约束264 程序下载和烧写314.1 编译程序314.2 程序下载334.3 程序烧写405 芯片型号的转换方法50更多帮助55公司官网:销售邮箱:公司总机:020-8998-62802/56技术论坛:技术邮箱:技术热线:020-3893-9734在进行开发前,请查看如下开发流程图: 图 11 工程新建和

3、程序编写1.1 新建工程(1) 双击桌面如下图标打开 ISE 软件: 图 2双击后弹出如下界面: 公司官网:销售邮箱:公司总机:020-8998-62803/56技术论坛:技术邮箱:技术热线:020-3893-9734图 3(2) 点击“File - New Project”,弹出如下界面: 公司官网:销售邮箱:公司总机:020-8998-62804/56技术论坛:技术邮箱:

4、技术热线:020-3893-9734图 4(3) 以点亮 LED 程序为例,输入工程名字“LED”,文件保存路径可以根据个人情况修改,此处修改为“C:Spartan-6”,如下图所示: 公司官网:销售邮箱:公司总机:020-8998-62805/56技术论坛:技术邮箱:技术热线:020-3893-9734图 5(4) 点击 Next,弹出配置界面,根据实际情况设置平台、芯片型号、芯片封装、开发语言和速度等参数,这里以 Spart

5、an6 XC6SLX16 为例,如下图所示: 公司官网: 技术论坛:销售邮箱: 技术邮箱:公司总机:020-8998-62806/56技术热线:020-3893-9734图 6(5) 点击 Next,弹出工程总体信息界面: 公司官网:销售邮箱:公司总机:020-8998-62807/56技术论坛:技术邮箱:技术热线:020-3893-97

6、34图 7(6) 点击“Finish”,弹出如下界面: 公司官网:销售邮箱:公司总机:020-8998-62808/56技术论坛:技术邮箱:技术热线:020-3893-9734图 81.2 新建模块文件(1) 右击工程,在弹出的界面中点击“New Source”,如下图所示: 公司官网:销售邮箱:公司总机:020-8998-62809/56技术论坛:技术邮箱:supportt

7、技术热线:020-3893-9734图 9(2) 在弹出的界面的“Verilog Module”选项后面输入模块文件名字“LED”,如下图所示: 公司官网: 技术论坛:销售邮箱: 技术邮箱:公司总机:020-8998-628010/56技术热线:020-3893-9734图 10(3) 点击 Next,弹出引脚约束窗口,由于后面使用文本程序来约束,此处请直接点击 Next。 公司官网:销售邮箱:salestron

8、公司总机:020-8998-628011/56技术论坛:技术邮箱:技术热线:020-3893-9734图 11(4) 点击 Next 后,弹出如下界面: 图 12公司官网:销售邮箱:公司总机:020-8998-628012/56技术论坛:技术邮箱:技术热线:020-3893-9734(5) 点击 Finish,完成模块文件新建。此时会在右侧出现程序编辑窗口,如下图所示: 图 131.3

9、编写程序(1) 将如下 FPGA 程序复制到模块文件编辑框中。本程序实现流水灯功能,板上 3 个LED 依次被点亮,间隔 0.5S。 module led_test#(parameter N = 28,/计数器位宽M = 25000000/模 M 计数器 /约为:40ns*25000000= 1s公司官网:销售邮箱:公司总机:020-8998-628013/56技术论坛:技术邮箱:技术热线:020-3893-9734)(inputwire clk, inputwir

10、e rst_n,output reg 2:0led = 3b110, inputcs2_in,output cs2_out);/信号声明 regN-1:0c1;/clk 计数器 /主体部分 /c1_clk(周期为 1S)产生电路always(posedge clk,negedge rst_n)beginif(!rst_n)begin c1=0; led=3b110; end/复位 else if(c1M-1)c1=c1+1b1;/对 clk 计数 else begin c1=0;ledxc6slx16-3csg324-Compile HDL Simulation Libraries-Proce

11、ss Properties”,如下图所示: 公司官网:销售邮箱:公司总机:020-8998-628020/56技术论坛:技术邮箱:技术热线:020-3893-9734图 21(2) 在弹出的界面中设置 Modelsim 参数,一般默认就是正确的设置(备注:在此操作之前,请确保已经正确安装 Modelsim SE-64 10.1c 和 ISE 仿真库文件路径),如下图所 示: 公司官网: 技术论坛:销售邮箱:s

12、 技术邮箱:公司总机:020-8998-628021/56技术热线:020-3893-9734图 22(3) 点击 OK(4) 修改 LED_tb.v 中的仿真程序为如下: 图 23公司官网:销售邮箱:公司总机:020-8998-628022/56技术论坛:技术邮箱:技术热线:020-3893-9734图 24module led_test_tb;/时钟周期 localparam T = 40;/

13、仿真周期 / Inputs reg clk; reg rst_n;/ Outputs wire 5:0 led; / Instantiate the Unit Under Test (UUT) led_test uut ( .clk(clk), .rst_n(rst_n), .led(led)公司官网:销售邮箱:公司总机:020-8998-628023/56技术论坛:技术邮箱:技术热线:020-3893-9734);/产生周期为 Tns 的时钟信号 always b

14、egin clk = 1; #(T/2);clk = 0; #(T/2);end /产生复位信号,信号宽度为 1.5 个 T initial beginrst_n = 0; #(1.5*T);rst_n = 1; end/其他激励 /initial begin/endendmodule2.3 仿真(1) 双击“LED_tb.v-Simulate Behavioral Model”,如下图所示: 公司官网:销售邮箱:公司总机:020-8998-628024/56技术论坛:技术邮箱:supporttronl

15、技术热线:020-3893-9734图 25(2) 双击后会弹出如下仿真界面: 公司官网:销售邮箱:公司总机:020-8998-628025/56技术论坛:技术邮箱:技术热线:020-3893-9734图 26点击工具栏按钮即可以看到仿真效果,具体仿真细节此处不做讲解,仿真时序正确后,关闭仿真软件。 3 时序和引脚约束(1) 点击“Implementation-LED.v-User Constraints-Create Timing Constrain

16、ts-Run”进行时序和引脚约束,如下图所示: 公司官网:销售邮箱:公司总机:020-8998-628026/56技术论坛:技术邮箱:技术热线:020-3893-9734图 27(2) 点击后弹出如下界面: 图 28(3) 点击 Yes,弹出如下界面: 公司官网:销售邮箱:公司总机:020-8998-628027/56技术论坛:技术邮箱:

17、技术热线:020-3893-9734图 29(4) 因为板载晶振为 24MHz,所以双击右边的 clk 变量,在弹出的界面中设置产生的24MHz 方波时钟信号,占空比为 50%,如下图所示: 公司官网:销售邮箱:公司总机:020-8998-628028/56技术论坛:技术邮箱:技术热线:020-3893-9734图 30(5) 点击 OK 关闭设置框,产生.ucf 文件,弹出如下界面: 公司官网:销售邮箱:salestronlong.

18、com公司总机:020-8998-628029/56技术论坛:技术邮箱:技术热线:020-3893-9734图 31(6) 双击 LED.ucf,弹出如下界面,发现仅有时序约束。 图 32(7) 在末尾添加如下引脚约束(请根据实际引脚连接修改设置): # PlanAhead Generated physical constraints # PlanAhead Generated IO constraintsNET clkIOSTANDARD = LVCMOS33 | LOC = V10;NET rst_n IOSTANDARD =

19、 LVCMOS33 | LOC = T11;公司官网:销售邮箱:公司总机:020-8998-628030/56技术论坛:技术邮箱:技术热线:020-3893-9734/内连 AD7606 片选信号 NET cs2_in IOSTANDARD = LVCMOS33 | LOC = R10; NET cs2_out IOSTANDARD = LVCMOS33 | LOC = V8;NET led0 IOSTANDARD = LVCMOS33 | LOC = T8; NE

20、T led1 IOSTANDARD = LVCMOS33 | LOC = T9; NET led2 IOSTANDARD = LVCMOS33 | LOC = V9;图 334 程序下载和烧写4.1 编译程序(1) 双击“LED.v-Implement Design”将综合输出的逻辑网表翻译成所选器件的底层模块与硬件语言,Console 无 Error 方可进行下一步操作。 公司官网:销售邮箱:公司总机:020-8998-628031/56技术论坛:技术邮箱:技术热

21、线:020-3893-9734图 34图 35(2) 双击“LED.v-Generate Programming File”生成.bit 文件,Console 无 Error 提示方可进行下一步操作。 公司官网:销售邮箱:公司总机:020-8998-628032/56技术论坛:技术邮箱:技术热线:020-3893-9734图 36图 374.2 程序下载(1) 程序下载不会将程序固化到 SPI FLASH,双击“LED.v-Configure Target Devi

22、ce”,弹出敬告,如下图所示: 公司官网:销售邮箱:公司总机:020-8998-628033/56技术论坛:技术邮箱:技术热线:020-3893-9734图 38图 39(2) 点击 OK,弹出如下界面: 公司官网:销售邮箱:公司总机:020-8998-628034/56技术论坛:技术邮箱:技术热线:020-3893-9734图 40(3

23、) 连接好下载器和开发板电源,开发板上电后查看 PC 设备管理器,确定下载器已被计算机识别,如下图所示: 图 41(4) 点击“ISE iMPACT (O.61xd)-Edit-Launch Wizard”,如下图所示: 公司官网:销售邮箱:公司总机:020-8998-628035/56技术论坛:技术邮箱:技术热线:020-3893-9734图 42图 43(5) 点击 OK,弹出如下界面: 公司官网:销售邮箱:salestronlo

24、公司总机:020-8998-628036/56技术论坛:技术邮箱:技术热线:020-3893-9734图 44(6) 点击 Yes,弹出如下界面: 公司官网:销售邮箱:公司总机:020-8998-628037/56技术论坛:技术邮箱:技术热线:020-3893-9734图 45(7) 选择 led_test.bit 文件后会弹出如下界面: 图 46(8) 提示是否烧写到 SPI 或 BPI

25、PROM,点击 No(后面再烧写),弹出器件属性界面: 公司官网:销售邮箱:公司总机:020-8998-628038/56技术论坛:技术邮箱:技术热线:020-3893-9734图 47(9) 点击 OK,左击芯片(变绿),然后双击左边的 Program,如下图所示: 图 48(10) 接着开发板的 LED 就闪烁起来了,界面同时提示下载成功,如下图所示: 公司官网:销售邮箱:公司总机:020-899

26、8-628039/56技术论坛:技术邮箱:技术热线:020-3893-9734图 494.3 程序烧写(1) 双击“ISE iMPACT (O.61xd)-iMPACT Flows-Create PROM File”,如下图所示: 图 50(2) 弹出参数设置对话框,如下图所示: 公司官网:销售邮箱:公司总机:020-8998-628040/56技术论坛:技术邮箱:技术热线:020-3893-9734图

27、 51本开发板用的是 64Mbits 的 SPI FLASH,请设置为 64Mbits,输出路径默认为本 LED 工程目录下。 (3) 点击 OK,弹出如下界面: 图 52(4) 点击 OK,弹出如下界面: 公司官网:销售邮箱:公司总机:020-8998-628041/56技术论坛:技术邮箱:技术热线:020-3893-9734图 53(5) 选择 led_test.bit 文件,弹出如下对话框: 图 54(6) 点击 No,弹出如下对话框: 公司官网:www.tr

28、销售邮箱:公司总机:020-8998-628042/56技术论坛:技术邮箱:技术热线:020-3893-9734图 55(7) 点击 OK,双击“ISE iMPACT (O.61xd)-iMPACT Processes-Generate File”,如下图所示: 图 56(8) 右边提示如下图所示: 公司官网:销售邮箱:公司总机:020-8998-628043/56技术论坛:技术邮箱:s

29、技术热线:020-3893-9734图 57(9) 点击 Boundary Scan 后在空白处右击鼠标,在弹出的界面中点击“Initialize Chain”, 如下图所示: 图 58公司官网:销售邮箱:公司总机:020-8998-628044/56技术论坛:技术邮箱:技术热线:020-3893-9734(10) 点击后弹出如下界面: 图 59(11) 选择 led_test.bit 文件,弹出如下对话框: 图 60公司官网:w

30、销售邮箱:公司总机:020-8998-628045/56技术论坛:技术邮箱:技术热线:020-3893-9734(12) 点击 Yes,弹出如下界面: 图 61(13) 选择 led_test.mcs,弹出如下界面: 图 62公司官网:销售邮箱:公司总机:020-8998-628046/56技术论坛:技术邮箱:技术热线:020-3893-9

31、734(14) 选择板载 SPI FLASH 的型号“W25Q64BV/CV”,点击 OK,弹出如下界面: 图 63(15) 点击 OK,左键选中 FLASH(变绿),双击左边的 Erase 擦除原有的程序,弹出如下界面: 公司官网:销售邮箱:公司总机:020-8998-628047/56技术论坛:技术邮箱:技术热线:020-3893-9734图 64(16) 双击左边的 Program,等待片刻即可烧写成功,同时界面也会提示烧写成功。 图 65公司官网:www.t

32、销售邮箱:公司总机:020-8998-628048/56技术论坛:技术邮箱:技术热线:020-3893-9734图 66(17) 开发板重新上电,发现 LED 会闪烁。 公司官网:销售邮箱:公司总机:020-8998-628049/56技术论坛:技术邮箱:技术热线:020-3893-97345 芯片型号的转换方法创龙提供 LX16 和 LX45 两

33、种 FPGA 芯片型号,默认使用的是 LX16 的芯片例程,如需使用其他芯片型号的 FPGA 工程,可通过以下方法进行转换。以 LX16 转换成 LX45 为例: (1) 打开 LED 工程的 led_test.xise 文件。 图 67(2) 右键点击工程文件,选择Design Properties。 图 68(3) 确认各项参数是否正确,注意 Device 选择XC6SLX45。 公司官网:销售邮箱:公司总机:020-8998-628050/56技术论坛:技术邮箱:技术热线:020-3893-9734图 69(4) 双击Configure Target Device。 公司官网:销售邮箱:公司总机:020-8998-628051/56技术论坛:技术邮箱:技术热线:020-3893-9734图 70(5) 出现 warning 窗口,点击 OK 即可。 图

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论