On 02/21/2021 03:33 AM, Josh Dersch via cctalk wrote:
"0" here selects DR (Destination Register) input to the mux and is
incorrect; it should be 1 (PCB).  During a single-instruction-step run,
this value reads out OK on the analyzer.  I noted a few other discrepancies
in the capture (all of which match the ucode listing during a
single-instruction step) which makes me think that the high outputs of the
PROM are right on the bleeding-edge of acceptable TTL.  I checked out the
signal on the scope while running a BR .-1 instruction (which also doesn't
execute correctly but at least doesn't halt... I don't have a storage scope
to capture this during a single instruction execution) and it looks like
the voltage swing is from about 0.15V to 1.7V or so.
1.6 to 1.7 V is the normal internal pull-up of a TTL gate input. It sounds like that is what you are seeing. The PROM can pull low when needed, but has no pull-up working anymore.
On the off chance it was the 74S174 at E97 pulling the signals down, I
socketed it and substituted a spare '174 in; no change.  I also noted that
the +5V at this chip was about 4.95V, I goosed it up to 5.10V to see if it
made a difference (it did not.)

So it seems likely it's the PROM.  Looks like I may have some typing to
do, though given that the ROM works well enough at slow speeds I might be
able to dump it with my Data I/O Model 29 and compare it against the
listings in the engineering drawings, to save some time...

I'll try to dump the PROM tomorrow and see what I get.

- Josh


A status update here:

I've dumped the bad PROM at U101 (and it read out fine on my Data I/O 29,
comparing it with the listing in the engineering drawings).  A local friend
had a spare 11/70 boardset, so while I wait for some (hopefully) NOS
bipolar PROMs to arrive, I've installed a spare RAC board.  With this
installed, instructions execute much better, and after tracing down a
faulty Unibus terminator, I got it to run the bootstrap PROM on the M9301!

I used my Unibone to boot XXDP+ from an emulated RL02 pack and over the
past week I've been running diagnostics and debugging the hardware.  Thus
far:

- Unibus Map registers non-functional:  addresses decode but writes have no
effect and all reads come back as "0". Replaced bad 8640 bus receiver on
the Unibus Map board.
- EMKA memory diagnostic hangs the processor in t5 of uAddr 343 (IRD.00),
in PAUSE.  Traced it down to the HC42 (replaces the original Cache Control
Board) board of the Hypercache boardset, lacking any engineering info I
swapped this for a spare that I'm fortunate enough to have.

The system is now passing all but two diagnostics:
- EMKA reports strange errors in banks 50-57 of memory and only with
pattern 17; all other banks test fine:
MEMORY DATA ERROR
   PC    BANK  VADD     PADD     GOOD     BAD     XOR  MAR BOX MTYPE INT PAT
ARRAY
032334   50  157564  05077564  000377  000377  000000  0   ?   MJ11  ?   17
  ??
032334   50  156450  05076450  000377  000377  000000  0   ?   MJ11  ?   17
  ??
032334   50  155330  05075330  000377  000377  000000  0   ?   MJ11  ?   17
  ??
When a memory test reports an error, but the good and bad values are equal, I might suspect bad memory where the program is running from or a CPU error.
032334   50  154210  05074210  000377  000377  000000  0   ?   MJ11  ?   17
  ??
032342   50  154020  05074020  000377  177777  177400  0   ?   MJ11  ?   17
  ??
032342   50  153740  05073740  000377  177777  177400  0   ?   MJ11  ?   17
  ??
032342   50  153734  05073734  000377  177777  177400  0   ?   MJ11  ?   17
  ??
032342   50  153732  05073732  000377  177400  177777  0   ?   MJ11  ?   17
  ??
032342   50  153730  05073730  000377  177400  177777  0   ?   MJ11  ?   17
  ??
032342   50  153726  05073726  000377  177400  177777  0   ?   MJ11  ?   17
  ??
032342   50  153724  05073724  000377  177400  177777  0   ?   MJ11  ?   17
  ??
032342   50  153722  05073722  000377  177400  177777  0   ?   MJ11  ?   17
  ??
032342   50  153720  05073720  000377  177400  177777  0   ?   MJ11  ?   17
  ??
032342   50  153716  05073716  000377  177400  177777  0   ?   MJ11  ?   17
  ??
And, these look like a byte enable bit might not be getting through and data from the previous test pattern remains in one byte.

Jon

Reply via email to