Xilinx(AMD) vivado对FPGA网表文件进行功能仿真的方法

1 概述

       在FPGA开发中很多商用IP核出于知识产权保护的目的,不提供源代码,而是提供综合后的FPGA网表。由于没有源代码,也无法对网表文件直接进行仿真的操作来验证功能,此时需要独立的仿真模型文件。

       本文介绍在Xilinx(AMD) vivado软件下对FPGA代码综合生成网表、网表的仿真模型,以及使用仿真模型对网表进行仿真的方法。

2 FPGA网表

        在vivado软件下有edf和dcp两种格式的网表文件。

2.1 综合设置

        网表生成前的综合设置,需要添加-mode out_of_context选项。在综合时vivado软件将不给顶层模块的input和output插入IO buffer。

       其余选项可以根据具体需求来选择。通常也有人会将代码的模块层次去除,在综合后的网表里就看不到模块的层次结构。

        设置完成后点击综合即可。

2.2 生成网表文件

       综合完成后,dcp格式的网表文件可以直接在工程目录下.runs\synth_1路径下找到与顶层模块同名的.dcp后缀的文件。

       生成edf格式的网表则需要进行额外几步操作。

1、打开综合结果

2、指定edf存放路径

       在Tcl Console输入例如:

cd E:/XXX/YYY/ZZZ/

3、生成edf网表端口描述文件

       在Tcl Console输入:

       vivado 2017.4及以前

write_verilog -mode port <design_name>.v

       vivado 2018.1及以后

write_verilog -mode synth_stub <design_name>.v

4、生成edf网表文件

       在Tcl Console输入:

       模块不包含Xilinx的IP

write_edif <design_name>.edf

       模块包含Xilinx的IP

write_edif -security_mode all <design_name>.edf

2.3 生成仿真模型

       1、指定文件存放路径

       在Tcl Console输入例如:

cd E:/XXX/YYY/ZZZ/

       2、生成仿真模型

       在Tcl Console输入:

write_verilog -force -mode funcsim <design_name>_sim_model.v

 3 仿真模型使用

       将生成的仿真模型<design_name>_sim_model.v添加到工程仿真文件中,为了防止与源文件冲突,设置其仅用于仿真。

       仿真模型可以用于综合前的行为仿真和综合后的功能仿真。

       可以直接使用仿真源文件的test bench对仿真模型进行仿真,无需做修改。仿真模型的仿真速度会比源文件的仿真速度慢很多。

  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
VivadoXilinx公司推出的集成电路设计软件,支持Verilog和VHDL等HDL语言的设计,其主要功能包括逻辑综合、仿真、布局布线等。其中,网表文件和DCP文件Vivado中常见的封装文件网表文件是一种基于门级网表描述的电路设计文件,可用于设计模拟和综合等过程。在Vivado中,当我们进行综合和仿真时,会生成网表文件作为中间产物,以供后续使用。需要注意的是,网表文件只包含特定设计阶段的元素,而不包含具体的FPGA芯片信息。 而DCP文件则是对网表文件进行封装后的设计文件,包含了完整的FPGA芯片信息和约束等元素。它相当于是一个FPGA芯片的镜像,可以直接进行实现和下载。DCP文件包含的信息较为完整,能够支持绝大部分功能的设计和实现。同时,在设计后期,我们也可以将DCP文件作为IP核加入到其他设计中进行使用。 在Vivado中,网表文件和DCP文件的生成和使用十分简单。在设计过程中,我们可以通过勾选“generate output products”选项,自动生成网表文件和DCP文件,并选择需要的格式和信息。对于使用网表文件进行仿真或综合等操作,我们只需要在相应的选项卡中选择该文件进行指定即可。而对于DCP文件的使用,我们则可以直接将其导入到其他设计中或进行下载。 综上所述,Vivado网表文件和DCP文件是电路设计过程中常见的封装文件。在进行设计时,我们可以根据需要生成相应的文件,并进行使用。其中,DCP文件包含的信息较为完整,可以直接进行FPGA芯片的实现和下载,同时也支持IP核的使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MmikerR

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值