AXI Memory Mapped to PCI Express 学习笔记(五)—— Test Bench

news2024/12/27 10:45:55

本文包含有关Vivado Design Suite环境中提供的测试平台(Test Bench)的信息。

一、Endpoint的Root Port模型测试平台

PCI Express Root Port Model是一个强大的测试平台环境,它提供了一个测试程序接口,可以与提供的PIO设计(Programmed Input-Output,指的是可编程输入输出。在PCIe通信中,数据传送由CPU执行I/O端口指令来按照字节或更大的数据单位来处理)或用户设计一起使用。Root Port Model的目的是提供一个源机制,用于生成下游PCI Express TLP(事务层数据包)流量以便对设计进行仿真,并提供一个目标机制,用于在仿真环境中接收来自设计的上游PCI Express TLP流量。
源代码中包含Root Port Model,这是为测试平台提供起点模型。所有关于初始化配置空间、创建TLP事务、生成TLP日志以及提供创建和验证测试的接口的重要工作都已经完成,这方便设计师将精力集中在验证设计的正确功能上,而不是花费时间在开发Endpoint core测试平台基础设施上。
Root Port Model包括以下内容:
• 测试程序接口(TPI),这是为了模拟模型中的Endpoint设备。
• 示例测试,说明如何使用测试程序TPI。
图1展示了Root Port Model与PIO设计相结合的情景。
在这里插入图片描述

二、架构

Root Port Model主要由以下模块组成,这些模块在图6-1中进行了说明:
• dsport(Root Port)
• usrapp_tx
• usrapp_rx
• usrapp_com(仅Verilog)
usrapp_tx和usrapp_rx模块与dsport模块进行接口连接,以便向待测试的Endpoint Design Under Test (DUT)发送和接收TLPs(事务层数据包)。Endpoint DUT包括AXI-PCIe的Endpoint和Block RAM控制器设计(Figure 6-1中已展示)或用户设计。
usrapp_tx模块将TLPs发送到dsport模块,以便通过PCI Express链路传输到Endpoint DUT。反过来,Endpoint DUT设备通过PCI Express链路将TLPs传输到dsport模块,然后这些TLPs被传递给usrapp_rx模块。在通过PCI Express逻辑进行通信时,dsport和core负责数据链路层和物理链路层的处理。usrapp_tx和usrapp_rx都使用usrapp_com模块来执行共享功能,例如TLP处理和日志文件输出。
事务序列或测试程序由usrapp_tx模块发起,以模拟Endpoint设备的逻辑接口。来自Endpoint设备的TLP响应由usrapp_rx模块接收。usrapp_tx和usrapp_rx模块之间的通信允许usrapp_tx模块验证Endpoint设备的正确行为,并在usrapp_rx模块从Endpoint设备接收到TLPs时相应地采取行动。
通过这种架构和机制,测试人员能够精确地控制测试流程,并实时地验证Endpoint设备的响应是否符合预期。

三、Root Port的Endpoint模型测试平台

Root Port配置中AXI Memory Mapped to PCI Express core的Endpoint模型测试平台是一个简单的示例测试平台,它连接Configurator示例设计和PCI Express Endpoint模型,使两者像物理系统中的两个设备一样运行。由于Configurator示例设计包含初始化自身的逻辑以及生成和消耗总线流量的逻辑,因此示例测试平台仅实现了用于监控系统运行和终止仿真的逻辑。
Endpoint模型测试平台包含以下部分:
• 所有Endpoint模型组件的Verilog源代码
• PIO从设备设计
在这里插入图片描述
PIO从设备设计通常指的是一个可编程输入/输出(PIO)的接口,它作为PCI Express Endpoint的一个组件,允许主机(或Root Port)访问和控制Endpoint的某些功能或资源。PIO从设备设计通常包括逻辑来解码传入的TLPs,识别它们是否是针对PIO空间的请求,并执行相应的读写操作。在测试平台中,PIO从设备设计将模拟Endpoint的PIO接口,并与Configurator示例设计进行交互,以验证PIO操作的正确性。
测试平台通过配置和连接这些组件,能够模拟一个完整的PCI Express通信环境,从而验证Endpoint设计的正确性和性能。通过监控仿真过程中的系统行为,测试人员可以收集有关Endpoint模型如何响应不同TLPs的信息,并检查是否有任何错误或不符合预期的行为。

