一种系统及其获取CPLD的IO状态的诊断卡的制作方法

文档序号:15998956发布日期:2018-11-20 19:12阅读:356来源:国知局

本发明涉及系统诊断技术领域,特别是涉及一种系统及其获取CPLD的IO状态的诊断卡。



背景技术:

HW Monitor是进行硬件侦测的芯片,有着获取CPU温度,进行模数转换等功能。系统的运行状态可以协助系统的故障定位,而在采用HW Monitor的系统中,通常无法获取系统的详细的运行状态,常规的方式是通过系统的OS(Operating System,操作系统)进行系统状态的获取,通过OS获取的信息较为粗略,当系统故障时,通过OS不能精确地确定故障原因。此外,当系统故障时通常会切断系统的外部供电,此时系统仅有STBY(Standby,表示系统处于S5或S4的状态)的电时,无法通过OS获取系统状态,进而使得故障诊断的难度更高。

综上所述,在采用HW Monitor的系统中,如何获取系统的详细的运行状态,以协助进行故障定位,是目前本领域技术人员急需解决的技术问题。



技术实现要素:

本发明的目的是提供一种HW Monitor的系统及其获取CPLD的IO状态的诊断卡,以获取系统的详细的运行状态,协助进行故障定位。

为解决上述技术问题,本发明提供如下技术方案:

一种获取CPLD的IO状态的诊断卡,包括:

与复杂可编程逻辑器件CPLD通讯连接,用于接收所述CPLD的IO数据,并将所述IO数据进行解析的数据获取模块;

与所述数据获取模块连接,用于发送所述数据获取模块解析出的数据的数据发送模块。

优选的,所述数据获取模块为通过并行转串行的低速总线Scan Chain与所述CPLD通讯连接的数据获取模块。

优选的,所述数据获取模块为AST2520芯片。

优选的,所述AST2520芯片通过由6根信号线构成的排线与所述CPLD通讯连接,6根所述信号线为:Power线,GND线,SS_CLK线,SS_LOAD线,SS_DATA_IN线,SS_DATA_OUT线。

优选的,还包括:

与所述数据获取模块连接,用于存储所述数据获取模块解析出的数据的数据存储模块。

优选的,所述CPLD的IO数据包括:

CPU_ID数据,CPU/MEM温度报警数据,CPU报错数据,CPLD的版本数据,PCA版本数据,各组电源的alert数据、fault数据、power good数据,系统关机重启数据,系统过热关机数据,系统降频数据。

优选的,所述数据发送模块为通过串口发送数据的数据发送模块。

优选的,所述数据发送模块为通过网络接口发送数据的数据发送模块。

优选的,所述数据获取模块还用于向所述CPLD发送目标指令以使得所述CPLD根据接收的所述目标指令控制系统的开关机。

一种HW Monitor的系统,包括系统主板,与所述系统主板上的CPLD连接的如上述任一项所述的获取CPLD的IO状态的诊断卡。

应用本发明实施例所提供的技术方案,包括:与复杂可编程逻辑器件CPLD通讯连接,用于接收CPLD的IO数据,并将IO数据进行解析的数据获取模块;与数据获取模块连接,用于发送数据获取模块解析出的数据的数据发送模块。

申请人考虑到,CPLD的IO状态能够详细地体现系统的运行状态,并且当系统失去外部供电,处于STBY模式时,CPLD依然在工作状态,因此将诊断卡的数据获取模块与CPLD通讯连接,数据获取模块可以接收CPLD的IO数据并进行解析,也就使得数据获取模块可以获得系统详细的运行状态,数据发送模块与数据获取模块连接,可以发送数据获取模块解析出的数据,也就使得当系统故障时,技术人员可以通过数据获取模块以及数据发送模块获取系统详细的运行状态,因此,在采用HW Monitor的系统中,本申请的诊断卡能够获取系统的详细的运行状态,以便于协助故障定位。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明中获取CPLD的IO状态的诊断卡的一种结构示意图;

图2为本发明中获取CPLD的IO状态的诊断卡的另一种结构示意图。

具体实施方式

本发明的核心是提供一种获取CPLD的IO状态的诊断卡,能够获取系统的详细的运行状态,便于协助故障定位。

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参考图1,图1为本发明中一种获取CPLD的IO状态的诊断卡的结构示意图,该诊断卡包括:

与CPLD通讯连接,用于接收CPLD的IO数据,并将IO数据进行解析的数据获取模块10。

CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)是系统主板中的集成电路,是用户可以根据实际需要自行构造逻辑功能的数字集成电路。CPLD的IO数据能够详细地体现系统的运行状态,并且当系统失去外部供电,处于STBY模式时,CPLD依然在工作状态,使得当系统失去外部供电时,CPLD依然能够维持其各个IO的状态。

CPLD的IO数据能够反映系统的运行状态,例如,当某一个IO接口的电位为1时,表示1号电源正常供电,当该IO接口的电位为0时,表示1号电源供电异常。针对系统的某个运行状态,可以是如上述例子中的通过一个IO接口的数据进行反映,也可以是通过多个IO接口的数据的组合来反映系统的该运行状态,并不影响本发明的实施。此外,CPLD中包含的IO接口的数量,也可以根据实际情况进行设定和调整,例如,根据不同系统中包含的硬件的不同,不同系统中需要进行故障检测的软硬件指标不同等,调整CPLD中的IO接口的数量,并不影响本发明的实施。

数据获取模块10与CPLD通讯连接,可以接收CPLD的IO数据并将接收的IO数据进行解析。具体的通讯协议以及硬件线路的选择,均可以根据实际情况进行设定和调整,并不影响本发明的实施。在接收CPLD的IO数据时,可以是实时接收,也可以是按照预设的周期接收,当然,还可以由CPLD来决定数据获取模块10何时接收IO数据。具体的,例如针对需要发送至数据获取模块10的各个IO数据,CPLD可以将各个IO数据分别与对应的预设值进行比较,当一个或多个IO数据不符合预设值时,则满足IO数据的发送条件,即此时CPLD可以将IO数据发送至数据获取模块10,数据获取模块10则接收CPLD发送的IO数据并进行解析。

CPLD中包含多个IO数据,考虑到需要获得系统的详细的运行状态,数据获取模块10获取的CPLD的IO数据,可以是CPLD的全部的IO数据,当然,根据实际需要,也可以是CPLD中的部分IO数据,例如不获取与系统运行状态无关的数据。此外,数据获取模块10获取的CPLD的IO数据的排列顺序,也可以根据实际情况进行设定和调整,,并不影响本发明的实施,例如,获取的IO数据队列的头部设定为是CPU温度报警数据,接着的是CPU报错数据。

在一种具体实施方式中,CPLD的IO数据可以包括:CPU_ID数据,CPU/MEM温度报警数据,CPU报错数据,CPLD的版本数据,PCA版本数据,各组电源的alert数据、fault数据、power good数据,系统关机重启数据,系统过热关机数据,系统降频数据。这些IO数据是常用的,且能够反映系统的相应部分的运行状态的IO数据,当然,具体场合中,CPLD还可以包括其他类型的IO数据,并不影响本发明的实施。

与数据获取模块10连接,用于发送数据获取模块10解析出的数据的数据发送模块20。

数据发送模块20与数据获取模块10连接,在数据获取模块10对接收的CPLD的IO数据进行解析之后,数据发送模块20可以发送数据获取模块10解析出的数据,使得技术人员可以获得由数据获取模块10解析出的这些数据,进而通过这些数据协助进行故障定位。

应用本发明实施例所提供的技术方案,包括:与复杂可编程逻辑器件CPLD通讯连接,用于接收CPLD的IO数据,并将IO数据进行解析的数据获取模块;与数据获取模块连接,用于发送数据获取模块解析出的数据的数据发送模块。

申请人考虑到,CPLD的IO状态能够详细地体现系统的运行状态,并且当系统失去外部供电,处于STBY模式时,CPLD依然在工作状态,因此将诊断卡的数据获取模块与CPLD通讯连接,数据获取模块可以接收CPLD的IO数据并进行解析,也就使得数据获取模块可以获得系统详细的运行状态,数据发送模块与数据获取模块连接,可以发送数据获取模块解析出的数据,也就使得当系统故障时,技术人员可以通过数据获取模块以及数据发送模块获取系统详细的运行状态,因此,在采用HW Monitor的系统中,本申请的诊断卡能够获取系统的详细的运行状态,以便于协助故障定位。

在本发明的一种具体实施方式中,数据获取模块10为通过并行转串行的低速总线Scan Chain与CPLD通讯连接的数据获取模块10。

Scan Chain是将并行数据转换为串行数据的一种低速信号传输协议,由于其简单实用,因此在具体实施时,可以使用Scan Chain协议进行CPLD与数据获取模块10之间的通讯连接。Scan Chain由四组信号组成:CLK,Load,Data_in以及Data_out。Scan Chain受到Master端控制,在时钟移位脉冲下,数据按位传输,高位在前,低位在后(MSB First),两根单向数据线,为全双工通信,无寻址机制,通过Load为底实现对slave的控制,在实际应用中可达几Mbps。

