首页 星云 工具 资源 星选 资讯 热门工具
:

PDF转图片 完全免费 小红书视频下载 无水印 抖音视频下载 无水印 数字星空

verilog vscode 与AI 插件

编程知识
2024年09月11日 21:36

Verilog 轻量化开发环境

背景

笔者常用的开发环境

  • VIAVDO, 体积巨大,自带编辑器除了linting 能用,编辑器几乎不能用,仿真界面很友好,但是速度比较慢。
  • Sublime Text, 非常好用的编辑器,各种插件使用verilog 非常方便,可以自动补全、生成调用、linting等;
  • VSCODE,Sublime Text 有的插件,VSCODE也都有,虽然不一定有sublime text好用,但是VSCODE有AI插件的加持,显得更有吸引力,更能提高工作效率。而且完全免费,VSCODE 注定一统江湖。

因此这里主要说明如何搭建VSCODE轻量化环境。

环境搭建

首先你得有VSCODE,安装包bing.com 搜索一下(不要问为什么不用百度) 自行安装即可。

安装插件

手机的屏幕截图

描述已自动生成

图 2‑1 VSCODE Verilog 插件

安装Iverilog

Icarus Verilog for Windows (bleyer.org) 下载安装轻量级开发、编译工具Iverilog,这样就可以完全不用VIVADO就完成模块级的代码开发。

安装完成之后设置环境变量:

图形用户界面, 文本, 应用程序

描述已自动生成

图 2‑2 设置iverilog 和 gtkwave 环境变量

设置完成重启 电脑, WIN11似乎不用重启 立即生效,只需要重启VSCODE

设置插件

文本

描述已自动生成

图 2‑3 设置linter 为iverilog 运行在文件所在目录

编译 查看波形

Iverilog 对.sv文件支持不好,需要编译的顶层文件最好是.v 后缀。涉及到模块调用,最好在代码中用`include 声明一下。

文本

描述已自动生成

图 2‑4 仿真顶层

文本

描述已自动生成

图 2‑5 运行编译 仿真

注意代码中必须包含自动$finish; 还要dump波形文件。

initial begin

        $display("start a clock pulse");    // 打印开始标记

        $dumpfile("wave.vcd");              // 指定记录模拟波形的文件

        $dumpvars(0, pulse_gen_test);          // 指定记录的模块层级

end

也可以用命令行运行编译和仿真,基本命令如下:

@echo off

iverilog.exe -o target.vvp pulse_gen_test.sv

vvp.exe target.vvp

其中-o是目标文件,pulse_gen_test.sv是待编译的仿真文件,vvp.exe执行对应的仿真。

然后生成目标wave.vcd文件,通过gtkwave 可以查看(在终端中执行gtkwave .\wave.vcd)。

图形用户界面

描述已自动生成

图 2‑6 gtkwave 查看波形

需要说明,VSCODE中的自动实例化模块有点问题,希望后面插件可以解决。

AI 插件

VSCODE最强的是他的AI插件,这个是sublime text 没有的。

文本

描述已自动生成

图 3‑1 阿里TONGYI Lingma 插件

应用市场搜索安装即可,国内大模型和插件,阿里的最靠谱,实际使用体验不错,详细很快能够追上国外。

From:https://www.cnblogs.com/xingce/p/18409145
本文地址: http://www.shuzixingkong.net/article/1940
0评论
提交 加载更多评论
其他文章 一文快速上手-Vue CLI脚手架
安装Vue CLI (1) 全局安装Vue CLI 方式一(推荐方式):在终端安装指定版本 npm i @vue/cli@5.0.8 -g 注:目前5.0.8应该是最新的版本了。 方式二:在终端通过命令安装最新版本 npm i @vue/cli -g (2) 升级Vue CLI到最新版本(可选) n
牛逼!在Vue3.5中仅仅2分钟就能封装一个自动cancel的fetch函数
前言 在欧阳的上一篇 这应该是全网最详细的Vue3.5版本解读文章中有不少同学对Vue3.5新增的onWatcherCleanup有点疑惑,这个新增的API好像和watch API回调的第三个参数onCleanup功能好像重复了。今天这篇文章来讲讲新增的onWatcherCleanup函数的使用场景
牛逼!在Vue3.5中仅仅2分钟就能封装一个自动cancel的fetch函数 牛逼!在Vue3.5中仅仅2分钟就能封装一个自动cancel的fetch函数 牛逼!在Vue3.5中仅仅2分钟就能封装一个自动cancel的fetch函数
Redis 入门 - 五大基础类型及其指令学习
学习Redis基础类型:字符串、集合、有序集合、列表、哈希,每种类型有各自的特点和常用指令。掌握这些基础是熟练使用Redis的关键。更多指令需自行尝试。
Redis 入门 - 五大基础类型及其指令学习 Redis 入门 - 五大基础类型及其指令学习 Redis 入门 - 五大基础类型及其指令学习
代码整洁之道--读书笔记(7)
代码整洁之道 简介: 本书是编程大师“Bob 大叔”40余年编程生涯的心得体会的总结,讲解要成为真正专业的程序员需要具备什么样的态度,需要遵循什么样的原则,需要采取什么样的行动。作者以自己以及身边的同事走过的弯路、犯过的错误为例,意在为后来者引路,助其职业生涯迈上更高台阶。 本书适合所有程序员阅读,
代码整洁之道--读书笔记(7) 代码整洁之道--读书笔记(7)
.NET 6.0 + WPF 使用 Prism 框架实现导航
前言 Prism 一个开源的框架,专门用于开发可扩展、模块化和可测试的企业级 XAML 应用程序,适用于 WPF(Windows Presentation Foundation)和 Xamarin Forms 等平台。 Prism 基于 MVVM(Model-View-ViewModel)设计模式,
.NET 6.0 + WPF 使用 Prism 框架实现导航 .NET 6.0 + WPF 使用 Prism 框架实现导航 .NET 6.0 + WPF 使用 Prism 框架实现导航
区块链应用与以太坊的交互
title: 区块链应用与以太坊的交互 author: ivhu date: 2024-09-11 15:52:13 categories: - 区块链 - 二层 tags: - 以太访 - L2 - 合约交互 - arbitrum description: 我们要谈的交互 首先要明确一点,以太坊是
区块链应用与以太坊的交互 区块链应用与以太坊的交互
关于 Splay 树
前置芝士 $\LARGE {关于二叉搜索树及平衡树无聊的一大串子定义}$ 二叉搜索树(BST树) 定义 二叉搜索树是一种二叉树的树形数据结构,其定义如下: 空树是二叉搜索树。 若二叉搜索树的左子树不为空,则其左子树上所有点的附加权值均小于其根节点的值。 若二叉搜索树的右子树不为空,则其右子树上所有点
关于 Splay 树 关于 Splay 树 关于 Splay 树
SPiT:超像素驱动的非规则ViT标记化,实现更真实的图像理解 | ECCV 2024
Vision Transformer(ViT) 架构传统上采用基于网格的方法进行标记化,而不考虑图像的语义内容。论文提出了一种模块化的超像素非规则标记化策略,该策略将标记化和特征提取解耦,与当前将两者视为不可分割整体的方法形成了对比。通过使用在线内容感知标记化以及尺度和形状不变的位置嵌入,与基于图像
SPiT:超像素驱动的非规则ViT标记化,实现更真实的图像理解 | ECCV 2024 SPiT:超像素驱动的非规则ViT标记化,实现更真实的图像理解 | ECCV 2024 SPiT:超像素驱动的非规则ViT标记化,实现更真实的图像理解 | ECCV 2024