# Dissecting the failing trace N.B. The value of a node `n` is given by `Cat(n.payload.channel, ~n.valid)` ## Cycle \#0 (MATCH) Events: N/A Values: - node0 value: `0010` - node0 valid: `1` - node0 channel: `010` - node0 sequence: `00` - node1 value: `0000` - node1 valid: `1` - node1 channel: `000` - node1 sequence: `00` - node2 value: `0001` - node2 valid: `1` - node2 channel: `001` - node2 sequence: `11` - node3 value: `0000` - node3 valid: `1` - node3 channel: `000` - node3 sequence: `01` To compare: - node0 and node1 - node2 and node3 ## Cycle \#1 (MATCH) Events: N/A Values: - node0 value: `0000` - node0 valid: `1` - node0 channel: `000` - node0 sequence: `00` - node1 value: `0010` - node1 valid: `1` - node1 channel: `010` - node1 sequence: `00` - node2 value: `0000` - node2 valid: `1` - node2 channel: `000` - node2 sequence: `01` - node3 value: `0001` - node3 valid: `1` - node3 channel: `001` - node3 sequence: `11` To compare: - node0 and node2 - node1 and node3 ## Cycle \#2 (NOMATCH - see trace for diff) Events: - A replacement occurred when comparing node0 and node2 Values: - node0 value: `0000` - node0 valid: `1` - node0 channel: `000` - node0 sequence: `01` - node1 value: `0001` - node1 valid: `1` - node1 channel: `001` - node1 sequence: `11` - node2 value: `1000` - node2 valid: `0` - node2 channel: `000` - node2 sequence: `00` - node3 value: `0010` - node3 valid: `1` - node3 channel: `010` - node3 sequence: `00` To compare: - node1 and node2 # Cycle \#3 TODO: fill this in after figuring out why my prediction for Cycle \#2 fails to match generated trace