四、架构

Endpoint模型由以下模块组成:
• PCI Express Endpoint(在Endpoint配置中AXI Memory Mapped to PCI Express)模型。
• PIO从设备设计,包括:
pio_rx_engine(PIO接收引擎)
pio_tx_engine(PIO发送引擎)
pio_ep_mem(PIO端点内存)
pio_to_ctrl(PIO到控制器的接口)
pio_rx_engine和pio_tx_engine模块与ep模块进行接口连接,用于从Root Port DUT接收和发送TLPs(事务层数据包)。Root Port DUT由配置为Root Port的core以及Block RAM控制器组成,同时包含σ_αξι和s_axi_ctl模型,用于在s_axi和s_axi_ctl上驱动流量。
PIO从设备设计提供了与Root Port进行通信的接口,使得Endpoint能够响应来自Root Port的PIO读写请求。pio_rx_engine负责接收来自Root Port的PIO读请求,并协调从Endpoint内存中读取相应的数据,然后通过pio_tx_engine发送回Root Port。相反,当Root Port发起PIO写请求时,pio_rx_engine接收TLPs,并将数据写入Endpoint内存。
PIO从设备设计还包括pio_ep_mem,它代表Endpoint的内存空间,并存储PIO操作所需的数据。pio_to_ctrl模块可能用于管理PIO操作的控制逻辑,确保PIO引擎与Endpoint内存之间的数据一致性。
通过这种架构,Endpoint模型能够模拟一个真实的PCI Express Endpoint设备,并与Root Port DUT进行交互,以验证PIO操作的功能性和性能。这有助于测试人员确保Endpoint模型在PCI Express通信环境中的正确性和可靠性,为进一步的集成和验证工作奠定基础。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1550945.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【技术】实现MES系统与其他系统集成的关键步骤和技术

在当今数字化的制造环境中,MES系统(制造执行系统)已成为企业提高生产效率和管理水平的重要工具。然而,要实现MES系统与其他系统的集成,充分发挥其潜力,并非易事。本文将探讨实现MES系统与其他系统集成的关键…

Matplotlib数据可视化实战-2绘制折线图(2)

2.11营业额可视化 已知某学校附近一个烧烤店2022年每个月的营业额如下图所示。编写程序绘制折线图对该烧烤店全年营业额进行可视化,使用红色点画线连接每个月的数据,并在每个月的数据处使用三角形进行标记。 烧烤店营业额 月份123456789101112营业额/万…

8.HelloWorld小案例

文章目录 一、Java程序开发运行流程如何理解编译? 二、HelloWorld案例的编写1、新建文本文档文件,修改名称为HelloWorld.java。2、用记事本打开HelloWorld.java文件,输写程序内容。代码要跟我编写的完全保持一致。3、ctrl s 保存&#xff0c…

基于springboot实现图书个性化推荐系统项目【项目源码+论文说明】

基于springboot实现图书个性化推荐系统演示 摘要 本论文主要论述了如何使用JAVA语言开发一个图书个性化推荐系统,本系统将严格按照软件开发流程进行各个阶段的工作,采用B/S架构,面向对象编程思想进行项目开发。在引言中,作者将论…

【vue3学习笔记(二)】(第141-143节)初识setup;ref函数_处理基本类型;ref函数_处理对象类型

尚硅谷Vue2.0Vue3.0全套教程丨vuejs从入门到精通 本篇内容对应课程第141-143节 课程 P141节 《初识setup》笔记 1、setup是所有组合式API“表演的舞台”,组件中所用到的所有数据、方法、监视数据、生命周期钩子等都需要配置在setup中。 2、setup的两种返回值&…

技术导读 | 如何为SecOps插上AI的翅膀

随着数字经济的蓬勃发展,数据安全和网络安全的重要性日益凸显。在数字经济时代,数据已成为企业的核心资产,而网络安全则是保障数据安全的基石。然而,面对不断变化的攻击模式、扩大的攻击面以及日益复杂的安全事件,许多…

国内IP切换软件:解锁网络世界的新钥匙

在数字化快速发展的今天,互联网已成为我们生活中不可或缺的一部分。然而,伴随着网络使用的深入,许多用户逐渐意识到,不同的IP地址可能会带来截然不同的网络体验。为了应对这一问题,国内IP切换软件应运而生,…

阿里云倚天服务器是什么?倚天服务器c8y、g8y和r8y详细介绍

阿里云倚天云服务器CPU采用倚天710处理器,租用倚天服务器c8y、g8y和r8y可以享受优惠价格,阿里云服务器网aliyunfuwuqi.com整理倚天云服务器详细介绍、倚天710处理器性能测评、CIPU架构优势、倚天服务器使用场景及生态支持: 阿里云倚天云服务…

证书(公钥):网络安全的关键

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

【软考】UML中的图之状态图

目录 1. 说明2. 图示 1. 说明 1.状态图(State Diagram)展现了一个状态机。2.由状态、转换、事件和活动组成。3.关注系统的动态视图。4.对于接口、类和协作的行为建模尤为重要。5.强调对象行为的事件顺序。6.通常包括简单状态和组合状态、转换&#xff0…

TensorRT的两种INT8量化方式: QTA, PTQ

TensorRT的两种INT8量化方式: QTA, PTQ 深度学习 (DL) 模型的训练阶段包括学习大量密集的浮点权重矩阵,这导致推理过程中需要进行大量的浮点计算。 研究表明,可以通过强制某些权重为零来跳过其中许多计算,而对最终精度的影响很小。 与此同时…

【学习】企业申请DCMM原来有这么多的好处

DCMM,即数据管理能力成熟度评估模型(Data management Capability Maturity Model),是我国在数据管理领域首个正式发布的国家标准。DCMM的核心目的是帮助企业利用先进的数据管理理念和方法,建立和评价自身的数据管理能力…

JAVA------基础篇

java基础 1.JDK JDK :java development kit JRE:java runtime environment JDK包含JRE java跨平台:因为java程序运行依赖虚拟机,虚拟机需要有对应操作系统的版本,而jre中有虚拟机。 当你想要在Linux系统下运行,则需要…

U盘未格式化?数据恢复大揭秘!

在日常办公和生活中,U盘已成为我们不可或缺的数据存储工具。然而,有时我们会遇到这样一个令人头疼的问题:原本正常使用的U盘,突然提示“未格式化”,里面的文件似乎都消失不见了。面对这种情况,很多人会感到…

[2021]Zookeeper getAcl命令未授权访问漏洞概述与解决

今天在漏洞扫描的时候蹦出来一个zookeeper的漏洞问题,即使是非zookeeper的节点,或者是非集群内部节点,也可以通过nc扫描2181端口,获取极多的zk信息。关于漏洞的详细描述参考apache zookeeper官方概述:CVE-2018-8012: A…

FPGA时钟资源详解(2)——Clock-Capable Inputs

FPGA时钟系列文章总览:FPGA原理与结构(14)——时钟资源https://ztzhang.blog.csdn.net/article/details/132307564 目录 一、概述 1.1 为什么使用CC 1.2 如何使用CC 二、Clock-Capable Inputs 2.1 SRCC 2.2 MRCC 2.3 其他用途 2.3.1…

Day23 代码随想录(1刷) 二叉树

669. 修剪二叉搜索树 给你二叉搜索树的根节点 root ,同时给定最小边界low 和最大边界 high。通过修剪二叉搜索树,使得所有节点的值在[low, high]中。修剪树 不应该 改变保留在树中的元素的相对结构 (即,如果没有被移除,原有的父代…

安踏,步入“高端化”的甜蜜陷阱

文丨黄小艺 2023年3月14日,徐阳重回安踏担任CEO的第二天,就颇为急切地拉了一场高层会议。 面对在场的安踏老人们,徐阳提了两个很终极的问题,“是什么让过去30年的安踏获得了成功?”“未来30年,如果安踏想…

mysql80-DBA数据库学习1-数据库安装

掌握能力 核心技能 核心技能 mysql部署 官网地址www.mysql.com 或者www.oracle.com https://dev.mysql.com/downloads/repo/yum/ Install the RPM you downloaded for your system, for example: yum install mysql80-community-release-{platform}-{version-number}.noarch…

智慧公厕的技术融合策略

智慧公厕是迎合现代城市发展需要的一项重要基础设施,其设计的技术融合策略在实现公共厕所泛在感知、互通互联、协同构筑智慧城市等方面起到了关键作用。本文将以智慧公厕源头实力厂家广州中期科技有限公司,大量精品案例现场实景实图实例,从物…