0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

SpinalHDL运行VCS+Vivado相关仿真

电子工程师 来源:Spinal FPGA 作者:玉骐 2022-08-10 09:15 次阅读
✎编 者 按

本篇文章来源于微信群中的网友,分享下在SpinalHDL里如何丝滑的运行VCS跑Vivado相关仿真。自此仿真设计一体化不是问题~

》环境依赖
  • SpinalHDL 1.7.1 (如果使用 1.7.0 版本,需要每次在 VCS 运行前导入 synopsys_sim.setup 文件到仿真目录)

  • Xilinx Vivado 2021.2

  • Synopsys vcs-mx_O-2018.09-SP2

  • Synopsys Verdi _O-2018.09-SP2

  • GCC/GXX 4.8.5

  • IDEA 2021

使用 VCS 预编译 Xilinx 官方 IP
  1. 首先将默认的 gcc/g++ 切换到 4.8.5 版本

  2. 打开 vivado,在 Tools → Compile Simulation Libraries,选择仿真器 VCS,其他按需选择。

  3. 选择 预编译库保存路径 以及 VCS 可执行路径。

  4. 由于一开始选择了默认版本gcc/g++,这里直接使用默认执行路径。

  5. 下面是笔者的配置图:

3164e1ee-17de-11ed-ba43-dac502259ad0.png

  1. Click Compile 等待完成…(3 min的样子)

  2. 结束后会有部分编译失败,这是因为 System C 的环境没有配置,但由于该部分组件笔者不会使用到,便忽略了。

  3. 此时,前面选择的预编译库保存路径下会出现 synopsys_sim.setup 配置文件,用于 vcs 启动前自动加载预编译库。

  4. 同时可以将 ${vivado_install_path}/${verison}/data/verilog/src/glbl.v 复制到预编译库的文件夹下,方便后续使用

31b6d512-17de-11ed-ba43-dac502259ad0.png

配置 Idea
  1. 使用 IDEA 配置 SpinalHDL 运行环境。

    GitHub - SpinalHDL/SpinalTemplateSbt: A basic SpinalHDL project

  2. 以 Template 工程为例,配置 SpinalHDL 调用 VCS 仿真。

31cb4e8e-17de-11ed-ba43-dac502259ad0.png

  1. 在命令行中用 verdi 打开波形,正常打开则 VCS 仿真环境已正常运行。

3217db1e-17de-11ed-ba43-dac502259ad0.jpg

4.以使用 xilinx PLL 为例,为了减少使用 vivado 编译 ip 后导入(每次不同的设置都需要重新配置),笔者直接使用 XPM 模板进行例化。(可以在 xilinx xpm 手册或者是 Tools → Language Templates 中找到)。需要使用 BlackBox 对 XPM 模板进行封装

5.封装后尝试一下例化该 PLL 做一个 二分频。

3247f132-17de-11ed-ba43-dac502259ad0.png

6. 在该工程根目录下,创建名为 synopsys_sim.stup 一个指向预编译库的文件。里面填写预编译库对应生成的 setup 文件的目录。下面是笔者的 synopsys_sim.setup 文件。

3275d39a-17de-11ed-ba43-dac502259ad0.png

7. SpinalHDL 调用 VCS 仿真 xilinx ip 前环境,需要将文件复制到当前仿真目录(1.7.1不需要手动拷贝,1.7.0需要手动,注意的是SpinalHDL每次仿真都会清空仿目录)。需要注意是:仿真 xilinx ip 需要加入 xilinx 的全局复位控制(上次没加,仿真 DSP 被坑了好久…)

32a371d8-17de-11ed-ba43-dac502259ad0.png

  1. 此时配置完成了,试一下仿真吧~

32cb2a84-17de-11ed-ba43-dac502259ad0.jpg

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Xilinx
    +关注

    关注

    70

    文章

    2121

    浏览量

    119373
  • 仿真
    +关注

    关注

    50

    文章

    3872

    浏览量

    132155
  • VCS
    VCS
    +关注

    关注

    0

    文章

    78

    浏览量

    9495
  • Vivado
    +关注

    关注

    18

    文章

    790

    浏览量

    65093

原文标题:史上最全的SpinalHDL运行VCS+Vivado教程

