7.1.1 Error Handling
(Ask a Question)The block identifies the following errors:
- Parity error in the received control field
- Bad start sequence in received control field
- Incomplete message where the RX line is stuck at 0 or stuck at 1
- CRC mismatch between data in received CRC field, and calculated CRC
- Transmit Errors such as parity error or delimiter error in transmitted CF, as read from bit 6 and bit 7 of the status field (see Tamagawa datasheet).
These errors, when identified by the block, result in a fault counter getting incremented. When the fault counter value exceeds the configured threshold value (configured using g_FAULT_THRESHOLD), the alarm_o output is asserted. The alarm output is deasserted when the alarm_clr_i input is high for one sys_clk_i period. The tf_error_o signal is used to display the type of error that has occurred. This data is reset to 0, when the next transaction begins (start_i is ‘1’).
The following table describes various errors and their corresponding bit position in the tf_error_o register.
| Bit | Function |
|---|---|
| 5 | TX delimiter error – as indicated in bit 7 of status field |
| 4 | TX parity error – as indicated in bit 6 of status field |
| 3 | CRC mismatch between CRC field received from slave and calculated CRC data |
| 2 | Incomplete message – delimiter error resulting in timeout |
| 1 | Bad start sequence in received control field – “0010” not received before timeout |
| 0 | Parity Error in received control field |
