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/36Prevention of errors by analysis, debugging or testing of software
    • G06F11/3668Testing of software
    • 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

본 발명은 일정한 주기로 설정값까지 카운트하고 초기화된 후, 다시 카운트하는 과정을 반복하는 타이머; 부여된 기능의 테스크(TASK)를 처리하는 다수의 소프트웨어 모듈; 상기 다수의 소프트웨어 모듈 중 선택된 소프트웨어 모듈이 선택된 시점의 타이머 값과, 상기 소프트웨어 모듈의 수행 시작 시점의 타이머 값을 검출하여 상기 소프트웨어 모듈의 수행주기값을 산출하는 연산부; 상기 산출된 수행주기값과 상기 선택된 소프트웨어 모듈의 요구수행주기값을 비교하여 상기 소프트웨어 모듈의 수행주기 오류 여부를 판단하는 오류판단부; 및 상기 오류판단부의 판단 결과에 따라 출력하는 출력부; 를 포함하며, 본 발명에 따르면 소프트웨어를 구성하는 각각의 모듈에 대한 수행주기를 검출하여, 해당 소프트웨어 모듈의 수행주기 이상 여부를 판단하는 소프트웨어 모듈의 오류 검출 장치 및 그 방법을 제공할 수 있다.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

소프트웨어 모듈의 오류 검출 장치 및 그 방법{APPARATUS FOR ERROR DETECTION OF MODULE IN SOFTWARE AND METHOD THEREOF}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.

임베디드 시스템(Embedded System, 내장형 시스템)은 시스템을 동작시키는 소프트웨어를 하드웨어에 내장함으로써 특수한 기능만을 가지게 하는 컴퓨터 시스템으로, 개인용 컴퓨터(PC)와는 달리 특정한 요구사항을 가지고 있고, 소프트웨어를 구성하는 모듈은 미리 정의된 테스크(TASK)만을 수행한다.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.

이와 관련된 선행기술로는 대한민국 공개특허 10-2011-0051957호 "임베디드 장치의 오류검출 및 복구방법"(2011.05.18)이 있다.
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.

본 발명의 일 측면에 따른 소프트웨어 모듈의 오류 검출 장치는, 일정한 주기로 설정값까지 카운트하고 초기화된 후, 다시 카운트하는 과정을 반복하는 타이머; 부여된 기능의 테스크(TASK)를 처리하는 다수의 소프트웨어 모듈; 상기 다수의 소프트웨어 모듈 중 선택된 소프트웨어 모듈이 선택된 시점의 타이머 값과, 상기 소프트웨어 모듈의 수행 시작 시점의 타이머 값을 검출하여 상기 소프트웨어 모듈의 수행주기값을 산출하는 연산부; 상기 산출된 수행주기값과 상기 선택된 소프트웨어 모듈의 요구수행주기값을 비교하여 상기 소프트웨어 모듈의 수행주기 오류 여부를 판단하는 오류판단부; 및 상기 오류판단부의 판단 결과에 따라 출력하는 출력부; 를 포함하는 것을 특징으로 한다.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.

본 발명의 일 측면에 따른 소프트웨어 모듈의 오류 검출 방법은, 검출대상 소프트웨어 모듈을 선택하는 제1 단계; 상기 소프트웨어 모듈이 선택된 시점의 타이머 값을 검출하는 제2 단계; 상기 소프트웨어 모듈의 수행 시작 시점의 타이머 값을 검출하는 제3 단계; 상기 제2 단계 및 제3 단계에서 검출된 타이머 값으로부터 상기 소프트웨어 모듈의 수행주기값을 산출하는 제4 단계; 및 상기 산출된 수행주기값과 요구수행주기값을 비교하여 상기 소프트웨어 모듈의 수행주기 오류 여부를 판단하는 제5 단계; 를 포함하는 것을 특징으로 한다.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.

