--
You received this message because you are subscribed to the Google Groups "UniBone" group.
To unsubscribe from this group and stop receiving emails from it, send an email to unibone+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/unibone/58eb628a-673f-4657-8f0b-32b9c7cdd66cn%40googlegroups.com.
I should mention that I've also tested the UniBone on my PDP-11/05 and PDP-11/84 and it works great. Thanks for developing this excellent hardware!
The SBI works on a major cycle time of 200nS. For a UNIBUS read a command/address is transferred from the CPU to the DW780 during one of these cycles. The DW780 must respond to this command with an acknowledgement within 512 bus cycles (102.4uS) to avoid a timeout. For the DW780 this happens almost immediately. Once the acknowledgement has been sent the CPU will wait a further 512 bus cycles for the requested data otherwise a read data timeout will occur. These timeouts are described on page 2-88 of TB/Cache/SBI Control Technical Description (PDF page 129).
Once the DW780 has sent the acknowledgement of the command it tries to become UNIBUS master through the arbitration process. I've still not worked out exactly how this takes place but you can see the NPR master flip flop on sheet UAIC of the DW780 Field Maintenance Print Set (PDF page 142). The timeouts are handled by the two counters on sheet UAID (PDF page 143). SSYN timeout is 64 x 200nS = 12.8uS and UBSTO (UNIBUS select timeout) is 256 x 200nS = 51.2uS. I'm not sure why these particular values were chosen but it means that worst case you use 51.2 + 12.8 = 64uS of the maximum allowable 102.4uS to return valid data. These timeouts are briefly mentioned in the DW780 Technical Description on page 2-50 (PDF page 80). It also mentions here that unless the software checks the DW780 status register (as VMS does) then it will be unaware that a UNIBUS timeout has occurred!
Brains starts spinning:
Are the UNIBUS cycles terminated in any case, or is this behaviour software-definable?
What would one of the UNIXes (4.3 BSD, Ultrix) do?
Can the timeout-timer on DW780 be manipulated/disabled? How is the DW780 emulated in SimH, can we use it has test bed?
Is there an alternative implemention for DW780, maybe a later
release?
Joerg