当前位置: 首页 > news >正文

PCIe AVIP架构

验证工程师可以用C语言接口快速实现仿真加速。C++实现的仿真文件testbench可以直接访问AVIP,与总线功能模块BFM交换数据。PCIe AVIP的C++接口就是一组C++类;C++程序或工具可以调用这些类的方法。C++类可以实现如下功能:

  • 与BFM建立通信;
  • 向BFM发送事务报文;
  • 接收来自BFM的事务报文。

cdn_pcie_cpp_proxy类表示PCIe 代理模型,可以与BFM进行通信,并向BFM发送事务报文,等待时钟等等。

事务对象描述了收发事务报文的细节:用于send_txn()方法的参数;也用于从BFM中接收事务报文。对于PCIe而言,事务对象就是pci_express_cpp_tr类的对象。

PCIe AVIP C++接口的使用过程分如下几步:

  1. 创建代理模型,并将其与BFM绑定;
  2. 创建事务对象;
  3. 对事务对象进行初始化;
  4. 用代理模型的方法,将事务对象向BFM发送;
  5. 从BFM中接收响应报文。

PCIe AVIP C++接口使用回调函数从BFM中接收数据。回调函数类似验证过程中的中断。回调过程如下:

  1. 回调函数的编写,主要描述了当BFM返回数据给代理模型时,应该做些什么。
  2. 在验证启动时,必须先注册好回调函数。
  3. BFM返回数据给代理模型时,自动执行回调函数。

示例cdn_pcie_avip_dpi_test中有回调函数编写和注册。

http://www.jsqmd.com/news/578895/

相关文章:

  • OpenClaw+gemma-3-12b-it组合优化:降低长链条任务Token消耗的3个技巧
  • 基于BEMD-MPE-MVMD-SSA-iMLP的碳价格预测模型
  • Linux下C/C++高效调试工具与技巧全解析
  • 百考通:AI精准赋能任务书生成,让科研与项目启动更高效
  • Jetson AGX Orin上PyTorch和Torchvision安装避坑指南(附Conda虚拟环境配置)
  • STM32F103C8T6省掉两个晶振,用内部HSI跑64MHz的完整配置流程(附代码)
  • Axios 近期安全版本
  • 五层电梯MCGS7.7嵌入版与三菱PLC的联动编程实践
  • 革新性暗黑破坏神2存档编辑全攻略:从数据解析到高级定制
  • 智能求职助手:基于腾讯云AI与RAG框架的简历优化与面试评估系统
  • OpenClaw+Phi-3-mini-128k-instruct低成本方案:自建文本生成流水线
  • GeometryExtension
  • 论文写作新利器:书匠策AI,开启期刊论文创作的智慧之门
  • 基于粒子群算法的光伏MPPT(可重启PSO)探秘
  • 2026年知名的腻子公司选择指南 - 品牌宣传支持者
  • AD09 PCB设计核心技巧与实战经验
  • 仅限首批Early Adopter:PyTorch 3.0静态图分布式训练Beta版深度评测(含ResNet-50/LLaMA-7B双基准对比)
  • 百考通:AI精准赋能答辩PPT,让学术展示更高效从容
  • Drawings
  • MongoDB(76)如何配置防火墙规则?
  • Qclaw 效率工作流实战测评:让微信变成你的「远程生产力中枢」
  • 别再用multiprocessing硬扛了!5种真正意义上的Python无锁并发范式(含LLVM JIT编译、WASM沙箱、CUDA流调度实战)
  • 我在做一个AI小项目时,顺手整理了域名选择这件事
  • 嵌入式开发语言选择:C与C++的实战对比
  • OpenClaw技能组合方案:Phi-3-mini-128k-instruct串联多插件工作流
  • 2026年4月怎么集成OpenClaw?腾讯云5分钟超简单指南及百炼APIKey配置、集成Skill流程
  • [具身智能-203]:同构遥操作与异构遥操作
  • 电子元器件失效分析与预防实战指南
  • C++实时控制代码如何通过ASIL-D认证?:从内存安全到FMEA分析的7大硬核避坑指南
  • OpenClaw技能市场巡礼:Top10适配Kimi-VL-A3B-Thinking的实用模块