基于FPGA的硬盘自动切换装置的应用方法转让专利

申请号 : CN201910938327.6

文献号 : CN110688263B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张学东袁小兵曹之科余兵郭照新李潮员天佑刘金周小伟虢仲平

申请人 : 中国工程物理研究院计算机应用研究所

摘要 :

本发明公开了一种基于FPGA的硬盘自动切换装置及其应该方法,包括:硬盘组;与硬盘组中各硬盘相连接的嵌入式控制器;与嵌入式控制器通信连接的FPGA;通过SPI总线与FPGA连接,对硬盘组的工作状态进行控制、监测的MCU;其中,所述MCU通过以太网协议转换芯片与远程监控设备通信连接,以接收相应启动和/或切换控制信号。本发明提供一种基于FPGA的硬盘自动切换装置,其能够通过远程控制选择启动硬盘,同时默认启动硬盘出现故障时,自动切换至另一个启动硬盘实现正常启动。

权利要求 :

1.一种基于FPGA的硬盘自动切换装置的应用方法,其特征在于,所述基于FPGA的硬盘自动切换装置,包括:与图像采集系统相配合的硬盘组;

与硬盘组中各硬盘相连接以控制其工作状态的嵌入式控制器;

与嵌入式控制器通信连接的FPGA,其分别通过相配合的电源控制模块与嵌入式控制器、硬盘组连接以对其上电状态进行控制;

通过SPI总线与FPGA连接,对硬盘组的工作状态进行控制、监测的MCU;

其中,所述MCU通过以太网协议转换芯片与远程监控设备通信连接,以接收相应启动和/或切换控制信号;

所述硬盘组被配置为包括至少两个第一固态盘、第二固态盘;

其中,所述FPGA通过相配合的多通道可控电源模块进而与第一固态盘、第二固态盘分别进行连接,以提供相配合的工作电源;

所述FPGA通过相配合的可控电源芯片进而与嵌入式控制主板连接,以提供相相配合的工作电源;

所述多通道可控电源模块的型号被配置为采用LTM4644,所述可控电源芯片的型号被配置为采用LTM4613;

所述嵌入式控制器的型号被配置为采用嵌入式控制主板SOM‑5897;

所述FPGA的型号被配置为采用XC6SLX45T‑2FGG484I;

其中,所述FPGA和嵌入式控制主板SOM‑5897之间通过USB协议转换芯片实现通讯连接;

所述USB协议转换芯片的型号被配置为采用CP2103 X2;

所述MCU的型号被配置为采用STM32F407IG;

所述以太网协议转换芯片的型号被配置为采用W5500;

其中,所述W5500通过装置上的100Mpbs以太网接口与远端监控设备进行连接;

步骤一,以太网协议转换芯片将从远程监控设备接收到的第一启动指令,转换成SPI通信协议下的第二启动指令供MCU接收;

步骤二,MCU基于接收到的第二启动指令,控制FPGA对第一固态盘、嵌入式控制器进行上电操作,以使嵌入式控制主板从第一固态盘进行启动;

步骤三,FPGA在预定时间内未接收到第一固态盘上第一服务程序的响应信息,则认定第一固态盘未能正常启动,开始执行硬盘切换操作;

步骤四,所述FPGA先对第一固态盘、嵌入式控制器进行下电操作,再分别对第二固态盘、嵌入式控制器进行上电操作,以使嵌入式控制主器从第二固态盘进行启动;

步骤五,所述FPGA基于第二固态盘上对应第二服务程序发送的正常启动信息,与MCU进行通信,并通过以太网协议转换芯片,将启动正常信息发送给以太网上的远程监控设备;

所述步骤一被配置为包括:

S10,远程监控设备通过100Mpbs以太网接口向硬盘切换装置发送第一启动指令;

S11,所述硬盘切换装置上的以太网协议转换芯片W5500将接收到到第一启动指令进行转换,得到基于SPI通讯协议能直接与MCU进行数据交换的第二启动指令,并发送给MCU芯片;

所述步骤二被配置为包括:

S20,所述MCU芯片基于接收到的第二启动指令,通过SPI总线下的通讯结构发送相对应的第一控制指令到FPGA;

S21,FPGA基于接收到的第一控制指令,将第一固态盘mSATA1的电源控制使能信号打开,并通过多通道可控电源模块LTM4644给 mSATA1供电;

S22,所述FPGA在mSATA1上电后,将嵌入式控制主板的使能信号打开,并通过可控电源芯片LTM4613给嵌入式控制主板供电;

S23,所述FPGA将嵌入式控制主板的电源正常启动信号打开,进而使嵌入式控制主板从mSATA1启动;

所述步骤三中的预定时间被配置3分钟,FPGA在3分钟内查询不到第一服务程序的运行状态,则认为操作系统没有正常启动,开始执行硬盘切换操作;

所述步骤四被配置为包括:

S41,FPGA将第一固态盘mSATA1的电源控制使能信号关闭,同时将第二固态盘mSATA2的电源控制使能信号打开,通过多通道可控电源模块LTM4644给mSATA2供电;

S42,FPGA先将嵌入式控制主板的使能信号关闭,再重新打开,通过可控电源芯片LTM4613给嵌入式控制主板供电;

S43,FPGA将嵌入式控制主板的电源正常信号关闭,再重新打开,以使嵌入式控制主板从第二固态盘mSATA2启动;

将第一固态盘作为启动盘的开机流程被配置为包括步骤一、步骤二、步骤五;

将第一固态盘作为启动盘的关机流程被配置为包括:

步骤六,以太网协议转换芯片W5500将从远程监控设备接收到的第一关机指令,转换成SPI通信协议下的第二关机指令供MCU接收;

步骤七,MCU基于接收到的第二启动指令,控制FPGA通过嵌入式控制器当前运行的服务程序,完成嵌入式控制器及运行固态盘上操作系统的关机;

步骤八,所述FPGA分别对嵌入式控制器、第一固态盘进行下电操作;

步骤九,所述FPGA通过MCU向远程监控设备发送关机完成信息;

所述步骤六被配置为包括:

S60,远程监控设备通过100Mpbs以太网接口向硬盘切换装置发送第一关机指令;

S61,所述硬盘切换装置上的协议转换芯片W5500将接收到到第一关机指令进行转换,得到基于SPI通讯协议能直接与MCU进行数据交换的第二关机指令,并发送给MCU芯片;

所述步骤七被配置为包括:

S70,所述MCU芯片基于接收到的第二关机指令,通过SPI总线发送第二控制指令到FPGA;

S71,FPGA基于接收到的第二控制指令,通过USB协议转换芯片发送相应的关机指令到嵌入式控制器上运行的服务程序中,该服务程序在给操作系统发送相应关机指令后,发送关机完成指令给FPGA;

S72,FPGA在接收到服务程序的关机完成指令后,延时2分钟,以保证操作系统能够正常关闭,同时在确认服务程序无响应后,确定操作系统层面的关机完成;

所述步骤八被配置为包括:

S80,FPGA在操作系统层面的关机完成后,将嵌入式控制主板的使能信号关闭,并通过可控电源芯片LTM4613对嵌入式控制主板进行下电操作;

S81,FPGA将第一固态盘mSATA1的电源控制使能信号关闭,并通过多通道可控电源模块LTM4644对第一固态盘mSATA1进行下电操作;

S82,FPGA将嵌入式控制主板的电源正常信号进行关闭操作;

所述步骤九被配置为包括:

S90,FPGA发送关机完成状态信息给MCU;

S91,MCU基于接收到的关机完成信息,通过以太网协议转换芯片W5500将关机完成信息发送给远程监测设备。

2.如权利要求1所述的应用方法,其特征在于,所述步骤五被配置为包括:S50,所述式控制主板正常启动后,第二固态盘mSATA2上驻留的第二服务程序通过嵌入式控制主板上的USB通讯接口发送硬盘正常启动信息,并经过USB协议转换芯片转换为串口通讯协议后,发送给FPGA;

S51,所述FPGA接收到硬盘启动正常信息后,通过SPI通讯总线发送给MCU芯片;

S52,所述MCU接收到硬盘启动正常信息后,通过以太网协议转换芯片W5500对其进行转换,进而将硬盘启动正常信息发送给以太网上的远程监控设备。

说明书 :

基于FPGA的硬盘自动切换装置的应用方法

技术领域

[0001] 本发明涉及一种在数据存储或处理情况下使用的装置。更具体地说,本发明涉及一种用在图片采集处理系统情况下的基于FPGA的硬盘自动切换装置及应用方法。

背景技术

[0002] 图片采集处理系统主要功能包括单片机控制ISP‑PLD器件,实现对摄像头的图像高速采集与存储,单片机图像压缩与PC机串行通信实现图像数据的传输,在PC机端实现图像处理和显示等。
[0003] 而在图片采集处理系统中,对于大量的针对图像处理应用通常通过嵌入式控制器进行,而由于设备经常要进行大量图像的采集、存储,故通过嵌入式控制器或其它设备对硬盘的读取、存储等相关操作频繁,而长期的操作频繁会导致硬盘出现物理损伤,而此时通常的处理方式是只能通过停机更换硬盘进行维护,而停机操作会影响系统的运行可靠性。

发明内容

[0004] 本发明的一个目的是解决至少上述问题和/或缺陷,并提供至少后面将说明的优点。
[0005] 本发明还有一个目的是提供一种基于FPGA的硬盘自动切换装置,其能够通过远程控制选择启动硬盘,同时默认启动硬盘出现故障时,自动切换至另一个启动硬盘实现正常启动。
[0006] 为了实现根据本发明的这些目的和其它优点,提供了一种基于FPGA的硬盘自动切换装置,包括:
[0007] 与图像采集系统相配合的硬盘组;
[0008] 与硬盘组中各硬盘相连接以控制其工作状态的嵌入式控制器;
[0009] 与嵌入式控制器通信连接的FPGA,其分别通过相配合的电源控制模块与嵌入式控制器、硬盘组连接以对其上电状态进行控制;
[0010] 通过SPI总线与FPGA连接,对硬盘组的工作状态进行控制、监测的MCU;
[0011] 其中,所述MCU通过以太网协议转换芯片与远程监控设备通信连接,以接收相应启动和/或切换控制信号。
[0012] 优选的是,其中,所述硬盘组被配置为包括至少两个第一固态盘、第二固态盘;
[0013] 其中,所述FPGA通过相配合的多通道可控电源模块进而与第一固态盘、第二固态盘分别进行连接,以提供相配合的工作电源;
[0014] 所述FPGA通过相配合的可控电源芯片进而与嵌入式控制主板连接,以提供相相配合的工作电源;
[0015] 所述多通道可控电源模块的型号被配置为采用LTM4644,所述可控电源芯片的型号被配置为采用LTM4613。
[0016] 优选的是,其中,所述嵌入式控制器的型号被配置为采用嵌入式控制主板SOM‑5897;
[0017] 所述FPGA的型号被配置为采用XC6SLX45T‑2FGG484I;
[0018] 其中,所述FPGA和嵌入式控制主板SOM‑5897之间通过USB协议转换芯片实现通讯连接;
[0019] 所述USB协议转换芯片的型号被配置为采用CP2103 X2。
[0020] 优选的是,其中,所述MCU的型号被配置为采用STM32F407IG;
[0021] 所述以太网协议转换芯片的型号被配置为采用W5500;
[0022] 其中,所述W5500通过装置上的100Mpbs以太网接口与远端监控设备进行连接。
[0023] 一种应用基于FPGA的硬盘自动切换装置的方法,包括:
[0024] 步骤一,以太网协议转换芯片将从远程监控设备接收到的第一启动指令,转换成SPI通信协议下的第二启动指令供MCU接收;
[0025] 步骤二,MCU基于接收到的第二启动指令,控制FPGA对第一固态盘、嵌入式控制器进行上电操作,以使嵌入式控制主板从第一固态盘进行启动;
[0026] 步骤三,FPGA在预定时间内未接收到第一固态盘上第一服务程序的响应信息,则认定第一固态盘未能正常启动,开始执行硬盘切换操作;
[0027] 步骤四,所述FPGA先对第一固态盘、嵌入式控制器进行下电操作,再分别对第二固态盘、嵌入式控制器进行上电操作,以使嵌入式控制主器从第二固态盘进行启动;
[0028] 步骤五,所述FPGA基于第二固态盘上对应第二服务程序发送的正常启动信息,与MCU进行通信,并通过以太网协议转换芯片,将启动正常信息发送给以太网上的远程监控设备。
[0029] 优选的是,其中,所述步骤一被配置为包括:
[0030] S10,远程监控设备通过100Mpbs以太网接口向硬盘切换装置发送第一启动指令;
[0031] S11,所述硬盘切换装置上的协议转换芯片W5500将接收到到第一启动指令进行转换,得到基于SPI通讯协议能直接与MCU进行数据交换的第二启动指令,并发送给MCU芯片;
[0032] 所述步骤二被配置为包括:
[0033] S20,所述MCU芯片基于接收到的第二启动指令,通过SPI总线下的通讯结构发送相对应的第一控制指令到FPGA;
[0034] S21,FPGA基于接收到的第一控制指令,将第一固态盘mSATA1的电源控制使能信号打开,并通过多通道可控电源芯片LTM4644给 mSATA1供电;
[0035] S22,所述FPGA在mSATA1上电后,将嵌入式控制主板的使能信号打开,并通过多通道可控电源芯片LTM4613给嵌入式控制主板供电;
[0036] S23,所述FPGA将嵌入式控制主板的电源正常启动信号打开,进而使嵌入式控制主板从mSATA1启动。
[0037] 优选的是,其中,所述步骤三中的预定时间被配置3分钟,FPGA在3分钟内查询不到第一服务程序的运行状态,则认为操作系统没有正常启动,开始执行硬盘切换操作;
[0038] 所述步骤四被配置为包括:
[0039] S41,FPGA将第一固态盘mSATA1的电源控制使能信号关闭,同时将第二固态盘mSATA2的电源控制使能信号打开,通过多通道可控电源芯片LTM4644给mSATA2供电;
[0040] S42,FPGA先将嵌入式控制主板的使能信号关闭,再重新打开,通过多通道可控电源芯片LTM4613给嵌入式控制主板供电;
[0041] S43,FPGA将嵌入式控制主板的电源正常信号关闭,再重新打开,以使嵌入式控制主板从第二固态盘mSATA2启动。
[0042] 优选的是,其中,所述步骤五被配置为包括:
[0043] S50,所述式控制主板正常启动后,第二固态盘mSATA2上驻留的第二服务程序通过嵌入式控制主板上的USB通讯接口发送硬盘正常启动信息,并经过usb协议转换芯片转换为串口通讯协议后,发送给FPGA;
[0044] S51,所述FPGA接收到硬盘启动正常信息后,通过SPI通讯总线发送给MCU芯片;
[0045] S52,所述MCU接收到硬盘启动正常信息后,通过W5500以太网协议转换芯片对其进行转换,进而将硬盘启动正常信息发送给以太网上的远程监控设备。
[0046] 优选的是,其中,将第一固态盘作为启动盘的开机流程被配置为包括步骤一、步骤二、步骤五;
[0047] 将第一固态盘作为启动盘的关机流程被配置为包括:
[0048] 步骤六,以太网协议转换芯片将从远程监控设备接收到的第一关机指令,转换成SPI通信协议下的第二关机指令供MCU接收;
[0049] 步骤七,MCU基于接收到的第二启动指令,服务程序,完成嵌入控制FPGA通过嵌入式控制器上运行的服务程序,完成嵌入式控制器及当前运行固态盘的操作系统关机;
[0050] 步骤八,所述FPGA分别对嵌入式控制器、第一固态盘进行下电操作;
[0051] 步骤九,所述FPGA通过MCU向远程监控设备发送关机完成信息。
[0052] 优选的是,其中,所述步骤六被配置为包括:
[0053] S60,远程监控设备通过100Mpbs以太网接口向硬盘切换装置发送第一关机指令;
[0054] S61,所述硬盘切换装置上的协议转换芯片W5500将接收到到第一关机指令进行转换,得到基于SPI通讯协议能直接与MCU进行数据交换的第二关机指令,并发送给MCU芯片;
[0055] 所述步骤七被配置为包括:
[0056] S70,所述MCU芯片基于接收到的第二关机指令,通过SPI总线发送第二控制指令到FPGA;
[0057] S71,FPGA基于接收到的第二控制指令,通过USB协议转换芯片发送相应的关机指令到嵌入式控制器上运行的服务程序中,该服务程序在给操作系统发送相应关机指令后,发送关机完成指令给FPGA;
[0058] S72,FPGA在接收到服务程序的关机完成指令后,延时2分钟,以保证操作系统能够正常关闭,同时在确认服务程序无响应后,确定操作系统层面的关机完成;
[0059] 所述步骤八被配置为包括:
[0060] S80,FPGA在操作系统层面的关机完成后,将嵌入式控制主板的使能信号关闭,并通过多通道可控电源芯片LTM4613对嵌入式控制主板进行下电操作;
[0061] S81,FPGA将第一固态盘mSATA1的电源控制使能信号关闭,并通过多通道可控电源芯片LTM4644对第一固态盘mSATA1进行下电操作;
[0062] S82,FPGA将嵌入式控制主板的电源正常信号进行关闭操作;
[0063] 所述步骤九被配置为包括:
[0064] S90,FPGA发送关机完成状态信息给MCU;
[0065] S91,MCU基于接收到的关机完成信息,通过以太网协议转换芯片将关机完成信息发送给远程监测设备。
[0066] 本发明至少包括以下有益效果:本发明基于MCU和FPGA,通过对硬盘、嵌入式控制器主板的电源、启动信号的控制,实现物理选择启动硬盘,同时结合嵌入式控制器的服务程序监控启动状态,当无法正常启动时,切换至另一启动硬盘,保障嵌入式系统仍可正常工作。
[0067] 本发明的其它优点、目标和特征将部分通过下面的说明体现,部分还将通过对本发明的研究和实践而为本领域的技术人员所理解。

附图说明

[0068] 图1为本发明的一个实施例中基于FPGA的硬盘自动切换装置的结构组成框图;
[0069] 图2为本发明的一个实施例中基于FPGA的硬盘自动切换装置在故障切换时的开机流程;
[0070] 图3为本发明的一个实施例中基于FPGA的硬盘自动切换装置在正常工作时的开机流程;
[0071] 图4为本发明的一个实施例中基于FPGA的硬盘自动切换装置在正常工作时的关机流程;
[0072] 图5为本发明的一个实施例中基于FPGA的硬盘自动切换装置中MCU的以太网通讯框图;
[0073] 图6为本发明的一个实施例中基于FPGA的硬盘自动切换装置中MCU部分引脚示意图;
[0074] 图7为本发明的一个实施例中基于FPGA的硬盘自动切换装置中以太网接口芯片w5500的引脚布局连接图;
[0075] 图8为本发明的一个实施例中基于FPGA的硬盘自动切换装中HX1188NL芯片对以太网输入信号进行变压器隔离的连接图;
[0076] 图9为本发明的一个实施例中基于FPGA的硬盘自动切换装置中FPGA的部分引脚示意图;
[0077] 图10为本发明的一个实施例中基于FPGA的硬盘自动切换装置中,FPGA通过CP2103芯片与嵌入式控制器连接的连接图;
[0078] 图11为本发明的一个实施例中基于FPGA的硬盘自动切换装置中,对硬盘进行供电设计的部分连接图;
[0079] 图12为本发明的一个实施例中基于FPGA的硬盘自动切换装置中,对硬盘进行供电设计的另一部分连接图;
[0080] 图13为本发明的一个实施例中基于FPGA的硬盘自动切换装置中,对嵌入式控制主板进行供电设计的部分连接图;
[0081] 图14为本发明的一个实施例中基于FPGA的硬盘自动切换装置中,对嵌入式控制主板进行供电设计的另一部分连接图。

具体实施方式

[0082] 下面结合附图对本发明做进一步的详细说明,以令本领域技术人员参照说明书文字能够据以实施。
[0083] 应当理解,本文所使用的诸如“具有”、“包含”以及“包括”术语并不配出一个或多个其它元件或其组合的存在或添加。
[0084] 图1示出了根据本发明的一种基于FPGA的硬盘自动切换装置的实现形式,其中包括:
[0085] 与图像采集系统相配合的硬盘组1,其可是两个构成双硬盘系统,也可以根据需要设置的多个,而本装置可以用在图像采集系统中,也可以根据需要设置在其它需要多硬盘的系统或设备中;
[0086] 与硬盘组中各硬盘相连接以控制其工作状态的嵌入式控制器2,其用于对硬盘进行操作,以对硬盘进行读取或存储操作,完成图像采集操作
[0087] 与嵌入式控制器通信连接的FPGA 3,其分别通过相配合的电源控制模块与嵌入式控制器、硬盘组连接以对其上电状态进行控制,FPGA实现嵌入式控制主板SOM‑5897、固态盘mSATA1、mSATA2的加电控制;
[0088] 通过SPI总线与FPGA连接,对硬盘组的工作状态进行控制、监测的MCU 4,MCU和FPGA之间通过SPI实现通讯,监控启动状态信息;
[0089] 其中,所述MCU通过以太网协议转换芯片5与远程监控设备通信连接,以接收相应启动和/或切换控制信号,MCU芯片通过以太网协议转换芯片接入外部以太网接口,实现控制输入和状态查询,MCU通过以太网协议转换芯片W5500实现以太网接口扩展,其方案框图如图5所示,在本方案中硬盘组基于MCU和FPGA实现硬盘、嵌入式控制主板的电源和信号控制,实现硬盘物理物理链路的自动切换,远程硬盘切换装置能够实现远程控制任意硬盘作为启动盘启动系统,也可以在默认启动硬盘出现故障时,切换到另一个启动硬盘,重新让设备进入工作状态,保障系统工作的可靠性系以及稳定性。
[0090] 在另一种实例中,所述硬盘组被配置为包括至少两个第一固态盘10、第二固态盘11,固态盘mSATA1、mSATA2上驻留有对应的第一服务程序,第二服务程序,操作系统启动后自启动,以发送监测信息给FPGA,第一、第二启动盘上均驻留有嵌入式主板厂商提供的服务程序,外部程序通过此服务程序API函数访问监控主板及操作系统状态,为了对其进行区分,此处将其命名为第二服务程序;
[0091] 其中,所述FPGA通过相配合的多通道可控电源模块6进而与第一固态盘、第二固态盘分别进行连接,以提供相配合的工作电源,第一固态盘、第二固态盘的工作电压为+3.3V电压;
[0092] 所述FPGA通过相配合的可控电源芯片7进而与嵌入式控制主板连接,以提供相相配合的工作电源,嵌入式控制器的工作电压为+12V电压;
[0093] 所述多通道可控电源模块的型号被配置为采用LTM4644,硬盘组的供电设计选用LTM4644电源芯片,该芯片为4路独立电源输出,每路可提供最大4A电流,且每路电源均有独立使能端口,接由FPGA控制,LTM4644电路图如图11‑12所示,所述可控电源芯片的型号被配置为采用LTM4613,嵌入式控制主板供电设计选用LTM4613电源芯片,该芯片可提供最大8A电流,电源使能端接由FPGA控制,LTM4613电路图如图13‑14所示,采用这种方案通过相配合的电源控制模块,可进一步实现对硬盘组中各固态盘、嵌入式控制器上电的物理选择,控制效果更好,稳定性更好。
[0094] 在另一种实例中,所述嵌入式控制器的型号被配置为采用嵌入式控制主板SOM‑5897;
[0095] 所述FPGA的型号被配置为采用XC6SLX45T‑2FGG484I,FPGA选用了Xilinx 公司Spartan‑6系列的XC6SLX45T‐2FGG484I芯片,该芯片具有4个独立的Bank,该芯片具有最大148对差分或单端296个I/O口,其整体资源满足要求,并为后续升级留有裕量,其部分引脚标识如图9所示,FPGA与MCU共接有两对标准的SPI总线接口,是为了后续升级或数据量较大做冗余设计;
[0096] 其中,所述FPGA和嵌入式控制主板SOM‑5897之间通过USB协议转换芯片8实现通讯连接,FPGA和嵌入式控制主板SOM‑5897之间通过usb协议转换芯片实现通讯,获得嵌入式控制主板的启动状态信息;
[0097] 所述USB协议转换芯片的型号被配置为采用CP2103 X2, 具体来说,FPGA与嵌入式控制主板之间通过2组 CP2103芯片通信,该芯片为USB转UART协议芯片,USB端接嵌入式控制主板,UART端接FPGA,其中一组CP2103为系统成功启动则通过USB上报状态命令,另一组备用为客户服务程序启动后通过USB上报状态命令,CP2103原理图如10所示,其中FPGA与嵌入式控制主板接有共8根GPIO线、I2C总线、嵌入式控制主板WDT信号、FPGA输出电源正常信号,用于整机系统使能、扩展功能使用,采用这种方案对装置中的各模块的芯片进行限定,以使其可充分发挥其功能性,与图像采集系统相配合,满足现场的应用需要,具有更好的适应性,可靠性和稳定性。
[0098] 在另一种实例中,所述MCU的型号被配置为采用STM32F407IG,MCU选用STM32F407IG,其是面向需要在小至10 x 10 mm的封装内实现高集成度、高性能、嵌入式存储器和外设的医疗、工业与消费类应用,MCU与W5500之间通过标准的SPI总线通信,其部分引脚标记如图6所示,包括LAN_INIT、LAN_MOSI、LAN_MISO、LAN_SCK、LAN_CS信号;
[0099] 所述以太网协议转换芯片的型号被配置为采用W5500,W5500是WIZnet推出的高性能以太网接口芯片系列之一,内部集成全硬件TCP/IP协议栈+MAC+PHY。全硬件协议栈技术采用硬件逻辑门电路实现复杂的TCP/IP协议簇,其应用具有简单快速、可靠性高、安全性好等显著优势;内部集成MAC和PHY工艺,使得单片机接入以太网方案的硬件设计更为简捷和高效。后端外挂变压器后可直接接RJ45引出,其引脚标记及布局如图7所示,同时为了配合W5500,采用HX1188NL芯片对以太网输入信号进行变压器隔离,其连接结构如图8所示,其中,1775855‑1为以太网RJ45连接器;
[0100] 其中,所述W5500通过装置上的100Mpbs以太网接口9与远端监控设备进行连接,在这种方案中通过对设备中的部分芯片的型号进行限定,以保证硬盘控制物理链路的访问通道通畅,同时通过对型号的限定使得整个系统整合的稳定性,可靠性得到大幅度提升。
[0101] 一种应用基于FPGA的硬盘自动切换装置的方法,包括:
[0102] 步骤一,以太网协议转换芯片将从远程监控设备接收到的第一启动指令,转换成SPI通信协议下的第二启动指令供MCU接收;
[0103] 步骤二,MCU基于接收到的第二启动指令,控制FPGA对第一固态盘、嵌入式控制器进行上电操作,以使嵌入式控制主板从第一固态盘进行启动;
[0104] 步骤三,FPGA在预定时间内未接收到第一固态盘上第一服务程序的响应信息,则认定第一固态盘未能正常启动,开始执行硬盘切换操作;
[0105] 步骤四,所述FPGA先对第一固态盘、嵌入式控制器进行下电操作,再分别对第二固态盘、嵌入式控制器进行上电操作,以使嵌入式控制主器从第二固态盘进行启动;
[0106] 步骤五,所述FPGA基于第二固态盘上对应第二服务程序发送的正常启动信息,与MCU进行通信,并通过以太网协议转换芯片,将启动正常信息发送给以太网上的远程监控设备,在这种方案中的硬盘切换装置,其实现基于MCU和FPGA,通过对硬盘、嵌入式控制主板的电源、启动信号的控制进行物理选择进而启动硬盘,同时结合嵌入式控制器的服务程序监控启动状态,当无法正常启动时,切换至另一启动硬盘,保障嵌入式系统仍可正常工作,进而使得系统工作的可靠性、稳定性更强,通过硬盘的自动切换保证系统的运行状态不受影响,进而无需停机,进而保证设备整机运行的可靠性。
[0107] 在另一种实例中,所述步骤一被配置为包括:
[0108] S10,远程监控设备通过100Mpbs以太网接口向硬盘切换装置发送第一启动指令;
[0109] S11,所述硬盘切换装置上的协议转换芯片W5500将接收到到第一启动指令进行转换,得到基于SPI通讯协议能直接与MCU进行数据交换的第二启动指令,并发送给MCU芯片;
[0110] 所述步骤二被配置为包括:
[0111] S20,所述MCU芯片基于接收到的第二启动指令,通过SPI总线下的通讯结构发送相对应的第一控制指令到FPGA;
[0112] S21,FPGA基于接收到的第一控制指令,将第一固态盘mSATA1的电源控制使能信号打开,并通过多通道可控电源芯片LTM4644给 mSATA1供电;
[0113] S22,所述FPGA在mSATA1上电后,将嵌入式控制主板的使能信号打开,并通过多通道可控电源芯片LTM4613给嵌入式控制主板供电;
[0114] S23,所述FPGA将嵌入式控制主板的电源正常启动信号打开,进而使嵌入式控制主板从mSATA1启动,在这种方案中通过对其工作步骤的限定,实际上限定了正常工作时,从控制主板从mSATA1正常启动的上电流程,以使硬盘上电操作可通过物理选择得以实现,进而进一步保证其物理链路的切换可通过物理选择的方式实现,保证其工作的顺畅性。
[0115] 在另一种实例中,所述步骤三中的预定时间被配置3分钟,FPGA在3分钟内查询不到第一服务程序的运行状态,则认为操作系统没有正常启动,开始执行硬盘切换操作,第一固态盘mSATA1、第一固态盘mSATA2上均安装有嵌入式控制主板驻留有主板厂商提供的服务程序SUSI4_Std_SOM‑5897.exe,这里为了对区进行区分,将其分别命名为第一服务程序、第二服务程序,主要用于提供外部监控主板及操作系统的API函数,且其安装后跟随操作系统自启动;
[0116] 所述步骤四被配置为包括:
[0117] S41,FPGA将第一固态盘mSATA1的电源控制使能信号关闭,同时将第二固态盘mSATA2的电源控制使能信号打开,通过多通道可控电源芯片LTM4644给mSATA2供电;
[0118] S42,FPGA先将嵌入式控制主板的使能信号关闭,再重新打开,通过多通道可控电源芯片LTM4613给嵌入式控制主板供电;
[0119] S43,FPGA将嵌入式控制主板的电源正常信号关闭,再重新打开,以使嵌入式控制主板从第二固态盘mSATA2启动,在这种方案中限定了,当默认启动盘出现了故障无法启动时,通过FPGA对其进行下电,使其处于非工作态,并通过对另一硬盘进行上电操作,再进一步通过嵌入式控制器对电源正常信号物理控制开关状态,使得嵌入式操作主板从第二固态盘上启动,即操作系统从第二硬盘进行启动,实现硬盘的切换,保证系统运行的稳定性。
[0120] 在另一种实例中,所述步骤五被配置为包括:
[0121] S50,所述式控制主板正常启动后,第二固态盘mSATA2上驻留的第二服务程序通过嵌入式控制主板上的USB通讯接口发送硬盘正常启动信息,并经过usb协议转换芯片转换为串口通讯协议后,发送给FPGA;
[0122] S51,所述FPGA接收到硬盘启动正常信息后,通过SPI通讯总线发送给MCU芯片;
[0123] S52,所述MCU接收到硬盘启动正常信息后,通过W5500以太网协议转换芯片对其进行转换,进而将硬盘启动正常信息发送给以太网上的远程监控设备,综述,采用本方案的装置在默认硬盘出现故障时,其开关机流程可根据mSATA1启动不成功,系统从mSATA 2自动启动作为切换的工作方式,其启动流程如图2所示,具体包括:
[0124] 1)远程监控设备通过100Mpbs以太网控制接口发送启动指令,通过W5500协议转换芯片转换位SPI通讯协议,发送给MCU芯片。
[0125] 2)MCU芯片接收到启动指令后,通过SPI通讯结构发送控制指令到FPGA。
[0126] 3)FPGA接收到启动指令后,控制硬盘mSATA1的电源控制使能信号打开,通过多通道可控电源芯片LTM4644给硬盘mSATA1供电。
[0127] 4)FPGA控制嵌入式控制主板的使能信号打开,通过多通道可控电源芯片LTM4613给嵌入式控制主板供电。
[0128] 5)FPGA控制嵌入式控制主板的电源正常启动信号打开,此时,嵌入式控制主板从硬盘mSATA1启动。
[0129] 6)FPGA延时3分钟,保证操作系统能够正常启动,3分钟后接收不到服务程序的心跳信息,认为操作系统没有正常启动,开始执行硬盘切换操作。
[0130] 7)FPGA接收到启动指令后,控制硬盘mSATA1的电源控制使能信号关闭,控制硬盘mSATA2的电源控制使能信号打开,通过多通道可控电源芯片LTM4644给硬盘mSATA2供电。
[0131] 8)FPGA控制嵌入式控制主板的使能信号关闭后重新打开,通过多通道可控电源芯片LTM4613给嵌入式控制主板供电。
[0132] 9)FPGA控制嵌入式控制主板的电源正常信号关闭后重新打开,此时,嵌入式控制主板从硬盘mSATA2启动。
[0133] 10)嵌入式控制主板正常启动后,硬盘mSATA2上驻留的服务程序通过嵌入式控制主板USB通讯接口发送正常启动信息,经过usb协议转换芯片转换位串口通讯协议,发送给FPGA。
[0134] 11)FPGA接收到启动正常信息后,通过SPI通讯接口发送给MCU芯片。
[0135] 12)MCU接收到启动正常信息后,通过W5500以太网协议转换芯片,将启动正常信息发送给以太网上的远程监控设备。故障切换时的关机流程与正常工作时的关机流程一样的,只是目标盘改变为故障切换后的启动硬盘,在此不在叙述,在这种方案中通过设备部件之间的配合,将硬盘正常启动的信息反馈给远端监控设备,便于对其工作状态进行远程监控,并在其出现问题时及时进行处理,进而保证整合大系统的运行可靠性。
[0136] 在另一种实例中,将第一固态盘作为启动盘的开机流程被配置为包括步骤一、步骤二、步骤五;具体来说,选择SSD盘组(即硬盘组)中mSATA 1作为启动盘时的开机流程为:
[0137] 1)远程监控设备通过100Mpbs以太网控制接口发送启动指令,通过W5500协议转换芯片转换位SPI通讯协议,发送给MCU芯片。
[0138] 2)MCU芯片接收到启动指令后,通过SPI通讯结构发送控制指令到FPGA。
[0139] 3)FPGA接收到启动指令后,控制硬盘mSATA1的电源控制使能信号打开,通过多通道可控电源芯片LTM4644给硬盘mSATA1供电。
[0140] 4)FPGA控制嵌入式控制主板的使能信号打开,通过多通道可控电源芯片LTM4613给嵌入式控制主板供电。
[0141] 5)FPGA控制嵌入式控制主板的电源正常信号打开,此时,嵌入式控制主板从硬盘mSATA1启动。
[0142] 6)嵌入式控制主板正常启动后,硬盘mSATA1上驻留的第一服务程序通过嵌入式控制主板USB通讯接口发送正常启动信息,经过usb协议转换芯片转换为串口通讯协议,发送给FPGA。
[0143] 7)FPGA接收到启动正常信息后,通过SPI通讯接口发送给MCU芯片。
[0144] 8)MCU接收到启动正常信息后,通过w5500以太网协议转换芯片,将启动正常信息发送给以太网上的远程监控设备。
[0145] 将第一固态盘作为启动盘的关机流程被配置为包括:
[0146] 步骤六,以太网协议转换芯片将从远程监控设备接收到的第一关机指令,转换成SPI通信协议下的第二关机指令供MCU接收;
[0147] 步骤七,MCU基于接收到的第二启动指令,服务程序,完成嵌入控制FPGA通过嵌入式控制器上运行的服务程序,完成嵌入式控制器及当前运行固态盘的操作系统关机,嵌入式控制器只包含主板, 固态盘mSATA1和固态盘mSATA1上均安装有操作系统,并驻留有主板厂商提供的服务程序启动程序,跟随操作系统自动启动;
[0148] 步骤八,所述FPGA分别对嵌入式控制器、第一固态盘进行下电操作;
[0149] 步骤九,所述FPGA通过MCU向远程监控设备发送关机完成信息。
[0150] 在另一种实例中,所述步骤六被配置为包括:
[0151] S60,远程监控设备通过100Mpbs以太网接口向硬盘切换装置发送第一关机指令;
[0152] S61,所述硬盘切换装置上的协议转换芯片W5500将接收到到第一关机指令进行转换,得到基于SPI通讯协议能直接与MCU进行数据交换的第二关机指令,并发送给MCU芯片;
[0153] 所述步骤七被配置为包括:
[0154] S70,所述MCU芯片基于接收到的第二关机指令,通过SPI总线发送第二控制指令到FPGA;
[0155] S71,FPGA基于接收到的第二控制指令,通过USB协议转换芯片发送相应的关机指令到嵌入式控制器上运行的服务程序中,该服务程序在给操作系统发送相应关机指令后,发送关机完成指令给FPGA,此处的服务程序是对应启动固态盘上的服务程序,系统启动后加载到主板内存中运行;
[0156] S72,FPGA在接收到服务程序的关机完成指令后,延时2分钟,以保证嵌入式控制器上的操作系统能够正常关闭,同时在确认服务程序无响应后,确定操作系统层面的关机完成,其确定服务程序无响应是通过定时查询服务程序的运行状态,有响应说明服务程序在运行,没有响应说明服务程序已关闭;
[0157] 所述步骤八被配置为包括:
[0158] S80,FPGA在操作系统层面的关机完成后,将嵌入式控制主板的使能信号关闭,并通过多通道可控电源芯片LTM4613对嵌入式控制主板进行下电操作;
[0159] S81,FPGA将第一固态盘mSATA1的电源控制使能信号关闭,并通过多通道可控电源芯片LTM4644对第一固态盘mSATA1进行下电操作;
[0160] S82,FPGA将嵌入式控制主板的电源正常信号进行关闭操作;
[0161] 所述步骤九被配置为包括:
[0162] S90,FPGA发送关机完成状态信息给MCU;
[0163] S91,MCU基于接收到的关机完成信息,通过以太网协议转换芯片将关机完成信息发送给远程监测设备。具体来说,选择SSD盘组中mSATA 1作为启动盘时的关机流程如图4所示,其具体流程包括:
[0164] 1)远程监控设备通过100Mpbs以太网控制接口发送关机指令,通过W5500协议转换芯片转换位SPI通讯协议,发送给MCU芯片。
[0165] 2)MCU芯片接收到关机指令后,通过SPI通讯结构发送控制指令到FPGA。
[0166] 3)FPGA接收到关机指令后,通过USB协议转换芯片发送关机指令到嵌入式控制主板上运行的服务程序。该服务程序给嵌入式控制主板上的操作系统发送关机指令后,发送关机完成指令给FPGA。
[0167] 4)FPGA接收到服务程序关机完成指令后,延时2分钟,保证嵌入式控制主板上的操作系统能够正常关闭,同时确认服务程序无响应后,操作系统层面的关机完成。
[0168] 5)FPGA控制嵌入式控制主板的使能信号关闭,通过多通道可控电源芯片LTM4613给嵌入式控制主板下电。
[0169] 6)FPGA控制硬盘mSATA1的电源控制使能信号关闭,通过多通道可控电源芯片LTM4644给硬盘mSATA1下电。
[0170] 7)FPGA关闭嵌入式控制主板的电源正常信号。
[0171] 8)FPGA发送关机完成状态信息给MCU。
[0172] 9)MCU通过以太网协议转换芯片发送关机完成信息给远程控制设备。
[0173] 采用这种方案只是一种较佳实例的说明,但并不局限于此。在实施本发明时,可以根据使用者需求进行适当的替换和/或修改。
[0174] 这里说明的设备数量和处理规模是用来简化本发明的说明的。对本发明的基于FPGA的硬盘切换装置的应用、修改和变化对本领域的技术人员来说是显而易见的。
[0175] 尽管本发明的实施方案已公开如上,但其并不仅仅限于说明书和实施方式中所列运用。它完全可以被适用于各种适合本发明的领域。对于熟悉本领域的人员而言,可容易地实现另外的修改。因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限于特定的细节和这里示出与描述的图例。