CN112416683B - 一种pcie卡异步高性能测试方法和系统 - Google Patents
一种pcie卡异步高性能测试方法和系统 Download PDFInfo
- Publication number
- CN112416683B CN112416683B CN202011362795.2A CN202011362795A CN112416683B CN 112416683 B CN112416683 B CN 112416683B CN 202011362795 A CN202011362795 A CN 202011362795A CN 112416683 B CN112416683 B CN 112416683B
- Authority
- CN
- China
- Prior art keywords
- dma
- bar
- test
- thread
- speed
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2221—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test input/output devices or peripheral units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2273—Test methods
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
Abstract
本发明提供一种PCIE卡异步高性能测试方法和系统。该方法包括:将PCIE卡通过物理接口插接于测试主机上,PCIE卡包括n个DMA高速通道、q个BAR低速通道以及配置空间;测试主机启动PCIE卡配置空间监控线程;测试主机基于DMA高速通道的数量n启动n个DMA测试线程组,并基于BAR低速通道的数量q启动q个BAR测试线程组;通过n个DMA测试线程组异步测试各个DMA高速通道处理数据的准确性,并通过q个BAR测试线程组异步测试各个BAR低速通道处理数据的准确性;在n个DMA测试线程组和q个BAR测试线程组中,如果有超过预设阈值的测试线程组反馈DMA高速通道或BAR低速通道处理数据出错时,则判定PCIE卡的数据处理性能不合格,反之,则判定PCIE卡的数据处理性能合格。
Description
技术领域
本发明涉及测试技术领域,尤其涉及一种PCIE卡异步高性能测试方法和系统。
背景技术
目前许多硬件设备(例如:PCIE卡)在开发完成后都需要进行性能测试。由于PCIE卡内通常会配置有多个DMA高速通道和BAR低速通道,在对PCIE卡的性能测试时,不仅需要考虑测试单个DMA通道的极限速度,还需要考虑多个DMA高速通道和多个BAR低速通道并行混合场景下的稳定性,然而传统的测试方式(例如CN 110837445 A公开的PCIe卡测试装置及其方法)却很少考虑到上述各方面测试内容,有鉴于此,急需要提供一种更加合理、更为全面的测试架构来应对PCIE卡的测试需求。
发明内容
针对传统的PCIE卡测试方式存在的测试内容单一的问题,本发明提供一种一种PCIE卡异步高性能测试方法和系统。
一方面,本发明提供一种PCIE卡异步高性能测试方法,该方法包括:
步骤1:将PCIE卡通过物理接口插接于测试主机上,其中所述PCIE卡包括n个DMA高速通道、q个BAR低速通道以及配置空间,所述配置空间用于存储所述PCIE卡标识信息、DMA高速通道的数量n、BAR低速通道的数量q;
步骤2:所述测试主机启动PCIE卡配置空间监控线程,并识别到PCIE卡配置空间中的PCIE卡标识信息、DMA高速通道的数量n、BAR低速通道的数量q;
步骤3:所述测试主机基于DMA高速通道的数量n启动n个DMA测试线程组,并基于BAR低速通道的数量q启动q个BAR测试线程组,其中,n个DMA测试线程组与n个DMA高速通道一一对应,q个BAR测试线程组与q个BAR低速通道一一对应;
步骤4:通过n个DMA测试线程组异步测试各个DMA高速通道处理数据的准确性,并通过q个BAR测试线程组异步测试各个BAR低速通道处理数据的准确性;
步骤5:在n个DMA测试线程组和q个BAR测试线程组中,如果有超过预设阈值的测试线程组反馈DMA高速通道或BAR低速通道处理数据出错时,则判定所述PCIE卡的数据处理性能不合格,反之,则判定所述PCIE卡的数据处理性能合格。
进一步地,每个DMA测试线程组包括用于向DMA高速通道发送测试数据的DMA发送线程和用于接收响应数据的DMA接收线程,每个BAR测试线程组包括用于向BAR低速通道发送测试数据的BAR发送线程和用于接收响应数据的BAR接收线程。
进一步地,所述步骤4具体包括:
步骤4.1:由DMA发送线程发送DMA测试数据给对应的DMA高速通道,并由BAR发送线程发送BAR测试数据给对应的BAR低速通道;
步骤4.2:对应的DMA高速通道接收所述DMA测试数据并进行透传或处理后,返回DMA响应数据给对应的DMA接收线程;同时,对应的BAR低速通道接收到所述BAR测试数据并进行透传或处理后,返回BAR响应数据给对应的BAR接收线程;
步骤4.3:对应的DMA接收线程接收到所述DMA响应数据并将其与标准的DMA响应数据作比对,如果一致,则判定所述DMA高速通道能够准确处理数据,反之,则判定所述DMA高速通道无法准确处理数据;同时,对应的BAR接收线程接收到所述BAR响应数据并将其与标准的BAR响应数据作比对,如果一致,则判定所述BAR低速通道能够准确处理数据,反之,则判定所述BAR低速通道无法准确处理数据。
进一步地,其特征在于,在所述步骤5之后,还包括:
步骤6:待判定所述PCIE卡的数据处理性能合格后,通过各个DMA测试线程组分别测试对应的DMA高速通道的极限速度,并通过各个BAR测试线程组分别测试对应的BAR低速通道的极限速度。
进一步地,所述步骤6中,通过各个DMA测试线程组分别测试对应的DMA高速通道的极限速度,具体包括:
步骤6.1:由DMA发送线程按照预设的初始频率重复向对应的DMA高速通道发送DMA测试数据,并使所述DMA高速通道进行频繁处理返回DMA响应数据给对应的DMA接收线程;
步骤6.2:如果对应的DMA接收线程能够在预设的延时范围内接收到正确的DMA响应数据,则促使所述DMA发送线程在所述初始频率的基础上进行增量,并进行重新测试;
步骤6.3:重复步骤6.2,直至对应的DMA接收线程无法在预设的延时范围内接收到正确的DMA响应数据,即可确定出所述DMA高速通道的极限速度。
进一步地,所述步骤6中,通过各个BAR测试线程组分别测试对应的BAR低速通道的极限速度,具体包括:
步骤6.4:由BAR发送线程按照预设的初始频率重复向对应的BAR低速通道发送BAR测试数据,并使所述BAR低速通道进行频繁处理返回BAR响应数据给对应的BAR接收线程;
步骤6.5:如果对应的BAR接收线程能够在预设的延时范围内接收到正确的BAR响应数据,则促使所述BAR发送线程在所述初始频率的基础上进行增量,并进行重新测试;
步骤6.6:重复步骤6.5,直至对应的BAR接收线程无法在预设的延时范围内接收到正确的BAR响应数据,即可确定出所述BAR低速通道的极限速度。
进一步地,在所述步骤6之后,还包括:
步骤7:待确定DMA高速通道和BAR低速通道的极限速度后,通过各个DMA测试线程组和各个BAR测试线程组分别按照各自的极限速度与对应的DMA高速通道和BAR低速通道进行数据传输,以测试所述PCIE卡的稳定性是否合格。
进一步地,所述步骤7具体包括:
步骤7.1:通过所有的DMA发送线程与所有的BAR发送线程分别按照各自的极限速度异步向对应的DMA高速通道与BAR低速通道频繁发送测试数据;
步骤7.2:对应的DMA高速通道与BAR低速通道分别对测试数据进行透传或处理后,返回响应数据给对应的DMA接收线程与BAR接收线程;
步骤7.3:在预设的时间段内,若所有的DMA接收线程与BAR接收线程均能接收到正确的响应数据,则判定所述PCIE卡的稳定性合格,反之,则判定所述PCIE卡的稳定性不合格。
进一步地,还包括:在测试过程中,将所述PCIE卡的执行状态记录在所述配置空间;所述测试主机的PCIE卡配置空间监控线程监控到所述PCIE卡的执行状态后,根据所述执行状态调整测试结果。
进一步地,还包括:在测试过程中,若其中的一个或多个DMA高速通道或BAR低速通道对依序接收的测试数据进行透传或处理后所返回的响应数据出现乱序,则将乱序信息记录在所述配置空间;所述测试主机的PCIE卡配置空间监控线程监控到所述乱序信息后,根据所述乱序信息对接收到的多个响应数据的序号进行调整,并基于序号调整后的响应数据进行性能评估。
另一方面,本发明实施例提供一种PCIE卡异步高性能测试系统,包括:测试主机和PCIE卡,当需要对PCIE卡进行测试时,将所述PCIE卡通过物理接口插接于测试主机上;
所述PCIE卡,包括n个DMA高速通道、q个BAR低速通道以及配置空间,所述配置空间用于存储所述PCIE卡标识信息、DMA高速通道的数量n、BAR低速通道的数量q;
所述测试主机,包括PCIE卡配置空间监控线程,所述PCIE卡配置空间监控线程用于识别PCIE卡配置空间中的PCIE卡标识信息、DMA高速通道的数量n、BAR低速通道的数量q;基于DMA高速通道的数量n启动n个DMA测试线程组,并基于BAR低速通道的数量q启动q个BAR测试线程组,其中,n个DMA测试线程组与n个DMA高速通道一一对应,q个BAR测试线程组与q个BAR低速通道一一对应;所述测试主机通过n个DMA测试线程组以及q个BAR测试线程组测试所述PCIE卡的性能。
进一步地,每个DMA高速通道包括至少一个DMA功能模块,对应于每个DMA高速通道的DMA测试线程组包括对应于各个DMA功能模块的DMA发送线程和DMA接收线程。
本发明的有益效果:
(1)可以实现对PCIE卡的全面性能进行测试,并能一次性对PCIE卡的所有功能进行测试,减少了测试次数,提高了测试效率。另外,本发明基于被测PCIE卡的DMA高速通道数量以及BAR低速通道数量来启动对应数量的测试线程组,能够适用于测试更多品类的PCIE卡,具有广泛的适用性;
(2)可以测试得到在多个DMA高速通道并行场景下的单个DMA高速通道的极限速度;可以测试得到在多个BAR低速通道并行场景下的单个BAR低速通道的极限速度;可以测试得到在多个DMA高速通道和多个BAR低速通道并行混合场景下的单个DMA高速通道或BAR低速通道的极限速度;
(3)可以测试得到多个DMA高速通道和多个BAR低速通道并行混合场景下的稳定性;
(4)通过配置空间记录PCIE卡在测试交互过程中的执行状况,测试主机的PCIE卡配置空间监控线程能够实时监控PCIE卡的执行状况,进而可以对乱序的响应数据进行序号调整,并基于序号调整后的响应数据进行正确性评估,从而避免因测试主机不能及时与被测PCIE卡同步执行状态而导致误测的现象。
附图说明
图1为本发明实施例提供的一种PCIE卡异步高性能测试方法的流程图;
图2为本发明实施例提供的一种PCIE卡异步高性能测试系统的框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明测试PCIE卡的性能主要包括功能正确性和稳定性;以上这些性能具体表征如下:
功能正确性:PCIE卡上DMA、BAR模块内部各项功能是否正确无误;
稳定性:PCIE卡异步高性能测试场景下,长时间无异常稳定运行。
实施例1
如图1所示,本发明实施例提供一种PCIE卡异步高性能测试方法,所述方法包括以下步骤:
S101:将PCIE卡通过物理接口插接于测试主机上,其中所述PCIE卡包括n个DMA高速通道、q个BAR低速通道以及配置空间,所述配置空间用于存储所述PCIE卡标识信息、DMA高速通道的数量n、BAR低速通道的数量q;
S102:所述测试主机启动PCIE卡配置空间监控线程,并识别到PCIE卡配置空间中的PCIE卡标识信息、DMA高速通道的数量n、BAR低速通道的数量q;
S103:所述测试主机基于DMA高速通道的数量n启动n个DMA测试线程组,并基于BAR低速通道的数量q启动q个BAR测试线程组,其中,n个DMA测试线程组与n个DMA高速通道一一对应,q个BAR测试线程组与q个BAR低速通道一一对应;
S104:通过n个DMA测试线程组异步测试各个DMA高速通道处理数据的准确性,并通过q个BAR测试线程组异步测试各个BAR低速通道处理数据的准确性;
S105:在n个DMA测试线程组和q个BAR测试线程组中,如果有超过预设阈值的测试线程组反馈DMA高速通道或BAR低速通道处理数据出错时,则判定所述PCIE卡的数据处理性能不合格,反之,则判定所述PCIE卡的数据处理性能合格。
本发明实施例提供的一种PCIE卡异步高性能测试方法,基于被测PCIE卡的DMA高速通道数量以及BAR低速通道数量来启动对应数量的测试线程组,可以同时测试对PCIE卡上DMA、BAR通道的各项功能的正确性,减少了测试次数,提高了测试效率,并且能够适用于测试更多品类的PCIE卡,具有广泛的适用性。
实施例2
在上述实施例1的基础上,本发明实施例与上述实施例的不同之处在于,本实施例对步骤S104中的测试过程作了进一步优化,每个DMA测试线程组包括用于向DMA高速通道发送测试数据的DMA发送线程和用于接收响应数据的DMA接收线程,每个BAR测试线程组包括用于向BAR低速通道发送测试数据的BAR发送线程和用于接收响应数据的BAR接收线程,具体为:
S1041:由DMA发送线程发送DMA测试数据给对应的DMA高速通道,并由BAR发送线程发送BAR测试数据给对应的BAR低速通道;
S1042:对应的DMA高速通道接收所述DMA测试数据并进行透传或处理后,返回DMA响应数据给对应的DMA接收线程;同时,对应的BAR低速通道接收到所述BAR测试数据并进行透传或处理后,返回BAR响应数据给对应的BAR接收线程;
S1043:对应的DMA接收线程接收到所述DMA响应数据并将其与标准的DMA响应数据作比对,如果一致,则判定所述DMA高速通道能够准确处理数据,反之,则判定所述DMA高速通道无法准确处理数据;同时,对应的BAR接收线程接收到所述BAR响应数据并将其与标准的BAR响应数据作比对,如果一致,则判定所述BAR低速通道能够准确处理数据,反之,则判定所述BAR低速通道无法准确处理数据。
实施例3
为了测试PCIE卡的极限速度,本发明实施例还提供一种PCIE卡异步高性能测试方法,与上述各实施例的不同之处在于,本实施例还包括以下步骤:
S106:待判定所述PCIE卡的数据处理性能合格后,通过各个DMA测试线程组分别测试对应的DMA高速通道的极限速度,并通过各个BAR测试线程组分别测试对应的BAR低速通道的极限速度。
作为一种可实施方式,通过各个DMA测试线程组分别测试对应的DMA高速通道的极限速度,具体包括:
S1061:由DMA发送线程按照预设的初始频率重复向对应的DMA高速通道发送DMA测试数据,并使所述DMA高速通道进行频繁处理返回DMA响应数据给对应的DMA接收线程;
S1062:如果对应的DMA接收线程能够在预设的延时范围内接收到正确的DMA响应数据,则促使所述DMA发送线程在所述初始频率的基础上进行增量,并进行重新测试;
S1063:重复步骤S1062,直至对应的DMA接收线程无法在预设的延时范围内接收到正确的DMA响应数据,即可确定出所述DMA高速通道的极限速度。
在本发明实施例中,所述DMA高速通道的极限速度,即是所述DMA高速通道能够承受的所述DMA发送线程最大的发包频率。可以理解,一旦所述DMA发送线程超过所述最大的发包频率,则所述DMA高速通道则容易出现丢包、处理异常等问题。因此在测得所有DMA高速通道的极限速度后,以便于更加全面了解所述PCIE卡的性能。
作为一种可实施方式,通过各个BAR测试线程组分别测试对应的BAR低速通道的极限速度,具体包括:
S1064:由BAR发送线程按照预设的初始频率重复向对应的BAR低速通道发送BAR测试数据,并使所述BAR低速通道进行频繁处理返回BAR响应数据给对应的BAR接收线程;
S1065:如果对应的BAR接收线程能够在预设的延时范围内接收到正确的BAR响应数据,则促使所述BAR发送线程在所述初始频率的基础上进行增量,并进行重新测试;
S1066:重复步骤S1065,直至对应的BAR接收线程无法在预设的延时范围内接收到正确的BAR响应数据,即可确定出所述BAR低速通道的极限速度。
本发明实施例提供的一种PCIE卡异步高性能测试方法,可以测试得到在多个DMA高速通道并行场景下的单个DMA高速通道的极限速度;可以测试得到在多个BAR低速通道并行场景下的单个BAR低速通道的极限速度;可以测试得到在多个DMA高速通道和多个BAR低速通道并行混合场景下的单个DMA高速通道或BAR低速通道的极限速度。
实施例4
为了测试PCIE卡的稳定性,本发明实施例还提供一种PCIE卡异步高性能测试方法,与上述各实施例的不同之处在于,本实施例还包括以下步骤:
S107:待确定DMA高速通道和BAR低速通道的极限速度后,通过各个DMA测试线程组和各个BAR测试线程组分别按照各自的极限速度与对应的DMA高速通道和BAR低速通道进行数据传输,以测试所述PCIE卡的稳定性是否合格。
作为一种可实施方式,具体包括:
S1071:通过所有的DMA发送线程与所有的BAR发送线程分别按照各自的极限速度异步向对应的DMA高速通道与BAR低速通道频繁发送测试数据;
S1072:对应的DMA高速通道与BAR低速通道分别对测试数据进行透传或处理后,返回响应数据给对应的DMA接收线程与BAR接收线程;
S1073:在预设的时间段内,若所有的DMA接收线程与BAR接收线程均能接收到正确的响应数据,则判定所述PCIE卡的稳定性合格,反之,则判定所述PCIE卡的稳定性不合格。
本发明实施例提供的一种PCIE卡异步高性能测试方法,可以测试得到多个DMA高速通道和多个BAR低速通道并行混合场景下的稳定性。
实施例5
在上述各实施例的基础上,本发明实施例还提供一种PCIE卡异步高性能测试方法,与上述各实施例的不同之处在于,本实施例还包括以下步骤:
在测试过程中,将所述PCIE卡的执行状态记录在所述配置空间;
所述测试主机的PCIE卡配置空间监控线程监控到所述PCIE卡的执行状态后,根据所述执行状态调整测试结果;
在测试过程中,若其中的一个或多个DMA高速通道或BAR低速通道对依序接收的测试数据进行透传或处理后所返回的响应数据出现乱序,则将乱序信息记录在所述配置空间;
所述测试主机的PCIE卡配置空间监控线程监控到所述乱序信息后,根据所述乱序信息对接收到的多个响应数据的序号进行调整,并基于序号调整后的响应数据进行性能评估。
可以理解的是,在稳定性测试过程中,DMA发送线程会按照极限速度频繁发送测试数据给DMA高速通道,由于DMA高速通道对不同的测试数据的处理速度不同,可能出现:序号靠后的测试数据优先于序号靠前的测试数据完成处理,并返回给DMA接收线程,此时DMA接收线程接收到的响应数据与事先发送的测试数据对应不上,则可能会误认为数据处理出错了。本发明实施例通过配置空间记录PCIE卡在测试交互过程中的执行状况,所述测试主机的PCIE卡配置空间监控线程能够实时监控PCIE卡的执行状况,进而可以对乱序的响应数据进行序号调整,并基于序号调整后的响应数据进行正确性评估,从而避免因测试主机不能及时与被测PCIE卡同步执行状态而导致误测的现象。
实施例6
对应上述的PCIE卡异步高性能测试方法,如图2所示,本发明实施例提供一种PCIE卡异步高性能测试系统,所述系统包括:测试主机和PCIE卡,当需要对PCIE卡进行测试时,将所述PCIE卡通过物理接口插接于测试主机上;
所述PCIE卡,包括n个DMA高速通道、q个BAR低速通道以及配置空间,所述配置空间用于存储所述PCIE卡标识信息、DMA高速通道的数量n、BAR低速通道的数量q;
所述测试主机,包括PCIE卡配置空间监控线程,所述PCIE卡配置空间监控线程用于识别PCIE卡配置空间中的PCIE卡标识信息、DMA高速通道的数量n、BAR低速通道的数量q;基于DMA高速通道的数量n启动n个DMA测试线程组,并基于BAR低速通道的数量q启动q个BAR测试线程组,其中,n个DMA测试线程组与n个DMA高速通道一一对应,q个BAR测试线程组与q个BAR低速通道一一对应;所述测试主机通过n个DMA测试线程组以及q个BAR测试线程组测试所述PCIE卡的性能。
本发明实施例测试PCIE卡的性能主要包括功能正确性和稳定性。
作为一种可实施方式,功能正确性的测试过程为:通过n个DMA测试线程组异步测试各个DMA高速通道处理数据的准确性,通过q个BAR测试线程组异步测试各个BAR低速通道处理数据的准确性;在n个DMA测试线程组和q个BAR测试线程组中,如果有超过预设阈值的测试线程组反馈DMA高速通道或BAR低速通道处理数据出错时,则判定所述PCIE卡的数据处理性能不合格,反之,则判定所述PCIE卡的数据处理性能合格。
具体地,每个DMA测试线程组包括DMA发送线程和DMA接收线程,每个BAR测试线程组包括BAR发送线程和BAR接收线程;由DMA发送线程发送DMA测试数据给对应的DMA高速通道,并由BAR发送线程发送BAR测试数据给对应的BAR低速通道;对应的DMA高速通道接收所述DMA测试数据并进行透传或处理后,返回DMA响应数据给对应的DMA接收线程;同时,对应的BAR低速通道接收到所述BAR测试数据并进行透传或处理后,返回BAR响应数据给对应的BAR接收线程;对应的DMA接收线程接收到所述DMA响应数据并将其与标准的DMA响应数据作比对,如果一致,则判定所述DMA高速通道能够准确处理数据,反之,则判定所述DMA高速通道无法准确处理数据;同时,对应的BAR接收线程接收到所述BAR响应数据并将其与标准的BAR响应数据作比对,如果一致,则判定所述BAR低速通道能够准确处理数据,反之,则判定所述BAR低速通道无法准确处理数据。
作为一种可实施方式,稳定性的测试过程为:待确定DMA高速通道和BAR低速通道的极限速度后,通过各个DMA测试线程组和各个BAR测试线程组分别按照各自的极限速度与对应的DMA高速通道和BAR低速通道进行数据传输,以测试所述PCIE卡的稳定性是否合格。
作为一种可实施方式,每个DMA高速通道包括至少一个DMA功能模块,对应于每个DMA高速通道的DMA测试线程组包括对应于各个DMA功能模块的DMA发送线程和DMA接收线程。
例如,第1个DMA高速通道包括AES算法模块和SM4算法模块两个DMA功能模块,则对应于第1个DMA高速通道的第1个DMA测试线程组应该包括两组发送/接收线程,第一组发送/接收线程适用于测试AES算法模块,第二组发送/接收线程适用于测试SM4算法模块。基于上述,本发明实施例基于各个DMA高速通道下的各个DMA功能处理模块分别启动相适配的发送/接收线程,以便于一次性全面测试出PCIE卡的性能,减少了对PCIE卡的测试次数,提高了测试效率。
需要说明的是,本发明实施例提供的一种PCIE卡异步高性能测试系统,是为了实现上述各方法实施例的,其功能具体可参考上述方法实施例,此处不再赘述。
本发明的测试方法和测试系统能够实现对PCIE卡的全面性能进行测试,并能一次性对PCIE卡的所有功能进行测试,减少了测试次数,提高了测试效率。另外,本发明的测试系统能够基于被测PCIE卡的DMA高速通道数量以及BAR低速通道数量来启动对应数量的测试线程组,能够适用于测试更多品类的PCIE卡,具有广泛的适用性。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种PCIE卡异步高性能测试方法,其特征在于,包括:
步骤1:将PCIE卡通过物理接口插接于测试主机上,其中所述PCIE卡包括n个DMA高速通道、q个BAR低速通道以及配置空间,所述配置空间用于存储所述PCIE卡标识信息、DMA高速通道的数量n、BAR低速通道的数量q;
步骤2:所述测试主机启动PCIE卡配置空间监控线程,并识别到PCIE卡配置空间中的PCIE卡标识信息、DMA高速通道的数量n、BAR低速通道的数量q;
步骤3:所述测试主机基于DMA高速通道的数量n启动n个DMA测试线程组,并基于BAR低速通道的数量q启动q个BAR测试线程组,其中,n个DMA测试线程组与n个DMA高速通道一一对应,q个BAR测试线程组与q个BAR低速通道一一对应;
步骤4:通过n个DMA测试线程组异步测试各个DMA高速通道处理数据的准确性,并通过q个BAR测试线程组异步测试各个BAR低速通道处理数据的准确性;
步骤5:在n个DMA测试线程组和q个BAR测试线程组中,如果有超过预设阈值的测试线程组反馈DMA高速通道或BAR低速通道处理数据出错时,则判定所述PCIE卡的数据处理性能不合格,反之,则判定所述PCIE卡的数据处理性能合格。
2.根据权利要求1所述的一种PCIE卡异步高性能测试方法,其特征在于,每个DMA测试线程组包括用于向DMA高速通道发送测试数据的DMA发送线程和用于接收响应数据的DMA接收线程,每个BAR测试线程组包括用于向BAR低速通道发送测试数据的BAR发送线程和用于接收响应数据的BAR接收线程。
3.根据权利要求2所述的一种PCIE卡异步高性能测试方法,其特征在于,所述步骤4具体包括:
步骤4.1:由DMA发送线程发送DMA测试数据给对应的DMA高速通道,并由BAR发送线程发送BAR测试数据给对应的BAR低速通道;
步骤4.2:对应的DMA高速通道接收所述DMA测试数据并进行透传或处理后,返回DMA响应数据给对应的DMA接收线程;同时,对应的BAR低速通道接收到所述BAR测试数据并进行透传或处理后,返回BAR响应数据给对应的BAR接收线程;
步骤4.3:对应的DMA接收线程接收到所述DMA响应数据并将其与标准的DMA响应数据作比对,如果一致,则判定所述DMA高速通道能够准确处理数据,反之,则判定所述DMA高速通道无法准确处理数据;同时,对应的BAR接收线程接收到所述BAR响应数据并将其与标准的BAR响应数据作比对,如果一致,则判定所述BAR低速通道能够准确处理数据,反之,则判定所述BAR低速通道无法准确处理数据。
4.根据权利要求2所述的一种PCIE卡异步高性能测试方法,其特征在于,在所述步骤5之后,还包括:
步骤6:待判定所述PCIE卡的数据处理性能合格后,通过各个DMA测试线程组分别测试对应的DMA高速通道的极限速度,并通过各个BAR测试线程组分别测试对应的BAR低速通道的极限速度。
5.根据权利要求4所述的一种PCIE卡异步高性能测试方法,其特征在于,所述步骤6中,通过各个DMA测试线程组分别测试对应的DMA高速通道的极限速度,具体包括:
步骤6.1:由DMA发送线程按照预设的初始频率重复向对应的DMA高速通道发送DMA测试数据,并使所述DMA高速通道进行频繁处理返回DMA响应数据给对应的DMA接收线程;
步骤6.2:如果对应的DMA接收线程能够在预设的延时范围内接收到正确的DMA响应数据,则促使所述DMA发送线程在所述初始频率的基础上进行增量,并进行重新测试;
步骤6.3:重复步骤6.2,直至对应的DMA接收线程无法在预设的延时范围内接收到正确的DMA响应数据,即可确定出所述DMA高速通道的极限速度。
6.根据权利要求4所述的一种PCIE卡异步高性能测试方法,其特征在于,所述步骤6中,通过各个BAR测试线程组分别测试对应的BAR低速通道的极限速度,具体包括:
步骤6.4:由BAR发送线程按照预设的初始频率重复向对应的BAR低速通道发送BAR测试数据,并使所述BAR低速通道进行频繁处理返回BAR响应数据给对应的BAR接收线程;
步骤6.5:如果对应的BAR接收线程能够在预设的延时范围内接收到正确的BAR响应数据,则促使所述BAR发送线程在所述初始频率的基础上进行增量,并进行重新测试;
步骤6.6:重复步骤6.5,直至对应的BAR接收线程无法在预设的延时范围内接收到正确的BAR响应数据,即可确定出所述BAR低速通道的极限速度。
7.根据权利要求4所述的一种PCIE卡异步高性能测试方法,其特征在于,在所述步骤6之后,还包括:
步骤7:待确定DMA高速通道和BAR低速通道的极限速度后,通过各个DMA测试线程组和各个BAR测试线程组分别按照各自的极限速度与对应的DMA高速通道和BAR低速通道进行数据传输,以测试所述PCIE卡的稳定性是否合格。
8.根据权利要求7所述的一种PCIE卡异步高性能测试方法,其特征在于,所述步骤7具体包括:
步骤7.1:通过所有的DMA发送线程与所有的BAR发送线程分别按照各自的极限速度异步向对应的DMA高速通道与BAR低速通道频繁发送测试数据;
步骤7.2:对应的DMA高速通道与BAR低速通道分别对测试数据进行透传或处理后,返回响应数据给对应的DMA接收线程与BAR接收线程;
步骤7.3:在预设的时间段内,若所有的DMA接收线程与BAR接收线程均能接收到正确的响应数据,则判定所述PCIE卡的稳定性合格,反之,则判定所述PCIE卡的稳定性不合格。
9.根据权利要求1至8任一所述的一种PCIE卡异步高性能测试方法,其特征在于,还包括:
在测试过程中,将所述PCIE卡的执行状态记录在所述配置空间;
所述测试主机的PCIE卡配置空间监控线程监控到所述PCIE卡的执行状态后,根据所述执行状态调整测试结果。
10.一种PCIE卡异步高性能测试系统,其特征在于,包括:测试主机和PCIE卡,当需要对PCIE卡进行测试时,将所述PCIE卡通过物理接口插接于测试主机上;
所述PCIE卡,包括n个DMA高速通道、q个BAR低速通道以及配置空间,所述配置空间用于存储所述PCIE卡标识信息、DMA高速通道的数量n、BAR低速通道的数量q;
所述测试主机,包括PCIE卡配置空间监控线程,所述PCIE卡配置空间监控线程用于识别PCIE卡配置空间中的PCIE卡标识信息、DMA高速通道的数量n、BAR低速通道的数量q;基于DMA高速通道的数量n启动n个DMA测试线程组,并基于BAR低速通道的数量q启动q个BAR测试线程组,其中,n个DMA测试线程组与n个DMA高速通道一一对应,q个BAR测试线程组与q个BAR低速通道一一对应;所述测试主机通过n个DMA测试线程组以及q个BAR测试线程组测试所述PCIE卡的性能。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011362795.2A CN112416683B (zh) | 2020-11-28 | 2020-11-28 | 一种pcie卡异步高性能测试方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011362795.2A CN112416683B (zh) | 2020-11-28 | 2020-11-28 | 一种pcie卡异步高性能测试方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112416683A CN112416683A (zh) | 2021-02-26 |
CN112416683B true CN112416683B (zh) | 2022-02-11 |
Family
ID=74842781
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011362795.2A Active CN112416683B (zh) | 2020-11-28 | 2020-11-28 | 一种pcie卡异步高性能测试方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112416683B (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI370260B (en) * | 2008-11-26 | 2012-08-11 | Inventec Corp | A testing method of the bus of the pci-e |
CN101770416B (zh) * | 2009-01-05 | 2012-09-05 | 英业达集团(天津)电子技术有限公司 | 新一代周边连接接口的总线测试方法 |
CN102420719B (zh) * | 2011-11-28 | 2014-04-23 | 曙光信息产业股份有限公司 | 一种测试PCIe总线带宽的装置和方法 |
CN103198001B (zh) * | 2013-04-25 | 2017-02-01 | 加弘科技咨询(上海)有限公司 | 能够自测pcie接口的存储系统及测试方法 |
KR101631461B1 (ko) * | 2014-09-30 | 2016-06-17 | 주식회사 네오셈 | 메모리 소자 테스트 장치 및 방법 |
-
2020
- 2020-11-28 CN CN202011362795.2A patent/CN112416683B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112416683A (zh) | 2021-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7954109B1 (en) | Systems and methods for time based sorting and display of captured data events in a multi-protocol communications system | |
US20070067130A1 (en) | Network device testing equipment | |
US8001453B2 (en) | CAN system | |
US8627156B1 (en) | Method and system of testing bit error rate using signal with mixture of scrambled and unscrambled bits | |
US9838293B2 (en) | Throughput test method and apparatus | |
US7509568B2 (en) | Error type identification circuit for identifying different types of errors in communications devices | |
SG178186A1 (en) | Programmable protocol generator | |
CN111818632B (zh) | 一种设备同步的方法、装置、设备及存储介质 | |
CN109871344B (zh) | 通讯系统、接口电路及其传输信号的方法 | |
CN104917645A (zh) | 一种在线检测报文传输超时的方法与装置 | |
CN107431614A (zh) | 用于自动偏移补偿的方法和装置 | |
CN112416683B (zh) | 一种pcie卡异步高性能测试方法和系统 | |
WO2015073400A1 (en) | System and method for data packet transceiver testing after signal calibration and power settling to minimize test time | |
CN112416682B (zh) | 一种支持多个pcie卡的同时测试方法和系统 | |
CN112332941B (zh) | 一种基于分布式系统的时间误差校正方法 | |
US8452910B1 (en) | Capture of USB packets into separate USB protocol streams based on different USB protocol specifications | |
CN112416684B (zh) | 一种基于多个虚拟pcie卡的异步测试方法和系统 | |
CN109858632B (zh) | 一种确定阈值的方法及装置 | |
CN109857359B (zh) | Mipi数据处理方法、装置和电路 | |
US8745455B2 (en) | Providing an on-die logic analyzer (ODLA) having reduced communications | |
CN103338131A (zh) | 检测日志传输丢失率的方法和设备 | |
CN104767658A (zh) | 一种在线检测报文传输错误的方法与装置 | |
CN111460745B (zh) | 一种设备芯片间连通性检测方法 | |
WO2022082917A1 (zh) | 一种高速信号频率测量与信号完整性的测试方法 | |
US20040249933A1 (en) | Network interface parameters |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |