【软件分享】脱离Vivado建立单独仿真环境软件

原创 网络交换FPGA 2023-09-13 10:58
在进行FPGA项目开发时,经常需要使用第三方仿真工具进行仿真,如果每次都需要从Vivado调用第三方仿真工具则会比较麻烦。本公众号之前多次分享脱离vivado建立单独仿真环境的文章:摆脱Vivado单独建仿真环境的终极解决方案,【源码】手把手教你用Python实现Vivado和ModelSim仿真自动化,用Modelsim独立仿真带Vivado IP核的仿真工程,如何用ModelSim 独立仿真ISE的仿真工程。还介绍过一些FPGA项目开发时如何搭建仿真环境的文章:【干货】推荐一款FPGA仿真调试鸟枪换炮的工具!,[干货]用ModelSim搭建可看代码覆盖率的千兆以太网控制器的仿真环境!Modelsim中使用TCL脚本编写do文件实现自动化仿真。最近,我们把之前搭建脱离vivado建仿真环境的方法进行了总结,编写出一款可以实用的软件,本文就把该软件的使用方法分享给大家,希望能够给大家带来帮助。软件的开发作者是石廷澳同学。文末有软件下载链接。

开发目的

FPGA项目开发的过程中,需要完成设计代码开发、验证环境搭建、仿真分析、板级验证等操作,在这个过程中,许多操作虽然必不可少但是步骤是重复的。辅助软件通过预先定义的处理模式,对一些重复性复杂操作通过Python辅助软件使操作简化以提高项目开发效率。独立仿真可以不依赖Vivado,简化仿真步骤,但建立独立仿真往往需要复杂繁琐的步骤,所以简化建立独立仿真的步骤很有必要。
重要的是,有了脱离Vivado建的第三方仿真工具单独的环境,为FPGA工程后续ASIC化提前搭建好仿真环境,只把用到的库和相关文件从Vivado库里抽取出来,同时,每次仿真时不用启动非常占资源的Vivado软件,直接运行仿真脚本即可。同时,软件生成的仿真环境后也可以手动进行优化调整,按照用户自己熟悉的仿真习惯进行定制化修改。

功能描述

该软件用于提升FPGA仿真效率,节省仿真时间和步骤。本软件可以建立独立仿真,生成Questasim、modesim或VCS环境下的独立仿真,可视化界面,更加方便用户操作。

RTL设计完后会进行仿真Vivado内自带仿真器,或者可以通过Vivado启动第三方仿真工具联合仿真。但是在实际项目开发过程中,当我们修改代码后,需要关闭仿真软件并重启仿真,之前加载的波形信号也需要重新加载。因而很多时候,我们希望脱离Vivado,利用Modelsim或者VCS等第三方仿真工具,提高仿真效率;在这个过程中,通过提取工程中的代码文件和IP核信息文件,缩减工程所占用的内存空间,方便项目开发人员同步及备份。该软件建立独立仿真首先会提取源仿真工具、目的仿真工具,了解要建立哪种环境下的独立仿真。还要提取自动化仿真文件名和创建独立仿真的路径,用于建立独立仿真文件夹,该文件夹有rtl和sim两个文件夹,仿真用到的文件都会放到该文件夹里面。然后会提取tb的module名字和vivado生成do文件路径,该软件会根据路径和tb的module名字找到Vivado生成do文件,提取do文件里面的信息,把对应文件放到自动化仿真文件夹里面。提取目的仿真工具的win64和.setup文件的路径,用于建立批处理文件和makefile文件。提取完信息后,点击“开始生成按钮”即完成建立自动化仿真操作。

该软件在可执行python的环境下均可以运行,在实际项目测试中,能够自动生成自动化仿真工程,减少仿真对vivado的依赖,减少了大量的重复性操作。

为了方便项目开发人员对辅助软件的使用,辅助软件需要具有良好的可视化操作界面,在完成一些基本参数的配置后,可一键式完成复杂操作。GUI界面如图1所示:

使用说明

1 安装和初始化

本软件免安装,通过点击FPGA_simulate_tool.exe文件即可执行,如图2所示:

2 输入

根据GUI界面的提示输入需要执行的命令。

3 输出

运行软件后,首先会根据选择生成不同的输出文件,选择“自动化仿真生成工具”,输入提示信息后,点击生成“开始生成”,会生成自动化仿真工程,如图3所示,其中所有rtl文件存放在rtl文件夹下,include文件存放在inlcud文件夹下,sim文件存放do文件和批处理文件。


操作步骤

本软件在Window 10的python可执行环境下示例操作。自动化仿真生成工具使用步骤如下:

步骤1:首先选择源仿真工具和目的仿真工具。源仿真工具可供选择的有:ModeSim、Questasim,目的仿真工具可供选择的有ModeSim、Questasim、VCS,如图7所示。

步骤2:输入tb module名字、自动化仿真文件名字,会产生该名字的文件夹,自动化仿真工程在该文件夹里面。

步骤3:选择“创建独立仿真路径”后面的“选择路径”按钮,会让选择路径,选择好后点击“选择文件夹”按钮,选择创建独立仿真路径,如图8所示:

