KR20140039356A - Apparatus for error detection of module in software and method thereof - Google Patents

Apparatus for error detection of module in software and method thereof Download PDF

Info

Publication number
KR20140039356A
KR20140039356A KR1020120104063A KR20120104063A KR20140039356A KR 20140039356 A KR20140039356 A KR 20140039356A KR 1020120104063 A KR1020120104063 A KR 1020120104063A KR 20120104063 A KR20120104063 A KR 20120104063A KR 20140039356 A KR20140039356 A KR 20140039356A
Authority
KR
South Korea
Prior art keywords
software module
value
error
execution period
timer
Prior art date
Application number
KR1020120104063A
Other languages
Korean (ko)
Inventor
최기홍
Original Assignee
현대모비스 주식회사
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 현대모비스 주식회사 filed Critical 현대모비스 주식회사
Priority to KR1020120104063A priority Critical patent/KR20140039356A/en
Publication of KR20140039356A publication Critical patent/KR20140039356A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3013Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The present invention includes a timer for repeating the counting process after counting up to a predetermined value at a predetermined period and initialized; A plurality of software modules for processing tasks of assigned functions; A calculator configured to detect a timer value at a point in time at which a selected software module is selected from the plurality of software modules and a timer value at a start point of execution of the software module, and calculate an execution period value of the software module; An error judging unit comparing the calculated execution period value with a request execution period value of the selected software module to determine whether a performance cycle error of the software module is performed; And an output unit outputting the result of the determination of the error determination unit. According to the present invention, it is possible to provide an error detection apparatus and method for a software module that detects an execution cycle of each module constituting the software and determines whether or not the execution cycle of the corresponding software module is abnormal.

Description

ERROR DETECTION APPARATUS FOR SOFTWARE MODULE AND METHOD THEREOF {APPARATUS FOR ERROR DETECTION OF MODULE IN SOFTWARE AND METHOD THEREOF}

The present invention relates to an error detection apparatus and method for a software module, and more particularly, to detect an execution cycle for each module constituting the software, and to determine whether an error of the software module is abnormal. A detection apparatus and a method thereof.

Generally, software is installed inside the hardware to control the operation of the hardware. The software may be installed by the user according to the characteristics and the purpose of the electronic device.

In addition, in the case of hardware that performs a specific function, software that can perform a specific function is embedded therein. Such a system is called an embedded system.

An embedded system is a computer system that has special functions by embedding the software that operates the system in hardware. Unlike an personal computer, the embedded system has specific requirements. Perform only defined tasks (TASK).

Since the software applied to the conventional embedded system does not measure the execution cycle for each module, but detects the abnormality of the software as a whole by using a hardware-based watchdog timer, it detects an error in the execution cycle of each module. There is a problem that it is difficult to determine the cause of the abnormalities.

Prior art related to this is Republic of Korea Patent Publication No. 10-2011-0051957 "Error detection and recovery method of the embedded device" (2011.05.18).

The present invention was devised to improve the above problems, and an error detection device and method for a software module that detects an execution cycle of each module constituting the software and determines whether the execution cycle of the corresponding software module is abnormal. The purpose is to provide.

In addition, an object of the present invention is to provide an error detection apparatus and method for a software module to execute a safe mode corresponding thereto when it is determined that an abnormality of the software module is detected, as a result of performing the detection cycle of the software module.

An error detecting apparatus of a software module according to an aspect of the present invention includes a timer for repeating a counting process after counting and initializing a set value at a predetermined cycle and resetting it; A plurality of software modules for processing tasks of assigned functions; A calculator configured to detect a timer value at a point in time at which a selected software module is selected from the plurality of software modules and a timer value at a start point of execution of the software module, and calculate an execution period value of the software module; An error judging unit comparing the calculated execution period value with a request execution period value of the selected software module to determine whether a performance cycle error of the software module is performed; And an output unit outputting the result of the determination of the error determination unit. And a control unit.

The present invention includes a storage unit which stores a required performance period value for each software module and provides a required performance period value of the selected software module to the error determination unit. And further comprising:

In the present invention, when the execution period value is larger than the requested execution period value, the error determining unit determines that the execution period error of the software module.

An error detection method of a software module according to an aspect of the present invention includes a first step of selecting a detection target software module; A second step of detecting a timer value at a time when the software module is selected; Detecting a timer value at the start of execution of the software module; A fourth step of calculating an execution period value of the software module from the timer values detected in the second and third steps; And a fifth step of comparing the calculated execution period value with a required execution period value to determine whether an execution period error of the software module occurs. And a control unit.

In the present invention, the fifth step is characterized in that, if the execution period value is larger than the requested execution period value, it is determined that the execution period error of the software module.

In the present invention, the timer value is counted to a predetermined value at a predetermined period, and after the initialization, it is characterized in that the detection process from the timer to repeat the counting again.

The present invention detects the execution cycle of each module constituting the software to determine whether the execution cycle of the software module is abnormal, and if it is determined that the error of the software module is to run the corresponding safety mode to increase the safety In addition, device reliability can be improved.

