CN111884892B - 一种基于共享链协议的数据传输方法与*** - Google Patents
一种基于共享链协议的数据传输方法与*** Download PDFInfo
- Publication number
- CN111884892B CN111884892B CN202010534770.XA CN202010534770A CN111884892B CN 111884892 B CN111884892 B CN 111884892B CN 202010534770 A CN202010534770 A CN 202010534770A CN 111884892 B CN111884892 B CN 111884892B
- Authority
- CN
- China
- Prior art keywords
- message
- equipment
- programmable
- shared
- address
- 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
- 230000005540 biological transmission Effects 0.000 title claims abstract description 35
- 238000000034 method Methods 0.000 title claims abstract description 21
- 230000003993 interaction Effects 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 6
- 238000013461 design Methods 0.000 abstract description 10
- 238000011161 development Methods 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 230000002250 progressing effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Programmable Controllers (AREA)
Abstract
本发明提供了一种基于共享链协议的数据传输方法与***,本发明基于统一编址的思想,将所有可编程设备的控制信号映射到一张总的逻辑地址表上,相比于过去每两个设备之间需要连接多组信号走线的拓扑结构,本发明通过一根总线完成对所有可编程设备的控制,解决了因IO扩展而造成对管脚资源的消耗,避免因繁琐的信号拓扑结构而消耗过多板上的空间资源,从而便于设计更加合理的走线,降低高速信号的设计难度,达到节约开发成本的目的。
Description
技术领域
本发明涉及网络通信技术领域,特别是一种基于共享链协议的数据传输方法与***。
背景技术
随着通信行业的发展,传统的网络通信设备不断的升级,当前5G大潮方兴未艾,市场对于数据中心交换机等设备有着越来越高的要求,这些要求体现在端口的速率和设备的管理上。当前主流数据中心的端口速率已逐渐完成从10G到25G的升级,下一代56G速率的光口连接器也提上日程。由于端口速率的提升,对交换机上各设备的管理也随着有了更严格的要求。例如,由于端口速率提升,芯片上功耗也随之增大,因此板上温度和功耗的监控将变得更加复杂,又如,对于高速信号来说,其对噪声有更为严格的要求,因此板上的走线需要在设计阶段做更全面的管控,更加简洁的电路拓扑显然可以提供更为灵活的设计。
当前板上的很多管理信号是通过CPLD或FPGA等设备的GPIO(General-purposeinput/output,通用输入输出)来传递的,例如CPU的温度告警信号、电源芯片的电压告警信号等。由于板卡上的设备众多,每个设备都会有若干个信号需要传递,并且很多情况下,多个设备需要互相知道各自彼此的信号。因此,最终板卡上的这些管理信号会纵横交错,形成复杂的网络拓扑。如图1所示,传统GPIO信号拓扑结构中,设备1、2、3之间如果需要两两之间完成信号传递的话,那么就需要3根信号线,当设备数量增加,每个设备上需要共享的信号数目增多的时候,这个数量会呈指数增长,从而消耗板上的空间资源,带来设计上的挑战。
发明内容
本发明的目的是提供一种基于共享链协议的数据传输方法与***,旨在解决现有技术中繁琐的信号拓扑结构消耗过多板上的空间资源的问题,实现降低高速信号的设计难度,节约开发成本。
为达到上述技术目的,本发明提供了一种基于共享链协议的数据传输方法,所述方法包括以下操作:
设置共享链硬件链路拓扑,将一根共享总线连接到各个可编程设备的GPIO端口上,对于每个可编程设备分配不同的地址;
设置共享链协议报文,包括当前设备地址位、当前设备状态、传输数据以及下个设备地址位,各个可编程设备根据接收的协议报文决定是否发送报文;
可编程设备在进行数据交互时,可编程设备中的其中一个发出报文,所有其他设备均接收该报文,该报文中下个设备地址位的设备进行反馈继续发送报文,如此按照地址顺序依次发送报文。
优选地,所述可编程设备为板卡上的CPU、BMC、CPLD以及FPGA设备中的任意一种。
优选地,所述当前设备状态包括正常、错误以及终止三个状态,当正常时记录结果,当错误时丢弃结果,当终止时结束当前流程。
优选地,所述可编程设备在接收到报文后,将传输数据存储于寄存器中。
本发明还提供了一种基于共享链协议的数据传输***,所述***包括:
共享链拓扑设置模块,用于设置共享链硬件链路拓扑,将一根共享总线连接到各个可编程设备的GPIO端口上,对于每个可编程设备分配不同的地址;
共享链协议设置模块,用于设置共享链协议报文,包括当前设备地址位、当前设备状态、传输数据以及下个设备地址位,各个可编程设备根据接收的协议报文决定是否发送报文;
数据传输模块,用于可编程设备在进行数据交互时,可编程设备中的其中一个发出报文,所有其他设备均接收该报文,该报文中下个设备地址位的设备进行反馈继续发送报文,如此按照地址顺序依次发送报文。
优选地,所述可编程设备为板卡上的CPU、BMC、CPLD以及FPGA设备中的任意一种。
优选地,所述当前设备状态包括正常、错误以及终止三个状态,当正常时记录结果,当错误时丢弃结果,当终止时结束当前流程。
优选地,所述可编程设备在接收到报文后,将传输数据存储于寄存器中。
发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:
与现有技术相比,本发明基于统一编址的思想,将所有可编程设备的控制信号映射到一张总的逻辑地址表上,相比于过去每两个设备之间需要连接多组信号走线的拓扑结构,本发明通过一根总线完成对所有可编程设备的控制,解决了因IO扩展而造成对管脚资源的消耗,避免因繁琐的信号拓扑结构而消耗过多板上的空间资源,从而便于设计更加合理的走线,降低高速信号的设计难度,达到节约开发成本的目的。
附图说明
图1为现有技术中的传统GPIO链路拓扑结构示意图;
图2为本发明实施例中所提供的一种基于共享链协议的数据传输方法流程图;
图3为本发明实施例中所提供的一种共享式硬件链路拓扑结构示意图;
图4为本发明实施例中所提供的共享链协议报文结构示意图;
图5为本发明实施例中所提供的一种基于共享链协议的数据传输***框图。
具体实施方式
为了能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
下面结合附图对本发明实施例所提供的一种基于共享链协议的数据传输方法与***进行详细说明。
如图2所示,本发明公开了一种基于共享链协议的数据传输方法,所述方法包括以下操作:
设置共享链硬件链路拓扑,将一根共享总线连接到各个可编程设备的GPIO端口上,对于每个可编程设备分配不同的地址;
设置共享链协议报文,包括当前设备地址位、当前设备状态、传输数据以及下个设备地址位,各个可编程设备根据接收的协议报文决定是否发送报文;
可编程设备在进行数据交互时,可编程设备中的其中一个发出报文,所有其他设备均接收该报文,该报文中下个设备地址位的设备进行反馈继续发送报文,如此按照地址顺序依次发送报文。
设置共享式链路拓扑结构,包括共享总线、可编程设备以及设备GPIO端口,如图3所示。所述共享总线只有一根信号线,连接到各个可编程设备的GPIO端口上,用于在各个可编程设备之间共享报文数据。所述可编程设备指板卡上的CPU、BMC、CPLD以及FPGA等设备,主要用来管理板卡上的设备,监控板卡上的温度电压等信息。各个可编程设备会被分配不同的地址,例如可编程设备1的地址为0x00,这个地址必须是连续的,从0x00开始,依序往后排布。可编程设备通过共享总线将GPIO接口互相连接起来。
设置共享链协议,该协议用于仅使用一个GPIO端口来完成可编程设备之间的所有GPIO信号的交互。所述共享链包括共享链协议报文,该报文的结构如图4所示,共享链协议报文包括当前设备的地址位、当前设备的状态、传输数据以及下一个设备的地址位。当共享总线上某个设备完成报文发送后,所有其他设备接收到完整的报文,然后根据当前设备的地址和状态位将传输数据保存在对应位置的寄存器上,然后将报文中下一个设备地址和自身地址进行比对,当匹配失败后,说明下一个未轮到本设备发送,当匹配成功时说明需本设备发送报文,此时设备将会重新打包一份报文,并编辑好下一个设备的地址发送出去,其他的设备来接收,并以此方式继续发送。
所述当前设备状态包括正常、错误以及终止三个状态。当其他设备收到报文时会检查当前设备状态,如果是正常则记录结果,如果是错误,则丢弃该结果,如果是终止,则结束当前流程,重新从0x00设备开始发起新一轮流程。
数据传输启动后,各个设备完成初始化,之后地址为0x00的设备会发出第一个报文,并且在报文的下一个地址处附上下个设备地址位0x01,之后共享总线上所有设备等待0x01的设备的反馈,如果没有反馈则0x00设备重新发送报文,如果有反馈,则继续按照地址顺序,后续设备依次发送报文。在此期间,如果某一环节设备没有响应,等待一段时间后,设备0x00会重新发起第一个报文,对于最后一个地址的设备,其下个设备地址位是0x00设备。任何设备的设备状态设置为终止时,将停止循环,重新从0x00设备开始发起新一轮报文的发送,以此循环,完成各个设备间的数据交互。
本发明实施例基于统一编址的思想,将所有可编程设备的控制信号映射到一张总的逻辑地址表上,相比于过去每两个设备之间需要连接多组信号走线的拓扑结构,本发明通过一根总线完成对所有可编程设备的控制,解决了因IO扩展而造成对管脚资源的消耗,避免因繁琐的信号拓扑结构而消耗过多板上的空间资源,从而便于设计更加合理的走线,降低高速信号的设计难度,达到节约开发成本的目的。
如图5所示,本发明实施例还公开了一种基于共享链协议的数据传输***,所述***包括:
共享链拓扑设置模块,用于设置共享链硬件链路拓扑,将一根共享总线连接到各个可编程设备的GPIO端口上,对于每个可编程设备分配不同的地址;
共享链协议设置模块,用于设置共享链协议报文,包括当前设备地址位、当前设备状态、传输数据以及下个设备地址位,各个可编程设备根据接收的协议报文决定是否发送报文;
数据传输模块,用于可编程设备在进行数据交互时,可编程设备中的其中一个发出报文,所有其他设备均接收该报文,该报文中下个设备地址位的设备进行反馈继续发送报文,如此按照地址顺序依次发送报文。
设置共享式链路拓扑结构,包括共享总线、可编程设备以及设备GPIO端口。所述共享总线只有一根信号线,连接到各个可编程设备的GPIO端口上,用于在各个可编程设备之间共享报文数据。所述可编程设备指板卡上的CPU、BMC、CPLD以及FPGA等设备,主要用来管理板卡上的设备,监控板卡上的温度电压等信息。各个可编程设备会被分配不同的地址,例如可编程设备1的地址为0x00,这个地址必须是连续的,从0x00开始,依序往后排布。可编程设备通过共享总线将GPIO接口互相连接起来。
设置共享链协议,该协议用于仅使用一个GPIO端口来完成可编程设备之间的所有GPIO信号的交互。所述共享链包括共享链协议报文,共享链协议报文包括当前设备的地址位、当前设备的状态、传输数据以及下一个设备的地址位。当共享总线上某个设备完成报文发送后,所有其他设备接收到完整的报文,然后根据当前设备的地址和状态位将传输数据保存在对应位置的寄存器上,然后将报文中下一个设备地址和自身地址进行比对,当匹配失败后,说明下一个未轮到本设备发送,当匹配成功时说明需本设备发送报文,此时设备将会重新打包一份报文,并编辑好下一个设备的地址发送出去,其他的设备来接收,并以此方式继续发送。
所述当前设备状态包括正常、错误以及终止三个状态。当其他设备收到报文时会检查当前设备状态,如果是正常则记录结果,如果是错误,则丢弃该结果,如果是终止,则结束当前流程,重新从0x00设备开始发起新一轮流程。
数据传输启动后,各个设备完成初始化,之后地址为0x00的设备会发出第一个报文,并且在报文的下一个地址处附上下个设备地址位0x01,之后共享总线上所有设备等待0x01的设备的反馈,如果没有反馈则0x00设备重新发送报文,如果有反馈,则继续按照地址顺序,后续设备依次发送报文。在此期间,如果某一环节设备没有响应,等待一段时间后,设备0x00会重新发起第一个报文,对于最后一个地址的设备,其下个设备地址位是0x00设备。任何设备的设备状态设置为终止时,将停止循环,重新从0x00设备开始发起新一轮报文的发送,以此循环,完成各个设备间的数据交互。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种基于共享链协议的数据传输方法,其特征在于,所述方法包括以下操作:
设置共享链硬件链路拓扑,将一根共享总线连接到各个可编程设备的GPIO端口上,对于每个可编程设备分配不同的地址;所述可编程设备为板卡上的CPU、BMC、CPLD以及FPGA设备中的任意一种;
设置共享链协议报文,包括当前设备地址位、当前设备状态、传输数据以及下个设备地址位,各个可编程设备根据接收的协议报文决定是否发送报文;可编程设备在进行数据交互时,可编程设备中的其中一个发出报文,所有其他设备均接收该报文,然后将报文中下一个设备地址和自身地址进行比对,当匹配失败后,说明下一个未轮到本设备发送,当匹配成功时说明需本设备发送报文,此时设备将会重新打包一份报文,并编辑好下一个设备的地址发送出去,其他的设备来接收,并以此方式继续发送。
2.根据权利要求1所述的一种基于共享链协议的数据传输方法,其特征在于,所述当前设备状态包括正常、错误以及终止三个状态,当正常时记录结果,当错误时丢弃结果,当终止时结束当前流程。
3.根据权利要求1所述的一种基于共享链协议的数据传输方法,其特征在于,所述可编程设备在接收到报文后,将传输数据存储于寄存器中。
4.一种基于共享链协议的数据传输***,其特征在于,所述***包括:
共享链拓扑设置模块,用于设置共享链硬件链路拓扑,将一根共享总线连接到各个可编程设备的GPIO端口上,对于每个可编程设备分配不同的地址;所述可编程设备为板卡上的CPU、BMC、CPLD以及FPGA设备中的任意一种;
共享链协议设置模块,用于设置共享链协议报文,包括当前设备地址位、当前设备状态、传输数据以及下个设备地址位,各个可编程设备根据接收的协议报文决定是否发送报文;
数据传输模块,用于可编程设备在进行数据交互时,可编程设备中的其中一个发出报文,所有其他设备均接收该报文,然后将报文中下一个设备地址和自身地址进行比对,当匹配失败后,说明下一个未轮到本设备发送,当匹配成功时说明需本设备发送报文,此时设备将会重新打包一份报文,并编辑好下一个设备的地址发送出去,其他的设备来接收,并以此方式继续发送。
5.根据权利要求4所述的一种基于共享链协议的数据传输***,其特征在于,所述当前设备状态包括正常、错误以及终止三个状态,当正常时记录结果,当错误时丢弃结果,当终止时结束当前流程。
6.根据权利要求4所述的一种基于共享链协议的数据传输***,其特征在于,所述可编程设备在接收到报文后,将传输数据存储于寄存器中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010534770.XA CN111884892B (zh) | 2020-06-12 | 2020-06-12 | 一种基于共享链协议的数据传输方法与*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010534770.XA CN111884892B (zh) | 2020-06-12 | 2020-06-12 | 一种基于共享链协议的数据传输方法与*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111884892A CN111884892A (zh) | 2020-11-03 |
CN111884892B true CN111884892B (zh) | 2021-11-23 |
Family
ID=73158310
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010534770.XA Active CN111884892B (zh) | 2020-06-12 | 2020-06-12 | 一种基于共享链协议的数据传输方法与*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111884892B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111124981A (zh) * | 2019-11-29 | 2020-05-08 | 苏州浪潮智能科技有限公司 | 一种服务器i2c设备的管理***及方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100361118C (zh) * | 2005-03-01 | 2008-01-09 | 华为技术有限公司 | 一种多cpu***及其控制方法 |
CN1863081B (zh) * | 2005-10-14 | 2010-05-05 | 华为技术有限公司 | 基板管理控制器的管理***和方法 |
US8238255B2 (en) * | 2006-11-22 | 2012-08-07 | Foundry Networks, Llc | Recovering from failures without impact on data traffic in a shared bus architecture |
CN101819556B (zh) * | 2010-03-26 | 2013-06-12 | 北京经纬恒润科技有限公司 | 一种信号处理板 |
CN102981992B (zh) * | 2012-11-28 | 2015-12-02 | 中国人民解放军国防科学技术大学 | 基于异步结构的集成电路片上通讯方法及装置 |
CN103914424B (zh) * | 2014-04-14 | 2016-08-03 | 中国人民解放军国防科学技术大学 | 基于gpio接口的lpc外设扩展方法及装置 |
CN105589818B (zh) * | 2015-07-17 | 2018-12-11 | 新华三技术有限公司 | 电子设备和用于电子设备的访问控制方法 |
CN108959157A (zh) * | 2018-06-26 | 2018-12-07 | 郑州云海信息技术有限公司 | 一种可编程逻辑器件的控制***及方法 |
CN110069425A (zh) * | 2019-04-24 | 2019-07-30 | 苏州浪潮智能科技有限公司 | 一种基于服务器多处理机板卡设备之间的数据处理方法 |
-
2020
- 2020-06-12 CN CN202010534770.XA patent/CN111884892B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111124981A (zh) * | 2019-11-29 | 2020-05-08 | 苏州浪潮智能科技有限公司 | 一种服务器i2c设备的管理***及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111884892A (zh) | 2020-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS6333945A (ja) | ロ−カルエリアデ−タデイストリビユ−シヨンシステム | |
US11277308B2 (en) | Technologies for autonegotiating 10G and 1G serial communications over copper cable | |
CN116501681B (zh) | Cxl数据传输板卡及控制数据传输的方法 | |
CN104899170A (zh) | 分布式智能平台管理总线ipmb连接方法及atca机框 | |
CN111948971A (zh) | 一种智能卡管理装置及其数据转接方法 | |
CN113177018A (zh) | 一种使用双槽cpu的服务器 | |
CN109561032B (zh) | 一种交换机模块及包括其的交换机 | |
CN113220614B (zh) | 一种自适应管理i2c和i3c设备的方法、***及介质 | |
CN109407574B (zh) | 一种多总线可选择输出控制装置及其方法 | |
CN111858459B (zh) | 处理器及计算机 | |
CN111884892B (zh) | 一种基于共享链协议的数据传输方法与*** | |
US11394583B2 (en) | Ethernet interconnection circuit and apparatus | |
CN210666783U (zh) | 一种高密度arm微服务器的控制电路 | |
CN113760803A (zh) | 服务器和控制方法 | |
CN114138354B (zh) | 一种支持multihost的板载OCP网卡***及服务器 | |
CN112087359B (zh) | 一种串行通信*** | |
CN104135411A (zh) | 一种基于rs232接口多节点通信的实现装置及方法 | |
CN113626363A (zh) | 一种面向微纳星载计算机的多总线架构装置及其控制方法 | |
CN104348756A (zh) | 交换机*** | |
CN112165423A (zh) | 一种串行通信方法、电子设备及存储介质 | |
CN112463684A (zh) | 一种多***ocp转接***及ocp设备热插拔方法 | |
CN113194048A (zh) | 一种动态切换cpu与gpu拓扑的装置及使用方法 | |
CN107704403B (zh) | 一种优化主背板信号传输的装置及方法 | |
CN111131088B (zh) | 一种插卡式接口板和插卡式设备 | |
CN213754536U (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 |