CN118051388A - 一种高速光纤通信总线的测试系统 - Google Patents
一种高速光纤通信总线的测试系统 Download PDFInfo
- Publication number
- CN118051388A CN118051388A CN202311822394.4A CN202311822394A CN118051388A CN 118051388 A CN118051388 A CN 118051388A CN 202311822394 A CN202311822394 A CN 202311822394A CN 118051388 A CN118051388 A CN 118051388A
- Authority
- CN
- China
- Prior art keywords
- data
- controller
- control module
- intelligent
- interface control
- 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
- 238000012360 testing method Methods 0.000 title claims abstract description 83
- 238000004891 communication Methods 0.000 title claims abstract description 65
- 239000013307 optical fiber Substances 0.000 title claims abstract description 57
- 230000005540 biological transmission Effects 0.000 claims description 85
- 239000000872 buffer Substances 0.000 claims description 54
- 238000000034 method Methods 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 12
- 238000009432 framing Methods 0.000 claims description 9
- 238000013507 mapping Methods 0.000 claims description 9
- 230000002159 abnormal effect Effects 0.000 claims description 4
- 238000007781 pre-processing Methods 0.000 claims 1
- 238000012545 processing Methods 0.000 description 23
- 238000010586 diagram Methods 0.000 description 19
- 239000013078 crystal Substances 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000012536 storage buffer Substances 0.000 description 1
Landscapes
- Communication Control (AREA)
Abstract
本申请实施例提供一种高速光纤通信总线的测试系统,包括第一控制器和第二控制器,第一控制器与第二控制器通过第一总线连接;第二控制器的配置信号端与高速光纤通信总线控制器的配置端相连接,第一控制器通过第二控制器向高速光纤通信总线控制器发送配置指令;高速光纤通信总线控制器的寄存器和存储器映射于第一控制器,以使第一控制器对高速光纤通信总线控制器进行控制流的控制;第一控制器通过第二控制器与高速光纤通信总线控制器传输测试数据,实现数据流的测试。本申请的测试系统能够对高速光纤通信总线进行快速有效的测试。
Description
技术领域
本申请实施例涉及通信技术领域,尤其涉及一种高速光纤通信总线的测试系统。
背景技术
随着航天技术的不断发展,航天电子设备日益趋向于高度集成化、智能化和信息综合化,箭上信息传输量大幅增加。新一代火箭控制系统比任何时候都更依赖高带宽、强实时、开放式的数据通信来进行多方数据综合处理从而提高其控制性能,高速光纤通信总线Glink能够满足新一代箭载通信的高速、强实时、一体化等需求,同时具备极高的应用灵活性,在Glink总线控制器的应用开发过程中,如何对其进行测试是本领域所需解决的问题。
发明内容
有鉴于此,本申请实施例的目的在于提出一种高速光纤通信总线的测试系统,以解决高速光纤通信总线的测试问题。
基于上述目的,本申请实施例提供了一种高速光纤通信总线的测试系统,包括第一控制器和第二控制器,第一控制器与第二控制器通过第一总线连接;
所述第二控制器的配置信号端与高速光纤通信总线控制器的配置端相连接,所述第一控制器通过第二控制器向高速光纤通信总线控制器发送配置指令;
所述高速光纤通信总线控制器的寄存器和存储器映射于所述第一控制器,以使所述第一控制器对高速光纤通信总线控制器进行控制流的控制;
所述第一控制器获取的第一测试数据经所述第二控制器发送至高速光纤通信总线控制器,以使所述高速光纤通信总线控制器将所述第一测试数据传输至目的终端;以及所述第二控制器接收高速光纤通信总线控制器的第二测试数据,将所述第二测试数据传输至所述第一控制器,以使所述第一控制器根据接收的第二测试数据确定测试结果。
可选的,所述第二控制器包括本地寄存器模块、控制流控制模块和智能控制模块;所述第一控制器通过所述本地寄存器模块向所述高速光纤通信总线控制器发送配置指令;所述控制流控制模块用于实现所述高速光纤通信总线控制器的寄存器和存储器在所述第一控制器上的映射;所述智能控制模块用于实现所述第一控制器向所述高速光纤通信总线控制器发送第一测试数据,以及接收所述高速光纤通信总线控制器发送的第二测试数据。
可选的,所述智能控制模块包括发送数据流分发模块、八个接口控制模块和两个发送FIFO控制模块,所述第一控制器对所述第一测试数据进行预处理后,经所述发送数据流分发模块分流至相应的接口控制模块,所述接口控制模块将接收的数据传输至相应的发送FIFO控制模块,由所述发送FIFO控制模块将数据发送至所述高速光纤通信总线控制器的FIFO接口。
可选的,所述第一控制器对所述第一测试数据进行预处理,包括:所述第一控制器将所述第一测试数据按照预定的大小划分为多个数据段,基于每个数据段添加包括接口控制模块标识、数据发送方向、子地址的帧头,生成包括帧头和数据段的数据帧;
所述发送数据流分发模块分流至相应的接口控制模块,包括:所述发送数据流分发模块对所述数据帧的帧头进行解析获取接口控制模块标识,根据所述接口控制模块标识,确定对应的接口控制模块。
可选的,所述接口控制模块包括智能NC接口控制模块,所述接口控制模块将接收的数据传输至相应的发送FIFO控制模块,包括:
所述智能NC接口控制模块将接收的数据流缓存于发送FIFO缓冲区中,当发送FIFO缓冲区中的数据流满足预定条件,且启动发送数据时,智能NC接口控制模块软复位,触发发送数据,从该发送FIFO缓冲区中读取待发送的数据流,通过解析数据流对应的数据帧的帧头获得数据发送方向,当所述数据发送方向为NC到NT时,所述发送FIFO控制模块对应智能NC接口控制模块的发送数据开关打开后,将该发送FIFO缓冲区中的数据发送至所述发送FIFO控制模块。
可选的,所述接口控制模块包括智能NT接口控制模块,所述接口控制模块将接收的数据传输至相应的发送FIFO控制模块,包括:
所述智能NT接口控制模块将接收的数据流缓存于发送FIFO缓冲区中,通过解析数据流对应的数据帧的帧头获得子地址,将该数据帧保存于预先构建的发送子地址缓冲区中相应的子地址位置;当智能NT接口控制模块接收到所述高速光纤通信总线控制器的智能NC接口传输的命令帧后,对所述命令帧进行解析,获得子地址和数据传输方向,如果所述数据传输方向为NT到NC,将所述发送子地址缓冲区中对应该子地址中的数据发送至所述发送FIFO控制模块。
可选的,所述智能控制模块还包括两个接收FIFO控制模块和接收数据流合并模块,所述接收FIFO控制模块接收到所述第二测试数据后,将第二测试数据转换为数据流,并传输至对应的接口控制模块,各接口控制模块将接收的数据传输至所述接收数据流合并模块,由所述接收数据流合并模块将各路数据流合并为一路数据流后传输至所述第一控制器。
可选的,所述接口控制模块包括智能NC接口控制模块,所述各接口控制模块将接收的数据传输至所述接收数据流合并模块,包括:
所述智能NC接口控制模块将接收的数据流缓存于FIFO缓冲区,利用接收数据组帧模块对该FIFO缓冲区中的数据流进行组帧处理,生成包括包头、数据流和包尾的数据包,生成的数据包进入发送FIFO缓冲区中,将该发送FIFO缓冲区中的数据发送至所述接收数据流合并模块。
可选的,所述接口控制模块包括智能NT接口控制模块,所述各接口控制模块将接收的数据传输至所述接收数据流合并模块,包括:
当从GLink总线控制器的智能NC接口接收到NC通讯请求时,所述智能NT接口控制模块从接收FIFO控制模块接收数据流,对该数据流进行解析,获得报文类型、数据发送方向和数据长度;
当报文类型为长报文时,对接收的数据进行计数,当接收的数据达到该数据长度,或者数据传输出现异常,或者接收数据过程中接收到所述智能NC接口发送的中断传输指令时,所述智能NT接口控制模块停止接收数据,将已接收的数据发送至所述接收数据流合并模块。
当报文类型为短报文,且数据发送方向为NC到NT时,将接收的全部数据发送至所述数据流合并模块。
可选的,所述合并后的一路数据流包括多个数据包,每个数据包具有数据尾标识;所述接收数据流合并模块将连续的两两数据包的数据尾标识删除,保留合并后的数据流中最后一个数据包的数据尾标识,重新生成合并后的数据流。
从上面所述可以看出,本申请实施例提供的高速光纤通信总线的测试系统,包括第一控制器和第二控制器,第一控制器可通过第二控制器向高速光纤通信总线控制器发送配置指令,高速光纤通信总线控制器的寄存器和存储器映射于第一控制器,第一控制器可对高速光纤通信总线控制器进行控制流的控制,第一控制器通过第二控制器与高速光纤通信总线控制器传输测试数据,实现数据流的测试。本申请的测试系统能够对高速光纤通信总线进行快速有效的测试。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例的系统结构示意图;
图2为本申请实施例的基于ZYNQ模块实现的系统框图;
图3为本申请实施例的基于HSPCe板卡实现的系统框图;
图4为本申请实施例的时钟模块的示意图;
图5为本申请实施例的电源模块的示意图;
图6为本申请实施例的系统连接示意图;
图7为本申请实施例的发送测试数据的处理流向示意图;
图8为本申请实施例的发送数据流分发模块的数据处理流向示意图;
图9为本申请实施例的智能NC接口控制模块的数据处理流向示意图;
图10为本申请实施例的智能NC接口控制模块的发送数据流程示意图;
图11为本申请实施例的智能NT接口控制模块的数据处理流向示意图;
图12为本申请实施例的智能NT接口控制模块的发送数据流程示意图;
图13为本申请实施例的发送FIFO控制模块的数据处理流向示意图;
图14为本申请实施例的接收测试数据的处理流向示意图;
图15为本申请实施例的接收FIFO控制模块的数据处理流向示意图;
图16为本申请实施例的接收FIFO的信号逻辑示意图;
图17为本申请实施例的接收FIFO的时序示意图;
图18为本申请实施例的智能NC接口控制模块的接收数据流程示意图;
图19为本申请实施例的智能NT接口控制模块的收发数据流程示意图;
图20为本申请实施例的接收数据流合并模块的数据处理流向示意图;
图21为本申请实施例的接口控制模块与总线控制器的接口连接示意图;
图22、23为本申请实施例的接收数据流合并模块的信号处理逻辑示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
需要说明的是,除非另外定义,本申请实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本申请实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
相关技术中,Glink总线是一种基于FC-AE-1553协议的命令响应式串行光纤总线,GLink总线上可以传输控制流NC(CtrlNC)和智能NC(SmartNC)两类NC,以及控制流NT(CtrlNT)和智能NT(SmartNT)两类NT。其中,控制流NC、NT可提供CPU访问接口和存储缓冲管理机制,适用于有处理器参与数据处理的数据传输量较小的应用场合;智能NC、NT对外提供FIFO接口和单次大数量传输,不仅可以传输控制流,还可以满足图像或视频类数据传输业务需求,适用于由FPGA器件直接处理传输数据的无处理器或减少处理器处理负荷的应用场合。在Glink总线控制器的应用开发过程中,需要对总线上的数据传输功能、所连接的终端的功能以及扩展性等各方面进行测试。
有鉴于此,本申请实施例提供一种测试系统,包括第一控制器和第二控制器,通过第一控制器和第二控制器的协同处理,能够对Glink总线控制器进行控制流的控制和测试,以及业务数据流的发送和接收测试等,实现Glink总线控制器的快速高效测试需求。
如图1所示,本申请实施例提供一种高速光纤通信总线的测试系统,包括:第一控制器和第二控制器,第一控制器与第二控制器通过第一总线连接;
第二控制器的配置信号端与高速光纤通信总线控制器的配置端相连接,第一控制器通过第二控制器向高速光纤通信总线控制器发送配置指令;
高速光纤通信总线控制器的寄存器和存储器映射于第一控制器,以使第一控制器对高速光纤通信总线控制器进行控制流的控制;
第一控制器预先获取的第一测试数据经第二控制器发送至高速光纤通信总线控制器,以使所述高速光纤通信总线控制器将第一测试数据传输至目的终端;以及第二控制器接收高速光纤通信总线控制器的第二测试数据,将第二测试数据传输至第一控制器,以使第一控制器根据接收的第二测试数据确定测试结果。
本申请提供的测试系统,包括第一控制器和第二控制器,一方面,第二控制器的配置信号端与高速光纤通信总线控制器(Glink总线控制器)的配置端相连接,由第一控制器配置生成的配置指令可通过第二控制器发送至Glink总线控制器,对其进行配置,例如,配置指令可以是复位指令、报文模式指令等;第二方面,为实现控制流的测试,Glink总线控制器的寄存器和存储器映射于第一控制器,第一控制器可直接对Glink总线控制器进行控制流的控制,例如,通过配置特定的控制指令,由Glink总线控制器执行该控制指令,当检测到配置的中断信号时,从配置的地址中读取执行结果,根据执行结果判断控制指令的测试结果。第三方面,为实现业务数据流的测试,第一控制器将生成的第一测试数据通过第二控制器发送至Glink总线控制器,由Glink总线控制器将第一测试数据传输至总线上连接的目的终端,或者是,第二控制器从Glink总线控制器接收由其他终端发送的第二测试数据,将第二测试数据传输至第一控制器,由第一控制器根据接收的数据确定其他终端的业务数据流测试结果,从而实现测试系统对Glink总线控制器的控制流和业务数据流的全面测试。
如图2、3所示,一些实施方式中,测试系统基于HSPCe板卡上的ZYNQ模块实现,ZYNQ模块包括处理系统(PS侧)和可编程逻辑部分(PL侧),处理系统可作为第一控制器用于获取和处理数据,可编程逻辑部分可作为第二控制器用于通过硬件逻辑设计实现数据的发送、接收和逻辑处理,第一控制器和第二控制器通过AXI总线连接,实现二者间的数据通信。
一些方式中,ZYNQ模块与DDR存储器连接,用于系统运行及数据内存,缓存接收的数据;ZYNQ模块与QSPI_FLASH连接,上电后从QSPI_FLASH中加载运行程序;PL侧的配置信号端与Glink总线控制器的配置I/O端相连接,可对Glink总线控制器进行模式配置、通信速率配置和复位配置等。PS侧和PL侧分别设有调试串口,用于调试。可选的,DDR存储器采用两片DDR3 SDRAM芯片MT41J128M16JT作为系统片外缓存单元,每个缓存单元的存储深度为256M,数据位宽16bit,数据缓存总量为1GB;QSPI_FLASH采用W25Q256FVEI作为系统的程序存储单元,每片flash的容量为256Mb。
如图3、4所示,HSPCe板卡提供四个时钟,其中一个33MHz有源单端晶振用于对PS侧提供输入时钟,一个25MHz有源单端晶振用于对PL侧提供输入时钟,一个125MHz有源差分晶振用于对GTX高速收发器提供输入时钟,一个125MHz有源差分晶振用于对Glink总线控制器(型号为JLK1263)提供工作时钟,ZYNQ模块的其他几组GTX高速收发器可由扩展接插件提供。
如图3、5所示,HSPCe板卡采用扩展接插件输入12V电源,经过电压转换模块转换为1.0V/1.2V/1.5V/1.8V/3.3V的电压,用于为各模块供电,电压转换模块采用LTM4644型DC/DC模块,具有4~14V宽电压输入范围,每通道峰值输出电流4A,板卡的上电顺序依次为1.0V、1.8V、1.5V、1.2V、3.3V。
HSPCe板卡配置HSPCe高速扩展接口,其对外扩展引脚包括:PS侧的MIO16~MIO53,电平值为3.3V;ZYNQ模块的IO引脚48对,电平值为3.3V和1.5V;ZYNQ模块的全部GTX引脚,以及Bank110/Bank111/Bank112上的时钟引脚;JLK1263芯片的4对收发器引脚。同时,扩展接口可连接光模块或电收发器以对不同介质的通信总线进行测试。
如图6所示,一些实施例中,第一控制器通过AXI总线与第二控制器相连接,第二控制器包括本地寄存器模块、控制流控制模块和智能控制模块。其中,本地寄存器模块用于处理对Glink总线控制器的复位控制和初始化配置,即第一控制器通过本地寄存器模块向Glink总线控制器发送配置指令;控制流控制模块用于实现Glink总线控制器的寄存器和存储器在第一控制器上的映射,以使第一控制器对Glink总线控制器进行控制流的控制;智能控制模块用于实现第一控制器向Glink总线控制器发送第一测试数据,以及接收Glink总线控制器发送的第二测试数据,实现业务数据的收发处理。
一些方式中,第一控制器对Glink总线控制器的控制流NC典型寄存器的配置指令包括:Glink软复位,设置终端分配的Glink网络ID,设置中断屏蔽寄存器,设置交换组循环模式、交换/交换组异常退出策略、活动区域选择、交换间隔使能以及重传使能等选项,设置交换描述块堆栈深度,初始化时间戳寄存器,设置传输超时配置表,软启动控制流NC的GLink交换等。第一控制器对Glink总线控制器的控制流NC的存储器的配置指令包括:初始化控制流NC活动区域堆栈指针、初始堆栈指针、交换个数、初始交换个数,初始化堆栈区数据,设置交换间隔时间和交换数据块指针,终端软件通过查询SOE和EOE来获取交换处理状态信息,初始化NC交换控制字和待发送数据的存储空间等。第一控制器对Glink总线控制器的控制流NT典型寄存器的配置指令包括:Glink软复位,设置中断屏蔽寄存器,设置终端分配的Glink网络ID,设置控制流NT的活动区域、存储器管理模式等,设置命令堆栈深度和返回状态帧中状态位初始值等。第一控制器对Glink总线控制器的控制流NT的存储器的配置指令包括:初始化控制流NT活动区域堆栈指针,初始化堆栈区数据,初始化16路控制流NT使能配置存储器,初始化相应配置存储器空间的活动区域A#/B以及服务请求位,初始化活动区域子地址存储地址查找表,将各子地址拟发送的数据写入对应的子地址数据块;查询SOE和EOE来获取交换处理状态信息,对与接收子地址对应的数据块进行清零等。
一些方式中,AXI总线通过AXI_Interconnect互联模块转换为低速的Axi_Lite总线,Axi_Lite总线与智能控制模块相连接,Axi_Lite总线经过APB桥与本地寄存器模块、控制流控制模块相连接,实现控制流的收发。AXI总线通过AXI_DMA控制器或DataMover核等转换为高速的数据流总线AXI_Stream,AXI_Stream总线与智能控制模块连接,实现业务数据的收发。
如图7所示,智能控制模块包括发送数据流分发模块、八个接口控制模块和两个发送FIFO控制模块。其中,接口控制模块包括智能NC接口控制模块和智能NT接口控制模块两类,八个接口控制模块分别为智能NC1接口控制模块、智能NC2接口控制模块、智能NT1接口控制模块、智能NT2接口控制模块、智能NC3接口控制模块、智能NC4接口控制模块、智能NT3接口控制模块和智能NT4接口控制模块,发送FIFO控制模块包括发送FIFO1控制模块和发送FIFO2控制模块,发送FIFO1控制模块和发送FIFO2控制模块分别与Glink总线控制器的FIFO1接口和FIFO2接口相连接。
如图7所示,第一控制器向Glink总线控制器发送第一测试数据时,第一控制器生成第一测试数据,或者从内存中读取出保存的第一测试数据,将第一测试数据按照预定的大小划分为多个数据段,基于每个数据段添加帧头,生成包括帧头和数据段的数据帧,第一测试数据对应的多个数据帧经过MM2S转换为Axi_Stream格式的高速数据流后,输入发送数据流分发模块。其中,可添加的帧头包括接口控制模块标识、数据发送方向,对于经由智能NT接口控制器发送的数据,还包括子地址等。
如图8所示,发送数据流分发模块对接收的数据流进行解析,获得各数据帧的帧头中的接口控制器标识,根据接口控制模块标识确定该数据帧分配至八个接口控制模块中的哪个进行数据发送,并将数据帧对应的数据流发送至接口控制模块标识对应的接口控制模块,从而实现数据流的数据分流,经过八路分流,利用八个接口控制模块发送相应的测试数据。
如图9、10所示,智能NC接口控制模块从发送数据流分发模块接收数据流后,将数据流缓存于发送FIFO缓冲区中,智能NC接口控制模块(SmartNC接口控制模块)检测发送FIFO缓冲区中有数据则启动发送数据,或者接收到启动发送指令(第一控制器通过Axi_Lite总线控制智能NC接口控制模块的内部寄存器实现的配置指令,该配置指令包括切换自动发送和手动发送,在自动发送模式下,检测到FIFO队列中有数据则自动发送,在手动发送模式下,接收到手动启动的发送指令时则发送数据)后,智能NC接口控制模块软复位,触发发送数据,从发送FIFO缓冲区中读取待发送的数据流,通过解析数据帧的帧头获得数据发送方向,当数据发送方向为NT至NC时,仅发送数据帧的帧头,将发送FIFO缓冲区中的数据帧的帧头发送至FIFO控制模块,直至全部传输完成;当数据发送方向为NC到NT时,发送FIFO控制模块对应智能NC接口控制模块的发送数据开关打开后,将发送FIFO缓冲区中的数据发送至发送FIFO控制模块,当发送数据流的数据量达到预设的数据量阈值后,关闭发送数据开关,停止发送数据流;如果在发送过程中出现预设的错误(可通过预先配置的传输故障指示信号判断),则将剩余待发送的数据流舍弃。
如图11、12所示,当智能NT接口控制模块从发送数据流分发模块接收数据流后,将数据流缓存于发送FIFO缓冲区中,对数据流对应的数据帧的帧头进行解析获得子地址,将该数据帧保存于预先构建的发送子地址缓冲区中相应的子地址位置;当智能NT接口控制模块接收到Glink总线控制器的智能NC接口传输过来的命令帧后,对命令帧进行解析,获得子地址和数据传输方向等信息,若数据传输方向为NT到NC,则将发送子地址缓冲区中对应子地址中的数据发送至发送FIFO控制模块。如果发送子地址缓冲区中相应子地址无数据,则发送预先配置的预定数据。其中,发送子地址缓冲区包括多个用于缓冲不同子地址对应的数据的FIFO子队列。
结合图12、19所示,在智能NT接口控制模块中预先配置子地址映射表和子地址缓冲区,子地址映射表包括子地址号及子地址号在子地址缓冲区中对应的区域,对于0-65535的子地址号可支持任意32个子地址。当智能NT接口控制模块从发送数据流分发模块接收数据流后,从读取的数据帧的帧头中解析出帧头中的子地址,将数据帧保存于子地址缓冲区中该子地址对应的存储区域,完成发送子地址的数据写入。当智能NT接口控制模块从接收FIFO控制模块接收到数据流,并需要发送数据时,通过解析数据流的帧头获得子地址,判断该子地址是否在子地址映射表中,如果在,则从该子地址读取出数据并发送,如果不在或者该子地址上无数据,则发送预定数据。
如图9、11所示,第一控制器可通过Axi_Lite总线向智能NC接口控制模块和智能NT接口控制模块的寄存器控制模块发送配置信息,配置信息包括模块复位指令、所需添加的包头信息、包尾信息、报文类型(包括长报文和短报文)、发送模式(自动发送、手动发送)、子地址映射表和子地址缓冲区的大小和位置、总线传输速率、发送触发条件、接收触发条件等。
如图13所示,各接口控制模块将发送出的数据转换为Axi_stream格式的数据流后,发送至发送FIFO控制器,发送FIFO控制器接收四路接口控制模块发送的数据流,根据数据流对应的接口控制模块,基于数据流添加接口控制模块标识,将各路添加接口控制模块标识的数据流合并为一路数据流,将合并后的数据流转换为FIFO格式的数据流,根据数据流的接口控制模块标识确定FIFO片选信号,将FIFO格式的数据流经选通的FIFO发送至Glink总线控制器上对应的FIFO接口。
如图14所示,智能控制模块还包括两个接收FIFO控制模块和接收数据流合并模块。其中,接收FIFO控制模块包括接收FIFO1控制模块和接收FIFO2控制模块。Glink总线控制器的FIFO1接口和FIFO2接口分别和接收FIFO1控制模块和接收FIFO2控制模块相连接。
如图15所示,接收FIFO控制模块通过选通的FIFO接口接收到Glink总线控制器发送的第二测试数据后,将第二测试数据转换为AXI_Stream格式的数据流,并根据接收数据流对应的FIFO确定数据流所需分发的接口控制模块,将数据流传输至对应的接口控制模块中。
如图16所示,Glink总线控制器经选通的一路FIFO将第二测试数据发送至接收FIFO控制模块,为确定选通的FIFO,接收FIFO控制模块依次对四路FIFO进行选通,判断选通的FIFO是否有数据。当选通其中一路FIFO时,将该路FIFO的片选信号置0,读信号置位,连续三次从该路FIFO读取数据,如果均未读取到数据,则将该路FIFO读信号释放,继续选通下一路FIFO尝试读取数据;如果当前选通的FIFO可读取到数据,则从该路FIFO接收数据,直至该路FIFO上的数据已全部读取完成,或者读取时间超过了预设的时间阈值,将该路FIFO读信号释放,继续选通下一路FIFO尝试读取数据。
如图17所示,一些方式中,Glink总线控制器的四路FIFO可通过分时复用,实现接口控制器同时接收数据,即,在同一时间段内同时从四路FIFO上接收数据,防止一个接口控制器长时间占用FIFO接口。
如图所示,假设smartNT2接口(智能NT2接口)在长报文模式下接收智能NC发送过来的图像数据,数据长度最大4G字节;智能NT1接口在短报文模式下接收数据,最大数据长度为512+6字节;智能NC1接口和智能NC2接口在短报文模式下接收状态信息,最大数据长度为512×4+6字节。首先,FIFO接口片选到smartNT2,在其接收了512个数据(1024Byte)后,FIFO暂时为空(GLink长报文传输时,其内部会分成多个数据包,每个数据包的大小为512,相邻数据包之间存在短暂的空闲间隔)且达到读取超时时间,FIFO片选切换到smartNT1;由于smartNT1的FIFO中无数据,在连续三个时钟读取仍无数据后,FIFO片选切换到smartNC2;smartNC2的FIFO中有256个数据(512Byte),全部读取后,FIFO片选切换到smartNC1;smartNC1的FIFO中无数据,在连续三个时钟读取仍无数据后,FIFO片选切换到smartNT2;在smartNT2的FIFO中接收了512个数据(1024Byte)后,FIFO暂时为空,且达到读取超时时间,FIFO片选切换到smartNT1。按照上述过程轮询从四路FIFO中读取数据,能够提高多路数据传输效率,避免个别接口长期被占用。
如图9、18所示,当智能NC接口控制模块从接收FIFO控制模块接收数据流后,数据流进入FIFO缓冲区,利用接收数据组帧模块对FIFO缓冲区中的数据流进行组帧处理,生成包括包头、数据流和包尾的数据包,数据包进入发送FIFO缓冲区中,发送FIFO缓冲区中的数据转换为Axi_stream格式的数据流后发送至接收数据流合并模块。
一些方式中,接收数据组帧模块进行组帧处理的方法是,当FIFO缓冲区中的数据达到预设条件时,读取第一控制器配置的包头,然后从FIFO缓冲区读取数据,当读取出的数据达到预设数量时,停止从FIFO缓冲区读取数据,读取第一控制器配置的包尾,将读取出的包头、数据和包尾三部分组合成数据包,完成组帧处理。其中,FIFO缓冲区中的数据达到预设条件可以是FIFO缓冲区中的数据个数达到预设的第一数量,例如,已接收数据的个数达到FIFO深度的90%;或者,FIFO缓冲区中的数据个数达到预设的第二数量(例如,已接收数据的个数达到FIFO深度的80%),且连续的第一时钟周期内无数据流输入;或者,连续的第二时钟周期内无数据流输入;或者,数据接收过程结束。
可选的,第一控制器配置的包头信息和包尾信息如表1所示:
表1添加包头信息和包尾信息的数据包格式
如图19、21所示,智能NT接口控制模块对于收发数据的处理过程是:
当从GLink总线控制器的智能NC接口接收到NC通讯请求时,从接收FIFO控制模块接收数据流,该数据流是由GLink总线控制器的智能NC发送的测试数据经过处理得到的。智能NT接口控制模块通过Axi_Lite总线获得第一控制器配置的报文类型,通过对接收的数据流进行解析,从帧头部分获得报文类型、数据发送方向和数据长度。
当报文类型为长报文时,对接收的数据进行计数,当接收的数据达到该数据长度,或者数据传输出现异常,或者接收数据过程中接收到智能NC接口发送的中断传输指令时,智能NT接口控制模块停止接收长报文,将已接收的数据发送至接收数据流合并模块。
当报文类型为短报文时,通过帧头部分获得子地址,当数据发送方向为NC到NT时,对接收的数据进行计数,直至接收完全部数据,将接收的数据发送至数据流合并模块。当数据发送方向为NT到NC时,判断解析出的子地址是否在预先构建的子地址映射表中,如果在,判断该子地址内是否存在数据,如果存在数据,发送子地址内的数据,如果子地址不在子地址映射表中,或者子地址内无数据,则发送预先配置的预设数据,例如全0数据。
一些方式中,智能NC接口控制模块与Glink总线控制器的相应智能NC接口相连接,智能NT接口控制模块与Glink总线控制器的相应智能NT接口相连接,用于传输控制指令,例如发送数据指令,中断传输指令,FIFO相关控制指令等。
如图20所示,接收数据流合并模块接收各接口控制模块传输的数据流,将各接口控制模块的数据流合并为一路数据流,合并后的数据流经S2MM模块转换为内存数据后,保存于第一控制器的内存中,以便第一控制器从内存中读取接收的数据,通过数据处理确定Glink总线控制器发送的测试数据的测试结果。
一些方式中,合并后的一路数据流由若干数据包组成,且每个数据包具有对应的数据尾标识,由于S2MM模块读取到数据尾标识时会产生中断,为避免多次中断占用时间,造成数据接收不及时,在数据流合并时,将连续的两两数据包的数据尾标识删除,仅保留合并后数据流中最后一个数据包的数据尾标识,重新生成合并后的数据流。
如图22、23所示,一些实施方式中,接收数据流合并模块的处理过程为:从各接口控制模块接收的数据流写入FIFO缓冲区。当FIFO缓冲区中的数据长度大于预设数值,或者接收数据的时间超过预设时间阈值,或者预定时间之内无数据流输入,将last信号输出使能置位,当检测到last信号输出后,将last信号输出使能释放。当FIFO缓冲区中的数据个数大于两个,或者last信号输出使能置位时,FIFO输出使能置位,从FIFO缓冲区输出数据流,作为接收数据流合并模块的输出数据;当FIFO缓冲区中的数据个数小于两个且last信号输出使能未置位时,FIFO输出使能禁止,模块不输出数据流。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本申请实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本申请实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本申请实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本申请实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本申请实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本申请实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本申请实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (10)
1.一种高速光纤通信总线的测试系统,其特征在于,包括第一控制器和第二控制器,第一控制器与第二控制器通过第一总线连接;
所述第二控制器的配置信号端与高速光纤通信总线控制器的配置端相连接,所述第一控制器通过第二控制器向高速光纤通信总线控制器发送配置指令;
所述高速光纤通信总线控制器的寄存器和存储器映射于所述第一控制器,以使所述第一控制器对高速光纤通信总线控制器进行控制流的控制;
所述第一控制器获取的第一测试数据经所述第二控制器发送至高速光纤通信总线控制器,以使所述高速光纤通信总线控制器将所述第一测试数据传输至目的终端;以及所述第二控制器接收高速光纤通信总线控制器的第二测试数据,将所述第二测试数据传输至所述第一控制器,以使所述第一控制器根据接收的第二测试数据确定测试结果。
2.根据权利要求1所述的系统,其特征在于,
所述第二控制器包括本地寄存器模块、控制流控制模块和智能控制模块;所述第一控制器通过所述本地寄存器模块向所述高速光纤通信总线控制器发送配置指令;所述控制流控制模块用于实现所述高速光纤通信总线控制器的寄存器和存储器在所述第一控制器上的映射;所述智能控制模块用于实现所述第一控制器向所述高速光纤通信总线控制器发送第一测试数据,以及接收所述高速光纤通信总线控制器发送的第二测试数据。
3.根据权利要求2所述的系统,其特征在于,所述智能控制模块包括发送数据流分发模块、八个接口控制模块和两个发送FIFO控制模块,所述第一控制器对所述第一测试数据进行预处理后,经所述发送数据流分发模块分流至相应的接口控制模块,所述接口控制模块将接收的数据传输至相应的发送FIFO控制模块,由所述发送FIFO控制模块将数据发送至所述高速光纤通信总线控制器的FIFO接口。
4.根据权利要求3所述的系统,其特征在于,所述第一控制器对所述第一测试数据进行预处理,包括:所述第一控制器将所述第一测试数据按照预定的大小划分为多个数据段,基于每个数据段添加包括接口控制模块标识、数据发送方向、子地址的帧头,生成包括帧头和数据段的数据帧;
所述发送数据流分发模块分流至相应的接口控制模块,包括:所述发送数据流分发模块对所述数据帧的帧头进行解析获取接口控制模块标识,根据所述接口控制模块标识,确定对应的接口控制模块。
5.根据权利要求3所述的系统,其特征在于,所述接口控制模块包括智能NC接口控制模块,所述接口控制模块将接收的数据传输至相应的发送FIFO控制模块,包括:
所述智能NC接口控制模块将接收的数据流缓存于发送FIFO缓冲区中,当发送FIFO缓冲区中的数据流满足预定条件,且启动发送数据时,智能NC接口控制模块软复位,触发发送数据,从该发送FIFO缓冲区中读取待发送的数据流,通过解析数据流对应的数据帧的帧头获得数据发送方向,当所述数据发送方向为NC到NT时,所述发送FIFO控制模块对应智能NC接口控制模块的发送数据开关打开后,将该发送FIFO缓冲区中的数据发送至所述发送FIFO控制模块。
6.根据权利要求3所述的系统,其特征在于,所述接口控制模块包括智能NT接口控制模块,所述接口控制模块将接收的数据传输至相应的发送FIFO控制模块,包括:
所述智能NT接口控制模块将接收的数据流数据流缓存于发送FIFO缓冲区中,通过解析数据流对应的数据帧的帧头获得子地址,将该数据帧保存于预先构建的发送子地址缓冲区中相应的子地址位置;当智能NT接口控制模块接收到所述高速光纤通信总线控制器的智能NC接口传输的命令帧后,对所述命令帧进行解析,获得子地址和数据传输方向,如果所述数据传输方向为NT到NC,将所述发送子地址缓冲区中对应该子地址中的数据发送至所述发送FIFO控制模块。
7.根据权利要求3所述的系统,其特征在于,所述智能控制模块还包括两个接收FIFO控制模块和接收数据流合并模块,所述接收FIFO控制模块接收到所述第二测试数据后,将第二测试数据转换为数据流,并传输至对应的接口控制模块,各接口控制模块将接收的数据传输至所述接收数据流合并模块,由所述接收数据流合并模块将各路数据流合并为一路数据流后传输至所述第一控制器。
8.根据权利要求7所述的系统,其特征在于,所述接口控制模块包括智能NC接口控制模块,所述各接口控制模块将接收的数据传输至所述接收数据流合并模块,包括:
所述智能NC接口控制模块将接收的数据流缓存于FIFO缓冲区,利用接收数据组帧模块对该FIFO缓冲区中的数据流进行组帧处理,生成包括包头、数据流和包尾的数据包,生成的数据包进入发送FIFO缓冲区中,将该发送FIFO缓冲区中的数据发送至所述接收数据流合并模块。
9.根据权利要求7所述的系统,其特征在于,所述接口控制模块包括智能NT接口控制模块,所述各接口控制模块将接收的数据传输至所述接收数据流合并模块,包括:
当从GLink总线控制器的智能NC接口接收到NC通讯请求时,所述智能NT接口控制模块从接收FIFO控制模块接收数据流,对该数据流进行解析,获得报文类型、数据发送方向和数据长度;
当报文类型为长报文时,对接收的数据进行计数,当接收的数据达到该数据长度,或者数据传输出现异常,或者接收数据过程中接收到所述智能NC接口发送的中断传输指令时,所述智能NT接口控制模块停止接收数据,将已接收的数据发送至所述接收数据流合并模块。
当报文类型为短报文,且数据发送方向为NC到NT时,将接收的全部数据发送至所述数据流合并模块。
10.根据权利要求7所述的系统,其特征在于,所述合并后的一路数据流包括多个数据包,每个数据包具有数据尾标识;所述接收数据流合并模块将连续的两两数据包的数据尾标识删除,保留合并后的数据流中最后一个数据包的数据尾标识,重新生成合并后的数据流。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311822394.4A CN118051388A (zh) | 2023-12-27 | 2023-12-27 | 一种高速光纤通信总线的测试系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311822394.4A CN118051388A (zh) | 2023-12-27 | 2023-12-27 | 一种高速光纤通信总线的测试系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118051388A true CN118051388A (zh) | 2024-05-17 |
Family
ID=91049168
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311822394.4A Pending CN118051388A (zh) | 2023-12-27 | 2023-12-27 | 一种高速光纤通信总线的测试系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118051388A (zh) |
-
2023
- 2023-12-27 CN CN202311822394.4A patent/CN118051388A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109471816B (zh) | 一种基于描述符的pcie总线dma控制器及数据传输控制方法 | |
US6366583B2 (en) | Network router integrated onto a silicon chip | |
US7596641B2 (en) | System and method for transmitting data packets in a computer system having a memory hub architecture | |
US6345310B1 (en) | Architecture for a multiple port adapter having a single media access control (MAC) with a single I/O port | |
CN110471872B (zh) | 一种基于zynq芯片实现m-lvds总线数据交互系统和方法 | |
CN112860612A (zh) | 互联裸芯与mpu的接口系统及其通信方法 | |
CN114168520B (zh) | 光纤通信总线装置、设备和系统 | |
JPH0640643B2 (ja) | データパケットの待ち合わせ方法、通信ネットワークシステム及びパケット通信用アクセス装置 | |
KR20030084974A (ko) | 코어 및 직렬-병렬 아키텍쳐 | |
US20050125590A1 (en) | PCI express switch | |
JP2008546298A (ja) | 電子装置及び通信リソース割り当ての方法 | |
CN114297124B (zh) | 一种基于fpga的srio高速总线的通讯系统 | |
CN111736115A (zh) | 基于改进型sgdma+pcie的mimo毫米波雷达高速传输方法 | |
US20050169304A1 (en) | Information processing unit | |
US7006498B2 (en) | System for transmitting local area network (LAN) data frames through an asynchronous transfer mode (ATM) crossbar switch | |
CN114257245A (zh) | 一种基于dsp-fpga的多通道ad采集系统 | |
US6473818B1 (en) | Apparatus and method in a network interface device for asynchronously generating SRAM full and empty flags using coded read and write pointer values | |
KR20030084971A (ko) | 통신 시스템 | |
CN118051388A (zh) | 一种高速光纤通信总线的测试系统 | |
CN115982071A (zh) | 一种面向ddr3控制器的片上网络转换接口 | |
CN116166581A (zh) | 用于pcie总线的队列式dma控制器电路及数据传输方法 | |
US6701407B1 (en) | Multiprocessor system with system modules each having processors, and a data transfer method therefor | |
KR100251712B1 (ko) | 전전자교환기에서 엑스.25 프로토콜 통신을 위한 엑스.25망정합장치 | |
CN214474972U (zh) | 一种PCIE和RapidIO数据转换装置 | |
KR102497804B1 (ko) | 듀얼 스위칭 네트워크 모드들에서 네트워킹 가능한 온칩 네트워크 장치 및 그것의 동작 방법 |
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 |