一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

服务器CPLD自动编译装置及方法与流程

2022-08-10 15:52:56 来源:中国专利 TAG:

服务器cpld自动编译装置及方法
技术领域
1.本发明涉及服务器控制领域,尤其涉及服务器cpld自动编译装置及方法。


背景技术:

2.随着计算机技术的发展,cpld(complex programmable logic device,复杂可编程逻辑器件)可由用户根据需要生成特定的电路结构来完成一定的功能,越来越多的服务器运用到cpld。服务器的主板设计中,cpld在整个主板的逻辑设计中起着重要的作用,比如,完成开关机的时序控制,实现风扇转速的控制,实现报错等信号的控制。但是,随着功能的丰富,cpld程序编译工作难度增大,传统人工编译cpld程序不但容易出现各种bug问题,而且编译程序耗时费力,严重导致整个服务器主板的后续设计周期长及服务器可靠性、稳定性出现不足等问题。因此,如何实现服务器cpld自动编译是本领域技术人员急需解决的问题。
3.针对现有技术中的上述缺陷,提供一种服务器cpld自动编译装置及方法,是非常有必要的。


技术实现要素:

4.本发明提供了服务器cpld自动编译装置及方法,用于解决人工编译的方法存在工作量大、难度高、编译时间长、容易出错以及编译程序可靠性差的技术问题。
5.为解决上述技术问题,本发明提出的技术方案为:一种服务器cpld自动编译装置,包括:bmc管理模块、烧录模块、cpld单元模块、pcie主控模块、飞腾处理器以及bios模块;所述bmc管理模块分别与所述烧录模块、cpld单元模块连接,所述cpld单元模块分别与所述烧录模块、pcie主控模块、飞腾处理器以及bios模块连接,所述pcie主控模块与所述飞腾处理器连接。
6.优选的,所述bmc管理模块通过接口总线与所述cpld单元连接,所述cpld单元还通过接口总线与所述飞腾处理器连接;所述bmc管理模块通过jatg端口与所述烧录模块连接,所述烧录模块通过jatg端口与cpld单元模块连接,所述cpld单元通过spi总线与所述bios模块连接,所述pcie主控模块通过pcie总线与所述飞腾处理器连接;所述接口总线包括uart总线、i2c总线、lpc总线、spi总线;所述bmc管理模块嵌入cpld程序自动编译系统,包含上电时序规范表获取、cpld程序优化模块指令调度、电平转换信号质量监控、gpio信号状态监控四大功能,其中,嵌入的cpld程序自动编译系统集成上电时序规范表读取、收集io管脚信号、信号筛选分类、自动编译cpld程序、cpld程序故障语句修正、cpld程序语句优化、cpld程序语句优化功能。
7.优选的,所述bmc管理模块用于收集上电时序规范表,并调用嵌入的cpld自动编译系统,以供cpld自动编译系统读取上电时序规范表后,反馈程序编译指令给bmc管理模块;所述bmc管理模块还用于根据所述程序编译指令通过接口总线向cpld单元模块植入信号收集脚本,收集cpld单元模块各个io管脚信号,确定cpld单元模块各个io管脚的通信对象、信
号类别以及信号时序;并将收集的信号信息回传至cpld自动编译系统;cpld自动编译系统用于根据时序规范表对收集的各个io管脚的信号信息进行分类筛选,调用编译脚本编译cpld程序,再将编译完成的cpld程序传送至bmc管理模块,bmc管理模块通过烧录模块烧录程序至cpld单元模块的cpld芯片内部寄存器中。
8.优选的,所述bmc管理模块还用于在烧录完成后,通过gpio端口启动运行cpld单元模块,通过uart总线收集分析飞腾处理器加载bios固件、pcie主控设备的串口信息,检验上电时序故障信息,并记录各时序信号加载时间,若存在时序故障信息,bmc管理模块将收集的上电时序故障信息和cpld程序回传至cpld自动编译系统;cpld自动编译系统根据故障信息对cpld程序进行语句修正,并返回bmc管理模块通过jatg端口重新烧录程序至cpld芯片内部寄存器。
9.优选的,若不存在时序故障信息,所述bmc管理模块还用于将记录的各时序信号加载时间与上电时序规范表时间对比,若存在时序信号加载时间大于上电时序规范表时间,bmc管理模块将收集大于上电时序规范表时间的时序信号和cpld程序回传至cpld自动编译系统,cpld自动编译系统根据大于上电时序规范表时间的时序信号允许的最短时间对cpld程序进行语句优化缩短,并返回bmc管理模块通过jatg端口烧录程序至cpld芯片内部寄存器。
10.优选的,还包括tcm加密模块,所述tcm加密模块与所述cpld单元连接;若不存在时序信号加载时间大于上电时序规范表时间,bmc管理模块还用于通过接口总线将cpld程序输出至tcm加密模块加密保存,并通过接口总线对cpld单元模块的电平转换信号质量和gpio信号应用状态进行监控,cpld单元模块则通过spi总线对cpld程序加密访问运行。
11.一种服务器cpld自动编译方法,包括以下步骤:bmc管理模块收集上电时序规范表,并调用嵌入的cpld自动编译系统;cpld自动编译系统读取上电时序规范表后,反馈程序编译指令给bmc管理模块;bmc管理模块根据所述程序编译指令通过接口总线向cpld单元模块植入信号收集脚本,收集cpld单元模块各个io管脚信号,确定cpld单元模块各个io管脚的通信对象、信号类别以及信号时序,将收集的信号信息回传至cpld自动编译系统;cpld自动编译系统根据时序规范表对收集的各个io管脚的信号信息进行分类筛选,调用编译脚本编译cpld程序,再将编译完成的cpld程序传送至bmc管理模块,bmc管理模块通过烧录模块烧录程序至cpld单元模块的cpld芯片内部寄存器中。
12.优选的,在完成烧录后,还包括以下步骤:bmc管理模块通过gpio端口启动运行cpld单元模块,通过uart总线收集分析飞腾处理器加载bios固件、pcie主控设备的串口信息,检验上电时序故障信息,并记录各时序信号加载时间,若存在时序故障信息,bmc管理模块将收集的上电时序故障信息和cpld程序回传至cpld自动编译系统;cpld自动编译系统根据故障信息对cpld程序进行语句修正,并返回bmc管理模块通过jatg端口重新烧录程序至cpld芯片内部寄存器。
13.优选的,若不存在时序故障信息,bmc管理模块将记录的各时序信号加载时间与上电时序规范表时间对比,若存在时序信号加载时间大于上电时序规范表时间,bmc管理模块将收集大于上电时序规范表时间的时序信号和cpld程序回传至cpld自动编译系统,cpld自动编译系统根据大于上电时序规范表时间的时序信号允许的最短时间对cpld程序进行语
句优化缩短,并返回bmc管理模块通过jatg端口烧录程序至cpld芯片内部寄存器。
14.优选的,若不存在时序信号加载时间大于上电时序规范表时间,bmc管理模块通过接口总线将cpld程序输出至tcm加密模块加密保存,并通过接口总线对cpld单元模块的电平转换信号质量和gpio信号应用状态进行监控,cpld单元模块则通过spi总线对cpld程序加密访问运行。
15.本发明具有以下有益效果:1、本发明中的服务器cpld自动编译装置及方法,通过bmc管理模块收集上电时序规范表,并调用嵌入的cpld自动编译系统;cpld自动编译系统读取上电时序规范表后,反馈程序编译指令给bmc管理模块;bmc管理模块通过接口总线向cpld单元模块植入信号收集脚本,收集cpld单元模块各个io管脚信号,确定cpld单元模块各个io管脚的通信对象、信号类别以及信号时序,将收集的信号信息回传至cpld自动编译系统;cpld自动编译系统根据时序规范表对收集的各个io管脚的信号信息进行分类筛选,调用编译脚本编译cpld程序,再将编译完成的cpld程序传送至bmc管理模块,bmc管理模块通过烧录模块烧录程序至cpld单元模块的cpld芯片内部寄存器中,从而实现cpld源码的编译自动化、简化人工操作,更节省维护时间、成本;解决了目前国产服务器整机研发上电调试需要人工进行cpld源码编译,以及人工编译工作量大、难度高、编译时间长、容易出错以及编译程序可靠性差等弊端问题。
16.2、在优选方案中,本发明通过在编译后进行验证,若验证发现存在时序故障时,对cpld程序进行修正,能提高编译cpld程序的可靠性。
17.3、在优选方案中,本发明通过在编译后,将记录的各时序信号加载时间与上电时序规范表时间对比,若存在时序信号加载时间大于上电时序规范表时间,bmc管理模块将收集上电加载时间长的时序信号和cpld程序回传至cpld自动编译系统,cpld自动编译系统根据该信号允许的最短时间对cpld程序进行语句优化缩短,能提高编译cpld程序的运行效率。
18.4、在优选方案中,本发明还通过tcm加密模块对cpld程序进行加密,能提高编译cpld程序的安全性。
19.除了上面所描述的目的、特征和优点之外,本发明还有其它的目的、特征和优点。下面将参照附图,对本发明作进一步详细的说明。
附图说明
20.构成本技术的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:图1 为本发明实施例提供的一种服务器cpld自动编译系统的硬件结构示意图;图2 为本发明实施例提供的一种服务器cpld自动编译系统的流程示意图;图3为本发明实施例提供的一种服务器cpld自动编译系统的软件架构示意图;图4 为本发明实施例提供的一种服务器cpld自动编译系统的另一硬件结构示意图。
具体实施方式
21.以下结合附图对本发明的实施例进行详细说明,但是本发明可以由权利要求限定
和覆盖的多种不同方式实施。
22.实施例一:本实施中公开了一种服务器cpld自动编译装置,包括:bmc管理模块、烧录模块、cpld单元模块、pcie主控模块、飞腾处理器以及bios模块;所述bmc管理模块分别与所述烧录模块、cpld单元模块连接,所述cpld单元模块分别与所述烧录模块、pcie主控模块、飞腾处理器以及bios模块连接,所述pcie主控模块与所述飞腾处理器连接。
23.此外,在本实施例中,如图2所示,还公开了一种服务器cpld自动编译方法,包括以下步骤:bmc管理模块用于收集上电时序规范表,并调用嵌入的cpld自动编译系统;cpld自动编译系统读取上电时序规范表后,反馈程序编译指令给bmc管理模块;bmc管理模块根据所述程序编译指令通过接口总线向cpld单元模块植入信号收集脚本,收集cpld单元模块各个io管脚信号,确定cpld单元模块各个io管脚的通信对象、信号类别以及信号时序,将收集的信号信息回传至cpld自动编译系统;cpld自动编译系统根据时序规范表对收集的各个io管脚的信号信息进行分类筛选,调用编译脚本编译cpld程序,再将编译完成的cpld程序传送至bmc管理模块,bmc管理模块通过烧录模块烧录程序至cpld单元模块的cpld芯片内部寄存器中。
24.本发明中的服务器cpld自动编译装置及方法,能实现cpld源码的编译自动化、简化人工操作,更节省维护时间、成本。
25.实施例二:实施例二是实施例一的优选实施例,其与实施例一的不同之处,对服务器cpld自动编译系统的结构进行了介绍:如图1所示,本实施例中公开了一种服务器cpld自动编译装置,包括:bmc管理模块、烧录模块、cpld单元模块、pcie主控模块、飞腾处理器、bios模块以及tcm加密模块;述bmc管理模块通过接口总线与所述cpld单元连接,所述cpld单元还通过接口总线与所述飞腾处理器连接;所述bmc管理模块通过jatg端口与所述烧录模块连接,所述烧录模块通过jatg端口与cpld单元模块连接,所述cpld单元通过spi总线与所述bios模块连接,所述pcie主控模块通过pcie总线与所述飞腾处理器连接,所述tcm加密模块通过spi总线与所述cpld单元连接,其中,接口总线包括uart总线、i2c总线、lpc总线、spi总线。
26.如图3所示,bmc管理模块嵌入cpld程序自动编译系统,包含上电时序规范表获取、cpld程序优化模块指令调度、电平转换信号质量监控、gpio信号状态监控四大功能,其中嵌入的cpld程序自动编译系统集成上电时序规范表读取、收集io管脚信号、信号筛选分类、自动编译cpld程序、cpld程序故障语句修正、cpld程序语句优化、cpld程序语句优化功能。
27.如图2所示,本发明中的服务器cpld自动编译装置的工作流程如下:bmc管理模块收集上电时序规范表,并调用嵌入的cpld程序自动编译系统,cpld自动编译系统读取上电时序规范表后,反馈程序编译指令给bmc管理模块,bmc管理模块通过接口总线向cpld单元模块植入信号收集脚本,收集cpld单元模块io管脚信号,并将信号信息回传至cpld自动编译系统,cpld自动编译系统根据时序规范表对信号进行分类筛选,调用编译脚本编译cpld程序,再将编译完成的cpld程序传送至bmc管理模块,bmc管理模块通过jatg端口烧录程序至cpld芯片内部寄存器,完成烧录后,bmc管理模块通过gpio端口启动
运行cpld单元模块,通过uart总线收集分析飞腾处理器加载bios固件、pcie主控设备的串口信息,检验上电时序故障信息,并记录各时序信号加载时间,若存在时序故障信息,bmc管理模块则将收集的上电时序故障信息和cpld程序回传至cpld自动编译系统,cpld自动编译系统根据故障信息对cpld程序进行语句修正,并返回bmc管理模块通过jatg端口重新烧录程序至cpld芯片内部寄存器;若不存在时序故障信息,bmc管理模块将记录的各时序信号加载时间与上电时序规范表时间对比,若存在时序信号加载时间大于上电时序规范表时间,bmc管理模块将收集上电加载时间长的时序信号和cpld程序回传至cpld自动编译系统,cpld自动编译系统根据该信号允许的最短时间对cpld程序进行语句优化缩短;之后返回bmc管理模块通过jatg端口烧录程序至cpld芯片内部寄存器,若不存在时序信号加载时间大于上电时序规范表时间,bmc管理模块通过接口总线将cpld程序输出至tcm加密模块加密保存,并通过接口总线对cpld单元模块的电平转换信号质量和gpio信号应用状态进行监控,cpld单元模块则通过spi总线对cpld程序加密访问运行。
28.如图4所示,飞腾处理器集成uart、i2c、gpio、lpc、spi、pcie等总线端口,所述cpld单元模块包括:时序信号模块、电平转换模块、自定义gpio模块;所述bmc管理模块分别与时序信号模块、电平转换模块、自定义gpio模块连接,所述时序信号模块分别与所述pcie主控设备、飞腾处理器连接;所述电平转换模块分别与所述飞腾处理器、bios模块连接;所述自定义gpio模块与所述飞腾处理器连接;本实施例中,上电时序信号包括飞腾处理器上电时序信号和pcie主控设备上电时序信号;时序规范表包括飞腾处理器上电时序规范表和pcie主控设备上电时序规范表;服务器cpld自动编译装置工作时,用户通过bmc管理模块上传飞腾处理器上电时序规范表和pcie主控设备上电时序规范表,并调用cpld自动编译系统,cpld自动编译系统根据规范表,通过cpld单元模块扫描io管脚信号,识别飞腾处理器上电时序信号和pcie主控设备上电时序信号,依次生成飞腾上电时序程序、pcie主控设备上电时序程序,并分类出电平转换信号、自定义gpio信号,cpld自动编译系统调用编译脚本将分类信号和源码自动编译成cpld程序,cpld自动编译系统将cpld程序打包保存到cpld优化模块,并通过bmc管理模块jatg端口烧录/更新程序至cpld芯片内部寄存器。
29.综上所述,本发明能解决目前国产服务器整机研发上电调试需要人工进行cpld源码编译,以及人工编译工作量大、难度高、编译时间长、容易出错以及编译程序可靠性差等弊端问题,本发明简化人工操作,更节省维护时间、成本。
30.以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献