ARM Technical Support Knowledge Articles

How can we calculate the number of test cycles for RAM BIST on ARM1176 ?

Applies to: ARM1176

Answer

First calculate the number of cycles required to do a single write to all memory addresses.
This depends on the memory sizes (maximum sizes are assumed here).
For multiple instance memories, the total addresses is divided by 2 because
the RAM width is <= 32 bit and the MBIST controller data width is 64 bit which enables
2 RAM blocks to be tested simultaneously.


ITCM = 16K / 2 (2 * 8kx32)

I$ data = 16K / 2 (8 * 2kx32)

I$ tag = 2K / 2 (4 * 512x23)

DTCM = 16K / 2  (2 * 8kx32)

D$ tag = 2K / 2 (4 * 512x25)

D$ data = 16K / 2  (8 * 2kx32)

D$ dirty = 512

TLB = 64

BTAC = 128

Total cycles = 35520

Depending on the MBIST algorithm selected, the test length will be a multiple of this figure.
For example, March C+ algorithm is 14N in length, so we multiply the RAM size by 14 = 497280 cycles.

In addition, there are a few setup cycles (approx. 80) at the start of each RAM test.

Rate this article

[Bad]
|
|
[Good]
Disagree? Move your mouse over the bar and click

Did you find this article helpful? Yes No

How can we improve this article?

Link to this article
Copyright © 2011 ARM Limited. All rights reserved. External (Open), Non-Confidential