步骤4:点击“选择路径”按钮,选择vivado的do文件路径和win64或.setup路径,整体输入信息如图9所示:

步骤5:点击“开始生成”按钮,生成独立仿真工程,生成成功会显示“PASS”。如图10所示。其中独立仿真工程目录在D盘文件夹bus0123_40_25_NO_UDP_1”,文件名为“2”。该文件夹下内容如图11所示,其中所有rtl文件在rtl文件夹下,所有include文件在include文件夹下。当目的仿真工具选择“modelsim”或者“questasim”,sim文件夹内容如图12所示。其中.coe文件源vivado工程的RAM的初始化文件,不是该软件生成的文件。filelist.f文件存放所有需要编译的rtl列表,run.do文件是用于自动化仿真,sim.bat和sim_fast_no_gui.bat是批处理文件,以上四个文件都是该软件生成。点击sim.bat或者sim_fast_no_gui.bat即可运行仿真工具进行自动化仿真,其中sim_fast_no_gui.bat省去了仿真工具的GUI界面,可以加速仿真速度。当目的仿真工具选择“VCS”时(虽然Vivado联合VCS仿真时有自带的一键转换到VCS仿真的功能,但本文软件提供的是一种更直接的脱离方式,把用到的库和所有文件单独提取出来放到一个文件夹中,便于分享,也便于为ASIC化的IP替换创建必要的环境),sim文件夹内容如图13所示。其中.coe文件是源vivado工程的RAM的初始化文件,不是该软件生成的文件。filelist.f文件存放所有需要编译的rtl列表,makefile是自动仿真文件,输入make即可进行VCS的自动化仿真,仿真完后输入make verdi,即可用verdi打开波形文件。

上图中双击sim.bat文件即可运行。

说明:建议在原Vivado工程所在的机器上运行该软件提取相关脚本信息,原Vivado工程需要调用第三方仿真工具运行过并保留相应的sim文件夹。如有问题,请检查vivado版本和仿真工具版本,以及编译的vivado仿真库所用的vivado版本和仿真工具版本。

结论

本软件根据预先定义的Python脚本命令,通过用户与GUI界面的交互,输入必要的信息,将原本重复繁琐操作通过辅助软件进行简化,提升了RTL的仿真的工作效率。本软件通过将大量重复性文件和文件夹进行批处理,减少了人力创建文件夹,书写重复代码,人工转化表项等繁琐操作。此外,通过GUI界面的交互,提供了一个可视化界面,极大的提高了软件的可操作性。

软件的百度网盘下载链接:

链接:https://pan.baidu.com/s/1b3mdVGUzWMBC30hBvSO6Hg

提取码:9smh

欢迎大家留言交流使用心得和问题。


 作者:石廷澳    

责任编辑:潘伟涛