본 발명에서, 상기 제 5단계는 상기 수행주기값이 상기 요구수행주기값보다 큰 경우, 상기 소프트웨어 모듈의 수행주기 오류로 판단하는 것을 특징으로 한다.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은 본 발명의 일 실시예에 따른 소프트웨어 모듈의 오류 검출 장치를 나타내는 블록구성도,
도 2는 본 발명의 일 실시예에 따른 소프트웨어 모듈의 오류 검출 장치에 있어서, 소프트웨어 모듈의 수행주기를 검출하기 위한 검출 시점의 예를 나타낸 그래프,
도 3은 본 발명의 일 실시예에 따른 소프트웨어 모듈의 오류 검출 방법을 설명하기 위한 순서도이다.
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은 본 발명의 일 실시예에 따른 소프트웨어 모듈의 오류 검출 장치를 나타내는 블록구성도이고, 도 2는 본 발명의 일 실시예에 따른 소프트웨어 모듈의 오류 검출 장치에 있어서, 소프트웨어 모듈의 수행주기를 검출하기 위한 검출 시점의 예를 나타낸 그래프이다.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.

도 1 내지 도 2에 도시된 바와 같이 본 발명은, 타이머(10), 소프트웨어 모듈(20), 연산부(30), 오류판단부(40), 저장부(50) 및 출력부(60)를 포함한다.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.

타이머(10)는 일정한 주기로 설정값까지 카운트하고 초기화된 후, 다시 카운트하는 과정을 반복한다.The timer 10 repeats the process of counting up to a set value at a predetermined period, initializing, and counting again.

즉, 본 발명에서의 타이머(10)는 일반적으로 MCU(micro control unit)내에 하드웨어적으로 구현되어 있는 것으로 MCU 기동이 완료되면 설정시간 간격으로 값이 1씩 증가하며 카운트값이 최대값에 도달하면 0으로 초기화된 후 다시 증가한다. 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.

소프트웨어 모듈(20)은 각각의 기능별로 다수개가 구비되며, 부여된 기능의 테스크(TASK)를 처리한다.The software module 20 is provided with a plurality of functions for each function, and processes the task TASK.

연산부(30)는 다수의 소프트웨어 모듈(20) 중 선택된 소프트웨어 모듈(20)이 선택된 시점의 타이머 값과, 소프트웨어 모듈(20)의 수행 시작 시점의 타이머 값을 검출하여 해당 소프트웨어 모듈(20)의 수행주기값을 산출한다.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.

이때, 소프트웨어 모듈(20)의 수행주기값은 도 2와 같이 산출되는데, A 지점을 Tpast라 가정하였을 때, T1이 Tcurrent인 경우 Tcurrent > Tpast을 만족하므로 수행주기값은 Tcurrent - Tpast 로 산출한다.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.

그러나, T2가 Tcurrent인 경우 Tcurrent > Tpast을 만족하지 않으므로 수행주기값은 Tmax - Tpast + Tcurrent + 1로 산출한다.However, if T2 is Tcurrent, Tcurrent> Tpast is not satisfied. Therefore, the execution period value is calculated as Tmax-Tpast + Tcurrent + 1.

여기서, Tpast는 소프트웨어 모듈(20)이 선택된 시점의 타이머 값이고, Tcurrent는 소프트웨어 모듈(20)의 수행 시작 시점의 타이머 값이며, Tmax는 타이머(10)에 설정된 최대 카운트 값으로 정의한다.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.

오류판단부(40)는 연산부(30)에서 산출된 수행주기값과 선택된 소프트웨어 모듈(20)의 요구수행주기값을 비교하여 해당 소프트웨어 모듈(20)의 수행주기 오류 여부를 판단한다. 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.

저장부(50)는 각각의 소프트웨어 모듈(20)별로 요구수행주기값을 저장하고, 오류판단부(40)로 선택된 소프트웨어 모듈(20)의 요구수행주기값을 제공한다.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.

이때, 오류판단부(40)는 수행주기값이 저장부(50)로부터 제공된 해당 소프트웨어 모듈(20)의 요구수행주기값보다 큰 경우, 해당 소프트웨어 모듈(20)의 수행주기 오류로 판단한다.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.

출력부(60)는 오류판단부(40)의 판단 결과에 따라 출력한다.The output unit 60 outputs the result of the determination of the error determining unit 40.

