Cadence AXI VIP(1)——使用示例
环境准备Cadence的所有VIP均整合在VIPCAT中不需要安装。正常流程应该继续使用C家xrun继续仿真但是这里使用vcsverdi实现需要额外做些修改。VIPCAT使用版本11.30.106vcs版本2022。尝试过老版本VIPCAT可能遇到问题是不兼容64位vcs可能也能兼容问题太多放弃了。环境变量使用前添加环境变量在~/.bashrc中添加如下变量注意这里是我的VIPCAT路径需要按实际修改。export CDN_VIP_ROOT/usr/Cadence/vipcat/vipcat_11_30_106 export DENALI${CDN_VIP_ROOT}/tools.lnx86/denali_64bit示例类型AXI相关共包含3个示例环境分别为常规配置、soma配置和soma模块然后环境下包含AXI3、AXI4和ACE等子示例。/usr/Cadence/vipcat/vipcat_11_30_106/tools/denali_64bit/ddvapi/sv/uvm/cdn_axi/examples/using_config_object /usr/Cadence/vipcat/vipcat_11_30_106/tools/denali_64bit/ddvapi/sv/uvm/cdn_axi/examples/legacy_examples/using_soma_interface/ /usr/Cadence/vipcat/vipcat_11_30_106/tools/denali_64bit/ddvapi/sv/uvm/cdn_axi/examples/legacy_examples/using_soma_module/常规配置示例运行示例这里执行AXI4常规配置示例脚本后续再介绍soma。直接在端口执行示例路径下vcs后缀脚本即可端口打开的地方就是环境生成的地方。建议把using_config_object拷贝到其他地方再按新路径执行这样可以随意改验证环境同时不改动VIPCAT文件。/usr/Cadence/vipcat/vipcat_11_30_106/tools/denali_64bit/ddvapi/sv/uvm/cdn_axi/examples/using_config_object/axi4/example_setup_vcs.csh环境生成执行脚本会在路径下自动生成环境变量脚本和仿真脚本然后自动调用这两个脚本进行仿真。期间在log中看到vcs编译和仿真最后打印结果完成5次写传输和7次读传输。Verdi修改由于希望用verdi打开所以要做一些修改首先打开“using_config_object/axi4/axi4UvmUserTb.sv”里面有叫testbench的module这个是tb的顶层在module最后加上fsdbdump的代码。initial begin $fsdbDumpfile(wave.fsdb); $fsdbDumpSVA; $fsdbDumpvars(0,testbench); end然后需要改compile指令比较尴尬的是新版本VIPCAT在example_setup_vcs.csh里调用的不是脚本而是可执行文件还不好改所以只能改新生成出来的cdn_vip_run_vcs_sv_uvm_64.csh找到vcs编译部分指令在最后添加-debug_access \。-XVpiCbAutoReleaselibcdnsv.so \ -P ${DENALI}/verilog/cdnsv.tab \ -LDFLAGS -rdynamic ${DENALI}/lib/libviputil.so \ -top testbench \ -debug_access \因为已经改了生成文件所以不能用再用example_setup_vcs.csh了直接顺序执行路径下2个脚本即可服务器默认bash的话要切csh然后可以看到重新进行编译仿真最后多了fsdb文件。csh source cdn_vip_env_vcs_sv_uvm_64.csh ./cdn_vip_run_vcs_sv_uvm_64.csh参照编译log手写一个verdi Makefile注意修改VIPCAT路径。CDN_VIP_COMMON_SRC : /usr/Cadence/vipcat/vipcat_11_30_106/tools/denali_64bit/ddvapi/sv CDN_VIP_AXI_SRC: /usr/Cadence/vipcat/vipcat_11_30_106/tools/denali_64bit/ddvapi/sv/uvm/cdn_axi EXAMPLE_DIR: /usr/Cadence/vipcat/vipcat_11_30_106/vipcat_11_30_106/tools.lnx86/denali_64bit/ddvapi/sv/uvm/cdn_axi/examples/using_config_object/axi4/ verdi: verdi \ v2k \ -sverilog \ defineDENALI_UVM defineVCS \ -ntb_opts uvm-ieee \ incdir${CDN_VIP_COMMON_SRC} \ ${CDN_VIP_COMMON_SRC}/denaliMem.sv \ ${CDN_VIP_COMMON_SRC}/denaliCdn_axi.sv \ incdir${CDN_VIP_AXI_SRC} \ ${CDN_VIP_AXI_SRC}/cdnAxiUvmTop.sv \ -timescale1ns/10ps defineUVM_NO_DEPRECATED \ incdir${EXAMPLE_DIR} \ incdir${EXAMPLE_DIR}/.. \ ${EXAMPLE_DIR}/../hdl_interfaces/cb_interfaces/cdnAxi4Interface.sv \ ${EXAMPLE_DIR}/axi4UvmUserTop.sv \ ${EXAMPLE_DIR}/axi4UvmUserTb.sv \ ${CDN_VIP_COMMON_SRC}/denaliMemSvIf.c \ ${CDN_VIP_COMMON_SRC}/denaliCdn_axiSvIf.c \ -ssf wave.fsdb \ -nologo \ -sswr ./signals.rc 最后执行make verdi在波形中可以看到12次AXI传输。soma配置示例运行示例流程和前示例相似区别在选择SOMA接口示例。/usr/Cadence/vipcat/vipcat_11_30_106/tools/denali_64bit/ddvapi/sv/uvm/cdn_axi/examples/legacy_examples/using_soma_interface/axi4/example_setup_vcs.csh环境生成生成环境和前示例相似主要看区别。首先测试用例换成了modifyTransactionTest大致上就是通过回调修改AXI延时的case。此外VCS编译指令中加了CDN_AXI_USING_SOMA_INTERFACE宏定义在verdi中搜索使用宏定义文件发现只有接口parameter会用到如果宏定义有效则通过soma文件配置接口否则通过常量配置。soma配置在testbench中可以看到soma文件路径分别是1主1从和1无效主。通过执行pureview打开配置界面在界面中通过Open an existing file打开已有soma文件。/usr/Cadence/vipcat/vipcat_11_30_106/tools/bin/pureview这里打开activemaster.soma可以看到各种配置例如有效、主设备、AXI协议版本4。所以实际上soma是VIP配置文件通过图形界面可以直观对环境配置进行修改。

