CN107294814A - 一种片上网络的测试方法及装置 - Google Patents
一种片上网络的测试方法及装置 Download PDFInfo
- Publication number
- CN107294814A CN107294814A CN201710659653.4A CN201710659653A CN107294814A CN 107294814 A CN107294814 A CN 107294814A CN 201710659653 A CN201710659653 A CN 201710659653A CN 107294814 A CN107294814 A CN 107294814A
- Authority
- CN
- China
- Prior art keywords
- transmission path
- data bag
- node
- recombination
- network
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种片上网络的测试方法及装置,该方法包括:生成测试数据包,备份测试数据包;将测试数据包按照预设的第一传输路径在待测试片上网络中传输;当测试数据包传输到第一传输路径的终止节点时,生成第二传输路径,其中,第二传输路径的终止节点为第一传输路径的起始节点;根据第一传输路径的终止节点接收到的测试数据包,生成重组数据包;将重组数据包按照第二传输路径在待测试片上网络中传输;当重组数据包传输到第二传输路径的终止节点时,根据第二传输路径的终止节点接收到的重组数据包,以及备份的测试数据包,生成测试结果。本发明提供了一种片上网络的测试方法及装置,能够实现对片上网络进行测试。
Description
技术领域
本发明涉及芯片设计领域,特别涉及一种片上网络的测试方法及装置。
背景技术
在芯片中一般设置有由多个节点构成的片上网络。片上网络是芯片完成数据包在各节点间传输的重要部分,片上网络具有复杂的数据通路和控制逻辑。
在芯片开发等过程中,为了确定芯片的片上网络是否正常工作,需要对芯片的片上网络进行测试。目前,还没有对片上网络进行测试的方案。
发明内容
本发明实施例提供了一种片上网络的测试方法及装置,能够实现对片上网络进行测试。
第一方面,本发明实施例提供了一种片上网络的测试方法,包括:
生成测试数据包,备份所述测试数据包;
将所述测试数据包按照预设的第一传输路径在待测试片上网络中传输;
当所述测试数据包传输到所述第一传输路径的终止节点时,生成第二传输路径,其中,所述第二传输路径的终止节点为所述第一传输路径的起始节点;
根据所述第一传输路径的终止节点接收到的所述测试数据包,生成重组数据包;
将所述重组数据包按照所述第二传输路径在所述待测试片上网络中传输;
当所述重组数据包传输到所述第二传输路径的终止节点时,根据所述第二传输路径的终止节点接收到的所述重组数据包,以及备份的所述测试数据包,生成测试结果。
进一步地,
所述生成第二传输路径,包括:
根据所述第一传输路径,按照原路返回原则,生成所述第二传输路径。
进一步地,
所述生成第二传输路径,包括:
确定所述第一传输路径的起始节点;
确定所述待测试片上网络的网络拓扑;
根据所述网络拓扑和所述第一传输路径的起始节点,生成所述第二传输路径。
进一步地,
所述测试数据包中包括:所述第一传输路径;
所述将所述测试数据包按照预设的第一传输路径在待测试片上网络中传输,包括:
将所述测试数据包发送给所述第一传输路径的起始节点,以使所述第一传输路径上的各个节点从接收到的所述测试数据包中解析出所述第一传输路径,并按照所述第一传输路径传输所述测试数据包,其中,所述第一传输路径上的各个节点位于所述待测试片上网络中。
进一步地,
所述重组数据包中包括:所述第二传输路径;
所述将所述重组数据包按照所述第二传输路径在所述待测试片上网络中传输,包括:
将所述重组数据包发送给所述第二传输路径的起始节点,以使所述第二传输路径上的各个节点从接收到的所述重组数据包中解析出所述第二传输路径,并按照所述第二传输路径传输所述重组数据包,其中,所述第二传输路径上的各个节点位于所述待测试片上网络中。
进一步地,
所述第二传输路径的起始节点为所述第一传输路径的终止节点。
进一步地,
所述备份所述测试数据包,包括:
将备份的所述测试数据包保存到RAM中。
进一步地,
所述测试数据包中包括第一数据域;
所述重组数据域中包括第二数据域;
所述根据所述第一传输路径的终止节点接收到的所述测试数据包,生成重组数据包,包括:
将所述第一传输路径的终止节点接收到的所述测试数据包的第一数据域中的数据作为所述重组数据包的第二数据域中的数据,生成所述重组数据包;
所述根据所述第二传输路径的终止节点接收到的所述重组数据包,以及备份的所述测试数据包,生成测试结果,包括:
A1:判断所述第二传输路径的终止节点接收到的所述重组数据包的第二数据域中的数据与备份的所述测试数据包的第一数据域中的数据是否相同,如果是,则确定所述待测试片上网络正常,否则,确定所述待测试片上网络不正常。
进一步地,
所述测试数据包中进一步包括:第一计数器;
所述重组数据包中进一步包括:第二计数器;
在生成所述重组数据包之前,进一步包括:
将所述第一传输路径的终止节点接收到的所述测试数据包的第一计数器中的数据,作为所述重组数据包的第二计数器中的数据;
当所述重组数据包传输到所述第二传输路径的终止节点时,在所述A1之前,进一步包括:
判断所述第二传输路径的终止节点接收到的所述重组数据包的第二计数器中的数据与备份的所述测试数据包的第一计数器中的数据是否相同,如果是,则执行所述A1,否则,确定所述待测试片上网络不正常。
第二方面,本发明实施例提供了一种片上网络的测试装置,包括:
激励发生器、存储单元、组包器和比较器;
所述激励发生器,用于生成测试数据包,在所述存储单元中备份所述测试数据包,将所述测试数据包按照预设的第一传输路径在待测试片上网络中传输;
所述存储单元,用于存储备份的所述测试数据包;
所述组包器,用于当所述测试数据包传输到所述第一传输路径的终止节点时,生成第二传输路径,根据所述第一传输路径的终止节点接收到的所述测试数据包,生成重组数据包,将所述重组数据包按照所述第二传输路径在所述待测试片上网络中传输,其中,所述第二传输路径的终止节点为所述第一传输路径的起始节点;
所述比较器,用于当所述重组数据包传输到所述第二传输路径的终止节点时,根据所述第二传输路径的终止节点接收到的所述重组数据包,以及所述存储单元存储的所述测试数据包,生成测试结果。
进一步地,
所述组包器,用于根据所述第一传输路径,按照原路返回原则,生成所述第二传输路径。
进一步地,
所述组包器,用于确定所述第一传输路径的起始节点,确定所述待测试片上网络的网络拓扑,根据所述网络拓扑和所述第一传输路径的起始节点,生成所述第二传输路径。
进一步地,
所述测试数据包中包括:所述第一传输路径;
所述激励发生器,用于将所述测试数据包发送给所述第一传输路径的起始节点,以使所述第一传输路径上的各个节点从接收到的所述测试数据包中解析出所述第一传输路径,并按照所述第一传输路径传输所述测试数据包,其中,所述第一传输路径上的各个节点位于所述待测试片上网络中。
进一步地,
所述重组数据包中包括:所述第二传输路径;
所述组包器,用于将所述重组数据包发送给所述第二传输路径的起始节点,以使所述第二传输路径上的各个节点从接收到的所述重组数据包中解析出所述第二传输路径,并按照所述第二传输路径传输所述重组数据包,其中,所述第二传输路径上的各个节点位于所述待测试片上网络中。
进一步地,
所述第二传输路径的起始节点为所述第一传输路径的终止节点。
进一步地,
所述存储单元,包括:RAM;
所述激励发生器,用于将备份的所述测试数据包保存到所述RAM中。
进一步地,
所述测试数据包中包括第一数据域;
所述重组数据域中包括第二数据域;
所述组包器,用于将所述第一传输路径的终止节点接收到的所述测试数据包的第一数据域中的数据作为所述重组数据包的第二数据域中的数据,生成所述重组数据包;
所述比较器,用于执行A1:判断所述第二传输路径的终止节点接收到的所述重组数据包的第二数据域中的数据与备份的所述测试数据包的第一数据域中的数据是否相同,如果是,则确定所述待测试片上网络正常,否则,确定所述待测试片上网络不正常。
进一步地,
所述测试数据包中进一步包括:第一计数器;
所述重组数据包中进一步包括:第二计数器;
所述组包器,进一步用于将所述第一传输路径的终止节点接收到的所述测试数据包的所述第一计数器中的数据,作为所述重组数据包的所述第二计数器中的数据;
所述比较器,进一步用于当所述重组数据包传输到所述第二传输路径的终止节点时,在执行所述A1之前,判断所述第二传输路径的终止节点接收到的所述重组数据包的第二计数器中的数据与备份的所述测试数据包的第一计数器中的数据是否相同,如果是,则执行所述A1,否则,确定所述待测试片上网络不正常。
在本发明实施例中,将测试数据包备份,并将测试数据包按照第一传输路径在待测试片上网络中传输,当测试数据包传输到第一传输路径的终止节点时,生成重组数据包,并将重组数据包按照第二传输路径传输回第一传输路径的起始节点,通过第二传输路径的终止节点接收到的重组数据包,以及备份的测试数据包,体现出待测试片上网络的情况,实现对片上网络进行测试。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的一种片上网络的测试方法的流程图;
图2是本发明一实施例提供的另一种片上网络的测试方法的流程图;
图3是本发明一实施例提供的一种片上网络的测试装置的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种片上网络的测试方法,该方法可以包括以下步骤:
步骤101:生成测试数据包,备份所述测试数据包;
步骤102:将所述测试数据包按照预设的第一传输路径在待测试片上网络中传输;
步骤103:当所述测试数据包传输到所述第一传输路径的终止节点时,生成第二传输路径,其中,所述第二传输路径的终止节点为所述第一传输路径的起始节点;
步骤104:根据所述第一传输路径的终止节点接收到的所述测试数据包,生成重组数据包;
步骤105:将所述重组数据包按照所述第二传输路径在所述待测试片上网络中传输;
步骤106:当所述重组数据包传输到所述第二传输路径的终止节点时,根据所述第二传输路径的终止节点接收到的所述重组数据包,以及备份的所述测试数据包,生成测试结果。
在本发明实施例中,将测试数据包备份,并将测试数据包按照第一传输路径在待测试片上网络中传输,当测试数据包传输到第一传输路径的终止节点时,生成重组数据包,并将重组数据包按照第二传输路径传输回第一传输路径的起始节点,通过第二传输路径的终止节点接收到的重组数据包,以及备份的测试数据包,体现出待测试片上网络的情况,实现对片上网络进行测试。
为了增加第二传输路径的灵活性,在本发明一实施例中,所述生成第二传输路径,包括:
确定所述第一传输路径的起始节点;
确定所述待测试片上网络的网络拓扑;
根据所述网络拓扑和所述第一传输路径的起始节点,生成所述第二传输路径。
在本发明实施例中,根据待测试片上网络的网络拓扑,重新规划返回第一传输路径的起始节点的第二传输路径,这样,能够存在更多的返回第一传输路径的起始节点的路径供选择,增加了第二传输路径的灵活性,进而,能够在一次测试中可以对更多的节点进行测试。
举例来说,待测试片上网络中有4个节点,分别是:节点1、节点2、节点3和节点4。待测试片上网络的网络拓扑为全互连方式。第一传输路径为节点1→节点2→节点3。在生成第二传输路径时,具有以下可能:节点3→节点1,节点3→节点2→节点1,节点3→节点4→节点1,节点3→节点2→节点4→节点1,节点3→节点4→节点2→节点1。可以从中选择一个作为第二传输路径。
为了节省计算资源,在本发明一实施例中,所述生成第二传输路径,包括:
根据所述第一传输路径,按照原路返回原则,生成所述第二传输路径。
在本发明实施例中,第二传输路径是第一传输路径的原路返回的路径,这样,无需通过大量计算即可生成第二传输路径,节省了测试片上网络所需要的资源,也提高了测试片上网络的速度。
举例来说,第一传输路径为:节点1→节点2→节点3,则第二传输路径为:节点3→节点2→节点1。
在本发明一实施例中,所述测试数据包中包括:所述第一传输路径;
所述将所述测试数据包按照预设的第一传输路径在待测试片上网络中传输,包括:
将所述测试数据包发送给所述第一传输路径的起始节点,以使所述第一传输路径上的各个节点从接收到的所述测试数据包中解析出所述第一传输路径,并按照所述第一传输路径传输所述测试数据包,其中,所述第一传输路径上的各个节点位于所述待测试片上网络中。
在本发明实施例中,片上网络中的节点,具有解析接收到的数据包的功能,当节点解析出第一传输路径时,能够按照第一传输路径产生接收到的数据包。
举例来说,第一传输路径为:节点1→节点2→节点3。在测试数据包中包括该第一传输路径。将测试数据包发给节点1,节点1解析出该第一传输路径,按照该第一传输路径,将测试数据包发送给节点2;节点2解析出该第一传输路径,按照该第一传输路径,将测试数据包发送给节点3;实现测试数据包按照第一传输路径在待测试片上网络中传输。
在本发明一实施例中,所述重组数据包中包括:所述第二传输路径;
所述将所述重组数据包按照所述第二传输路径在所述待测试片上网络中传输,包括:
将所述重组数据包发送给所述第二传输路径的起始节点,以使所述第二传输路径上的各个节点从接收到的所述重组数据包中解析出所述第二传输路径,并按照所述第二传输路径传输所述重组数据包,其中,所述第二传输路径上的各个节点位于所述待测试片上网络中。
举例来说,第二传输路径为:节点3→节点2→节点1。在重组数据包中包括该第二传输路径。将重组数据包发给节点3,节点3解析出该第二传输路径,按照该第二传输路径,将重组数据包发送给节点2;节点2解析出该第二传输路径,按照该第二传输路径,将重组数据包发送给节点3;实现重组数据包按照第二传输路径在待测试片上网络中传输。
在本发明一实施例中,所述第二传输路径的起始节点为所述第一传输路径的终止节点。
在本发明实施例中,重组数据包从第一传输路径的终止节点开始传输回第一传输路径的起始节点。
在本发明一实施例中,所述备份所述测试数据包,包括:
将备份的所述测试数据包保存到RAM中。
在本发明实施例中,配置RAM,通过RAM来存储备份的测试数据包,方便后续读取该备份的测试数据包,用于生成测试结果。
在本发明一实施例中,所述测试数据包中包括第一数据域;
所述重组数据域中包括第二数据域;
所述根据所述第一传输路径的终止节点接收到的所述测试数据包,生成重组数据包,包括:
将所述第一传输路径的终止节点接收到的所述测试数据包的第一数据域中的数据作为所述重组数据包的第二数据域中的数据,生成所述重组数据包;
所述根据所述第二传输路径的终止节点接收到的所述重组数据包,以及备份的所述测试数据包,生成测试结果,包括:
A1:判断所述第二传输路径的终止节点接收到的所述重组数据包的第二数据域中的数据与备份的所述测试数据包的第一数据域中的数据是否相同,如果是,则确定所述待测试片上网络正常,否则,确定所述待测试片上网络不正常。
在本发明实施例中,数据包中包括数据域,以数据域的数据来确定待测试片上网络的测试结果。在生成重组数据包时,使得第一传输路径的终止节点接收到的测试数据包的第一数据域中的数据与重组数据包的第二数据域中的数据保持一致,便于后续进行比对,避免在生成重组数据包的时候对第一数据域中的数据进行了改变。当第二传输路径的终止节点接收到的重组数据包的第二数据域中的数据与备份的测试数据包的第一数据域中的数据相同时,说明在待测试片上网络传输的过程中,测试数据包的第一数据域中的数据没有被改变,待测试片上网络运行正常;当第二传输路径的终止节点接收到的重组数据包的第二数据域中的数据与备份的测试数据包的第一数据域中的数据不同时,说明在待测试片上网络传输的过程中,测试数据包的第一数据域中的数据被改变了,待测试片上网络运行不正常,例如:存在数据传输的过程丢失的问题,或者,存在数据在传输过程被篡改的问题等,进一步地,说明第一传输路径上的各个节点和第二传输路径上的各个节点中,至少有一个节点发生故障,能够快速定位出发生问题的范围。
在本发明一实施例中,所述测试数据包中进一步包括:第一计数器;
所述重组数据包中进一步包括:第二计数器;
在生成所述重组数据包之前,进一步包括:
将所述第一传输路径的终止节点接收到的所述测试数据包的第一计数器中的数据,作为所述重组数据包的第二计数器中的数据;
当所述重组数据包传输到所述第二传输路径的终止节点时,在所述A1之前,进一步包括:
判断所述第二传输路径的终止节点接收到的所述重组数据包的第二计数器中的数据与备份的所述测试数据包的第一计数器中的数据是否相同,如果是,则执行所述A1,否则,确定所述待测试片上网络不正常。
在本发明实施例中,第一计数器可以用于记录发出的测试数据包的数量。举例来说,发出两个测试数据包,一个用于备份,一个在待测试片上网络中传输,那么,第一计数器中的数据为2。
在本发明实施例中,当第二传输路径的终止节点接收到的重组数据包的第二计数器中的数据与备份的测试数据包的第一计数器中的数据相同时,可以执行A1,继续后续检测;当第二传输路径的终止节点接收到的重组数据包的第二计数器中的数据与备份的测试数据包的第一计数器中的数据不同时,说明在待测试片上网络传输的过程中,测试数据包的第一计数器中的数据被改变了,待测试片上网络运行不正常,无需进行后续检测。
在本发明实施例中,只有同时满足:第二传输路径的终止节点接收到的重组数据包的第二计数器中的数据与备份的测试数据包的第一计数器中的数据相同,第二传输路径的终止节点接收到的重组数据包的第二数据域中的数据与备份的测试数据包的第一数据域中的数据相同时,才能确定待测试片上网络正常,提高了测试待测试片上网络的准确性。
如图2所示,本发明实施例提供了一种片上网络的测试方法,该方法可以包括以下步骤:
步骤201:生成测试数据包,备份测试数据包,测试数据包中包括:预先设置的第一传输路径、第一数据域和第一计数器。
具体地,可以生成两个相同的测试数据包,其中,一个用于在待测试片上网络中传输,另一个作为备份,可以将备份的测试数据包保存到RAM中,RAM的深度等于发出的测试数据包的数量,宽度等于测试数据包的比特位数。
可以设置一种数据包的格式,测试数据包和重组数据包均按照该格式构成,该数据包的格式如表1所示。
表1
标志域 | 路由域 | 源域 | 计数器 | 数据域 |
其中,标志域中存储头尾标志;路由域中存储数据包的传输路径;源域中存储数据包的源端位置,也就是,数据包的传输路径的起始节点的位置;计数器中存储发出的测试数据包的数量;数据域中存储用于比对的数据。
举例来说,待测试片上网络中有4个节点,分别是:节点1、节点2、节点3和节点4。第一传输路径为节点1→节点2→节点3。
步骤202:将测试数据包发送给第一传输路径的起始节点,以使第一传输路径上的各个节点从接收到的测试数据包中解析出第一传输路径,并按照第一传输路径传输测试数据包,其中,第一传输路径上的各个节点位于待测试片上网络中。
举例来说,将测试数据包发给节点1,节点1解析出该第一传输路径,按照该第一传输路径,将测试数据包发送给节点2;节点2解析出该第一传输路径,按照该第一传输路径,将测试数据包发送给节点3;实现测试数据包按照第一传输路径在待测试片上网络中传输。
一般来说,每个节点中包括输入端、网络接口以及交换开关。各个节点之间通过网络接口相互连接。例如:节点1具有8个网络接口和1个交换开关。
以节点1和节点2为例:节点1的网络接口0与节点2的网络接口0相连。
将测试数据包发送到节点1的输入端,由输入端进入交换开关,交换开关解析测试数据包,解析得到第一传输路径、第一数据域和第一计数器。按照第一传输路径,将测试数据包从网络接口0输出到节点2。节点2通过网络接口0接收节点1发来的测试数据包,节点2的交换开关解析测试数据包,解析得到第一传输路径、第一数据域和第一计数器。按照第一传输路径,将测试数据包输出到节点3。
步骤203:当测试数据包传输到第一传输路径的终止节点时,根据第一传输路径,按照原路返回原则,生成第二传输路径。
具体地,当测试数据包传输到第一传输路径的终止节点时,从第一传输路径的终止节点中获取测试数据包。
举例来说,当测试数据包传输到节点3时,从节点3中获取测试数据包。
针对上述的第一传输路径,生成第二传输路径,第二传输路径为:节点3→节点2→节点1。
步骤204:生成重组数据包,其中,重组数据包中包括:第二传输路径、第二数据域和第二计数器,第二数据域中存储第一传输路径的终止节点接收到的测试数据包的第一数据域中的数据,第二计数器中存储第一传输路径的终止节点接收到的测试数据包的第一计数器中的数据。
具体地,将第一传输路径的终止节点接收到的测试数据包的第一数据域中的数据作为重组数据包的第二数据域中的数据,将第一传输路径的终止节点接收到的测试数据包的第一计数器中的数据,作为重组数据包的第二计数器中的数据。
举例来说,将第二传输路径为:节点3→节点2→节点1,保存到路由域中,将第一传输路径的终止节点接收到的测试数据包的第一数据域中的数据保存到重组数据包的第二数据域中,将第一传输路径的终止节点接收到的测试数据包的第一计数器中的数据保存到重组数据包的第二计数器中。
步骤205:将重组数据包发送给第二传输路径的起始节点,以使第二传输路径上的各个节点从接收到的重组数据包中解析出第二传输路径,并按照第二传输路径传输重组数据包,其中,第二传输路径上的各个节点位于待测试片上网络中。
举例来说,第二传输路径为:节点3→节点2→节点1。在重组数据包中包括该第二传输路径。将重组数据包发给节点3,节点3解析出该第二传输路径,按照该第二传输路径,将重组数据包发送给节点2;节点2解析出该第二传输路径,按照该第二传输路径,将重组数据包发送给节点3;实现重组数据包按照第二传输路径在待测试片上网络中传输。
步骤206:当重组数据包传输到第二传输路径的终止节点时,判断第二传输路径的终止节点接收到的重组数据包的第二计数器中的数据与备份的测试数据包的第一计数器中的数据是否相同,如果是,则执行步骤207,否则,执行步骤208。
举例来说,重组数据包传输到节点1时,从节点1中获取节点1接收到的重组数据包,从该重组数据包中获取第二计数器中的数据,并获取RAM中存储的测试数据包,比较该重组数据包的第二计数器中的数据与该测试数据包的第一计数器中的数据。
步骤207:判断第二传输路径的终止节点接收到的重组数据包的第二数据域中的数据与备份的测试数据包的第一数据域中的数据是否相同,如果是,则执行步骤209,否则,执行步骤208。
举例来说,从节点1中获取节点1接收到的重组数据包,从该重组数据包获取第二数据域中的数据,从RAM中存储的测试数据包中获取第一数据域中的数据,二者进行比较。
步骤208:确定待测试片上网络不正常。
具体地,在确定待测试片上网络不正常后,可以对待测试片上网络进行调试,调试完成后,重新进行测试,直到待测试片上网络达到要求。
步骤209:确定待测试片上网络正常。
另外,为了方便直观地观察出数据包的传输情况,可以设置一个寄存器组,用于存放测试结果,可以通过两种非常直观的方式来实现结果观察:第一种是通过I2C读取寄存器组的值并显示在屏幕上;第二种是用该寄存器组的值编写一段点亮FPGA(Field-Programmable Gate Array,现场可编程门阵列)板上LED灯的逻辑,通过LED灯来观察比较结果。
本发明实施例提供的方案可以通过FPGA来实现,FPGA平台是真实的并行电路,本发明实施例把芯片的逻辑代码生成的位流映射到FPGA平台上进行测试,大大的加快了设计的周期。
在本发明实施例中,可以为每个节点配置一个FPGA,完成该节点的相应处理。
本发明实施例可以用于测试基于High-Radix的片上网络。
本发明实施例适用于测试32/64路高端服务器系统对应的片上网络。
在本发明实施例中,将测试数据包按照第一传输路径在待测试片上网络中传输,然后,到达第一传输路径的终止节点后,生成重组数据包,将重组数据包按照第二传输路径在待测试片上网络中传输,传回到第一传输路径的起始节点,形成环路,通过比较测试数据包与重组数据包来实现对待测试片上网络的测试,整个测试过程占用的资源较少。
在本发明实施例中,能够完成数据的自动化比对功能,提高调试的速度,大大缩短芯片设计的周期。
如图3所示,本发明实施例提供了一种片上网络的测试装置,包括:
激励发生器301、存储单元302、组包器303和比较器304;
所述激励发生器301,用于生成测试数据包,在所述存储单元中备份所述测试数据包,将所述测试数据包按照预设的第一传输路径在待测试片上网络中传输;
所述存储单元302,用于存储备份的所述测试数据包;
所述组包器303,用于当所述测试数据包传输到所述第一传输路径的终止节点时,生成第二传输路径,根据所述第一传输路径的终止节点接收到的所述测试数据包,生成重组数据包,将所述重组数据包按照所述第二传输路径在所述待测试片上网络中传输,其中,所述第二传输路径的终止节点为所述第一传输路径的起始节点;
所述比较器304,用于当所述重组数据包传输到所述第二传输路径的终止节点时,根据所述第二传输路径的终止节点接收到的所述重组数据包,以及所述存储单元存储的所述测试数据包,生成测试结果。
图3中还示出了片上网络的测试装置外部的待测试片上网络305。
在本发明实施例中,将测试数据包备份,并将测试数据包按照第一传输路径在待测试片上网络中传输,当测试数据包传输到第一传输路径的终止节点时,生成重组数据包,并将重组数据包按照第二传输路径传输回第一传输路径的起始节点,通过第二传输路径的终止节点接收到的重组数据包,以及备份的测试数据包,体现出待测试片上网络的情况,实现对片上网络进行测试。
在本发明一实施例种,所述组包器,用于根据所述第一传输路径,按照原路返回原则,生成所述第二传输路径。
在本发明一实施例种,所述组包器,用于确定所述第一传输路径的起始节点,确定所述待测试片上网络的网络拓扑,根据所述网络拓扑和所述第一传输路径的起始节点,生成所述第二传输路径。
在本发明一实施例种,所述测试数据包中包括:所述第一传输路径;
所述激励发生器,用于将所述测试数据包发送给所述第一传输路径的起始节点,以使所述第一传输路径上的各个节点从接收到的所述测试数据包中解析出所述第一传输路径,并按照所述第一传输路径传输所述测试数据包,其中,所述第一传输路径上的各个节点位于所述待测试片上网络中。
在本发明一实施例种,所述重组数据包中包括:所述第二传输路径;
所述组包器,用于将所述重组数据包发送给所述第二传输路径的起始节点,以使所述第二传输路径上的各个节点从接收到的所述重组数据包中解析出所述第二传输路径,并按照所述第二传输路径传输所述重组数据包,其中,所述第二传输路径上的各个节点位于所述待测试片上网络中。
在本发明一实施例种,所述第二传输路径的起始节点为所述第一传输路径的终止节点。
在本发明一实施例种,所述存储单元,包括:RAM;
所述激励发生器,用于将备份的所述测试数据包保存到所述RAM中。
在本发明一实施例种,所述测试数据包中包括第一数据域;
所述重组数据域中包括第二数据域;
所述组包器,用于将所述第一传输路径的终止节点接收到的所述测试数据包的第一数据域中的数据作为所述重组数据包的第二数据域中的数据,生成所述重组数据包;
所述比较器,用于执行A1:判断所述第二传输路径的终止节点接收到的所述重组数据包的第二数据域中的数据与备份的所述测试数据包的第一数据域中的数据是否相同,如果是,则确定所述待测试片上网络正常,否则,确定所述待测试片上网络不正常。
在本发明一实施例种,所述测试数据包中进一步包括:第一计数器;
所述重组数据包中进一步包括:第二计数器;
所述组包器,进一步用于将所述第一传输路径的终止节点接收到的所述测试数据包的所述第一计数器中的数据,作为所述重组数据包的所述第二计数器中的数据;
所述比较器,进一步用于当所述重组数据包传输到所述第二传输路径的终止节点时,在执行所述A1之前,判断所述第二传输路径的终止节点接收到的所述重组数据包的第二计数器中的数据与备份的所述测试数据包的第一计数器中的数据是否相同,如果是,则执行所述A1,否则,确定所述待测试片上网络不正常。
在本发明一实施例中,激励发生器可以是可约束随机激励发生器。
本发明实施例提供的一种片上网络的测试装置,可以通过FPGA来实现。
上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本发明实施例提供了一种可读介质,包括执行指令,当存储控制器的处理器执行所述执行指令时,所述存储控制器执行本发明实施例提供的任意一种片上网络的测试方法。
本发明实施例提供了一种存储控制器,包括:处理器、存储器和总线;
所述存储器用于存储执行指令,所述处理器与所述存储器通过所述总线连接,当所述存储控制器运行时,所述处理器执行所述存储器存储的执行指令,以使所述存储控制器执行本发明实施例提供的任意一种片上网络的测试方法。
本发明各个实施例至少具有如下有益效果:
1、在本发明实施例中,将测试数据包备份,并将测试数据包按照第一传输路径在待测试片上网络中传输,当测试数据包传输到第一传输路径的终止节点时,生成重组数据包,并将重组数据包按照第二传输路径传输回第一传输路径的起始节点,通过第二传输路径的终止节点接收到的重组数据包,以及备份的测试数据包,体现出待测试片上网络的情况,实现对片上网络进行测试。
2、在本发明实施例中,根据待测试片上网络的网络拓扑,重新规划返回第一传输路径的起始节点的第二传输路径,这样,能够存在更多的返回第一传输路径的起始节点的路径供选择,增加了第二传输路径的灵活性,进而,能够在一次测试中可以对更多的节点进行测试。
3、在本发明实施例中,第二传输路径是第一传输路径的原路返回的路径,这样,无需通过大量计算即可生成第二传输路径,节省了测试片上网络所需要的资源,也提高了测试片上网络的速度。
4、在本发明实施例中,只有同时满足:第二传输路径的终止节点接收到的重组数据包的第二计数器中的数据与备份的测试数据包的第一计数器中的数据相同,第二传输路径的终止节点接收到的重组数据包的第二数据域中的数据与备份的测试数据包的第一数据域中的数据相同时,才能确定待测试片上网络正常,提高了测试待测试片上网络的准确性。
5、本发明实施例提供的方案可以通过FPGA来实现,FPGA平台是真实的并行电路,本发明实施例把芯片的逻辑代码生成的位流映射到FPGA平台上进行测试,大大的加快了设计的周期。
6、在本发明实施例中,将测试数据包按照第一传输路径在待测试片上网络中传输,然后,到达第一传输路径的终止节点后,生成重组数据包,将重组数据包按照第二传输路径在待测试片上网络中传输,传回到第一传输路径的起始节点,形成环路,通过比较测试数据包与重组数据包来实现对待测试片上网络的测试,整个测试过程占用的资源较少。
7、在本发明实施例中,能够完成数据的自动化比对功能,提高调试的速度,大大缩短芯片设计的周期。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种片上网络的测试方法,其特征在于,包括:
生成测试数据包,备份所述测试数据包;
将所述测试数据包按照预设的第一传输路径在待测试片上网络中传输;
当所述测试数据包传输到所述第一传输路径的终止节点时,生成第二传输路径,其中,所述第二传输路径的终止节点为所述第一传输路径的起始节点;
根据所述第一传输路径的终止节点接收到的所述测试数据包,生成重组数据包;
将所述重组数据包按照所述第二传输路径在所述待测试片上网络中传输;
当所述重组数据包传输到所述第二传输路径的终止节点时,根据所述第二传输路径的终止节点接收到的所述重组数据包,以及备份的所述测试数据包,生成测试结果。
2.根据权利要求1所述的方法,其特征在于,
所述生成第二传输路径,包括:
根据所述第一传输路径,按照原路返回原则,生成所述第二传输路径;
和/或,
所述生成第二传输路径,包括:
确定所述第一传输路径的起始节点;
确定所述待测试片上网络的网络拓扑;
根据所述网络拓扑和所述第一传输路径的起始节点,生成所述第二传输路径。
3.根据权利要求1所述的方法,其特征在于,
所述测试数据包中包括:所述第一传输路径;
所述将所述测试数据包按照预设的第一传输路径在待测试片上网络中传输,包括:
将所述测试数据包发送给所述第一传输路径的起始节点,以使所述第一传输路径上的各个节点从接收到的所述测试数据包中解析出所述第一传输路径,并按照所述第一传输路径传输所述测试数据包,其中,所述第一传输路径上的各个节点位于所述待测试片上网络中;
和/或,
所述重组数据包中包括:所述第二传输路径;
所述将所述重组数据包按照所述第二传输路径在所述待测试片上网络中传输,包括:
将所述重组数据包发送给所述第二传输路径的起始节点,以使所述第二传输路径上的各个节点从接收到的所述重组数据包中解析出所述第二传输路径,并按照所述第二传输路径传输所述重组数据包,其中,所述第二传输路径上的各个节点位于所述待测试片上网络中;
和/或,
所述第二传输路径的起始节点为所述第一传输路径的终止节点;
和/或,
所述备份所述测试数据包,包括:
将备份的所述测试数据包保存到RAM中。
4.根据权利要求1所述的方法,其特征在于,
所述测试数据包中包括第一数据域;
所述重组数据域中包括第二数据域;
所述根据所述第一传输路径的终止节点接收到的所述测试数据包,生成重组数据包,包括:
将所述第一传输路径的终止节点接收到的所述测试数据包的第一数据域中的数据作为所述重组数据包的第二数据域中的数据,生成所述重组数据包;
所述根据所述第二传输路径的终止节点接收到的所述重组数据包,以及备份的所述测试数据包,生成测试结果,包括:
A1:判断所述第二传输路径的终止节点接收到的所述重组数据包的第二数据域中的数据与备份的所述测试数据包的第一数据域中的数据是否相同,如果是,则确定所述待测试片上网络正常,否则,确定所述待测试片上网络不正常。
5.根据权利要求4所述的方法,其特征在于,
所述测试数据包中进一步包括:第一计数器;
所述重组数据包中进一步包括:第二计数器;
在生成所述重组数据包之前,进一步包括:
将所述第一传输路径的终止节点接收到的所述测试数据包的第一计数器中的数据,作为所述重组数据包的第二计数器中的数据;
当所述重组数据包传输到所述第二传输路径的终止节点时,在所述A1之前,进一步包括:
判断所述第二传输路径的终止节点接收到的所述重组数据包的第二计数器中的数据与备份的所述测试数据包的第一计数器中的数据是否相同,如果是,则执行所述A1,否则,确定所述待测试片上网络不正常。
6.一种片上网络的测试装置,其特征在于,包括:
激励发生器、存储单元、组包器和比较器;
所述激励发生器,用于生成测试数据包,在所述存储单元中备份所述测试数据包,将所述测试数据包按照预设的第一传输路径在待测试片上网络中传输;
所述存储单元,用于存储备份的所述测试数据包;
所述组包器,用于当所述测试数据包传输到所述第一传输路径的终止节点时,生成第二传输路径,根据所述第一传输路径的终止节点接收到的所述测试数据包,生成重组数据包,将所述重组数据包按照所述第二传输路径在所述待测试片上网络中传输,其中,所述第二传输路径的终止节点为所述第一传输路径的起始节点;
所述比较器,用于当所述重组数据包传输到所述第二传输路径的终止节点时,根据所述第二传输路径的终止节点接收到的所述重组数据包,以及所述存储单元存储的所述测试数据包,生成测试结果。
7.根据权利要求6所述的装置,其特征在于,
所述组包器,用于根据所述第一传输路径,按照原路返回原则,生成所述第二传输路径;
和/或,
所述组包器,用于确定所述第一传输路径的起始节点,确定所述待测试片上网络的网络拓扑,根据所述网络拓扑和所述第一传输路径的起始节点,生成所述第二传输路径。
8.根据权利要求6所述的装置,其特征在于,
所述测试数据包中包括:所述第一传输路径;
所述激励发生器,用于将所述测试数据包发送给所述第一传输路径的起始节点,以使所述第一传输路径上的各个节点从接收到的所述测试数据包中解析出所述第一传输路径,并按照所述第一传输路径传输所述测试数据包,其中,所述第一传输路径上的各个节点位于所述待测试片上网络中;
和/或,
所述重组数据包中包括:所述第二传输路径;
所述组包器,用于将所述重组数据包发送给所述第二传输路径的起始节点,以使所述第二传输路径上的各个节点从接收到的所述重组数据包中解析出所述第二传输路径,并按照所述第二传输路径传输所述重组数据包,其中,所述第二传输路径上的各个节点位于所述待测试片上网络中;
和/或,
所述第二传输路径的起始节点为所述第一传输路径的终止节点;
和/或,
所述存储单元,包括:RAM;
所述激励发生器,用于将备份的所述测试数据包保存到所述RAM中。
9.根据权利要求6所述的装置,其特征在于,
所述测试数据包中包括第一数据域;
所述重组数据域中包括第二数据域;
所述组包器,用于将所述第一传输路径的终止节点接收到的所述测试数据包的第一数据域中的数据作为所述重组数据包的第二数据域中的数据,生成所述重组数据包;
所述比较器,用于执行A1:判断所述第二传输路径的终止节点接收到的所述重组数据包的第二数据域中的数据与备份的所述测试数据包的第一数据域中的数据是否相同,如果是,则确定所述待测试片上网络正常,否则,确定所述待测试片上网络不正常。
10.根据权利要求9所述的装置,其特征在于,
所述测试数据包中进一步包括:第一计数器;
所述重组数据包中进一步包括:第二计数器;
所述组包器,进一步用于将所述第一传输路径的终止节点接收到的所述测试数据包的所述第一计数器中的数据,作为所述重组数据包的所述第二计数器中的数据;
所述比较器,进一步用于当所述重组数据包传输到所述第二传输路径的终止节点时,在执行所述A1之前,判断所述第二传输路径的终止节点接收到的所述重组数据包的第二计数器中的数据与备份的所述测试数据包的第一计数器中的数据是否相同,如果是,则执行所述A1,否则,确定所述待测试片上网络不正常。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710659653.4A CN107294814A (zh) | 2017-08-04 | 2017-08-04 | 一种片上网络的测试方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710659653.4A CN107294814A (zh) | 2017-08-04 | 2017-08-04 | 一种片上网络的测试方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107294814A true CN107294814A (zh) | 2017-10-24 |
Family
ID=60105208
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710659653.4A Pending CN107294814A (zh) | 2017-08-04 | 2017-08-04 | 一种片上网络的测试方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107294814A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107979509A (zh) * | 2017-11-28 | 2018-05-01 | 杭州迪普科技股份有限公司 | 一种检测fpga工作状态的方法和装置 |
CN108134717A (zh) * | 2017-10-26 | 2018-06-08 | 同济大学 | 基于有界模型检验的片上网络固定型故障在线测试方法 |
CN111314167A (zh) * | 2020-01-15 | 2020-06-19 | 桂林电子科技大学 | 片上网络中基于超立方体拓扑结构的测试规划系统及方法 |
CN111625467A (zh) * | 2020-06-03 | 2020-09-04 | 深圳华锐金融技术股份有限公司 | 自动化测试方法、装置、计算机设备和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101587166A (zh) * | 2009-06-26 | 2009-11-25 | 上海大学 | 片上系统中嵌入式逻辑芯核的故障测试系统 |
CN101826989A (zh) * | 2009-03-02 | 2010-09-08 | 华为技术有限公司 | 一种故障处理方法和装置 |
CN102209003A (zh) * | 2010-03-29 | 2011-10-05 | 华为技术有限公司 | 链路检测方法、系统和环回发起设备 |
CN103036737A (zh) * | 2012-12-07 | 2013-04-10 | 无锡美森微电子科技有限公司 | 一种大规模微系统芯片的片上多节点系统的自测试方法 |
CN103259698A (zh) * | 2013-04-27 | 2013-08-21 | 复旦大学 | 一种适用于片上网络的测试系统和方法 |
CN103310850A (zh) * | 2013-06-27 | 2013-09-18 | 桂林电子科技大学 | 片上网络资源节点存储器的内建自测试结构和自测试方法 |
-
2017
- 2017-08-04 CN CN201710659653.4A patent/CN107294814A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101826989A (zh) * | 2009-03-02 | 2010-09-08 | 华为技术有限公司 | 一种故障处理方法和装置 |
CN101587166A (zh) * | 2009-06-26 | 2009-11-25 | 上海大学 | 片上系统中嵌入式逻辑芯核的故障测试系统 |
CN102209003A (zh) * | 2010-03-29 | 2011-10-05 | 华为技术有限公司 | 链路检测方法、系统和环回发起设备 |
CN103036737A (zh) * | 2012-12-07 | 2013-04-10 | 无锡美森微电子科技有限公司 | 一种大规模微系统芯片的片上多节点系统的自测试方法 |
CN103259698A (zh) * | 2013-04-27 | 2013-08-21 | 复旦大学 | 一种适用于片上网络的测试系统和方法 |
CN103310850A (zh) * | 2013-06-27 | 2013-09-18 | 桂林电子科技大学 | 片上网络资源节点存储器的内建自测试结构和自测试方法 |
Non-Patent Citations (2)
Title |
---|
张凡: "可测性设计优化方案与片上网络可测性设计研究", 《中国优秀硕士学位论文全文数据库》 * |
柯夏志: "基于2D-MESH的路由单元验证及互连结构测试研究", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108134717A (zh) * | 2017-10-26 | 2018-06-08 | 同济大学 | 基于有界模型检验的片上网络固定型故障在线测试方法 |
CN107979509A (zh) * | 2017-11-28 | 2018-05-01 | 杭州迪普科技股份有限公司 | 一种检测fpga工作状态的方法和装置 |
CN107979509B (zh) * | 2017-11-28 | 2020-05-12 | 杭州迪普科技股份有限公司 | 一种检测fpga工作状态的方法和装置 |
CN111314167A (zh) * | 2020-01-15 | 2020-06-19 | 桂林电子科技大学 | 片上网络中基于超立方体拓扑结构的测试规划系统及方法 |
CN111625467A (zh) * | 2020-06-03 | 2020-09-04 | 深圳华锐金融技术股份有限公司 | 自动化测试方法、装置、计算机设备和存储介质 |
CN111625467B (zh) * | 2020-06-03 | 2021-08-03 | 深圳华锐金融技术股份有限公司 | 自动化测试方法、装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10880197B2 (en) | Methods, systems, and computer readable media for testing a network node using source code for programming a packet forwarding plane of the network node | |
CN109491905A (zh) | 前端测试方法、装置及电子设备 | |
CN108737187B (zh) | 一种can总线故障模拟系统及故障模拟方法 | |
CN107294814A (zh) | 一种片上网络的测试方法及装置 | |
CN103036730B (zh) | 一种对协议实现进行安全测试的方法及装置 | |
CN104184617B (zh) | 互联设备预加重配置方法、装置、系统及网络设备 | |
CN104253723B (zh) | 基于软硬件协同实现的交换机验证测试的方法及装置 | |
CN103530211B (zh) | 一种基于uvm平台的pcie回环自检测的方法 | |
CN104699601A (zh) | 用于执行状态机驱动的注入的方法和系统 | |
CN107547304A (zh) | 网卡测试方法、装置及机器可读存储介质 | |
CN103780322B (zh) | 低成本高可靠性的高速网络通讯芯片测试方法与电路 | |
CN109062794A (zh) | 一种软件测评结果的确定方法、装置及电子设备 | |
CN103701566A (zh) | 一种校验方法和装置 | |
CN107181737B (zh) | 一种数据处理方法、读写器及服务器 | |
EP2704363A2 (en) | Transmitting device, transceiver system, and control method | |
CN203761409U (zh) | 低成本高可靠性的高速网络通讯芯片测试电路 | |
CN101667953B (zh) | 一种快速环网物理链路状态的上报方法及装置 | |
CN104780123B (zh) | 一种网络包收发处理装置及其设计方法 | |
CN102298112B (zh) | 一种可编程逻辑器件的测试方法及系统 | |
CN105591839A (zh) | 一种测试网络交换芯片的装置、方法及系统 | |
CN109815073A (zh) | 一种基于pxi平台的高速串口srio的测试方法 | |
CN104678292B (zh) | 一种复杂可编程逻辑器件cpld测试方法和装置 | |
CN103036737A (zh) | 一种大规模微系统芯片的片上多节点系统的自测试方法 | |
CN105897494A (zh) | 网络传输速率的测试方法 | |
CN107231278A (zh) | Can节点的测试方法、装置及系统 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171024 |
|
RJ01 | Rejection of invention patent application after publication |