| |||
| Home > The AUK Microcontroller > System test methodology | |||
Each AHB slave, AHB master, and APB peripheral must be tested in complete isolation. This means that components must be designed with test veneers that enable non-bus signals to be controlled and observed.
When a component is tested, a special test bit is set. This test bit switches these multiplexed signals to test registers (accessible through the AHB or APB), which effectively isolates each component from the rest of the system.
Test vectors must be written to test the component in isolation, making as few assumptions about the rest of the system as possible.
A good example of this approach is provided by the test veneer for the ARM processor, which is described in the AMBA ARM7TDMI Interface Data Sheet. This approach is also used to test the peripherals on the APB bus.
Under normal conditions, when the TIC is not in use, the current bus master performs transfers to and from any one of the following slaves:
internal memory
AHB to APB bridge interface (to access the peripherals)
example retry slave
EBI.
However, when test mode is entered, and the TIC is the current master, the following slaves can be accessed:
internal memory
AHB to APB bridge interface (to access the peripherals)
example retry slave
ARM bus master (test veneer).
Bus masters can become slaves during test mode. The EBI cannot be tested using the TIC because of the way test access is provided to the AHB bus. The TIC is a state machine driven by the test request inputs (TESTREQA and TESTREQB). It also contains a register that enables it to read address information from the test bus (TESTBUS) and drive it onto the AHB address bus (HADDR). However, it cannot drive the test bus. Instead, it overrides the normal function of the EBI, forcing it to provide a 32-bit channel between HRDATA and TESTBUS, passing out read data during a read test vector. Therefore, in test mode, the EBI cannot function as a slave.
TESTBUS must be a 32-bit channel. In a system which only supports a 16-bit or 8-bit external data bus, additional external pins such as address lines must be forced into a special test mode to supply the full 32-bit bidirectional channel required.
For more information about:
the test interface, see the AMBA Specification
applying test vectors to an EASY-based microcontroller, see the AUK User Guide.
The TESTREQA, TESTREQB and TESTBUS signals are the same as the TREQA, TREQB, and TBUS signals described in the AMBA Specification (Rev 2.0).