March memory algorithm implementation

I am looking for a memory testing algorithm that will help my team verify the design and test during production (poor soldering, interconnected addresses / data lines, inappropriate impedances, mirroring, etc.).

I read, for example, March C or similar - this is the answer to our prayers, but I have not yet found an implementation of one such algorithm that we can just take.

+3
source share
1 answer

I have been testing boards for over 20 years, and today is the first time you hear about this march test or algorithm. And, looking at this, it bothers me to see a name that applies to common sense, as if this person or group came up with common sense.

, , , . , , . , . , , , , , , , , , , .

, , , , 0xFFF..., , 0x5s 0xAs. 0x6s 0x9s 0xCs 0x3s, . , 0x5s 0xAs .. . 0x00..001, 0x00... 002, 0x00... 004 .., 0xff..ffe, 0xff..ffd ..

, , . , , . , , memmory , , .

, , - . 32- , 16- , 32 , , 16 32. 64- 32- ( 32- 72- , ), . , , , .

. .

, , , . ( , ). , , , , , , , , .

, , . , , , . 257 , , . , 2, . , , . , ( ).

, . , , , , , , . (dma ..) , ... , , , , , . , , , , . , . .

, . , . , , , , , , . , , , , . , , , , , , , , , , , .

. LFSR, , , , , 16-, 16 . , lfsr , , .

unsigned int fastprand16 ( unsigned int prand )
{
    // 16 bit lfsr  bits 16,14,13,11
    if(prand&1)
    {
        prand>>=1;
        prand^=0x0000B400;
    }
    else
    {
        prand>>=1;
    }
    return(prand&0x0000FFFF);
}

- lfsr, . , , , .

, . os . , , , - . - lfsr , , , . homebrew .

BIST, , prand, prand, . prand, , , , . / , . lfsr, . , , lfsr , .

- . , , . , , , . , , . , , , , ( , , sram - ), , , , , , , , , , . , - , ? , , , . rom -, .

ECC- - , ecc , ecc, , ecc, . , , , , ecc-, , , , , ( ). , , , , , , , . ecc .

, , , , . , ( ) , 2gz , ( ). , , (, / bsp), , . , . , . /.

, , / " ". . (-), , .

, , - ...

+9

Source: https://habr.com/ru/post/1765161/


All Articles