一、下载插件

在vs code中下载如图所示插件(digital IDE):

下载为特定版本(选最新的)的VSIX

二、安装插件

打开trae,点击拓展,如下图所示操作:

点击设置,打开拓展设置:

将你的vivado安装路径复制到设置框中。(原路径中的  \  要换成  /  )

三、创建工程

新建一个空白文件夹,然后在trae中打开该文件夹。呼出命令面板,如下图所示:

选择生成property配置文件。

打开property配置文件,对device和工程名进行配置:

添加器件,对器件库中没有的器件进行添加。添加完成后要重启trae。

将器件设计源文件 (也可以连同其所在文件夹一起) 鼠标拖动添加到工程目录的src下;将仿真代码文件(XXX_tb.v)添加到sim下;将约束文件添加data下。具体各种文件Digital IDE标准项目中的存放位置参考第四节。注:在Digital IDE标准项目的src,sim等这些目录下,我们可以自定义创建文件夹,

例如在src目录下创建多个子目录,对不同器件的设计源文件分开管理,方便多文件情况下的工程管理。

点击launch,如果终端输出如下信息,说明工程创建完成。

我们可以点击GUI,进入vivado的交互界面检查工程结构。

四、新增IP与BD

当我们要在Digital IDE工程中新增IP或BD时,点击GUI打开vivado软件的交互界面。完成要新增的文件后,关闭vivado,回到trae的界面,插件会自动将新增的IP或BD文件的搬移到Digital IDE工程目录的user下,不需要用户自己来管理拖动,相应的提示信息会在终端提示。再点击launch完成工程的更新。

当用户使用 GUI 按键打开 vivado 之后,操作权限会被 vivado 自己的交互软件接管,插件不再进行处理。此时不能直接关闭 trae,可以选择关闭 vivado 的软件或者点击 Exit 按键进行退出。如果直接关闭 trae则插件无法自行搬移用户新增的 IP 和 bd 设计。

四、Digital IDE标准项目结构中各文件夹的作用介绍:

五、导入vivado工程

通过插件digital IDE 将我们在vivado中创建好的Xilinx项目工程转换为Digital IDE 标准项目结构

1. 在vs code中打开Xilinx目标工程目录

2.呼出命令面板,如下图所示操作,选择转换选项。

六、结构树无法识别现有文件中的模块

该文件可能包含采用GB2312编码的中文注释。将文件以UTF-8编码保存后,应可正确识别。

如果有部分文件无法被解析出来,那是因为digital IDE插件只支持UTF-8编码,无法被解析的文件使用了GB2312等字符编码格式。

转换vivado文件编码格式的方式:

在src文件夹下新建一个.v文件,使用记事本打开无法被识别的文件,复制全部内容,搬移到新创建的.v文件当中,保存并刷新

Vivado 2018.3 主界面本身没有提供全局编码设置选项,但可以通过以下方式解决乱码问题:

  • 外部工具预转换编码:用 Notepad++ 等文本编辑器打开文件,将编码转换为 GB2312/GBKUTF-8 无BOM 格式,再导入 Vivado,可避免中文注释乱码。

七、实用功能

1. 生成选中模块的例化模板

2.生成器件模块的net list

八、仿真

1. 快速仿真


首先自行下载 iVerilog  并将其添加到环境变量path

在digital IDE的插件设置中设置iVerilog安装路径

对当前模块进行仿真


一定要在仿真顶层文件中设置仿真结束条件(在testbench文件末尾添加 $finish 系统函数来结束仿真),不然会在后台一直进行仿真。如果不小心遗漏了,你需要在任务管理器中结束名为VVP的进程来终止仿真

2. 波形记录

样例代码:

// 初始过程块:仿真启动(时间0时刻)时执行,且仅执行一次
// 用于测试平台的波形记录配置、仿真结束控制
initial begin
    // $dumpfile:指定仿真波形数据的输出文件路径和名称
    // 输出格式为.vcd(Value Change Dump),是EDA工具通用的波形文件格式
    // 路径为相对路径:prj/icarus/ 目录下的 tbtfff1.vcd 文件
    $dumpfile("prj/icarus/tbtfff1.vcd");
    
    // $dumpvars:配置需要记录波形的信号范围
    // 第一个参数 0:表示记录"指定模块"下所有层级的信号(包括子模块、寄存器、线网等)
    // 第二个参数 tb_full_adder_ff:指定要记录波形的顶层模块/实例名(全加器测试平台)
    // 若参数为1,则仅记录顶层模块的直接信号,不深入子模块
    $dumpvars(0, tb_full_adder_ff);
    
    // #10000:延时时间要依具体情况而定,要能足够覆盖所有测试用例的运行时间,否则波形不完整
    // $finish():延时结束后,终止整个仿真进程,确保波形文件正常写入并退出
    #10000 $finish();
end

3. 调用vivado自带的仿真器进行仿真


首先点击launch,打开TCL服务器后。
在digital IDE模块树中,将需要仿真的模块设置为顶层。

然后点击simulate下拉选项,点击GUI,会在仿真完毕后,自行打开vivado的波形界面。

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