原创 Altera双口RAM读时序问题

2012-12-3 12:24 18477 13 16 分类: FPGA/CPLD 文集: ALTERA FPGA

项目中需要设计一个直方图,分析直接采用Altera的双口RAM就可以实现,为了控制简单,就采用了单时钟(即读写同时钟)接口。例化Altera的双口RAM后,分析其给出的读写时序图,应该是读操作的下一个时钟输出端口就会出现该读操作的数据,而实际情况是读操作后的第二个时钟才有数据。


 


下图为Altera给出的时序图


点击看大图


 


下图是我在CII器件上实现的时候通过SignalTapII抓取的结果:


点击看大图


 


看Altera给出的时序图应该是当前读时刻的下一个时钟出结果,而看实际SignalTapII探测是当前读时刻的下下一个时钟出结果。这在一般数据存储的时候也许可以忽略该问题,但是在直方图设计的时候这是致命的,因为直方图就是统计双口RAM“地址”出现的频率。这涉及到读出数据后还要将该读出的数据进行更新统计后重新写回到原来的位置。所以时序不同对于直方图的控制也会不一样,一个简单的直方图调试确实花费不少功夫。


 


虽然花费些功夫找到并解决了问题,但是不清楚为何官方的时序图跟实际使用的时候会不一致?!!


 


 


######################################################################


 


 


这个问题是我自己被SignalTapII迷惑了,时序是正确的,仔细分析Altera给出的时序图,能发现在读操作采样时钟对应时刻地址是有效的(不像SignalTapII当中时钟上升沿对齐地址变化时刻),但是我给出的第二幅图中SignalTapII截图中第一个蓝圈处正好是地址从C1到CC的转变,也就是说此刻有效地址是C1而不是CC。回过头来看看自己的程序确实是这个过程:


双口RAM读端口的数据输出时序:第一个时钟地址变化,第二个时钟地址有效,第三个时钟数据有效并被读出。


上述时序的后两个时钟对应于Altera给出的时序关系。

PARTNER CONTENT

文章评论3条评论)

登录后参与讨论

用户377235 2016-1-7 17:48

根据altera给的memory资料进行读写,资料上确实显示当双口使用同一个时钟时,读数据时,地址在第一个时钟上升沿有效,在第四个时钟上升沿才可以稳定的出现在数据端口

用户1303485 2010-7-30 23:21

地址变化, 下个周期,时钟采集地址选出RAM的值, 再下一个周期把RAM的值触发器打出(可选)。 ---这一个类似于模块内部输入寄存,输出也寄存 至于为什么不直接把地址接到RAM上, 下一个周期时钟吧RAM输出送出 再下一个周期再打一拍(可选) 这个我就不知道了

用户1395232 2010-1-26 10:59

不解 Altera给出的时序图 输出数据不就是延时读地址2个cycle输出的么 愿闻其详:)
相关推荐阅读
coyoo 2024-12-25 14:13
ALTERA Cyclone 10器件的使用-8:特定的上电顺序
概述 Intel 要求用户为其10代FPGA器件使用特定的上电和掉电顺序,这就要求用户在进行FPGA硬件设计的时候必须选择恰当的FPGA供电方案,并合理控制完整的供电上电顺序。经过在Cyclone 1...
coyoo 2024-12-22 11:46
AD9218子板在新处理板上表现的问题
概述 新的数据处理板融合了数字和数据处理功能模块,计划采用ADI的4通道串行ADC芯片代替之前的并行ADC。由于初次使用,所以初次设计时预留了AD9218的子板的插槽。 在调试AD9633功能的同时并...
coyoo 2024-12-14 17:15
在Cyclone 10 GX器件上实现高精度TDC探索
概述 Cyclone 10 GX器件的ALM结构与Cyclone V类似,所以在Cyclone 10 GX器件上实现TDC功能理论上是可以完全参考甚至移植自Cyclone V系列的成功案例。但是,现实...
coyoo 2024-12-10 13:28
Cyclone V GX FPGA设计TDC的优化问题
概述 通过前面的研究学习,已经可以在CycloneVGX器件中成功实现完整的TDC(或者说完整的TDL,即延时线),测试结果也比较满足,解决了超大BIN尺寸以及大量0尺寸BIN的问题,但是还是存在一些...
coyoo 2024-12-03 12:20
比较器检测模拟脉冲说明(四)
概述 说明(三)探讨的是比较器一般带有滞回(Hysteresis)功能,为了解决输入信号转换速率不够的问题。前文还提到,即便使能滞回(Hysteresis)功能,还是无法解决SiPM读出测试系统需要解...
coyoo 2024-11-16 13:54
不同ADC采样同一前端模拟信号时转换用时差异分析
概述 同一组前端模拟信号接入由不同型号ADC组成的模数转换电路时,采样后在FPGA中发现采样用时差异较大。本文主要分析这个时间差异形成的原因,并记录该差异产生对系统造成的影响。系统数字化简介 项目前端...
EE直播间
更多
我要评论
3
13
关闭 站长推荐上一条 /3 下一条