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

SRIO入门之官方例程仿真验证

仿真SRIO事务时序

仿真之前先完成下面两步操作:

1.Vivado软件版本2020.1,创建好工程及SRIO的IP核

2.右键综合化的IP核,然后选择打开IP示例工程

直接运行仿真

分别将request和response两个模块添加到仿真窗口进行查看

运行1000us左右就可以看到信号动作

可以看到不同的事务类型

接收MAINTENANCE READ REQUEST请求

首先会由一个维护读请求事务,指定一个维护读请求,不需要响应,因此val_tresp_tvalid=0。

发送SWRITE请求

仿真后面可以看到val_ireq_tvalid拉高时发送的数据包有效,结合ftype(6)和ttype(0)值,包头对应instruction.vh头文件的流写事务,在数据发送完后tlast拉高。

接收SWRITE请求

在request模块发送完数据后,response模块接收到SWRITE请求,结合ftype(6)和ttype(0)值可以验证是SWRITE事务。

发送NWRITE_R请求

接着request模块继续发送下一个数据包事务,是NWRITE_R事务。

接收NWRITE_R请求,发送响应

在发送请求一段时间后,在response模块中接收NWRITE_R事务,和发送的请求包一致,该事务会产生响应,在一段时间后可以看到val_tresp_tvalid拉高一个周期,发送响应包val_tresp_tdata = 64'h25d0_4000_0000_0000。

发送NREAD请求

接着request模块继续发送下一个数据包事务,是NREAD事务。先发送读数据请求包,该事务请求只含包头,不包含数据。

接收NREAD请求

在发送一段时间请求包后response模块收到请求包,接收到读数据事务后根据数据类型接收模块会返回一个响应包和一串数据。

发送NREAD响应

在response模块接收到读事务一段时间后产生相应包val_tresp_tdata=64'h4bd8400000000000,并和数据一起打包,因为接收到的size=8'h3f,所以需要发送的数据个数是64字节,数据位宽是64位发送,则需要发送8个周期的数据。

接收NREAD响应

在响应包发送一段时间后在request模块中收到了响应包包头和数据,响应包包头为val_iresp_tdata=64'h4bd8400000000000,跟在包头后面的是数据0。

上述只对流写事务、带响应的写事务和读事务进行仿真时序分析,其它几个事务可以根据头文件和仿真继续分析。

本期分享结束,感谢大家看完,私信我可获取相关源码工程

http://www.lryc.cn/news/610273.html

相关文章:

  • History 模式 vs Hash 模式:Vue Router 技术决策因素详解
  • 数据结构——并查集及C++实现
  • 0.08B参数以小博大:用小模型生成媲美GPT-4o的古典诗词
  • 土壤温度传感器CG-03在实际应用中的价值体现
  • 刷题记录0804
  • AI小说创作工具体验:本地部署助力文学创作,Ollama+AIStarter一键搞定
  • 数据驱动建模——数据孪生继续
  • docker-compose一键部署Springboot+Vue前后端分离项目
  • 《Leetcode》-面试题-hot100-子串
  • 【Java 基础】transient 有什么作用?
  • 强反光场景误报率↓82%!陌讯多模态融合算法在贵重物品识别的技术突破​
  • 机器学习——决策树(DecisionTree)+ 过采样 + 交叉验证 案例:电信客户流失数据
  • FLutter 如何在跨平台下实现国际化多语言开发
  • Easysearch 集成阿里云与 Ollama Embedding API,构建端到端的语义搜索系统
  • python与C++
  • 【测试】⾃动化测试概念篇
  • (八)嵌入式系统
  • (三)软件架构设计
  • [自动化Adapt] GUI交互(窗口/元素) | 系统配置 | 非侵入式定制化
  • 回归预测 | MATLAB实现RBF径向基神经网络多输入单输出回归预测+SHAP可解释分析
  • 【网络安全】不安全的反序列化漏洞
  • 生成式人工智能展望报告-欧盟-06-深度调研-医疗、教育、网络安全
  • 量化大型语言模型的评估
  • Word2Vec 模型原理
  • 【科研绘图系列】R语言绘制解释度条形图的热图
  • JavaScript案例(待办事项列表)
  • 项目配置文件正确但是启动失败,报配置文件内容错误或中间件地址与实际不符
  • 蓝桥杯----AT24C02
  • 在Windows 11+I7+32GB内存+RTX 3060上部署Stable Diffusion 3.5 Medium详细步骤
  • 《Python 实用项目与工具制作指南》· 3.2 实战·开发密码管理器