您的位置 首页 发布

高分辨率视频图画处理中 SDRAM 控制器的规划

本文介绍了一种基于FPGA的用于高分辨率视频图像处理的SDRAM控制器的设计方法。通过设置SDRAM的工作状态,使其工作在猝发模式。在视频时序信号控制下,用多行连续的SDRAM存储空间,存取视频数据。

本文介绍了一种依据FPGA的用于高分辨率视频图画处理的SDRAM操控器的规划办法。经过设置SDRAM的作业状况,使其作业在猝发形式。在视频时序信号操控下,用多行接连的SDRAM存储空间,存取视频数据。并在数据接口部分添加FIFO,缓存一行视频,在像素时钟操控下,完结视频数据实时的存储和读取。经过改动相关参数,能对一切VESA分辨率视频流进行操作。具有通用性强、体系杂乱度低、可靠性高、可扩展等特色。在某类型的机载大屏显现器体系中,用该SDRAM操控器完结了图画的翻转等功用,也验证了该操控器的实用性。

0导言

跟着人们对视频图画的清晰度和细节显现要求的不断进步,高分辨率、高bit位的视频规范相继被推出。

造成了数据处理速度和数据处理量极大的添加,也给数据缓存的容量和操控提出较高的要求。在常用的存储器中,SDRAM具有大容量和高速度的特色,而且价格也比较廉价,在视频图画处理中被广泛的用于图画缓存。在依据FPGA的高分辨率视频图像处理体系中,不可避免地会涉及到用FPGA完结SDRAM操控器的办法。但因为SDRAM的操作方法较杂乱,常见的操控器支撑的视频分辨率遍及都不高。在高分辨率的视频图画现已遍及的今日,支撑高分辨率的SDRAM操控器的规划也现已被越来越多的视频图画处理人士重视。本文介绍的这种操控器,选用的是Micron公司的MT48LC4M32B2TG(1M×32×4 banks)SDR SDRAM,在Altera的StratixⅡ系列FPGA EP2S60F1020I4上进行的开发。

在此平台上选用VHDL言语开发了SDRAM的操控器。

该操控器完结了最高分辨率为1 600×1 200@60 Hz的视频流的缓存和图画翻转的功用。

1 SDRAM根本操作

SDRAM首要包含初始化、读/写操作、改写、激活、预充电等操作。以MICRON公司的MT48LC4M32B2TG类型SDRAM为例别离介绍。

1.1初始化

SDRAM在上电后有必要履行初始化操作,首要流程为:首要在电源电压和时钟安稳后,经过100μs的延时,履行一次空操作;然后进行预充电操作,使一切BANK都进入闲暇状况;再然后履行两个主动改写指令;履行完主动改写后进入形式设置状况,经过地址总线A[11:0]发送数据来设置形式寄存器。形式寄存器设置界说如图1所示。

1.2读/写操作

首要激活详细的BANK和行;然后宣布读或写指令,和所要拜访的开端列。在读指令宣布后,要等候CAS延迟时刻,有用数据才会出现在数据总线上。在写指令宣布后,有用数据当即出现在数据总线上。读写指令可分为单个形式和猝发形式,猝发形式依据猝发长度分为1,2,4,8和全页形式。猝发操作可用猝发停止指令(BURST TERMINATE)完毕。

1.3改写

因为SDRAM的内部电路特色,有必要履行改写指令,以避免数据丢掉。要求64 ms内至少改写4 096次。

1.4激活

在读/写指令之前都要宣布激活指令,激活特定BANK中的某一行。激活后此行一向处于有用状况,直到接收到预充电指令。

1.5预充电

预充电指令用于封闭特定BANK中的某一行,或许一切BANK.

各种操作指令对应的SDRAM管脚电平状况如表1所示。

2 SDRAM操控器的规划

在视频图画处理中SDRAM首要用作数据缓存,也便是FPGA对SDRAM操作最频频的为读指令、写指令,在这两个指令中心插着激活、预充电、猝发停止、改写等指令。关于高分辨率的视频流,分辨率都在1 280×1 024以上,也便是每行的点像素都要大于1 280个,数据量十分的巨大。