文章出处:【微信号:Spinal FPGA,微信公众号:Spinal FPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    使用Vivado Simulator运行功能和时序仿真案例

    Vivado Simulator基本操作 Vivado Simulator是一款硬件描述语言事件驱动的仿真器,支持功能仿真和时序仿真,支持V
    的头像 发表于 12-31 10:02 7229次阅读

    VCS仿真指南(第二版).pdf

    包括两种调试界面:Text-based:Command Line Interface(CLI) 和 GUI-based(VirSim);仿真主要的两个步骤是编译,运行: VCS仿真指南
    发表于 12-15 10:27

    SpinalHDL是如何让仿真跑起来的

    SpinalHDL是如何让仿真跑起来的SpinalHDL的开发环境下,我们的逻辑设计和仿真代码均是基于SpinalHDL(Scala)来进
    发表于 07-25 15:09

    SpinalHDL设计错误总结相关资料分享

    1、SpinalHDL设计错误  SpinalHDL编译器会做很多设计检查,来确保生成的VHDL/Verilog是可仿真的可综合的。基本上,SpinalHDL不会生成破损的VHDL/V
    发表于 10-24 15:37

    基于linux系统实现的vivado调用VCS仿真教程

    在linux系统上实现vivado调用VCS仿真教程 作用:vivado调用VCS仿真可以加快工
    的头像 发表于 07-05 03:30 1.1w次阅读
    基于linux系统实现的<b class='flag-5'>vivado</b>调用<b class='flag-5'>VCS</b><b class='flag-5'>仿真</b>教程

    如何使用Synopsys VCS仿真器进行ZYNQ BFM IPI设计仿真

    了解如何使用Vivado中的Synopsys VCS仿真器使用ZYNQ BFM IPI设计运行仿真。 我们将演示如何编译
    的头像 发表于 11-29 06:59 4599次阅读

    如何使用Vivado中的Synopsys VCS仿真器进行仿真

    了解如何使用Vivado中的Synopsys VCS仿真器使用MicrBlaze IPI设计运行仿真。 我们将演示如何编译
    的头像 发表于 11-29 06:57 6901次阅读

    VCS独立仿真Vivado IP核的一些方法总结

    前年,发表了一篇文章《VCS独立仿真Vivado IP核的一些方法总结》(链接在参考资料1),里面简单讲述了使用VCS仿真
    的头像 发表于 03-22 10:31 3509次阅读

    如何在批模式下运行 Vivado 仿真器?

    在 Windows 下,我喜欢在批处理模式下运行 Vivado 仿真器。 我创建了仿真批文件 (.bat) ,包含以下命令。当我运行批文件,
    发表于 08-01 09:43 773次阅读

    使用VCS仿真Vivado IP核时遇到的问题及解决方案

    前年,发表了一篇文章《VCS独立仿真Vivado IP核的一些方法总结》(链接在参考资料1),里面简单讲述了使用VCS仿真
    的头像 发表于 08-29 14:41 1614次阅读

    VCS独立仿真Vivado IP核的一些方法总结

    最近,需要使用VCS仿真一个高速并串转换的Demo,其中需要用到Vivado的SelectIO IP核以及IDELAYCTRL,IDELAY2原语。而此前我只使用VCS
    的头像 发表于 06-06 11:09 1729次阅读
    <b class='flag-5'>VCS</b>独立<b class='flag-5'>仿真</b><b class='flag-5'>Vivado</b> IP核的一些方法总结

    记录VCS仿真的IP核只有VHDL文件的解决方法

    使用VCS仿真Vivado里面的IP核时,如果Vivado的IP核的仿真文件只有VHDL时,仿真
    的头像 发表于 06-06 11:15 1438次阅读
    记录<b class='flag-5'>VCS</b><b class='flag-5'>仿真</b>的IP核只有VHDL文件的解决方法

    VCS独立仿真Vivado IP核的问题补充

    仿真Vivado IP核时分两种情况,分为未使用SECURE IP核和使用了SECURE IP核。
    的头像 发表于 06-06 14:45 1274次阅读
    <b class='flag-5'>VCS</b>独立<b class='flag-5'>仿真</b><b class='flag-5'>Vivado</b> IP核的问题补充

    VCS独立仿真Vivado IP核的问题补充

    仿真Vivado IP核时分两种情况,分为未使用SECURE IP核和使用了SECURE IP核。
    的头像 发表于 06-20 14:23 660次阅读
    <b class='flag-5'>VCS</b>独立<b class='flag-5'>仿真</b><b class='flag-5'>Vivado</b> IP核的问题补充

    VCS 仿真option 解析

    VCS仿真选项分编译(compile-time)选项和运行(run-time)选项。编译选项用于RTL/TB的编译,一遍是编译了就定了,不能在仿真中更改其特性,例如define等等。
    的头像 发表于 01-06 10:19 530次阅读