一种高速串行总线带宽测试装置及方法与流程

文档序号:26139339发布日期:2021-08-03 14:22阅读:175来源:国知局
一种高速串行总线带宽测试装置及方法与流程

本发明属于服务器测试技术领域,具体涉及一种高速串行总线带宽测试装置及方法。



背景技术:

pcie总线是服务器最为常见的外围总线之一,pcie总线具有速率高、容错率好、拓展方便等优势,经过几代迭代,形成了完整的产业链。服务器领域的多种外设均通过pcie总线进行拓展。

pcie设备在设计和测试阶段,经常会出现降带宽的问题,现有测试方法无法对这种状况进行测试。



技术实现要素:

针对现有技术的上述不足,本发明提供一种高速串行总线带宽测试装置及方法,以解决上述技术问题。

本发明提供一种高速串行总线带宽测试装置,所述装置包括:

可编程逻辑器件、单片机、上位机、第一连接器和第二连接器;第一连接器、第二连接器和单片机均与可编程逻辑器件连接;单片机与上位机连接;第一连接器连接服务器端的标准接口;第二连接器连接存储设备。

进一步的,所述可编程逻辑器件与第一连接器之间具有多个输入通道,所述可编程逻辑器件连接有所述多个输入通道对应的指示灯。

进一步的,所述可编程逻辑器件与第二连接器之间具有多个输出通道,所述可编程逻辑器件连接有所述多个输出通道对应的指示灯。

进一步的,所述单片机与所述可编程逻辑器件通过简单、双向二线制同步串行总线连接。

进一步的,所述单片机通过串行通信结果连接上位机。

本发明还提供一种高速串行总线带宽测试方法,所述方法包括:

可编程逻辑器件接收单片机写入的配置信息;

可编程逻辑器件从所述配置信息中提取各通信通道对应的控制寄存器地址;

可编程逻辑器件通过修改对应控制寄存器地址的控制值对通信通道的通断状态进行控制。

进一步的,所述方法还包括:

单片机初始化内部时钟和管脚资源;

单片机接收上位机发送的配置信息;

单片机根据所述配置信息配置可编程逻辑器件的信息。

本发明的有益效果在于,

本发明提供的高速串行总线带宽测试装置及方法,从硬件角度可以实现pcie设备带宽的压测,增强系统的稳定性。

此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请一个实施例的装置的结构示意图。

图2是本申请一个实施例的装置的单片机运行流程图。

具体实施方式

为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。

在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”等的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。

在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以通过具体情况理解上述术语在本发明中的具体含义。

下面将参考附图并结合实施例来详细说明本发明。

实施例1

请参考图1,本实施例提供一种高速串行总线带宽测试装置,包括:

可编程逻辑器件、单片机、上位机、第一连接器和第二连接器;第一连接器、第二连接器和单片机均与可编程逻辑器件连接;单片机与上位机连接;第一连接器连接服务器端的标准接口;第二连接器连接存储设备。其中,第一连接器为downstream连接器,第二连接器为upstream连接器。

downstream连接器为主板端的连接器,为共有16条lane,连接服务器端的标准接口;upstream连接器为标准pcie的x16slot,连接标卡的金手指;downstream和upstream的信号均从fpga上引出,系统上电时,fpga作为switch链接测试卡和cpu,并可以按照既定的测试pattern进行带宽变化,并且复位服务器,使pciedevice和cpu重新进行协商,从而完成压测动作。

通过iic总线实现测试pattern参数传输的方法如下。

单片机作为master,fpga作为slave,单片机通过iic写操作将配置写入fpga。fpga通过编程将deviceaddress设置为0x1,在fpga内部定义25个控制寄存器地址(相当于iic的wordaddress),控制寄存器地址pattern_num从0x00到0x18,后续直接定义为pattern_num[24:0],其中每个控制寄存器地址有3个8bit的data,后续直接定义为data[23:0]。

pattern_num[0]为x24port的控制器,对应的data[23:0]=0x0时,port处于disable状态,对应的data[23:0]=0x1时,port出于enable状态。

pattern_num[24:1]分别控制24条lane的通断情况,举例来讲:如果

pattern_num[1]对应的data[23:0]=24’b000000000000000000000001则:打开lane0,其余lane关闭

pattern_num[2]对应的data[23:0]=24’b000000000000000000000010则:打开lane1,其余lane关闭

pattern_num[3]对应的data[23:0]=24’d000000000000000000001111则:打开lane0-3,关闭其它lane

(三)上位机通过rs-232传输配置给单片机的实现方法

上位机和单片机进行串口通信,往往借助于usb转串口的fifo,这一部分不是重点,不再赘述。

整个通信过程包括26个字节,第1个字节为“开始标志”,固定为8’b10101010,第26个字节为“结束标志”,固定为8’b01010101,第2~25共24个字节为具体pattern的配置字节。

相应的,高速串行总线带宽测试方法,所述方法包括:

可编程逻辑器件接收单片机写入的配置信息;

可编程逻辑器件从所述配置信息中提取各通信通道对应的控制寄存器地址;

可编程逻辑器件通过修改对应控制寄存器地址的控制值对通信通道的通断状态进行控制。

单片机运行流程如图2所示,包括:

单片机初始化内部时钟和管脚资源;

检测上位机开始通信标志;

单片机接收上位机发送的配置信息;

检测上位机结束通信标志;

点亮上位机我收成功指示灯;

单片机根据所述配置信息配置可编程逻辑器件的信息;

点亮与可编程逻辑器件握手成功指示灯。

尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1