KR20170121695A - Register abnormality detection apparatus - Google Patents
Register abnormality detection apparatus Download PDFInfo
- Publication number
- KR20170121695A KR20170121695A KR1020170049163A KR20170049163A KR20170121695A KR 20170121695 A KR20170121695 A KR 20170121695A KR 1020170049163 A KR1020170049163 A KR 1020170049163A KR 20170049163 A KR20170049163 A KR 20170049163A KR 20170121695 A KR20170121695 A KR 20170121695A
- Authority
- KR
- South Korea
- Prior art keywords
- register
- value
- crc
- determination result
- inspection
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0706—Error 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 the processing taking place on a specific hardware platform or in a specific software environment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0793—Remedial or corrective actions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
Abstract
Description
본 발명은 레지스터에 기록되어 있는 데이터의 이상을 검출하는 레지스터 이상 검출 장치에 관한 것이다.The present invention relates to a register abnormality detecting apparatus for detecting abnormality of data recorded in a register.
종래부터, 마이크로 컴퓨터를 이용하여 각종의 처리를 행하는 전자 회로에서는, 연산 처리부[CPU(Central Processing Unit)]로부터 보내져 오는 데이터를 IC(Integrated Circuit) 내부의 레지스터에 기록하고 있다. 이 마이크로 컴퓨터를 이용한 전자 회로에 있어서, IC 내부의 레지스터에 기록된 데이터(레지스터값)는, 노이즈 등의 요인에 의해 의도하지 않게 재기록되어 버리는 경우가 있다.Conventionally, in an electronic circuit that performs various processes using a microcomputer, data sent from an arithmetic processing unit (CPU (Central Processing Unit)) is recorded in a register in an IC (Integrated Circuit). In the electronic circuit using the microcomputer, the data (register value) written in the register inside the IC may be unintentionally rewritten due to factors such as noise.
이 때문에, 종래에 있어서는, 하기의 (1), (2)와 같은 처리를 CPU측에서 행하게 하도록 하고 있었다. For this reason, conventionally, the CPU performs the same processing as the following (1) and (2).
(1) 동작 중에 레지스터값을 항상 폴링함으로써, 레지스터값이 변화하고 있지 않은지의 여부를 감시하고, 레지스터에의 기록을 행하고 있지 않음에도 불구하고 레지스터값이 변화하고 있었던 경우에는, 레지스터값(레지스터에 기록되어 있는 데이터)에 이상이 발생하고 있다고 판단하고, 올바른 값을 기록한다.(1) It is monitored whether or not the register value is changed by always polling the register value during operation. If the register value has changed even though the register value is not being written, the register value It is judged that an abnormality occurs in the recorded data) and the correct value is recorded.
(2) 레지스터 초기 설정 후, 초기 설정 시와 동일한 값을 일정 간격으로 계속 기록한다. 이에 의해, 레지스터값이 노이즈 등의 영향으로 변화했다고 해도, 레지스터값이 올바른 값으로 덮어 씌워진다.(2) After the register initial setting, the same value as the initial setting is continuously recorded at a constant interval. As a result, even if the register value changes due to noise or the like, the register value is overwritten with the correct value.
그러나, 상기한 (1), (2)와 같은 처리를 CPU측에서 행하게 하기 위해서는, 처리 능력이 높은 CPU를 선정할 필요가 있다. 또한, 레지스터에 기록되어 있는 데이터의 이상(레지스터 이상)을 확인하기 위해서 CPU로부터 IC에의 액세스가 증가함으로써, 소비 전력도 증대되어 버린다.However, in order to perform the same processing as the above-described (1) and (2) on the CPU side, it is necessary to select a CPU having a high processing capability. In addition, the access from the CPU to the IC increases in order to confirm the abnormality of the data written in the register (register error), and the power consumption is also increased.
한편, CPU측이 아니라 IC측에, 하기의 (3), (4)와 같은 구조를 내장시킨 예도 있다(예컨대, 비특허문헌 1, 2 참조).On the other hand, there is an example in which the following structures (3) and (4) are built in the IC side instead of the CPU side (for example, see Non-Patent
(3) 2개의 레지스터를 준비하여, 한쪽의 레지스터를 동작 설정용 레지스터, 다른 한쪽의 레지스터를 기대값 저장용 레지스터로 한다. CPU로부터 동작 설정용 레지스터에 대해 기록을 행하면 동일한 값이 기대값 저장용 레지스터에도 복사된다. CPU로부터 동작 설정용 레지스터에의 기록이 발생하고 있지 않음에도 불구하고, 동작 설정용 레지스터에 기록되어 있는 값과 기대값 저장용 레지스터에 기록되어 있는 값이 상이한 경우에, 에러 검출 레지스터를 이용하여 CPU에 대해 레지스터 이상을 통지한다. (3) Two registers are prepared, one register is set as the operation setting register, and the other register is set as the expected value storing register. When the operation setting register is written from the CPU, the same value is copied to the expected value storage register. When the value written in the operation setting register and the value stored in the expected value storing register are different from each other although the writing from the CPU to the operation setting register is not performed, And notifies the register abnormality.
(4) 레지스터에 기록되어 있는 데이터의 CRC(Cyclic Redundancy Code)값을 반복해서 산출하여, CPU로부터 레지스터에의 기록을 하고 있지 않음에도 불구하고, 산출된 CRC값(CRC 현상값(現狀値))이 기대값(CRC 기대값)과 일치하지 않게 된 경우에, 에러 검출 레지스터를 이용하여 CPU에 대해 레지스터 이상을 통지한다. 한편, CRC값이란, 레지스터에 기록되어 있는 데이터의 이상을 검출하기 위한 검사용의 지표의 하나이며, 데이터를 값으로 간주하여 어느 상수로 나눈 나머지(잉여)로서 정의되는 값이다. 또한, CRC 기대값이란, 레지스터에 기록한 데이터의 본래 있어야 할 값으로서 정의되는 CRC값이다. (4) A CRC (Cyclic Redundancy Code) value of the data recorded in the register is repeatedly calculated, and the calculated CRC value (CRC present value) (CRC expected value), the error detection register is used to notify the CPU of the register abnormality. On the other hand, the CRC value is one of indicators for inspection for detecting an abnormality of data recorded in a register, and is a value defined as a remainder (remainder) obtained by dividing the data by a certain value. The CRC expected value is a CRC value defined as a value that should be inherent in the data recorded in the register.
그러나, 상기한 (3)의 구조에서는, 통상의 2배의 레지스터를 사용하기 때문에 면적적으로 불리해진다. 또한, 상기한 (4)의 구조에서는, 이상 검출에 필요한 레지스터의 수를 줄일 수는 있으나, 에러 검출 레지스터 자체에 비트가 변하는 등의 이상이 발생해 버린 경우, 잘못된 검출을 행해 버릴 가능성이 있다. 즉, 에러 검출 레지스터 자체의 이상 발생에 의해, 정상임에도 불구하고 이상이라고 판단되어 버리는 경우가 있다. 반대로, 이상임에도 불구하고 정상이라고 판단되어 버리는 경우가 있다.However, in the above-described structure (3), since the conventional double register is used, the area becomes disadvantageous. In the structure (4), although it is possible to reduce the number of registers required for error detection, if an error such as a bit change occurs in the error detection register itself, erroneous detection may be performed. In other words, even if the error detection register itself is abnormal, it may be judged to be abnormal even though it is normal. On the other hand, there is a case where it is judged that it is normal even though it is abnormal.
본 발명은 이러한 과제를 해결하기 위해서 이루어진 것으로, 그 목적으로 하는 바는, 처리 능력이 높은 CPU를 이용하지 않고, 이상 검출의 신뢰성을 높이는 것이 가능한 레지스터 이상 검출 장치를 제공하는 것에 있다.An object of the present invention is to provide a register abnormality detecting apparatus capable of improving the reliability of abnormality detection without using a CPU having a high processing capability.
이러한 목적을 달성하기 위해서 본 발명은 연산 처리부(1)와, 이 연산 처리부(1)로부터 보내져 오는 데이터가 기록되는 레지스터(2A)를 구비하고, 레지스터(2A)에 기록되어 있는 데이터의 이상을 검출하는 레지스터 이상 검출 장치(100)에 있어서, 연산 처리부(1)로부터 보내져 온 데이터를 레지스터(2A)에 기록하는 데이터 기록부(2B)와, 레지스터(2A)에 기록되어 있는 데이터의 이상을 검출하기 위한 검사용의 지표의 기대값을 산출하는 기대값 산출부(2C)와, 레지스터(2A)에 기록되어 있는 데이터의 검사용의 지표의 기대값에 대응하는 현상값의 산출을 반복하는 현상값 산출부(2D)와, 현상값 산출부(2D)에 의해 검사용의 지표의 현상값이 산출될 때마다, 산출된 검사용의 지표의 현상값을 갱신 기억하는 현상값 기억부(2E)와, 현상값 산출부(2D)에 의해 검사용의 지표의 현상값이 산출될 때마다, 산출된 검사용의 지표의 현상값과 기대값의 일치/불일치를 판정하고, 그 판정 결과를 제1 판정 결과로서 에러 검출 레지스터(2H)에 기록하는 일치/불일치 판정부(2G)를 구비하며, 연산 처리부(1)는, 에러 검출 레지스터(2H)에 기록되어 있는 제1 판정 결과 및 현상값 기억부(2E)에 기억되어 있는 검사용의 지표의 현상값 중 적어도 한쪽을 판독하는 것을 특징으로 한다. In order to achieve the above object, the present invention is characterized in that the present invention includes an
본 발명에 있어서, 연산 처리부(1)로부터 보내져 온 데이터가 레지스터(2A)에 기록되면, 이 레지스터(2A)에 기록되어 있는 데이터의 이상을 검출하기 위한 검사용의 지표의 기대값(CRC 기대값)이 산출된다. 그리고, 이 검사용의 지표의 기대값의 산출 후, 레지스터(2A)에 기록되어 있는 데이터의 검사용의 지표의 기대값에 대응하는 현상값(CRC 현상값)의 산출이 반복되고, 이 산출된 검사용의 지표의 현상값이 현상값 기억부(2E)에 갱신 기억(덮어쓰기)된다. 또한, 검사용의 지표의 현상값의 산출이 반복될 때마다, 산출된 검사용의 지표의 현상값과 기대값의 일치/불일치가 판정되고, 그 판정 결과가 제1 판정 결과로서 에러 검출 레지스터(2H)에 기록된다.In the present invention, when the data sent from the
연산 처리부(1)는, 에러 검출 레지스터(2H)에 기록되어 있는 제1 판정 결과 및 현상값 기억부(2E)에 기억되어 있는 검사용의 지표의 현상값으로부터 얻어지는 제2 판정 결과에 기초하여, 레지스터(2A)에 기록되어 있는 데이터의 이상을 검출한다. 예컨대, 제1 판정 결과가 「일치」이고 또한 제2 판정 결과도 「일치」였던 경우에 레지스터(2A)에 기록되어 있는 데이터가 정상이라고 판단하고, 그 외의 경우에는 이상이라고 판단한다.Based on the first determination result recorded in the
본 발명에 있어서, 연산 처리부(1)는, 에러 검출 레지스터(2H)에 기록되어 있는 제1 판정 결과 및 현상값 기억부(2E)에 기억되어 있는 검사용의 지표의 현상값 중 적어도 한쪽을 판독한다. 이에 의해, 예컨대, 현상값 기억부(2E)에 기억되어 있는 검사용의 지표의 현상값으로부터 제2 판정 결과를 얻도록 하고, 이 검사용의 지표의 현상값으로부터 얻어지는 제2 판정 결과와 에러 검출 레지스터(2H)에 기록되어 있는 제1 판정 결과에 기초하여 레지스터(2A)에 기록되어 있는 데이터의 이상을 검출하도록 할 수 있다. In the present invention, the
이 경우, 현상값 기억부(2E)로부터 판독한 검사용의 지표의 현상값으로부터 제2 판정 결과를 얻는데, 예컨대, 현상값 기억부(2E)에 기억되어 있는 검사용의 지표의 현상값을 정기적으로 판독하도록 하고, 이 현상값 기억부(2E)로부터 판독한 최초의 검사용의 지표의 현상값을 연산 처리부(1)측에서의 기대값으로 하며, 이후, 현상값 기억부(2E)로부터 검사용의 지표의 현상값을 판독할 때마다, 그 판독한 검사용의 지표의 현상값과 연산 처리부(1)측에서의 기대값의 일치/불일치를 판정하고, 그 판정 결과를 제2 판정 결과로 한다. In this case, the second determination result is obtained from the development value of the index for inspection read from the
또한, 이 경우, 제1 판정 결과와 제2 판정 결과에 기초하여 레지스터(2A)에 기록되어 있는 데이터의 이상을 검출하지만, 제1 판정 결과만으로 레지스터(2A)에 기록되어 있는 데이터의 이상을 검출하도록 해도 좋고, 제2 판정 결과만으로 레지스터(2A)에 기록되어 있는 데이터의 이상을 검출하도록 해도 좋다. 예컨대, 레지스터의 이상 검출 방식으로서 제1, 제2, 제3 방식을 선택 가능하게 하여, 제1 방식이 선택되어 있는 경우에는 제1 판정 결과만으로 이상을 검출하도록 하고, 제2 방식이 선택되어 있는 경우에는 제2 판정 결과만으로 이상을 검출하도록 하며, 제3 방식이 선택되어 있는 경우에는 제1 판정 결과와 제2 판정 결과에 기초하여 이상을 검출하도록 한다.In this case, an abnormality of the data recorded in the
또한, 본 발명에 있어서, 에러 검출 레지스터(2H)에 기록되어 있는 제1 판정 결과는, 연산 처리부(1)가 정기적으로 판독하도록 해도 좋고, 체크 섬(check sum)을 갖는 SPI(Serial Peripheral Interface) 액세스의 응답 바이트에 포함시키는 등, 통신 프로토콜에 포함시켜 연산 처리부(1)에 보내져 오는 것으로 해도 좋다.In the present invention, the first determination result recorded in the
한편, 상기 설명에서는, 일례로서, 발명의 구성 요소에 대응하는 도면상의 구성 요소를, 괄호를 붙인 참조 부호에 의해 나타내고 있다.In the above description, the constituent elements in the drawings corresponding to the constituent elements of the invention are shown by parenthesized reference numerals as an example.
본 발명에 의하면, 에러 검출 레지스터에 기록되어 있는 제1 판정 결과 및 현상값 기억부에 기억되어 있는 검사용의 지표의 현상값 중 적어도 한쪽을 판독하도록 했기 때문에, 예컨대, 현상값 기억부에 기억되어 있는 검사용의 지표의 현상값으로부터 제2 판정 결과를 얻도록 하고, 이 검사용의 지표의 현상값으로부터 얻어지는 제2 판정 결과와 에러 검출 레지스터에 기록되어 있는 제1 판정 결과에 기초하여 레지스터에 기록되어 있는 데이터의 이상을 검출하는 등 하여, 처리 능력이 높은 CPU를 이용하지 않고, 이상 검출의 신뢰성을 높이는 것이 가능해진다.According to the present invention, since at least one of the first determination result recorded in the error detection register and the development value of the index for inspection stored in the development value storage unit is read, it is stored in the development value storage unit And the second determination result is obtained from the development value of the index for inspection and the second determination result obtained from the development value of the index for inspection and the first determination result recorded in the error detection register The reliability of the abnormality detection can be improved without using a CPU having a high processing capability.
도 1은 본 발명의 실시형태에 따른 레지스터 이상 검출 장치의 주요부의 구성을 도시한 도면이다.
도 2는 이 레지스터 이상 검출 장치에 있어서의 CRC값 산출부의 내부의 스테이트 머신도이다.
도 3은 CRC값 산출부에서 행해지는 동작을 도시한 타이밍 차트이다.
도 4는 IC측에서의 처리를 기능 블록화한 도면이다.
도 5는 IC측에서의 처리를 도시한 플로우차트이다.
도 6은 CPU측에서의 처리를 도시한 플로우차트이다.
도 7은 제1 방식이 선택되어 있는 경우의 CPU측에서 행해지는 처리를 도시한 플로우차트이다.
도 8은 제2 방식이 선택되어 있는 경우의 CPU측에서 행해지는 처리를 도시한 플로우차트이다.
도 9는 에러 검출 레지스터의 값을 체크 섬을 갖는 SPI 액세스의 응답 바이트에 포함시키도록 한 예를 도시한 도면이다.BRIEF DESCRIPTION OF DRAWINGS FIG. 1 is a diagram showing the configuration of a main part of a register abnormality detecting apparatus according to an embodiment of the present invention. FIG.
2 is a state machine diagram of the CRC value calculating unit in the register abnormality detecting apparatus.
3 is a timing chart showing an operation performed by the CRC value calculating unit.
4 is a functional block diagram of the processing on the IC side.
5 is a flowchart showing a process on the IC side.
6 is a flowchart showing the processing on the CPU side.
7 is a flowchart showing a process performed by the CPU side when the first method is selected.
Fig. 8 is a flowchart showing a process performed by the CPU side when the second scheme is selected.
9 is a diagram showing an example in which the value of the error detection register is included in the response byte of the SPI access having a checksum.
이하, 본 발명의 실시형태를 도면에 기초하여 상세히 설명한다. 도 1은 본 발명의 실시형태에 따른 레지스터 이상 검출 장치(100)의 주요부의 구성을 도시한 도면이다. BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. 1 is a diagram showing a configuration of a main part of a register
도 1에 있어서, 부호 1은 CPU(연산 처리부), 부호 2는 IC이다. IC(2)에는, 데이터 수신 회로(21)와, 커맨드 제어부(22)와, 데이터 송신 회로(23)와, 내부 레지스터(24)가 설치되어 있다. 내부 레지스터(24)에는, CRC값 산출 대상 레지스터(24-1)와, CRC값 산출 비대상 레지스터(24-2)와, CRC값 산출부(24-3)와, 에러 검출 레지스터(24-4)가 설치되어 있다. 1,
이 레지스터 이상 검출 장치(100)에 있어서, CPU(1)로부터 보내져 오는 데이터는 데이터 수신 회로(21)에 의해 수신되고, 직병렬 변환된 후, 커맨드 제어부(22)를 통해 내부 레지스터(24)에 보내지며, CRC값 산출 대상 레지스터(24-1)에 기록된다. In this register
내부 레지스터(24)에 있어서, CRC값 산출부(24-3)는, CRC값 산출 대상 레지스터(24-1)에 기록된 데이터의 CRC 기대값 및 CRC 현상값을 산출하고, 산출한 CRC 현상값과 CRC 기대값의 일치/불일치를 판정하며, 그 판정 결과를 에러 검출 레지스터(24-4)에 기록한다. In the
또한, CRC값 산출 비대상 레지스터(24-2)에는, CRC값 산출부(24-3)에 의해 산출된 CRC 현상값이 기록된다. 이 CRC값 산출 비대상 레지스터(24-2)에 기록된 CRC 현상값 및 에러 검출 레지스터(24-4)에 기록된 판정 결과는 CPU(1)에 의해 정기적으로 판독된다. In the CRC value calculation ratio target register 24-2, a CRC phenomenon value calculated by the CRC value calculation unit 24-3 is recorded. The CRC phenomenon value recorded in the CRC value calculation ratio target register 24-2 and the determination result recorded in the error detection register 24-4 are periodically read by the
한편, 도 1 중, CS는 칩 셀렉트 신호, SCLK는 직렬 클록 신호, MISO(Master In Slave Out)는 마스터측 입력·슬레이브측 출력 신호, MOSI(Master Output Slave Input)는 마스터측 출력·슬레이브측 입력 신호, REG_ERR_DET는 에러 검출 레지스터(24-4)로부터 판독되는 이상 검출 스테이터스(판정 결과)이다. 1, CS denotes a chip select signal, SCLK denotes a serial clock signal, MISO denotes a master side input / slave side output signal, MOSI (Master Output Slave Input) denotes a master side output / slave side input The signal REG_ERR_DET is an abnormality detection status (judgment result) read from the error detection register 24-4.
도 2에 CRC값 산출부(24-3)의 내부의 스테이트 머신도를 도시한다. CRC값 산출부(24-3)는, CRC 산출 인에이블이 유효한 경우, CRC값 산출 대상 레지스터(24-1)에 기록되어 있는 데이터의 CRC의 현상값(CRC 현상값)의 산출(상태 S1)과 산출한 CRC 현상값과 CRC 기대값의 비교를 반복하지만(상태 S2), CRC 기대값 산출 커맨드를 CPU(1)로부터 수취하면 CRC 기대값의 산출을 개시한다(상태 S3). CRC 기대값의 산출을 완료하면, 에러 검출 레지스터(24-4)의 값을 클리어하여 「0」으로 하고(상태 S4), CRC 현상값의 산출을 반복한다(상태 S1).FIG. 2 shows a state machine diagram of the CRC value calculation unit 24-3. When the CRC calculation enable is valid, the CRC value calculator 24-3 calculates the CRC phenomenon value (CRC phenomenon value) (state S1) of the data recorded in the CRC value calculation object register 24-1, (State S2). When receiving the CRC expected value calculation command from the
CRC값 산출부(24-3)는, 이 CRC 현상값의 산출의 반복 중, 노이즈 등의 이상에 의해, CRC값 산출 대상 레지스터(24-1)에 기록되어 있는 데이터의 값이 재기록되어, CRC 현상값과 CRC 기대값의 불일치가 발생하면, 에러 검출 레지스터(24-4)의 값에 「1」을 세트한다. The CRC value calculation unit 24-3 rewrites the value of the data recorded in the CRC value calculation object register 24-1 due to an abnormality such as noise during repetition of calculation of the CRC phenomenon value, If there is a mismatch between the present value and the CRC expected value, " 1 " is set to the value of the error detection register 24-4.
이 스테이터스 머신도로부터도 알 수 있는 바와 같이, CRC값 산출부(24-3)는, CRC 현상값의 산출을 반복할 때마다, 산출한 CRC 현상값과 CRC 기대값의 일치/불일치를 판정하고, 그 판정 결과를 에러 검출 레지스터(24-4)에 기록한다.As can be seen from this status machine, the CRC value calculating section 24-3 determines whether the calculated CRC phenomenon value and the CRC expected value match / mismatch each time the CRC phenomenon value is repeatedly calculated , And writes the determination result to the error detection register 24-4.
본 실시형태에 있어서, 에러 검출 레지스터(24-4)의 값은 처음에는 「0」으로 되어 있고, CRC 현상값과 CRC 기대값 사이에 불일치가 발생하면, 이 에러 검출 레지스터(24-4)의 값이 「1」로 재기록된다. 즉, 에러 검출 레지스터(24-4)의 값(이상 검출 스테이터스)은, CRC 현상값과 CRC 기대값의 일치/불일치의 판정 결과가 「일치」인 경우에는 「0」으로 되고, 「불일치」인 경우에는 「1」로 된다. 「일치」인 경우에는, 에러 검출 레지스터(24-4)의 값은 재기록되지 않으나, 결과적으로는 「0」을 기록하고 있다고 할 수 있다.In the present embodiment, the value of the error detection register 24-4 is initially " 0 ", and when a mismatch occurs between the CRC phenomenon value and the CRC expected value, the value of the error detection register 24-4 The value is rewritten to " 1 ". That is, the value (abnormal detection status) of the error detection register 24-4 is "0" when the CRC phenomenon value and the CRC expected value match / Quot; 1 ". In the case of " match ", the value of the error detection register 24-4 is not rewritten, but it can be said that "0" is recorded as a result.
한편, 도 2에 있어서, 「IDLE」는 초기 상태(상태 S0), 「CALC」는 CRC 현상값의 산출을 행하는 상태(상태 S1), 「RESULT」는 CRC 현상값과 CRC 기대값의 비교를 행하는 상태(상태 S2), 「REF_CALC」는 CRC 기대값의 산출을 행하는 상태(상태 S3), 「REF_RESULT」는 이상 검출 스테이터스의 클리어를 행하는 상태(상태 S4)를 나타낸다.2, "IDLE" indicates an initial state (state S0), "CALC" indicates a state of calculating a CRC developing value (state S1), and "RESULT" indicates a comparison between a CRC developing value and a CRC expected value Quot; REF_CALC " indicates a state in which the CRC expected value is calculated (state S3), and " REF_RESULT " indicates a state (state S4) in which the error detection status is cleared.
또한, 도 2에 있어서, 상태 S1에서 CRC 현상값이 반복해서 산출되는데, 이 CRC 현상값은 산출될 때마다 CRC값 산출 비대상 레지스터(24-2)에 갱신 기억(덮어쓰기)된다. 또한, 상태 S3에서 CRC 기대값이 산출되는데, 이 CRC 기대값은 CRC 기대값 산출 커맨드에 의해 1회만 구해지는 것이며, CRC값 산출부(24-3) 내의 메모리에 기억된다. Further, in FIG. 2, the CRC phenomenon value is repeatedly calculated in the state S1. The CRC phenomenon value is updated (overwritten) in the CRC value calculation ratio target register 24-2 every time it is calculated. In the state S3, the CRC expected value is calculated. This CRC expected value is obtained only once by the CRC expected value calculating command, and is stored in the memory in the CRC value calculating section 24-3.
도 1에 있어서, CPU(1)는, 에러 검출 레지스터(24-4)에 기록되어 있는 판정 결과 및 CRC값 산출 비대상 레지스터(24-2)에 기억되어 있는 CRC 현상값을 정기적으로 판독한다. 그리고, 이 판독한 판정 결과(제1 판정 결과) 및 CRC 현상값으로부터 얻어지는 판정 결과(제2 판정 결과)에 기초하여 CRC값 산출 대상 레지스터(24-1)에 기록되어 있는 데이터의 이상을 검출한다. 예컨대, 제1 판정 결과가 「일치」이고 또한 제2 판정 결과도 「일치」였던 경우에 CRC값 산출 대상 레지스터(24-1)에 기록되어 있는 데이터가 정상이라고 판단하고, 그 외의 경우에는 이상이라고 판단한다.In Fig. 1, the
본 실시형태에 있어서, CPU(1)가 IC(2)로부터 판독할 수 있는 CRC값은, CRC 현상값만으로 되어 있다. 즉, CPU(1)는, CRC값 산출 대상 레지스터(24-1)에 기록한 데이터의 CRC 기대값과 IC(2)로부터 판독한 CRC 현상값의 일치/불일치의 판정 결과를 CRC 현상값으로부터 얻어지는 판정 결과(제2 판정 결과)로서 구하는 것이지만, CRC값 산출부(24-3)에서 산출된 CRC 기대값은 판독할 수 없다.In the present embodiment, the CRC value that the
이 경우, CPU(1)측에서 CRC값 산출 대상 레지스터(24-1)에 기록하는 데이터의 CRC 기대값을 구해 두어도 좋으나, CPU(1)의 처리 부하가 증가한다. 그래서, 본 실시형태에서는, CPU(1)에 있어서, CRC값 산출 비대상 레지스터(24-2)로부터 판독한 최초의 CRC 현상값(CRC 기대값 산출 커맨드 발행 후의 최초의 CRC 현상값)을 CPU(1)측에서의 CRC 기대값으로 하고, 이후, CRC값 산출 비대상 레지스터(24-2)로부터 CRC 현상값을 판독할 때마다, 그 판독한 CRC 현상값과 CPU(1)측에서의 CRC 기대값의 일치/불일치를 판정하며, 그 판정 결과를 CRC 현상값으로부터 얻어지는 판정 결과(제2 판정 결과)로 한다.In this case, the CRC expected value of the data to be written in the CRC value calculation target register 24-1 at the
도 3에 CRC값 산출부(24-3)에서 행해지는 동작의 타이밍 차트를 도시한다. 도 3에 있어서, (a)∼(h)는 CRC값 산출부(24-3)의 입출력 신호, (i), (j)는 CRC값 산출부(24-3)의 내부 신호이다. FIG. 3 shows a timing chart of the operation performed by the CRC value calculating section 24-3. 3, (a) to (h) are input / output signals of the CRC value calculating unit 24-3, and (i) and (j) are internal signals of the CRC value calculating unit 24-3.
CRC값 산출부(24-3)는, CPU(1)로부터 CRC 기대값 산출 커맨드를 수취하면[도 3(c)에 나타낸 t1점], CRC 기대값의 산출을 개시한다[도 3(j)에 나타낸 t1점]. 그리고, CRC 기대값의 산출을 끝내면[도 3(j)에 나타낸 t2∼t3점], 에러 검출 레지스터(24-4)의 값을 클리어하고[도 3(f)에 나타낸 t2∼t3점], CRC 현상값의 산출을 개시한다[도 3(j)에 나타낸 t3점]. When the CRC value calculation command is received from the CPU 1 (t1 point shown in Fig. 3 (c)), the CRC value calculation unit 24-3 starts calculating the CRC expected value (Fig. 3 (j) T1 point shown in Fig. 3 (j)], the value of the error detection register 24-4 is cleared (points t2 to t3 shown in FIG. 3 (f)), The calculation of the CRC phenomenon value starts (t3 point shown in Fig. 3 (j)).
CRC값 산출부(24-3)는, CRC 현상값을 산출할 때마다 CRC 기대값과의 비교를 행하고, 산출된 CRC 현상값과 CRC 기대값의 불일치를 확인하면[도 3(j)에 나타낸 t4∼t5점], 에러 검출 레지스터(24-4)의 값(이상 검출 스테이터스)을 「1」로 한다[도 3(g)에 나타낸 t4∼t5점].The CRC value calculator 24-3 compares the CRC value with the CRC expected value every time the CRC phenomenon value is calculated and confirms the discrepancy between the calculated CRC phenomenon value and the CRC expected value (see FIG. 3 (j) t4 to t5] and the value of the error detection register 24-4 (error detection status) to "1" (points t4 to t5 shown in FIG. 3 (g)).
한편, 이 CRC값 산출부(24-3)에서 행해지는 처리 동작에 있어서, CRC 기대값의 산출에 필요한 시간(CRC 기대값 산출 기간)(TA)과 CRC 현상값의 산출에 필요한 시간(CRC 현상값 산출 기간)(TB)은 동일하다. 예컨대, CRC값 산출 대상 레지스터(24-1)가 60바이트이고, 1바이트씩 CRC 산출을 행했다고 하면, CRC의 산출에 필요한 시간은 60사이클이 된다.On the other hand, in the processing operation performed by the CRC value calculator 24-3, the time required to calculate the CRC expected value (CRC expected value calculation period) (TA) and the time required for calculating the CRC phenomenon value Value calculation period) TB are the same. For example, if the CRC value calculation target register 24-1 is 60 bytes and CRC calculation is performed by one byte, the time required for CRC calculation is 60 cycles.
도 4는 전술한 IC(2)측에서의 처리를 기능 블록화한 도면이다. IC(2)는, 레지스터(2A)와, 데이터 기록부(2B)와, CRC 기대값 산출부(2C)와, CRC 현상값 산출부(2D)와, CRC 현상값 기억부(2E)와, CRC 기대값 기억부(2F)와, 일치/불일치 판정부(2G)와, 에러 검출 레지스터(2H)를 구비하고 있다. 4 is a functional block diagram of the processing on the
한편, 이 기능 블록도에 있어서, 레지스터(2A)는 도 1에서의 CRC값 산출 대상 레지스터(24-1)에 상당하고, CRC 현상값 기억부(2E)는 CRC값 산출 비대상 레지스터(24-2)에 상당하며, 에러 검출 레지스터(2H)는 에러 검출 레지스터(24-4)에 상당한다. 또한, CRC 기대값 산출부(2C), CRC 현상값 산출부(2D), CRC 기대값 기억부(2F) 및 일치/불일치 판정부(2G)는, CRC값 산출부(24-3) 내의 처리 기능에 대응한다. In this functional block diagram, the
또한, 이 기능 블록도에 있어서, CRC 기대값 산출부(2C)와 CRC 현상값 산출부(2D)는, 그 처리 기능을 구별하기 위해서 2개로 나누어 나타내고 있으나, 하드웨어적으로 다른 회로로서 존재하고 있는 것은 아니며, 공통의 회로(동일한 회로)로 되어 있다. 즉, 이 공통의 회로에 있어서, CRC 기대값 산출 커맨드를 접수한 후에 산출한 CRC값을 CRC 기대값이라고 판단하여 CRC 기대값 기억부(2F)에 저장하고, 그 이외일 때에 산출한 CRC값을 CRC 현상값으로서 CRC 현상값 기억부(2E)에 저장한다. 즉, CRC 기대값의 생성과 CRC 현상값의 생성은 완전히 동일한 계산식으로 산출하기 때문에, 다른 회로로서 존재시킬 필요는 없다. CRC 기대값과 CRC 현상값을 동시에 산출하는 것이면, 다른 회로로서 준비할 필요가 있으나, 이 예에서는 CRC 기대값과 CRC 현상값의 산출은 배타적으로 실행한다. 물론, 중복된 구성이 되기는 하지만, CRC 기대값과 CRC 현상값을 산출하는 회로를 다른 회로로서 준비해도 좋다.In this functional block diagram, the CRC expected
이 IC(2)에 있어서, 데이터 기록부(2B)는, CPU(1)로부터의 레지스터 기록 커맨드(데이터+커맨드)를 받아, 레지스터(2A)에 CPU(1)로부터의 데이터를 기록한다. CRC 기대값 산출부(2C)는, CPU(1)로부터의 CRC 기대값 산출 커맨드를 받아, 레지스터(2A)에 기록되어 있는 데이터의 CRC 기대값을 산출한다. CRC 기대값 기억부(2F)는, CRC 기대값 산출부(2C)에 의해 산출된 CRC 기대값을 기억한다. In the
CRC 현상값 산출부(2D)는, CRC 기대값 산출부(2C)에서 CRC 기대값이 산출된 후, 레지스터(2A)에 기록되어 있는 데이터의 CRC 기대값에 대응하는 CRC 현상값의 산출을 반복한다. CRC 현상값 기억부(2E)는, CRC 현상값 산출부(2D)에 의해 CRC 현상값이 산출될 때마다, 산출된 CRC 현상값을 갱신 기억한다.The CRC phenomenon
일치/불일치 판정부(2G)는, CRC 현상값 산출부(2D)에 의해 CRC 현상값이 산출될 때마다, 산출된 CRC 현상값과 CRC 기대값의 일치/불일치를 판정하고, 그 판정 결과(「0」/「1」)를 제1 판정 결과로서 에러 검출 레지스터(2H)에 기록한다. 한편, 에러 검출 레지스터(2H)에 기록되어 있는 값은, CRC 기대값 산출부(2C)에서의 CRC 기대값의 산출이 완료될 때마다 클리어된다.Each time the CRC phenomenon value is calculated by the CRC phenomenon
도 5는 전술한 IC(2)측에서의 처리를 도시한 플로우차트이다. 데이터 기록부(2B)는, CPU(1)로부터 레지스터 기록 커맨드가 보내져 오면(단계 S101의 YES), 레지스터(2A)에 데이터를 기록한다(단계 S102). CRC 기대값 산출부(2C)는, 레지스터 기록 커맨드의 발행 후, CPU(1)로부터 CRC 기대값 산출 커맨드가 보내져 오면(단계 S103의 YES), CRC 기대값을 산출한다(단계 S104). 또한, 이 CRC 기대값의 산출 후, 에러 검출 레지스터(2H)의 값을 클리어한다(단계 S105). 5 is a flowchart showing the processing on the
CRC 현상값 산출부(2D)는, CRC 기대값 산출부(2C)에서의 CRC 기대값의 산출이 완료되면, CRC 현상값의 산출을 개시한다(단계 S106). 일치/불일치 판정부(2G)는, CRC 현상값 산출부(2D)에서의 CRC 현상값의 산출이 완료되면, 이 산출한 CRC 현상값과 CRC 기대값 산출부(2C)가 산출한 CRC 기대값의 일치/불일치를 판정한다(단계 S107). Upon completion of calculation of the CRC expected value in the CRC expected
일치/불일치 판정부(2G)에서의 일치/불일치의 판정은, CRC 현상값 산출부(2D)에서 CRC 현상값이 산출될 때마다 반복되고(단계 S101→S106→S107의 반복), 이 CRC 현상값의 산출의 반복 중에 「불일치」라고 하는 판정 결과가 얻어진 경우, 일치/불일치 판정부(2G)는 에러 검출 레지스터(2H)의 값을 「1」로 한다(단계 S108).The determination of coincidence / non-coincidence in the coincidence /
도 6은 전술한 CPU(1)측에서의 처리를 도시한 플로우차트이다. CPU(1)는, IC(2)의 리셋을 해제한 후(단계 S201), IC(2)에 대해 레지스터 기록 커맨드를 발행했는지의 여부를 확인한다(단계 S202). IC(2)에 대한 레지스터 기록 커맨드의 발행을 확인하면(단계 S202의 YES), IC(2)에 대해 CRC 기대값 산출 커맨드를 발행한다(단계 S203).6 is a flowchart showing the processing on the
그리고, CPU(1)는, IC(2)에 있어서 CRC값의 산출이 완료되는 것을 기다리고(단계 S204), CRC 현상값 기억부(2E)에 기억되어 있는 CRC 현상값(CRC 기대값 산출 커맨드 발행 후의 최초의 CRC 현상값)을 판독하며, 그 판독한 CRC 현상값을 CPU(1)측에서의 CRC 기대값으로서 보존한다(단계 S205).Then, the
그리고, CPU(1)는, 에러 검출 레지스터(2H)에 기록되어 있는 판정 결과(제1 판정 결과) 및 CRC 현상값 기억부(2E)에 기억되어 있는 CRC 현상값을 판독하고(단계 S206), 에러 검출 레지스터(2H)로부터 판독한 판정 결과(제1 판정 결과)가 「0」이고, 또한 CRC 현상값 기억부(2E)로부터 판독한 CRC 현상값과 단계 S205에서 보존한 CPU(1)측의 CRC 기대값이 일치하고 있었던 경우(제2 판정 결과가 「0」이었던 경우)(단계 S207의 YES), 즉 제1 판정 결과가 「일치」이고 또한 제2 판정 결과도 「일치」였던 경우, 레지스터(2A)에 기록되어 있는 데이터는 정상이라고 판단하고, 단계 S202로 되돌아간다. The
CPU(1)는, IC(2)에 대해 레지스터 기록 커맨드를 한 번 발행하면, 다음의 레지스터 기록 커맨드를 발행할 때까지, 단계 S202, S206, S207의 처리를 반복한다. 이 단계 S202, S206, S207의 처리의 반복 중, 제1 판정 결과가 「일치」이고 또한 제2 판정 결과도 「일치」라고 하는 결과가 얻어지지 않은 경우(단계 S207의 NO), 즉 제1 판정 결과와 제2 판정 결과 중 적어도 한쪽이 「불일치」였던 경우, CPU(1)는, 레지스터(2A)에 기록되어 있는 데이터에 이상이 발생하고 있는 것으로 판단하고, 이상 처리를 행한다(단계 S208). 이 단계 S208에서의 이상 처리의 내용은, 각 시스템에서 적절한 방법을 결정한다. When issuing the register write command once to the
이와 같이 하여, 본 실시형태의 레지스터 이상 검출 장치(100)에 의하면, IC(2)측에서의 판정 결과(제1 판정 결과)와 CPU(1)측에서의 판정 결과(제2 판정 결과)가 모두 「일치」가 된 경우에 레지스터(2A)에 기록되어 있는 데이터가 정상이라고 판단되고, 그 외의 경우에는 이상이라고 판단되는 것이 된다. 이에 의해, CPU(1)로서 처리 능력이 높은 CPU를 이용하지 않고, 이상 검출의 신뢰성을 높일 수 있게 된다.As described above, according to the register
한편, 전술에서는 설명을 생략하였으나, 이 레지스터 이상 검출 장치(100)에서는, IC(2)측에서의 제1 판정 결과와 CPU(1)측에서의 제2 판정 결과에 기초하여 레지스터(2A)에 기록되어 있는 데이터의 이상을 검출할지, IC(2)측에서의 제1 판정 결과만으로 레지스터(2A)에 기록되어 있는 데이터의 이상을 검출할지, CPU(1)측에서의 제2 판정 결과만으로 레지스터(2A)에 기록되어 있는 데이터의 이상을 검출할지에 대해 선택하는 것이 가능하게 되어 있다. On the other hand, although not described in the foregoing description, in the register
이 경우, CPU(1)는, 레지스터의 이상 검출 방식으로서 제1 방식이 선택되어 있는 경우에는, IC(2)측에서의 제1 판정 결과만으로 레지스터(2A)에 기록되어 있는 데이터의 이상을 검출하고, 제2 방식이 선택되어 있는 경우에는, CPU(1)측에서의 제2 판정 결과만으로 레지스터(2A)에 기록되어 있는 데이터의 이상을 검출하며, 제3 방식이 선택되어 있는 경우에는, IC(2)측에서의 제1 판정 결과와 CPU(1)측에서의 제2 판정 결과에 기초하여 레지스터(2A)에 기록되어 있는 데이터의 이상을 검출한다. In this case, when the first method is selected as the error detection method of the register, the
도 7에 제1 방식이 선택되어 있는 경우의 CPU(1)측에서 행해지는 처리의 플로우차트를 도시한다. 이 경우, CPU(1)는, IC(2)의 리셋을 해제한 후(단계 S301), IC(2)에 대해 레지스터 기록 커맨드를 발행했는지의 여부를 확인한다(단계 S302). IC(2)에 대한 레지스터 기록 커맨드의 발행을 확인하면(단계 S302의 YES), IC(2)에 대해 CRC 기대값 산출 커맨드를 발행한다(단계 S303). Fig. 7 shows a flowchart of a process performed by the
그리고, CPU(1)는, IC(2)에 있어서 CRC값의 산출이 완료되는 것을 기다리고(단계 S304), 에러 검출 레지스터(2H)에 기록되어 있는 판정 결과(제1 판정 결과)를 판독하며(단계 S305), 에러 검출 레지스터(2H)로부터 판독한 판정 결과(제1 판정 결과)가 「1」이 아니었던 경우에는(단계 S306의 NO), 즉 제1 판정 결과가 「0」이었던 경우에는, 레지스터(2A)에 기록되어 있는 데이터는 정상이라고 판단하고, 단계 S302로 되돌아간다. The
CPU(1)는, IC(2)에 대해 레지스터 기록 커맨드를 한 번 발행하면, 다음의 레지스터 기록 커맨드를 발행할 때까지, 단계 S302, S305, S306의 처리를 반복한다. 이 단계 S302, S305, S306의 처리의 반복 중, 제1 판정 결과가 「1」이 된 경우(단계 S306의 YES), 즉 제1 판정 결과가 「불일치」가 된 경우, CPU(1)는, 레지스터(2A)에 기록되어 있는 데이터에 이상이 발생하고 있는 것으로 판단하고, 이상 처리를 행한다(단계 S307). 이 단계 S307에서의 이상 처리의 내용은, 각 시스템에서 적절한 방법을 결정한다. When the
도 8에 제2 방식이 선택되어 있는 경우의 CPU(1)측에서 행해지는 처리 동작의 플로우차트를 도시한다. 이 경우, CPU(1)는, IC(2)의 리셋을 해제한 후(단계 S401), IC(2)에 대해 레지스터 기록 커맨드를 발행했는지의 여부를 확인한다(단계 S402). IC(2)에 대한 레지스터 기록 커맨드의 발행을 확인하면(단계 S402의 YES), IC(2)에 대해 CRC 기대값 산출 커맨드를 발행한다(단계 S403). Fig. 8 shows a flowchart of a processing operation performed on the
그리고, CPU(1)는, IC(2)에 있어서 CRC값의 산출이 완료되는 것을 기다리고(단계 S404), CRC 현상값 기억부(2E)에 기억되어 있는 CRC 현상값(CRC 기대값 산출 커맨드 발행 후의 최초의 CRC 현상값)을 판독하며, 그 판독한 CRC 현상값을 CPU(1)측에서의 CRC 기대값으로서 보존한다(단계 S405). Then, the
그리고, CPU(1)는, CRC 현상값 기억부(2E)에 기억되어 있는 CRC 현상값을 판독하고(단계 S406), 이 CRC 현상값 기억부(2E)로부터 판독한 CRC 현상값과 단계 S405에서 보존한 CPU(1)측의 CRC 기대값이 일치하고 있었던 경우(단계 S407의 YES), 즉 제2 판정 결과가 「일치」였던 경우, 레지스터(2A)에 기록되어 있는 데이터는 정상이라고 판단하고, 단계 S402로 되돌아간다. The
CPU(1)는, IC(2)에 대해 레지스터 기록 커맨드를 한 번 발행하면, 다음의 레지스터 기록 커맨드를 발행할 때까지, 단계 S402, S406, S407의 처리를 반복한다. 이 단계 S402, S406, S407의 처리의 반복 중, 제2 판정 결과가 「일치」라고 하는 결과가 얻어지지 않은 경우(단계 S407의 NO), 즉 제2 판정 결과가 「불일치」였던 경우, CPU(1)는, 레지스터(2A)에 기록되어 있는 데이터에 이상이 발생하고 있는 것으로 판단하고, 이상 처리를 행한다(단계 S408). 이 단계 S408에서의 이상 처리의 내용은, 각 시스템에서 적절한 방법을 결정한다. When the
제3 방식이 선택되어 있는 경우에는 도 6을 이용하여 설명한 처리가 행해진다. 한편, 반드시 이러한 제1, 제2, 제3 방식이 선택 가능한 구성으로 하지 않아도 좋고, 제3 방식이 단독으로 채용되고 있어도 상관없다. 또한, 본 실시형태에 있어서, CPU(1)는 IC(2)로부터 이상 검출 스테이터스 및 CRC 현상값 중 적어도 한쪽을 판독하지만, 이 판독한 이상 검출 스테이터스나 CRC 현상값을 어떻게 이용할지는 사용자 나름이다. When the third scheme is selected, the process described with reference to Fig. 6 is performed. On the other hand, it is not absolutely necessary for the first, second, and third methods to be selectable, and the third method may be adopted singularly. In the present embodiment, the
또한, 전술한 실시형태에서는, CRC값의 구체적인 산출 방법에 대해서는 서술하지 않았으나, 실제로는 다항식으로서 「CRC-16-CCITT(X^16+X^12+X^5+1)」을 사용한다. 물론, 다른 다항식(예컨대, 「CRC-16」이나 「CRC-32」)을 사용하여 CRC값을 산출해도 좋다. 또한, CRC가 아니라, 「MODBUS ASCII」의 체크 섬 산출에서 이용되고 있는 「2의 보수합의 2의 보수」를 사용하는 등 해도 좋다. In the above-described embodiment, although a concrete calculation method of the CRC value is not described, "CRC-16-CCITT (
〔파생 효과〕[Derivative effect]
도 1에 있어서, CRC값 산출 대상 레지스터(24-1)에는 동작 전에 반드시 임의의 값을 기록하기 때문에, CRC값 산출 대상 레지스터(24-1)에 기록되어 있는 데이터의 CRC 현상값은 IC(2)의 동작 중, 초기값과는 상이한 값이 된다. 그 때문에, IC(2)의 동작 중에 CPU(1)로부터 CRC 현상값을 감시함으로써, 노이즈 등의 영향으로 예기하지 못한 리셋이 걸려 있지 않은지의 여부를 확인할 수 있다. 즉, 리셋이 걸리면 CRC 현상값이 초기값이 되는 것을 이용함으로써, 예기하지 못한 리셋이 걸려 있지 않은지의 여부를 확인할 수 있다.1, since an arbitrary value is always written in the CRC value calculation target register 24-1 before the operation, the CRC phenomenon value of the data recorded in the CRC value calculation destination register 24-1 is the IC (2 , It becomes a different value from the initial value. Therefore, by monitoring the CRC phenomenon value from the
또한, 도 1에 있어서, CPU(1)에의 이상 통지 방법으로서, 에러 검출 레지스터(24-4)의 값을 통신 프로토콜에 포함시킨다고 하는 방법도 있다. 예컨대, 도 9에 도시된 바와 같이, MISO 신호의 「0x04」를 내부 레지스터 이상 검출이라고 할당하고, IC 내부 상태도 체크 섬을 갖는 SPI 액세스의 응답에 포함시켜 버리도록 한다. 이에 의해, CPU(1)로부터 에러 검출 레지스터(24-4)를 폴링하는 빈도를 낮출 수 있다. 1, as a method of notifying the
〔실시형태의 확장〕[Extension of Embodiment]
이상, 실시형태를 참조하여 본 발명을 설명하였으나, 본 발명은 상기한 실시형태에 한정되는 것은 아니다. 본 발명의 구성이나 상세에는, 본 발명의 기술 사상의 범위 내에서 당업자가 이해할 수 있는 여러 가지 변경을 할 수 있다.Although the present invention has been described with reference to the embodiment, the present invention is not limited to the above embodiment. Various changes and modifications can be made by those skilled in the art without departing from the spirit and scope of the invention.
1: CPU(연산 처리부)
2: IC
21: 데이터 수신 회로
22: 커맨드 제어부
23: 데이터 송신 회로
24: 내부 레지스터
24-1: CRC값 산출 대상 레지스터
24-2: CRC값 산출 비대상 레지스터
24-3: CRC값 산출부
24-4: 에러 검출 레지스터
2A: 레지스터
2B: 데이터 기록부
2C: CRC 기대값 산출부
2D: CRC 현상값 산출부
2E: CRC 현상값 기억부
2F: CRC 기대값 기억부
2G: 일치/불일치 판정부
2H: 에러 검출 레지스터
100: 레지스터 이상 검출 장치1: CPU (operation processing unit) 2: IC
21: Data receiving circuit 22: Command control section
23: Data transmission circuit 24: Internal register
24-1: CRC value calculation target register
24-2: CRC value calculation ratio target register 24-3: CRC value calculation unit
24-4:
2B:
2D: CRC developing
2F: CRC expected
2H: Error detection register 100: Register error detection device
Claims (7)
상기 연산 처리부로부터 보내져 온 데이터를 상기 레지스터에 기록하는 데이터 기록부와,
상기 레지스터에 기록되어 있는 데이터의 이상을 검출하기 위한 검사용의 지표의 기대값을 산출하는 기대값 산출부와,
상기 레지스터에 기록되어 있는 데이터의 상기 검사용의 지표의 기대값에 대응하는 현상값(現狀値)의 산출을 반복하는 현상값 산출부와,
상기 현상값 산출부에 의해 상기 검사용의 지표의 현상값이 산출될 때마다, 산출된 검사용의 지표의 현상값을 갱신 기억하는 현상값 기억부와,
상기 현상값 산출부에 의해 상기 검사용의 지표의 현상값이 산출될 때마다, 산출된 검사용의 지표의 현상값과 상기 기대값의 일치/불일치를 판정하고, 그 판정 결과를 제1 판정 결과로서 에러 검출 레지스터에 기록하는 일치/불일치 판정부
를 포함하며,
상기 연산 처리부는,
상기 에러 검출 레지스터에 기록되어 있는 제1 판정 결과 및 상기 현상값 기억부에 기억되어 있는 검사용의 지표의 현상값 중 적어도 한쪽을 판독하는 것을 특징으로 하는 레지스터 이상 검출 장치.A register abnormality detecting apparatus comprising an arithmetic processing unit and a register in which data sent from the arithmetic processing unit is written, and detects an abnormality of data recorded in the register,
A data recording section for recording the data sent from the arithmetic processing section in the register,
An expected value calculating unit for calculating an expected value of an indicator for inspection for detecting an abnormality of data recorded in the register;
A current value calculation unit for calculating a current value corresponding to an expected value of the index for inspection of the data recorded in the register;
A development value storage unit for updating and storing the calculated development value of the indicator for inspection every time the development value of the indicator for inspection is calculated by the development value calculation unit;
And a step of determining a match / discrepancy between the calculated development value and the expected value of the index for inspection calculated each time the development value of the index for inspection is calculated by the development value calculation unit, Which is stored in the error detection register,
/ RTI >
Wherein the arithmetic processing unit comprises:
And reads at least one of a first determination result recorded in the error detection register and a development value of an indicator for inspection stored in the development value storage unit.
상기 에러 검출 레지스터에 기록되어 있는 제1 판정 결과 및 상기 현상값 기억부에 기억되어 있는 검사용의 지표의 현상값으로부터 얻어지는 제2 판정 결과에 기초하여 상기 레지스터에 기록되어 있는 데이터의 이상을 검출하는 것을 특징으로 하는 레지스터 이상 검출 장치.The image processing apparatus according to claim 1,
An abnormality of data recorded in the register is detected based on a first determination result recorded in the error detection register and a second determination result obtained from a development value of an indicator for inspection stored in the development value storage unit And said register abnormality detecting device.
상기 에러 검출 레지스터에 기록되어 있는 제1 판정 결과 및 상기 현상값 기억부에 기억되어 있는 검사용의 지표의 현상값을 정기적으로 판독하고, 그 판독된 제1 판정 결과 및 검사용의 지표의 현상값으로부터 얻어지는 제2 판정 결과에 기초하여 상기 레지스터에 기록되어 있는 데이터의 이상을 검출하는 것을 특징으로 하는 레지스터 이상 검출 장치.The image processing apparatus according to claim 1,
A first determination result recorded in the error detection register and a development value of an indicator for inspection stored in the development value storage unit are periodically read and the read first determination result and development value of an indicator for inspection And an error of the data recorded in the register is detected based on a second determination result obtained from the register.
상기 현상값 기억부로부터 판독한 최초의 검사용의 지표의 현상값을 연산 처리부측에서의 기대값으로 하고, 이후, 상기 현상값 기억부로부터 검사용의 지표의 현상값을 판독할 때마다, 그 판독된 검사용의 지표의 현상값과 상기 연산 처리부측에서의 기대값의 일치/불일치를 판정하며, 그 판정 결과를 상기 제2 판정 결과로 하는 것을 특징으로 하는 레지스터 이상 검출 장치.The image processing apparatus according to claim 3,
The present invention is characterized in that the development value of the first index for inspection read from the development value storage section is set as an expected value on the side of the operation processing section and then every time the development value of the index for inspection is read out from the development value storage section, Wherein a match / inconsistency between a present value of an index for inspection and an expected value on the side of the arithmetic processing unit is determined, and the determination result is used as the second determination result.
상기 제1 판정 결과가 「일치」이고 또한 상기 제2 판정 결과도 「일치」였던 경우에 상기 레지스터에 기록되어 있는 데이터가 정상이라고 판단하고, 그 외의 경우에는 이상이라고 판단하는 것을 특징으로 하는 레지스터 이상 검출 장치.5. The image processing apparatus according to any one of claims 2 to 4,
And judges that the data recorded in the register is normal when the first judgment result is " coincident " and the second judgment result is also " coincident " Detection device.
상기 레지스터의 이상 검출 방식으로서 제1 방식이 선택되어 있는 경우,
상기 에러 검출 레지스터에 기록되어 있는 제1 판정 결과에 기초하여 상기 레지스터에 기록되어 있는 데이터의 이상을 검출하고,
상기 레지스터의 이상 검출 방식으로서 제2 방식이 선택되어 있는 경우,
상기 현상값 기억부에 기억되어 있는 검사용의 지표의 현상값으로부터 얻어지는 제2 판정 결과에 기초하여 상기 레지스터에 기록되어 있는 데이터의 이상을 검출하며,
상기 레지스터의 이상 검출 방식으로서 제3 방식이 선택되어 있는 경우,
상기 에러 검출 레지스터에 기록되어 있는 제1 판정 결과 및 상기 현상값 기억부에 기억되어 있는 검사용의 지표의 현상값으로부터 얻어지는 제2 판정 결과에 기초하여 상기 레지스터에 기록되어 있는 데이터의 이상을 검출하는 것을 특징으로 하는 레지스터 이상 검출 장치.The image processing apparatus according to claim 1,
When the first method is selected as the abnormality detection method of the register,
An abnormality of data recorded in the register is detected based on a first determination result recorded in the error detection register,
When the second method is selected as the abnormality detection method of the register,
An abnormality of data recorded in the register is detected based on a second determination result obtained from a development value of an indicator for inspection stored in the development value storage unit,
When the third method is selected as the abnormality detection method of the register,
An abnormality of data recorded in the register is detected based on a first determination result recorded in the error detection register and a second determination result obtained from a development value of an indicator for inspection stored in the development value storage unit And said register abnormality detecting device.
통신 프로토콜에 포함시켜 상기 연산 처리부에 보내져 오는 것을 특징으로 하는 레지스터 이상 검출 장치.7. The apparatus according to any one of claims 1 to 6, wherein the first determination result recorded in the error detection register
And is included in the communication protocol and sent to the arithmetic processing unit.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016086764A JP6718294B2 (en) | 2016-04-25 | 2016-04-25 | Register error detector |
JPJP-P-2016-086764 | 2016-04-25 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170121695A true KR20170121695A (en) | 2017-11-02 |
KR101940906B1 KR101940906B1 (en) | 2019-01-21 |
Family
ID=60237913
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170049163A KR101940906B1 (en) | 2016-04-25 | 2017-04-17 | Register abnormality detection apparatus |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP6718294B2 (en) |
KR (1) | KR101940906B1 (en) |
CN (1) | CN107402830B (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109739673B (en) * | 2018-12-05 | 2023-05-09 | 新华三技术有限公司合肥分公司 | Register write-in protection method, logic device and communication equipment |
JP7350488B2 (en) * | 2019-01-30 | 2023-09-26 | ラピスセミコンダクタ株式会社 | Peripheral device control system and peripheral device control method |
CN111949547A (en) * | 2020-08-22 | 2020-11-17 | 深圳市捷诚技术服务有限公司 | Problem positioning method based on single chip microcomputer abnormity, single chip microcomputer, equipment and system |
CN115220972A (en) * | 2022-06-07 | 2022-10-21 | 中科驭数(北京)科技有限公司 | Equipment fault detection method, device, equipment and computer readable storage medium |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020006438A (en) * | 2000-07-12 | 2002-01-19 | 가나이 쓰토무 | Nonvolatile semiconductor memory device |
KR20060048803A (en) * | 2004-08-02 | 2006-05-18 | 가부시끼가이샤 르네사스 테크놀로지 | Nonvolatile memory and nonvolatile memory apparatus |
JP2008165548A (en) * | 2006-12-28 | 2008-07-17 | Mitsubishi Electric Corp | Electronic control device |
KR20080089619A (en) * | 2006-01-31 | 2008-10-07 | 후지쯔 가부시끼가이샤 | Error correction code generation method and memory management device |
KR20090005166A (en) * | 2006-04-27 | 2009-01-12 | 후지쯔 가부시끼가이샤 | Semiconductor device and system |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09311796A (en) * | 1996-05-24 | 1997-12-02 | Matsushita Electric Ind Co Ltd | Automatic restoration device for device operation |
US6725406B2 (en) * | 2001-01-09 | 2004-04-20 | Intel Corporation | Method and apparatus for failure detection utilizing functional test vectors and scan mode |
WO2003032159A2 (en) * | 2001-10-11 | 2003-04-17 | Altera Corporation | Error detection on programmable logic resources |
JP4555834B2 (en) * | 2004-12-27 | 2010-10-06 | 富士通株式会社 | Apparatus and method for determining validity of transfer data |
KR101007046B1 (en) * | 2008-04-23 | 2011-01-12 | 주식회사 애트랩 | Communication system which can be restored at the time of malfunction automatically and reconstruction method thereof |
JP2012150661A (en) * | 2011-01-19 | 2012-08-09 | Toshiba Corp | Processor operation inspection system and its inspection method |
US9087192B2 (en) * | 2013-09-10 | 2015-07-21 | Infineon Technologies Ag | Electronic circuit and method for monitoring a data processing |
JP6273979B2 (en) * | 2014-04-01 | 2018-02-07 | 株式会社デンソー | Control device or control system |
CN104679196B (en) * | 2015-03-10 | 2018-07-06 | 江苏邦融微电子有限公司 | System and its implementation are resetted when processor-based self-test, exception |
-
2016
- 2016-04-25 JP JP2016086764A patent/JP6718294B2/en active Active
-
2017
- 2017-04-17 KR KR1020170049163A patent/KR101940906B1/en active IP Right Grant
- 2017-04-24 CN CN201710272530.5A patent/CN107402830B/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20020006438A (en) * | 2000-07-12 | 2002-01-19 | 가나이 쓰토무 | Nonvolatile semiconductor memory device |
KR20060048803A (en) * | 2004-08-02 | 2006-05-18 | 가부시끼가이샤 르네사스 테크놀로지 | Nonvolatile memory and nonvolatile memory apparatus |
KR20080089619A (en) * | 2006-01-31 | 2008-10-07 | 후지쯔 가부시끼가이샤 | Error correction code generation method and memory management device |
KR20090005166A (en) * | 2006-04-27 | 2009-01-12 | 후지쯔 가부시끼가이샤 | Semiconductor device and system |
JP2008165548A (en) * | 2006-12-28 | 2008-07-17 | Mitsubishi Electric Corp | Electronic control device |
Non-Patent Citations (2)
Title |
---|
[비특허문헌 1] 「20μs 세틀링, 250kSPS의 24비트 Σ-ΔADC-Analog Devices」, 〔평성 28년 4월 5일 검색〕, 인터넷 <URL: http://www.analog.com/media/jp/technical-documentation/data-sheets/AD7176-2_jp.pdf#search='20+%CE%BCs%E3%82%BB%E3%83%88%E3%83%AA%E3%83%B3%E3%82%B0%E3%80%81250+kSPS%E3%81%AE'> |
[비특허문헌 2] 「8-Channel, Low Noise, Low Power, 24-Bit, Sigma-Delta ADC with PGA and Reference」, 〔평성 28년 4월 5일 검색〕, 인터넷 <URL: http://www.analog.com/media/en/technical-documentation/data-sheets/AD7124-8.pdf#search='8Channel%2C+Low+Noise%2C+Low+Power%2C+24Bit%2C'> |
Also Published As
Publication number | Publication date |
---|---|
KR101940906B1 (en) | 2019-01-21 |
CN107402830A (en) | 2017-11-28 |
CN107402830B (en) | 2020-11-24 |
JP2017199052A (en) | 2017-11-02 |
JP6718294B2 (en) | 2020-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101940906B1 (en) | Register abnormality detection apparatus | |
CN110442473B (en) | Nonvolatile data storage method and device, electronic equipment and medium | |
CN107607141B (en) | Diversified integrated processing using a processor and diversified firmware | |
CN114328316B (en) | DMA controller, SOC system and data carrying method based on DMA controller | |
JP2009129301A (en) | Self-diagnostic circuit and self-diagnostic method | |
CN113342671B (en) | Method, device, electronic equipment and medium for verifying operation module | |
JP2009259113A (en) | Nonvolatile memory management device | |
US9646252B2 (en) | Template clauses based SAT techniques | |
CN108459876B (en) | Method and apparatus for reduced area control register circuit | |
US7492650B2 (en) | Semiconductor storage device having a user region and a redundancy region | |
US7484147B2 (en) | Semiconductor integrated circuit | |
EP2194458A2 (en) | Request processing device, request processing system, and access testing method | |
US10401419B2 (en) | Failure detection circuit, failure detection system and failure detection method | |
CN107111563B (en) | Memory device system | |
CN108829417B (en) | Upgrading device, method, equipment and storage medium of CPLD | |
JP6842098B1 (en) | Debugging device and debugging method | |
US9442788B2 (en) | Bus protocol checker, system on chip including the same, bus protocol checking method | |
JP2006004377A (en) | Method and apparatus for processing data | |
JP2011054221A (en) | Storage device and electronic device | |
JP2005115957A (en) | Apparatus measuring system-on chip efficiency and method thereof | |
WO2007026508A1 (en) | Semiconductor device and test mode control circuit | |
WO2006129356A1 (en) | Information processing device and its incorrect operation detection method | |
JP2020149425A (en) | Semiconductor device, calculation function diagnostic method, and program | |
KR101701058B1 (en) | Parallel CRC Module Using Pipe Line and Matching the Initial Value | |
JP5704631B2 (en) | Arithmetic control apparatus, arithmetic control apparatus control method, and control program thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |