CN111008099B - 自我检测系统及其方法 - Google Patents

自我检测系统及其方法 Download PDF

Info

Publication number
CN111008099B
CN111008099B CN201811473176.3A CN201811473176A CN111008099B CN 111008099 B CN111008099 B CN 111008099B CN 201811473176 A CN201811473176 A CN 201811473176A CN 111008099 B CN111008099 B CN 111008099B
Authority
CN
China
Prior art keywords
circuit
program
check
processing unit
self
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
Application number
CN201811473176.3A
Other languages
English (en)
Other versions
CN111008099A (zh
Inventor
黄致恺
朱炳盈
杨智显
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nuvoton Technology Corp
Original Assignee
Nuvoton Technology Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nuvoton Technology Corp filed Critical Nuvoton Technology Corp
Publication of CN111008099A publication Critical patent/CN111008099A/zh
Application granted granted Critical
Publication of CN111008099B publication Critical patent/CN111008099B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test methods
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/282Testing of electronic circuits specially adapted for particular applications not provided for elsewhere
    • G01R31/2827Testing of electronic protection circuits
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/2801Testing of printed circuits, backplanes, motherboards, hybrid circuits or carriers for multichip packages [MCP]
    • G01R31/2803Testing of printed circuits, backplanes, motherboards, hybrid circuits or carriers for multichip packages [MCP] by means of functional tests, e.g. logic-circuit-simulation or algorithms therefor
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/2801Testing of printed circuits, backplanes, motherboards, hybrid circuits or carriers for multichip packages [MCP]
    • G01R31/281Specific types of tests or tests for a specific type of fault, e.g. thermal mapping, shorts testing
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K7/00Modulating pulses with a continuously-variable modulating signal
    • H03K7/08Duration or width modulation ; Duty cycle modulation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M1/00Analogue/digital conversion; Digital/analogue conversion
    • H03M1/12Analogue/digital converters

Abstract

本发明提出一种自我检测系统及其方法。在自我检测系统中,存储器储存一安全检查程序、一主应用程序以及一预设核对和数据。安全检查程序包含一电路检查程序、一监视电路重置程序以及一核对和检查程序。当芯片系统上电后,处理单元执行主应用程序,并执行中断呼叫以产生一中断,藉此执行安全检查程序,并执行电路检查程序以检查至少一待检查电路,且处理单元亦执行监视电路重置程序,以重置监视电路的计数值;处理单元亦执行核对和检查程序以计算第一安全检查程序的核对和数据,而当所计算的核对和数据不等于预设核对和数据,则设定一错误旗标以通知主应用程序或重启动芯片系统。

Description

自我检测系统及其方法
技术领域
本发明有关于一种检测系统,特别是有关于一种能确保微控制芯片能自我检测的系统及其方法。
背景技术
如果控制功率的微控制芯片出现误动作或是功能失效,容易产生过大电流而造成危险,例如烧毁、起火或是爆炸,因此,目前业界有相关组织便规范一安全检测标准,例如IEC60730,并要求此种微控制芯片的业者在出货之前必须提供芯片符合此标准的证明,例如,业者必须提供微控制器内程序的内容细节以及执行过程描述,以确保微控制芯片在运作时能定期检查系统的重要电路,以确保有电路出现问题时微控制芯片能及时停止运作,避免危险发生。
由于每一次软体更新或是硬件更新,业者就必须重新提供微控制器内程序的内容细节以及执行过程描述,此造成业者不小的负担。因此,如何设计一种自我检测系统能确保微控制芯片在运行中能定期执行安全检查程序,且安全检测标准规范组织也能容易检查,是一项亟待解决的问题。
发明内容
为解决上述问题,本发明提出一种自我检测系统,适用于一芯片系统。芯片系统包含至少一待检查电路以及一重启动电路。自我检测系统包含一存储器、一监视电路以及一处理单元。存储器储存一第一安全检查程序、一主应用程序以及一预设核对和数据。第一安全检查程序包含一电路检查程序、一监视电路重置程序以及一核对和检查程序。主应用程序包含一中断呼叫。预设核对和数据对应该第一安全检查程序。监视电路包含一计数值,而监视电路启动后便开始累加该计数值,并于计数值溢位(overflow)时触发重启动电路以重启动芯片系统。当芯片系统上电后,处理单元执行主应用程序,并执行中断呼叫以产生一中断,藉此执行第一安全检查程序。当处理单元执行第一安全检查程序时,处理单元执行电路检查程序以检查该至少一待检查电路。当处理单元执行第一安全检查程序时,处理单元执行监视电路重置程序,以重置监视电路的计数值。当处理单元执行第一安全检查程序时,处理单元执行核对和检查程序以计算第一安全检查程序的一核对和数据,而当所计算的核对和数据不等于预设核对和数据,则处理单元触发重启动电路以重启动芯片系统或通知该主应用程序。
在一实施例中,自我检测系统还包含具有一执行旗标的一暂存器。第一安全检查程序还包含一旗标清除程序,主应用程序还包含一第二安全检查程序以及一旗标设定程序。当处理单元执行主应用程序时,处理单元执行第二安全检查程序以检查至少一待检查电路,并执行旗标设定程序以设定暂存器的执行旗标。当处理单元执行第一安全检查程序时,处理单元执行旗标清除程序,以检查执行旗标是否已经被设定。
在一实施例中,当处理单元执行旗标清除程序且确认执行旗标未被设定,则处理单元触发重启动电路以重启动芯片系统。
在一实施例中,当处理单元执行旗标清除程序且确认执行旗标已经被设定,则清除执行旗标。
在一实施例中,存储器区分为一预设保留区以及一应用程序区,第一安全检查程序储存在预设保留区,而主应用程序储存在应用程序区。
在一实施例中,至少一待检查电路包含一系统时脉电路,自我检测系统检查系统时脉电路输出的一时脉信号是否准确。
在一实施例中,至少一待检查电路包含一模拟转数字转换电路,自我检测系统检查模拟转数字转换电路的一输出数字值是否准确。
在一实施例中,至少一待检查电路包含一脉冲宽度调制电路,自我检测系统检查脉冲宽度调制电路输出的一脉冲宽度调制信号是否准确。
在一实施例中,当至少一待检查电路未通过检查,则处理单元触发重启动电路以重启动芯片系统。
为解决上述问题,本发明再提出一种自我检测方法,适用于一芯片系统。芯片系统包含至少一待检查电路以及一重启动电路。自我检测方法包含下列步骤:在一存储器中储存一第一安全检查程序、一主应用程序以及一预设核对和(checksum)数据,其中第一安全检查程序包含一电路检查程序、一监视电路重置程序以及一核对和检查程序,主应用程序包含一中断呼叫,而预设核对和数据对应第一安全检查程序;设置一监视电路,当芯片系统上电后,启动监视电路开始计数;当芯片系统上电后,执行主应用程序,并执行中断呼叫以产生一中断,藉此执行第一安全检查程序,以执行电路检查程序以检查至少一待检查电路,并执行监视电路重置程序以重置监视电路的一计数值,并执行核对和检查程序以产生第一安全检查程序的一核对和数据,且当所计算的核对和数据不等于预设核对和数据,触发重启动电路以重启动芯片系统。
在一实施例中,本发明的自我检测方法还包含提供具有一执行旗标的一暂存器,其中该第一安全检查程序还包含一旗标清除程序,主应用程序还包含一第二安全检查程序以及一旗标设定程序,当该主应用程序执行时,第二安全检查程序执行以检查该至少一待检查电路,并执行旗标设定程序以设定该暂存器的该执行旗标,而当该第一安全检查程序执行时,旗标清除程序执行以检查该执行旗标是否已经被设定。
关于本发明的优点与精神可以通过以下的发明详述及所附图式得到进一步的了解。
附图说明
图1绘示本发明的自我检测系统的一实施例的一结构示意图。
图2绘示本发明的自我检测方法的一实施例的一步骤流程图。
图3绘示本发明的自我检测系统的另一实施例的一结构示意图。
图4绘示本发明的自我检测系统的一系统时脉电路进行检测的示意图。
图5绘示本发明的自我检测系统的一模拟转数字转换电路进行检测的示意图。
图6绘示本发明的自我检测系统的一脉冲宽度调制电路进行检测的示意图。
图7绘示本发明的自我检测方法的另一实施例的一步骤流程图。
附图标号:
10:存储器
101:预设核对和(checksum)数据
11:安全检查程序
111:电路检查程序
112:监视电路重置程序
113:核对和检查程序
13:主应用程序
131:中断呼叫
18:主应用程序
181:中断呼叫
182:第二安全检查程序
183:旗标(flag)设定程序19:第一安全检查程序
191:电路检查程序
192:监视电路重置程序
193:核对和检查程序
194:旗标清除程序
20:处理单元
201:计数值重置信号
202:触发信号
30:待检查电路
31:系统时脉电路
32:模拟转数字转换电路
33:脉冲宽度调制电路
40:监视电路
401:计数值
402:触发信号
50:重启动电路
60:暂存器
601:执行旗标
70:计数器
701、702:时脉信号
703:计数值
704:时脉误差值
71:比较单元
711:预设计数值
80:模拟转数字转换器
801、802、803:输出数字值
804:输出数字误差值
81:比较单元
811、812、813:预设数字值
82:开关
90:取样电路
901:第一取样值
902:第二取样值
903:第三取样值
904:第四取样值
91:闩锁时间
S10~S16、S40~S49:步骤
具体实施方式
以下将配合图式及实施例来详细说明本发明的实施方式,藉此对本发明如何应用技术手段来解决技术问题并达成技术功效的实现过程能充分理解并据以实施。
在特定芯片的应用领域,例如是控制功率的微控制芯片,如果芯片出现误动作或是功能失效,容易产生过大电流而造成危险,因此,目前业界有相关组织规范一安全检测标准,例如IEC60730,并要求此种微控制芯片的业者在出货之前必须提供芯片符合此标准的证明,例如,业者必须提供微控制器内程序的内容细节以及执行过程描述,以确保微控制芯片在运作时能定期检查系统环境,以确保有电路出现问题时微控制芯片能及时停止运作,避免危险发生。
本发明的自我检测系统是为了确保安全检查程序储存在存储器中且芯片系统运作时能定期执行安全检查程序。
请参阅图1,其绘示本发明的自我检测系统的一实施例的一结构示意图。本发明的自我检测系统适用于一芯片系统,其包含至少一待检查电路30以及一重启动电路50。自我检测系统包含一存储器10、一监视电路40、以及一处理单元20。
存储器10储存一安全检查程序11、一主应用程序13以及一预设核对和数据101。在一实施例中,存储器10可为一非易失存储器,例如一快闪存储器(flash memory)或是一电子擦洗式可多次写入只读存储器(EEPROM)。安全检查程序11可包含一电路检查程序111、一监视电路(watchdog circuit)重置程序112以及一核对和(checksum)检查程序113。安全检查程序11的储存位置对应于一硬件中断(interrupt),例如IRQ 10,因此当处理单元20接收到此硬件中断后便会执行安全检查程序11。
主应用程序13包含一中断呼叫(interrupt call)131以及一主功能程序。一般而言,当芯片系统上电后,处理单元20执行主应用程序13以提供芯片系统的主要功能;而在本发明的自我检测系统中,则要求主应用程序13包含中断呼叫,例如IRQ 10,使得处理单元20执行主应用程序13时能定期接收到特定硬件中断,让处理单元20能执行安全检查程序11。
预设核对和数据101对应安全检查程序11,亦即,使用者可以事先计算安全检查程序11的核对和(checksum),将其储存于存储器10中做为此预设核对和数据101。核对和数据的计算以及检查为此领域的技术人员所熟知,所以其技术细节在此不再赘述。
监视电路40可用一计时电路硬件实现,监视电路40包含一计数值401。监视电路40启动后便开始累加计数值401,并于于计数值401溢位时产生一触发信号;如果要避免产生触发信号,监视电路40的计数值401必须定期重置或归零。在本发明的自我检测系统中,监视电路40的触发信号402用以触发重启动电路50,以重启动芯片系统;或者,在一实施例中,可以设定一错误旗标以通知主应用程序131。
当芯片系统上电后,该处理单元20执行该主应用程序13,并执行该中断呼叫131以产生中断,藉此执行安全检查程序11。当处理单元20执行安全检查程序11时,处理单元20可执行电路检查程序111以检查至少一待检查电路30,且处理单元20也执行监视电路重置程序112,产生计数值重置信号201,以重置监视电路40的计数值401。
因此,如果主应用程序13没有定期产生中断以执行安全检查程序11以及监视电路重置程序112,则监视电路40会溢位而产生触发信号402至重启动电路50,重新启动芯片系统;而此,每次芯片系统重新启动,又会因为监视电路40溢位而再次重启动,此机制会让没有定期执行安全检查程序11的芯片系统无法运作。
当处理单元20执行安全检查程序11时,处理单元20也执行核对和检查程序113以计算安全检查程序11的核对和数据。当所计算的核对和数据不等于预设核对和数据101时,则处理单元20产生触发信号202,以触发重启动电路50重新启动芯片系统;在一实施例中,处理单元20可以设定一错误旗标以通知主应用程序131。
在微控制芯片的产业中主要有微控制芯片制造商以及应用开发商,微控制芯片制造商提供微控制芯片、基础驱动程序以及安全检查程序,应用开发商会开发应用程序烧录到微控制芯片中。因此,如何确认应用开发商有确实将安全检查程序烧录到微控制芯片,以及让安全检测标准组织能容易地确认微控制芯片内有烧录安全检查程序,是确保芯片系统安全的关键。
因此,微控制芯片制造商提供安全检查程序的预设核对和数据101给应用开发商以及安全检测标准组织,如果应用开发商没有储存预设核对和数据101到存储器10的预设位置,则核对和检查程序113会判断所计算的核对和数据不等于预设核对和数据101,而处理单元20触发重启动电路50以重启动该芯片系统,藉此让没有烧录安全检查程序11的芯片系统无法运作;在一实施例中,处理单元20可以设定一错误旗标以通知主应用程序131,以进行相对应的措施。再者,安全检测标准组织也能检查存储器10的预设位置有无储存预设核对和数据101,藉此容易地确认微控制芯片内有烧录安全检查程序。
在一实施例中,至少一待检查电路30可包含一系统时脉电路31,自我检测系统可检查系统时脉电路31输出的一时脉信号是否准确;至少一待检查电路30亦可包含一模拟转数字转换电路32,自我检测系统可检查模拟转数字转换电路32的一输出数字值是否准确;至少一待检查电路30亦可包含一脉冲宽度调制电路33,自我检测系统可检查脉冲宽度调制电路33输出的一脉冲宽度调制信号是否准确。当至少一待检查电路30未通过检查,则处理单元20产生触发信号202以触发重启动电路50,重启动该芯片系统。上述检查的细节会在后面段落描述。
请参阅图2,其绘示本发明的自我检测方法的一实施例的一步骤流程图。自我检测方法适用于芯片系统,例如图1所示的芯片系统。此外,自我检测方法可用图1所示的自我检测系统来执行。图中,自我检测方法包含步骤S11至S16。
在步骤S10,在存储器10中储存安全检查程序11、主应用程序13以及预设核对和数据101,安全检查程序11包含电路检查程序111、监视电路重置程序112、以及核对和检查程序113。主应用程序13包含一中断呼叫131。预设核对和数据101对应安全检查程序11。
在步骤S11,设置一监视电路40,当芯片系统上电后,启动监视电路40开始计数。在步骤S12,当该芯片系统上电后,执行该主应用程序13,并执行该中断呼叫131以产生一中断,以执行该第一安全检查程序19。
在步骤S13,执行核对和检查程序113以产生第一安全检查程序19的核对和数据,并判断所计算的核对和数据是否等于预设核对和数据101。当所计算的核对和数据不等于预设核对和数据101,则执行步骤S16,触发重启动电路50以重启动芯片系统;在一实施例中,步骤S16可包含设定一错误旗标以通知主应用程序131。当所计算的核对和数据等于预设核对和数据101,则继续执行后续步骤。
在步骤S14,执行监视电路重置程序112以重置监视电路40的一计数值401。在步骤S15,执行电路检查程序111以检查至少一待检查电路30,当至少一待检查电路30未通过检查,则执行步骤S16,触发该重启动电路50以重启动芯片系统。
透过使用本发明的自我检测方法,如果应用开发商没有储存预设核对和数据101到存储器10的预设位置,则核对和检查程序113会判断所计算的核对和数据不等于预设核对和数据101,而处理单元20触发重启动电路50以重启动该芯片系统,藉此让没有烧录安全检查程序11的芯片系统无法运作。再者,安全检测标准组织也能检查存储器10的预设位置有无储存预设核对和数据101,藉此容易地确认微控制芯片内有烧录安全检查程序。另外,如果主应用程序13没有定期产生中断以执行安全检查程序11以及监视电路重置程序112,则监视电路40会溢位而产生触发信号402至重启动电路50,重新启动芯片系统;而此,每次芯片系统重新启动,又会因为监视电路40溢位而再次重启动,此机制会让没有定期执行安全检查程序11的芯片系统无法运作。
因此,本发明的自我检测方法可确保芯片系统内具有安全检查程序11且芯片系统运行时会定期执行安全检查程序11,否则芯片系统就不能运行。
请参阅图3,其绘示本发明的自我检测系统的另一实施例的一结构示意图。在此实施例中,自我检测系统包含一存储器、一监视电路40、一处理单元20以及一暂存器60。存储器储存一第一安全检查程序19、一主应用程序18以及一预设核对和数据101。第一安全检查程序19包含一电路检查程序191、一监视电路重置程序192、一核对和检查程序193以及一旗标清除程序194。主应用程序18包含一第二安全检查程序182、一旗标设定程序183以及一中断呼叫181。预设核对和数据101对应该第一安全检查程序19。
在此实施例中,存储器可区分成一预设保留区(SPROM)以及一应用程序区(APROM)。预设保留区主要储存芯片系统的基本程序码,例如驱动程序码;而应用开发商所开发的程序可储存于应用程序区。在此实施例中,第一安全检查程序19可储存在预设保留区,而主应用程序13可储存在应用程序区。芯片系统包含一系统时脉电路31、一模拟转数字转换电路32、以及一脉冲宽度调制(PWM)电路33。
与前一实施例不同之处在于此实施例的安全检查程序分成第一安全检查程序19以及第二安全检查程序182,而芯片系统还包含一暂存器以确认第二安全检查程序182是否执行。在实际应用上,微控制芯片商可以开发第一安全检查程序19,其提供基本的安全检查;而应用开发商可在开发第二安全检查程序182,以对应其开发的应用程序提供安全检查。或者,如果微控制芯片商开发的安全检查程序过大而无法全部储存在预设保留区,则可以把安全检查程序分成第一安全检查程序19以及第二安全检查程序182,分别储存在预设保留区以及应用程序区。
当芯片系统上电后,处理单元20执行该主应用程序18,并执行该中断呼叫181以产生中断,藉此执行第一安全检查程序19。当处理单元20执行第一安全检查程序19时,处理单元20可执行电路检查程序191以检查至少一待检查电路30,且处理单元20也执行监视电路重置程序192以及核对和检查程序193,其运作方式与图1所示的一实施例相同,所以在此不再赘述。
此外,当处理单元20执行第一安全检查程序19时,处理单元20也会执行到旗标清除程序194以确认执行旗标601是否被设定,例如设定成“1”;若否,则处理单元20触发重启动电路50以重启动该芯片系统;或者,在一实施例中,处理单元20可设定一错误旗标以通知主应用程序131。当处理单元20执行旗标清除程序194且确认执行旗标601已经被设定,例如设定成“1”,则处理单元20清除执行旗标601,例如设定成“0”。
当处理单元20执行主应用程序18时,处理单元20会执行第二安全检查程序182以检查系统时脉电路31、模拟转数字转换电路32以及脉冲宽度调制(PWM)电路33,并执行旗标设定程序183以设定暂存器60的执行旗标601,例如设定成“1”。
藉此,在此实施例中,处理单元20执行第一安全检查程序19时,可确认执行旗标601是否设定成1,以判断第二安全检查程序182是否被执行。在实际应用时,即使第一安全检查程序19以及第二安全检查程序182有被烧录到存储器中,但是存储器经过长时间使用后仍会有损坏,而导致第二安全检查程序182无法执行。所以需要上述机制来确保如果第二安全检查程序182没有被执行,则芯片系统能及时停止运行。
请参阅图4,其绘示本发明的自我检测系统的一系统时脉电路进行检测的示意图。图中,系统时脉电路31可产生至少二时脉信号701与702。为了避免时脉信号701与702的频率改变(因为环境因素或是系统时脉电路损坏)造成芯片系统运作错误,本发明的自我检测系统可定期检查时脉信号701与702的频率是否维持在一定比例。在图4中,计数器70可接收时脉信号701与702,并以较高频率的时脉信号作为计数参考信号,例如,时脉信号701为1Mhz,而时脉信号702为48Mhz,则计数器70使用时脉信号702作为计数参考信号,对时脉信号701进行计数。
由于时脉信号701与702预设成一比例,所以用时脉信号702对时脉信号701进行计数可得到一计数值703,而比较单元71比较计数值703与预设计数值711,当计数值703与预设计数值711之间的差异大于一门槛值,处理单元20判断时脉信号701与702的频率改变过大,便产生触发信号202至重启动电路50,重新启动芯片系统;或者,在一实施例中,处理单元20可设定一错误旗标以通知主应用程序131,以进行相对应的措施。
请参阅图5,其绘示本发明的自我检测系统的一模拟转数字转换电路进行检测的示意图。为了检测模拟转数字转换电路32的功能是否正常,自我检测系统可包含两个电阻R以及一开关82,用以分别输入电压到模拟转数字转换器80,再由比较单元81比较模拟转数字转换器80输出的输出数字值801~803与预设数字值811~813,以产生一输出数字误差值804。例如,两个电阻R可串联在5V以及接地之间,则两电阻R之间的接点上电压为2.5V,所以模拟转数字转换器80输出的输出数字值801~803分别对应5V、2.5V以及0V,预设数字值811~813也是分别对应5V、2.5V以及0V。当输出数字值801~803与预设数字值811~813之间的差异大于一门槛值,则处理单元20判断模拟转数字转换电路32的功能错误,便产生触发信号202至重启动电路50,重新启动芯片系统。
请参阅图6,其绘示本发明的自我检测系统的一脉冲宽度调制电路进行检测的示意图。脉冲宽度调制电路进行检测时,取样电路90产生预设的取样信号对芯片系统的脉冲宽度调制进行取样,且每个取样信号会闩锁一闩锁时间91,以分别取得第一取样值901、第二取样值902、第三取样值903以及第四取样值904。处理单元20再判断第一取样值901、第二取样值902、第三取样值903以及第四取样值904是否与预设图样相同。若不同,则处理单元20判断脉冲宽度调制电路的功能错误,便产生触发信号202至重启动电路50,重新启动芯片系统。
请参阅图7,其绘示本发明的自我检测方法的另一实施例的一步骤流程图。自我检测方法适用于芯片系统,例如图3所示的芯片系统。此外,自我检测方法可用图3所示的自我检测系统来执行。图中,自我检测方法包含步骤S40至S49。在步骤S40,在一存储器10中储存一第一安全检查程序19、一主应用程序18以及一预设核对和数据101,第一安全检查程序19包含一电路检查程序191、一监视电路重置程序192、一核对和检查程序193以及旗标清除程序194。主应用程序13包含一中断呼叫131,该预设核对和数据101对应该第一安全检查程序19。
在步骤S41,设置一监视电路40,当芯片系统上电后,启动监视电路40开始计数。
在步骤S42,当该芯片系统上电后,执行该主应用程序13,并执行该中断呼叫131以产生一中断,以执行第一安全检查程序19。在步骤S43,执行核对和检查程序193以产生第一安全检查程序19的核对和数据,并判断所计算的核对和数据是否等于预设核对和数据101。当所计算的核对和数据不等于预设核对和数据101,则执行步骤S49,触发重启动电路50以重启动芯片系统;在一实施例中,步骤S49可包含设定一错误旗标以通知主应用程序131。当所计算的核对和数据等于预设核对和数据101,则继续执行后续步骤。
在步骤S44,执行监视电路重置程序112以重置监视电路40的一计数值401。在步骤S45,执行旗标清除程序194以确认执行旗标601是否被设定,例如设定成“1”;若否,执行步骤S49,触发重启动电路50以重启动芯片系统。当执行旗标清除程序194且确认执行旗标601已经被设定,例如设定成“1”,则清除执行旗标601,例如设定成“0”。
在步骤S46,执行电路检查程序191以检查至少一待检查电路,例如系统时脉电路31、模拟转数字转换电路32、或是脉冲宽度调制电路。当上述任一待检查电路未通过检查,则执行步骤S49,触发重启动电路50以重启动芯片系统。当待检查电路都通过检查,则执行步骤47。
在步骤S47,执行第二安全检查程序182以检查至少一待检查电路,例如系统时脉电路31、模拟转数字转换电路32、或是脉冲宽度调制(PWM)电路。当上述任一待检查电路未通过检查,则执行步骤S49,触发重启动电路50以重启动芯片系统;在一实施例中,步骤S49可包含设定一错误旗标以通知主应用程序131。当待检查电路都通过检查,则执行步骤48,执行旗标设定程序183,以设定执行旗标601,例如设定成“1”。
应注意的是,在步骤S46以及步骤S47中分别执行第一安全检查程序19以及第二安全检查程序182对待检查电路进行检查,如果待检查电路包含多个电路,例如系统时脉电路31、模拟转数字转换电路32、或是脉冲宽度调制(PWM)电路,或是检查所需时间较长,则系统设计者可适当地把检查程序分配到第一安全检查程序19以及第二安全检查程序182,本发明不限于如何分配。再者,如果一次完整检查所需时间较长,为了必须芯片系统的正常运作,则系统设计者可把一次完整检查分成多次的部分检查,通过多次执行第一安全检查程序19以及第二安全检查程序182进行多次的部分检查,来完成一次完整检查。
虽然本发明以前述的实施例揭露如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的改动与润饰,因此本发明的专利保护范围须视权利要求所界定者为准。

Claims (11)

1.一种自我检测系统,其特征在于,适用于一芯片系统,所述芯片系统包含至少一待检查电路以及一重启动电路,所述自我检测系统包含:
一存储器,储存一第一安全检查程序、一主应用程序以及一预设核对和数据,所述第一安全检查程序包含一电路检查程序、一监视电路重置程序以及一核对和检查程序,所述主应用程序包含一中断呼叫,所述预设核对和数据对应所述第一安全检查程序;
一监视电路,包含一计数值,其中所述监视电路启动后便开始累加所述计数值,并于所述计数值溢位时触发所述重启动电路以重启动所述芯片系统;
一处理单元,当所述芯片系统上电后,所述处理单元执行所述主应用程序,并执行所述中断呼叫以产生一中断,藉此执行所述第一安全检查程序;
其中当所述处理单元执行所述第一安全检查程序时,所述处理单元执行所述电路检查程序以检查所述至少一待检查电路;
其中当所述处理单元执行所述第一安全检查程序时,所述处理单元执行所述监视电路重置程序,以重置所述监视电路的所述计数值;
其中当所述处理单元执行所述第一安全检查程序时,所述处理单元执行所述核对和检查程序以计算所述第一安全检查程序的一核对和数据,当所计算的所述核对和数据不等于所述预设核对和数据,则所述处理单元触发所述重启动电路以重启动所述芯片系统或通知所述主应用程序。
2.如权利要求1所述的自我检测系统,其特征在于,还包含具有一执行旗标的一暂存器,其中所述第一安全检查程序还包含一旗标清除程序,所述主应用程序还包含一第二安全检查程序以及一旗标设定程序,当所述处理单元执行所述主应用程序时,所述处理单元执行所述第二安全检查程序以检查所述至少一待检查电路,并执行所述旗标设定程序以设定所述暂存器的所述执行旗标,而当所述处理单元执行所述第一安全检查程序时,所述处理单元执行所述旗标清除程序,以检查所述执行旗标是否已经被设定。
3.如权利要求2所述的自我检测系统,其特征在于,当所述处理单元执行所述旗标清除程序且确认所述执行旗标未被设定,则所述处理单元触发所述重启动电路以重启动所述芯片系统。
4.如权利要求2所述的自我检测系统,其特征在于,当所述处理单元执行所述旗标清除程序且确认所述执行旗标已经被设定,则清除所述执行旗标。
5.如权利要求2所述的自我检测系统,其特征在于,所述存储器区分为一预设保留区以及一应用程序区,所述第一安全检查程序储存在所述预设保留区,而所述主应用程序储存在所述应用程序区。
6.如权利要求1所述的自我检测系统,其特征在于,所述至少一待检查电路包含一系统时脉电路,所述自我检测系统检查所述系统时脉电路输出的一时脉信号是否准确。
7.如权利要求1所述的自我检测系统,其特征在于,至少一待检查电路包含一模拟转数字转换电路,所述自我检测系统检查所述模拟转数字转换电路的一输出数字值是否准确。
8.如权利要求1所述的自我检测系统,其特征在于,至少一待检查电路包含一脉冲宽度调制电路,所述自我检测系统检查所述脉冲宽度调制电路输出的一脉冲宽度调制信号是否准确。
9.如权利要求1所述的自我检测系统,其特征在于,当至少一待检查电路未通过检查,则所述处理单元触发所述重启动电路以重启动所述芯片系统或通知所述主应用程序。
10.一种自我检测方法,其特征在于,适用于一芯片系统,所述芯片系统包含至少一待检查电路以及一重启动电路,所述自我检测方法包含:
在一存储器中储存一第一安全检查程序、一主应用程序以及一预设核对和数据,其中所述第一安全检查程序包含一电路检查程序、一监视电路重置程序以及一核对和检查程序,所述主应用程序包含一中断呼叫,所述预设核对和数据对应所述第一安全检查程序;
设置一监视电路,当所述芯片系统上电后,启动所述监视电路开始计数;
当所述芯片系统上电后,执行所述主应用程序,并执行所述中断呼叫以产生一中断,藉此执行所述第一安全检查程序,以执行所述电路检查程序以检查所述至少一待检查电路,并执行所述监视电路重置程序以重置所述监视电路的一计数值,并执行核对和检查程序以产生所述第一安全检查程序的一核对和数据,且当所计算的所述核对和数据不等于所述预设核对和数据,触发所述重启动电路以重启动所述芯片系统。
11.如权利要求10所述的自我检测方法,其特征在于,还包含:
提供具有一执行旗标的一暂存器,其中所述第一安全检查程序还包含一旗标清除程序,所述主应用程序还包含一第二安全检查程序以及一旗标设定程序,当所述主应用程序执行时,所述第二安全检查程序执行以检查所述至少一待检查电路,并执行所述旗标设定程序以设定所述暂存器的所述执行旗标,而当所述第一安全检查程序执行时,所述旗标清除程序执行以检查所述执行旗标是否已经被设定。
CN201811473176.3A 2018-10-08 2018-12-04 自我检测系统及其方法 Active CN111008099B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW107135449 2018-10-08
TW107135449A TWI679529B (zh) 2018-10-08 2018-10-08 自我檢測系統及其方法

Publications (2)

Publication Number Publication Date
CN111008099A CN111008099A (zh) 2020-04-14
CN111008099B true CN111008099B (zh) 2023-03-10

Family

ID=69582389

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811473176.3A Active CN111008099B (zh) 2018-10-08 2018-12-04 自我检测系统及其方法

Country Status (3)

Country Link
US (1) US10890616B2 (zh)
CN (1) CN111008099B (zh)
TW (1) TWI679529B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114996061A (zh) * 2022-05-10 2022-09-02 厦门荣汇源科技有限公司 处理器及其自检方法、系统、存储器及智能点灯单元
TWI819957B (zh) * 2023-02-02 2023-10-21 新唐科技股份有限公司 上電初始化自我檢查裝置與方法以及使用其之電子設備

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI266065B (en) * 2005-05-18 2006-11-11 Via Tech Inc Chip capable of testing itself and testing method thereof
TW200847183A (en) * 2007-05-16 2008-12-01 Inventec Corp Method for controlling clock of memory slots
TW201015296A (en) * 2008-10-09 2010-04-16 Inventec Corp Method for auto-testing environment variable setting
CN102053888A (zh) * 2009-10-27 2011-05-11 英业达股份有限公司 运算装置的自我检测方法与系统
EP2843429A1 (en) * 2013-09-03 2015-03-04 Telefonaktiebolaget L M Ericsson (Publ) Enabling secured debug of an integrated circuit
CN105487956A (zh) * 2014-10-09 2016-04-13 纬创资通股份有限公司 开机自我测试中的除错方法及开机自我测试中的除错装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6028545A (en) * 1997-12-23 2000-02-22 Industrial Technology Research Institute Muti-bit successive-approximation analog-to-digital converter with improved conversion speed
TW381373B (en) * 1997-12-31 2000-02-01 Ind Tech Res Inst Virtual two-phase current mode analog-digital converter
US6445329B1 (en) * 2000-10-17 2002-09-03 Ati International Srl High speed analog to digital converter
US7761764B2 (en) * 2007-01-12 2010-07-20 Samsung Electronics Co., Ltd. System and method for self-test of integrated circuits
TWI459294B (zh) * 2011-03-18 2014-11-01 Phoenix Tech Ltd Bios程式的更新方法與其電腦系統
TWI441081B (zh) * 2011-11-04 2014-06-11 Asrock Inc 更新韌體方法與開機方法及使用其之電子裝置
US10223531B2 (en) * 2016-12-30 2019-03-05 Google Llc Secure device state apparatus and method and lifecycle management

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI266065B (en) * 2005-05-18 2006-11-11 Via Tech Inc Chip capable of testing itself and testing method thereof
TW200847183A (en) * 2007-05-16 2008-12-01 Inventec Corp Method for controlling clock of memory slots
TW201015296A (en) * 2008-10-09 2010-04-16 Inventec Corp Method for auto-testing environment variable setting
CN102053888A (zh) * 2009-10-27 2011-05-11 英业达股份有限公司 运算装置的自我检测方法与系统
EP2843429A1 (en) * 2013-09-03 2015-03-04 Telefonaktiebolaget L M Ericsson (Publ) Enabling secured debug of an integrated circuit
CN105487956A (zh) * 2014-10-09 2016-04-13 纬创资通股份有限公司 开机自我测试中的除错方法及开机自我测试中的除错装置

Also Published As

Publication number Publication date
US10890616B2 (en) 2021-01-12
TW202014892A (zh) 2020-04-16
US20200110130A1 (en) 2020-04-09
TWI679529B (zh) 2019-12-11
CN111008099A (zh) 2020-04-14

Similar Documents

Publication Publication Date Title
US9747192B2 (en) Automated operating system installation on multiple drives
US6502208B1 (en) Method and system for check stop error handling
CN111008099B (zh) 自我检测系统及其方法
KR100296984B1 (ko) 전자제어장치용감시시스템
CN106547653B (zh) 计算机系统故障状态检测方法、装置及系统
US9542304B1 (en) Automated operating system installation
CN103995760A (zh) 一种电脑故障检测设备和检测维修方法
US8726088B2 (en) Method for processing booting errors
KR20180019505A (ko) 반도체 장치 및 진단 시험 방법
Backhausen et al. Robustness in automotive electronics: An industrial overview of major concerns
US8938365B2 (en) Clock fault detector
US10824517B2 (en) Backup and recovery of configuration files in management device
US10990685B2 (en) Static software analysis tool approach to determining breachable common weakness enumerations violations
CN107273291B (zh) 一种处理器调试方法及系统
CN114910780A (zh) 一种故障容错性测试方法、装置、电子设备及存储介质
CN107766251B (zh) 加载image的检测方法、系统、设备及可读存储介质
US20220206823A1 (en) Information processing method and electronic apparatus
TWI840907B (zh) 偵測偏差的電腦系統及方法,及非暫態電腦可讀取媒體
CN112346786B (zh) 应用于开机阶段及开机后运行阶段的除错信息纪录方法
CN114356681A (zh) 芯片验证过程中的故障处理方法、装置和电子设备
CN116340031A (zh) 检测偏差的计算机系统及方法和非暂态计算机可读介质
CN117492584A (zh) 一种触摸屏异常处理方法、系统及存储介质
KR940008849B1 (ko) 컴퓨터 시스템의 재기동(rebooting)방법
CN117896301A (zh) 波特率分析方法、装置、电子设备及存储介质
CN113791825A (zh) 一种元器件的识别方法、系统、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant