Outputs:
Reset (0), DIn (32), ByteEn (4), RegAddr (6), WRPulse (0), (Valid(0), Reply (0), DevID (10)), EmitAdv (0), B5Busy (0)
Test of the IOB Exerciser control
Reset sequence, setup ExDevID
1 00000000 0 00 0 ( 0 0 000 ) 0 0 | XXXXXXXX ( X X ) X X -- Unknown initial state
1 00000000 0 00 0 ( 0 0 000 ) 0 0 | XXXXXXXX ( X X ) X X -- Wait 5 cycles for receive FSA
1 00000000 0 00 0 ( 0 0 000 ) 0 0 | XXXXXXXX ( X X ) X X -- Wait 5 cycles for receive FSA
1 00000000 0 00 0 ( 0 0 000 ) 0 0 | XXXXXXXX ( X X ) X X -- Wait 5 cycles for receive FSA
1 00000000 0 00 0 ( 0 0 000 ) 0 0 | XXXXXXXX ( X X ) X X -- Wait 5 cycles for receive FSA
1 00000000 0 00 0 ( 0 0 000 ) 0 0 | XXXXXXXX ( X X ) X X -- Wait 5 cycles for receive FSA
1 00000000 0 00 0 ( 0 0 000 ) 0 0 | XXXX0000 ( 0 0 ) 0 0 -- Should be finished by now
0 00000000 0 00 0 ( 0 0 000 ) 0 0 | XXXX0000 ( 0 0 ) 0 0 -- Check nothing happens
0 ABCD0123 E 0B 1 ( 0 0 000 ) 0 0 | XXXX0000 ( 0 0 ) 0 0 -- Setup ExDevID
0 FFFFFFFF F 0B 0 ( 0 0 000 ) 0 0 | 03CD0000 ( 0 0 ) 0 0 -- Write without write clock
Check programmed queue control and byte writes into queue
0 00000004 1 0B 1 ( 0 0 000 ) 0 0 | 03CD0000 ( 0 0 ) 1 0 -- Advance queue
0 12345678 C 09 1 ( 0 0 000 ) 0 0 | 03CD0000 ( 0 C ) 0 0 -- Writes some bytes
0 12345678 5 08 1 ( 0 0 000 ) 0 0 | 03CD0000 ( 5 0 ) 0 0 -- Writes some bytes
0 12345678 5 08 0 ( 0 0 000 ) 0 0 | 03CD0000 ( 0 0 ) 0 0 -- No command
Check emission FSA
0 00000001 1 0B 1 ( 0 0 000 ) 0 0 | 03CD0000 ( 0 0 ) 0 1 -- Initiate emission while not busy
0 XXXXXXXX X XX 0 ( 0 0 000 ) 0 1 | 03CD0001 ( 0 0 ) 0 0 -- Now busy
0 XXXXXXXX X XX 0 ( 0 0 000 ) 1 1 | 03CD0001 ( 0 0 ) 1 0 -- Advance a bit
0 XXXXXXXX X XX 0 ( 0 0 000 ) 1 1 | 03CD0001 ( 0 0 ) 1 0 -- Advance a bit
0 XXXXXXXX X XX 0 ( 0 0 000 ) 0 0 | 03CD0000 ( 0 0 ) 0 0 -- Terminate
0 XXXXXXXX X XX 0 ( 0 0 000 ) 0 0 | 03CD0000 ( 0 0 ) 0 0 -- No change
Check reception FSA
0 XXXXXXXX X XX 0 ( 1 1 3CD ) 0 0 | 03CD0000 ( 0 0 ) 0 0 -- Check not receiving
0 XXXXXXXX X XX 0 ( 0 0 000 ) 0 0 | 03CD0000 ( 0 0 ) 0 0 -- Check not receiving
0 00000002 1 0B 1 ( 0 0 000 ) 0 0 | 03CD0000 ( 0 0 ) 0 0 -- Initiate emission while not busy
0 XXXXXXXX X XX 0 ( 0 0 000 ) 0 0 | 03CD0002 ( 0 0 ) 0 0 -- Now waiting reception
0 XXXXXXXX X XX 0 ( 0 0 000 ) 0 0 | 03CD0002 ( 0 0 ) 0 0 -- Nothing should happen
0 XXXXXXXX X XX 0 ( 1 1 3CD ) 0 0 | 03CD0002 ( 0 0 ) 0 0 -- Receive a message (1)
0 XXXXXXXX X XX 0 ( 0 0 000 ) 0 0 | 03CD0002 ( F F ) 1 0 -- Receive a message (2)
0 XXXXXXXX X XX 0 ( 1 1 3CD ) 0 0 | 03CD0002 ( F F ) 1 0 -- Receive a message (3), dummy re-receive
0 XXXXXXXX X XX 0 ( 0 0 000 ) 0 0 | 03CD0002 ( F F ) 1 0 -- Receive a message (4)
0 XXXXXXXX X XX 0 ( 0 0 000 ) 0 0 | 03CD0002 ( F F ) 1 0 -- Receive a message (5)
0 XXXXXXXX X XX 0 ( 0 0 000 ) 0 0 | 03CD0002 ( F F ) 1 0 -- Terminated (pipe still on ...)
0 XXXXXXXX X XX 0 ( 0 0 000 ) 0 0 | 03CD0000 ( 0 0 ) 0 0 -- Really finished now
0 XXXXXXXX X XX 0 ( 0 0 000 ) 0 0 | 03CD0000 ( 0 0 ) 0 0 -- No change
Check emission+reception FSA
0 00000003 1 0B 1 ( 0 0 000 ) 0 0 | 03CD0000 ( 0 0 ) 0 1 -- Initiate emit/receive while not busy
0 XXXXXXXX X XX 0 ( 0 0 000 ) 0 1 | 03CD0003 ( 0 0 ) 0 0 -- Now busy
0 XXXXXXXX X XX 0 ( 0 0 000 ) 1 1 | 03CD0003 ( 0 0 ) 1 0 -- Advance a bit
0 XXXXXXXX X XX 0 ( 0 0 000 ) 1 1 | 03CD0003 ( 0 0 ) 1 0 -- Advance a bit
0 XXXXXXXX X XX 0 ( 0 0 000 ) 0 0 | 03CD0002 ( 0 0 ) 0 0 -- Terminate emission
0 XXXXXXXX X XX 0 ( 1 1 3CD ) 0 0 | 03CD0002 ( 0 0 ) 0 0 -- Receive a message (1)
0 XXXXXXXX X XX 0 ( 0 0 000 ) 0 0 | 03CD0002 ( F F ) 1 0 -- Receive a message (2)
0 XXXXXXXX X XX 0 ( 1 1 3CD ) 0 0 | 03CD0002 ( F F ) 1 0 -- Receive a message (3), dummy re-receive
0 XXXXXXXX X XX 0 ( 0 0 000 ) 0 0 | 03CD0002 ( F F ) 1 0 -- Receive a message (4)
0 XXXXXXXX X XX 0 ( 0 0 000 ) 0 0 | 03CD0002 ( F F ) 1 0 -- Receive a message (5)
0 XXXXXXXX X XX 0 ( 0 0 000 ) 0 0 | 03CD0002 ( F F ) 1 0 -- Terminated (pipe still on ...)
0 XXXXXXXX X XX 0 ( 0 0 000 ) 0 0 | 03CD0000 ( 0 0 ) 0 0 -- Really finished now
0 XXXXXXXX X XX 0 ( 0 0 000 ) 0 0 | 03CD0000 ( 0 0 ) 0 0 -- No change
.