差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
quartus_prime的使用 [2017/05/31 10:46]
group002
quartus_prime的使用 [2017/05/31 15:22] (当前版本)
group002
行 49: 行 49:
 module LED_shining module LED_shining
 ( (
-input clk_in, ​ //clk_in ​12mhz +input clk_in, ​           //时钟输入=12M 
-input rst_n_in, ​ //rst_n_in, active low +input rst_n_in, ​         //复位输入,低电平有效 
-output led1,  //led1 output +output led1,             ​//输出LED1 
-output led2  //led2 output+output led2              //输出LED2
 ); );
  
-parameter CLK_DIV_PERIOD = 12_000_000; ​+parameter CLK_DIV_PERIOD = 12_000_000; ​    //​时钟周期参数=12M
  
 reg clk_div=0; reg clk_div=0;
  
-//wire led1,led2; 
 assign led1 = clk_div; assign led1 = clk_div;
 assign led2 = ~clk_div; assign led2 = ~clk_div;
  
-//clk_div = clk_in/​CLK_DIV_PERIOD 
 reg[24:0] cnt=0; reg[24:0] cnt=0;
 always@(posedge clk_in or negedge rst_n_in) begin always@(posedge clk_in or negedge rst_n_in) begin
行 110: 行 108:
 (3)FPGA加载完成,界面中Progress状态显示100%(Successful)。观察开发板现象。 (3)FPGA加载完成,界面中Progress状态显示100%(Successful)。观察开发板现象。
 {{ :​qu34.png?​700 |}} {{ :​qu34.png?​700 |}}
 +=====2. 仿真工具ModelSIM=====
 +(1)首先提前准备测试文件(Textbench):LED_shining_tb.v,测试文件源码如下:
 +<code verilog>
  
 +// ********************************************************************
 +// >>>>>>>>>>>>>>>>>>>>>>>>>​ COPYRIGHT NOTICE <<<<<<<<<<<<<<<<<<<<<<<<<​
 +// ********************************************************************
 +// File name    : LED_shining_tb.v
 +// Module name  : LED_shining_tb
 +// Author ​      : STEP
 +// Description ​ : LED_shining的测试文件
 +// Web          : www.stepfpga.com
 +// 
 +// --------------------------------------------------------------------
 +// Code Revision History : 
 +// --------------------------------------------------------------------
 +// Version: |Mod. Date:   ​|Changes Made:
 +// V1.0     ​|2017/​03/​02 ​  ​|Initial ver
 +// --------------------------------------------------------------------
 +// Module Function:​LED_shining的测试文件
 +`timescale 1ns / 100ps
 +module LED_shining_tb;​
 +
 +parameter CLK_PERIOD = 40; 
 +
 +reg sys_clk;
 +initial
 +    sys_clk = 1'b0;
 +always
 +    sys_clk = #​(CLK_PERIOD/​2) ~sys_clk;
 +
 +reg sys_rst_n; ​ //active low
 +initial ​
 +    begin
 +        sys_rst_n = 1'b0;
 +        #200;
 +        sys_rst_n = 1'b1;
 +    end
 +
 +wire led1,led2;
 +LED_shining #
 +(
 +.CLK_DIV_PERIOD(4'​d12)
 +)
 +LED_shining_uut
 +(
 +.clk_in(sys_clk), ​ //clk_in = 12mhz
 +.rst_n_in(sys_rst_n), ​ //rst_n_in, active low
 +.led1(led1), ​ //led1 output
 +.led2(led2) ​ //led2 output
 +);
 +    ​
 +endmodule
 +
 +</​code>​
 +\\
 +(2)选择菜单栏Assignments→Settings 或 工具栏中Settings按钮,进入设置界面。
 +{{ :​qu35.png?​700 |}}
 +(3)选择菜单栏Simulation选项,单选Compile test bench,点击Test Benches,在弹出的对话框中点击New,填写Test bench name,按照目录添加测试文件,如下图标识顺序,最后点击OK回到设计界面。
 +{{ :​qu36.png?​700 |}}
 +(4)选择菜单栏Tools→Run Simulation Tool→RTL Simulation选项 或 工具栏中RTL Simulation按钮,Quartus软件会自动启动Modelsim软件。
 +{{ :​qu37.png?​700 |}}
 +(5)Modelsim软件启动后自动完成代码编译,界面如下图。
 +{{ :​qu38.png?​700 |}}
 +(6)选择需要观察波形的信号,点击右键,在弹出的右键菜单中选择Add Wave,这样就将对应信号添加至Wave窗口。
 +{{ :​qu39.png?​700 |}}
 +(7)弹出的Wave窗口如下,选择工具栏中Restart按钮,在弹出的Restart窗口点击OK,复位仿真Wave窗口。
 +{{ :​qu40.png?​700 |}}
 +(8)修改工具栏中仿真时间,点击工具栏中Run按钮,进行仿真,仿真波形如下,仿真完成。
 +{{ :​qu41.png?​700 |}}
 +==== 3.STEP-MAX10入门教程====
 +到这里我们了解了用Diamond软件进行开发的完整流程。接下来我们开始[[STEP-MAX10入门教程]]一步一步进入可编程逻辑设计。