The CPU-external test is an alternative that only needs to be used if your CPU does not use the built-in ARegister and DRegister chips.
It is interesting that your CPU passes CPU.tst but fails CPU-external.tst.
Could you please send me your CPU.hdl and these files test files:
    CPU.tst
    CPU.cmp
    CPU-external.tst
    CPU-external.cmp
and I'll figure out what's wrong with the test files, or if it's a problem with your CPU.hdl.
(It's easier to directly email the files as attachments to 

 rather than use forum email that doesn't allow attachments.)
--Mark