图像滑动:同SDRAM类似问题:
1.图像上下晃动问题:读写地址不一致引起的,请确保读写的上限是一样的。
2.左右晃动的问题:读到了写入位置导致的。(撕裂问题)
总结:引起晃动问题的根本原因是地址和读写时钟速率的差别,
解决方法:1.乒乓操作。(不能解决写比读快问题)。
2.帧同步操作(使用场同步信号完成置位操作)。
3.多帧缓存。
执行难度是从上到下的(但其实都不算特别难)。
可能的新问题:当使用了帧同步以后依然出现的图像晃动:
读写速率差异太大,在没有读完该帧数据的时候就已经写完了(写完所有的缓存区)。
怎么做?
多缓存。
调试思路:更改程序,只存取一帧图像,通过抓取同步信号:
1.写入wfifo的第一个像素点数据,是否和读出rfifo的第一个像素点数据一致?
2.行列技术,用辨析像素点所处的位置。
问题来源:摄像头抓取图像是否有问题?
解析模块是否有问题?
wfifo-ddr3,拼接是否有问题?brust length*size*8是否为图像的一行数据?
ddr3-rfifo ,读请求条件是否有问题?
复位信号:输入同步是否有问题?同步条件和地址偏移量是否有问题?(重点考虑图像的格式问题,以及读写图像的偏移量是否一致问题)
VTC是否使用准确?读复位是否有问题?
VIO:可能存在问题,调试很好用。
12-09更新:
一点改进思路:
两个帧同步:1.使用摄像头的场复位置位地址、清空FIFO;
2.使用读取渠道的场复位置位地址、清空FIFO
此处也有坑,异步FIFO的复位需要持续慢速时钟的8个时钟周期。此后六十个时钟周期后才能够取用,需要手动拓宽复位的位宽。
VTC ip问题:
和传统VGA不同,其同步信号居然在显示区域之后。