CN113315664A - 一种消息处理芯片验证方法 - Google Patents
一种消息处理芯片验证方法 Download PDFInfo
- Publication number
- CN113315664A CN113315664A CN202110665267.2A CN202110665267A CN113315664A CN 113315664 A CN113315664 A CN 113315664A CN 202110665267 A CN202110665267 A CN 202110665267A CN 113315664 A CN113315664 A CN 113315664A
- Authority
- CN
- China
- Prior art keywords
- message
- point
- processing chip
- sending
- suspension
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明为一种消息处理芯片验证方法,包括以下步骤:S1:集中整合网络模型的节点资源,利用悬挂和条目进行节点消息的仿真;S2:给网络模型设置与待验证芯片端口数量相同的模拟端口数;S3:配置消息引擎,为不同类型的消息分配不同的悬挂,悬挂中的不同条目代表不同节点的不同消息;S4:模拟消息发送;S5:模拟消息接收。本发明的优点是:能够按照复杂网络接口芯片的验证要求,灵活高效地生成需要的消息序列,可以达到包级调控,支持多种类、高并发的验证需求,实现网络接口芯片较为完备的验证。***在运行过程中,占用计算资源少,用时较短,能够提高网络接口芯片的验证效率。
Description
技术领域
本发明涉及消息处理芯片领域,尤其涉及一种消息处理芯片验证方法。
背景技术
随着互连网络技术的性能需求的提高,网络接口芯片的设计日益复杂,通常需要支持多个端口,多种消息引擎,支持多种消息类型,高并发度,支持片上大消息offload等,伴随着性能和功能提高,网络接口芯片的结构也日益复杂,这给网络接口芯片的设计正确性带来了不小的挑战,因此进行充分的模拟验证也变得尤为重要,成为网络接口芯片研制成功的一种保障。
网络接口芯片的主要功能就是通过互连构成一个大型通信网络,实现节点之前的通信。随着网络接口芯片的复杂化,芯片上保存的通信消息中间状态越来越多,远大于一般以太网芯片可能的状态,要达到良好的验证效果,必须使用接近真实需求的消息通信模式,达到多种不同种类的消息的并发处理,而这些需要通过构建一个大型通信网络实现,这意味着服务器运算资源的大量占用和模拟效率的大打折扣。
发明内容
本发明主要解决了现有消息处理芯片验证需要占用大量服务器运算开支和模拟效率低的问题,提供了一种可以在有限资源情况下,尽可能完整高效的验证消息处理芯片的消息机制和逻辑设计的正确性,达到验证芯片正确性目的的面向消息传递机制的消息处理芯片验证方法。
本发明解决其技术问题所采用的技术方案是,一种消息处理芯片验证方法,包括以下步骤:
S1:集中整合网络模型的节点资源,利用悬挂和条目进行节点消息的仿真;
S2:给网络模型设置与待验证芯片端口数量相同的模拟端口数;
S3:配置消息引擎,为不同类型的消息分配不同的悬挂,悬挂中的不同条目代表不同节点的不同消息;
S4:模拟消息发送;
S5:模拟消息接收。
利用悬挂和条目代替对传统的多节点模拟,所有同类型的消息只需要一个悬挂,减少了资源占用。
作为上述方案的一种优选方案,所述模拟消息发送的流程依次为描述符生产、描述符提交、描述符仲裁进悬挂、拆包发送、等待应答和消息发送完成,所述描述符包含消息的所有信息。
作为上述方案的一种优选方案,所述模拟消息接收的流程依次为接收消息包、匹配消息接收悬挂、更新悬挂中的条目信息和回响应包接收完成。
作为上述方案的一种优选方案,所述模拟消息发送的过程中,通过控制描述符提交顺序实现消息的串行,通过令同一时刻同一悬挂中的条目同时发送实现消息的并发。
作为上述方案的一种优选方案,所述条目设有条目信息,条目信息用于记录一个节点上一条消息的状态信息,条目信息包含节点号、有效位和消息ID,当网络模型为发送方时,条目信息源于描述符。
作为上述方案的一种优选方案,所述描述符包括根据需求进行编写的描述符和根据真实并行计算的课题中记录的单个节点发送和接收消息转化而成的描述符。
作为上述方案的一种优选方案,所述步骤S03中,不同类型的消息包括模拟网络主动发起的点对点消息、模拟网络被动接收的消息和集合通信的消息,对应的悬挂依次为点对点消息发送悬挂、集合消息悬挂和点对点消息接收悬挂。
作为上述方案的一种优选方案,所述点对点消息发送悬挂在模拟消息发送时,由仲裁模块仲裁出条目,拆包引擎根据仲裁出的条目的条目信息进行拆包生成消息包,最后更新条目信息,仲裁模块一次仲裁只生成一个消息包。
作为上述方案的一种优选方案,所述集合消息悬挂在模拟消息发送时,子节点发送举手包,父节点在收齐所有子节点的举手包后向其父节点发送举手包,直至根节点收齐其子节点的举手包,然后根节点向外发出接收通知,告知所有节点本轮集合通信完成,在集合消息悬挂中一个条目模拟一个消息线程,一个节点包括一个或多个线程。
作为上述方案的一种优选方案,所述模拟消息接收时,网络模型收到消息处理芯片主动发出的消息包后,在点对点消息接收悬挂中查找对应的条目或者分配新的条目,当一条完整消息全部接收完毕后,生成响应包,并释放该消息对应的条目。
本发明的优点是:能够按照复杂网络接口芯片的验证要求,灵活高效地生成需要的消息序列,可以达到包级调控,支持多种类、高并发的验证需求,实现网络接口芯片较为完备的验证。***在运行过程中,占用计算资源少,用时较短,能够提高网络接口芯片的验证效率。
附图说明
图1为实施例中网络模型的一种结构示意图。
图2为实施例中描述符生成部件的一种结构示意图。
图3为实施例中点对点消息发送模拟的一种流程示意图。
图4为实施例中集合消息发送模拟的一种流程示意图。
图5为实施例中点对点消息接收模拟的一种流程示意图。
具体实施方式
下面通过实施例,并结合附图,对本发明的技术方案作进一步的说明。
实施例:
本实施例一种消息处理芯片验证方法,包括以下步骤:
S1:集中整合网络模型的节点资源,利用悬挂和条目进行节点消息的仿真;如图1所示,网络模型包括描述符产生单元、悬挂、拆包引擎、发送器、NCC、接收器、包处理单元、监测器和检查器,悬挂中包含多个条目,该网络模型摒弃传统的多节点模拟,将整个网络能用到的节点资源集中起来,以一个简化的条目来替代对一个点的仿真,一个点并发多少条消息就占用多少条目,每个条目记录消息收发的中间状态。条目设有条目信息,条目信息用于记录一个节点上一条消息的状态信息,条目信息包含节点号、有效位和消息ID,当网络模型为发送方时,条目信息源于描述符,单包消息一次就发送完所有数据,而多包RDMAW消息通常还要记录剩余数据量,及RDMAW的目标内存地址。如图2所示,描述符包括根据需求进行编写的描述符和根据真实并行计算的课题中记录的单个节点发送和接收消息转化而成的描述符,也可以通过设置随机参数生产,一个描述符对应一条点对点消息,一组描述符对应一条集合消息。
S2:给网络模型设置与待验证芯片端口数量相同的模拟端口数;在模拟过程中关注点在于控制消息包到达消息处理芯片端口的顺序,因此,可以省略对网络互联结构的模拟,仅给网络模型设置相应数量的端口,以实现待验证芯片和其他模拟节点的通信及芯片端口的自环。
S3:配置消息引擎,为不同类型的消息分配不同的悬挂,悬挂中的不同条目代表不同节点的不同消息;本实施例中,不同类型的消息包括模拟网络主动发起的点对点消息、模拟网络被动接收的消息和集合通信的消息,对应的悬挂依次为点对点消息发送悬挂、集合消息悬挂和点对点消息接收悬挂。如图3所示,点对点消息发送悬挂在模拟消息发送时,由仲裁模块仲裁出条目,拆包引擎根据仲裁出的条目的条目信息进行拆包生成消息包,最后更新条目信息,仲裁模块一次仲裁只生成一个消息包。点对点消息发送悬挂在模拟消息发送时,由仲裁模块仲裁出条目,拆包引擎根据仲裁出的条目的条目信息进行拆包生成消息包,最后更新条目信息,仲裁模块一次仲裁只生成一个消息包,如图4所示,作为叶子节点的条目会首先发送举手包,中间节点在收齐子节点的举手包后向父节点发举手包,而根节点在收齐子节点举手包后,向外发出结束通知,告知所有节点本轮集合通信完成。如图5所示,模拟点对点消息接收时,网络模型收到消息处理芯片主动发出的消息包后,在点对点消息接收悬挂中查找对应的条目或者分配新的条目,当一条完整消息全部接收完毕后,生成响应包,并释放该消息对应的条目。
S4:模拟消息发送,流程依次为描述符生产、描述符提交、描述符仲裁进悬挂、拆包发送、等待应答和消息发送完成,描述符包含消息的所有信息。网络消息之间既有并发要求,也有串行要求,相应的也需要对此进行模型,在模拟消息发送的过程中,通过控制描述符提交顺序实现消息的串行,通过令同一时刻同一悬挂中的条目同时发送实现消息的并发
S5:模拟消息接收,流程依次为接收消息包、匹配消息接收悬挂、更新悬挂中的条目信息和回响应包接收完成。
在网络模型中,消息处理芯片一次通信的完成是以消息为单位的,对应一个描述符结构。在消息处理芯片上的行为涉及描述符的管理、数据的拆分和发送、数据的接收和记录等,在发消息时,发送完所有的数据包,并收到对方的应答消息才算完成。在网络模型中,大致流程和网络接口芯片的设计一致,但是资源不是按照节点划分的,而是将网络模型当成一个巨型节点,但是它有很多的节点号,这样的网络模型只要能模拟所有处于活动状态的网络上所有节点的行为,从而大大降低了整体的资源开销。
本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
Claims (10)
1.一种消息处理芯片验证方法,其特征是:包括以下步骤:
S1:集中整合网络模型的节点资源,利用悬挂和条目进行节点消息的仿真;
S2:给网络模型设置与待验证芯片端口数量相同的模拟端口数;
S3:配置消息引擎,为不同类型的消息分配不同的悬挂,悬挂中的不同条目代表不同节点的不同消息;
S4:模拟消息发送;
S5:模拟消息接收。
2.根据权利要求1所述的一种消息处理芯片验证方法,其特征是:所述模拟消息发送的流程依次为描述符生产、描述符提交、描述符仲裁进悬挂、拆包发送、等待应答和消息发送完成,所述描述符包含消息的所有信息。
3.根据权利要求1所述的一种消息处理芯片验证方法,其特征是:所述模拟消息接收的流程依次为接收消息包、匹配消息接收悬挂、更新悬挂中的条目信息和回响应包接收完成。
4.根据权利要求2所述的一种消息处理芯片验证方法,其特征是:所述模拟消息发送的过程中,通过控制描述符提交顺序实现消息的串行,通过令同一时刻同一悬挂中的条目同时发送实现消息的并发。
5.根据权利要求3或4所述的一种消息处理芯片验证方法,其特征是:所述条目设有条目信息,条目信息用于记录一个节点上一条消息的状态信息,条目信息包含节点号、有效位和消息ID,当网络模型为发送方时,条目信息源于描述符。
6.根据权利要求2所述的一种消息处理芯片验证方法,其特征是:所述描述符包括根据需求进行编写的描述符和根据真实并行计算的课题中记录的单个节点发送和接收消息转化而成的描述符,一个描述符对应一条点对点消息,一组描述符对应一条集合消息。
7.根据权利要求1所述的一种消息处理芯片验证方法,其特征是:所述步骤S3中,不同类型的消息包括模拟网络主动发起的点对点消息、模拟网络被动接收的消息和集合通信的消息,对应的悬挂依次为点对点消息发送悬挂、集合消息悬挂和点对点消息接收悬挂。
8.根据权利要求7所述的一种消息处理芯片验证方法,其特征是:所述点对点消息发送悬挂在模拟消息发送时,由仲裁模块仲裁出条目,拆包引擎根据仲裁出的条目的条目信息进行拆包生成消息包,最后更新条目信息,仲裁模块一次仲裁只生成一个消息包。
9.根据权利要求7所述的一种消息处理芯片验证方法,其特征是:所述集合消息悬挂在模拟消息发送时,子节点发送举手包,父节点在收齐所有子节点的举手包后向其父节点发送举手包,直至根节点收齐其子节点的举手包,然后根节点向外发出接收通知,告知所有节点本轮集合通信完成,在集合消息悬挂中一个条目模拟一个消息线程,一个节点包括一个或多个线程。
10.根据权利要求7所述的一种消息处理芯片验证方法,其特征是:所述模拟点对点消息接收时,网络模型收到消息处理芯片主动发出的消息包后,在点对点消息接收悬挂中查找对应的条目或者分配新的条目,当一条完整消息全部接收完毕后,生成响应包,并释放该消息对应的条目。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110665267.2A CN113315664B (zh) | 2021-06-16 | 2021-06-16 | 一种消息处理芯片验证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110665267.2A CN113315664B (zh) | 2021-06-16 | 2021-06-16 | 一种消息处理芯片验证方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113315664A true CN113315664A (zh) | 2021-08-27 |
CN113315664B CN113315664B (zh) | 2023-07-11 |
Family
ID=77379067
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110665267.2A Active CN113315664B (zh) | 2021-06-16 | 2021-06-16 | 一种消息处理芯片验证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113315664B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102740342A (zh) * | 2012-06-08 | 2012-10-17 | 大唐移动通信设备有限公司 | 网管设备性能的模拟测试方法和*** |
CN103178996A (zh) * | 2013-03-15 | 2013-06-26 | 烽火通信科技股份有限公司 | 分布式包交换芯片模型验证***及验证方法 |
CN103368703A (zh) * | 2012-04-10 | 2013-10-23 | 华为技术有限公司 | 数据包重传方法、数据包接收方法及装置 |
US20170093770A1 (en) * | 2015-09-25 | 2017-03-30 | Intel Corporation | Technologies for receive side message inspection and filtering |
CN110674055A (zh) * | 2019-09-11 | 2020-01-10 | 上海高性能集成电路设计中心 | 一种用于部件级和部件联合级的缓存一致性模拟验证方法 |
CN110705198A (zh) * | 2019-09-11 | 2020-01-17 | 上海高性能集成电路设计中心 | 一种多端口多消息类型交叉通信部件的验证方法 |
-
2021
- 2021-06-16 CN CN202110665267.2A patent/CN113315664B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103368703A (zh) * | 2012-04-10 | 2013-10-23 | 华为技术有限公司 | 数据包重传方法、数据包接收方法及装置 |
CN102740342A (zh) * | 2012-06-08 | 2012-10-17 | 大唐移动通信设备有限公司 | 网管设备性能的模拟测试方法和*** |
CN103178996A (zh) * | 2013-03-15 | 2013-06-26 | 烽火通信科技股份有限公司 | 分布式包交换芯片模型验证***及验证方法 |
US20170093770A1 (en) * | 2015-09-25 | 2017-03-30 | Intel Corporation | Technologies for receive side message inspection and filtering |
CN110674055A (zh) * | 2019-09-11 | 2020-01-10 | 上海高性能集成电路设计中心 | 一种用于部件级和部件联合级的缓存一致性模拟验证方法 |
CN110705198A (zh) * | 2019-09-11 | 2020-01-17 | 上海高性能集成电路设计中心 | 一种多端口多消息类型交叉通信部件的验证方法 |
Non-Patent Citations (1)
Title |
---|
盛腾飞等: "基于HPNTsim的网络接口模拟平台的设计与实现", 《第二十一届计算机工程与工艺年会暨第七届微处理器技术论坛论文集》, pages 149 - 157 * |
Also Published As
Publication number | Publication date |
---|---|
CN113315664B (zh) | 2023-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104601665B (zh) | 一种对物联网感知设备进行云端实时仿真的***和方法 | |
CN114363021B (zh) | 网络靶场***、网络靶场***的虚拟网络实现方法及装置 | |
CN111859832B (zh) | 一种芯片仿真验证方法、装置及相关设备 | |
US10833952B2 (en) | Introducing latency and delay for test or debug purposes in a SAN environment | |
US20070239420A1 (en) | Simulation of distributed networks | |
CN114422010B (zh) | 一种基于网络虚拟化的卫星通信仿真平台的协议测试方法 | |
CN112527647B (zh) | 基于NS-3的Raft共识算法测试*** | |
CN105553732B (zh) | 一种分布式网络模拟方法及*** | |
CN112134792A (zh) | 一种远程列车网络通信接口测试网关设备及*** | |
CN112073237B (zh) | 一种云边架构中大规模目标网络构建方法 | |
Sun et al. | Republic: Data multicast meets hybrid rack-level interconnections in data center | |
CN107391672A (zh) | 数据的读写方法及消息化的分布式文件*** | |
CN112199154B (zh) | 一种基于分布式协同采样中心式优化的强化学习训练***及方法 | |
CN112351106B (zh) | 一种含事件网格的服务网格平台及其通信方法 | |
CN113315664B (zh) | 一种消息处理芯片验证方法 | |
CN110191028A (zh) | 可软件定义的互连设备的测试装置、***及方法 | |
CN106452695A (zh) | 冗余报文处理方法、装置及*** | |
CN113342456A (zh) | 一种连接方法、装置、设备和存储介质 | |
CN107306289A (zh) | 一种基于云计算的负载均衡方法及设备 | |
CN115733759A (zh) | Ttfc消息调度的仿真模型*** | |
CN105791163A (zh) | 更新处理方法及装置 | |
CN103491079B (zh) | 一种报文生成装置、服务器以及方法 | |
CN103384225A (zh) | 基于输入交叉点缓存快速分组交换网络的流量控制方法 | |
CN101510827B (zh) | 路由交换装置、方法及在路由交换装置中更新业务的方法 | |
CN112307651A (zh) | 自组织lvc应用集成*** |
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 |