关 闭

新闻中心

EEPW首页 > 工控自动化 > 设计应用 > 实时视频采集系统的SDRAM控制器设计

实时视频采集系统的SDRAM控制器设计

作者:时间:2009-11-23来源:网络收藏
2 实现
中,为了保证数据的稳定和连续性,通常采用的方法是对存储器进行乒乓操作。一般所指的乒乓操作针对两片存储器芯片,如图3所示,其原理是通过控制模块对两片存储器分别做读写操作,写存储器满时控制模块发出交换命令,切换两片存储器的操作状态。

本文引用地址:http://www.eepw.com.cn/article/163469.htm

采用的是一片实现乒乓操作。时是利用的不同BANK间的存取操作来实现乒乓操作。由于SDRAM总共有4个BANK,所以读取第一帧图像时使用SDRAM的1,2 BANK为读缓存,3,4 BANK为写缓存。第二帧图像时SDRAM的3,4 BANK切换为读缓存,1,2 BANK切换为写缓存。采用一帧图像读写完毕作为切换标志反复切换读写缓存,就充分利用SDRAM的不同BANK来实现乒乓操作。另一方面由于SDRAM的数据线和地址线只有1组,所以实际控制的时候读写操作是不能同时进行的。中考虑到SDRAM的工作频率与前端图像的像素频率以及后端VGA显示的像素频率相比要高得多,因此将读写操作利用时分的方式分开控制。所以在中设计了一个指令计数器(Countcmd),通过计数的方式来切换读写操作。只要选取适当的SDRAM工作频率以及指令计数器的规定值就可以完成SDRAM读写操作的连续切换。实际设计中采用的SDRAM工作频率为100 MHz,指令计数器的规定值为240。SDRAM状态转换概图如图4所示。

SDRAM控制器的具体状态转换流程如下:首先初始化SDRAM,然后向SDRAM的1,2 BANK写入第一帧图像,当第一帧图像写入完毕后进入乒乓操作阶段。此时SDRAM的1,2 BANK为读缓存,3,4 BANK为写缓存。
首先进入读缓存激活行,开始读操作,读操作开始的同时启动指令计数器。此时每执行一条指令(包括读指令,空操作指令,不包括预充电指令和行激活指令),指令计数器自加1,当指令计数器到达规定值时将指令计数器清0并切换到写状态。进入写状态前先判断写缓存的行激活标志,如果没有激活,先执行行激活,然后开始写操作,如果已经激活则直接开始写操作。写操作开始的同时启动指令计数器。此时和读状态时一样,每执行一条指令,指令计数器自加1,当指令计数器到达规定值时同样将指令计数器清0后切换到读状态。如此反复切换操作,直至读完一帧或者写满一帧。如果是读完一帧,则判断写缓存中一帧写满没有。如果已经写满,则进入读写BANK切换状态。如果没有,则进入写状态并不再切换读写状态,一直保持写状态直至写满一帧为止,然后进入读写BANK切换状态。如果是写满一帧,则同理于读完一帧的情况,首先判断读缓存中读完一帧没有,然后根据判断结果进行操作,最后进入读写BANK切换状态。在读写BANK切换状态中,读缓存切换为3,4 BANK,写缓存切换为1,2 BANK。反复上述操作步骤,就可以完成使用一片SDRAM不同BANK的乒乓操作。整个SDRAM控制器在Altera的QuartusⅡ7.2环境下采用Verilog设计完成,然后在ModelSim SE 6.0环境下仿真通过。随后通过Altera的QuartusⅡ7.2进行综合和布局布线,并最终在Al-teraCyclone系列FPGA芯片EP1C6Q240C8上完成。所设计的SDRAM控制器在PAL→VGA的中调试通过,能够实现图像数据的存储和读取,完全满足系统的要求。

3 结 语
介绍在PAL→VGA的采集系统中使用SDRAM作为图像缓存的基本操作,设计一种使用1片SDRAM的不同BANK进行乒乓操作的相对容易实现的SDRAM控制器设计方法。在PAL→VGA的实时视频采集系统中,使用了所设计的SDRAM控制器,并通过硬件验证,采集得到的图像质量较好。另外,这里设计的SDRAM控制器稍加改动就可以应用到其他实时视频采集系统中去,具有很强的通用性。

pid控制器相关文章:pid控制器原理



上一页 1 2 下一页

评论


相关推荐

技术专区

关闭