相关新闻

Cadence AXI VIP(2)——示例环境解析

Cadence AXI VIP(2)——示例环境解析

仿真文件 仿真文件可以分为3类,在不同路径下,分别是VIP通用文件、AXI VIP文件和example文件,首先建议将example拷贝到VIPCAT的路径之外。 /usr/Cadence/vipcat/vipcat_11_30_106/tools/denali_64bit/ddvapi/sv /usr/Cadence/vipcat/vipcat_11…

2026/7/6 4:21:51 阅读更多 →
低显存福音:Qwen2.5-1.5B轻量级对话助手使用全攻略

低显存福音:Qwen2.5-1.5B轻量级对话助手使用全攻略

低显存福音:Qwen2.5-1.5B轻量级对话助手使用全攻略 1. 为什么你需要一个“能跑在旧显卡上的AI助手” 你是不是也遇到过这些情况: 想试试本地大模型,但刚下载完Qwen2.5-7B,显存就爆了,GPU温度直逼90℃;笔…

2026/7/4 14:13:44 阅读更多 →
无需Prompt技巧:InstructPix2Pix魔法修图师中文用户实操手册

无需Prompt技巧:InstructPix2Pix魔法修图师中文用户实操手册

无需Prompt技巧:InstructPix2Pix魔法修图师中文用户实操手册 1. 这不是滤镜,是会听指令的修图师 你有没有过这样的时刻: 想把一张旅行照里的阴天改成晴空万里,却卡在PS图层蒙版里反复调试; 想给朋友合影加一副复古圆…

2026/7/5 6:00:18 阅读更多 →

最新新闻

LTC6904与PIC24FV16KA304实现精密脉冲控制方案

LTC6904与PIC24FV16KA304实现精密脉冲控制方案

1. 项目背景与核心价值在嵌入式系统开发中,精确的时序控制往往是最具挑战性的环节之一。无论是工业自动化中的电机控制、医疗设备中的信号同步,还是科研实验中的精密测量,对脉冲信号的精度要求常常达到微秒甚至纳秒级。传统方案通常采用分立元…