이때, 출력부(60)는 해당 소프트웨어 모듈(20)의 오류를 알리는 경고음 또는 경고표시를 출력할 수 있다. 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.

즉, 본 발명에 의한 소프트웨어 모듈의 오류 검출 장치에 따르면 소프트웨어를 구성하는 각각의 모듈(20)에 대한 수행주기를 검출하여 해당 소프트웨어 모듈(20)의 수행주기 이상 여부를 판단하고, 소프트웨어 모듈(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.

또한, 본 발명은 소프트웨어 모듈(20)의 수에 따라 하드웨어 기반의 워치독 타이머를 각각 구비하지 않아도 되므로 원가절감의 효과가 있다.
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은 본 발명의 일 실시예에 따른 소프트웨어 모듈의 오류 검출 방법의 동작 흐름을 도시한 순서도로써, 이를 참조하여 본 발명의 구체적인 동작을 설명한다.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.

먼저, 검출대상 소프트웨어 모듈(20)을 선택한다(S10).First, the detection target software module 20 is selected (S10).

그 다음, 선택된 소프트웨어 모듈(20)이 선택된 시점의 타이머 값을 검출한다(S20).Next, the selected software module 20 detects a timer value at the selected time point (S20).

그 다음, 선택된 소프트웨어 모듈(20)의 수행 시작 시점의 타이머 값을 검출한다(S30).Next, the timer value at the start of execution of the selected software module 20 is detected (S30).

그 다음, S20 및 S30단계에서 검출된 타이머 값으로부터 해당 소프트웨어 모듈(20)의 수행주기값을 산출한다(S40).Next, an execution period value of the corresponding software module 20 is calculated from the timer values detected in steps S20 and S30 (S40).

이때, 소프트웨어 모듈(20)의 수행주기값은 도 2와 같이 산출되는데, A 지점을 Tpast라 가정하였을 때, T1이 Tcurrent인 경우 Tcurrent > Tpast을 만족하므로 수행주기값은 Tcurrent - Tpast 로 산출한다.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.

그러나, T2가 Tcurrent인 경우 Tcurrent > Tpast을 만족하지 않으므로 수행주기값은 Tmax - Tpast + Tcurrent + 1로 산출한다.However, if T2 is Tcurrent, Tcurrent> Tpast is not satisfied. Therefore, the execution period value is calculated as Tmax-Tpast + Tcurrent + 1.

여기서, Tpast는 소프트웨어 모듈(20)이 선택된 시점의 타이머 값이고, Tcurrent는 소프트웨어 모듈(20)의 수행 시작 시점의 타이머 값이며, Tmax는 타이머(10)에 설정된 최대 카운트 값으로 정의한다.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.

또한, 타이머 값은 일정한 주기로 설정값까지 카운트하고 초기화된 후, 다시 카운트하는 과정을 반복하는 타이머(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.

산출된 수행주기값과 요구수행주기값을 비교하여(S50), 수행주기값이 해당 소프트웨어 모듈(20)의 요구수행주기값보다 큰 경우, 소프트웨어 모듈(20)의 수행주기 오류로 판단한다(S60).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). ).

이때, 소프트웨어 모듈(20)의 수행주기 오류 여부를 판단된 경우, 해당 소프트웨어 모듈(20)의 오류를 알리는 경고음 또는 경고표시를 출력하고, 이에 해당하는 안전모드를 실행시킨다(S70).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).

즉, 본 발명에 의한 소프트웨어 모듈의 오류 검출 방법에 따르면 소프트웨어를 구성하는 각각의 모듈(20)에 대한 수행주기를 검출하여 해당 소프트웨어 모듈(20)의 수행주기 이상 여부를 판단하고, 소프트웨어 모듈(20)의 이상으로 판단된 경우 이에 해당하는 안전모드가 실행되도록 하여 안전성을 증가시킬 뿐만 아니라 장치 신뢰도를 향상시킬 수 있다.
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 : 타이머 20 : 소프트웨어 모듈
30 : 연산부 40 : 오류판단부
50 : 저장부 60 : 출력부
10: timer 20: software module
30: calculation unit 40: error determination unit
50: storage unit 60: output unit

Claims (6)

일정한 주기로 설정값까지 카운트하고 초기화된 후, 다시 카운트하는 과정을 반복하는 타이머;
부여된 기능의 테스크(TASK)를 처리하는 다수의 소프트웨어 모듈;
상기 다수의 소프트웨어 모듈 중 선택된 소프트웨어 모듈이 선택된 시점의 타이머 값과, 상기 소프트웨어 모듈의 수행 시작 시점의 타이머 값을 검출하여 상기 소프트웨어 모듈의 수행주기값을 산출하는 연산부;
상기 산출된 수행주기값과 상기 선택된 소프트웨어 모듈의 요구수행주기값을 비교하여 상기 소프트웨어 모듈의 수행주기 오류 여부를 판단하는 오류판단부; 및
상기 오류판단부의 판단 결과에 따라 출력하는 출력부; 를 포함하는 소프트웨어 모듈의 오류 검출 장치.
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.
제 1항에 있어서,
각각의 소프트웨어 모듈별로 요구수행주기값을 저장하고, 상기 오류판단부로 상기 선택된 소프트웨어 모듈의 요구수행주기값을 제공하는 저장부; 를 더 포함하는 것을 특징으로 하는 소프트웨어 모듈의 오류 검출 장치.
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.
제 1항에 있어서, 상기 오류판단부는
상기 수행주기값이 상기 요구수행주기값보다 큰 경우, 상기 소프트웨어 모듈의 수행주기 오류로 판단하는 것을 특징으로 하는 소프트웨어 모듈의 오류 검출 장치.
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.
검출대상 소프트웨어 모듈을 선택하는 제1 단계;
상기 소프트웨어 모듈이 선택된 시점의 타이머 값을 검출하는 제2 단계;
상기 소프트웨어 모듈의 수행 시작 시점의 타이머 값을 검출하는 제3 단계;
상기 제2 단계 및 제3 단계에서 검출된 타이머 값으로부터 상기 소프트웨어 모듈의 수행주기값을 산출하는 제4 단계; 및
상기 산출된 수행주기값과 요구수행주기값을 비교하여 상기 소프트웨어 모듈의 수행주기 오류 여부를 판단하는 제5 단계; 를 포함하는 소프트웨어 모듈의 오류 검출 방법.
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.
제 4항에 있어서, 상기 제 5단계는
상기 수행주기값이 상기 요구수행주기값보다 큰 경우, 상기 소프트웨어 모듈의 수행주기 오류로 판단하는 것을 특징으로 하는 소프트웨어 모듈의 오류 검출 방법.
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.
제 4항에 있어서, 상기 타이머 값은
일정한 주기로 설정값까지 카운트하고 초기화된 후, 다시 카운트하는 과정을 반복하는 타이머로부터 검출하는 것을 특징으로 하는 소프트웨어 모듈의 오류 검출 방법.
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
US9335183B2 (en) Method for reliably operating a sensor
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
KR102131230B1 (en) Method for self diagnosis of ram error detection logic in powertrain ecu system and apparatus thereof
CN110825561B (en) Control system and control device
US20120166880A1 (en) Independently based diagnostic monitoring
JP2009129463A (en) Processing method of temporary error in real time system of vehicle controller
EP2487594B1 (en) Error propagation in a system model
US20130111276A1 (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
CN107615205B (en) Clock diagnosis device and clock diagnosis method
US10628161B2 (en) Processor for correlation-based infinite loop detection
JP6375200B2 (en) Apparatus and method for detecting abnormal signs of computer system
JP5115628B2 (en) Microcomputer
KR102603835B1 (en) Method and apparatus for protecting the program counter structure of a processor system and monitoring processing of interrupt requests
CN108073489B (en) Method for ensuring operation of calculator
CN105786614A (en) Load calculation method and load calculation system for processor in electronic equipment
JP2007026028A (en) Device for detecting abnormality in microcomputer
JP6698455B2 (en) Memory diagnostic device
WO2011142015A1 (en) Operator anomaly assessment device and method
JP6757182B2 (en) Vehicle electronic control unit and timer diagnostic method

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20120919

PG1501 Laying open of application
PC1203 Withdrawal of no request for examination
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid