因调试需要,进行后仿真,ISE生成的sim文件和sdf文件

`timescale  ns/ ps

module lut_dly (
clkout, fpga_clk, config_in
);
output clkout;
input fpga_clk;
input [ : ] config_in;
wire clk_in;
wire dly1;
wire config_in_4_IBUF_49;
wire config_in_5_IBUF_50;
wire dly2_0;
wire dly3;
wire config_in_2_IBUF_53;
wire config_in_3_IBUF_54;
wire dly4_0;
wire dly5;
wire config_in_0_IBUF_57;
wire config_in_1_IBUF_58;
wire dly2;
wire dly1_pack_1;
wire dly4;
wire dly3_pack_1;
wire clkout_OBUF_129;
wire dly5_pack_1;
wire \config_in<>/INBUF ;
wire \config_in<>/INBUF ;
wire \config_in<>/INBUF ;
wire \config_in<>/INBUF ;
wire \config_in<>/INBUF ;
wire \config_in<>/INBUF ;
wire \clkout/O ;
wire \fpga_clk/INBUF ;
wire VCC;
initial $sdf_annotate("lut_dly_timesim.sdf");
X_BUF #(
.LOC ( "SLICE_X88Y0" ))
\dly2/XUSED (
.I(dly2),
.O(dly2_0)
);
X_BUF #(
.LOC ( "SLICE_X88Y0" ))
\dly2/YUSED (
.I(dly1_pack_1),
.O(dly1)
);
X_LUT4 #(
.INIT ( 'h8888 ),
.LOC ( "SLICE_X88Y0" ))
u_lut6 (
.ADR0(clk_in),
.ADR1(config_in_5_IBUF_50),
.ADR2(VCC),
.ADR3(VCC),
.O(dly1_pack_1)
);
X_BUF #(
.LOC ( "SLICE_X88Y1" ))
\dly4/XUSED (
.I(dly4),
.O(dly4_0)
);
X_BUF #(
.LOC ( "SLICE_X88Y1" ))
\dly4/YUSED (
.I(dly3_pack_1),
.O(dly3)
);
X_LUT4 #(
.INIT ( 'h3C0C ),
.LOC ( "SLICE_X88Y1" ))
u_lut4 (
.ADR0(VCC),
.ADR1(dly2_0),
.ADR2(config_in_3_IBUF_54),
.ADR3(clk_in),
.O(dly3_pack_1)
);
X_BUF #(
.LOC ( "SLICE_X89Y0" ))
\clkout_OBUF/YUSED (
.I(dly5_pack_1),
.O(dly5)
);
X_LUT4 #(
.INIT ( 'h3838 ),
.LOC ( "SLICE_X89Y0" ))
u_lut2 (
.ADR0(clk_in),
.ADR1(config_in_1_IBUF_58),
.ADR2(dly4_0),
.ADR3(VCC),
.O(dly5_pack_1)
);
X_IPAD #(
.LOC ( "PAD685" ))
\config_in<>/PAD (
.PAD(config_in[])
);
X_BUF #(
.LOC ( "PAD685" ))
config_in_0_IBUF (
.I(config_in[]),
.O(\config_in<>/INBUF )
);
X_BUF #(
.LOC ( "PAD685" ))
\config_in<>/IFF/IMUX (
.I(\config_in<>/INBUF ),
.O(config_in_0_IBUF_57)
);
X_IPAD #(
.LOC ( "PAD686" ))
\config_in<>/PAD (
.PAD(config_in[])
);
X_BUF #(
.LOC ( "PAD686" ))
config_in_1_IBUF (
.I(config_in[]),
.O(\config_in<>/INBUF )
);
X_BUF #(
.LOC ( "PAD686" ))
\config_in<>/IFF/IMUX (
.I(\config_in<>/INBUF ),
.O(config_in_1_IBUF_58)
);
X_IPAD #(
.LOC ( "PAD683" ))
\config_in<>/PAD (
.PAD(config_in[])
);
X_BUF #(
.LOC ( "PAD683" ))
config_in_2_IBUF (
.I(config_in[]),
.O(\config_in<>/INBUF )
);
X_BUF #(
.LOC ( "PAD683" ))
\config_in<>/IFF/IMUX (
.I(\config_in<>/INBUF ),
.O(config_in_2_IBUF_53)
);
X_IPAD #(
.LOC ( "PAD681" ))
\config_in<>/PAD (
.PAD(config_in[])
);
X_BUF #(
.LOC ( "PAD681" ))
config_in_3_IBUF (
.I(config_in[]),
.O(\config_in<>/INBUF )
);
X_BUF #(
.LOC ( "PAD681" ))
\config_in<>/IFF/IMUX (
.I(\config_in<>/INBUF ),
.O(config_in_3_IBUF_54)
);
X_IPAD #(
.LOC ( "PAD688" ))
\config_in<>/PAD (
.PAD(config_in[])
);
X_BUF #(
.LOC ( "PAD688" ))
config_in_4_IBUF (
.I(config_in[]),
.O(\config_in<>/INBUF )
);
X_BUF #(
.LOC ( "PAD688" ))
\config_in<>/IFF/IMUX (
.I(\config_in<>/INBUF ),
.O(config_in_4_IBUF_49)
);
X_IPAD #(
.LOC ( "PAD682" ))
\config_in<>/PAD (
.PAD(config_in[])
);
X_BUF #(
.LOC ( "PAD682" ))
config_in_5_IBUF (
.I(config_in[]),
.O(\config_in<>/INBUF )
);
X_BUF #(
.LOC ( "PAD682" ))
\config_in<>/IFF/IMUX (
.I(\config_in<>/INBUF ),
.O(config_in_5_IBUF_50)
);
X_OPAD #(
.LOC ( "PAD680" ))
\clkout/PAD (
.PAD(clkout)
);
X_OBUF #(
.LOC ( "PAD680" ))
clkout_OBUF (
.I(\clkout/O ),
.O(clkout)
);
X_IPAD #(
.LOC ( "PAD684" ))
\fpga_clk/PAD (
.PAD(fpga_clk)
);
X_BUF #(
.LOC ( "PAD684" ))
u_ibufg (
.I(fpga_clk),
.O(\fpga_clk/INBUF )
);
X_BUF #(
.LOC ( "PAD684" ))
\fpga_clk/IFF/IMUX (
.I(\fpga_clk/INBUF ),
.O(clk_in)
);
X_LUT4 #(
.INIT ( 'h0FA0 ),
.LOC ( "SLICE_X88Y0" ))
u_lut5 (
.ADR0(clk_in),
.ADR1(VCC),
.ADR2(config_in_4_IBUF_49),
.ADR3(dly1),
.O(dly2)
);
X_LUT4 #(
.INIT ( 'h3C30 ),
.LOC ( "SLICE_X88Y1" ))
u_lut3 (
.ADR0(VCC),
.ADR1(config_in_2_IBUF_53),
.ADR2(dly3),
.ADR3(clk_in),
.O(dly4)
);
X_LUT4 #(
.INIT ( 'h0AF0 ),
.LOC ( "SLICE_X89Y0" ))
u_lut1 (
.ADR0(clk_in),
.ADR1(VCC),
.ADR2(dly5),
.ADR3(config_in_0_IBUF_57),
.O(clkout_OBUF_129)
);
X_BUF #(
.LOC ( "PAD680" ))
\clkout/OUTPUT/OFF/OMUX (
.I(clkout_OBUF_129),
.O(\clkout/O )
);
X_ONE NlwBlock_lut_dly_VCC (
.O(VCC)
);
endmodule `timescale ps / ps module glbl (); parameter ROC_WIDTH = ;
parameter TOC_WIDTH = ; wire GSR;
wire GTS;
wire PRLD; reg GSR_int;
reg GTS_int;
reg PRLD_int; //-------- JTAG Globals --------------
wire JTAG_TDO_GLBL;
wire JTAG_TCK_GLBL;
wire JTAG_TDI_GLBL;
wire JTAG_TMS_GLBL;
wire JTAG_TRST_GLBL; reg JTAG_CAPTURE_GLBL;
reg JTAG_RESET_GLBL;
reg JTAG_SHIFT_GLBL;
reg JTAG_UPDATE_GLBL; reg JTAG_SEL1_GLBL = ;
reg JTAG_SEL2_GLBL = ;
reg JTAG_SEL3_GLBL = ;
reg JTAG_SEL4_GLBL = ; reg JTAG_USER_TDO1_GLBL = 'bz;
reg JTAG_USER_TDO2_GLBL = 'bz;
reg JTAG_USER_TDO3_GLBL = 'bz;
reg JTAG_USER_TDO4_GLBL = 'bz; assign (weak1, weak0) GSR = GSR_int;
assign (weak1, weak0) GTS = GTS_int;
assign (weak1, weak0) PRLD = PRLD_int; initial begin
GSR_int = 'b1;
PRLD_int = 'b1;
#(ROC_WIDTH)
GSR_int = 'b0;
PRLD_int = 'b0;
end initial begin
GTS_int = 'b1;
#(TOC_WIDTH)
GTS_int = 'b0;
end endmodule

SDF文件

(DELAYFILE
(SDFVERSION "3.0")
(DESIGN "lut_dly")
(DATE "Sun Mar 22 15:04:04 2015")
(VENDOR "Xilinx")
(PROGRAM "Xilinx SDF Writer")
(VERSION "K.31")
(DIVIDER /)
(VOLTAGE 1.425)
(TEMPERATURE )
(TIMESCALE ps)
(CELL (CELLTYPE "X_BUF")
(INSTANCE dly2\/XUSED)
(DELAY
(PATHPULSE ())
(ABSOLUTE
(IOPATH I O ( ))
)
)
)
(CELL (CELLTYPE "X_BUF")
(INSTANCE dly2\/YUSED)
(DELAY
(PATHPULSE ())
(ABSOLUTE
(IOPATH I O ( ))
)
)
)
(CELL (CELLTYPE "X_LUT4")
(INSTANCE u_lut6)
(DELAY
(ABSOLUTE
(PORT ADR0 ( ))
(PORT ADR1 ( ))
(IOPATH ADR0 O ( ))
(IOPATH ADR1 O ( ))
(IOPATH ADR2 O ( ))
(IOPATH ADR3 O ( ))
)
)
)
(CELL (CELLTYPE "X_BUF")
(INSTANCE dly4\/XUSED)
(DELAY
(PATHPULSE ())
(ABSOLUTE
(IOPATH I O ( ))
)
)
)
(CELL (CELLTYPE "X_BUF")
(INSTANCE dly4\/YUSED)
(DELAY
(PATHPULSE ())
(ABSOLUTE
(IOPATH I O ( ))
)
)
)
(CELL (CELLTYPE "X_LUT4")
(INSTANCE u_lut4)
(DELAY
(ABSOLUTE
(PORT ADR1 ( ))
(PORT ADR2 ( ))
(PORT ADR3 ( ))
(IOPATH ADR0 O ( ))
(IOPATH ADR1 O ( ))
(IOPATH ADR2 O ( ))
(IOPATH ADR3 O ( ))
)
)
)
(CELL (CELLTYPE "X_BUF")
(INSTANCE clkout_OBUF\/YUSED)
(DELAY
(PATHPULSE ())
(ABSOLUTE
(IOPATH I O ( ))
)
)
)
(CELL (CELLTYPE "X_LUT4")
(INSTANCE u_lut2)
(DELAY
(ABSOLUTE
(PORT ADR0 ( ))
(PORT ADR1 ( ))
(PORT ADR2 ( ))
(IOPATH ADR0 O ( ))
(IOPATH ADR1 O ( ))
(IOPATH ADR2 O ( ))
(IOPATH ADR3 O ( ))
)
)
)
(CELL (CELLTYPE "X_BUF")
(INSTANCE config_in_0_IBUF)
(DELAY
(PATHPULSE ())
(ABSOLUTE
(IOPATH I O ( ))
)
)
)
(CELL (CELLTYPE "X_BUF")
(INSTANCE config_in\<\>\/IFF\/IMUX)
(DELAY
(PATHPULSE ())
(ABSOLUTE
(IOPATH I O ( ))
)
)
)
(CELL (CELLTYPE "X_BUF")
(INSTANCE config_in_1_IBUF)
(DELAY
(PATHPULSE ())
(ABSOLUTE
(IOPATH I O ( ))
)
)
)
(CELL (CELLTYPE "X_BUF")
(INSTANCE config_in\<\>\/IFF\/IMUX)
(DELAY
(PATHPULSE ())
(ABSOLUTE
(IOPATH I O ( ))
)
)
)
(CELL (CELLTYPE "X_BUF")
(INSTANCE config_in_2_IBUF)
(DELAY
(PATHPULSE ())
(ABSOLUTE
(IOPATH I O ( ))
)
)
)
(CELL (CELLTYPE "X_BUF")
(INSTANCE config_in\<\>\/IFF\/IMUX)
(DELAY
(PATHPULSE ())
(ABSOLUTE
(IOPATH I O ( ))
)
)
)
(CELL (CELLTYPE "X_BUF")
(INSTANCE config_in_3_IBUF)
(DELAY
(PATHPULSE ())
(ABSOLUTE
(IOPATH I O ( ))
)
)
)
(CELL (CELLTYPE "X_BUF")
(INSTANCE config_in\<\>\/IFF\/IMUX)
(DELAY
(PATHPULSE ())
(ABSOLUTE
(IOPATH I O ( ))
)
)
)
(CELL (CELLTYPE "X_BUF")
(INSTANCE config_in_4_IBUF)
(DELAY
(PATHPULSE ())
(ABSOLUTE
(IOPATH I O ( ))
)
)
)
(CELL (CELLTYPE "X_BUF")
(INSTANCE config_in\<\>\/IFF\/IMUX)
(DELAY
(PATHPULSE ())
(ABSOLUTE
(IOPATH I O ( ))
)
)
)
(CELL (CELLTYPE "X_BUF")
(INSTANCE config_in_5_IBUF)
(DELAY
(PATHPULSE ())
(ABSOLUTE
(IOPATH I O ( ))
)
)
)
(CELL (CELLTYPE "X_BUF")
(INSTANCE config_in\<\>\/IFF\/IMUX)
(DELAY
(PATHPULSE ())
(ABSOLUTE
(IOPATH I O ( ))
)
)
)
(CELL (CELLTYPE "X_OBUF")
(INSTANCE clkout_OBUF)
(DELAY
(ABSOLUTE
(IOPATH I O ( ))
)
)
)
(CELL (CELLTYPE "X_BUF")
(INSTANCE u_ibufg)
(DELAY
(PATHPULSE ())
(ABSOLUTE
(IOPATH I O ( ))
)
)
)
(CELL (CELLTYPE "X_BUF")
(INSTANCE fpga_clk\/IFF\/IMUX)
(DELAY
(PATHPULSE ())
(ABSOLUTE
(IOPATH I O ( ))
)
)
)
(CELL (CELLTYPE "X_LUT4")
(INSTANCE u_lut5)
(DELAY
(ABSOLUTE
(PORT ADR0 ( ))
(PORT ADR2 ( ))
(PORT ADR3 ( ))
(IOPATH ADR0 O ( ))
(IOPATH ADR1 O ( ))
(IOPATH ADR2 O ( ))
(IOPATH ADR3 O ( ))
)
)
)
(CELL (CELLTYPE "X_LUT4")
(INSTANCE u_lut3)
(DELAY
(ABSOLUTE
(PORT ADR1 ( ))
(PORT ADR2 ( ))
(PORT ADR3 ( ))
(IOPATH ADR0 O ( ))
(IOPATH ADR1 O ( ))
(IOPATH ADR2 O ( ))
(IOPATH ADR3 O ( ))
)
)
)
(CELL (CELLTYPE "X_LUT4")
(INSTANCE u_lut1)
(DELAY
(ABSOLUTE
(PORT ADR0 ( ))
(PORT ADR2 ( ))
(PORT ADR3 ( ))
(IOPATH ADR0 O ( ))
(IOPATH ADR1 O ( ))
(IOPATH ADR2 O ( ))
(IOPATH ADR3 O ( ))
)
)
)
(CELL (CELLTYPE "X_BUF")
(INSTANCE clkout\/OUTPUT\/OFF\/OMUX)
(DELAY
(PATHPULSE ())
(ABSOLUTE
(IOPATH I O ( ))
)
)
)
)

顶层仿真文件

`timescale 1ns / 1ps
module tb_dly;
reg clk_in;
reg [:] sel_in;
wire clk_out;
lut_dly uut(
.fpga_clk (clk_in ),
.config_in (sel_in ),
.clkout(clk_out)
); initial
begin
clk_in =; #
sel_in = 'd32;
#
sel_in = 'd16;
#
sel_in = 'd8;
#
sel_in = 'd4;
#
sel_in = 'd2;
#
sel_in = 'd1; end always #(/) clk_in <= ~clk_in;
endmodule

do文件

vlib work
vlog +acc tb_dly.v vlog +acc lut_dly_timesim.v
vlog +acc C:/Xilinx/ISE/verilog/src/glbl.v
vsim -novopt -t 1ps -L UNISIMS_VER -L UNIMACRO_VER -L UNI9000_VER -L SIMPRIMS_VER -L XILINXCORELIB_VER -L SECUREIP -L AIM_VER -L CPLD_VER -L UNISIM -L UNIMACRO -L SIMPRIM -L XILINXCORELIB -L AIM -L PLS -L CPLD -lib work tb_dly glbl
log -r /*

Modelsim仿真波形如下

[原创]Modelsim后仿真的更多相关文章

  1. ISE联合modelsim功能仿真和综合后仿真1

    1.代码输入 (1).新建一个ISE工程,名字为count4. (2).新建一个verilog文件 (3).选择verilog module 输入file name为count4,单击next默认知道 ...

  2. ISE联合modelsim功能仿真和综合后仿真

    1.代码输入 (1).新建一个ISE工程,名字为count4. (2).新建一个verilog文件 (3).选择verilog module 输入file name为count4,单击next默认知道 ...

  3. modelsim 独立仿真vivado的IP核及仿真脚本

    Modelsim独立仿真vivado的IP 最近一直在做local dimming项目的FPGA硬件实现,算法的其中一步就是直方图统计,即数字图像的某一灰度级的像素数,这个直方图的源码找了半天才搞到, ...

  4. 【转】Quartus II调用modelsim无缝仿真

    Quartus II调用modelsim无缝仿真  ★emouse 思·睿博客文章★ 原创文章转载请注明:http://emouse.cnblogs.com 本篇文章为转载,写的不错,最近在学mode ...

  5. ISE和Modelsim联合仿真(转)

    相信很多人会遇到过这个问题,不知如何让ISE调用Modelsim进行仿真.我也迷糊了不少时间,查查找找,终于弄明白了,所以有了本文,和大家分享一下.我尽量讲得详细点儿,多多上图. 我的环境:Windo ...

  6. 基于脚本的modelsim自动化仿真笔记

    这里记录一下基于脚本的modelsim自动化仿真的一些知识和模板,以后忘记了可以到这里查找.转载请标明出处:http://www.cnblogs.com/IClearner/ . 一.基本介绍 这里介 ...

  7. Modelsim独立仿真Vivado Clocking Wizard IP Core

    工欲善其事,必先利其器.在使用Vivado自带的仿真软件仿真的时候,相对于更优秀的仿真工具Modelsim,效率低了很多,为了更高效的开发,我尝试着用Vivado级联Modelsim仿真,但是级联后还 ...

  8. Viavdo&ISE&Quartus II级联Modelsim级联仿真

    博主一直致力寻找高效的工作方式,所以一直喜欢折腾软件,从刚开始只用软件IDE自带的编辑器,到Notepad++,再到后来的Vim,从用ISE14.7自带的Isim仿真,到发现更好的Modelsim,再 ...

  9. 搭建Modelsim SE仿真环境-使用do文件仿真

    本章我们介绍仿真环境搭建是基于Modelsim SE的.Modelsim有很多版本,比如说Modelsim-Altera,但是笔者还是建议大家使用Modelsim-SE,Modelsim-Altera ...

随机推荐

  1. git常用命令介绍

    一,仓库 1. git init    把当前目录变成git可管理得仓库,也就是初始化仓库 2. git add 文件名            在仓库中添加新文件 3. git commit -m & ...

  2. 小白月赛13 小A与小B (双向BFS)

    链接:https://ac.nowcoder.com/acm/contest/549/G来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言52428 ...

  3. Unity 子弹移动以及碰撞条件

    一.子弹移动 游戏物体移动最主要的是获取一个刚体组件,再对这个刚体组件添加一个向前的力: 具体代码: public class BulletCtrl : MonoBehaviour { ; publi ...

  4. SaltStack配置管理和YAML

    配置管理和YAML 配置管理 所谓的配置管理,也称为状态管理,就是可以通过编写文件,文件的内容为安装什么功能.开启什么服务,执行什么任务等信息,然后通过salt的配置管理,指定minion来执行这些操 ...

  5. openvpn搭建

    以ubuntu系统为例: 1.安装openvpn和easy-rsa,easy-rsa主要用来设置CA(证书颁发机构) $ sudo apt-get update $ sudo apt-get inst ...

  6. Python正则表达式指南(转)

    目录 Python正则表达式指南(转) 0.防走丢 1. 正则表达式基础 1.1. 简单介绍 1.2. 数量词的贪婪模式与非贪婪模式 1.3. 反斜杠的困扰 1.4. 匹配模式 2. re模块 2.1 ...

  7. jQuery第1天

    概念 jQuery 是一个 JavaScript 库,其实就是通过 原生JS 封装了的很多的 方法 和 属性. JS 库特点 JavaScript 库:由第三方开发者基于原生 JS 基础上,封装了很多 ...

  8. JavaScript定义类和实例化示例

    1.类定义: var UseIScrollDataHelper = { myScroll: null, //iScroll对象 scrollId: 'divscroll',//默认scrollid w ...

  9. ajax跨域例子

    例子 https://github.com/ruanyf/react-demos/blob/master/demo12/index.html 此网页代码运行在本地, 是可以访问 github 数据的. ...

  10. XSS绕过<>进行测试

    大家都知道,普遍的防御XSS攻击的方法是在后台对以下字符进行转义:<.>.’.”,但是经过本人的研究发现,在一些特殊场景下,即使对以上字符进行了转义,还是可以执行XSS攻击的. 首先看一个 ...