CN116132383B - 信息传输装置、系统及方法 - Google Patents

信息传输装置、系统及方法 Download PDF

Info

Publication number
CN116132383B
CN116132383B CN202310396818.9A CN202310396818A CN116132383B CN 116132383 B CN116132383 B CN 116132383B CN 202310396818 A CN202310396818 A CN 202310396818A CN 116132383 B CN116132383 B CN 116132383B
Authority
CN
China
Prior art keywords
information transmission
module
controller
access
equipment
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
Application number
CN202310396818.9A
Other languages
English (en)
Other versions
CN116132383A (zh
Inventor
季冬冬
张广乐
王金友
张志鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202310396818.9A priority Critical patent/CN116132383B/zh
Publication of CN116132383A publication Critical patent/CN116132383A/zh
Application granted granted Critical
Publication of CN116132383B publication Critical patent/CN116132383B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/0001Selecting arrangements for multiplex systems using optical switching
    • H04Q11/0005Switch and router aspects
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本申请实施例提供了一种信息传输装置、系统及方法,包括:多个I2C控制器模块,每个I2C控制器模块用于连接一个I2C设备的I2C接口,信息传输装置用于接收上层控制器发送的控制指令,根据控制指令对I2C设备进行并行访问,即信息传输装置和上层控制器连接,通过在信息传输装置中设置与I2C设备等同数量的I2C控制器,从而实现了信息传输装置对I2C设备的并行访问,信息传输装置通信连接有上层控制器,由于光模块相当于一个I2C设备,因此,上层控制器可以通过信息传输装置实现对光模块的并行访问,解决了现有技术中由于同一个I2C扩展芯片下的光模块只能串行访问导致降低整个交换机的访问速度的问题。

Description

信息传输装置、系统及方法
技术领域
本申请涉及通信技术领域,特别是涉及信息传输装置、系统及方法。
背景技术
光模块是交换机系统的重要组成部分,通过光模块提供交换机系统的对外接口,从而实现数据在本机和不同设备间的通信。光模块提供管理与状态寄存器,上层控制器可以从光模块的寄存器获取光模块的状态与控制。因此,每个光模块的管理控制部分相当于一个集成电路总线(Inte-Integrated Circuit,I2C)设备。
传统控制中,上层控制器通过I2C扩展芯片连接光模块,上层控制器基于高速串行计算机扩展总线标准(peripheral component interconnect express,PCIe)通过访问现场可编程门阵列(Field Programmable Gate Array,FPGA)的寄存器从而实现PCIe到I2C的协议转换与光模块的串行访问。此种访问方式,由于交换机系统设计限制了同一个I2C扩展芯片下的光模块只能串行访问,即同一个I2C扩展芯片下的光模块是串行访问,从而降低整个交换机系统的访问速度。
发明内容
本申请实施例的目的在于提供一种信息传输装置、系统及方法,以解决现有技术中交换机系统中同一个I2C扩展芯片下的光模块串行访问东芝降低整个交换机系统的访问速度的技术问题。具体技术方案如下:
在本申请实施的第一方面,首先提供了一种信息传输装置,包括:所述信息传输装置通信连接有上层控制器,所述信息传输装置包括:多个I2C控制器模块,每个所述I2C控制器模块用于连接一个I2C设备的I2C接口。
可选地,所述信息传输装置还包括:多个SFP封装模块,每个所述SFP封装模块用于连接一个I2C控制器,所述上层控制器通过所述SFP封装模块访问所述I2C设备。
可选地,所述SFP封装模块包括:实时访问模块、轮询访问模块、指令模块、第一存储介质模块、第二存储介质模块以及总线适配模块;
所述实时访问模块通信连接有第一存储介质模块、所述指令模块以及总线适配模块;
所述轮询访问模块通信连接有所述第二存储介质模块、所述指令模块以及所述总线适配模块。
可选地,所述实时访问模块用于根据上层控制器的控制命令基于实时访问模式实时控制I2C设备,所述实时访问模式包括所述上层控制器对所述I2C设备通过信息传输装置实现实时访问,所述实时访问模式用于调试。
可选地,所述轮询访问模块用于根据上层控制器的控制命令基于轮询访问模式访问I2C设备,所述轮询访问模式包括所述上层控制器对所述I2C设备的操作信息配置完成后,所述信息传输装置对所述I2C设备进行周期性访问,所述周期性访问支持对所述I2C设备的多页读写。
可选地,所述指令模块用于调用I2C控制器模块。
可选地,所述上层控制器通过所述存储介质模块和所述信息传输装置通信;所述存储介质模块用于存储上层控制器的控制信息与状态信息,或者存储I2C设备数据和存储上层控制器针对所述I2C设备的写入数据。
可选地,所述存储介质模块包括:寄存器和RAM;
所述所述上层控制器通过所述存储介质模块和所述信息传输装置通信包括:所述上层控制器读写I2C设备的指令与I2C设备的状态通过所述寄存器传递,所述上层控制器读写I2C设备的数据通过所述RAM传递,所述寄存器和所述RAM映射的地址空间不同。
可选地,所述第一存储介质模块包括:实时访问寄存器和第一RAM;
所述实时访问寄存器和第一RAM和实时访问模块通信连接。
可选地,所述第二存储介质模块包括:轮询访问寄存器和第二RAM;
所述轮询访问寄存器和第二RAM和轮询访问模块通信连接。
可选地,所述第一RAM包括第一端口和第二端口;所述第二RAM包括第三端口和第四端口;
其中,当所述第一端口用于读取数据时,所述第二端口停止写入数据;当所述第三端口用于读取数据时,所述第四端口停止写入数据。
可选地,当上层控制器读取所述第一RAM中存储的数据时,通过所述实时访问寄存器将第一RAM的第二端口的写使能强制关闭;
当上层控制器读取所述第二RAM中存储的数据时,通过所述实时访问寄存器将第二RAM的第四端口的写使能强制关闭。
可选地,所述信息传输装置还包括:第一PCIe接口模块;
所述第一PCIe接口模块用于连接多个SFP封装模块,并与上层控制器中的第二PCIe接口基于PCIe总线通信连接。
可选地,所述信息传输装置还包括:轮询时间寄存器;
所述轮询时间寄存器用于设置轮询时间。
可选地,所述信息传输装置还包括:I2C设备地址寄存器;
所述I2C设备地址寄存器用于配置访问所述I2C设备的I2C地址。
可选地,所述信息传输装置还包括:I2C控制器速率寄存器;
所述I2C控制器速率寄存器用于配置I2C控制器模块的通信速率。
可选地,所述信息传输装置用于对所述I2C控制器模块进行驱动,还用于控制所述I2C控制器模块起始、读写、寄存器选择、停止的驱动。
可选地,所述信息传输装置和所述上层控制器通过带内中断方式进行命令与数据的传输。
在本申请实施的第二方面,还提供了一种所述信息传输系统包括:第一方面任意一项所述的信息传输装置,上层控制器以及I2C设备;
所述信息传输装置通信连接有所述上层控制器以及所述I2C设备;
所述信息传输装置通过所述上层控制器发送的I2C设备控制命令对所述I2C设备进行并行访问。
在本申请实施的第三方面,还提供了一种信息传输方法,应用于第一方面任意一项所述的信息传输装置,所述信息传输方法包括:
在接收到上层控制器发送的I2C设备控制命令的情况下,对I2C设备进行并行访问;
在对所述I2C设备并行访问期间,实时监控所述I2C设备的状态,并将所述I2C设备的状态返回至所述上层控制器。
本申请实施例提供一种信息传输装置,该信息传输装置包括:多个I2C控制器模块,每个I2C控制器模块用于连接一个I2C设备的I2C接口,即本申请实施例中的信息传输装置和上层控制器连接,信息传输装置中每个I2C控制器模块连接一个I2C设备的I2C接口连接,所述信息传输装置用于接收所述上层控制器发送的控制指令,根据所述控制指令对所述I2C设备进行并行访问,因此,通过在信息传输装置中设置与I2C设备等同数量的I2C控制器,从而实现了信息传输装置对I2C设备的并行访问,进一步地,信息传输装置通信连接有上层控制器,因此,上层控制器可以通过信息传输装置实现对I2C设备的并行访问,上层控制器无需反复访问信息传输装置来驱动访问I2C设备,进而上层控制器也无需反复驱动I2C设备波形,在实现降低上层控制器的占用率的同时提高了通信效率,进一步地,由于光模块相当于一个I2C设备,因此,上层控制器可以通过信息传输装置实现对光模块的并行访问,解决了现有技术中由于交换机系统中同一个I2C扩展芯片下的光模块只能串行访问导致降低整个交换机系统的访问速度的问题,本申请实施例中通过设置多个I2C控制器模块,每个I2C控制器模块连接一个I2C设备的I2C接口,从而实现对I2C设备的高效并行访问,提高了交换机应用中I2C设备的访问效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本申请实施例中提供的一种信息传输装置示意图;
图2为本申请实施例中提供的一种实时访问模块示意图;
图3为本申请实施例中提供的一种轮询访问模块示意图;
图4为本申请实施例中提供的一种RAM结构示意图;
图5为本申请实施例中提供的一种信息传输系统示意图;
图6为本申请实施例中提供的一种信息传输方法流程图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
本申请所举实施例只用于解释本申请,并非用于限定本申请的范围。在下列段落中参照附图以举例方式更具体地描述本申请。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本申请实施例的目的。
需要说明的是,光模块是交换机系统的重要组成部分,通过光模块提供交换机系统的对外接口,从而实现数据在本机和不同设备间的通信。光模块提供管理与状态寄存器,上层控制器可以从光模块的寄存器获取光模块的状态与控制。因此,每个光模块相当于一个I2C设备,传统控制中,上层控制器通过I2C扩展芯片连接光模块,上层控制器基于PCIe通过访问FPGA的寄存器从而实现PCIe到I2C的协议转换与光模块的串行访问。此种访问方式,一方面由于上层控制器需要反复访问FPGA寄存器,从而驱动I2C控制器,因此,系统设计限制了同一个I2C扩展芯片下的光模块只能串行访问,也就是至少同一个PCA9538下的光模块是串行访问,从而降低了整个交换机系统的访问速度。
为了解决上述问题,第一方面,本申请实施例提供了一种信息传输装置,该信息传输装置包括:多个I2C控制器模块,每个I2C控制器模块用于连接一个I2C设备的I2C接口,即本申请实施例中的信息传输装置和上层控制器连接,信息传输装置中每个I2C控制器模块连接一个I2C设备的I2C接口连接,因此,即信息传输装置例化与I2C设备等同数量的I2C控制器,从而实现了信息传输装置对I2C设备的并行访问,进一步地,信息传输装置通信连接有上层控制器,因此,上层控制器可以通过信息传输装置实现对I2C设备的并行访问,由于光模块相当于一个I2C设备,因此,上层控制器可以通过信息传输装置实现对光模块的并行访问,解决了现有技术中由于交换机系统中同一个I2C扩展芯片下的光模块只能串行访问导致降低整个交换机系统的访问速度的问题,本申请实施例中通过设置多个I2C控制器模块,每个I2C控制器模块连接一个I2C设备的I2C接口,从而实现对I2C设备的高效并行访问,提高了交换机应用中I2C设备的访问效率。下面对上述提到的资源共享装置进行具体描述。
参照图1,图1为本申请实施例中提供的一种信息传输装置示意图,可以看出,信息传输装置在包括多个I2C控制器模块,其中,每个I2C控制器模块用于连接一个I2C设备。
需要说明的是,I2C设备可以是一种光模块,光模块是交换机系统的重要组成部分,通过光模块提供交换机系统的对外接口,从而实现数据在本机和不同设备间的通信,因此,上层控制器对光模块的控制和访问尤其重要,为了便于本领域人员理解,本申请实施例中将I2C设备以光模块为例进行阐述说明。
本申请实施例中信息传输装置通过设置和I2C设备数量相同的I2C控制器模块来实现对I2C设备的并行访问,其中I2C控制器模块遵循I2C控制器在各种情况下的信号行为规范,具体的说,主要包括字节(8位)波形的控制和单bit位SCL/SDA的控制,其中字节波形的控制遵循I2C通信协议中起始、读、写、停止操作状态机的变化规则,单bit位SCL/SDA的控制主要根据起始、读、写、停止操作状态机控制SCL/SDA的高低电平变化,其中,SCL\SDA是I2C总线的信号线,SDA是双向数据线,SCL是时钟线,SCL在I2C总线上传送数据,首先送最高位,由主机发出启动信号,SDA在SCL高电平期间由高电平跳变为低电平,然后由主机发送一个字节的数据,数据传送完毕,由主机发出停止信号,SDA在SCL 高电平期间由低电平跳变为高电平。
本申请实施例中,信息传输装置可以是一种半定制的专用集成电路,即现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA),FPGA与硬件上是完全并行结构,FPGA具有灵活编程、快速响应、集成度高等系列优点,在众多领域前期开发验证及控制应用领域得到越来越广泛的应用。在交换机系统中,主要通过FPGA实现整个交换机系统数据层面的管理,包括两线式串行总线(Inter-Integrated Circuit,I2C)设备、(ManagementData Clock和Management Data Input/Output,MDC/MDIO)设备、串行外部设备接口(Serial Peripheral Interface,SPI)设备等。因此,为了便于本领域人员理解,本申请实施例中将信息传输装置以FPGA为例进行阐述说明。
具体的,可以在FPGA设计等同于光模块数量的I2C控制器模块分别连接至每个光模块的I2C接口,这样可以通过完全并行的架构提高交换机系统访问速率,并且完全并行的架构实现了I2C的物理上的隔离,从而实现了不同光模块的故障隔离。
需要说明的是,在本申请实施例中,上层控制器一般为CPU,因此,为了便于本领域人员理解,本申请实施例中将上层控制器以CPU为例进行阐述说明。
综上所述,在本申请实施例中,通过对FPGA模块的设计,在应用过程中CPU只需要访问FPGA,FPGA根据CPU控制命令实现光模块设备的并行访问;更进一步说,光模块设备和CPU是隔离,FPGA实现光模块的并行访问,因此CPU只需要实现FPGA的并行访问。本申请一方面简化了CPU设计和访问方式,即只需要PCIe的访问;另一方面,FPGA实现光模块设备的访问,从而降低了CPU的使用占有率,FPGA可以实时监控光模块的状态,从而提高了I2C的有效利用率,在实际测试下,协议有效通信率可达到95%,而传统上层驱动方式的协议有效通信率只有20%左右。
可选地,所述信息传输装置还包括:多个小型可热插拔光收发一体(Small Form-factor Pluggsable,SFP)封装模块,每个所述SFP封装模块用于连接一个I2C控制器,所述上层控制器通过所述SFP封装模块访问所述I2C设备。
需要说明的是,在发明实施例中,信息传输装置还包括SFP封装模块,每个SFP封装模块对应连接一个I2C控制器,每个I2C控制器连接一个I2C设备,CPU可以通过SFP封装模块实现对I2C的进一步访问控制。
进一步地,SFP封装模块包括:实时访问模块、轮询访问模块、指令模块、第一存储介质模块、第二存储介质模块以及总线适配模块;所述实时访问模块通信连接有第一存储介质模块、所述指令模块以及总线适配模块;所述轮询访问模块通信连接有所述第二存储介质模块、所述指令模块以及所述总线适配模块。
在本申请实施例中,对每个模块采用模块化设计方法,对FPGA而言,代码可以直接复制,对于CPU,由于光模块采用规律的寄存器和RAM地址分部,因此也便于进行代码裁剪。
可选地,所述实时访问模块用于根据上层控制器的控制命令基于实时访问模式实时控制I2C设备,所述实时访问模式包括所述上层控制器对所述I2C设备通过信息传输装置实现实时访问,所述实时访问模式用于调试。
可选地,所述轮询访问模块用于根据上层控制器的控制命令基于轮询访问模式访问I2C设备,所述轮询访问模式包括所述上层控制器对所述I2C设备的操作信息配置完成后,所述信息传输装置对所述I2C设备进行周期性访问,所述周期性访问支持对所述I2C设备的多页读写。
需要说明的是,上述两种访问模块对应两种访问模式,即实时访问模式和轮询访问模式,并且每种访问模式对应FPGA模块中不同的寄存器,具体的,轮询访问模式只支持读操作,即CPU可以独立使能特定光模块,FPGA也会根据CPU的配置信息周期性对特定光模块进行读操作,并把数据存储于随机存取存储器(Random Access Memory,RAM),通过中断方式通知CPU;实时访问模式是指CPU可以通过FPGA对特定光模块进行实时读写操作,读写数据均通过RAM传递。
需要说明的是,在本申请实施例中,首先,FPGA支持CPU实时控制光模块是通过实时访问模块,如图2所示,图2为本申请实施例中提供的一种实时访问模块示意图,可以看出,在图2中,命令(CMD)模块及数据存储(RAM)模块上层均粘结至CPU,RTC下游接口粘结至指令模块,CPU对光模块的控制及光模块状态的获得均通过CMD REG(命令模块),RTC(实时访问)模块从CMD REG获取指令后驱动指令模块,具体包括指令模块的使能位、读写位、发送数据、读取数据、起始地址以及操作字节数,同时指令模块会反馈各种完成标志。图2中,其中,rw是读写位,en是使能位,start表示起始地址,Iic_address_offset表示I2C地址数据,Bytes_num表示操作字节数,Page_number表示页读写,sys_clk表示时钟信号,reset_out表示复位信号,txd表示发送数据,rxd表示读取数据,done_flag表示完成标志,ram_addr表示地址数据,ram_en表示使能,ram_in表示输入,ram_out表示输出。
其次,FPGA支持CPU轮询光模块的信息是通过轮询访问模块,如图3所示,图3为本申请实施例中提供的一种轮询访问模块示意图,图3和图2相比,即增加了周期性轮询,Timer表示周期性轮询,其中,轮询访问模式下光模块轮询功能模块与实时访问功能模块工作流程类似,不同点在于轮询操作只支持读操作;同时轮询操作是周期轮询光模块信息的,不像实时操作只访问一次。
可选地,所述指令模块用于调用I2C控制器模块。
需要说明的是,FPGA通过指令模块调用I2C控制器和光模块实现通信,指令模块发送的数据取自RAM模块,其读取的数据也会存储在RAM的相应位置。
进一步地,通过寄存器可灵活配置I2C设备的地址、轮询时间及I2C通信速率。
可选地,所述上层控制器通过所述存储介质模块和所述信息传输装置通信;所述存储介质模块用于存储上层控制器的控制信息与状态信息,或者存储I2C设备数据和存储上层控制器针对所述I2C设备的写入数据。
进一步地,所述存储介质模块包括:寄存器和RAM;所述所述上层控制器通过所述存储介质模块和所述信息传输装置通信包括:所述上层控制器读写I2C设备的指令与I2C设备的状态通过所述寄存器传递,所述上层控制器读写I2C设备的数据通过所述RAM传递,所述寄存器和所述RAM映射的地址空间不同。
需要说明的是,在FPGA中,寄存器REG及数据RAM设计采用模块化设计的方法,即每个模块采用每一段连续地址,比如SFP1采用0X1000~0X1FFC地址,SFP2采用0X2000~0X2FFC地址,这种地址分配方式便于CPU和FPGA根据实际需求灵活扩展,即本申请实施例中的SFP封装模块可以根据实际需求设计数量。
具体的,寄存器首先是光模块实时访问模式对应的控制与状态寄存器,对光模块执行翻页操作时,CPU需对光模块的0X7F寄存器执行写操作。其次,相对于实时访问模式对应的控制与状态寄存器,轮询访问模式对应的控制与状态寄存器两者具体功能基本类似,不同点在于,由于轮询模式下,FPGA支持多页操作,因此CPU需通过寄存器指定对光模块的操作页,FPGA自主完成翻页;光模块限制每次最多只能操作128个字节且不能跨页,因此CPU需通过寄存器指定对光模块操作的是前128字节还是后128字节;光模块在轮询操作模式下只支持读操作,因此不存在读写操作控制。
其中,本申请实施例中,寄存器与RAM组成的存储介质模块可以用于CPU与FPGA进行通信,具体的,CPU读写光模块的指令与光模块的状态可以通过寄存器传递,采用PCIeGen2的速率,CPU读写光模块的数据FPGA均通过RAM传递,并将其映射到不同的地址上,具体的,CPU与FPGA采用带内中断方式进行通信的命令与数据,即FPGA执行完命令或数据执行完毕会向CPU产生中断,中断通信方式相比于轮询的通信机制可以进一步降低CPU使用占有率提高通信效率。
进一步地,第一存储介质模块包括:实时访问寄存器和第一RAM;所述实时访问寄存器和第一RAM和实时访问模块通信连接;所述第一RAM包括第一端口和第二端口;所述第二RAM包括第三端口和第四端口;当上层控制器读取所述第一RAM中存储的数据时,通过所述实时访问寄存器将第一RAM的第二端口的写使能强制关闭。
所述第二存储介质模块包括:轮询访问寄存器和第二RAM;所述轮询访问寄存器和第二RAM和轮询访问模块通信连接。当所述第一端口用于读取数据时,所述第二端口停止写入数据;当所述第三端口用于读取数据时,所述第四端口停止写入数据;当上层控制器读取所述第二RAM中存储的数据时,通过所述实时访问寄存器将第二RAM的第四端口的写使能强制关闭。
需要说明的是,由于不同的访问模式对应不同的寄存器和数据存储RAM,因此,在SFP封装模块中包括第一存储介质模块和第二存储介质模块,其中,第一存储介质模块包括第一RAM和实时访问寄存器,第二存储介质模块包括第二RAM和轮询访问寄存器。
RAM是计算机内部存储器中的一种,并且由于CPU与FPGA是通过RAM进行数据传递的,因此,本申请实施例中,RAM是双端口架构,具体的,第一RAM包括第一端口和第二端口,第二RAM包括第三端口和第四端口,RAM接口设计如图4所示,图4为本申请实施例中提供的一种RAM结构示意图,RAM属于双端口RAM,其中A侧粘结CPU端,B侧粘结FPGA逻辑端,即A端口可以对应第一端口,B端口可以对应第二端口。具体的,“WE_B”还需粘结“Data RAM readingdone”,即CPU可控制FPGA对RAM的写入,对于RAM读写的控制,每个RAM增加“Data RAMreading done”写控制控制位,为防止RAM读写数据冲突,CPU执行读操作时,FPGA逻辑禁止对RAM执行写操作。
另外,CPU可以通过一个端口对RAM读写,FPGA通过另一个端口对RAM读写,因此需要处理好读写冲突,即CPU通过第一个端口对RAM读取数据时,FPGA需控制逻辑不能通过另一个端口对RAM写入数据,并且,本申请实施例通过寄存器可以实现CPU读取RAM数据时,通过寄存器将该RAM模块的B端口的写使能强制关闭。
可选地,所述信息传输装置还包括:第一PCIe接口模块;所述第一PCIe接口模块用于连接多个SFP封装模块,并与上层控制器中的第二PCIe接口基于PCIe总线通信连接。
需要说明的是,第一PCIe接口模块包括PCIe Endpoint,FPGA实现PCIe Endpoint,从而实现CPU与FPGA的PCIe通信。此功能依赖于FPGA本身IO支持,即实现高速IO,实现CPU与FPGA的PCIe通信应用场合有很多,其目的就是实现CPU与FPGA的PCIe高速通信。
另外,对于不同厂家的开发工具提供不同的硬核配置界面,但基本配置项都相同。
可选地,所述信息传输装置还包括:轮询时间寄存器、I2C设备地址寄存器、I2C控制器速率寄存器;所述轮询时间寄存器用于设置轮询时间;所述I2C设备地址寄存器用于配置访问所述I2C设备的I2C地址;所述I2C控制器速率寄存器用于配置I2C控制器模块的通信速率。
需要说明的是,在本申请实施例中,FPGA定义了轮询时间具体的,通过轮询时间寄存器可设置轮询时间,从而满足不同工况下的需求,在本申请实施例中,轮询时间可以设置为500ms,本申请对此不做具体限定,可以根据交换机或者其他系统需求设置不同的轮询时间。
需要说明的是,在本申请实施例中,FPGA定义了I2C设备地址,通过I2C设备地址寄存器可配置访问I2C设备的I2C 地址,进一步地,FPGA也可以定义光模块,通过光模块寄存器从而满足DSFP、QSFP等不同光模块地址的访问,根据I2C设备地址寄存器可以满足FPGA对任何I2C设备的访问,因此,在本申请实施例中可以设置光模块设备地址是7’h50,CPU可以通过FPGA对I2C设备地址进行配置。
需要说明的是,在本申请实施例中,FPGA定义了I2C控制器速率寄存器,通过I2C控制器速率寄存器可实现对I2C控制器通信速率的配置,如标准模式下可达100kbit/s,快速模式下可达400kbit/s,高速模式下可达3.4Mbit/s,在本申请实施例中,通信速率可以设置为100kbit/s,本申请对此不做具体限定,可以根据交换机或者其他系统需求设置不同的通信速率。
可选地,所述信息传输装置用于对所述I2C控制器模块进行驱动,还用于控制所述I2C控制器模块起始、读写、寄存器选择、停止的驱动。
需要说明的是,在本申请实施例中,FPGA可以实现对I2C控制器的驱动,具体的,控制I2C控制器起始、读写、寄存器选择、停止等整个I2C控制器设备波形的驱动,此种驱动方式较于传统上层的驱动方式,由于FPGA直接面向光模块设备信号,协议有效通信率可达到95%,而传统上层驱动方式的协议有效通信率只有20%左右。
另外,本申请实施例中,通过对I2C设备的I2C驱动方式由上层控制器转移到信息传输装置上,从而降低了上层控制器的资源占有率。
可选地,所述信息传输装置和所述上层控制器通过带内中断方式进行命令与数据的传输。
需要说明的是,在本申请实施例中,为了提高上层控制器与信息传输装置的通信速率,因此,信息传输装置和上层控制器在进行命令和数据传输通信时,通过PCIe协议,并且基于PCIe通信进一步采用中断方式,即信息传输装置对光模块的操作完成后,会通过PCIe产生带内中断,从而通知上层控制器,以使上层控制器快速得知对光模块的操作是否完成。
本申请实施例提供一种信息传输装置,该信息传输装置包括:多个I2C控制器模块,每个I2C控制器模块用于连接一个I2C设备的I2C接口,即本申请实施例中的信息传输装置和上层控制器连接,信息传输装置中每个I2C控制器模块连接一个I2C设备的I2C接口连接,所述信息传输装置用于接收所述上层控制器发送的控制指令,根据所述控制指令对所述I2C设备进行并行访问,因此,通过设置与I2C设备等同数量的I2C控制器,从而实现了信息传输装置对I2C设备的并行访问,进一步地,信息传输装置通信连接有上层控制器,因此,上层控制器可以通过信息传输装置实现对I2C设备的并行访问,上层控制器无需反复访问信息传输装置来驱动访问I2C设备,进而上层控制器也无需反复驱动I2C设备波形,在实现降低上层控制器的占用率的同时提高了通信效率,进一步地,由于光模块相当于一个I2C设备,因此,上层控制器可以通过信息传输装置实现对光模块的并行访问,解决了现有技术中由于交换机系统中同一个I2C扩展芯片下的光模块只能串行访问导致降低整个交换机系统的访问速度的问题,本申请实施例中通过设置多个I2C控制器模块,每个I2C控制器模块连接一个I2C设备的I2C接口,从而实现对I2C设备的高效并行访问,提高了交换机应用中I2C设备的访问效率。
另外,本申请实施例中通过对光模块并行访问机制提高了交换机应用中光模块设备的访问效率,有效的降低了CPU资源占有率;具体地说,对光模块的I2C驱动方式由CPU转移到FPGA上,从而降低了CPU的资源占有率;FPGA与CPU支持对光模块的实时访问与轮询访问方式,在提高效率基础上,使访问更加灵活;FPGA的天然并行访问特性,及众多光模块的并行独立访问机制,在提高访问效率的基础上,实现光模块的相互独立,从而实现了光模块设备的故障隔离。本申请支持对从设备地址的配置,因此可应用于任何I2C设备领域。
第二方面,本申请实施例提供了一种信息传输系统,信息传输系统包括:第一方面任意一项所述的信息传输装置,上层控制器以及I2C设备,下面对上述提到的资源共享装置进行具体描述。
需要说明的是,在本申请实施例中,如图5所示,图5为本申请实施例中提供的一种信息传输系统示意图,信息传输系统包括信息传输装置,上层控制器以及I2C设备,所述信息传输装置通信连接有所述上层控制器以及所述I2C设备;所述信息传输装置通过所述上层控制器发送的I2C设备控制命令对所述I2C设备进行并行访问。
因此,在本申请实施例中,上层控制器需要访问I2C设备,实际上层控制器只需要访问信息传输装置,信息传输装置根据上层控制器控制命令以及信息传输装置内部结构,实现I2C设备的并行访问;更进一步说,I2C设备和上层控制器是隔离,信息传输装置实现光模块的并行访问。所以上层控制器只需要实现信息传输装置的并行访问。
上述信息传输系统一方面简化了上层控制器设计和访问方式,即只需要PCIe进行访问;另一方面,信息传输装置实现I2C设备的访问,从而降低了上层控制器的使用占有率,上层控制器无需对I2C设备直接访问,信息传输装置可以实时监控I2C设备的状态,并向上层控制器反馈I2C设备状态,从而提高了I2C设备的有效利用率。
本申请实施例提供一种信息传输系统,信息传输系统包括:信息传输装置,上层控制器以及I2C设备,其中,信息传输装置包括:多个I2C控制器模块,每个I2C控制器模块用于连接一个I2C设备的I2C接口,即本申请实施例中的信息传输装置和上层控制器连接,信息传输装置中每个I2C控制器模块连接一个I2C设备的I2C接口连接,因此,即信息传输装置例化与I2C设备等同数量的I2C控制器,从而实现了信息传输装置对I2C设备的并行访问,进一步地,信息传输装置通信连接有上层控制器,因此,上层控制器可以通过信息传输装置实现对I2C设备的并行访问,由于光模块相当于一个I2C设备,因此,上层控制器可以通过信息传输装置实现对光模块的并行访问,解决了现有技术中由于交换机系统中同一个I2C扩展芯片下的光模块只能串行访问导致降低整个交换机系统的访问速度的问题,本申请实施例中通过设置多个I2C控制器模块,每个I2C控制器模块连接一个I2C设备的I2C接口,从而实现对I2C设备的高效并行访问,提高了交换机应用中I2C设备的访问效率。
另外,本申请实施例中通过对光模块并行访问机制提高了交换机应用中光模块设备的访问效率,有效的降低了CPU资源占有率;具体地说,对光模块的I2C驱动方式由CPU转移到FPGA上,从而降低了CPU的资源占有率;FPGA与CPU支持对光模块的实时访问与轮询访问方式,在提高效率基础上,使访问更加灵活;FPGA的天然并行访问特性,及众多光模块的并行独立访问机制,在提高访问效率的基础上,实现光模块的相互独立,从而实现了光模块设备的故障隔离。本申请支持对从设备地址的配置,因此可应用于任何I2C设备领域。
第三方面,本申请实施例提供了一种信息传输方法,该方法应用于第一方面中任一信息传输装置,如图6所示,该方法包括以下步骤:
步骤101,在接收到上层控制器发送的I2C设备控制命令的情况下,对I2C设备进行并行访问。
需要说明的是,在本申请实施例中,对于信息传输装置,例如,FPGA,FPGA在接收到上层控制器例如,CPU发送的对I2C设备的控制命令或者访问请求的情况下,此时,FPGA对I2C设备(例如光模块)直接进行访问。
由于FPGA中I2C控制器模块等同于光模块数量,并且每个I2C控制器模块连接一个光模块的I2C接口,因此,FPGA可以实现对光模块的并行访问。
步骤102,在对所述I2C设备并行访问期间,实时监控所述I2C设备的状态,并将所述I2C设备的状态返回至所述上层控制器。
需要说明的是,在本申请实施例中,在信息传输装置根据CPU的控制命令或者访问请求对I2C设备并行访问期间,信息传输装置会实时监控I2C涉笔的状态,并且将I2C设备的状态返回至上层控制器。
具体的,本申请实施例中,上层控制器与信息传输装置采用带内中断方式进行通信的命令与数据传输,即FPGA执行完命令或数据执行完毕会向CPU产生中断,中断通信方式相比于轮询的通信机制可以进一步降低上层控制器使用占有率提高通信效率。
除了上述举例说明,用户可以通过本申请实施例中信息传输方法实现对I2C设备的监控,访问,控制,读取等,本申请对此不做具体限定,用户可以根据实际情况确定信息传输方法。
本申请实施例提供了一种信息传输方法,通过在接收到上层控制器发送的I2C设备控制命令的情况下,对I2C设备进行并行访问。在对所述I2C设备并行访问期间,实时监控所述I2C设备的状态,并将所述I2C设备的状态返回至所述上层控制器,本申请实施例对I2C设备的I2C驱动方式由上层控制器转移到信息传输装置上,从而降低了上层控制器的资源占有率,并且,通过信息传输装置中I2C控制器模块等同于I2C设备数量,并且每个I2C控制器模块连接一个I2C设备的I2C接口,可以使得上层控制器通过信息传输装置对I2C设备并行访问。
进一步地,本申请实施例中的信息传输装置包括:多个I2C控制器模块,每个I2C控制器模块用于连接一个I2C设备的I2C接口,即本申请实施例中的信息传输装置和上层控制器连接,信息传输装置中每个I2C控制器模块连接一个I2C设备的I2C接口连接,因此,即信息传输装置例化与I2C设备等同数量的I2C控制器,从而实现了信息传输装置对I2C设备的并行访问,进一步地,信息传输装置通信连接有上层控制器,因此,上层控制器可以通过信息传输装置实现对I2C设备的并行访问,由于光模块相当于一个I2C设备,因此,上层控制器可以通过信息传输装置实现对光模块的并行访问,解决了现有技术中由于交换机系统中同一个I2C扩展芯片下的光模块只能串行访问导致降低整个交换机系统的访问速度的问题,本申请实施例中通过设置多个I2C控制器模块,每个I2C控制器模块连接一个I2C设备的I2C接口,从而实现对I2C设备的高效并行访问,提高了交换机应用中I2C设备的访问效率。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
需要说明的是,当组件被称为“固定于”另一个组件,它可以直接在另一个组件上或者也可以存在居中的组件。当一个组件被认为是“连接”另一个组件,它可以是直接连接到另一个组件或者可能同时存在居中组件。当一个组件被认为是“设置于”另一个组件,它可以是直接设置在另一个组件上或者可能同时存在居中组件。本文所使用的术语“垂直的”、“水平的”、“左”、“右”以及类似的表述只是为了说明的目的。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。
以上对本申请所提供的主机设备及计算机系统进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的结构及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (16)

