Using ECC to Correct Soft Errors on the RA Family Microcontroller
In this short series of blogs, we’ve looked at seveRAl of the more specialized peripherals implemented on the RA microcontroller family that help build efficient applications and to offload basic system tasks from the CPU. Today This article looks at something slightly different and look and how some of the functions available on the RA family can help increase the reliability of your application. This article specifically likes to look at the error correction function available to use on the RA SRAM to detect and, in many cases, correct soft errors, as this has been a topic of discussion for a number of customers recently.
So first, let’s look at what a soft error is and how it can affect the operation of a microcontroller. A soft error is typically caused by the impact of a high-energy particle, such as a cosmic ray (typically a neutron) on our device, but can also be caused by other types of high-energy particle, such as an alpha particle (typically from a radiation source or the decay of a particle in the environment, or even an impurity in the device packaging).
The impact of the high-energy particle can cause the generation of electron/hole pairs in the device substrate that act as charge carriers. The carriers generated by the particle collide with the drain or gate and can accumulate at the drain, this can cause a large noise signal at the drain, potentially providing a path for the charge to accumulate, and this can result in a bit inversion, the changing of a “1” to a “0” or a “0” to a “1”, so causing a soft error. See the diagram below.
Today’s microcontrollers are very different from these available even a few years ago, devices in the RA family today can have 100’s of kbytes of on-chip SRAM and are implemented on very advanced process geometries. Even just a few years ago, microcontrollers typically only had a few 10’s kbytes of SRAM and were implemented on much larger geometries. This meant that in older devices, as there were a much smaller number of gates associated with the SRAM, the chance of a soft error was extremely small. In today's devices, while the chances of such an error are still small, with such a huge amount of SRAM on a chip, the chances of having a soft error have increased significantly.
If this error occurs in a critical piece of data, it can cause the application to fail. In our RA family, RENESAS has implemented a number of schemes to protect us from this failure. In the SRAM system, we have implemented both a parity bit that can detect a single-bit error on a block of the SRAM. We have also implemented an Error Correcting Code (ECC) subsystem on another block of the SRAM, this is capable of both detecting and correcting a single-bit error in each long word of SRAM and detecting a 2-bit error. This greatly increases the reliability of data held in the ECC SRAM. In the diagram above, you can see the SRAM with ECC highlighted in yellow.
The ECC system is simple to use, each 32-bit long word has an associated 7-bit ECC field, when you write a value into this SRAM, the ECC field is automatically calculated and stored alongside the long word, so each long word is represented by 39 bits, the 32-bit data, and the 7-bit ECC code.
When you read a long word of 32-bit data from the ECC SRAM area, the chip logic reads the 32-bit data and the 7-bit ECC code, and checks for an error, if it detects a single-bit error, either in the 32-bit data or in the ECC code. It will correct this error on the bus, and this corrected data will be read by the CPU.
It’s important to understand that this system does not correct the underlying 32-bit data held in the SRAM.
The ECC system will set a flag to indicate a single-bit error has occurred, and you also have the choice to generate an interrupt or even generate a reset if you are concerned this could indicate a system issue.
We have chosen not to automatically write the correct value back to SRAM as some designers don’t want cycle disturbances during operation, as the write-back would take extra time. Therefore, we provide a choice that we believe is more flexible, in this case, to write back or not under software control.
Typically, an application will use the interrupt generated by the single-bit error being detected, to read again the long word with the error, and then write it back to the same address. The act of writing the long word back will correct the error, even if the error is in the ECC code, this is also corrected as a new ECC code will be calculated based on the correct 32-bit data.
If the system detects a two-bit error, it can’t be corrected, but an interrupt or a reset can be generated to alert the user that the data in this long word is bad and will have to be managed or reset RA microcontroller.
In many safety-critical systems, it’s important to be able to test that the safety systems are operating correctly, and this ECC SRAM is no exception, the RA family implements a bypass mode that allows you to generate an ECC error in the system by writing directly to the ECC bits, they can only be accessed in this bypass mode.
Like other important functions in all RA microcontrollers, access to these special, critical functions is protected by protection registers which restrict access to registers controlling these functions.
For simplicity, in this blog, I have not covered the specific operation of the ECC function on a specific device, so please check the hardware manual of the specific RA you are using for a detailed description of the device operation. I also have not covered the impact of Trustzone on this feature, however, typically, access to these registers is only allowed from secure applications.
One thing to remember when using the ECC SRAM, when you power up or reset a device, the SRAM is undefined, so always remember to write data into the ECC SRAM before using it and never read the memory before it’s initialized, as this will always cause an ECC error.
- |
- +1 赞 0
- 收藏
- 评论 0
本文由翊翊所思转载自RENESAS Blogs,原文标题为:Using ECC to Correct Soft Errors on the RA Family,本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。
相关推荐
Reducing Noise Issues in Microcontroller Systems - Part 4
In any system, the best way to avoid noise problems is to consider noise reduction from the beginning of the design. It’s important to understand the environment that your system will operate in, what noise sources will be present, and what steps you can take to mitigate these.However, sometimes it’s not possible to completely remove every source of noise, and Renesas RA microcontrollers offer a range of features that can help you make your applications more robust.
设计经验 发布时间 : 2023-08-11
Making a Renesas RA microcontroller Time Check with the Clock Frequency Accuracy Measurement Circuit
In this blog, Renesas introduced another more unusual and less understood peripherals available in the RA microcontroller family, the Clock Frequency Accuracy Measurement Circuit or CAC.
设计经验 发布时间 : 2023-03-01
Reducing Noise Issues in Microcontroller Systems with RENESAS MCU
In this article, Renesas took a look at the differences between the idealized digital world and the real world we must design for, and looked at the various types of noise we need to manage. We’ll look at some of the typical noise sources that we can come across.
设计经验 发布时间 : 2023-06-22
RH850/U2A SERIES MICROCONTROLLER INTRODUCTION
型号- RH850/U2X,RH850/X1X,RH850/X2X,F1KH,U2A3,U2A16,F1KM,RH850/P1M-C,RH850/P1M-E,RH850/U2A8,RH850/E2X,RH850/P1M,RH850/P1L-C,RH850/U2A16,RH850/U2A6,U2A8,U2A6,RH850/U2A3,RH850/P1H-C,RH850G4MH,RH850,RH850/U2A,RH850/E1M-S2,F1H
RH850 Family Renesas microcontroller User's Manual: Hardware
型号- R7F7016124AFD,R7F7016124AFE,R7F7016203AFP-C,RH850/F1K,R7F7016233AFD,R7F7016233AFE,R7F7015423AFD,R7F7015664AFE,R7F7016204AFE,R7F7015423AFE,R7F7016204AFD,R7F7015664AFD,R7F7015773AFE,R7F7015773AFD,R7F7015423AFP-C,R7F7015623AFP-C,R7F7016234AFP-C,R7F7015823AFP-C,R7F7016034AFP-C,R7F7015864AFE,R7F7015434AFD,R7F7015973AFD,R7F7015434AFE,R7F7015973AFE,R7F7015864AFD,R7F7016033AFE,R7F7016033AFD,R7F7016863AFP-C,R7F7016463AFP-C,R7F7016453AFP-C,R7F7015664AFP-C,R7F7015633AFP-C,R7F7015624AFE,R7F7015624AFD,R7F7016463AFE,R7F7016463AFD,R7F7015573AFE,R7F7015823AFE,R7F7015573AFD,R7F7015823AFD,R7F7015873AFP-C,R7F7015473AFP-C,R7F7016864AFD,R7F7016864AFE,R7F7016853AFP-C,R7F7016024AFP-C,R7F7015604AFP-C,R7F7015474AFE,R7F7016123AFE,R7F7015474AFD,R7F7016123AFD,R7F7015774AFD,R7F7016853AFD,R7F7016853AFE,R7F7015774AFE,R7F7015463AFD,R7F7015463AFE,R7F7016213AFP-C,R7F7015863AFE,R7F7015863AFD,R7F7015433AFE,R7F7015834AFD,R7F7015433AFD,R7F7015834AFE,R7F7016473AFP-C,R7F7015614AFP-C,R7F7015574AFP-C,R7F7016234AFD,R7F7016473AFD,R7F7016473AFE,R7F7016234AFE,R7F7015604AFE,R7F7015604AFD,R7F7016114AFD,R7F7016223AFE,R7F7016114AFE,R7F7015874AFD,R7F7015874AFE,R7F7016223AFD,R7F7015813AFE,R7F7016214AFP-C,R7F7015864AFP-C,R7F7015813AFD,R7F7015974AFE,R7F7015473AFE,R7F7015974AFD,R7F7015473AFD,R7F7016113AFD,R7F7016483AFP-C,R7F7016113AFE,R7F7016023AFP-C,R7F7015673AFP-C,R7F7015634AFP-C,R7F7016224AFP-C,R7F7015824AFE,R7F7015433AFP-C,R7F7015824AFD,F7016123AFP-C,R7F7016863AFE,R7F7015874AFP-C,R7F7016863AFD,R7F7015663AFP-C,R7F7016103AFP-C,R7F7016864AFP-C,R7F7015603AFE,R7F7015603AFD,R7F7016233AFP-C,R7F7015873AFE,R7F7016843AFD,R7F7015873AFD,R7F7016224AFE,R7F7016224AFD,R7F7016134AFP-C,R7F7016843AFE,R7F7015424AFP-C,R7F7016213AFD,R7F7015833AFD,R7F7016104AFD,R7F7016213AFE,R7F7016104AFE,R7F7015833AFE,R7F7015624AFP-C,R7F7016204AFP-C,R7F7016483AFE,R7F7016033AFP-C,R7F7016483AFD,R7F7015824AFP-C,R7F7015614AFD,R7F7015614AFE,R7F7016493AFP-C,R7F7015673AFD,R7F7015673AFE,R7F7016103AFE,R7F7016103AFD,R7F7016443AFD,R7F7016443AFE,R7F7015803AFP-C,RH850 FAMILY,R7F7015573AFP-C,R7F7016223AFP-C,R7F7015973AFP-C,R7F7015434AFP-C,R7F7015834AFP-C,R7F7015674AFP-C,R7F7016443AFP-C,R7F7015814AFE,R7F7015814AFD,R7F7016843AFP-C,RH850/F1KM,R7F7015633AFE,R7F7015803AFE,R7F7015803AFD,R7F7015863AFP-C,R7F7016024AFE,R7F7016024AFD,R7F7015463AFP-C,R7F7015633AFD,R7F7016214AFE,R7F7016214AFD,R7F7016034AFD,R7F7016034AFE,R7F7015814AFP-C,R7F7016493AFE,R7F7016493AFD,R7F7016134AFD,R7F7015674AFD,R7F7016134AFE,R7F7015674AFE,R7F7015613AFE,R7F7015613AFD,R7F7016124AFP-C,R7F7010XXXAFD,R7F7010XXXAFE,R7F7015424AFD,R7F7015424AFE,R7F7015663AFD,R7F7015663AFE,R7F7016203AFD,R7F7016203AFE,R7F7015574AFD,R7F7016844AFD,R7F7016844AFE,R7F7015813AFP-C,R7F7015613AFP-C,R7F7015574AFE,R7F7015774AFP-C,R7F7015974AFP-C,R7F7016113AFP-C,R7F7016854AFD,R7F7016114AFP-C,R7F7015833AFP-C,R7F7015603AFP-C,R7F7015464AFP-C,R7F7016844AFP-C,R7F7016854AFE,R7F7015464AFD,R7F7015464AFE,R7F7015804AFE,R7F7015804AFD,R7F7015773AFP-C,R7F7016453AFD,R7F7016023AFE,R7F7016453AFE,R7F7016023AFD,R7F7015634AFD,R7F7015634AFE,R7F7016854AFP-C,R7F7015474AFP-C,R7F7015804AFP-C,R7F7016104AFP-C,R7F7015623AFE,R7F7015623AFD,R7F7016133AFP-C,R7F7016133AFE,R7F7016133AFD
RA FAMILY ENTRY LINE RA2E2 MICROCONTROLLER INTRODUCTION
型号- FPB-RA2E2,RA2E2,RA2,EK-RA2E2,RA2 SERIES,RA FAMILY
V850ES/Fx3 32-bit Single-Chip Microcontroller
型号- UPD70F3376AM2GCA1-UEU-AX,UPD70F3379M2GJA-GAE-AX,UPD70F3372M2GKA-GAK-AX,UPD70F3380M1GJA-GAE-AX,UPD70F3382M2GJA2-GAE-AX,UPD70F3383M1GMA-GAR-AX,UPD70F3384M1GMA-GAR-AX,UPD70F3373M2GKA-GAK-AX,UPD70F3372M1GKA1-GAK-AX,UPD70F3372M1GKA2-GAK-AX,UPD70F3385M1GMA-GAR-AX,UPD70F3379M2GJA1-GAE-AX,UPD70F3383M2GMA2-GAR-AX,UPD70F3382M2GJA1-GAE-AX,UPD70F3383M2GMA1-GAR-AX,UPD70F3379M2GJA2-GAE-AX,UPD70F3381M1GJA-GAE-AX,UPD70F3378M2GJA-GAE-AX,UPD70F3382M1GJA-GAE-AX,UPD70F3373M1GKA-GAK-AX,UPD70F3380M1GJA2-GAE-AX,UPD70F3384M1GMA2-GAR-AX,UPD70F3375M1GCA1-UEU-AX,UPD70F3385M1GMA2-GAR-AX,UPD70F3382M2GJA-GAE-AX,ΜPD70F3376A,UPD70F3378M1GJA-GAE-AX,UPD70F3380M2GJA-GAE-AX,UPD70F3381M2GJA-GAE-AX,UPD70F3379M1GJA-GAE-AX,UPD70F3373M1GKA2-GAK-AX,UPD70F3379M1GJA2-GAE-AX,V850ES/FX3,UPD70F3373M1GKA1-GAK-AX,UPD70F3374M1GCA)-UEU-AX,ΜPD70F3371,UPD70F3370AM1GBA2-GAH-AX,UPD70F3371M2GBA2-GAH-AX,UPD70F3374M2GCA1-UEU-AX,UPD70F3376AM1GCA1-UEU-AX,UPD70F3376AM1GCA2-UEU-AX,ΜPD70F3377A,UPD70F3378M2GJA1-GAE-AX,ΜPD70F3378,ΜPD70F3379,UPD70F3372M1GKA-GAK-AX,V850ES/FF3,UPD70F3384M2GMA1-GAR-AX,UPD70F3384M2GMA2-GAR-AX,ΜPD70F3374,UPD70F3377AM1GCA-UEU-AX,ΜPD70F3375,ΜPD70F3372,ΜPD70F3373,UPD70F3374M1GCA1)-UEU-AX,UPD70F3382M1GJA1-GAE-AX,UPD70F3371M1GBA2-GAH-AX,UPD70F3377AM2GCA2-UEU-AX,UPD70F3380M1GJA1-GAE-AX,UPD70F3384M1GMA1-GAR-AX,UPD70F3375M1GCA2-UEU-AX,ΜPD70F3381,ΜPD70F3382,UPD70F3376AM2GCA-UEU-AX,ΜPD70F3380,UPD70F3377AM1GCA2-UEU-AX,ΜPD70F3370A,V850ES/FG3,ΜPD70F3385,UPD70F3376AM2GCA2-UEU-AX,ΜPD70F3383,ΜPD70F3384,V850 FAMILY,UPD70F3378M1GJA1-GAE-AX,UPD70F3378M1GJA2-GAE-AX,UPD70F3375M1GCA-UEU-AX,UPD70F3375M2GCA2-UEU-AX,UPD70F3373M2GKA1-GAK-AX,UPD70F3373M2GKA2-GAK-AX,UPD70F3383M1GMA1-GAR-AX,UPD70F3385M2GMA2-GAR-AX,UPD70F3380M2GJA1-GAE-AX,V850,UPD70F3380M2GJA2-GAE-AX,UPD70F3385M2GMA1-GAR-AX,UPD70F3375M2GCA1-UEU-AX,UPD70F3376AM1GCA-UEU-AX,V850ES/FE3,UPD70F3370AM2GBA-GAH-AX,UPD70F3371M1GBA1-GAH-AX,UPD70F3375M2GCA-UEU-AX,UPD70F3377AM2GCA1-UEU-AX,UPD70F3382M1GJA2-GAE-AX,UPD70F3381M1GJA2-GAE-AX,UPD70F3383M1GMA2-GAR-AX,UPD70F3374M2GCA-UEU-AX,UPD70F3377AM1GCA1-UEU-AX,UPD70F3371M2GBA-GAH-AX,UPD70F3370AM2GBA2-GAH-AX,UPD70F3379M1GJA1-GAE-AX,V850ES,UPD70F3370AM1GBA1-GAH-AX,UPD70F3372M2GKA1-GAK-AX,UPD70F3371M2GBA1-GAH-AX,UPD70F3374M2GCA2-UEU-AX,UPD70F3378M2GJA2-GAE-AX,UPD70F3381M2GJA1-GAE-AX,UPD70F3381M2GJA2-GAE-AX,UPD70F3372M2GKA2-GAK-AX,V850ES/FJ3,UPD70F3370AM2GBA1-GAH-AX,UPD70F3374M1GCA2-UEU-AX,V850ES/FX3 SERIES,UPD70F3381M1GJA1-GAE-AX,UPD70F3371M1GBA-GAH-AX,UPD70F3385M1GMA1-GAR-AX,UPD70F3377AM2GCA-UEU-AX,UPD70F3384M2GMA-GAR-AX,UPD70F3383M2GMA-GAR-AX,UPD70F3385M2GMA-GAR-AX,UPD70F3370AM1GBA-GAH-AX,V850ES/FK3
Recommending the H8S Family Microcontroller IP to Users Looking For H8/3048-like IP
It might be assumed that Renesas should promote the H8/3048F IP as the main 16-bit microcontroller product of the family. However, Renesas decided to promote the H8S as the main IP for several reasons.
原厂动态 发布时间 : 2022-11-16
RA6M3 Group: Evaluation Kit for RA6M3 Microcontroller Group EK-RA6M3 v1 Errata
型号- RA6 SERIES,EK-RA6M3,RA6,RA FAMILY,RA6M3 GROUP,RA6M3
Renesas(瑞萨)通用微控制器/微处理器阵容选型指南
目录- Company and product introduction RZ Family Microcontroller RX family Microcontroller RL78 family Microcontroller Microcontroller Development Environments Microcontroller Development Tool
型号- RX200,RL78 FAMILY,RZ FAMILY,RX100,RX FAMILY,RX600,RX700,RL78
电子商城
品牌:EPSON
品类:32-bit Single Chip Microcontroller
价格:¥35.1261
现货: 4,800
现货市场
登录 | 立即注册
提交评论