ChildOfCv Posted February 23, 2020 Share Posted February 23, 2020 While writing processor tests for my diag board, I was wondering, how much of the chip needs to be tested to clear it of suspicion? Have you encountered a case where some functions worked but others didn't? Or was it always a working or not kind of thing? I am currently testing the address lines, the NMI, INT (with or without interrupts enabled), and HALT modes. The data lines are necessarily tested as part of the process, since bad data lines will give incorrect execution. Beginning CPU test Testing address lines JR 0002 JR 0004 JR 0008 JR 0010 JR 0020 JR 0040 JR 0080 JR 0100 JP 0200 JP 0400 JP 0800 JP 1000 JP 2000 JP 4000 JP 8000 Testing non-maskable interrupts LD SP, 1234 Testing HALT mode HALT <-halt ->int <-halt ->nmi NOP (CPU must ignore this instruction) NOP (CPU must ignore this instruction) RETN Testing maskable interrupts IM 1 EI HALT <-halt ->int NOP (CPU must ignore this instruction) Interrupt acknowledge RETI All CPU tests passed Quote Link to comment Share on other sites More sharing options...
Keatah Posted February 23, 2020 Share Posted February 23, 2020 Speaking from a non-developer's or layman's point of view.. I remember my Apple II diagnostic programs. The documentation and/or discussion with the publisher mentioned they do the address and data lines, interrupts, and a good number of instructions if not all of them. There was also focus on whether the chip could do math correctly and that took time. Not something to do during startup. It would also make sense to do as much as possible. Never know what corner case might arise. Current Intel CPU diagnostics spend like 10-15 minutes going through tons of stuff. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.