March Algorithm
Appearance
The March algorithm tests SRAM memory by filling all its entries test patterns It carries out several passes through an SRAM checking the patterns and writing new patterns. The SRAM read and write operations performed on each pass are called a March element and each element is repeated for each entry [1] [2]. The March algorithm is often used to find functional faults in SRAM during testing [3].
- Stuck-at Faults (SAFs)
- Transition Faults (TFs)
- Address Decoder Faults (AFs)
- Coupling Faults (CFs), such as Inversion (CFin), Idempotent (CFid), and State (CFst) coupling faults
Test sequence
- Ascending: Write 0 to all cells.
- Ascending: Read 0, then write 1.
- Ascending: Read 1, then write 0.
- Ascending: Read 0.
- Descending: Read 0, then write 1.
- Descending: Read 1, then write 0.
- Ascending: Read 0
Mach C-
Mach C- is a less robust variant of the March algorithm that detects Address and Coupling faults, but it is significantly faster.
Test sequence
- Ascending: Write 0 to all cells.
- Ascending: Read 0, then write 1.
- Ascending: Read 1, then write 0.
- Descending: Read 0, then write 1.
- Descending: Read 1, then write 0.
- Ascending: Read 0.
- ^ "Documentation – Arm Developer". developer.arm.com. Retrieved 2025-05-25.
- ^ Van De Goor, A.J. (1993-03). "Using march tests to test SRAMs". IEEE Design & Test of Computers. 10 (1): 8–14. doi:10.1109/54.199799. ISSN 1558-1918.
{{cite journal}}
: Check date values in:|date=
(help) - ^ "March-based SRAM diagnostic algorithm for distinguishing Stuck-At and transition faults". IEICE Electronics Express. 6 (15). August 10, 2009.