CHI flitpend是干嘛的
参考文献
ARM官方手册:AMBA 5 CHI Architecture Specification CHI协议链路层 - 知乎
FLITPEND协议描述
CHI协议链路层的一个信号
之前看协议的时候有点忽略了这个东西 这个PEND信号是什么含义,可能字面上不太好理解。 它其实就是个时钟门控信号
FLITPEND信号预测接下来会有一笔有效的flit传输。 可以用来开启时钟 正常来讲,FLITPEND需要比FLITV快一个时钟, 也就是在FLITPEND有效的下一拍发来数据, 所以该信号就是一笔预测信号,帮助SLV开启时钟的。
问题记录
这次定位问题就是在这个地方, 使用了pend,但是发过来的pend不准。 本来FLITPEND需要比FLITV早一拍到, 但可能由于multicycle的原因,导致慢了一点点, FLITPEND没有在早一拍的时钟上升沿到达, FLITPEND和FLITV同拍了, 这会导致时钟门控打开的晚了,
从时序图可以看到, FLITV和FLIT才是应该同拍的信号, 时钟门控打开的晚了, 导致在某个模块中,同拍输入FLITV和FLIT, 在下一个时钟变成了错拍的情况: FLITV过了一拍,FLIT过了一拍才输出。
FLITV和FLIT错拍了, 后续所有采集都会采错,就,导致系统挂死了。
CHI flitpend是干嘛的
https://rongyel.github.io/posts/b6eda8db.html