对一段RAM区的存和读的速度不一致的问题怎么办 | 将AD采集的数据存在一段RAM中,当数据到达64个时给出外界可以读取数据的信号,外界开始读数据,但在读完所有数据以前,采集数据就不得不停下来了,这样就不是实时采样了
这样的问题就好像处理并转串的过程中,并行数据输入和串行数据输出速度不一致的问题。
解决方法:
1。读时钟慢:可采用大RAM,以保证在RAM満以前AD采集的数据已完成。
2。采用比写时钟更快的读时钟。
另外也可以在FPGA内部使用双口ram,读写分开互相不干扰,随便你怎么读写都可以的。当然了一般要读写要分时操作,写入的一定要读取完毕。
比如在写入60个数据的时候就可以开始读取第一个数据了,因为读取的速度比较快,采样存储的速度比较慢因此,在64个数据写入完毕之后,读取已经到了第20个(假设)因此再写入不会把以前的数据覆盖掉,根据地址判断读取完64个数据后停止读取就可以了。双口ram可以,fifo也可以。或者使用两个ram区,读A写B,交替运行。
|
|