一片SDRAM实现乒乓操作_第1页
一片SDRAM实现乒乓操作_第2页
一片SDRAM实现乒乓操作_第3页
一片SDRAM实现乒乓操作_第4页
一片SDRAM实现乒乓操作_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实时视频采集系统的SDRAM控制器设计0引言在PAL-VGA的实时视频采集系统中,由于视频数据流的数据量大、实时性要求高。需要高速大容量的存储器作为图像数据的缓存。SDRAM作数据缓存不仅具有大容量和高速度的特点,而且在价格和功耗方面也占有很大的优势。但是SDRAM控制较复杂,需要处理预充、刷新、换行等操作,因此有必要设计SDRAM控制器来完成和SDRAM的接口。并且为了保证数据流的连续性,实时视频采集系统通常采用通过对两片SDRAM的乒乓操作来完成图像数据的缓存。针对SDRAM是高速设备,工作频率上限最高可以达到166MHz,而该系统中前端图像采集模块的像素时钟为27MHz,后端VGA显示的

2、像素时钟为31.5MHz。在此介绍了一种使用1片SDRAM的不同BANK进行乒乓操作,且相对容易实现的SDRAM控制器设计方法。1SDRAM基本操作原理SDRAM的主要操作包括初始化、读写访问、刷新、激活、预充电等。以MICRON公司的MT48LC4M3282(1Mx32bx4BANKS)为例,简要介绍一下SDRAM的操作。如图1所示,SDRAM的初始化操作过程如下:在电源管脚上电(电压不得超过标称值的0.3V)并且时钟稳定后经过200ys延迟,执行一次空操作命令(该命令在延迟周期的后期发出)且保持时钟使能信号为高;对所有的BANK进行预充电,所有的BANK都进入空闲状态;预充电后执行两个自动

3、刷新命令,等待八个刷新周期完毕;发出模式设置命令来设置模式寄存器。由于上电后模式寄存器的状态是不确定的,所以在进行SDRAM操作之前一定要先设置模式寄存器。模式寄存器设置值如图2所示。图1SDRAM的初始化过程AOAlA2A3A4突发长度突发炎型对sDRAm选择BANK,AA11来选择所要访问的起始列。在读命令发出后,现在数据总线上勺读写访问先要以激活命令选用来选择所要访问的,CAS延迟时间可以设置为A2AlA0A3=0000I001120J04择具体的BANK和行,,地址线BA1/BA0用行;然后发出读或写命令地址线A0A71来8.用一.要等待一个AS延迟时间,有效数据才会2或3个时钟。在写

4、命令发出后,不需要等待F-人延迟总线上。对SDRAM的读写操作一般以突发模式及全页,CA有效数据会立即出现在数据S延迟时间进行,突发长度可以设置成1,2,4,8以时间设置为2,SDRAM的:避免数据丢失。rAM提供两种类型的刷新模式:自动刷A9SDA10突发长度为1模式F储单元可以理解为一个电只要保证在64ms时间内所容,r有J新的长度为8个。该系统的AS电,必须有定时的刷新周期以总是倾冋于放有效数据行都完成刷新就可以保证数据不丢。和白刷新。在该系统中.前端PAL制式信号插入模式A6A5A4A8CAS址迟一帧的时间为40ms,因此SDRAM的同一地址读写操作的时间相隔为40ms。又由于系统为实

5、时视频采集系统,前端采集的视频数据是连续不断的,所以该系统不需要进行刷新操作即可保证数据不丢。2SDRAM控制器的设计实现在实时视频采集系统中,为了保证数据的稳定和连续性,通常采用的方法是对存储器进行乒乓操作。一般所指的乒乓操作针对两片存储器芯片,如图3所示,其原理是通过控制模块对两片存储器分别做读写操作,写存储器满时控制模块发出交换命令,切换两片存储器的操作状态。SDRAM的1,2BANK为读缓存,3,4BANK为写缓存。第二帧图像时SDRAM的3,4BANKBANK来实现乒乓操作。另一方面由于SDRAM的谕I的时候读写操作是不能同时进行的切换为读缓存,1,2BANK切换为写缓存。采用一帧图

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

7、如下:首先初始化SDRAM,然后向SDRAM的1,2BANK写入第一帧图像,当第一帧图像写入完毕后进入乒乓操作阶段。此时SDRAM的1,2BANK为读缓存,3,4BANK为写缓存。首先进入读缓存激活行,开始读操作,读操作开始的同时启动指令计数器。此时每执行一条指令(包括读指令,空操作指令,不包括预充电指令和行激活指令),指令计数器自加1,当指令计数器到达规定值时将指令计数器清0并切换到写状态。进入写状态前先判断写缓存的行激活标志,如果没有激活,先执行行激活,然后开始写操作,如果已经激活则直接开始写操作。写操作开始的同时启动指令计数器。此时和读状态时一样,每执行一条指令,指令计数器自加1,当指令

8、计数器到达规定值时同样将指令计数器清0后切换到读状态。如此反复切换操作,直至读完一帧或者写满一帧。如果是读完一帧,则判断写缓存中一帧写满没有。如果已经写满,则进入读写BANK切换状态。如果没有,则进入写状态并不再切换读写状态,一直保持写状态直至写满一帧为止,然后进入读写BANK切换状态。如果是写满一帧,则同理于读完一帧的情况,首先判断读缓存中读完一帧没有,然后根据判断结果进行操作,最后进入读写BANK切换状态。在读写BANK切换状态中,读缓存切换为3,4BANK,写缓存切换为1,2BANK。反复上述操作步骤,就可以完成使用一片SDRAM不同BANK的乒乓操作。整个SDRAM控制器在Altera的Quartusll7.2环境下采用Verilog设计完成,然后在ModelSimSE6.0环境下仿真通过。随后通过Altera的Quartusll7.2进行综合和布局布线,并最终在Al-teraCyclone系列FPGA芯片EP1C6Q240C8上完成。所设计的SDRAM控制器在PAL-VGA的实时视频采集系统中调试通过,能够实现图像数据的存储和读取,完全满足系统的要求。3结语介绍在PALVGA的实时视频采集系统中使用SDRAM作为图像缓存的基本操作,设计一种使用1片SDR

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论