[发明专利]一种基于FPGA的龙芯主板自动复位的装置有效
申请号: | 201110205087.2 | 申请日: | 2011-07-21 |
公开(公告)号: | CN102270028A | 公开(公告)日: | 2011-12-07 |
发明(设计)人: | 王晖;郑臣明;邵宗有;刘新春;杨晓君;王英;柳胜杰;姚文浩;郝志彬;梁发清 | 申请(专利权)人: | 曙光信息产业股份有限公司 |
主分类号: | G06F1/24 | 分类号: | G06F1/24 |
代理公司: | 北京安博达知识产权代理有限公司 11271 | 代理人: | 徐国文 |
地址: | 300384 天津市西青区华*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 fpga 主板 自动 复位 装置 | ||
技术领域
本发明涉及龙芯主板自动复位,具体来说,涉及一种基于FPGA的龙芯主板自动复位的装置。
背景技术
由于loongson3A CPU的设计的缘故,会造成CPU的HT总线与RS780E的HT总线在个别情况下链接不上而出现死机的情况,但是当出现这种情况的时候,复位一下主板,就又能够使其链接上了。
因此为了修复这种硬件的BUG,目前市场上的用loongson3A CPU与AMD RS780E北桥设计的主板会采用一种使用看门狗的方法来实现定时自动复位主板。详细的方法如图1:
这种方法的实现的关键在于要选择一块看门狗电路,看门狗电路,又叫watchdog timer,是一个定时器电路,一般有一个输入,叫喂狗(kicking the dog or service the dog),一个输出到MCU的RST端,MCU正常工作的时候,每隔一端时间输出一个信号到喂狗端,给WDT清零,如果超过规定的时间不喂狗,(一般在程序跑飞时),WDT定时超过,就会给出一个复位信号到MCU,使MCU复位.它的功能是防止MCU死机。
对于图1的工作原理是这样的:当主板一开机,看门狗电路就开始工作了,由于看门狗电路里面有个定时器,那么一上电,定时器就开始计时了,而龙芯3A CPU需要通过自己的GPIO管脚,定时的向看门狗电路发出脉冲波形,让看门狗电路的计时器进行清零操作,而如果CPU与北桥没有连接上的话,那么主板死机,PMON也不会继续执行,因此就不会发出脉冲来对看门狗电路的计时器来进行清零操作,而这样的话,当看门狗计时到一定的时间的时候,就会跟复位电路发出复位的命令,使得复位电路复位整块主板。这样的话就能够解决上述所提的龙芯3A CPU的硬件BUG。
但是这样的方法存在可调性差的问题。首先要选择一块合适的看门狗电路就是一个问题,由于看门狗芯片存在最大计时的问题,因此在选型上就需要关注PMON的程序执行的快慢。这样的话,如果PMON的程序改动了,就很可能会造成以前使用的看门狗就不能用了,因为已经超过了看门狗的最大计时数。
另外看门狗电路的计时器的时间设置是需要使用RC来设置的,这样的话,在调试的时候也不是很方便。同时由于需要让CPU定时的给看门狗电路发出清零信号,这样的话,会占用一些CPU的占用率。
发明内容
为了能够解决看门狗电路实现龙芯3A主板自动复位的可调性差的问题。本发明采用FPGA的方式来实现龙芯主板的自动复位。
一种基于FPGA的龙芯主板自动复位的装置,在龙芯主板上添加了FPGA芯片与复位电路,所述FPGA芯片接收龙芯CPU的GPIO管脚的信号,所述FPGA芯片发送信号给所述复位电路,所述复位电路发送复位信号给龙芯CPU、北桥芯片和南桥芯片。
优选的,龙芯主板启动时,在PMON检查完HT总线是否连接上之后,加载赋值程序对GPIO管脚进行赋值。
优选的,所述赋值程序在HT总线未连接上时,不对GPIO管脚进行操作;在HT总线连接上之后,对GPIO管脚赋值。
优选的,所述FPGA在设定的时间之后开始检测GPIO管脚值。
优选的,所述GPIO管脚值若为0,则FPGA发出信号给复位电路;所述GPIO管脚值若不为0,则FPGA不发出信号。
优选的,所述复位电路在接收到FPGA的信号后,发出复位信号给龙芯CPU,北桥芯片和南桥芯片,进行重启动。
优选的,所述GPIO管脚的初始值为0。
优选的,所述设定的时间是通过程序在FPGA中设定。
本发明的有益效果如下:
1、FPGA调节时间不受限制,相比于看门狗的方法来说,方便性是大大的提高了。
2、由于是用FPGA来实现自动复位,采用的是检测GPIO管脚电平的方法,而对于龙芯3A CPU的GPIO管脚来说,当设置了一个值以后,如果不对其再进行操作的话,会一直保持为这个值。这样的话就能够很好的节省CPU的利用率,而不像使用看门狗的方法,CPU还要定时的发出看门狗清零信号而需要占用CPU的利用率。
附图说明
图1是目前龙芯主板的复位装置
图2是本发明龙芯主板的复位装置
具体实施方式
本发明把目前常用的看门狗电路换成了FPGA来实现,详细的工作原理如下:
本发明利用龙芯3A CPU的GPIO管脚来做文章,由于我们知道龙芯3A的GPIO管脚,在不对其进行任何操作的状态下它是输出为“0”的,因此把龙芯3A的GPIO管脚连接到FPGA上,通过在PMON上在检测完HT是否链接上的程序之后,加上把GPIO管脚赋值的程序,由于FPGA在设置时间上的优越性,因此FPGA通过设置时间(时间的设置需要匹配PMON的执行速度)在什么时候开始检测这个GPIO管脚,如果发现在这时GPIO管脚的值并没有变化,则表明系统死在了HT的链接这一块,这时通过FPGA来把系统重启。这样的话就避免了人为重启的情况。而如果发现这时的GPIO管脚发生了变化,则证明PMON已经执行到这一行的代码了,也就是说HT的链接成功了,则FPGA不对复位电路发出复位信号。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于曙光信息产业股份有限公司,未经曙光信息产业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110205087.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:电极结构及其制造方法
- 下一篇:用于高功率CO2盘形激光镜的粒子损伤保护