VSCode 作为 Vivado RTL 编辑器的配置

工作区文件编码

.vscode/settings.json

json 复制代码
{
    // 编码
    "files.encoding": "gbk",
    "files.autoGuessEncoding": false,

    // 行尾统一
    "files.eol": "\n",

    //  文件关联
    "files.associations": {
        "*.v": "verilog",
        "*.vh": "verilog",
        "*.sv": "systemverilog"
    },

    // 搜索时忽略 Vivado 垃圾目录
    "search.exclude": {
        "**/.Xil": true,
        "**/.ip_user_files": true,
        "**/*.runs": true,
        "**/*.cache": true
    }
}

vscode工作区引用其他目录源文件

用于编辑vivado自动生成部分的代码

hdl.code-workspace

json 复制代码
{
	"folders": [
	  		{ "path": "./rtl" },
	    { "path": "../../../../mi_vivado/ip_repo" },
	    { "path": "../../../../mi_vivado/project.gen" }
	],
	"settings": {}
}

connect.tcl

在 Vivado BD 中,如果手工连错一根线,整个网络号(net)上所有连接都会被断开

bash 复制代码
connect_bd_net [get_bd_ports o_port4_0] [get_bd_pins pl_bram_rd_0/o_port4]
connect_bd_net [get_bd_ports i_port0_0] [get_bd_pins pl_bram_rd_0/i_port0]
connect_bd_net [get_bd_ports i_port1_0] [get_bd_pins pl_bram_rd_0/i_port1]
connect_bd_net [get_bd_ports i_port2_0] [get_bd_pins pl_bram_rd_0/i_port2]
connect_bd_net [get_bd_ports i_port3_0] [get_bd_pins pl_bram_rd_0/i_port3]
connect_bd_net [get_bd_ports i_sys_clk_0] [get_bd_pins pl_bram_rd_0/i_sys_clk]
connect_bd_net [get_bd_ports i_sys_rst_n_0] [get_bd_pins pl_bram_rd_0/i_sys_rst_n]

#或
proc connect_if_exist {src dst} {
    if {[llength [get_bd_pins $src -quiet]] && \
        [llength [get_bd_pins $dst -quiet]]} {
        connect_bd_net [get_bd_pins $src] [get_bd_pins $dst]
    }
}
connect_if_exist pl_bram_rd_0/o_port4 o_port4_0
connect_if_exist pl_bram_rd_0/i_sys_clk i_sys_clk_0

添加rtl文件

bash 复制代码
# 导入文件
```shell
set rtl_dir  D:/workspace/mi_prj/mi_vivado/ip_repo/mi_pl_1.0/hdl

add_files $rtl_dir/bram_rd.v
add_files $rtl_dir/mi_pl_v1_0_S00_AXI.v
add_files $rtl_dir/mi_pl_v1_0.v
add_files $rtl_dir/uart_rx.v
add_files $rtl_dir/uart_tx.v
add_files $rtl_dir/mi_gram_mock.v
add_files $rtl_dir/mi_reg_map.vh

忽略文件

.gitignore

bash 复制代码
# Vivado
.Xil/
*.jou
*.log
*.str
*.cache/
*.runs/
*.sdk/
.ip_user_files/

# OS
.DS_Store
Thumbs.db
相关推荐
2501_915909066 天前
移动端开发工具链怎么组合比较好,iOS、Android、跨端三套配置方案
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
weixin_464078076 天前
ppt转为draw.io方法
编辑器
sunoo-2296 天前
【ARM嵌入式学习笔记Day6】一文打通i.MX6ULL时钟体系:PLL/PFD/预分频+滞回比较器全解析
arm开发·笔记·vscode·单片机·imx6ull·汇编语言
明天…ling6 天前
gitee与vscode远程连接
vscode·gitee
2501_915918416 天前
iOS编程用什么软件好?主流工具Xcode、AppCode、CodeRunner与新兴快蝎对比
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
__pop_6 天前
VSCode Remote SSH 远程连接 glibc 高版本依赖问题
vscode
daxiangxm7 天前
【趣味休息】“围住小猫在线玩”-“困住小猫”,又回来了
数据结构·人工智能·vscode·github·php
星光开发者7 天前
基于Spring Boot的充电桩管理系统的设计与实现-计算机毕设【课程设计】57105
vue.js·spring boot·vscode·mysql·django·php·express
程序员允诺7 天前
内网/无网环境必备:VS Code Remote-SSH 离线包下载与手动部署教程
vscode
滕州市燕猫虎计算机科技工作室个体工商户7 天前
IDEA:Command line is too long
java·ide·intellij-idea