• PLL的modelsim仿真


    看了好久的modelsim学习资料,写了一个简单的PLL仿真实验,该实验是仿真DE2板子上50MHz时钟输入,经PLL之后输出100MHz的时钟。

    同时用.do文件来代替烦躁的鼠标操作。

    首先在Quartus里面例化一个PLL模块,输入为clk,50MHz,输出为clk_100。

    打开pll.v文件,

    // ============================================================
    // File Name: pll.v
    // Megafunction Name(s):
    // 			altpll
    //
    // Simulation Library Files(s):
    // 			altera_mf
    // ============================================================
    

     这个头文件告诉我们,pll需要用到一个库文件名为:altera_mf。

    在quartus的安装目录下的eda/sim_lib文件夹下面找到这个文件。

    下面就开始编写仿真文件盒.do文件:

    建立个工程文件夹,取名为pll,在里面建立两个文件夹,src和modelsim,src存放源文件和仿真文件,modelsim存放.do文件。

    src中共有四个文件:

    pll_module:

     1 //`timescale 1 ps / 1 ps
    2 module pll_module(
    3 clk,
    4 clk_100m
    5 );
    6
    7 input clk;
    8 output clk_100m;
    9
    10 pll pll_u1(
    11 .inclk0 (clk),
    12 .c0 (clk_100m)
    13 );
    14
    15 endmodule

    pll_module_tb:

     1 `timescale 1 ps / 1 ps
    2 module pll_module_tb;
    3
    4 reg clk;
    5 wire clk_100m;
    6
    7 pll_module u1(
    8 .clk (clk),
    9 .clk_100m (clk_100m)
    10 );
    11
    12 initial
    13 begin
    14 clk = 0;
    15 end
    16
    17 always #10000 clk = ~clk;
    18
    19
    20 endmodule

    然后在modelsim文件夹中假如pll.do文件。

    pll.do:

     1 #Creat a work lib
    2 vlib work
    3
    4 #Map the work lib to current lib
    5 vmap work work
    6
    7 #Compile the source files
    8 vlog D:/test/pll/src/altera_mf.v
    9 vlog D:/test/pll/src/pll.v
    10 vlog D:/test/pll/src/pll_module.v
    11 vlog D:/test/pll/src/pll_module_tb.v
    12
    13 #Start simulation
    14 vsim -novopt work.pll_module_tb
    15
    16 #add wave
    17 add wave -hex /*
    18
    19 run 500000000


    该文件包括4个部分:

    1-2行位创建一个工作库为work,注意#为注释。

    4-5行位把刚建立的工作库映射到modelsim中work工作库中。

    8-11行为编译上述的4个源文件。

    14行为仿真work库中的pll_modelsim_tb文件,novopt为禁止优化的意思。

    17行为添加波形,hex为16进制表示,/*表示为所有的波形。这里也可以添加自己想要看到的波形。

    19行为开始仿真。

    然后在modelsim的命令行输入:do pll.do  命令就开始仿真的,省去了鼠标操作的过程。

    仿真结果:

      

  • 相关阅读:
    bootstrap以及考试复习
    HTML复习
    驼峰命名法和模态对话框
    dom和bom
    dom习题复习和讲解
    DOM
    属性扩展
    sql防注入式攻击
    自动生成编号
    删除,修改,添加
  • 原文地址:https://www.cnblogs.com/tony1224/p/2371530.html
Copyright © 2020-2023  润新知