The operation of MAC test features is detailed in this section.
10.1 BUILT-IN SELF-TEST OPERATION
BIST tests the MAC by circulating pseudo-random data throughout the chip. The various
subcircuits within the chip are observed as they respond to the data, and a signature
based upon their behavior is generated. This signature may be checked against a correct
signature to verify the functioning of the chip. A fault in the chip, within the coverage of
BIST, causes a different signature to be generated.
The BIST feature does not have to be run to provide correct operation of the chip. The test
is included to provide the user a means of fault-isolation testing for the application. BIST is
activated by setting the RUN_BIST bit in the MAC_RC_control register. Upon activation,
the data path LFSR and signature generator are enabled and the test proceeds.
When BIST has completed, the signature is frozen and may be read through the NPI. End
of test occurs when a value of zero is reached in the LFSR. Using a 16-bit LFSR clocked
by the 80-ns BYTCLK takes approximately 5.24 ms to circulate 65535 test patterns
through the chip. To run BIST properly, the MAC_ON and RUN_BIST bits must both be
turned off (0) for at least five BYTCLK cycles, and then both bits must be turned on (1)
simultaneously. During BIST, the MACINT line is only asserted when BIST has finished
(after 65535 BYTCLK cycles), at which time the BIST signature register is frozen. The
actual signature depends on the values of each of the writable or clearable registers, other
than the interrupt mask and interrupt event registers. In addition, the signature also
depends upon the value of the MATCH and RABORT pins (usually negated during BIST).
MTESTx should be zero. Also, the TX_PARITY_ON bit should be zero; otherwise, the
parity of the nine lines (TPATHx and TPRITY) will also affect the BIST signature.
SYMCLK, RCDATx, and TXCTLx have no effect during BIST.
Three different BIST tests are suggested. Correct operation of BIST requires that the MAC
be put into a known state before the test is run, which is accomplished by asserting
PWRUP for at least 10 BYTCLK cycles. The registers shown in Table 10-1 should be
written with the indicated hexadecimal values. The MAC should be clocked with BYTCLK
until MACINT is asserted and the BIST value can be compared against the value indicated
in Table 10-1.
MC68838 USER'S MANUAL