CN101241463B - 一种实现fpga监控及恢复的方法 - Google Patents
一种实现fpga监控及恢复的方法 Download PDFInfo
- Publication number
- CN101241463B CN101241463B CN2007100035513A CN200710003551A CN101241463B CN 101241463 B CN101241463 B CN 101241463B CN 2007100035513 A CN2007100035513 A CN 2007100035513A CN 200710003551 A CN200710003551 A CN 200710003551A CN 101241463 B CN101241463 B CN 101241463B
- Authority
- CN
- China
- Prior art keywords
- functional module
- fpga
- chip
- fpga chip
- monitor state
- 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
Images
Landscapes
- Logic Circuits (AREA)
Abstract
本发明涉及FPGA/ASIC芯片技术领域,具体涉及一种实现FPGA监控及恢复的方法包括,步骤1、将FPGA芯片内的各功能模块进行复位;步骤2、读取FPGA芯片内监控寄存器的值,并判断FPGA芯片内的功能模块是否正常,若正常,则写全F到监控寄存器,否则,转入步骤3;步骤3、通过复位接口复位FPGA芯片。本发明在不使用第三方芯片、不用修改系统架构的情况下,通过FPGA芯片实现相应接口逻辑,既提供了系统自我监控的功能,又恢复系统的正常功能,使系统成本大大降低。
Description
技术领域
本发明涉及FPGA/ASIC芯片技术领域,具体涉及一种实现对FPGA芯片的工作状况进行监控及恢复,以增强硬件芯片稳定性的方法。
背景技术
设计有苛刻的实时、时序要求的复杂的高速硬线运算逻辑是一件非常有挑战性的工作。
随着大规模集成电路设计制造业和数字信号处理技术在近30年来的迅速发展,现代专用集成电路的设计,借助于电子电路设计自动化(EDA)工具,也在迅速的发展。从90年代几千门的规模到现在几十上百万门的设计规模。从功能上,很多以前只有软件才能实现的复杂逻辑功能,现在FPGA都能实现。从复杂度看,FPGA所实现逻辑的复杂度可以与软件相比,另外,FPGA还需要保证严格的时序,关注电气特性,这就决定了FPGA逻辑设计与软件编码一样,可能会有异常。
现有芯片设计中,在设计完成并产品化后,因为无法在用户使用的过程检查并发现原有设计中在某些特定情况下会出什么异常,往往在特定环境下出了问题后,其功能便无法使用,使得产品被用户认为稳定性差,以致于返厂维修或退货。此时,需要解决问题的根本原因,但这只是一方面的解决方案,并不能消除功能无法继续使用给用户带来的损失,更无法消除用户对产品极坏的印象,面对这种情况,所有FPGA的设计公司都不得不认真思考其芯片的稳定性问题。因此迫切需要一种发现FPGA异常并恢复到正确状态的方法。
发明内容
为了克服现有技术中存在的问题,本发明提出一种实现FPGA监控及恢复的方法,具体地说,是在FPGA芯片内各功能模块提供可监控的接口,通过相应接口判断FPGA内部逻辑是否有异常,并在发现异常时对FPGA内部逻辑进行恢复的方法。
本发明具体是这样实现的:
一种实现FPGA监控及恢复的方法,FPGA芯片内的每个功能模块对应监控状态寄存器内的1位,每个功能模块在正常工作时,就定时去把监控状态寄存器内对应的位置为0,所述方法具体包括如下步骤:
步骤1、对FPGA芯片内的功能模块查询是否有需要处理的任务,若有,则开始进行相应的处理,否则,将监控寄存器中对应该功能模块的位置为0,进行复位;重复执行该步骤继续下一功能模块的处理,直到将FPGA芯片内的各功能模块进行复位;
步骤2、读取FPGA芯片内监控寄存器的值,判断监控寄存器各位上的值是否为0,如果全为0,则FPGA芯片内各功能模块逻辑功能正常,则写全F到监控寄存器;如果不全为0,则FPGA芯片内有功能模块出现异常,无法正确实现设置的流程,记录相关异常信息,并通过复位接口复位FPGA芯片;
步骤3、在预设时间到达时重复执行步骤2。
所述步骤2中通过复位接口复位FPGA芯片具体为:
在FPGA芯片内设置一复位寄存器,往该寄存器里写1,则FPGA芯片复位。
采用本发明所述方法,其具体效果表现如下:
1、提高了整个系统的稳定性;
2、可记录相关异常信息,帮助以后定位、解决问题;
3、不用专用芯片,即可实现复杂的监控功能,系统成本大大降低;
本发明在不使用第三方芯片、不用修改系统架构的情况下,通过FPGA芯片实现相应接口逻辑,即提供了系统自我监控的功能,又恢复系统的正常功能。
附图说明
图1为本发明所述方法的系统架构图;
图2为本发明所述方法的流程处理图。
具体实施方式
本发明旨在解决在用户现场,通过实时监控,发现芯片的异常,并对其内部逻辑进行恢复,使用户能继续使用该产品实现其功能,本发明所述方法的基本原理如下:
对FPGA/ASIC芯片内的各个功能模块的工作状况相互之间是独立的,一般而言,每个功能模块对应监控状态寄存器内的1位即可,每个功能模块在正常工作时,就定时去把监控状态寄存器内对应的位置为0。若要判断FPGA/ASIC芯片内某个功能模块是否还在正常工作,只需把监控状态寄存器内对应的位置为1,等待足够的时间后,如1分钟,再去读出监控状态寄存器内对应的位,如果读出来是0,说明此功能模块在正常工作,所以把此位清成0了;如果读出来是1,说明此功能模块出现了逻辑异常,未能把此位清成0,所以读出来依然是1。
因此,本发明所述方法具体包括步骤如下:
步骤1、将FPGA/ASIC芯片内的各功能模块进行复位;
步骤2、读取FPGA/ASIC芯片内监控寄存器的值,并判断FPGA/ASIC芯片内的功能模块是否工作正常,若正常,则写全F到监控寄存器,否则,转入步骤3;
步骤3、通过FPGA/ASIC芯片的复位接口复位FPGA/ASIC芯片。
所述步骤1,将FPGA/ASIC芯片内的各功能模块进行复位是这样实现的:
(1)对FPGA/ASIC芯片内的一功能模块查询是否有需要处理的任务,若有,则开始进行相应的处理,具体处理步骤与此功能模块需要实现的功能有关;若无,将监控寄存器中对应该功能模块的位置为0;
(2)跳回(1),继续下一功能模块的处理。
所述步骤2进一步包括:
(1)读取FPGA/ASIC芯片内监控寄存器的值;
(2)判断监控寄存器各位上的值是否为0,如果全为0,则FPGA/ASIC芯片内各功能模块逻辑功能正常,写全F到监控寄存器;如果不全为0,则FPGA有功能模块出现异常,无法正确实现设计的流程,记录相关异常信息,通过FPGA/ASIC复位接口复位FPGA/ASIC,使对应模块恢复正常功能;
(3)过一定的时间后,此时间可根据实际情况确定,可设置为1分钟或更长,再次跳到(1)开始操作。
FPGA/ASIC复位接口实现的功能很简单,就是提供一个复位寄存器,当往该寄存器里写1时,FPGA/ASIC芯片就复位。
Claims (2)
1.一种实现FPGA监控及恢复的方法,其特征在于,FPGA芯片内的每个功能模块对应监控状态寄存器内的1位,每个功能模块在正常工作时,就定时去把监控状态寄存器内对应的位置为0,所述方法具体包括如下步骤:
步骤1、对FPGA芯片内的功能模块查询是否有需要处理的任务,若有,则开始进行相应的处理,否则,将监控状态寄存器中对应该功能模块的位置为0,进行复位;重复执行该步骤继续下一功能模块的处理,直到将FPGA芯片内的各功能模块进行复位;
步骤2、读取FPGA芯片内监控状态寄存器的值,判断监控状态寄存器各位上的值是否为0,如果全为0,则FPGA芯片内各功能模块逻辑功能正常,则写全F到监控状态寄存器;如果不全为0,则FPGA芯片内有功能模块出现异常,无法正确实现设置的流程,记录相关异常信息,并通过复位接口复位FPGA芯片;
步骤3、在预设时间到达时重复执行步骤2。
2.如权利要求1所述的实现FPGA监控及恢复的方法,其特征在于,所述步骤2中通过复位接口复位FPGA芯片具体为:
在FPGA芯片内设置一复位寄存器,往该寄存器里写1,则FPGA芯片复位。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007100035513A CN101241463B (zh) | 2007-02-08 | 2007-02-08 | 一种实现fpga监控及恢复的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007100035513A CN101241463B (zh) | 2007-02-08 | 2007-02-08 | 一种实现fpga监控及恢复的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101241463A CN101241463A (zh) | 2008-08-13 |
CN101241463B true CN101241463B (zh) | 2010-09-01 |
Family
ID=39933006
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007100035513A Active CN101241463B (zh) | 2007-02-08 | 2007-02-08 | 一种实现fpga监控及恢复的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101241463B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111625075A (zh) * | 2020-05-20 | 2020-09-04 | 天津芯海创科技有限公司 | 一种软件可配置的复位装置和方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1540511A (zh) * | 2003-04-26 | 2004-10-27 | 华为技术有限公司 | 一种对寄存器进行巡检校验的方法 |
CN1787410A (zh) * | 2004-12-08 | 2006-06-14 | 中兴通讯股份有限公司 | 一种单板故障检测方法 |
CN1808999A (zh) * | 2006-02-23 | 2006-07-26 | 烽火通信科技股份有限公司 | 信号处理单元cpu故障的检测方法及装置 |
-
2007
- 2007-02-08 CN CN2007100035513A patent/CN101241463B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1540511A (zh) * | 2003-04-26 | 2004-10-27 | 华为技术有限公司 | 一种对寄存器进行巡检校验的方法 |
CN1787410A (zh) * | 2004-12-08 | 2006-06-14 | 中兴通讯股份有限公司 | 一种单板故障检测方法 |
CN1808999A (zh) * | 2006-02-23 | 2006-07-26 | 烽火通信科技股份有限公司 | 信号处理单元cpu故障的检测方法及装置 |
Non-Patent Citations (1)
Title |
---|
JP特開2000-148532A 2000.05.30 |
Also Published As
Publication number | Publication date |
---|---|
CN101241463A (zh) | 2008-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111684292A (zh) | 集成电路焊盘故障检测 | |
CN102782655A (zh) | 微机相互监视系统及微机相互监视方法 | |
CN101241463B (zh) | 一种实现fpga监控及恢复的方法 | |
US20170220416A1 (en) | Segmented Error Coding for Block-Based Memory | |
CN114611439A (zh) | 一种降低电路动态功耗的方法 | |
CN108830306A (zh) | 业务数据的工作流故障诊断方法与装置、介质和电子设备 | |
CN104657239A (zh) | 基于分离式日志的多核处理器瞬时故障恢复系统及其瞬时故障恢复方法 | |
CN102681928A (zh) | 计算机系统的异常信息输出系统 | |
US7590901B2 (en) | Apparatus, system, and method for dynamic recovery and restoration from design defects in an integrated circuit | |
CN104615948A (zh) | 一种自动识别文件完整性与恢复的方法 | |
US7415685B2 (en) | Method of verifying the power off effect of a design entity at register transfer level and method of modeling the power off effect | |
US11249872B1 (en) | Governor circuit for system-on-chip | |
US7793150B1 (en) | System, method, and computer program product for saving an unprocessed portion of a push buffer in response to an error | |
CN106940684B (zh) | 一种按比特写数据的方法及装置 | |
CN113592830A (zh) | 一种图像缺陷检测方法、装置及存储介质 | |
CN101944035A (zh) | 一种计算机系统一键恢复的方法 | |
CN100530119C (zh) | 同步监控提供辅助基本输入/输出系统码的方法及相关装置 | |
US20080282069A1 (en) | Method and system for designing a flexible hardware state machine | |
TWI396857B (zh) | 晶片測試電路 | |
US6993468B2 (en) | Recognizing signals in design simulation | |
US11449383B2 (en) | Methods for providing and identifying fatal error information for system-on-chip product | |
Swarna et al. | Design of fault tolerant multiplier using self checking adder and gdi technique | |
EP4209793A1 (en) | Signal toggling detection and correction circuit | |
TWI254883B (en) | Method and system for checking the bios rom data | |
US20060282250A1 (en) | Logic simulation method and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |