Interface info 6/21/92 Slave R1 command word: Bit Hex 31 80000000 - Interface reset 15 00008000 - Halt interface 14 00004000 - Clear exception status (Enable exceptions caused by timeout) 13 00002000 - Resume after error acknowledgement (Enable exceptions caused by cam interrupt) 12 00001000 - Enable new list (host next pointer driven) interrupt 11 00000800 - Enable timeout interrupt 10 00000400 - Enable Sbus interrupt 9 00000200 - Enable CAM interrupt 8 00000100 - Enable soft interrupt 6 00000040 - Disable exceptions caused by timeout 5 00000020 - Disable exceptions caused by cam interrupt 4 00000010 - Disable new list interrupt 3 00000008 - Disable timeout interrupt 2 00000004 - Disable Sbus interrupt 1 00000002 - Disable CAM interrupt 0 00000001 - Disable soft interrupt Slave R1 status word: Bit Hex 14 00004000 - Exceptions caused by timeout enabled 13 00002000 - Exceptions caused by cam interrupt enabled 12 00001000 - New list interrupt enable 11 00000800 - Timeout interrupt enable 10 00000400 - Sbus interrupt enable 9 00000200 - CAM interrupt enable 8 00000100 - Soft interrupt enable 4 00000010 - New list interrupt 3 00000008 - Timeout interrupt 2 00000004 - Sbus interrupt 1 00000002 - CAM interrupt 0 00000001 - Soft interrupt Slave R0 status word: 31-4 nnnnnnnX - Host next pointer 3 00000008 - Interface halted (OR of deliberate halt and exception status) 2 00000004 - Waiting for host 1 00000002 - Exception status (CAM timeout, or CAM interrupt) 0 00000001 - Host next pointer written Slave R2 status word: 31-4 nnnnnnnX - Step list pointer 3 00000008 - Waiting to transfer (set by cam wait flag; cleared when done counter is loaded) 2 00000004 - Done status (from CAM word counter) 1 00000002 - Partial write to cam after Sbus error 0 00000001 - Sbus fsm suspended because of Sbus error Slave R3 status word: 31-4 nnnnnnnX - Previous step list pointer 3 00000008 - Interface reset pending 2 00000004 - Reserved for Sparc 2 bit 1 00000002 - CAM scanning status (1=scanning) (decode of eosi signal) 0 00000001 - CAM interrupt status (decode of eosi signal) R0 Control Register bit definitions: Bit Hex 31 80000000 - reset CAM (must be part of NOOP) 30 40000000 - CAM read 29 20000000 - Immediate data 28 10000000 - Flg8 15 00008000 - Host jump; use the host next pointer if it has been written 14 00004000 - Host wait 13 00002000 - Soft interrupt 12 00001000 - wait for CAM EOS before executing instruction 5-0 0000003f - opcode (register select) 2/12/91 An exception prevents setting the hnp written flag. The CAM reset signal is accomplished by turning on the reset CAM, CAM read, and Immediate data bits of the control word; the count from R2 determines the length of the reset pulse. The interface reset pulse is one Sbus clock wide, triggered on falling edge of clock. An Sbus error causes the Sbus fsm to into a suspended state, setting the "suspended" status bit. This bit is cleared by writing to bit 13 of the Slave R1 command word. The "partial write" bit indicates whether any of the erroneous data was sent to cam. An Sbus error no longer sets the exception status. 4/25/91 A cam interrupt will not set exception status or stop the sbus state machines *until* the cam interrupt is enabled at least once after an interface reset.