In addition, the present invention does not need to have a hardware-based watchdog timer according to the number of software modules, thereby reducing the cost.

1 is a block diagram showing an error detection apparatus of a software module according to an embodiment of the present invention;
2 is a graph illustrating an example of a detection time point for detecting an execution period of a software module in the error detection apparatus of the software module according to an embodiment of the present invention;
3 is a flowchart illustrating an error detection method of a software module according to an embodiment of the present invention.

Hereinafter, with reference to the accompanying drawings will be described in detail an embodiment of the error detection device and method of the software module according to the present invention. In this process, the thicknesses of the lines and the sizes of the components shown in the drawings may be exaggerated for clarity and convenience of explanation. In addition, the terms described below are defined in consideration of the functions of the present invention, which may vary depending on the intention or custom of the user, the operator. Therefore, definitions of these terms should be made based on the contents throughout this specification.

1 is a block diagram illustrating an error detection apparatus of a software module according to an embodiment of the present invention, and FIG. 2 illustrates an execution cycle of a software module in the error detection apparatus of a software module according to an embodiment of the present invention. It is a graph showing an example of detection time points for detection.

As shown in FIGS. 1 and 2, the present invention includes a timer 10, a software module 20, an operation unit 30, an error determination unit 40, a storage unit 50, and an output unit 60. do.

The timer 10 repeats the process of counting up to a set value at a predetermined period, initializing, and counting again.

That is, the timer 10 in the present invention is generally implemented in hardware in a micro control unit (MCU). When the MCU startup is completed, the value increases by one at a set time interval and the count value reaches the maximum value. It is initialized to 0 and then incremented again.

The software module 20 is provided with a plurality of functions for each function, and processes the task TASK.

The calculation unit 30 detects the timer value at the time when the selected software module 20 is selected from among the plurality of software modules 20 and the timer value at the start time of the execution of the software module 20 to perform the corresponding software module 20. Calculate the periodic value.

In this case, the execution period value of the software module 20 is calculated as shown in FIG. 2. When the point A is assumed to be Tpast, when T1 is Tcurrent, the execution period value is calculated as Tcurrent-Tpast.

However, if T2 is Tcurrent, Tcurrent> Tpast is not satisfied. Therefore, the execution period value is calculated as Tmax-Tpast + Tcurrent + 1.

Here, Tpast is a timer value at the time when the software module 20 is selected, Tcurrent is a timer value at the start time of the execution of the software module 20, and Tmax is defined as a maximum count value set in the timer 10.

 The error determining unit 40 compares the execution period value calculated by the operation unit 30 with the required execution period value of the selected software module 20 and determines whether the execution period error of the corresponding software module 20 is performed.

The storage unit 50 stores the required performance period value for each software module 20 and provides the required performance period value of the software module 20 selected by the error determining unit 40.

At this time, the error determining unit 40 determines that the execution cycle value of the software module 20 is an execution cycle error when the execution cycle value is larger than the required execution cycle value of the software module 20 provided from the storage unit 50.

The output unit 60 outputs the result of the determination of the error determining unit 40.

In this case, the output unit 60 may output a warning sound or a warning indication indicating an error of the corresponding software module 20.

That is, according to the error detection device of the software module according to the present invention, by detecting the execution cycle for each module 20 constituting the software to determine whether or not the execution cycle of the software module 20 is abnormal, the software module 20 If it is determined that the error is higher than), the corresponding safety mode can be executed to increase the safety as well as the reliability of the device.

In addition, since the present invention does not have to have a hardware-based watchdog timer according to the number of software modules 20, there is an effect of cost reduction.

3 is a flowchart illustrating an operation flow of an error detection method of a software module according to an embodiment of the present invention, with reference to which will be described the specific operation of the present invention.

First, the detection target software module 20 is selected (S10).

Next, the selected software module 20 detects a timer value at the selected time point (S20).

Next, the timer value at the start of execution of the selected software module 20 is detected (S30).

Next, an execution period value of the corresponding software module 20 is calculated from the timer values detected in steps S20 and S30 (S40).

In this case, the execution period value of the software module 20 is calculated as shown in FIG. 2. When the point A is assumed to be Tpast, when T1 is Tcurrent, the execution period value is calculated as Tcurrent-Tpast.

However, if T2 is Tcurrent, Tcurrent> Tpast is not satisfied. Therefore, the execution period value is calculated as Tmax-Tpast + Tcurrent + 1.

Here, Tpast is a timer value at the time when the software module 20 is selected, Tcurrent is a timer value at the start time of the execution of the software module 20, and Tmax is defined as a maximum count value set in the timer 10.

In addition, the timer value is detected from the timer 10 which repeats the counting process after counting and initializing the set value at a predetermined period and resetting.

Comparing the calculated execution period value and the required execution period value (S50), if the execution period value is larger than the requested execution period value of the software module 20, it is determined that the execution cycle error of the software module 20 (S60). ).

In this case, when it is determined whether the execution cycle error of the software module 20 is determined, a warning sound or a warning display indicating an error of the corresponding software module 20 is output, and the corresponding safety mode is executed (S70).

