CN116048893B - 光纤总线接口的测试方法及相关设备 - Google Patents
光纤总线接口的测试方法及相关设备 Download PDFInfo
- Publication number
- CN116048893B CN116048893B CN202211667167.4A CN202211667167A CN116048893B CN 116048893 B CN116048893 B CN 116048893B CN 202211667167 A CN202211667167 A CN 202211667167A CN 116048893 B CN116048893 B CN 116048893B
- Authority
- CN
- China
- Prior art keywords
- data packet
- data
- transmitted
- address
- fifo
- 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
- 238000012360 testing method Methods 0.000 title claims abstract description 97
- 239000013307 optical fiber Substances 0.000 title claims abstract description 39
- 238000000034 method Methods 0.000 title claims abstract description 28
- 230000005540 biological transmission Effects 0.000 claims abstract description 48
- 230000004044 response Effects 0.000 claims abstract description 30
- 238000010998 test method Methods 0.000 claims abstract description 15
- 238000007726 management method Methods 0.000 claims description 28
- 239000000835 fiber Substances 0.000 claims description 15
- 238000013500 data storage Methods 0.000 claims description 8
- 238000012545 processing Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 3
- 230000001360 synchronised effect Effects 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000011161 development Methods 0.000 description 4
- 230000006855 networking Effects 0.000 description 4
- 230000001419 dependent effect Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000009191 jumping Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- SBNFWQZLDJGRLK-UHFFFAOYSA-N phenothrin Chemical compound CC1(C)C(C=C(C)C)C1C(=O)OCC1=CC=CC(OC=2C=CC=CC=2)=C1 SBNFWQZLDJGRLK-UHFFFAOYSA-N 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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/221—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 buses, lines or interfaces, e.g. stuck-at or open line faults
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
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)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种光纤总线接口的测试方法及相关设备。所述方法包括:响应于接收到对光纤总线接口的测试请求,通过上位机将至少一个待传输数据包上传至临时存储器中;响应于所述临时存储器中为非空状态,读取所述临时存储器中所述待传输数据包的数据并将所述待传输数据包的数据写入对应的接收接口;响应于所述待传输数据包的数据写入对应的接收接口,获取传输参数;根据所述传输参数,以完成对所述光纤总线接口的测试。本申请实施例通过设计一个新的测试方法,在一个测试IP核中集成多个测试节点,且每个节点可以灵活选择各种节点类型,另外,因为设置了多个测试IP核,因此可以对大量数据负载进行压力测试,相较于现有的测试方法更加便捷。
Description
技术领域
本申请涉及光纤通信技术领域,尤其涉及一种光纤总线接口的测试方法及相关设备。
背景技术
随着航天器控制***、传感器等技术的不断发展,航天电子设备日益趋向于高度集成化、智能化和信息综合化,箭上信息传输量大幅增加。新一代火箭控制***比任何时候都更依赖高带宽、强实时、开放式的数据通信来进行多方数据综合处理从而提高其控制性能,随着高速光纤总线技术的发展,需要设计一种满足该类型光纤总线的数据流测试方法。
传统的测试方法使用一个或多个对等的通信节点,来模拟的命令响应式的测试方法进行测试。这种测试方式有如下几个问题无法解决:
NC测试需要配一个对等的NT节点,NT测试需要配一个对等的NC节点。同时还需要区分长、短报文的,根据对端的匹配、配置选择相应的测试节点,而传统的控制设备不具备配置多类型数据流NC或NT节点的能力。目前在GLink光纤测试领域,也没有类似的测试设备。
光纤总线使用时,通常是组网使用,而在组网测试中,通常使用多个NC或NT节点,通常对每一个网络独立配置各种节点是很难实现的。
使用单一的一发一收的命令响应模式,难以测试总线在大量数据负载情况下的数据流通信情况。
发明内容
有鉴于此,本申请的目的在于提出一种光纤总线接口的测试方法及相关设备。
基于上述目的,本申请提供了一种光纤总线接口的测试方法,应用于测试装置,所述装置包括上位机、临时存储器和接收接口;
所述方法,包括:
响应于接收到对光纤总线接口的测试请求,通过上位机将至少一个待传输数据包上传至临时存储器中;响应于所述临时存储器中为非空状态,读取所述临时存储器中所述待传输数据包的数据并将所述待传输数据包的数据写入对应的接收接口;
响应于所述待传输数据包的数据写入对应的接收接口,获取传输参数;根据所述传输参数,以完成对所述光纤总线接口的测试。
在一种可能的实现方式中,所述光纤总线接口包括:智能节点控制器;所述临时存储器包括:双倍速率同步动态随机存储器DDR;所述待传输数据包包括:长报文数据包;
所述通过上位机将至少一个待传输数据包上传至临时存储器中,包括:
将所述长报文数据包的数据写入所述DDR中;
将获取到的所述长报文数据包的地址和帧头写入测试装置中的长报文地址管理先进先出的数据缓存器FIFO中。
在一种可能的实现方式中,所述响应于所述临时存储器中为非空状态,读取所述临时存储器中所述待传输数据包的数据并将所述待传输数据包的数据写入对应的接收接口,包括:
响应于所述DDR为非空状态,读取所述长报文地址管理FIFO中的所述长报文数据包的地址;
根据读取到的所述长报文数据包的地址,从所述DDR中读取所述待传输数据包的数据;
响应于测试装置所述智能节点控制器接收FIFO未满且获取的当前所述DDR的地址小于所述长报文数据包的包尾地址,将从所述DDR中读取所述待传输数据包的数据传输至所述智能节点控制器。
在一种可能的实现方式中,所述光纤总线接口包括:智能节点控制器;所述临时存储器包括:第一智能节点控制器短报文发送先进先出的数据缓存器FIFO;所述待传输数据包包括:短报文数据包;
所述通过上位机将至少一个待传输数据包上传至临时存储器中,包括:
通过上位机将所述短报文数据包传输到所述第一智能节点控制器短报文发送FIFO中。
在一种可能的实现方式中,所述响应于所述临时存储器中为非空状态,读取所述临时存储器中所述待传输数据包的数据并将所述待传输数据包的数据写入对应的接收接口,包括:
响应于所述第一智能节点控制器短报文发送FIFO为非空状态,将所述短报文数据包写入第二智能节点控制器短报文发送FIFO中,并接收所述断保问数据包对应的反馈信息包;
将所述反馈信息包写入至智能节点控制器短报文接收FIFO,并通过直接数据存储将所述反馈信息传输至上位机。
在一种可能的实现方式中,所述光纤总线接口包括:智能节点终端;所述临时存储器包括:双倍速率同步动态随机存储器DDR和长报文地址管理FIFO;所述待传输数据包包括:长报文数据包;
所述通过上位机将至少一个待传输数据包上传至临时存储器中,包括:
响应于所述智能节点终端接收到所述长报文数据包,将所述长报文数据包中的数据存储至所述DDR中,并将所述长报文数据包的帧头信息写入所述长报文地址管理FIFO中。
在一种可能的实现方式中,所述响应于所述临时存储器中为非空状态,读取所述临时存储器中所述待传输数据包的数据并将所述待传输数据包的数据写入对应的接收接口,包括:
响应于所述长报文地址管理FIFO中为非空状态时,读取所述长报文地址管理FIFO中的所述长报文地址;
根据读取的所述长报文地址从所述DDR中读取所述长报文数据包,并通过直接数据存储将所述长报文数据包发送至所述上位机。
在一种可能的实现方式中,所述光纤总线接口包括:智能节点终端;所述临时储存器包括:智能节点终端短报文发送子地址空间;所述待传输数据包包括:短报文数据包;
所述通过上位机将至少一个待传输数据包上传至临时存储器中,包括:
所述上位机通过直接数据存储将所述短报文数据包传输至所述智能节点终端短报文发送子地址空间。
在一种可能的实现方式中,所述响应于所述临时存储器中为非空状态,读取所述临时存储器中所述待传输数据包的数据并将所述待传输数据包的数据写入对应的接收接口,包括:
响应于接收到智能节点终端对应的智能节点控制器发送的数据处理请求,将所述短报文数据包的帧头传输至所述智能节点终端;
根据所述帧头判断所述短报文数据包的传输方向;
根据所述传输方向将所述短报文数据包写入对应的接收接口。
基于同一发明构思,本申请实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任意一项所述的光纤总线接口的测试方法。
从上面所述可以看出,本申请提供的光纤总线接口的测试方法及相关设备,响应于接收到对光纤总线接口的测试请求,通过上位机将至少一个待传输数据包上传至临时存储器中;响应于所述临时存储器中为非空状态,读取所述临时存储器中所述待传输数据包的数据并将所述待传输数据包的数据写入对应的接收接口;响应于所述待传输数据包的数据写入对应的接收接口,获取传输参数;根据所述传输参数,以完成对所述光纤总线接口的测试。通过设计一个新的测试方法,在一个测试IP核中集成多个测试节点,且每个节点可以灵活选择各种节点类型,另外,因为设置了多个测试IP核,因此可以对大量数据负载进行压力测试,相较于现有的测试方法更加便捷。
附图说明
为了更清楚地说明本申请或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例的光纤总线接口的测试方法流程图;
图2为本申请实施例的测试装置中的IP核示意图;
图3为本申请实施例的测试方法结构示意图;
图4为本申请实施例的模块B的结构示意图;
图5为本申请实施例的smartNT短报文子地址控制器结构示意图;
图6为本申请实施例的电子设备结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本申请进一步详细说明。
需要说明的是,除非另外定义,本申请实施例使用的技术术语或者科学术语应当为本申请所属领域内具有一般技能的人士所理解的通常意义。本申请实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
如背景技术部分所述,随着航天器控制***、传感器等技术的不断发展,航天电子设备日益趋向于高度集成化、智能化和信息综合化,箭上信息传输量大幅增加。新一代火箭控制***比任何时候都更依赖高带宽、强实时、开放式的数据通信来进行多方数据综合处理从而提高其控制性能,随着高速光纤总线技术的发展,需要设计一种满足该类型光纤总线的数据流测试方法。
传统的测试方法使用一个或多个对等的通信节点,来模拟的命令响应式的测试方法进行测试。这种测试方式有如下几个问题无法解决:
NC测试需要配一个对等的NT节点,NT测试需要配一个对等的NC节点。同时还需要区分长、短报文的,根据对端的匹配、配置选择相应的测试节点,而传统的控制设备不具备配置多类型数据流NC或NT节点的能力。目前在GLink光纤测试领域,也没有类似的测试设备。
光纤总线使用时,通常是组网使用,而在组网测试中,通常使用多个NC或NT节点,通常对每一个网络独立配置各种节点是很难实现的。
使用单一的一发一收的命令响应模式,难以测试总线在大量数据负载情况下的数据流通信情况。
综合上述考虑,本申请实施例提出一种光纤总线接口的测试方法及相关设备,响应于接收到对光纤总线接口的测试请求,通过上位机将至少一个待传输数据包上传至临时存储器中;响应于所述临时存储器中为非空状态,读取所述临时存储器中所述待传输数据包的数据并将所述待传输数据包的数据写入对应的接收接口;响应于所述待传输数据包的数据写入对应的接收接口,获取传输参数;根据所述传输参数,以完成对所述光纤总线接口的测试。本申请实施例通过设计一个新的测试方法,在一个测试IP核中集成多个测试节点,且每个节点可以灵活选择各种节点类型,另外,本申请的测试方法中因为设置了多个测试IP核,因此可以对大量数据负载进行压力测试,相较于现有的测试方法更加便捷有效。
以下,通过具体的实施例来详细说明本申请实施例的技术方案。
参考图1,本申请实施例的光纤总线接口的测试方法,包括以下步骤:
步骤S101,响应于接收到对光纤总线接口的测试请求,通过上位机将至少一个待传输数据包上传至临时存储器中;响应于所述临时存储器中为非空状态,读取所述临时存储器中所述待传输数据包的数据并将所述待传输数据包的数据写入对应的接收接口;
步骤S102,响应于所述待传输数据包的数据写入对应的接收接口,获取传输参数;根据所述传输参数,以完成对所述光纤总线接口的测试。
参考图2,为本申请实施例的测试装置中的IP核示意图。
如图2所示,本申请实施例中测试装置中的IP核中,描述了如何组织管理光纤节点的模块A,模块A用于将各类光纤GLink节点配置为各种不同节点类型。
模块B,用于描述在测试长报文时,测试IP应如何描述划分以及如何组织。
模块C,用于描述在测试短报文时,测试IP应如何描述划分以及如何组织。
模块A、B、C作为一个整体描述的IP核,可以被例化为n份,成为IP1~IPn。
GLINK节点非本申请实施例中描述的模块,是用来指代箭载光纤总线节点,本实施例中GLINK或GLink均指代箭载光纤总线。
CPU模块非本文描述的模块,用来描述通过高速背板总线(例如PCIE总线),将测试IP处理的数据流发往或接收自上位机的功能。在本实施例中,CPU模块中可以包括两个DMA通道,两个DMA通道均为数据流通道,在对长报文进行测试时使用其中一个独立的DMA通道,在对短报文进行测试时使用另外一个独立的DMA通道。
本接口模块描述测试IP核如何对光纤总线接口节点进行配置描述,包括:上电复位时,测试IP对外部光纤GLINK节点的处理方法;测试IP控制和地址映射方式的描述;测试IP的控制寄存器接口描述。
关于测试IP控制和地址映射方式的描述,具体的,外部光纤节点输入的n位地址总线时,IP总是以16比特字为单位进行映射的,n位地址总线可寻址2nKB的存储器空间。此外,光纤节点在不同NC/NT模式下使用的堆栈指针和交换数据区指针,测试IP核总是对应16比特地址空间。因此,测试IP与外部光纤节点的访问地址不同时,应对相应偏移地址采取必要移位操作。
针对步骤S101,参考图3,为本申请实施例的测试方法结构示意图。
具体的,图3中模块B为长报文NC、NT在数据流通信中的位置,异步FIFO用于校准传输数据包的跨时钟域,两个发送控制器和两个接收控制器用于调整传输数据包的格式,以适应数据的传输,SmartNC SFIFO表示智能节点控制器发送FIFO,SmartNT SFIFO表示智能节点终端发送FIFO,SmartNC RFIFO表示智能节点控制器接收FIFO,SmartNT RFIFO表示智能节点终端接收FIFO,Smart0表示智能节点,图3中的模块B和模块C对应于图2中的模块B和模块C。
参考图4,为本申请模块B的结构示意图。
模块B被描述为图4中所示的各个功能组成部分。包括:
DDR及其读写控制器;DDR读写仲裁请求控制器;长报文地址管理器(地址管理FIFO)在DDR存储器中,存放长报文数据,包括发送的测试数据和接收的测试数据报文,本实施例描述了发送的测试数据的报文格式,以及接收的测试数据报文格式。
本实施例中,需要在长报文测试IP中描述1~n个地址管理寄存器,可以利用FIFO或BRAM技术实现。地址管理寄存器用于指示数据流数据存放起始地址、终止地址和数据流数据发送起始地址、终止地址。
图3中的模块C描述短报文测试IP核。
短报文地址管理模块为智能NT分配并管理子地址所占空间大小。每个子地址所占空间大小可在一定范围内自由分配。短报文地址管理模块可为每个智能NT最多分配32个子地址。
在一可行的实施例中,单个板卡的FPGA内例化了2个GLINK节点,每个节点各含有4个samrtNC+4个smartNT。其中每个smartNC以及smartNT均可配置为长报文模式或短报文模式。
参考图5,为本申请实施例的smartNT短报文子地址控制器结构示意图。
其中,地址管理分配模块接口axi-lite接口,其可动态设置每个子地址控制器的分配IP号。以及每个子地址在存储器中分配的起始地址,终止地址,每个子地址的大小可在存储器范围内任意分配。
写地址请求仲裁器。其将待写入的子地址IP号同时与各子地址IP号进行比较,将比较结果以独热码形式输出,根据输出仲裁结果将相应的子地址控制器与BRAM写控制器进行连接。
Bram写控制器将axis口输入的fifo数据写进bram相应的位置。Bram的写地址由相应的子地址控制器提供。
读地址请求仲裁器。其将待读取的子地址IP号同时与各子地址IP号进行比较,将比较结果以独热码形式输出,根据输出仲裁结果将相应的子地址控制器与BRAM读控制器进行连接。
Bram读控制器在bram相应的位置读取内容,并输出到AXIS接口上供下一级使用。Bram的读地址由相应的子地址控制器提供。
子地址控制器根据地址管理分配模块输出的起始地址、终止地址,为每个子地址提供当前的写地址及读地址,并输出该子地址中消息的空满标志,及已存储消息条数,剩余空间等。
在一可行的实施例中,在对smartNC接口进行测试时,需要先对软件进行初始化:
初始化NC大数据流配置寄存器,设置典型传输带宽、FC帧的最大负载容量、大数据NC发起的交换命令堆栈深度、交换传输优先级、长/短报文模式、短报文模式下重传使能以及重传次数等;堆栈描述块仅用于大数据流传输过程的状态检测与故障诊断,无需分配较大的RAM空间;推荐设置命令堆栈深度寄存器位值为"00",对应64条交换,占用1KB存储器空间;用户在调试模式下可使能命令堆栈,而在正常工作模式下可选择将命令堆栈功能关闭;
初始化SmartNC超时设置寄存器;
初始化SmartNC命令堆栈指针stack pointer(存储器偏移地址为0x0108/0x0109/0x010a/0x010b);
初始化终端ID配置寄存器,设置节点ID;
初始化功能配置寄存器,配置光纤通道使能、环网络接入功能以及不同优先级传输的带宽分配等参数;
初始化设置SMARTNC长报文控制器,分配相应的DDR存储空间。初始化相应smartNC短报文发送接收FIFO。
初始化工作模式配置寄存器,使能相应路SmartNC。
在分配堆栈使用的存储器空间时,应确保SmartNC堆栈空间不与控制流NC、控制流NT以及其它路SmartNC分配的存储器空间重叠。
当测试长报文数据传输时,首先进入IDLE状态,在该状态下,完成图像/视频等大数据传输初始化操作(如写入CFG1、CFG2和CFG3)后,跳转至WR_DDR状态。
进一步的,在WR_DDR状态下,根据上位机DMA传输到板卡的数据包帧头将数据写入到DDR中,该数据包的帧头包含了本包对应的长报文节点、长报文类型、长报文的第几包、是否为长报文头一包等内容,并将相应的存储地址以及长度等帧头信息写入长报文地址管理FIFO,在写完一包长报文后,相应的长报文地址管理FIFO的空信号fifo_empty清零。需要注意的是,上述通过DMA传输到板卡的数据包的帧头中还包括对应的识别信息,通过该识别信息对该数据包进行判断,判断该数据包为长报文还是短报文,并根据上述判断结果将该数据包置入对应的通道中,以及判断得到该数据包属于哪一个IP核管理,最终将上述数据包存储至对应的位置。
进一步的,进入RD_DDR状态,当长报文地址管理FIFO的空信号fifo_empty为零且有长报文发送数据请求时,将FIFO中的地址等信息读出,并按地址信息去DDR中将相应的输出读出到对应的SMART FIFO中。若为第一包数据则跳转至TRANS_RESET状态;否则直接跳转到SMARTNC_FIFO_WR中。
进一步的,在TRANS_RESET状态中,输出一个时钟周期宽度的有效复位信号smartnc_trans_reset,复位SMARTNC传输过程,并等待接口信号smartnc_trans_idle为1。
在TRANS_TRIG状态下,通过smartnc_trans_trig信号输出一个时钟周期宽度的正脉冲,启动当前帧的发送过程。
进一步的,在SMARTNC_FIFO_WR状态下,查询对应长报文地址管理FIFO的输出,若对应当前DDR地址小于包尾地址、且SMARTNC接收FIFO快满信号smartnc_intf_tx_fifo_afull无效时,读取DDR数据并将数据写入SMARTNC接口FIFO中。若SMARTNC传输空闲信号smartnc_trans_idle有效(即传输正常结束);或长报文地址管理FIFO显示该长报文分配的地址轮回溢出(即传输分配带宽较低导致大数据接收溢出),跳转至ERR_PROC状态。
进一步的,在ERR_PROC状态下,根据rd_ping_fifo_sel当前值,完成相应长报文地址管理FIFO的读操作,直到FIFO输出对应一帧报文的首包;跳转置IDLE状态,开始准备下次大数据传输。
需要注意的是,在将上述长报文信息通过DMA传输到上位机的过程中,需要对上述长报文信息添加一段字节的帧头,该帧头可以区分上述长报文信息的地址来源,以便于上位机进行识别记录。上述步骤对于下述的长短报文以及对不同的smart接口均适用,故于下述实施例中不再赘述。
需要注意的是,在一般情况下,长报文数据一般均为普通数据,例如视频,短报文数据一般为指令数据。
当传输短报文数据时,上位机通过DMA将待发送的SMARTNC短报文数据包传输到smartNC短报文发送FIFO。该FIFO中可以临时存储多条SMARTNC短报文消息。
当SMARTNC短报文发送FIFO中非空时,启动SMARTNC短报文发送状态机,对SMARTNC进行传输复位、传输启动,并将一包完整的短报文消息从发送FIFO中写入的smartNC接口;并开启smartNC接收消息状态。
将smartNC接收到的短报文消息写入到smartNC短报文接收FIFO中,并通过DMA传输到上位机。完成一次完整的smartNC短报文传输。
在一可行的实施例中,在对smartNT接口进行测试时,需要先对软件进行初始化:
初始化大数据NT流配置寄存器,设置长/短报文工作模式;在短报文模式下,还需要对配对的SmartNC的ID号以及配对SmartNC的编号进行初始化。
初始化终端ID配置寄存器,设置节点ID。
初始化功能配置寄存器,配置光纤通道使能、环网络接入功能以及不同优先级传输的带宽分配等参数。
初始化SMARTNT短报文地址控制器,为需要的短报文子地址分配相应的空间。初始化SMARTNT长报文控制器,为smartNT接收长报文分配相应的DDR空间。复位相应的smartNT短报文接收FIFO。
初始化工作模式配置寄存器,使能相应路SmartNT。
当测试长报文数据传输时,首先进入IDLE状态,当长报文接收FIFO中有数据时,对数据头进行解析并添加该长报文的ID等信息,跳转至WR_DDR状态;
在WR_DDR状态中,将长报文接收FIFO中的数据读取到DDR中,并将相应的存储地址以及长度等帧头信息写入长报文地址管理FIFO,在写完一包长报文后,相应的长报文地址管理FIFO的空信号fifo_empty清零;
在RD_DDR状态中,当长报文地址管理FIFO的空信号fifo_empty非零时,将FIFO中的地址等信息读出,并按地址信息去DDR中将相应的输出读出到DMA发送FIFO中,并将数据传送的上位机的内存中。上位机将相应输出存储到硬盘相应位置。
在测试短报文数据时,上位机通过DMA将待发送的SMARTNT短报文数据包传输到smartNT短报文发送子地址空间。
当SMARTNT接收到NC的数据处理请求后,将数据帧头传输到smartNT接收FIFO,并根据帧头判断数据传输方向。
若传输方向为NC到NT,则继续读取接口的数据,并将数据传输到smartNT接收FIFO中。当smartNT接收FIFO中至少包含一包完整数据包后,则通过DMA将数据传给上位机。完成一次完整的smartNT短报文接收传输。
若传输方向为NT到NC,将相应子地址中的数据包读出一帧,写入到smartNT发送接口。并同时将smartNT接收FIFO中帧头信息通过DMA传输到上位机。完成一次完整的smartNT短报文发送传输。
通过上述实施例可以看出,本申请实施例所述的光纤总线接口的测试方法,响应于接收到对光纤总线接口的测试请求,通过上位机将至少一个待传输数据包上传至临时存储器中;响应于所述临时存储器中为非空状态,读取所述临时存储器中所述待传输数据包的数据并将所述待传输数据包的数据写入对应的接收接口;响应于所述待传输数据包的数据写入对应的接收接口,获取传输参数;根据所述传输参数,以完成对所述光纤总线接口的测试。本申请实施例通过设计一个新的测试方法,在一个测试IP核中集成多个测试节点,且每个节点可以灵活选择各种节点类型,另外,本申请的测试方法中因为设置了多个测试IP核,因此可以对大量数据负载进行压力测试,相较于现有的测试方法更加便捷有效。
需要说明的是,本申请实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本申请实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
需要说明的是,上述对本申请的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
基于同一发明构思,与上述任意实施例方法相对应的,本申请还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的光纤总线接口的测试方法。
图6示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作***和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
上述实施例的电子设备用于实现前述任一实施例中相应的光纤总线接口的测试方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本申请的范围(包括权利要求)被限于这些例子;在本申请的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本申请实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本申请实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本申请实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本申请实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本申请的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本申请实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本申请的具体实施例对本申请进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本申请实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本申请实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (6)
1.一种光纤总线接口的测试方法,应用于测试装置,所述装置包括上位机、临时存储器和接收接口;
所述方法,包括:
响应于接收到对光纤总线接口的测试请求,通过上位机将至少一个待传输数据包上传至临时存储器中;响应于所述临时存储器中为非空状态,读取所述临时存储器中所述待传输数据包的数据并将所述待传输数据包的数据写入对应的接收接口;所述光纤总线接口包括:智能节点控制器和智能节点终端;所述临时存储器包括:双倍速率同步动态随机存储器DDR、第一智能节点控制器短报文发送先进先出的数据缓存器FIFO、长报文地址管理FIFO和智能节点终端短报文发送子地址空间;所述待传输数据包包括:长报文数据包和短报文数据包;
响应于所述待传输数据包的数据写入对应的接收接口,获取传输参数;根据所述传输参数,以完成对所述光纤总线接口的测试;
所述通过上位机将至少一个待传输数据包上传至临时存储器中,包括:将所述长报文数据包的数据写入所述DDR中;将获取到的所述长报文数据包的地址和帧头写入测试装置中的长报文地址管理先进先出的数据缓存器FIFO中;或
通过上位机将所述短报文数据包传输到所述第一智能节点控制器短报文发送FIFO中;或
响应于所述智能节点终端接收到所述长报文数据包,将所述长报文数据包中的数据存储至所述DDR中,并将所述长报文数据包的帧头信息写入所述长报文地址管理FIFO中;或
所述上位机通过直接数据存储将所述短报文数据包传输至所述智能节点终端短报文发送子地址空间。
2.根据权利要求1所述的方法,其特征在于,所述响应于所述临时存储器中为非空状态,读取所述临时存储器中所述待传输数据包的数据并将所述待传输数据包的数据写入对应的接收接口,包括:
响应于所述DDR为非空状态,读取所述长报文地址管理FIFO中的所述长报文数据包的地址;
根据读取到的所述长报文数据包的地址,从所述DDR中读取所述待传输数据包的数据;
响应于测试装置所述智能节点控制器接收FIFO未满且获取的当前所述DDR的地址小于所述长报文数据包的包尾地址,将从所述DDR中读取所述待传输数据包的数据传输至所述智能节点控制器。
3.根据权利要求1所述的方法,其特征在于,所述响应于所述临时存储器中为非空状态,读取所述临时存储器中所述待传输数据包的数据并将所述待传输数据包的数据写入对应的接收接口,包括:
响应于所述第一智能节点控制器短报文发送FIFO为非空状态,将所述短报文数据包写入第二智能节点控制器短报文发送FIFO中,并接收所述短报文数据包对应的反馈信息包;
将所述反馈信息包写入至智能节点控制器短报文接收FIFO,并通过直接数据存储将所述反馈信息传输至上位机。
4.根据权利要求1所述的方法,其特征在于,所述响应于所述临时存储器中为非空状态,读取所述临时存储器中所述待传输数据包的数据并将所述待传输数据包的数据写入对应的接收接口,包括:
响应于所述长报文地址管理FIFO中为非空状态时,读取所述长报文地址管理FIFO中的所述长报文地址;
根据读取的所述长报文地址从所述DDR中读取所述长报文数据包,并通过直接数据存储将所述长报文数据包发送至所述上位机。
5.根据权利要求1所述的方法,其特征在于,所述响应于所述临时存储器中为非空状态,读取所述临时存储器中所述待传输数据包的数据并将所述待传输数据包的数据写入对应的接收接口,包括:
响应于接收到智能节点终端对应的智能节点控制器发送的数据处理请求,将所述短报文数据包的帧头传输至所述智能节点终端;
根据所述帧头判断所述短报文数据包的传输方向;
根据所述传输方向将所述短报文数据包写入对应的接收接口。
6.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至5任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211667167.4A CN116048893B (zh) | 2022-12-22 | 2022-12-22 | 光纤总线接口的测试方法及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211667167.4A CN116048893B (zh) | 2022-12-22 | 2022-12-22 | 光纤总线接口的测试方法及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116048893A CN116048893A (zh) | 2023-05-02 |
CN116048893B true CN116048893B (zh) | 2024-04-30 |
Family
ID=86121018
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211667167.4A Active CN116048893B (zh) | 2022-12-22 | 2022-12-22 | 光纤总线接口的测试方法及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116048893B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4748617A (en) * | 1985-12-20 | 1988-05-31 | Network Systems Corporation | Very high-speed digital data bus |
US7181360B1 (en) * | 2004-01-30 | 2007-02-20 | Spirent Communications | Methods and systems for generating test plans for communication devices |
CN102420719A (zh) * | 2011-11-28 | 2012-04-18 | 曙光信息产业股份有限公司 | 一种测试PCIe总线带宽的装置和方法 |
CN106612141A (zh) * | 2016-12-20 | 2017-05-03 | 北京旋极信息技术股份有限公司 | 一种光纤通道协议通用仿真测试卡及其数据交互方法 |
CN110198186A (zh) * | 2019-05-07 | 2019-09-03 | 北京航空航天大学 | 一种可脱机工作的高速SpaceWire光纤链路测试卡 |
CN114168520A (zh) * | 2021-12-13 | 2022-03-11 | 航天新长征大道科技有限公司 | 光纤通信总线装置、设备和*** |
-
2022
- 2022-12-22 CN CN202211667167.4A patent/CN116048893B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4748617A (en) * | 1985-12-20 | 1988-05-31 | Network Systems Corporation | Very high-speed digital data bus |
US7181360B1 (en) * | 2004-01-30 | 2007-02-20 | Spirent Communications | Methods and systems for generating test plans for communication devices |
CN102420719A (zh) * | 2011-11-28 | 2012-04-18 | 曙光信息产业股份有限公司 | 一种测试PCIe总线带宽的装置和方法 |
CN106612141A (zh) * | 2016-12-20 | 2017-05-03 | 北京旋极信息技术股份有限公司 | 一种光纤通道协议通用仿真测试卡及其数据交互方法 |
CN110198186A (zh) * | 2019-05-07 | 2019-09-03 | 北京航空航天大学 | 一种可脱机工作的高速SpaceWire光纤链路测试卡 |
CN114168520A (zh) * | 2021-12-13 | 2022-03-11 | 航天新长征大道科技有限公司 | 光纤通信总线装置、设备和*** |
Also Published As
Publication number | Publication date |
---|---|
CN116048893A (zh) | 2023-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110309088B (zh) | Zynq fpga芯片及其数据处理方法、存储介质 | |
JP4669088B1 (ja) | 試験装置、試験方法およびプログラム | |
JP2021530813A (ja) | 専用低レイテンシリンクを使用した複数のハードウェアアクセラレータのための統合されたアドレス空間 | |
CN112749113A (zh) | 一种数据交互的方法、***、设备及介质 | |
CN116719755B (zh) | 一种多应用内存访问的方法、装置、设备 | |
CN113498595B (zh) | 一种基于PCIe的数据传输方法及装置 | |
CN115296743A (zh) | 光纤通信转接*** | |
US8090893B2 (en) | Input output control apparatus with a plurality of ports and single protocol processing circuit | |
CN104050111A (zh) | 通过具有不同时序要求的相应命令访问不同类型的存储器 | |
CN109446130A (zh) | 一种i/o设备状态信息的获取方法及*** | |
CN116048893B (zh) | 光纤总线接口的测试方法及相关设备 | |
CN116032746B (zh) | 资源池的信息处理方法及装置、存储介质及电子装置 | |
US20030065735A1 (en) | Method and apparatus for transferring packets via a network | |
US7451254B2 (en) | System and method for adaptive buffer allocation in a memory device interface | |
CN102984599B (zh) | 基于RapidIO协议网络的视频采集传输装置及方法 | |
CN111371799B (zh) | Mctp控制器收发数据的控制方法、装置及设备 | |
CN109144578B (zh) | 一种基于龙芯计算机的显卡资源配置方法及装置 | |
CN105260335A (zh) | 扩展光接口的数据处理***及方法 | |
CN100456273C (zh) | PCI-Express通信***及其通信方法 | |
CN114443400B (zh) | 信号测试方法、装置、片上***、电子设备及存储介质 | |
CN111614794B (zh) | 报文传输方法、装置、电子设备及存储介质 | |
CN208271170U (zh) | 一种调试串口连接设备 | |
KR100927130B1 (ko) | Pc와 임베디드 시스템 간의 고속 시리얼 통신 변환 장치 및 방법 | |
CN108804218B (zh) | 硬盘的分配方法及*** | |
CN114968892B (zh) | 一种调度硬件电路及调度方法 |
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 |