mem_bypass结合Tdm 技术(通信技术知识积累:TDM - 知乎)可以对ram的多拍连续访问。
mem_bypass技术的核心就是在下一次的读前,可以cover 上一次的写。
如下图所示(读延时为3cycle):
时序1 : 在读发起的hazard1时,回写上次的新数据,所以在3cycle 后的第二次rd 可获取最新值。 但是该场景会产生组合逻辑环,如下所示!!!!
时序2: 在读发起的hazard0和hazard2时,回写上次的新数据,所以在3cycle 后的第二次rd 可获取最新值
时序3: 在读发起的hazard1和hazard3时,回写上次的新数据,所以在3cycle 后的第二次rd 可获取最新值
存在数据更新不及时:
在上图的时序中,存在rdata2的数据被读出,但是上次的wr在下一拍才到达。无法确保rdata2的数据是最新值!!!
在调度入口/存在触发ram读写行为的源头,对调度idx 做delay ,确保不连续调度相同idx:
基于上面失败的回写,逻辑可以保证不连续调度相同idx:
① 当前idx 与上一个不同,可以2cycyle的调度
② 当前idx 与上一个相同,严格4cycle的调度 ,级转换为如下时序文章来源:https://www.toymoban.com/news/detail-706526.html
文章来源地址https://www.toymoban.com/news/detail-706526.html
到了这里,关于连续相同idx 性能为4cycle、不同idx性能为2cycle的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!