Introduction to RAM testing methods based on several commonly used single-chip microcomputer systems

Publisher:知识智慧Latest update time:2014-01-02 Source: eccnKeywords:MCU Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

In various single-chip microcomputer application systems, the normality of the memory is directly related to the normal operation of the system. In order to improve the reliability of the system, it is necessary to test the reliability of the system . Through testing, the damage caused by memory failure to the system can be effectively discovered and solved. This article specifically introduces several commonly used single-chip microcomputer system RAM testing methods, and on this basis, proposes a RAM fault testing method based on seed and bit-by-bit inversion .

1 RAM test method review

(1) Method 1

This method is to check in two steps: #00H and #FFH are sent to the entire data area successively, and then read out successively for comparison. If they are different, it means an error.

(2) Method 2

Method 1 cannot completely check the RAM errors. A standard algorithm for RAM detection, MARCH-G, is introduced. MARCH-G algorithm can provide excellent fault coverage, but the required testing time is very large. MARCH-G algorithm needs to traverse the entire address space three times. Assuming the address line is "root", the CPU needs to access the RAM 6×2n times.

(3) Method 3

A method for completing a test by shifting an address signal. On the basis that the address signal is all 0, the signal of the address line Ai is only inverted once each time, while the signals of other non-detection address lines Aj (i≠j) are kept at 0, and the process is performed bit by bit from low to high; then on the basis that the address signal is all 1, the signal of the address line Ai is only inverted once each time, while the signals of other non-detection address lines Aj (i≠j) are kept at 1, and the process is performed bit by bit from low to high. Therefore, the shift of the address signal is actually nonlinear addressing according to 2K (K is an integer, and the maximum value is the width of the address bus), and the entire required address range can be regarded as generated by shifting with all 0 and all 1 as the background. Different pseudo-random data is written to the corresponding storage unit at the same time as the address changes. After the above write unit operation is completed, the address signal is shifted in reverse order to read the written pseudo-random data and perform detection. If there are n address lines, the CPU only accesses 2n+2 storage units in the system RAM.

2 RAM testing method based on seed and bit-by-bit inversion

The test method based on seed and bit-by-bit inversion is further improved on the basis of method 3. Method 3 mainly uses two background numbers of all 0 and all 1 for shift expansion. Compared with the MARCH-G algorithm, the fault coverage obtained is slightly lower, but fewer address units are used. Here we call the background number in method 3 "seed". Taking the RAM with 8 address lines as an example, the seeds are 00000000 and 11111111, 0000llll and llll0000, 00000000, 111111111, 0000llll and llll0000, and 00000000, 111111111, 00001111, 11110000, 00110011, 1100llOO, 01010101 and 10101010 for shift expansion test. The fault coverage achieved is different. The improved method with 2 seeds has a lower fault coverage than the MARCH-G algorithm, the improved method with 4 seeds is equivalent to the MARCH-G algorithm, and the improved method with 8 seeds can exceed the effect of the MARCH-G algorithm. Overall, the improved method based on seeds and bit-by-bit inversion can replace the MARCH-G algorithm, but the number of addressing times required is different for different seed numbers. Assuming that there are n address lines, when the number of seeds is 2, the RAM needs to be accessed a total of 4"+4 times, when the number of seeds is 4, the RAM needs to be accessed a total of 8n+8 times, when the number of seeds is 8, the RAM needs to be accessed a total of 16n+16 times, and the MARCH-G algorithm needs to access the RAM a total of 6×2n times. It can be seen that the improved method based on seeds and bit-by-bit inversion has a much lower test time overhead than the MARCH-G algorithm. At the same time, the fault coverage will increase with the increase of the number of seeds. Of course, the test time overhead required for different seed numbers is also different. In actual test applications, the appropriate number of seeds should be selected according to the requirements of test time and test fault coverage to achieve satisfactory results.

3 Conclusion

This paper introduces the general method of RAM testing in single-chip microcomputer systems, and proposes a RAM fault testing method based on seeds and bit-by-bit inversion. It has the characteristics of short diagnosis time and high fault coverage, so it has high application value.

Keywords:MCU Reference address:Introduction to RAM testing methods based on several commonly used single-chip microcomputer systems

Previous article:Application of single chip microcomputer ADuC812 in storage test system
Next article:Research on intelligent online detection system of special-shaped curved surface based on single chip microcomputer control

Recommended ReadingLatest update time:2024-11-16 14:55

Some study notes on AVR microcontrollers
The following is my learning experience when learning AVR microcontrollers. I share it with everyone so that we can learn together. 1. AVR microcontrollers use RISC architecture, while 8051 microcontrollers use CISC architecture. The former is 2 to 4 times faster than the latter and uses pipeline operation instructi
[Microcontroller]
Color control solution for LED lighting based on small MCU
Under the general trend, the use of LEDs for general lighting is just around the corner. LEDs have many advantages in general lighting, such as longer life and higher efficiency. However, LED technology still faces some challenges. One of the challenges is how to produce high-quality white light. White light LEDs cons
[Analog Electronics]
Color control solution for LED lighting based on small MCU
Single chip alarm clock programming
This is an extension of the previous electronic clock, mainly adding an alarm module. That is, it will ring for one minute when the preset time is reached, and stop automatically after one minute. You can also press the set key to stop it manually. This is the end of our study on digital tubes. The next step is to
[Microcontroller]
PIC microcontroller internal A/D conversion
//Requirement, connect the potentiometer on the board to RA0, set the AD-related registers of PIC, and display the voltage #include pic.h __CONFIG(0x3831); //Configuration bit 18323831 #define uint unsigned int #define uchar unsigned char   //Common cathode digital tube (the board uses Darlington tube ULN2003, invert
[Microcontroller]
51 Single Chip Microcomputer Frequency Counter Course Design
Introduction: Use the T0 and T1 timing counter functions of the AT89S51 microcontroller to count the frequency of the input signal, and the counting frequency result is displayed through an 8-bit dynamic digital tube. It is required to be able to accurately count the signal frequency of 0-250KHZ, and the counting erro
[Microcontroller]
51 Single Chip Microcomputer Frequency Counter Course Design
Freescale MCU DZ60---Real-time Interrupt
//RTI real-time interruption experiment //The RTC module includes a status and control register, an 8-bit count register and an 8-bit modulus register //The real-time interrupt function is used to generate periodic interrupts. RTI has three optional clock sources: LPO 1KHZ internal oscillator, 32KHZ internal clock, an
[Microcontroller]
Building the "Chinese Core" Xinhai Technology's signal chain MCU makes smart terminals smarter
Using Chinese heart to create "Chinese core" | Xinhai Technology signal chain MCU makes smart terminals smarter On December 21, the 2021 Guangdong-Hong Kong-Macao Greater Bay Area Consumer Electronics Leaders Summit, hosted by Zhuhai Advanced Integrated Circuit Research Institute, was held at Zhuhai International Co
[Microcontroller]
Building the
Design and implementation of transformer test system based on MCU+CPLD
1 Introduction BX signal transformer, BG track transformer and ZG silicon rectifier are the front end of railway signal electrical equipment. Their working stability and accuracy are directly related to driving safety. Reliable detection of transformer is the first step to strictly control quality. For manufact
[Analog Electronics]
Design and implementation of transformer test system based on MCU+CPLD
Latest Microcontroller Articles
  • Download from the Internet--ARM Getting Started Notes
    A brief introduction: From today on, the ARM notebook of the rookie is open, and it can be regarded as a place to store these notes. Why publish it? Maybe you are interested in it. In fact, the reason for these notes is ...
  • Learn ARM development(22)
    Turning off and on interrupts Interrupts are an efficient dialogue mechanism, but sometimes you don't want to interrupt the program while it is running. For example, when you are printing something, the program suddenly interrupts and another ...
  • Learn ARM development(21)
    First, declare the task pointer, because it will be used later. Task pointer volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • Learn ARM development(20)
    With the previous Tick interrupt, the basic task switching conditions are ready. However, this "easterly" is also difficult to understand. Only through continuous practice can we understand it. ...
  • Learn ARM development(19)
    After many days of hard work, I finally got the interrupt working. But in order to allow RTOS to use timer interrupts, what kind of interrupts can be implemented in S3C44B0? There are two methods in S3C44B0. ...
  • Learn ARM development(14)
  • Learn ARM development(15)
  • Learn ARM development(16)
  • Learn ARM development(17)
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号