RL78/G1P
CHAPTER 20 SAFETY FUNCTIONS
R01UH0895EJ0100 Rev.1.00
644
Nov 29, 2019
20.2 Registers Used by Safety Functions
The safety functions use the following registers for each function.
Register
Each Function of Safety Function
Flash memory CRC control register (CRC0CTL)
Flash memory CRC operation result register (PGCRCL)
Flash memory CRC operation function
(high-speed CRC)
CRC input register (CRCIN)
CRC data register (CRCD)
CRC operation function
(general-purpose CRC)
RAM parity error control register (RPECTL)
RAM parity error detection function
Invalid memory access detection control register (IAWCTL)
RAM guard function
SFR guard function
Invalid memory access detection function
Timer input select register 0 (TIS0)
Frequency detection function
A/D test register (ADTES)
A/D test function
The content of each register is described in
20.3 Operation of Flash memory CRC operation function (high-speed
CRC)
.
20.3 Operation of Flash memory CRC operation function (high-speed CRC)
The IEC60730 standard mandates the checking of data in the flash memory, and recommends using CRC to do it. The
high-speed CRC provided in the RL78/G1P can be used to check the entire code flash memory area during the
initialization routine. The high-speed CRC can be executed only when the program is allocated on the RAM and in the
HALT mode of the main system clock.
The high-speed CRC performs an operation by reading 32-bit data per clock from the flash memory while stopping the
CPU. This function therefore can finish a check in a shorter time (for example, 171
s@24 MHz with 16 KB flash memory).
The CRC generator polynomial used complies with “X
16
+ X
12
+ X
5
+ 1” of CRC-16-CCITT.
The high-speed CRC operates in MSB first order from bit 31 to bit 0.
Caution The CRC operation result might differ during on-chip debugging because the monitor program is
allocated.
Remark
The operation result is different between the high-speed CRC and the general CRC, because the general
CRC operates in LSB first order.