|Re: Self tests: what do they actually do?|
Message #4 Posted by Marc Ferrer (France) on 8 July 2010, 12:11 p.m.,
in response to message #1 by megarat
As a personal story, I remember back in the 80s some systems which at power-up ran BISTs (Built-in Self-Tests) during hours ! before booting -Intel systems running iRMX.
Besides that, I read an HP Journal issue related to some "big" HP processors in HP 9000 systems; they gave a very interesting description of a thorough self-test for a microcoded CPU :
1- a hardwired sequencer triggers CPU functional blocks while a hardware check is done on various output signals. Then the microcode ROM is checked the same way.
2- using as few instructions as possible, a first routine tests register banks or caches, then some RAM and so on...
3- if everything is still OK, extensive tests are done on the whole RAM array.
A funny note : If I remember well, in some systems of that era the first test was done using an on-board microcontroller -which of course had to run, first of all, its own BIST... eh ? who said "matrioshka ?"
As you can see it's a hierarchical process in the way that you can only rely on already-tested devices. And if you really want to test everything, it can take forever to complete.
Returning to our calculators, Eric Smith (please Eric, correct me if I'm wrong) told that the Spice series added new instructions to their CPU, devoted to the ROM test, and even a hardware CRC checker I think. I suppose that the goal was to use as few CPU hardware as possible at this stage of testing.
By the way, it means also that if the CPU is defective, the calculator won't even start, as you already guessed.
Luiz : I worked with people who did maintenance on relay-based switching telephone equipment, they all said it quickly could become a real nightmare, crowded with false errors :-)
Regards from France,
Edited: 8 July 2010, 12:20 p.m.