采用Scan Chain进行数据传输时,需要对CPLD进行初始化,即使得CPLD可以使用Scan Chain协议,具体的,可以在CPLD code内部执行first scan chain以进行初始化。执行代码可以为:

在数据传输过程中,可以根据实际需求定义一次传输的数量,每次可达10bytes(80bits),每个bit都可根据CPLD定义信号属性并传输,使得CPLD与数据获取模块10之间可以进行大量且快速的数据传输,也就使得本申请提供的诊断卡能及时获取CPLD的各个IO状态。CPLD在正式传输数据时,例如传输的数据为offset 0x41,则执行代码可以如下:

在该例子中,在传输byte的定义中,每8个bits定义成一个byte,即offset0x41为Scan Chain的多个byte中的一个,在其他实施方式中,传输byte的定义可根据实际情况进行自主定义,例如将16个bits定义成一个byte,当然,在数据获取模块10上需要进行对应的定义解码。

在本发明的一种具体实施方式中,数据获取模块10为AST2520芯片。可参阅图2,为本发明中获取CPLD的IO状态的诊断卡的另一种结构示意图。在该种实施方式中,通过AST2520芯片与CPLD通讯连接,接收CPLD的IO数据,并将接收的IO数据进行解析。

在本发明的一种具体实施方式中,AST2520芯片通过由6根信号线构成的排线与CPLD通讯连接,6根信号线为:Power线,GND线,SS_CLK线,SS_LOAD线,SS_DATA_IN线,SS_DATA_OUT线。该种实施方式中,排线的占用空间少,仅有6根信号线。通过SS_CLK线,SS_LOAD线,SS_DATA_IN线以及SS_DATA_OUT线进行IO数据的传输。通过Power线和GND线为诊断卡供电,便于诊断卡的使用。

在图2中,还设置了与AST2520连接的电池,该电池用于将诊断卡的时间与系统时间进行同步,当系统断电时,由于该电池的存在,使得诊断卡的时间信号并不停滞,当系统恢复供电时,诊断卡的时间和系统的时间便能够同步。

在本发明的一种具体实施方式中,还包括:

与数据获取模块10连接,用于存储数据获取模块10解析出的数据的数据存储模块。考虑到在部分场合中,系统的某些部件经常出现问题,需要长期对系统的运行状态进行检测并存储下检测结果,因此,该种实施方式中,将数据存储模块与数据获取模块10连接,通过数据存储模块存储数据获取模块10解析出的数据,便于数据的长期使用以及后续分析。需要指出的是,本申请提供的数据存储模块以及数据发送模块20均可以集成在数据获取模块10中,也可以单独设置,并不影响本发明的实施。例如在图2中,通过AST2520的DDR4flash进行相应数据的存储。

考虑到串口以及网口是常用的两种数据发送方式,因此,在具体实施时,数据发送模块20可以为通过串口发送数据的数据发送模块20,也可以为通过网络接口发送数据的数据发送模块20,当然,还可以兼具两种数据发送方式,例如图2的实施例中,AST2520进行数据解析之后,技术人员可以通过网络接口RJ45management port获取解析后的数据,也可以通过串口UART获取解析后的数据。在使用网络接口时,AST2520下可以使用RTL8211E/Realtek,可以提供10/100/1000Base-T的管理网络接口。

在本发明的一种具体实施方式中,数据获取模块10还用于向CPLD发送目标指令以使得CPLD根据接收的目标指令控制系统的开关机。

例如在采用Scan Chain的场合中,由于Scan Chain满足数据的双向传输的要求,因此可以通过数据获取模块10向CPLD发送目标指令,使得CPLD根据接收的目标指令控制系统的开关机。需要指出的是,也可以通过数据获取模块10向CPLD发送其他类型的指令,以修改CPLD的IO数据,进而验证CPLD的逻辑功能,便于对CPLD的逻辑功能进行测试。例如上述例子中发送目标指令,通过CPLD控制系统的开机以及关机,即可测试系统的AC cycle以及DC cycle。

相应于上面的一种获取CPLD的IO状态的诊断卡的实施例,本发明实施例还提供了一种HW Monitor的系统,该HW Monitor的系统包括系统主板,与系统主板上的CPLD连接的如上述任一实施例中的获取CPLD的IO状态的诊断卡,该HW Monitor的系统与上文描述的一种获取CPLD的IO状态的诊断卡可相互对应参照,此处不重复说明。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的HW Monitor的系统而言,由于其与实施例公开的获取CPLD的IO状态的诊断卡相对应,所以描述的比较简单,相关之处参见获取CPLD的IO状态的诊断卡的部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1