为了下降SDRAM的操作时钟的频率和进步视频处理的实时性,选用猝发的形式对SDRAM进行操作。关于SDRAM MT48LC4M32B2TG地址为A[7:0],猝发操作的最大长度为256.也便是说为了存储和读出一行的视频数据要对SDRAM的多行进行操作。如1 280×1 024分辨率,需求5行SDRAM空间(256×5=1 280)。

关于不能被256整除的列数如1 600,就要选用操控猝发长度的方法,为了操控便利选用8行SDRAM空间存储一行视频数据(200×8=1 600)。规范的VESA分辨率都可以用此方法存储。在SDRAM操控器中设置了SDRAM的猝发长度的挑选功用,只需修正需求的猝发长度即可,不要从头规划代码。

为了确保SDRAM的改写要求,在每一行的SDRAM操作完结后就进行一次改写操作,此操作经由输入的视频行同步信号(HSY)的触发,假如外部视频信号忽然无输入,为了确保最终存储的数据不丢掉,进入自改写形式。一当操控器检测到HSY无变化就会启用自改写形式,周期对SDRAM改写。

SDRAM操控器主状况机如图2所示。

在主状况机完结初始化状况,进入等候状况后,等候读/写指令和视频数据输入信号。假如无视频输入,状况机一直在等候状况,并周期性的对SDRAM进行改写,直到有视频和读/写指令输入。这部分的状况图如图3所示。

因为猝发的最大长度为256,在每两行操作之间都要进行激活、读/写指令、猝发停止、改写等操作。因为读/写数据都运用的是像素时钟的频率,这样总个FPGA体系只要一个时钟域,能确保整个体系彻底依照同步体系来规划,能进步整个体系的可靠性。这样会带来一个问题,要想仅仅在视频的有用时刻,即DEN高电平部分完结一行视频数据的读/写作业,这是不能满足要求的。为了处理这个问题,需求借用行同步、前廊和后廊的时刻,可是DEN无效后不传输视频数据的,为了处理这个对立在SDRAM操控器和数据流输入/输出接口之间要别离规划两个FIFO,深度大于一行的视频数据,选用乒乓操作确保视频流的流通。

3 SDRAM操控器运用实例

在某类型的机载大屏显现器体系中,视频图画处理体系中运用该SDRAM操控器进行了调试,完结FPGA对SDRAM的操控,完结相应的视频处理算法和完结了图画的翻转功用。此部分体系扼要框图如图4所示。

该体系输入的为多路DVI信号,输入视频分辨率均为1 280×1 024,DVI信号经过DVI解码后输入FPGA.

为了完结FPGA内部的视频处理算法和图画翻转的功用,在FPGA外部挂了两组SDRAM,完结了乒乓操作,确保了体系的处理速度。处理后的视频经过LVDS信号转化,输出到液晶屏上显现。

关于左右翻转在FPGA内部选用双口RAM进行操作可以容易完结。而图画的上下翻转,因为涉及到一帧数据的处理,需求经过外部缓存SDRAM完结。在选用上述SDRAM操控器的基础上,操控SDRAM的读方法就能完结,在将视频数据写入SDRAM的时分,写地址从榜首行按次序写入。读的进程相反,要从最终行开端读。

因为SDRAM的一行容量不能装下整行的视频信息,所以读的行地址要求每次从读过的行的地址减去存一行视频需求的SDRAM的物理行数,在一行视频数据没有读完前要从当前行不断的自增。如1 280×1 024的视频数据,共需求5 120(5×1 024)SDRAM行存一帧数据。要上下翻转输出图画,首要要输出视频数据的第1 024行,也便是要从SDRAM的5 115行开端按次序读出,读完第5 120行后,SDRAM地址转到5 110行读视频流的第1 023行,如此类推,直到读完好帧的视频数据。该视频处理体系与显现作用如图5所示。

4定论

该规划针对高分辨率视频图像处理的SDR SDRAM操控器的规划,选用一致像素时钟进行体系操作,下降体系的杂乱度,进步体系的可靠性;经过写修正相关参数,可以习惯一切VESA分辨率的视频处理,通用性强;具有自改写功用,在无外部信号输入情况下可以主动改写,确保最终存储数据不会丢掉;可以经过添加外部模块,操控读写地址,完结图画翻转功用。此操控器在Al-tera的StratixⅡ系列FPGA EP2S60F1020I4平台上,成功完结各种视频处理功用,验证了此操控器的实用性。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/changshang/fabu/242314.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部