1.一种信息传输装置,其特征在于,所述信息传输装置通信连接有上层控制器,所述信息传输装置包括:多个集成电路总线I2C控制器模块,每个所述I2C控制器模块用于连接一个I2C设备的I2C接口,其中,所述信息传输装置用于接收所述上层控制器发送的控制指令,根据所述控制指令对所述I2C设备进行并行访问;
所述信息传输装置还包括:多个SFP封装模块,每个所述SFP封装模块用于连接一个I2C控制器,所述上层控制器通过所述SFP封装模块访问所述I2C设备;
所述SFP封装模块包括:实时访问模块、轮询访问模块、指令模块、第一存储介质模块、第二存储介质模块以及总线适配模块;
所述实时访问模块通信连接有第一存储介质模块、所述指令模块以及总线适配模块;所述轮询访问模块通信连接有所述第二存储介质模块、所述指令模块以及所述总线适配模块;
所述实时访问模块用于根据上层控制器的控制命令基于实时访问模式实时控制I2C设备,所述实时访问模式包括所述上层控制器对所述I2C设备通过信息传输装置实现实时访问,所述实时访问模式用于调试;
所述轮询访问模块用于根据上层控制器的控制命令基于轮询访问模式访问I2C设备,所述轮询访问模式包括所述上层控制器对所述I2C设备的操作信息配置完成后,所述信息传输装置对所述I2C设备进行周期性访问,所述周期性访问支持对所述I2C设备的多页读写。
2.根据权利要求1所述的信息传输装置,其特征在于,所述指令模块用于调用I2C控制器模块。
3.根据权利要求1所述的信息传输装置,其特征在于,所述上层控制器通过所述第一存储介质模块和所述第二存储介质模块和所述信息传输装置通信;所述第一存储介质模块或者所述第二存储介质模块用于存储上层控制器的控制信息与状态信息,或者存储I2C设备数据和存储上层控制器针对所述I2C设备的写入数据。
4.根据权利要求3所述的信息传输装置,其特征在于,所述第一存储介质模块和所述第二存储介质模块均包括:寄存器和随机存取存储器RAM;
所述上层控制器通过所述第一存储介质模块和所述第二存储介质模块和所述信息传输装置通信包括:所述上层控制器读写I2C设备的指令与I2C设备的状态通过所述寄存器传递,所述上层控制器读写I2C设备的数据通过所述RAM传递,所述寄存器和所述RAM映射的地址空间不同。
5.根据权利要求3所述的信息传输装置,其特征在于,所述第一存储介质模块包括:实时访问寄存器和第一RAM;
所述实时访问寄存器和第一RAM和实时访问模块通信连接。
6.根据权利要求5所述的信息传输装置,其特征在于,所述第二存储介质模块包括:轮询访问寄存器和第二RAM;
所述轮询访问寄存器和第二RAM和轮询访问模块通信连接。
7.根据权利要求6所述的信息传输装置,其特征在于,所述第一RAM包括第一端口和第二端口;所述第二RAM包括第三端口和第四端口;
其中,当所述第一端口用于读取数据时,所述第二端口停止写入数据;当所述第三端口用于读取数据时,所述第四端口停止写入数据。
8.根据权利要求6所述的信息传输装置,其特征在于,当上层控制器读取所述第一RAM中存储的数据时,通过所述实时访问寄存器将第一RAM的第二端口的写使能强制关闭;
当上层控制器读取所述第二RAM中存储的数据时,通过所述实时访问寄存器将第二RAM的第四端口的写使能强制关闭。
9.根据权利要求1所述的信息传输装置,其特征在于,所述信息传输装置还包括:第一高速串行计算机扩展总线标准PCIe接口模块;
所述第一PCIe接口模块用于连接多个SFP封装模块,并与上层控制器中的第二PCIe接口基于PCIe总线通信连接。
10.根据权利要求1所述的信息传输装置,其特征在于,所述信息传输装置还包括:轮询时间寄存器;
所述轮询时间寄存器用于设置轮询时间。
11.根据权利要求1所述的信息传输装置,其特征在于,所述信息传输装置还包括:I2C设备地址寄存器;
所述I2C设备地址寄存器用于配置访问所述I2C设备的I2C地址。
12.根据权利要求1所述的信息传输装置,其特征在于,所述信息传输装置还包括:I2C控制器速率寄存器;
所述I2C控制器速率寄存器用于配置I2C控制器模块的通信速率。
13.根据权利要求1所述的信息传输装置,其特征在于,所述信息传输装置用于对所述I2C控制器模块进行驱动,还用于控制所述I2C控制器模块起始、读写、寄存器选择、停止的驱动。
14.根据权利要求1所述的信息传输装置,其特征在于,所述信息传输装置和所述上层控制器通过带内中断方式进行命令与数据的传输。
15.一种信息传输系统,其特征在于,所述信息传输系统包括:权利要求1-14任意一项所述的信息传输装置,上层控制器以及I2C设备;
所述信息传输装置通信连接有所述上层控制器以及所述I2C设备;
所述信息传输装置通过所述上层控制器发送的I2C设备控制命令对所述I2C设备进行并行访问。
16.一种信息传输方法,其特征在于,应用于权利要求1-14任意一项所述的信息传输装置,所述信息传输方法包括:
在接收到上层控制器发送的I2C设备控制命令的情况下,对I2C设备进行并行访问;
在对所述I2C设备并行访问期间,实时监控所述I2C设备的状态,并将所述I2C设备的状态返回至所述上层控制器。
CN202310396818.9A 2023-04-13 2023-04-13 信息传输装置、系统及方法 Active CN116132383B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310396818.9A CN116132383B (zh) 2023-04-13 2023-04-13 信息传输装置、系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310396818.9A CN116132383B (zh) 2023-04-13 2023-04-13 信息传输装置、系统及方法

