当前位置:   article > 正文

实验报告-安装Modelsim10.5版本并跑通一个工程!

modelsim10.5

1,安装Modelsim10.5版本

下载地址
'链接:https://pan.baidu.com/s/1KwPlOllNN2c731oSreRoXw
提取码:1ry4
`

安装教程:
网址:https://mp.weixin.qq.com/s/2vQj9sbgGD6Ch97vRAt5Qw

2,安装完后,创建一个工程

参考网址:
1,modelsim详细使用教程(一看就会,点击)

操作步骤如下:
第一步,建立一个liarary

在这里插入图片描述

然后,将library取名:work

在这里插入图片描述

第二步,建立一个project。
在这里插入图片描述
下一步,
在这里插入图片描述

下一步,

在这里插入图片描述

下一步,

在这里插入图片描述

下一步,

在这里插入图片描述
下一步,simulation

在这里插入图片描述

下一步,

,
下一步,

在这里插入图片描述
下一步,

在这里插入图片描述

下一步,显示simulation的结果。
在这里插入图片描述

下一步,停止仿真。

在这里插入图片描述

下一步,停止仿真后,回到:library界面。

在这里插入图片描述

下一步,回到界面重新布局

在这里插入图片描述

3,rtl代码和testbench代码分享:

(1)led.v
`timescale 1ns / 1ps
//
// Company: 
// Engineer: 
// 
// Create Date: 2016/09/28 15:04:30
// Design Name: 
// Module Name: led
// Project Name: 
// Target Devices: 
// Tool Versions: 
// Description: 
// 
// Dependencies: 
// 
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
// 
//


module led(
    input sys_clk,
    input rst_n,
    (* MARK_DEBUG="true" *)output reg [3:0] led
    );
(* MARK_DEBUG="true" *)reg[31:0] timer_cnt;
always@(posedge sys_clk or negedge rst_n)
begin
    if (!rst_n)
    begin
        led <= 4'd0 ;
        timer_cnt <= 32'd0 ;
    end
    else if(timer_cnt >= 32'd49_999_999)
    begin
        led <= ~led;
        timer_cnt <= 32'd0;
    end
    else
    begin
        led <= led;
        timer_cnt <= timer_cnt + 32'd1;
    end
    
    
end

Instantiate ila in source file
//ila ila_inst(
//  .clk(sys_clk),
//  .probe0(timer_cnt),
//  .probe1(led)
//  );

endmodule

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
(2) vtf_led_test.v
`timescale 1ns / 1ps
//
// Module Name: vtf_led_test
//

module vtf_led_test;
// Inputs
reg sys_clk;
reg rst_n ;
// Outputs
wire [3:0] led;

// Instantiate the Unit Under Test (UUT)
led uut (
    .sys_clk(sys_clk),   
    .rst_n(rst_n),
    .led(led)
 );

initial 
begin
// Initialize Inputs
    sys_clk = 0;
    rst_n = 0 ;
    #1000 ;
    rst_n = 1; 
end
//Create clock
always #10 sys_clk = ~ sys_clk;  

endmodule


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/431614
推荐阅读
  

闽ICP备14008679号