2026/7/6 4:20:18 阅读更多 →
Python抖音机器人开发指南:从零构建智能互动系统

Python抖音机器人开发指南:从零构建智能互动系统

Python抖音机器人开发指南:从零构建智能互动系统 【免费下载链接】Douyin-Bot 😍 Python 抖音机器人,论如何在抖音上找到漂亮小姐姐? 项目地址: https://gitcode.com/gh_mirrors/do/Douyin-Bot 在当今短视频内容爆炸的时代…

2026/7/6 4:20:18 阅读更多 →
LSTM 多步预测实战:从单步滚动到 Seq2Seq 的 2 种方案详解

LSTM 多步预测实战:从单步滚动到 Seq2Seq 的 2 种方案详解

LSTM多步预测实战:从递归滚动到Seq2Seq的深度对比与优化1. 多步预测的核心挑战与解决方案全景当我们面对"用前30天数据预测后10天"这类多步预测任务时,传统单步预测方法会遇到三个本质性挑战:误差累积问题:递归预测中每…

2026/7/6 4:18:18 阅读更多 →
太原考公考编线下班口碑红黑榜:2026学员真实评价背后的选班避坑指南

太原考公考编线下班口碑红黑榜:2026学员真实评价背后的选班避坑指南

一边是动辄数万元的协议班,一边是朋友圈里满天飞的“上岸喜报”,在太原,选一家靠谱的考公考编线下班,正在变成一场信息战。我们花了三周时间,深度整理了太原及周边学员在社交平台、备考群、公开评价里的真实反馈&#…

2026/7/6 4:18:18 阅读更多 →
HTTP协议及其POST与GET操作差异  C#中如何使用POST、GET等

HTTP协议及其POST与GET操作差异 C#中如何使用POST、GET等

HTTP协议我想任何IT人士都耳熟能详了,大家都能说出个所以然来。但是如果我问你HTTP协议的请求方法有哪些?POST与GET的差异?GET或POST传送数据量的大小有限制吗?HTTP响应的状态有哪些?以及在C#中你如何使用?…

2026/7/6 4:16:17 阅读更多 →
【git教程】科研技能必备——git的使用

【git教程】科研技能必备——git的使用

【git教程】科研技能必备——git的使用 git的知识其实常用的就那几个,由于网上的教程有很多,笔者感觉能给各位读者做的也只有帮忙筛选了。 注:其实这些git的命令行操作在目前主流的IDE(如VScode,cursor)上已经集成好了…

2026/7/6 4:14:17 阅读更多 →

日新闻

H2 与 MySQL 单元测试兼容性:5 个关键 SQL 语句差异与规避方案

H2 与 MySQL 单元测试兼容性:5 个关键 SQL 语句差异与规避方案

H2与MySQL单元测试兼容性:5个关键SQL语句差异与规避方案1. 单元测试中的数据库兼容性挑战在Java开发领域,单元测试是保证代码质量的重要环节。当应用涉及数据库操作时,测试环境的搭建往往成为开发者的痛点。H2数据库因其轻量级、内存模式和快…

2026/7/6 0:01:17 阅读更多 →
Windows任务栏终极清理指南:用RBTray一键隐藏窗口到系统托盘

Windows任务栏终极清理指南:用RBTray一键隐藏窗口到系统托盘

Windows任务栏终极清理指南:用RBTray一键隐藏窗口到系统托盘 【免费下载链接】rbtray A fork of RBTray from http://sourceforge.net/p/rbtray/code/. 项目地址: https://gitcode.com/gh_mirrors/rb/rbtray 你是否厌倦了Windows任务栏上密密麻麻的图标&…

2026/7/6 0:01:17 阅读更多 →
Visual C++ 运行时库一键安装终极指南:告别DLL缺失烦恼

Visual C++ 运行时库一键安装终极指南:告别DLL缺失烦恼

Visual C 运行时库一键安装终极指南:告别DLL缺失烦恼 【免费下载链接】vcredist AIO Repack for latest Microsoft Visual C Redistributable Runtimes 项目地址: https://gitcode.com/gh_mirrors/vc/vcredist 你是否曾经遇到过这样的情况:下载了…

2026/7/6 0:05:19 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

月新闻