Publications (2)

Publication Number Publication Date
CN116132383A CN116132383A (zh) 2023-05-16
CN116132383B true CN116132383B (zh) 2023-07-18

Family

ID=86294178

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310396818.9A Active CN116132383B (zh) 2023-04-13 2023-04-13 信息传输装置、系统及方法

Country Status (1)

Country Link
CN (1) CN116132383B (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115712595A (zh) * 2022-11-15 2023-02-24 中国电子科技集团公司第三十四研究所 一种可采集百路i2c数据的装置及方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102023954B (zh) * 2009-09-17 2012-08-22 研祥智能科技股份有限公司 具有多路i2c总线的装置、处理器、系统主板及工控计算机
CN111737173B (zh) * 2020-06-24 2022-03-22 浪潮(北京)电子信息产业有限公司 I2c总线通信控制方法、装置、系统及可读存储介质
CN114721593A (zh) * 2022-03-18 2022-07-08 苏州浪潮智能科技有限公司 存储设备信息收集方法、系统及电子设备
CN115696100A (zh) * 2022-10-28 2023-02-03 深圳市信锐网科技术有限公司 一种交换机光模块监测方法、装置、设备及存储介质

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115712595A (zh) * 2022-11-15 2023-02-24 中国电子科技集团公司第三十四研究所 一种可采集百路i2c数据的装置及方法

Also Published As

Publication number Publication date
CN116132383A (zh) 2023-05-16

Similar Documents

Publication Publication Date Title
US6122676A (en) Apparatus and method for transmitting and receiving data into and out of a universal serial bus device
CN100483373C (zh) Pvdm(分组语音数据模块)通用总线协议
KR100726361B1 (ko) 메모리 장치들과의 통신을 위한 시스템 및 방법
CN101989244B (zh) 一种信号转换装置、方法及通信设备
CN108228513B (zh) 一种基于fpga架构的智能串口通讯装置
CN102012885A (zh) 采用动态i2c总线实现通讯的系统及方法
CN104021102A (zh) 基于状态机和片内总线的cpci串口板及其工作方法
CN104951252A (zh) 一种数据访问方法及PCIe存储设备
CN100383544C (zh) 一种电平信号的实时监测方法及装置
CN101414291A (zh) 一种主从分布式系统和应用于该系统的并行通信方法
CN101436171B (zh) 模块化通信控制系统
CN108268414A (zh) 基于spi模式的sd卡驱动器及其控制方法
CN101162448A (zh) 一种usb高速数据隧道的硬件传输方法
CN104834620A (zh) 串行外设接口spi总线电路、实现方法以及电子设备
CN111931442B (zh) Fpga内嵌flash控制器及电子装置
CN100517283C (zh) 先进高性能系统总线连接装置及先进高性能系统总线装置
CN2845324Y (zh) 基于fpga的mvb一类设备网卡
CN116132383B (zh) 信息传输装置、系统及方法
US20070005847A1 (en) Data transfer control device and electronic instrument
CN103150262B (zh) 管道式串行接口闪存访问装置
CN213122983U (zh) 基于fpga实现的片上系统
US20070131767A1 (en) System and method for media card communication
CN107643989B (zh) 一种基于pci总线协议双光纤环路冗余结构通讯板卡
CN204706031U (zh) 串行外设接口spi总线电路以及电子设备
CN100462952C (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