作者:MiS603开发团队
日期:20150911
公司:南京米联电子科技有限公司
论坛:www.osrc.cn
EAT博客:http://blog.chinaaet.com/whilebreak
博客园:http://www.cnblogs.com/milinker/
1.4 建立工程及其仿真-Led
在本节,我们正式建立ISE工程,并学习Modelsim的仿真,这也是做工程的一个基本步骤,在之后的章节会有介绍。
1.4.1 ISE工程建立
Step1:开始à所有程序àXilinx Design ToolsàISE Design Suite 14.7àISE Design ToolsàProject Navigator,打开ISE软件,或者从桌面快捷方式打开。点击New Project建立工程,将此工程命名为led,存放在E:\Xilinx_Prj\demo_v\led文件夹下,点击Next。英文比较好的哥们可以点击More Info看一下关键建立工程的英文说明。
Step2:精灵3是Sparten6系列FPGA,按照下图红框内选择信息。其中Synthesis Tool选择XST,这是ISE自带的综合器,Simulator选择Modelsim-SE Mixed,支持Verilog和VHDL语言仿真,如下图所示,点击Next。
Step3:接下来这个界面是工程信息的概述,可以看看哦,点击Finish。
Step4:选择ProjectàNew Source..,出现下面界面,选择Verilog Module,工程名称为led_top,点击Next。
Step5:接下来出现下图界面,在红色框内输入信息,点击Next。
Step6:这个界面是对led_top的输入输出信号总结,点击Finish。
Step7:在led_top.m文件中输入以下内容。建议自己写一遍,直接复制可能有错误。写完后如下图所示。
1. `timescale 1ns / 1ps
2. /*
3. * File : led_top.m
4. * Description : This is led test file.
5. * Author : sanliuyaoling.
6. * Copyright :
7. *
8. * History
9. ----------------------------
10. * Rev : 0.00
11. * Data : 06/08/2015
12. *
13. * create.
14. ----------------------------
15. */
16. module led_top(
17. input sys_clk, //system clock 50MHz
18. input sys_rst_n,//global system reset : active low
19. output led //led output signal
20. );
21.
22. //download hardware use
23. //parameter DLY_CNT = 25‘d25000000;
24. //parameter HALF_DLY_CNT = 25‘d12500000;
25.
26. //modelsim use
27. parameter DLY_CNT = 25‘d20;
28. parameter HALF_DLY_CNT = 25‘d10;
29.
30. reg r_led;
31. reg [24:0]count;
32.
33. //counter control
34. [email protected](posedge sys_clk or negedge sys_rst_n)
35. begin
36. if(!sys_rst_n)
37. begin
38. count <= 25‘d0;
39. end
40. else if(count == DLY_CNT)
41. begin
42. count <= 25‘d0;
43. end
44. else
45. begin
46. count <= count+25‘d1;
47. end
48. end
49.
50. //led output register control
51. [email protected](posedge sys_clk or negedge sys_rst_n)
52. begin
53. if(!sys_rst_n)
54. begin
55. r_led <= 1‘b0;
56. end
57. else if(count < HALF_DLY_CNT)
58. begin
59. r_led <= 1‘b1;
60. end
61. else
62. begin
63. r_led <= 1‘b0;
64. end
65. end
66. assign led = r_led;
67. endmodule
1.4.2 Modelsim仿真
在进行Modelsim仿真之前我们要书写一个激励文件,这个文件叫Test Bench。接下来我们写这个文件。
Step1:选择ProjectàNew Source..,出现下面界面,选择Verilog Test Fixture,文件名称为tb_led,点击Next。
Step2:之后出现下面界面,点击Next。
Step3:之后出现下面这个总结的界面,点击Finish。
Step4:书写Test Bench,只需要在tb_led.v中添加几行语句,如下图所示,添加的内容是4里面的内容。然后将界面切换到1,双击Simulate Behavioral Model。
Step5:之后ISE调用Modelsim仿真,点击1,出先2的波形,仿真成功了。哈哈^_^。