windows下verilog开源编辑仿真环境搭建。
windows下verilog开源编辑仿真环境搭建。
一、 verilog 前仿真最小系统
最小系统 ,需要啥?
安装 仿真器 Icarus Verilog 即可,配合 windows系统 自带的记事本notepad, cmd 命令行终端模拟器 即可。
但是 还是 装一个更好用的文本编辑器更好,比如notepad++ , 可以 verilog 语法 彩色高亮 ,可以加 插件 语法纠错,运行编译脚本等。
二、安装
编辑器notepad++ 下载地址 https://notepad.org.cn/plus/13.html (也可以github下载源代码自己编译)
仿真器 Icarus Verilog https://bleyer.org/icarus/
请从上述地址下载notepad++,iverilog安装包。并完成安装。
为notepad++安装nppexec插件。可从网盘下载,NppExec_088_dll_x86_32.zip或者NppExec_088_dll_x64.zip
链接: https://pan.baidu.com/s/1qmyG7P-MrYVoLKZIGFHvbA?pwd=fjad 提取码: fjad
将对应的32位或者64位插件包解压在Notepad++\plugins目录里。
可参考视频。
三、测试
测试demo可使用下述测试包:
eg_1.4.1_Majority.zip
链接: https://pan.baidu.com/s/1HI3OHwMMcHRpLC2lx08FRA?pwd=vmh8 提取码: vmh8
资源管理器中进入该文件包目录eg_1.4.1_Majority\Majority,右键点击Majority.v,选择edit with naotepad++
notepad打开。
点击插件 菜单,如图启动nppexec插件执行脚本功能
空白处输入下述内容:
cmd /k u: & cd "$(CURRENT_DIRECTORY)" & $(CURRENT_DIRECTORY)\geda.bat $(NAME_part) & ECHO. & PAUSE & EXIT
如图
点击save,输入脚本名字,保存。
点击OK运行。
其中用到了geda.bat的批处理文件,需要自己使用文本编辑器编写。
命令中geda.bat内容如下:
rem ################# Icarus Verilog 自动化编译仿真脚本 #################
rem 功能:自动编译Verilog模块、运行仿真并启动波形查看器
rem 使用方法:拖放.v文件到本脚本上 或 命令行输入脚本名+模块名(不含扩展名)
rem 设置Icarus Verilog工具链路径
rem 注意:根据实际安装路径修改下列路径
set iverilog_path=C:\iverilog\bin;
set gtkwave_path=C:\iverilog\gtkwave\bin;
rem 将工具路径添加到系统PATH环境变量(临时生效,仅限本脚本内)
rem 格式说明:%原有PATH%保持末尾,避免系统命令失效
set path=%iverilog_path%%gtkwave_path%%path%
rem ###################### 参数处理部分 ######################
rem %1 表示第一个命令行参数(用户拖放的文件或输入的模块名)
rem 示例:若输入 "demo.v" 则 %1=demo,source_module=demo
set source_module=%1 rem 提取主模块名(去掉文件扩展名)
set testbentch_module=%1_TB rem 自动生成测试平台模块名(添加_TB后缀)
rem ################# 编译执行部分 #################
rem 使用Icarus Verilog编译:
rem -o 指定输出文件 : 生成.vvp仿真文件
rem -y 添加库目录 : 包含./lib目录下所有Verilog文件
rem 最后两个参数 : 主测试平台和被测模块文件
iverilog -o "%testbentch_module%.vvp" -y ./lib/ *.v %testbentch_module%.v %source_module%.v
rem 运行仿真生成波形文件(-n 表示非交互模式)
vvp -n "%testbentch_module%.vvp"
rem ################# 波形查看部分 #################
rem 智能加载波形配置:优先使用现有.gtkw工程文件
rem 如果存在匹配的GTKWave工程文件则直接加载工程
rem 否则直接打开新生成的VCD波形文件
set gtkw_file="%testbentch_module%.gtkw"
if exist %gtkw_file% (
gtkwave %gtkw_file% rem 加载现有波形工程
) else (
gtkwave "%testbentch_module%.vcd" rem 打开新生成的波形文件
)
rem 调试用暂停(正式使用时可移除开头的rem)
rem pause
如果verilog程序没有错误。可看到仿真波形图。如有错误,可根据返回信息修改。再次运行时,选择kill结束上次脚本运行。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 百万级群聊的设计实践
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期