ZHCSRX7 june 2023 BQ79616
PRODUCTION DATA
差分菊花链(垂直)接口使用异步 13 位字节传输协议。数据首先传输 LSB,然后复制每一位(采用补码形式)以确保传输中没有直流成分。
一个字节以前导码开始,随后是两个 SYNC 位、一个帧起始位、从 LSB D0 到 MSB D7 的八个数据位(D0 在帧状态之后传输,D7 最后传输,其后是错误和后同步码)。
器件使用前导码和 SYNC 位来提取时序信息,以解码字节中其余的位值。如果检测到以下任何错误,则不会处理该字节并设置寄存器错误位。
接收到两个有效的 SYNC 位后,附加位就会被解码并发送到命令处理器。器件继续检测该字节上的任何错误,如果检测到错误,则会在该字节中设置字节错误 (BERR) 位。DEBUG_COMH/L_BIT[PERR] = 1 取决于哪个 COM 端口检测到错误。以下条件将设置字节中的 BERR 位。
与此同时,每个位仍在重新传输到下一个器件。如果器件无法将该位解码为 1 或 0,它将以 0 重新传输,并在该字节中设置 BERR 位。当新器件检测到接收字节中 BERR 位被设置为 1 时,它将忽略有问题的字节并设置 DEBUG_COMH/L_BIT[BERR_TAG] = 1,指示接收到的字节具有 BERR。被忽略的可疑字节可能会导致其他通信错误,并且还可能会触发在新器件中设置 DEBUG_COMH/L_BIT[PERR] = 1。可疑字节继续在设置 BERR 的情况下沿菊花链重新传输,该过程持续进行。
位域 | 说明 |
---|---|
前导码(半位) | 表示事务开始,向接收器发出开始采样的信号。该半位和随后的两个 SYNC 位用于额外的时序信息。 |
SYNC[1:0] | 始终为 0b00。SYNC 位用于数字电路评估字节上的时序和噪声水平,从而改进噪声环境中 1 和 0 的检测。 |
帧起始(1 位) | 帧起始 (SOF) 位指示后继数据字节是初始化字节,即通信事务帧的开始。堆栈器件需要使用该信息来处理通信。 对于命令帧事务,基底器件负责设置 SOF 位,因为它将 UART 通信转换为菊花链通信。 初始化字节包含数据大小信息。基底器件将根据数据大小信息来计算接收到的字节数并相应地设置下一个 SOF 位。 UART COMM CLEAR 信号重置 UART 接收器,其中包括逻辑的帧处理。因此,COMM CLEAR 之后的下一个字节必须将 SOF 设置为 1,因为 COMM CLEAR 指示系统清除 UART 并重新启动通信。 |
Data[7:0] | 通信事务帧的实际字节 |
字节错误 BERR(1 位) | 指示在该字节中检测到错误。当器件接收到下部器件设置了 BERR 的字节时,它也会在设置 BERR = 1 的情况下重新传输该字节。 由于每个数据位都会从一个器件重新计时到下一个器件,因此下一个器件可能无法检测到通信错误。然而,[BERR] 位的标签会指示该通信帧在其先前的事务期间产生错误。 |
后同步码(半位) | 指示事务结束 |
每个字节以 2MHz(每个脉冲 250ns,或每对 500ns)的频率传输。两个字节之间的传输时间取决于 UART 波特率(正常运行状态下为 1Mbps),但字节传输时间始终相同。通信帧是用字节之间的空闲时间定义的。在某些极少数情况下,通信信号可能无法完全终止,从而在一个字节末尾留下振铃。在这种情况下,增加字节间的间隙可以提高通信的稳健性。器件允许通过 STACK_RESPONSE 寄存器设置在响应帧中的字节之间插入额外的字节间隙。