网络交换FPGA 秉承“工匠”精神,专注网络与交换领域FPGA开发与芯片实现,记录、分享与交流技术上的点点滴滴,与大家共同进步成长。
评论 (0)
  •   无人装备作战协同仿真系统软件:科技的关键支撑   无人装备作战协同仿真系统软件,作为一款综合性仿真平台,主要用于模拟无人机、无人车、无人艇等无人装备在复杂作战环境中的协同作战能力、任务规划、指挥控制以及性能评估。该系统通过搭建虚拟战场环境,支持多种无人装备协同作战仿真,为作战指挥、装备研发、战术训练和作战效能评估,提供科学依据。   应用案例   系统软件供应可以来这里,这个首肌开始是幺伍扒,中间是幺幺叁叁,最后一个是泗柒泗泗,按照数字顺序组合就可以找到。   核心功能   虚拟战
    华盛恒辉l58ll334744 2025-04-14 17:24 89浏览
  • 二、芯片的设计1、芯片设计的基本流程 (1)需求定义: 明确芯片功能(如处理器、存储、通信)、性能指标(速度、功耗、面积)及目标应用场景(消费电子、汽车、工业)。 (2)架构设计: 确定芯片整体框架,包括核心模块(如CPU、GPU、存储单元)的协同方式和数据流路径。 (3)逻辑设计: 通过硬件描述语言(如Verilog、VHDL)将架构转化为电路逻辑,生成RTL(寄存器传输级)代码。 (4)物理设计: 将逻辑代码映射到物理布局,涉及布局布线、时序优化、功耗分析等,需借助EDA工具(如Ca
    碧海长空 2025-04-15 11:30 153浏览
  • 一、芯片的发展历程总结:1、晶体管的诞生(1)电子管时代 20世纪40年代,电子管体积庞大、功耗高、可靠性差,无法满足计算机小型化需求。(2)晶体管时代 1947年,贝尔实验室的肖克利、巴丁和布拉顿发明点接触晶体管,实现电子信号放大与开关功能,标志着固态电子时代的开端。 1956年,肖克利发明晶体管。(3)硅基晶体管时代 早期晶体管采用锗材料,但硅更耐高温、成本低,成为主流材料。2、集成电路的诞生与发展 1958年,德州仪器工程师基尔比用锗材料制成世界上第一块含多个晶体管的集成电路,同年仙童半导
    碧海长空 2025-04-15 09:30 113浏览
  • 三、芯片的制造1、制造核心流程 (1)晶圆制备:以高纯度硅为基底,通过拉晶、切片、抛光制成晶圆。 (2)光刻:光刻、离子注入、薄膜沉积、化学机械抛光。 (3)刻蚀与沉积:使用干法刻蚀(等离子体)精准切割图形,避免侧壁损伤。 (4)掺杂:注入离子形成PN结特性,实现晶体管开关功能。2、材料与工艺创新 (1)新材料应用: 高迁移率材料(FinFET中的应变硅、GaN在射频芯片中的应用); 新型封装技术(3D IC、TSV硅通孔)提升集成度。 (2)工艺创新: 制程从7nm到3nm,设计架构由F
    碧海长空 2025-04-15 11:33 190浏览
  • 四、芯片封测技术及应用场景1、封装技术的发展历程 (1)DIP封装:早期分立元件封装,体积大、引脚少; (2)QFP封装:引脚密度提升,适用于早期集成电路。 (3)BGA封装:高密度互连,散热与信号传输优化; (4)3D封装:通过TSV(硅通孔)实现垂直堆叠,提升集成度(如HBM内存堆叠); (5)Chiplet封装:异质集成,将不同工艺节点的模块组合(如AMD的Zen3+架构)。 (6)SiP封装:集成多种功能芯片(如iPhone的A系列SoC整合CPU、GPU、射频模块)。2、芯片测试 (1
    碧海长空 2025-04-15 11:45 185浏览
  •   高空 SAR 目标智能成像系统软件:多领域应用的前沿利器   高空 SAR(合成孔径雷达)目标智能成像系统软件,专门针对卫星、无人机等高空平台搭载的 SAR传感器数据,融合人工智能与图像处理技术,打造出的高效目标检测、识别及成像系统。此软件借助智能算法,显著提升 SAR图像分辨率、目标特征提取能力以及实时处理效率,为军事侦察、灾害监测、资源勘探等领域,提供关键技术支撑。   应用案例系统软件供应可以来这里,这个首肌开始是幺伍扒,中间是幺幺叁叁,最后一个是泗柒泗泗,按照数字顺序组合
    华盛恒辉l58ll334744 2025-04-14 16:09 149浏览
  • 在当今汽车电子化和智能化快速发展的时代,车规级电子元器件的质量直接关系到汽车安全性能。三星作为全球领先的电子元器件制造商,其车规电容备受青睐。然而,选择一个靠谱的三星车规电容代理商至关重要。本文以行业领军企业北京贞光科技有限公司为例,深入剖析如何选择优质代理商。选择靠谱代理商的关键标准1. 授权资质与行业地位选择三星车规电容代理商首先要验证其授权资质及行业地位。北京贞光科技作为中国电子元器件行业的领军者,长期走在行业前沿,拥有完备的授权资质。公司专注于市场分销和整体布局,在电子元器件领域建立了卓
    贞光科技 2025-04-14 16:18 147浏览
  • 展会名称:2025成都国际工业博览会(简称:成都工博会)展会日期:4月23 -25日展会地址:西部国际博览城展位号:15H-E010科士威传动将展示智能制造较新技术及全套解决方案。 2025年4月23-25日,中国西部国际博览城将迎来一场工业领域的年度盛会——2025成都国际工业博览会。这场以“创链新工业,共碳新未来”为主题的展会上,来自全球的600+ 家参展企业将齐聚一堂,共同展示智能制造产业链中的关键产品及解决方案,助力制造业向数字化、网络化、智能化转型。科士威传动将受邀参展。&n
    科士威传动 2025-04-14 17:55 87浏览
  • 一、智能语音播报技术演进与市场需求随着人工智能技术的快速发展,TTS(Text-to-Speech)技术在商业场景中的应用呈现爆发式增长。在零售领域,智能收款机的语音播报功能已成为提升服务效率和用户体验的关键模块。WT3000T8作为新一代高性能语音合成芯片,凭借其优异的处理能力和灵活的功能配置,正在为收款机智能化升级提供核心技术支持。二、WT3000T8芯片技术特性解析硬件架构优势采用32位高性能处理器(主频240MHz),支持实时语音合成与多任务处理QFN32封装(4x4mm)实现小型化设计
    广州唯创电子 2025-04-15 08:53 98浏览
  • 一、智能门锁市场痛点与技术革新随着智能家居的快速发展,电子门锁正从“密码解锁”向“无感交互”进化。然而,传统人体感应技术普遍面临三大挑战:功耗高导致续航短、静态人体检测能力弱、环境适应性差。WTL580微波雷达解决方案,以5.8GHz高精度雷达感知技术为核心,突破行业瓶颈,为智能门锁带来“精准感知-高效触发-超低功耗”的全新交互范式。二、WTL580方案核心技术优势1. 5.8GHz毫米波雷达:精准感知的革命全状态人体检测:支持运动、微动(如呼吸)、静态(坐卧)多模态感知,检测灵敏度达0.1m/
    广州唯创电子 2025-04-15 09:20 84浏览
我要评论
0
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