Problem Solving with the Timing/State Analyzer
What Am I
Going to
Measure?
In this example assume you have designed a microprocessor controlled circuit. You have completed the hardware, and the software designer has completed the software and programmed the ROM. When you turn your circuit on for the first time, your circuit doesn’t work properly. You have checked the power supply voltages and the system clock and they are working properly.
Since the circuit has never worked before, you and the software engineer aren’t sure if it is a hardware or software problem. The problem now requires some testing to find a solution.
You also notice the circuit fails intermittently. More specifically, it only fails when the microprocessor attempts to address a routine that starts at address 8930.
To see what might be causing the failure, you decide to start where the microprocessor goes to the routine that starts at address 8930.
The first thing you check is whether the microprocessor actually addresses address 8930. The next thing you check is whether the code is correct in all the steps in this routine.
Your measurement, then, requires verification of:
∙whether the microprocessor addresses location 8930
∙whether all the addresses within the routine are correct
∙whether all the data at the addresses in the routine are correct
If the routine is correct, the state listing will display:
+0000 008930 B03C
+0001 008932 61FA
+0002 008934 67F8
+0003 008936 B03C
+0004 00892E 61FA
Using the Timing/State Analyzer | HP 16510B |
|
|