|
首页
解决方案
新闻资讯
关于我们
联系我们
在线咨询
MIPI C/D-PHY测试解决方案
MIPI D-PHY/C-PHY码型产生器
MIPI C/D-PHY DSI/CSI总线协议分析仪
MIPI C/D-PHY点屏测试解决方案
LVDS多通道信号发生器测试解决方案
PV1通用型主动式探头
MIPI C/D-PHY Sensor/Camera图像攫取模组测试解决方案
DP/EDP测试解决方案
DP/EDP码型发生器(Pattern Generator)
DP/eDP总线协议分析仪(Protocol Analyzer)
USB4.0&DP 2.0 Rx Channle校准测试治具板
总线接口协议分析仪
I3C协议分析仪及训练器
UFS4.0/UFS3.1/Unipro总线协议分析仪
SolidGear SD/SDIO/eMMC协议分析仪
SD/eMMC协议符合性/一致性测试解决方案
UFS Compliance测试夹具
SoundWire Master/Slave Exerciser & Analyzer
SSD及SAN存储系统测试方案
SNIA协会SSD CTS/IPF标准性能测试平台
SD/SDIO/eMMC Minipod测试附件
Astek SSD/HDD快速检测仪
32-Bay SAS/SATA盘资料抹除仪
Astek PCIE Gen4 HBA卡
Storage Workload性能测试分析系统
DDR5/LPDDR5/RDIMM测试解决方案
DDR5 RCD/DB高速多通道误码测试仪 BERT
DDR5/LPDDR5/LPDDR5X总线协议分析
Introspect GDDR7测试解决方案
DDR5 RDIMM/MR-DIMM Module Test System
高速多通道误码测试仪/Serdes测试仪
DDR 4/5 DB/RCD高速多通道码型产生器
高速多通道误码测试仪BERT
高速多通道Serdes误码测试
ISI & Crosstalk高速信号完整性测试方案
ISI高速信号质量测试仪
Crosstalk高速信号质量测试仪
ISI Loss 标准测试治具板
WRT ISI and Cross-talk测试解决方案
半导体芯片及器件测试测量
Signatone半导体测试探针台
大功率器件老化测试系统
元器件ESD测试系统
半导体参数自动化测试软件
电阻率测试系统
高频差分多模探头
您当前位置:
首页
新闻资讯
公司动态
如何通过I3C测试MCTP?
MIPI I3C®协议正广泛的在digital control and sensing applications中使用。本文将重点探讨如何将I3C用作物理层,以支持由DMTF标准组织发布的管理组件传输协议(MCTP)。MCTP规范对于许多计算机和服务器架构来说是不可或缺的,因为它定义了系统管理控制器如何与受管理设备(如PCIe附加卡和磁盘驱动器)进行通信。随着I3C中最近添加了一个绑定机制,许多工程师目前正在研究如何在I3C上设计MCTP以及如何进行测试。
MCTP作为运输层
MCTP协议是一个字节对准的消息系统,它在现有的物理层和/或通信协议之上。这就是为什么它被称为传输层的原因 - 它仅定义构成(管理和控制)消息的字节,并且不能定义字节传输的方式。该概念在图1中在视觉上说明。
在上图中,灰色部分是诸如PCI Express(PCIE)之类的基础物理层的典型标头和页脚部分。橙色和绿色部分是由MCTP定义的有效载荷字节。对于基础物理层,MCTP数据包只是有效载荷字节,它们遵循物理层的相同编码和映射方案。
为了进一步解释,请想象一个系统主板,该系统主板包含通过PCIE插槽连接的固态磁盘驱动器。磁盘驱动器是MCTP上下文中的托管设备。并且,可以通过PCIE协议本身在CPU和磁盘驱动器之间运输MCTP控制消息。这在图2中示意性地说明了这一点。
现在,如果您曾经使用过PCIE,您会知道这是非常高的性能,高复杂性总线,因此最好将其用于最大速度执行真实的任务模式传输(例如从磁盘驱动器中读取大型文件),而不是将其用于系统管理。这就是为什么在许多实际实现中,MCTP协议通常会骑在其他更简单的物理层上,例如SMBUS。现在,随着最近的I3C绑定,MCTP协议愉快地骑在I3C物理层上!见图3。
MCTP如何在I3C中处理和读取消息
在本节中,我们描述了MCTP如何写入(从管理控制器到托管设备)并在I3C上构建(从托管设备)读取。
写消息
从I3C的角度来看,MCTP写作本质上是私人写作。控制器只需在I3C总线上创建起始条件,然后指定I3C目标设备(MCTP托管设备)的地址以及WRITE命令。当目标设备接收地址并将RNW位设置为零(表示写消息)时,它确认控制器(即它发送ACK响应)已准备好接收字节。然后,控制器继续发送其字节。这些字节将包含一些MCTP特定的结构,如图1所示,但是对于I3C总线,它们只是有效负载字节。
图4显示了I3C上的MCTP数据包封装。可以看出,第一个字节始终是固定的(包含一些保留位和版本信息)。第二个字节包含目标端点ID(EID),依此类推。这些字节的定义在MCTP协议规范中有充分记录,因此在此不重复。请注意,在完成MCTP数据包完成后,I3C协议发送了一个数据包错误代码(PEC)字节,MCTP协议仅要求该字节以确保鲁棒性。
读消息
MCTP读取消息比写作要复杂一些,这主要是因为托管设备可能需要一些时间来响应控制器的读取命令。因此,阅读操作通常依赖于I3C的带内中断(IBI)功能。这是一个创新的功能,它允许外围设备(即托管设备)在想要发送数据时通知控制器。
想象一下,控制器正在执行初始的MCTP发现,并想知道外围的MCTP版本。在这种情况下,控制器将通过一个名为“ GET MCTP版本支持”的命令发送MCTP控制数据包(即图4中的“消息类型”字段,对应于MCTP控制消息)。外围设备将在其内部发射缓冲区中准备响应字节。然后,按照其意愿以及准备响应,它将向控制器发出IBI请求。控制器收到IBI请求后,它将启动一条私人读取消息,以根据I3C协议从外围的读取字节中检索读取字节。
上面的读取示例在图5中以图形方式说明。请注意,IBI请求包括一个强制性数据字节(MDB),其值为MCTP数据包保留。
如果目标设备不支持IBI,则MCTP中的另一种阅读方式是通过轮询。简而言之,控制器一直试图从外围读取(例如,通过发送I3C私有读取命令)来读取,直到外围用ACK响应并使用读取数据进行响应。
无论如何执行读取操作(通过IBI或轮询),MCTP消息的封装始终基于图1的封装。
高级主题
I3C协议上的MCTP包含其他功能,例如对HUB设备的支持以及对热插头设备的支持。这些功能超出了本文的范围,但是I3C协议对它们的支持非常无缝!例如,当将热插入外围设备插入实时系统时,它可以发出I3C热加入中断,并且控制器将能够识别它并为其分配一个动态地址。
通过I3C测试MCTP
SV6E-X中频数字测试模块是Intospect的屡获殊荣的解决方案,用于测试和验证I3C接口以及从中衍生的界面。自然,它能够轻松支持MCTP协议。例如,要将SV6E-X用作控制器并将MCTP消息生成正在测试的托管设备,只需使用以下命令:controllerDevice.doprivateWrite(外围address,mctppacketbytes)
如果可变mctppacketbytes是包含一个字节序列的python列表。这些字节是根据图4中的格式构造的。
同样,SV6E-X可以充当测试控制器设备的外围。在这种情况下,可以在以下代码示例中进行控制器MCTP消息传输的外围信息:
targetDevice.SetReadResponseBufferData(mctpperipheralpacketbytes)
targetParams1.ibimandorationbyte = 0xae
targetDevice.update()
targetDevice.Requestibi()
最后,SV6E-X可以用作协议分析仪和实时示波器,并且这些功能都可用于MCTP测试。
总结
在本文中,我们介绍了MCTP协议以及它是如何被封装在MIPI I3C协议之上的。我们还展示了MCTP数据包字节的格式化方式,以创建控制器向外围设备发送的写入消息。此外,我们也展示了外围设备如何通过带内中断通知控制器其已准备好发送读取数据,从而使控制器能够在之后发出私有的读取消息以从外围设备中提取数据。最后,我们介绍了SV6E-X中频数字测试模块,并展示了它如何自然地支持通过I3C进行的MCTP测试。
上一篇:
当你探测DDR5 RDIMM 24小时会发生什么?
下一篇:
无
相关资讯
CTS测试套件的功能
关于Introspect MIPI D-PHY/C-PHY码型发生器(Patte...
Introspect eDP Analyzer
为了推动全球创新,任何产品设计都强调在提供高性能的同时节省功耗。 就移动显示效率...
Instrospect 推出全球首个 GDDR7 显存测试系统
Instrospect 推出全球首个 GDDR7 显存测试系统固态技术协会 JE...
什么是MIPI SoundWire
MIPI SoundWire 是一种音讯接口,由 MIPI联盟音讯工作小组开发,...