CN117591449B - 一种基板的可编程逻辑器件系统及其应用设备 - Google Patents
一种基板的可编程逻辑器件系统及其应用设备 Download PDFInfo
- Publication number
- CN117591449B CN117591449B CN202410064086.8A CN202410064086A CN117591449B CN 117591449 B CN117591449 B CN 117591449B CN 202410064086 A CN202410064086 A CN 202410064086A CN 117591449 B CN117591449 B CN 117591449B
- Authority
- CN
- China
- Prior art keywords
- serial port
- module
- substrate
- management controller
- programmable logic
- 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
- 239000000758 substrate Substances 0.000 title claims abstract description 359
- 238000012545 processing Methods 0.000 claims abstract description 133
- 238000001514 detection method Methods 0.000 claims description 62
- 238000001914 filtration Methods 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 17
- 238000006243 chemical reaction Methods 0.000 claims description 16
- 230000005540 biological transmission Effects 0.000 claims description 10
- 230000003111 delayed effect Effects 0.000 claims description 7
- 238000004891 communication Methods 0.000 abstract description 11
- 238000010586 diagram Methods 0.000 description 17
- 238000000034 method Methods 0.000 description 14
- 230000008859 change Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 8
- 238000013461 design Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 238000011161 development Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/12—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
- G06F13/124—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7867—Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
Abstract
本发明实施例提供了一种基板的可编程逻辑器件系统及其应用设备,涉及计算机网络通信技术领域,包括精简引脚总线解析模块解析中央处理器下发的精简引脚总线命令;寄存器空间分配模块对精简引脚总线命令的数据分配至预设寄存器地址空间;串口枢纽模块与中央处理器、基板管理控制器交互;并提供预设寄存器地址空间;串口解析模块解析基板串口模块与中央处理器,或基板串口模块与基板管理控制器之间的串口数据;串口切换模块基于串口完整字节切换策略,将基板串口模块与中央处理器接通,或将基板串口模块与基板管理控制器接通;通过本发明实施例解决不同管理平面串口切换导致的不完整字节,引起的乱码和系统挂死问题。
Description
技术领域
本发明涉及计算机网络通信技术领域,特别是涉及一种基板的可编程逻辑器件系统、一种基板串口系统、一种交换机、一种电子设备和一种存储介质。
背景技术
随着数据中心业务迅速发展,数据中心交换机需求量也在迅速增加、交换机交换容量、面板端口数量和端口速率也在增加。通常,用户需要通过串口或者管理网口快速获取管理平面和网络转发
平面的信息,由于管理平面和网络转发平面分属不同管理芯片,管理网口可以通过管理芯片各自的IP(Internet Protocol,网际互连协议)地址进行访问,两组管理芯片之间通过内联口进行网络通信,面板串口则需要切换到各个管理芯片的串口进行分时访问,且两组管理芯片之间通过串口相互记录各自系统日志,而在进行分时切换过程中,容易出现不完整传输导致CPU(Central Processing Unit,中央处理器)侧、BMC(BaseboardManagement Controller,基板管理控制器)侧和上位机侧出现乱码,甚至系统串口异常挂死情况。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种基板的可编程逻辑器件系统、一种基板串口系统、一种交换机、一种电子设备和一种存储介质。
为了解决上述问题,在本发明的第一个方面,本发明实施例公开了一种基板的可编程逻辑器件系统,所述基板的可编程逻辑器件系统一端与中央处理器、基板管理控制器连接,所述基板的可编程逻辑器件系统另一端与基板串口模块连接,所述基板的可编程逻辑器件系统包括:
精简引脚总线解析模块,与所述中央处理器连接,用于解析所述中央处理器下发的精简引脚总线命令;
寄存器空间分配模块,与所述精简引脚总线解析模块连接,用于对所述精简引脚总线命令的数据分配至预设寄存器地址空间;
串口枢纽模块,与所述中央处理器、所述基板管理控制器连接,用于与所述中央处理器、所述基板管理控制器交互;并提供所述预设寄存器地址空间;
串口解析模块,与所述串口枢纽模块连接,用于解析所述基板串口模块与所述中央处理器,或所述基板串口模块与所述基板管理控制器之间的串口数据;
串口切换模块,与所述串口解析模块连接,用于基于串口完整字节切换策略,将所述基板串口模块与所述中央处理器接通,或将所述基板串口模块与所述基板管理控制器接通。
可选地,所述基板的可编程逻辑器件系统还包括:
滤波模块,位于所述串口解析模块和所述基板串口模块之间,用于滤除所述基板串口模块的干扰信号。
可选地,所述基板的可编程逻辑器件系统还包括:
波特率检测模块,与所述基板串口模块连接,用于检测所述基板串口模块的波特率,所述波特率用于控制数据传输速率。
可选地,所述串口枢纽模块包括:
接口空闲检测子模块,用于检测所述基板串口模块的切换指令;
切换确定子模块,用于当所述切换指令为第一输入指令时,基于所述第一输入指令的第一切换数据生成第一目标特征码或第二目标特征码。
可选地,所述串口枢纽模块还包括:
输入子检测子模块,用于当所述切换指令为第二切换指令时,解析所述第二切换指令,确定第二切换数据;
所述切换确定子模块还用于基于所述第二切换数据生成所述第一目标特征码或所述第二目标特征码。
可选地,所述串口切换模块包括:
串口状态判断子模块,用于获取所述串口解析模块的状态特征码;依据所述状态特征码将所述基板串口模块与所述中央处理器接通,或将所述基板串口模块与所述基板管理控制器接通。
可选地,所述串口状态判断子模块用于获取所述串口解析模块的状态特征码;当所述状态特征码为所述第一目标特征码时,将所述基板串口模块与所述基板管理控制器接通;当所述状态特征码为所述第二目标特征码时,将所述基板串口模块与所述中央处理器接通。
可选地,所述串口切换模块还包括:
第一中央处理器发送状态检测子模块,用于基于在所述状态特征码为所述第一目标特征码时,检测所述中央处理器至所述基板串口模块发送方向是否空闲;当处于空闲时间,关闭所述中央处理器至所述基板串口模块的连接通道;
第一基板管理控制器发送状态检测子模块,用于检测所述基板管理控制器至所述基板串口模块发送方向是否空闲;当处于空闲时间且延迟预设第一等待时长后,将所述基板串口模块与所述基板管理控制器的通道接通;并在接通后,返回所述串口状态判断子模块。
可选地,所述串口切换模块还包括:
第二中央处理器发送状态检测子模块,用于基于在所述状态特征码为所述第二目标特征码时,检测所述基板管理控制器至所述基板串口模块发送方向;当处于空闲时间,关闭所述基板管理控制器至所述基板串口模块的连接通道;
第二基板管理控制器发送状态检测子模块,用于检测所述中央处理器至所述基板串口模块发送方向是否空闲;当处于空闲时间且延迟预设第二等待时长后,将所述基板串口模块与所述中央处理器的通道接通;并在接通后,返回所述串口状态判断子模块。
可选地,所述串口解析模块包括:
起始位检查子模块,用于检测是否存在串口起始位;
启动子模块,用于当存在串口起始位时,接收所述串口数据的起始位数据;
载荷子模块,用于在接收所述起始位数据后,接收串口数据的串口字节数据;
停止子模块,用于在接收到所述串口字节数据到达预设比特位数时,接收所述串口数据的终止位数据。
可选地,所述滤波模块用于当所述基板串口模块的串口输入数据连续预设比特位为同一初始输入值,确定所述初始输入值为所述串口输入数据的输入值。
可选地,所述波特率检测模块用于统计第三预设时长内信号线上电平变化次数大小,根据所述次数大小确定所述波特率。
在本发明的第二个方面,本发明实施例公开了一种基板串口系统,包括:中央处理器、基板管理控制器、基板串口模块和如上所述的基板的可编程逻辑器件系统,所述基板的可编程逻辑器件系统一端与所述中央处理器、所述基板管理控制器连接,所述基板的可编程逻辑器件系统另一端与所述基板串口模块连接。
可选地,所述基板串口模块包括:
面板物理接口,与所述基板的可编程逻辑器件系统另一端连接。
可选地,所述基板串口模块还包括:
电平转换子模块,位于所述电平转换子模块和所述基板的可编程逻辑器件系统另一端之间,用于串口电平转换。
可选地,所述中央处理器包括:
中央处理器第一通用异步收发器,与所述基板的可编程逻辑器件系统一端连接,用于基于所述基板串口系统与所述基板串口模块通信;
中央处理器第二通用异步收发器,与所述基板的可编程逻辑器件系统一端连接,用于生成中央处理器启动日志和操作日志。
可选地,所述基板管理控制器包括:
基板管理控制器第一通用异步收发器,与所述基板的可编程逻辑器件系统一端连接,用于基于所述基板串口系统与所述基板串口模块通信;
基板管理控制器第二通用异步收发器,与所述基板的可编程逻辑器件系统一端连接,用于生成基板管理控制器启动日志和操作日志。
在本发明的第三个方面,本发明实施例公开了一种交换机,包括如上所述的基板串口系统。
在本发明的第四个方面,本发明实施例还公开了一种电子设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的基板的可编程逻辑器件系统。
在本发明的第五个方面,本发明实施例还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的基板的可编程逻辑器件系统。
本发明实施例包括以下优点:
本发明实施例通过精简引脚总线解析模块,与所述中央处理器连接,用于解析所述中央处理器下发的精简引脚总线命令;寄存器空间分配模块,与所述精简引脚总线解析模块连接,用于对所述精简引脚总线命令的数据分配至预设寄存器地址空间;串口枢纽模块,与所述中央处理器、所述基板管理控制器连接,用于与所述中央处理器、所述基板管理控制器交互;并提供所述预设寄存器地址空间;串口解析模块,与所述串口枢纽模块连接,用于解析所述基板串口模块与所述中央处理器,或所述基板串口模块与所述基板管理控制器之间的串口数据;串口切换模块,与所述串口解析模块连接,用于基于串口完整字节切换策略,将所述基板串口模块与所述中央处理器接通,或将所述基板串口模块与所述基板管理控制器接通;将三组串口分别接到CPLD,由CPLD根据面板口切换指令完成串口完整字节切换,避免串口异常挂死可以解决不同管理平面串口切换导致的不完整字节,引起的乱码和系统挂死问题,中央处理器串口、基板管理控制器串口和面板串口采用统一的串口切换逻辑,逻辑代码移植性好,简化了硬件设计复杂度,逻辑修改对上层软件无感知,减小了开发复杂度和设计难度,降低开发风险,提高了可靠性,从而起到了节约成本的作用。
附图说明
图1是现有技术的一种串口系统的示意图;
图2是本发明的一种基板的可编程逻辑器件系统实施例的示意图;
图3是本发明的一种基板的可编程逻辑器件系统实施例的滤波模块的处理示意图;
图4是本发明的一种基板的可编程逻辑器件系统实施例的串口枢纽模块的处理示意图;
图5是本发明的一种基板的可编程逻辑器件系统实施例的串口切换模块的处理示意图;
图6是本发明的一种基板的可编程逻辑器件系统实施例的串口解析模块的状态机示意图;
图7是本发明的一种基板串口系统实施例的示意图;
图8是本发明实施例提供的一种电子设备的结构框图;
图9是本发明实施例提供的一种存储介质的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
可以参照图1,现有的串口系统方案由基板管理控制器模块(BMC模块)、中央处理器(CPU)、复杂可编程逻辑器件的基板(Base Board CPLD)、接口转换芯片(MAX232)和前面板(RJ45)组成。其中,BMC模块的异步串行通信接口5(UART5)主要负责与面板串口通信,异步串行通信接口1(UART1)主要负责记录CPU启动日志和系统操作日志;CPU卡的异步串行通信接口0(UART0)主要负责与面板串口通信,UART0主要负责记录BMC启动日志和系统操作日志;Base Board CPLD主要负责面板串口、BMC模块的UART1和UART5、CPU卡的UART5和UART1串口切换;MAX232负责串口电平转换;面板RJ45是面板串口的物理接口。
两组管理芯片之间通过内联口进行网络通信,面板串口则需要切换到各个管理芯片的串口进行分时访问,且两组管理芯片之间通过串口相互记录各自系统日志,而在进行分时切换过程中,容易出现不完整传输导致CPU侧、BMC侧和上位机侧出现乱码,甚至系统串口异常挂死情况。
参照图2,示出了本发明的一种基板的可编程逻辑器件系统实施例的示意图,所述基板的可编程逻辑器件系统一端与中央处理器、基板管理控制器连接,所述基板的可编程逻辑器件系统另一端与基板串口模块连接。所述基板的可编程逻辑器件系统具体可以包括:
精简引脚总线解析模块,与所述中央处理器连接,用于解析所述中央处理器下发的精简引脚总线命令;
寄存器空间分配模块,与所述精简引脚总线解析模块连接,用于对所述精简引脚总线命令的数据分配至预设寄存器地址空间;
串口枢纽模块,与所述中央处理器、所述基板管理控制器连接,用于与所述中央处理器、所述基板管理控制器交互;并提供所述预设寄存器地址空间;
串口解析模块,与所述串口枢纽模块连接,用于解析所述基板串口模块与所述中央处理器,或所述基板串口模块与所述基板管理控制器之间的串口数据;
串口切换模块,与所述串口解析模块连接,用于基于串口完整字节切换策略,将所述基板串口模块与所述中央处理器接通,或将所述基板串口模块与所述基板管理控制器接通。
在本发明实施例中,基板的可编程逻辑器件系统至少包括精简引脚总线解析模块、寄存器空间分配模块、串口枢纽模块、串口解析模块和串口切换模块。其中,精简引脚总线解析模块与中央处理器连接,精简引脚总线解析模块可以解析CPU下发的LPC读写命令,将读数据反馈给CPU,将写数据配置到Base Board CPLD寄存器;寄存器地址空间分配模块与中央处理器连接,可以对精简引脚总线命令的数据分配至预设寄存器地址空间。如串口枢纽模块占用256 Byte(字节)寄存器地址空间,寄存器空间分配模块可以完成对该256Byte空间分配。串口枢纽模块可以占用0xA0~0xAF(160~175 Byte)空间。与中央处理器、基板管理控制器连接,可以与中央处理器、基板管理控制器进行交互。串口解析模块与串口枢纽模块连接,可以对基板串口模块与基板管理控制器之间的串口数据进行解析。串口切换模块主要负责串口完整字节切换策略;串口切换模块与串口解析模块连接,可以基于串口完整字节切换策略,将基板串口模块与中央处理器接通,或将基板串口模块与基板管理控制器接通。
本发明实施例通过精简引脚总线解析模块,与所述中央处理器连接,用于解析所述中央处理器下发的精简引脚总线命令;寄存器空间分配模块,与所述精简引脚总线解析模块连接,用于对所述精简引脚总线命令的数据分配至预设寄存器地址空间;串口枢纽模块,与所述中央处理器、所述基板管理控制器连接,用于与所述中央处理器、所述基板管理控制器交互;并提供所述预设寄存器地址空间;串口解析模块,与所述串口枢纽模块连接,用于解析所述基板串口模块与所述中央处理器,或所述基板串口模块与所述基板管理控制器之间的串口数据;串口切换模块,与所述串口解析模块连接,用于基于串口完整字节切换策略,将所述基板串口模块与所述中央处理器接通,或将所述基板串口模块与所述基板管理控制器接通;将三组串口分别接到CPLD,由CPLD根据面板口切换指令完成串口完整字节切换,避免串口异常挂死可以解决不同管理平面串口切换导致的不完整字节,引起的乱码和系统挂死问题,中央处理器串口、基板管理控制器串口和面板串口采用统一的串口切换逻辑,逻辑代码移植性好,简化了硬件设计复杂度,逻辑修改对上层软件无感知,减小了开发复杂度和设计难度,降低开发风险,提高了可靠性,从而起到了节约成本的作用。
在本发明的一可选实施例中,所述基板的可编程逻辑器件系统还包括:
滤波模块,位于所述串口解析模块和所述基板串口模块之间,用于滤除所述基板串口模块的干扰信号。
滤波模块位于串口解析模块和基板串口模块之间,可以对以太网线误插入基板串口模块及干扰信号的过滤;以避免以太网接口线误插入面板串口引入的乱码问题。
具体地,所述滤波模块用于当所述基板串口模块的串口输入数据连续预设比特位为同一初始输入值,确定所述初始输入值为所述串口输入数据的输入值。
可以参照图3,在接收数据的过程中,不断地对基板串口模块的串口输入数据进行连续右移,并在移动过程中,判断是否数据连续预设比特位为同一初始输入值,如连续50位是否为1,或连续50位是否为0。当基板串口模块的串口输入数据连续预设比特位为同一初始输入值,确定初始输入值为串口输入数据的输入值,实现对以太网线误插面板串口或者面板串口干扰信号的过滤功能。如连续50位是1时,即确定1为串口输入数据的输入值;或连续50位为0时,即确定0为串口输入数据的输入值。
在本发明的一可选实施例中,所述基板的可编程逻辑器件系统还包括:
波特率检测模块,与所述基板串口模块连接,用于检测所述基板串口模块的波特率,所述波特率用于控制数据传输速率。
波特率检测模块可以与基板串口模块连接,对基板串口模块连接的波特率进行检测,通过波特率控制数据传输速率。在本发明一示例中,基板的可编程逻辑器件系统可以支持9600和115200波特率。
具体地,所述波特率检测模块用于统计第三预设时长内信号线上电平变化次数大小,根据所述次数大小确定所述波特率。
可以在第三预设时长内,统计信号线上电平变化次数,根据该次数确定波特率。如统计1s内信号线上高低电平变化次数,根据次数变化大小判定当前面板串口波特率。
在本发明的一可选实施例中,所述串口枢纽模块包括:
接口空闲检测子模块,用于检测所述基板串口模块的切换指令;
切换确定子模块,用于当所述切换指令为第一输入指令时,基于所述第一输入指令的第一切换数据生成第一目标特征码或第二目标特征码。
在本发明实施例中,串口枢纽模块可以包括接口空闲检测子模块和切换确定子模块。接口空闲检测子模块可以检测基板串口模块的切换指令,根据不用的切换指令进行分发。当切换指令为第一输入指令时,切换确定子模块可以切换确定子模块基于第一切换数据生成第一目标特征码或第二目标特征码。
在本发明的一可选实施例中,所述串口枢纽模块还包括:
输入子检测子模块,用于当所述切换指令为第二切换指令时,解析所述第二切换指令,确定第二切换数据;
所述切换确定子模块还用于基于所述第二切换数据生成所述第一目标特征码或所述第二目标特征码。
此外,串口枢纽模块还包括输入子检测子模块,当切换指令为第二切换指令时,解析第二切换指令,确定第二切换数据;切换确定子模块基于第二切换数据生成第一目标特征码或第二目标特征码。
可以参照图4,IDLE(接口空闲检测子模块)负责检测面板串口输入的切换指令,检测到有切换指令输入后,键盘输入CTRL U(第二切换指令)状态跳转到CHECK_ID(输入子检测子模块),检测到键盘输入CTRL B(第二切换指令)后状态跳转到CHECK_END(切换确定子模块);CHECK_ID主要实现键盘输入1或者2(第二切换数据),接收完成后状态跳转到CHECK_END;CHECK_END主要根据以上状态检测输出串口切换指令,送到串口切换模块,由串口切换模块完成具体切换。
在本发明的一可选实施例中,所述串口切换模块包括:
串口状态判断子模块,用于获取所述串口解析模块的状态特征码;依据所述状态特征码将所述基板串口模块与所述中央处理器接通,或将所述基板串口模块与所述基板管理控制器接通。
在本发明实施例中,可以通过串口状态判断子模块获取串口解析模块的状态特征码;依据状态特征码确定切换的对象,进而将基板串口模块与中央处理器接通,或将基板串口模块与基板管理控制器接通。
具体地,所述串口状态判断子模块用于获取所述串口解析模块的状态特征码;当所述状态特征码为所述第一目标特征码时,将所述基板串口模块与所述基板管理控制器接通;当所述状态特征码为所述第二目标特征码时,将所述基板串口模块与所述中央处理器接通。
在实际应用中,串口状态判断子模块可以基于串口解析模块的状态特征码,确定状态特征码是第一目标特征码还是第二目标特征码。其中,第一目标特征码为切换基板管理控制器时对应的特征码。第二目标特征码为切换中央处理器时对应的特征码。
当状态特征码为第一目标特征码时,将基板串口模块与基板管理控制器接通;当状态特征码为第二目标特征码时,将基板串口模块与中央处理器接通。
进一步地,所述串口切换模块还包括:
第一中央处理器发送状态检测子模块,用于基于在所述状态特征码为所述第一目标特征码时,检测所述中央处理器至所述基板串口模块发送方向是否空闲;当处于空闲时间,关闭所述中央处理器至所述基板串口模块的连接通道;
第一基板管理控制器发送状态检测子模块,用于检测所述基板管理控制器至所述基板串口模块发送方向是否空闲;当处于空闲时间且延迟预设第一等待时长后,将所述基板串口模块与所述基板管理控制器的通道接通;并在接通后,返回所述串口状态判断子模块。
进一步地,所述串口切换模块还包括:
第二中央处理器发送状态检测子模块,用于基于在所述状态特征码为所述第二目标特征码时,检测所述基板管理控制器至所述基板串口模块发送方向;当处于空闲时间,关闭所述基板管理控制器至所述基板串口模块的连接通道;
第二基板管理控制器发送状态检测子模块,用于检测所述中央处理器至所述基板串口模块发送方向是否空闲;当处于空闲时间且延迟预设第二等待时长后,将所述基板串口模块与所述中央处理器的通道接通;并在接通后,返回所述串口状态判断子模块。
可以参照图5,CHECK_IDLE模块(切换查询模块)主要判断需要执行将串口切换到BMC侧还是CPU侧,rx_data_reg1为0x31,rx_data_reg为0x32表示需要将串口切换到BMC侧(基板管理控制器),rx_data_reg1为0x32,rx_data_reg为0x31表示需要将串口切换到CPU侧;CPU2BMC_1状态(中央处理器发送状态)主要检测当前CPU到面板串口发送方向是否空闲,如果空闲则将当前连接关闭,否则保持当前连接;CPU2BMC_2状态(基板管理控制器发送状态)主要检测BMC发送方向是否空闲,且4毫秒以上延时时间到,满足以上条件则将BMC串口与面板串口连接,否则保持断开状态,完成状态切换后,状态跳转到CHECK_IDLE状态,等待下次切换;BMC2CPU_1状态(基板管理控制器发送状态)主要检测BMC到面板口发送方向是否空闲,如果空闲则将当前连接关闭,否则保持当前连接;BMC2CPU_2状态(中央处理器发送状态)主要检测CPU发送方向是否空闲,且4毫秒以上延时时间到,满足以上条件则将CPU串口与面板串口连接,否则保持断开状态,完成状态切换后,状态跳转到CHECK_IDLE状态,等待下次切换。
在本发明的一可选实施例中,所述串口解析模块包括:
起始位检查子模块,用于检测是否存在串口起始位;
启动子模块,用于当存在串口起始位时,接收所述串口数据的起始位数据;
载荷子模块,用于在接收所述起始位数据后,接收串口数据的串口字节数据;
停止子模块,用于在接收到所述串口字节数据到达预设比特位数时,接收所述串口数据的终止位数据。
在本发明实施例中,串口解析模块包括起始位检查子模块、启动子模块、载荷子模块和停止子模块。通过起始位检查子模块检测是否存在串口起始位,当存在起始位时,可以依次通过启动子模块接收串口数据的起始位数据;载荷子模块在接收起始位数据后,接收串口数据的串口字节数据;最后通过停止子模块接收到的串口字节数据到达预设比特位数时,接收串口数据的终止位数据,以此完成一个字节的接收。
可以参照图6,IDLE状态(查询状态)主要实现串口数据起始位检查,检测到串口起始位后状态机跳转到START状态(开始状态);START状态主要实现起始位数据接收,接收完毕后状态跳转到PAYLOAD状态(完成状态);PAYLOAD状态主要实现8字节数据接收,接收完毕后状态跳转到STOP(停止);STOP状态主要实现串口STOP位接收,接收完毕后状态跳转到IDLE状态,完成1字节数据接收。以此循环接收。
本发明实施例通过不缓存串口数据、仅检测总线空闲状态和切换延时来解决串口切换带来的乱码和系统挂死问题,实际验证可以很好解决以上问题。该方案不对现有硬件设计产生影响,对于上层软件无感知,降低了系统硬件方案设计复杂度,方便软件统一处理,降低软件处理复杂度,从而降低开发难度和风险,降低运营成本。
参照图7,示出了本发明的一种基板串口系统实施例的示意图,所述基板串口系统可以包括:中央处理器、基板管理控制器、基板串口模块和如上所述的基板的可编程逻辑器件系统,所述基板的可编程逻辑器件系统一端与所述中央处理器、所述基板管理控制器连接,所述基板的可编程逻辑器件系统另一端与所述基板串口模块连接。
在本发明实施例中,中央处理器、基板管理控制器、基板串口模块三组接口都接入到基板的可编程逻辑器件系统中,基板的可编程逻辑器件系统一端与中央处理器、基板管理控制器连接,基板的可编程逻辑器件系统另一端与基板串口模块连接,由CPLD根据面板口切换指令完成串口完整字节切换,以切换中央处理器与基板串口模块接口连通,或基板管理控制器与基板串口模块接口连通。
可选地,所述基板串口模块包括:
面板物理接口,与所述基板的可编程逻辑器件系统另一端连接。
在本发明实施例中,基板串口模块可以包括面板物理接口,具体地,该面板物理接口可以是面板RJ45。面板物理接口与基板的可编程逻辑器件系统另一端,即与中央处理器和基板管理控制器的不同侧连接至CPLD中。
可选地,所述基板串口模块还包括:
电平转换子模块,位于所述电平转换子模块和所述基板的可编程逻辑器件系统另一端之间,用于串口电平转换。
在本发明示例中,可以在电平转换子模块和基板的可编程逻辑器件系统连接的一端之间设置电平转换子模块,如图1所示,电平转换子模块可以是MAX232。电平转换子模块可以对串口进行电平转换。
可选地,所述中央处理器包括:
中央处理器第一通用异步收发器,与所述基板的可编程逻辑器件系统一端连接,用于基于所述基板串口系统与所述基板串口模块通信;
中央处理器第二通用异步收发器,与所述基板的可编程逻辑器件系统一端连接,用于生成中央处理器启动日志和操作日志。
在本发明实施例中,中央处理器中可以包括两个不同的通用异步收发器,即中央处理器第一通用异步收发器和中央处理器第二通用异步收发器。中央处理器第一通用异步收发器基于基板串口系统与基板串口模块通信,即负责与面板串口通信。中央处理器第二通用异步收发器用于记录中央处理器启动日志和系统操作日志。
可选地,所述基板管理控制器包括:
基板管理控制器第一通用异步收发器,与所述基板的可编程逻辑器件系统一端连接,用于基于所述基板串口系统与所述基板串口模块通信;
基板管理控制器第二通用异步收发器,与所述基板的可编程逻辑器件系统一端连接,用于生成基板管理控制器启动日志和操作日志。
在本发明实施例中,基板管理控制器中可以包括两个不同的通用异步收发器,即基板管理控制器第一通用异步收发器和基板管理控制器第二通用异步收发器。基板管理控制器第一通用异步收发器基于基板串口系统与基板串口模块通信,即负责与面板串口通信。基板管理控制器第二通用异步收发器用于记录基板管理控制器启动日志和系统操作日志。
进一步地,所述基板的可编程逻辑器件系统包括:
精简引脚总线解析模块,与所述中央处理器连接,用于解析所述中央处理器下发的精简引脚总线命令;
寄存器空间分配模块,与所述精简引脚总线解析模块连接,用于对所述精简引脚总线命令的数据分配至预设寄存器地址空间;
串口枢纽模块,与所述中央处理器、所述基板管理控制器连接,用于与所述中央处理器、所述基板管理控制器交互;并提供所述预设寄存器地址空间;
串口解析模块,与所述串口枢纽模块连接,用于解析所述基板串口模块与所述中央处理器,或所述基板串口模块与所述基板管理控制器之间的串口数据;
串口切换模块,与所述串口解析模块连接,用于基于串口完整字节切换策略,将所述基板串口模块与所述中央处理器接通,或将所述基板串口模块与所述基板管理控制器接通。
可选地,所述基板的可编程逻辑器件系统还包括:
滤波模块,位于所述串口解析模块和所述基板串口模块之间,用于滤除所述基板串口模块的干扰信号。
可选地,所述基板的可编程逻辑器件系统还包括:
波特率检测模块,与所述基板串口模块连接,用于检测所述基板串口模块的波特率,所述波特率用于控制数据传输速率。
可选地,所述串口枢纽模块包括:
接口空闲检测子模块,用于检测所述基板串口模块的切换指令;
切换确定子模块,用于当所述切换指令为第一输入指令时,基于所述第一输入指令的第一切换数据生成第一目标特征码或第二目标特征码。
可选地,所述串口枢纽模块还包括:
输入子检测子模块,用于当所述切换指令为第二切换指令时,解析所述第二切换指令,确定第二切换数据;
所述切换确定子模块还用于基于所述第二切换数据生成所述第一目标特征码或所述第二目标特征码。
可选地,所述串口切换模块包括:
串口状态判断子模块,用于获取所述串口解析模块的状态特征码;依据所述状态特征码将所述基板串口模块与所述中央处理器接通,或将所述基板串口模块与所述基板管理控制器接通。
可选地,所述串口状态判断子模块用于获取所述串口解析模块的状态特征码;当所述状态特征码为所述第一目标特征码时,将所述基板串口模块与所述基板管理控制器接通;当所述状态特征码为所述第二目标特征码时,将所述基板串口模块与所述中央处理器接通。
可选地,所述串口切换模块还包括:
第一中央处理器发送状态检测子模块,用于基于在所述状态特征码为所述第一目标特征码时,检测所述中央处理器至所述基板串口模块发送方向是否空闲;当处于空闲时间,关闭所述中央处理器至所述基板串口模块的连接通道;
第一基板管理控制器发送状态检测子模块,用于检测所述基板管理控制器至所述基板串口模块发送方向是否空闲;当处于空闲时间且延迟预设第一等待时长后,将所述基板串口模块与所述基板管理控制器的通道接通;并在接通后,返回所述串口状态判断子模块。
可选地,所述串口切换模块还包括:
第二中央处理器发送状态检测子模块,用于基于在所述状态特征码为所述第二目标特征码时,检测所述基板管理控制器至所述基板串口模块发送方向;当处于空闲时间,关闭所述基板管理控制器至所述基板串口模块的连接通道;
第二基板管理控制器发送状态检测子模块,用于检测所述中央处理器至所述基板串口模块发送方向是否空闲;当处于空闲时间且延迟预设第二等待时长后,将所述基板串口模块与所述中央处理器的通道接通;并在接通后,返回所述串口状态判断子模块。
可选地,所述串口解析模块包括:
起始位检查子模块,用于检测是否存在串口起始位;
启动子模块,用于当存在串口起始位时,接收所述串口数据的起始位数据;
载荷子模块,用于在接收所述起始位数据后,接收串口数据的串口字节数据;
停止子模块,用于在接收到所述串口字节数据到达预设比特位数时,接收所述串口数据的终止位数据。
可选地,所述滤波模块用于当所述基板串口模块的串口输入数据连续预设比特位为同一初始输入值,确定所述初始输入值为所述串口输入数据的输入值。
可选地,所述波特率检测模块用于统计第三预设时长内信号线上电平变化次数大小,根据所述次数大小确定所述波特率。
本发明实施中,还公开了一种交换机,该交换机具有如上述的基板串口系统。通过该基板串口系统进行管理平面和网络转发平面的信息交互控制。
其中,所述基板串口系统,包括:中央处理器、基板管理控制器、基板串口模块和如上所述的基板的可编程逻辑器件系统,所述基板的可编程逻辑器件系统一端与所述中央处理器、所述基板管理控制器连接,所述基板的可编程逻辑器件系统另一端与所述基板串口模块连接。
可选地,所述基板串口模块包括:
面板物理接口,与所述基板的可编程逻辑器件系统另一端连接。
可选地,所述基板串口模块还包括:
电平转换子模块,位于所述电平转换子模块和所述基板的可编程逻辑器件系统另一端之间,用于串口电平转换。
可选地,所述中央处理器包括:
中央处理器第一通用异步收发器,与所述基板的可编程逻辑器件系统一端连接,用于基于所述基板串口系统与所述基板串口模块通信;
中央处理器第二通用异步收发器,与所述基板的可编程逻辑器件系统一端连接,用于生成中央处理器启动日志和操作日志。
可选地,所述基板管理控制器包括:
基板管理控制器第一通用异步收发器,与所述基板的可编程逻辑器件系统一端连接,用于基于所述基板串口系统与所述基板串口模块通信;
基板管理控制器第二通用异步收发器,与所述基板的可编程逻辑器件系统一端连接,用于生成基板管理控制器启动日志和操作日志。
具体地,所述基板的可编程逻辑器件系统一端与中央处理器、基板管理控制器连接,所述基板的可编程逻辑器件系统另一端与基板串口模块连接,所述基板的可编程逻辑器件系统包括:
精简引脚总线解析模块,与所述中央处理器连接,用于解析所述中央处理器下发的精简引脚总线命令;
寄存器空间分配模块,与所述精简引脚总线解析模块连接,用于对所述精简引脚总线命令的数据分配至预设寄存器地址空间;
串口枢纽模块,与所述中央处理器、所述基板管理控制器连接,用于与所述中央处理器、所述基板管理控制器交互;并提供所述预设寄存器地址空间;
串口解析模块,与所述串口枢纽模块连接,用于解析所述基板串口模块与所述中央处理器,或所述基板串口模块与所述基板管理控制器之间的串口数据;
串口切换模块,与所述串口解析模块连接,用于基于串口完整字节切换策略,将所述基板串口模块与所述中央处理器接通,或将所述基板串口模块与所述基板管理控制器接通。
可选地,所述基板的可编程逻辑器件系统还包括:
滤波模块,位于所述串口解析模块和所述基板串口模块之间,用于滤除所述基板串口模块的干扰信号。
可选地,所述基板的可编程逻辑器件系统还包括:
波特率检测模块,与所述基板串口模块连接,用于检测所述基板串口模块的波特率,所述波特率用于控制数据传输速率。
可选地,所述串口枢纽模块包括:
接口空闲检测子模块,用于检测所述基板串口模块的切换指令;
切换确定子模块,用于当所述切换指令为第一输入指令时,基于所述第一输入指令的第一切换数据生成第一目标特征码或第二目标特征码。
可选地,所述串口枢纽模块还包括:
输入子检测子模块,用于当所述切换指令为第二切换指令时,解析所述第二切换指令,确定第二切换数据;
所述切换确定子模块还用于基于所述第二切换数据生成所述第一目标特征码或所述第二目标特征码。
可选地,所述串口切换模块包括:
串口状态判断子模块,用于获取所述串口解析模块的状态特征码;依据所述状态特征码将所述基板串口模块与所述中央处理器接通,或将所述基板串口模块与所述基板管理控制器接通。
可选地,所述串口状态判断子模块用于获取所述串口解析模块的状态特征码;当所述状态特征码为所述第一目标特征码时,将所述基板串口模块与所述基板管理控制器接通;当所述状态特征码为所述第二目标特征码时,将所述基板串口模块与所述中央处理器接通。
可选地,所述串口切换模块还包括:
第一中央处理器发送状态检测子模块,用于基于在所述状态特征码为所述第一目标特征码时,检测所述中央处理器至所述基板串口模块发送方向是否空闲;当处于空闲时间,关闭所述中央处理器至所述基板串口模块的连接通道;
第一基板管理控制器发送状态检测子模块,用于检测所述基板管理控制器至所述基板串口模块发送方向是否空闲;当处于空闲时间且延迟预设第一等待时长后,将所述基板串口模块与所述基板管理控制器的通道接通;并在接通后,返回所述串口状态判断子模块。
可选地,所述串口切换模块还包括:
第二中央处理器发送状态检测子模块,用于基于在所述状态特征码为所述第二目标特征码时,检测所述基板管理控制器至所述基板串口模块发送方向;当处于空闲时间,关闭所述基板管理控制器至所述基板串口模块的连接通道;
第二基板管理控制器发送状态检测子模块,用于检测所述中央处理器至所述基板串口模块发送方向是否空闲;当处于空闲时间且延迟预设第二等待时长后,将所述基板串口模块与所述中央处理器的通道接通;并在接通后,返回所述串口状态判断子模块。
可选地,所述串口解析模块包括:
起始位检查子模块,用于检测是否存在串口起始位;
启动子模块,用于当存在串口起始位时,接收所述串口数据的起始位数据;
载荷子模块,用于在接收所述起始位数据后,接收串口数据的串口字节数据;
停止子模块,用于在接收到所述串口字节数据到达预设比特位数时,接收所述串口数据的终止位数据。
可选地,所述滤波模块用于当所述基板串口模块的串口输入数据连续预设比特位为同一初始输入值,确定所述初始输入值为所述串口输入数据的输入值。
可选地,所述波特率检测模块用于统计第三预设时长内信号线上电平变化次数大小,根据所述次数大小确定所述波特率。
参照图8,本发明实施例还提供了一种电子设备,包括:
处理器801和存储介质802,所述存储介质802存储有所述处理器801可执行的计算机程序,当电子设备运行时,所述处理器801执行所述计算机程序,以执行如本发明实施例任一项所述的基板的可编程逻辑器件系统。
其中,所述基板的可编程逻辑器件系统一端与中央处理器、基板管理控制器连接,所述基板的可编程逻辑器件系统另一端与基板串口模块连接,所述基板的可编程逻辑器件系统包括:
精简引脚总线解析模块,与所述中央处理器连接,用于解析所述中央处理器下发的精简引脚总线命令;
寄存器空间分配模块,与所述精简引脚总线解析模块连接,用于对所述精简引脚总线命令的数据分配至预设寄存器地址空间;
串口枢纽模块,与所述中央处理器、所述基板管理控制器连接,用于与所述中央处理器、所述基板管理控制器交互;并提供所述预设寄存器地址空间;
串口解析模块,与所述串口枢纽模块连接,用于解析所述基板串口模块与所述中央处理器,或所述基板串口模块与所述基板管理控制器之间的串口数据;
串口切换模块,与所述串口解析模块连接,用于基于串口完整字节切换策略,将所述基板串口模块与所述中央处理器接通,或将所述基板串口模块与所述基板管理控制器接通。
可选地,所述基板的可编程逻辑器件系统还包括:
滤波模块,位于所述串口解析模块和所述基板串口模块之间,用于滤除所述基板串口模块的干扰信号。
可选地,所述基板的可编程逻辑器件系统还包括:
波特率检测模块,与所述基板串口模块连接,用于检测所述基板串口模块的波特率,所述波特率用于控制数据传输速率。
可选地,所述串口枢纽模块包括:
接口空闲检测子模块,用于检测所述基板串口模块的切换指令;
切换确定子模块,用于当所述切换指令为第一输入指令时,基于所述第一输入指令的第一切换数据生成第一目标特征码或第二目标特征码。
可选地,所述串口枢纽模块还包括:
输入子检测子模块,用于当所述切换指令为第二切换指令时,解析所述第二切换指令,确定第二切换数据;
所述切换确定子模块还用于基于所述第二切换数据生成所述第一目标特征码或所述第二目标特征码。
可选地,所述串口切换模块包括:
串口状态判断子模块,用于获取所述串口解析模块的状态特征码;依据所述状态特征码将所述基板串口模块与所述中央处理器接通,或将所述基板串口模块与所述基板管理控制器接通。
可选地,所述串口状态判断子模块用于获取所述串口解析模块的状态特征码;当所述状态特征码为所述第一目标特征码时,将所述基板串口模块与所述基板管理控制器接通;当所述状态特征码为所述第二目标特征码时,将所述基板串口模块与所述中央处理器接通。
可选地,所述串口切换模块还包括:
第一中央处理器发送状态检测子模块,用于基于在所述状态特征码为所述第一目标特征码时,检测所述中央处理器至所述基板串口模块发送方向是否空闲;当处于空闲时间,关闭所述中央处理器至所述基板串口模块的连接通道;
第一基板管理控制器发送状态检测子模块,用于检测所述基板管理控制器至所述基板串口模块发送方向是否空闲;当处于空闲时间且延迟预设第一等待时长后,将所述基板串口模块与所述基板管理控制器的通道接通;并在接通后,返回所述串口状态判断子模块。
可选地,所述串口切换模块还包括:
第二中央处理器发送状态检测子模块,用于基于在所述状态特征码为所述第二目标特征码时,检测所述基板管理控制器至所述基板串口模块发送方向;当处于空闲时间,关闭所述基板管理控制器至所述基板串口模块的连接通道;
第二基板管理控制器发送状态检测子模块,用于检测所述中央处理器至所述基板串口模块发送方向是否空闲;当处于空闲时间且延迟预设第二等待时长后,将所述基板串口模块与所述中央处理器的通道接通;并在接通后,返回所述串口状态判断子模块。
可选地,所述串口解析模块包括:
起始位检查子模块,用于检测是否存在串口起始位;
启动子模块,用于当存在串口起始位时,接收所述串口数据的起始位数据;
载荷子模块,用于在接收所述起始位数据后,接收串口数据的串口字节数据;
停止子模块,用于在接收到所述串口字节数据到达预设比特位数时,接收所述串口数据的终止位数据。
可选地,所述滤波模块用于当所述基板串口模块的串口输入数据连续预设比特位为同一初始输入值,确定所述初始输入值为所述串口输入数据的输入值。
可选地,所述波特率检测模块用于统计第三预设时长内信号线上电平变化次数大小,根据所述次数大小确定所述波特率。
其中,存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
参照图9,本发明实施例还提供了一种计算机可读存储介质901,所述存储介质901上存储有计算机程序,所述计算机程序被处理器运行时执行如本发明实施例任一项所述的基板的可编程逻辑器件系统。
所述基板的可编程逻辑器件系统一端与中央处理器、基板管理控制器连接,所述基板的可编程逻辑器件系统另一端与基板串口模块连接,所述基板的可编程逻辑器件系统包括:
精简引脚总线解析模块,与所述中央处理器连接,用于解析所述中央处理器下发的精简引脚总线命令;
寄存器空间分配模块,与所述精简引脚总线解析模块连接,用于对所述精简引脚总线命令的数据分配至预设寄存器地址空间;
串口枢纽模块,与所述中央处理器、所述基板管理控制器连接,用于与所述中央处理器、所述基板管理控制器交互;并提供所述预设寄存器地址空间;
串口解析模块,与所述串口枢纽模块连接,用于解析所述基板串口模块与所述中央处理器,或所述基板串口模块与所述基板管理控制器之间的串口数据;
串口切换模块,与所述串口解析模块连接,用于基于串口完整字节切换策略,将所述基板串口模块与所述中央处理器接通,或将所述基板串口模块与所述基板管理控制器接通。
可选地,所述基板的可编程逻辑器件系统还包括:
滤波模块,位于所述串口解析模块和所述基板串口模块之间,用于滤除所述基板串口模块的干扰信号。
可选地,所述基板的可编程逻辑器件系统还包括:
波特率检测模块,与所述基板串口模块连接,用于检测所述基板串口模块的波特率,所述波特率用于控制数据传输速率。
可选地,所述串口枢纽模块包括:
接口空闲检测子模块,用于检测所述基板串口模块的切换指令;
切换确定子模块,用于当所述切换指令为第一输入指令时,基于所述第一输入指令的第一切换数据生成第一目标特征码或第二目标特征码。
可选地,所述串口枢纽模块还包括:
输入子检测子模块,用于当所述切换指令为第二切换指令时,解析所述第二切换指令,确定第二切换数据;
所述切换确定子模块还用于基于所述第二切换数据生成所述第一目标特征码或所述第二目标特征码。
可选地,所述串口切换模块包括:
串口状态判断子模块,用于获取所述串口解析模块的状态特征码;依据所述状态特征码将所述基板串口模块与所述中央处理器接通,或将所述基板串口模块与所述基板管理控制器接通。
可选地,所述串口状态判断子模块用于获取所述串口解析模块的状态特征码;当所述状态特征码为所述第一目标特征码时,将所述基板串口模块与所述基板管理控制器接通;当所述状态特征码为所述第二目标特征码时,将所述基板串口模块与所述中央处理器接通。
可选地,所述串口切换模块还包括:
第一中央处理器发送状态检测子模块,用于基于在所述状态特征码为所述第一目标特征码时,检测所述中央处理器至所述基板串口模块发送方向是否空闲;当处于空闲时间,关闭所述中央处理器至所述基板串口模块的连接通道;
第一基板管理控制器发送状态检测子模块,用于检测所述基板管理控制器至所述基板串口模块发送方向是否空闲;当处于空闲时间且延迟预设第一等待时长后,将所述基板串口模块与所述基板管理控制器的通道接通;并在接通后,返回所述串口状态判断子模块。
可选地,所述串口切换模块还包括:
第二中央处理器发送状态检测子模块,用于基于在所述状态特征码为所述第二目标特征码时,检测所述基板管理控制器至所述基板串口模块发送方向;当处于空闲时间,关闭所述基板管理控制器至所述基板串口模块的连接通道;
第二基板管理控制器发送状态检测子模块,用于检测所述中央处理器至所述基板串口模块发送方向是否空闲;当处于空闲时间且延迟预设第二等待时长后,将所述基板串口模块与所述中央处理器的通道接通;并在接通后,返回所述串口状态判断子模块。
可选地,所述串口解析模块包括:
起始位检查子模块,用于检测是否存在串口起始位;
启动子模块,用于当存在串口起始位时,接收所述串口数据的起始位数据;
载荷子模块,用于在接收所述起始位数据后,接收串口数据的串口字节数据;
停止子模块,用于在接收到所述串口字节数据到达预设比特位数时,接收所述串口数据的终止位数据。
可选地,所述滤波模块用于当所述基板串口模块的串口输入数据连续预设比特位为同一初始输入值,确定所述初始输入值为所述串口输入数据的输入值。
可选地,所述波特率检测模块用于统计第三预设时长内信号线上电平变化次数大小,根据所述次数大小确定所述波特率。
需要说明的是,对于上述实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种基板的可编程逻辑器件系统、一种基板串口系统、一种交换机、一种电子设备和一种存储介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (20)
1.一种基板的可编程逻辑器件系统,其特征在于,所述基板的可编程逻辑器件系统一端与中央处理器、基板管理控制器连接,所述基板的可编程逻辑器件系统另一端与基板串口模块连接,所述基板的可编程逻辑器件系统包括:
精简引脚总线解析模块,与所述中央处理器连接,用于解析所述中央处理器下发的精简引脚总线命令;
寄存器空间分配模块,与所述精简引脚总线解析模块连接,用于对所述精简引脚总线命令的数据分配至预设寄存器地址空间;
串口枢纽模块,与所述中央处理器、所述基板管理控制器连接,用于与所述中央处理器、所述基板管理控制器交互;并提供所述预设寄存器地址空间;
串口解析模块,与所述串口枢纽模块连接,用于解析所述基板串口模块与所述中央处理器,或所述基板串口模块与所述基板管理控制器之间的串口数据;
串口切换模块,与所述串口解析模块连接,用于基于串口完整字节切换策略进行串口完整字节切换,将所述基板串口模块与所述中央处理器接通,或将所述基板串口模块与所述基板管理控制器接通。
2.根据权利要求1所述的基板的可编程逻辑器件系统,其特征在于,所述基板的可编程逻辑器件系统还包括:
滤波模块,位于所述串口解析模块和所述基板串口模块之间,用于滤除所述基板串口模块的干扰信号。
3.根据权利要求1至2任一项所述的基板的可编程逻辑器件系统,其特征在于,所述基板的可编程逻辑器件系统还包括:
波特率检测模块,与所述基板串口模块连接,用于检测所述基板串口模块的波特率,所述波特率用于控制数据传输速率。
4.根据权利要求1所述的基板的可编程逻辑器件系统,其特征在于,所述串口枢纽模块包括:
接口空闲检测子模块,用于检测所述基板串口模块的切换指令;
切换确定子模块,用于当所述切换指令为第一输入指令时,基于所述第一输入指令的第一切换数据生成第一目标特征码或第二目标特征码。
5.根据权利要求4所述的基板的可编程逻辑器件系统,其特征在于,所述串口枢纽模块还包括:
输入子检测子模块,用于当所述切换指令为第二切换指令时,解析所述第二切换指令,确定第二切换数据;
所述切换确定子模块还用于基于所述第二切换数据生成所述第一目标特征码或所述第二目标特征码。
6.根据权利要求5所述的基板的可编程逻辑器件系统,其特征在于,所述串口切换模块包括:
串口状态判断子模块,用于获取所述串口解析模块的状态特征码;依据所述状态特征码将所述基板串口模块与所述中央处理器接通,或将所述基板串口模块与所述基板管理控制器接通。
7.根据权利要求6所述的基板的可编程逻辑器件系统,其特征在于,所述串口状态判断子模块用于获取所述串口解析模块的状态特征码;当所述状态特征码为所述第一目标特征码时,将所述基板串口模块与所述基板管理控制器接通;当所述状态特征码为所述第二目标特征码时,将所述基板串口模块与所述中央处理器接通。
8.根据权利要求7所述的基板的可编程逻辑器件系统,其特征在于,所述串口切换模块还包括:
第一中央处理器发送状态检测子模块,用于基于在所述状态特征码为所述第一目标特征码时,检测所述中央处理器至所述基板串口模块发送方向是否空闲;当处于空闲时间,关闭所述中央处理器至所述基板串口模块的连接通道;
第一基板管理控制器发送状态检测子模块,用于检测所述基板管理控制器至所述基板串口模块发送方向是否空闲;当处于空闲时间且延迟预设第一等待时长后,将所述基板串口模块与所述基板管理控制器的通道接通;并在接通后,返回所述串口状态判断子模块。
9.根据权利要求7所述的基板的可编程逻辑器件系统,其特征在于,所述串口切换模块还包括:
第二中央处理器发送状态检测子模块,用于基于在所述状态特征码为所述第二目标特征码时,检测所述基板管理控制器至所述基板串口模块发送方向;当处于空闲时间,关闭所述基板管理控制器至所述基板串口模块的连接通道;
第二基板管理控制器发送状态检测子模块,用于检测所述中央处理器至所述基板串口模块发送方向是否空闲;当处于空闲时间且延迟预设第二等待时长后,将所述基板串口模块与所述中央处理器的通道接通;并在接通后,返回所述串口状态判断子模块。
10.根据权利要求1所述的基板的可编程逻辑器件系统,其特征在于,所述串口解析模块包括:
起始位检查子模块,用于检测是否存在串口起始位;
启动子模块,用于当存在串口起始位时,接收所述串口数据的起始位数据;
载荷子模块,用于在接收所述起始位数据后,接收串口数据的串口字节数据;
停止子模块,用于在接收到所述串口字节数据到达预设比特位数时,接收所述串口数据的终止位数据。
11.根据权利要求2所述的基板的可编程逻辑器件系统,其特征在于,所述滤波模块用于当所述基板串口模块的串口输入数据连续预设比特位为同一初始输入值,确定所述初始输入值为所述串口输入数据的输入值。
12.根据权利要求3所述的基板的可编程逻辑器件系统,其特征在于,所述波特率检测模块用于统计第三预设时长内信号线上电平变化次数大小,根据所述次数大小确定所述波特率。
13.一种基板串口系统,其特征在于,包括:中央处理器、基板管理控制器、基板串口模块和如权利要求1至12中任一项所述的基板的可编程逻辑器件系统,所述基板的可编程逻辑器件系统一端与所述中央处理器、所述基板管理控制器连接,所述基板的可编程逻辑器件系统另一端与所述基板串口模块连接。
14.根据权利要求13所述的基板串口系统,其特征在于,所述基板串口模块包括:
面板物理接口,与所述基板的可编程逻辑器件系统另一端连接。
15.根据权利要求14所述的基板串口系统,其特征在于,所述基板串口模块还包括:
电平转换子模块,位于所述电平转换子模块和所述基板的可编程逻辑器件系统另一端之间,用于串口电平转换。
16.根据权利要求13所述的基板串口系统,其特征在于,所述中央处理器包括:
中央处理器第一通用异步收发器,与所述基板的可编程逻辑器件系统一端连接,用于基于所述基板串口系统与所述基板串口模块通信;
中央处理器第二通用异步收发器,与所述基板的可编程逻辑器件系统一端连接,用于生成中央处理器启动日志和操作日志。
17.根据权利要求13所述的基板串口系统,其特征在于,所述基板管理控制器包括:
基板管理控制器第一通用异步收发器,与所述基板的可编程逻辑器件系统一端连接,用于基于所述基板串口系统与所述基板串口模块通信;
基板管理控制器第二通用异步收发器,与所述基板的可编程逻辑器件系统一端连接,用于生成基板管理控制器启动日志和操作日志。
18.一种交换机,其特征在于,包括如权利要求13至17中任一项所述的基板串口系统。
19.一种电子设备,其特征在于,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至12中任一项所述的基板的可编程逻辑器件系统。
20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至12中任一项所述的基板的可编程逻辑器件系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410064086.8A CN117591449B (zh) | 2024-01-17 | 2024-01-17 | 一种基板的可编程逻辑器件系统及其应用设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410064086.8A CN117591449B (zh) | 2024-01-17 | 2024-01-17 | 一种基板的可编程逻辑器件系统及其应用设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117591449A CN117591449A (zh) | 2024-02-23 |
CN117591449B true CN117591449B (zh) | 2024-04-23 |
Family
ID=89922281
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410064086.8A Active CN117591449B (zh) | 2024-01-17 | 2024-01-17 | 一种基板的可编程逻辑器件系统及其应用设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117591449B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105721357A (zh) * | 2016-01-13 | 2016-06-29 | 华为技术有限公司 | 交换设备、外围部件互连高速系统及其初始化方法 |
CN113377701A (zh) * | 2021-06-22 | 2021-09-10 | 东莞华贝电子科技有限公司 | 基于复杂可编程逻辑器件cpld的串口控制系统及其通信方法 |
CN117251401A (zh) * | 2023-10-08 | 2023-12-19 | 西安易朴通讯技术有限公司 | 串口信息输出控制系统、方法及装置 |
CN117278890A (zh) * | 2023-11-15 | 2023-12-22 | 苏州元脑智能科技有限公司 | 光模块访问方法、装置、系统、电子设备及可读存储介质 |
-
2024
- 2024-01-17 CN CN202410064086.8A patent/CN117591449B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105721357A (zh) * | 2016-01-13 | 2016-06-29 | 华为技术有限公司 | 交换设备、外围部件互连高速系统及其初始化方法 |
CN113377701A (zh) * | 2021-06-22 | 2021-09-10 | 东莞华贝电子科技有限公司 | 基于复杂可编程逻辑器件cpld的串口控制系统及其通信方法 |
CN117251401A (zh) * | 2023-10-08 | 2023-12-19 | 西安易朴通讯技术有限公司 | 串口信息输出控制系统、方法及装置 |
CN117278890A (zh) * | 2023-11-15 | 2023-12-22 | 苏州元脑智能科技有限公司 | 光模块访问方法、装置、系统、电子设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117591449A (zh) | 2024-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104184617A (zh) | 互联设备预加重配置方法、装置、系统及网络设备 | |
US11347669B2 (en) | Equalization time configuration method, chip, and communications system | |
US20070183337A1 (en) | FC-AL cabling management system | |
CN108897647A (zh) | 测试系统、测试方法及装置 | |
US20230376442A1 (en) | Enabling a Multi-Chip Daisy Chain Topology using Peripheral Component Interconnect Express (PCIe) | |
CN114048164A (zh) | 芯片互联方法、系统、设备及可读存储介质 | |
CN109871344B (zh) | 通讯系统、接口电路及其传输信号的方法 | |
CN109815073B (zh) | 一种基于pxi平台的高速串口srio的测试方法 | |
CN117591449B (zh) | 一种基板的可编程逻辑器件系统及其应用设备 | |
CN108896841A (zh) | 测试系统、测试方法及装置 | |
CN108712308B (zh) | 虚拟网络中检测网络设备的方法和装置 | |
CN109547274A (zh) | 一种维护板切换方法、装置及第一网络设备 | |
CN112995955A (zh) | 智能车载网联终端、调试方法、联网兼容方法及装置 | |
CN1767544B (zh) | 信息处理系统的下位装置、下位装置用动作控制程序及动作控制方法 | |
US20060104206A1 (en) | Apparatus, system, and method for detecting a fibre channel miscabling event | |
CN113971148A (zh) | 基于linux实时操作系统的PCIE实时网卡数据传输方法及装置 | |
CN105577427A (zh) | 家用电器与移动终端之间通信连接的检测方法、装置 | |
CN112787886A (zh) | 一种实时系统网络设备自协商的处理方法、设备驱动、可读存储介质和计算机 | |
CN111930582A (zh) | 系统管理总线检测平台、处理器及系统管理总线检测方法 | |
CN216310776U (zh) | 接口板卡、用户设备及cpu的测试系统 | |
CN109686395B (zh) | 一种ocp扣卡的测试方法和系统 | |
CN114500688B (zh) | 设备协议识别的方法、装置、终端及存储介质 | |
CN114528237B (zh) | 接口转换器、电路板及电子设备 | |
CN113949628B (zh) | 设备自动添加方法和系统 | |
CN114443400B (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 |