That is, according to the error detection method of the software module according to the present invention, by detecting the execution cycle for each module 20 constituting the software to determine whether or not the execution cycle of the software module 20 is abnormal, the software module 20 If it is determined that the error is higher than), the corresponding safety mode can be executed to increase the safety as well as the reliability of the device.

While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it will be understood by those of ordinary skill in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. I will understand. Accordingly, the technical scope of the present invention should be defined by the following claims.

10: timer 20: software module
30: calculation unit 40: error determination unit
50: storage unit 60: output unit

Claims (6)

A timer for repeating the counting process after counting up to a set value at a predetermined period, initializing, and counting again;
A plurality of software modules for processing tasks of assigned functions;
A calculator configured to detect a timer value at a point in time at which a selected software module is selected from the plurality of software modules and a timer value at a start point of execution of the software module, and calculate an execution period value of the software module;
An error judging unit comparing the calculated execution period value with a request execution period value of the selected software module to determine whether a performance cycle error of the software module is performed; And
An output unit for outputting according to a determination result of the error determination unit; Error detection device of the software module comprising a.
The method according to claim 1,
A storage unit which stores the required performance period value for each software module and provides the error determination unit with the required performance period value of the selected software module; The error detection device of the software module further comprises.
The method of claim 1, wherein the error determining unit
And when the execution period value is greater than the required execution period value, determining that the execution period error of the software module is correct.
Selecting a software module to be detected;
A second step of detecting a timer value at a time when the software module is selected;
Detecting a timer value at the start of execution of the software module;
A fourth step of calculating an execution period value of the software module from the timer values detected in the second and third steps; And
A fifth step of comparing the calculated execution period value with a required execution period value to determine whether an execution period error of the software module is determined; Error detection method of the software module comprising a.
The method of claim 4, wherein the fifth step
And if the execution period value is greater than the requested execution period value, determining that the execution period value of the software module is an error.
The method of claim 4, wherein the timer value is
A method of detecting an error of a software module, characterized by detecting from a timer which repeats a counting process after counting up to a predetermined value at a predetermined period and initializing.
KR1020120104063A 2012-09-19 2012-09-19 Apparatus for error detection of module in software and method thereof KR20140039356A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120104063A KR20140039356A (en) 2012-09-19 2012-09-19 Apparatus for error detection of module in software and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120104063A KR20140039356A (en) 2012-09-19 2012-09-19 Apparatus for error detection of module in software and method thereof

Publications (1)

Publication Number Publication Date
KR20140039356A true KR20140039356A (en) 2014-04-02

Family

ID=50649985

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120104063A KR20140039356A (en) 2012-09-19 2012-09-19 Apparatus for error detection of module in software and method thereof

Country Status (1)

Country Link
KR (1) KR20140039356A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102213676B1 (en) * 2019-12-19 2021-02-05 현대오트론 주식회사 Terminal apparatus for autosar system with arithmetic operation supervision function and arithmetic operation supervision method of autosar system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102213676B1 (en) * 2019-12-19 2021-02-05 현대오트론 주식회사 Terminal apparatus for autosar system with arithmetic operation supervision function and arithmetic operation supervision method of autosar system

Similar Documents

Publication Publication Date Title
CN109243619B (en) Generation method and device of prediction model and computer readable storage medium
CN108282411B (en) Access current limiting method, device, equipment and computer readable storage medium
JP2012532462A5 (en) Method, apparatus and program storage medium for predicting etching rate uniformity for plasma chamber verification
WO2013107694A4 (en) In situ processor re-characterization
US10176076B2 (en) Breaking code execution based on time consumption
CN113342671B (en) Method, device, electronic equipment and medium for verifying operation module
US20120166880A1 (en) Independently based diagnostic monitoring
JP2009129463A (en) Processing method of temporary error in real time system of vehicle controller
KR20200062443A (en) Method for self diagnosis of ram error detection logic in powertrain ecu system and apparatus thereof
US8887004B2 (en) Periodic error detection method and periodic error detection circuit
KR20140039356A (en) Apparatus for error detection of module in software and method thereof
JP5745561B2 (en) Prediction error evaluation apparatus and method
JP2007026028A (en) Device for detecting abnormality in microcomputer
US10628161B2 (en) Processor for correlation-based infinite loop detection
JP5115628B2 (en) Microcomputer
KR102603835B1 (en) Method and apparatus for protecting the program counter structure of a processor system and monitoring processing of interrupt requests
CN107615205B (en) Clock diagnosis device and clock diagnosis method
US9547484B1 (en) Automated compiler operation verification
JP6698455B2 (en) Memory diagnostic device
CN105786614A (en) Loading calculation method and loading calculation system for processor in electronic device
TW201606785A (en) Memory controller
TWI442226B (en) A method for assisting inspection
WO2011142015A1 (en) Operator anomaly assessment device and method
US11061745B2 (en) Shared resource analysis for embedded multi-core systems
CN114326670B (en) Detection method and device for executing tasks by controller, storage medium and electronic device

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination