基于FPGA的高分辨率视频图像处理SDRAM控制器的设计 本文介绍了一种基于FPGA的用于高分辨率视频图像处理的SDRAM控制器的设计方法。通过设置SDRAM的工作状态,使其工作在猝发模式。在视频时序信号控制下,用多行连续的SDRAM存储空间,存取视频数据。 SDRAM控制器的设计: SDRAM控制器是高分辨率视频图像处理系统的关键组件。该控制器采用Micron公司的MT48LC4M32B2TG(1M×32×4 banks)SDRSDRAM,在Altera的StratixⅡ系列FPGA EP2S60F1020I4上进行开发。该控制器实现了最高分辨率为1 600×1 200@60 Hz的视频流的缓存和图像翻转的功能。 SDRAM基本操作: SDRAM的基本操作包括初始化、读/写操作、刷新、激活、预充电等操作。SDRAM的初始化流程为:首先在电源电压和时钟稳定后,经过100μs的延时,执行一次空操作;然后进行预充电操作,使所有 BANK都进入空闲状态;再然后执行两个自动刷新命令;执行完自动刷新后进入模式设置状态,通过地址总线A[11:0]发送数据来设置模式寄存器。 读/写操作首先激活具体的BANK和行;然后发出读或写命令,和所要访问的起始列。在读命令发出后,要等待CAS延迟时间,有效数据才会出现在数据总线上。在写命令发出后,有效数据立即出现在数据总线上。读写命令可分为单个模式和猝发模式,猝发模式根据猝发长度分为1,2,4,8和全页模式。猝发操作可用猝发终止命令(BURST TERMINATE)结束。 刷新由于SDRAM的内部电路特点,必须执行刷新命令,以防止数据丢失。要求64 ms内至少刷新4 096次。 激活在读/写命令之前都要发出激活命令,激活特定BANK中的某一行。激活后此行一直处于有效状态,直到接收到预充电命令。 预充电预充电命令用于关闭特定BANK中的某一行,或者所有BANK. 高分辨率视频流的SDRAM控制器设计: 为了降低SDRAM的操作时钟的频率和提高视频处理的实时性,采用猝发的模式对SDRAM进行操作。对于高分辨率的视频流,分辨率都在1 280×1 024以上,也就是每行的点像素都要大于1 280个,数据量非常的庞大。为了存储和读出一行的视频数据要对SDRAM的多行进行操作。 SDRAM控制器中设置了SDRAM的猝发长度的选择功能,只要修改需要的猝发长度即可,不要重新设计代码。为了保证SDRAM的刷新要求,在每一行的SDRAM操作完成后就进行一次刷新操作,此操作经由输入的视频行同步信号(HSY)的触发,如果外部视频信号突然中断,控制器自动进行刷新操作。 本文介绍了一种基于FPGA的用于高分辨率视频图像处理的SDRAM控制器的设计方法,具有通用性强、系统复杂度低、可靠性高、可扩展等特点。在某型号的机载大屏显示器系统中,用该SDRAM控制器实现了图像的翻转等功能,也验证了该控制器的实用性。
- 粉丝: 6
- 资源: 959
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助