当前位置:首页 > 智能硬件 > 智能硬件
[导读] 0 引 言  目前,在很多视频数据采集以及实时显示的应用开发中,常需要用到存储容量大、读写速度快的存储器。在各种存储器件中,同步动态随机存储器SDRAM 以其速度快、容量大、价格低的特点而备受关注。SDRAM 的工

 0 引 言

  目前,在很多视频数据采集以及实时显示的应用开发中,常需要用到存储容量大、读写速度快的存储器。在各种存储器件中,同步动态随机存储器SDRAM 以其速度快、容量大、价格低的特点而备受关注。SDRAM 的工作频率可以达到100MHz 甚至更高,但是在其工作周期内,因为要有刷新、预充电以及寻址等必要的操作,不可能总处于数据传输状态,使得它的带宽不能达到百分之百的利用,实时显示效果因此受到影响。为此,本文在研究有关文献的基础上,根据具体情况提出了一种独特的方法,利用FPGA 的片上资源开辟了多个FIFO 作为读写缓存,实现了多端口SDRAM 控制器的设计,并用Verilog 硬件描述语言[1] 给予实现,仿真结果表明该控制器能够轮流地从多个缓存向SDRAM 进行存取,实现了高速多数据缓存,充分利用了SDRAM 的有效带宽,提高了存取速度,从而达到实时显示的要求,并且只要将该设计稍加修改,便可应用到其他需要多数据缓存的场合。

  1 SDRAM 基本操作原理[2] [3]

  SDRAM 的主要控制信号有:CS_N:片选使能;CAS_N:列地址选通信号;RAS_N: 行地址选通信号;WE_N:写使能信号;DQM:字节掩码信号;ADDR:地址线。以上这些信号的逻辑组合就组成了SDRAM 的主要操作命令,如表1 所示:

  表1.SDRAM 主要操作命令表SDRAM 的主要操作如下:

  1.1 初始化操作

  SDRAM 上电一段时间后, 经过初始化操作才可以进入正常工作过程。初始化主要完成预充电、自动刷新和模式寄存器的配置。

  1.2 SDRAM 的基本读写操作

  读写操作主要完成与SDRAM 的数据交换。可以分为非突发连续操作模式和突发连续操作模式, 非突发指的是传送数据和地址必须是相对应一个一个的传输, 突发模式则是地址控制信号只需要给出首地址信息, 而数据实现连续传输过程, 突发数据的长度可以为1, 2,4, 8 和全页。

  1.3 刷新操作

  动态存储器都存在刷新问题。SDRAM 的刷新方式有自动刷新和自主刷新, 这里主要采用自动刷新方式, 每隔一段时间向SDRAM 发一条刷新命令。

  2 基于FPGA 的多端口SDRAM 控制器设计

  设计中选用的FPGA 是Altera 公司生产的CycloneII 系列中的EP2C35,选用的SDRAM 是ISSI 推出的64-MBIT 的IS42S16400B ,它是以1MWords X 16Bits X 4Banks 为组织结构的同步动态随机存储器,最高时钟频率可达143MHz[4]。

  视频数据实时显示系统的基本构成如图1 所示[5]:

  SDRAM 作为帧缓冲器,它的上一级数据输入是25MHz 的视频数据采集模块,所得到的数据经处理以后是每个像素点30 位数据,下一级是VGA 显示器以25MHz 的时钟进行数据输出,也要求是每个像素点30 位,而SDRAM 的数据宽度是16 位,因而每当存入和读取一个像素点的数据时,各需要进行两次传输。本款芯片SDRAM 的工作频率虽然可设置为100MHz ,但是如果不加缓存的话,就不能使用页突发模式来有效利用带宽,而且SDRAM 内部其他操作也需要占用一定的时间,不能达到实时显示的效果。本文在研究有关文献的基础上,利用FPGA 的片上资源开辟4 个FIFO 缓存,将SDRAM 的数据端口仿真成四个虚拟端口(两个写端口+两个读端口),每个端口的数据宽度都是16位,深度是两页SDRAM 的大小。且按照一致的规则将30 位采集和显示的数据分成两组与缓存进行存取,相应的,在SDRAM 上使用两个Bank 来分别存取每组数据。控制器根据缓存FIFO 的状态对SDRAM 发出读写请求,采用页模式突发传输和Bank 切换的方式来匹配时序要求。

  SDRAM 控制器的内部结构如图2 所示:

  各功能模块描述如下:

  2.1 多端口读写控制模块

  该模块是与外设交换数据的接口,并且根据缓存FIFO 的状态,自动生成对SDRAM 的读写请求以及数据缓冲处理。它是本设计的核心。下面着重描述一下读写请求产生的设计过程和简要代码。

  将数据采集模块得到的两组数据同时存贮到各自的写缓存FIFO 里,只要写缓存里的数据达到了SDRAM 每页的数据大小,就产生对SDRAM 的写请求,因为每个缓存的大小是两页SDRAM ,所以此时数据采集模块还可以继续存数据。类似的,VGA 所显示的数据也是从两个读缓存 FIFO 得到的,只要读缓存里的数据小于SDRAM 每页的数据,就产生对SDRAM 的读请求,这样每个缓存里的两页轮流操作。关键代码如下:

  2.2 地址生成模块:

  该模块用来自动生成对SDRAM进行存取操作的Bank地址,起始地址和突发长度。由于30位的像素数据等分各存入两个Bank里,所以在Bank里它们的对应地址是相同变化的,这样存取数据时,对两个Bank的读写地址的控制就是统一增减的,降低了使用一个Bank时读写控制的繁杂性。

  2.3 自动刷新模块:

  SDRAM需要不断的刷新操作,同一行的存储单元每隔64m s 需要刷新一次,对于本芯片的一个Bank 中的4096 行存储单元,则每15. 625us 就需要发出一个刷新命令,由于本设计采取缓存的办法,所以应该按读写SDRAM到缓存FIFO的时间为准来设计刷新计数器的初始值。以页模式进行读写,读数据的整个时间过程是tRCD+ tCL+mLENGTH ,写数据的整个时间过程是tRCD+mLENGTH ,其中tRCD是激活命令到读或写命令期间的延迟,tCL是读命令发出后到第一个有效数据之间的间隔,mLENGTH 是SDRAM 的页长,本设计中tRCD =3, tCL=3,mLength=256 。因此刷新计数器的初始值设置为2X(256+3+3)+ 2X(256+3)=1042 ,经计算远远小于所要求的刷新周期,初值设置合理。开始工作后,每当刷新计数器值减为0, 便会发出刷新命令,保证SDRAM内的数据不丢失,自动刷新之后直接进行预充电来关闭工作行。

  2.4 命令产生模块:该模块主要负责命令仲裁、命令生成以及时序控制等。SDRAM 优先级仲裁算法通常有两种:一种是固定优先级算法,另一种是循环优先级算法。本文设计的SDRAM 控制器是应

  用在实时图像处理系统中的,对数据处理效率要求很高,因此设计中选用固定优先级算法。本文规定优先级如下:初始化请求>刷新请求>读请求>写请求>其他。

  2.5 时钟产生模块:

  通过使用PLL(锁相环) 资源为FPGA 内部的时序元件提供稳定的时钟以及为SDRAM 提供可靠的时钟,本设计中为100MHz 。

  1 SDRAM 控制接口模块:该模块主要完成对SDRAM 的命令解码、初始化配置等。

  2 数据通路模块:

  根据模式寄存器的模式字及对用户指令的分析结果,使SDRAM 的地址及数据和相应的操作指令在时序上同步。

  3 仿真验证

  使用Modesim 软件[6]对多端口SDRAM 控制器进行仿真验证,得到的SDRAM 读写信号仿真波形图时序合理、逻辑正确,可以从多个缓存FIFO 轮流地向SDRAM 以页突发模式进行读写操作,有效利用了SDRAM 的带宽,而数据采集和数据显示模块可以在不受SDRAM 操作时序影响的情况下,连续地向缓存FIFO 中存取数据。仿真波形如图3 所示:

  将该控制器集成到视频数据采集显示系统的设计中,经QuartusII 分析综合,生成的网表文件下载到FPGA 芯片上,并将数字摄像头和VGA 显示器连接好,进行实际硬件验证,几经调试,该系统已能够成功运行并且达到了良好的实时显示效果。

  4 结 论

  本文使用状态机的设计思想,采用Verilog 硬件描述语言设计实现了一种基于FPGA 的,可用于多数据缓存的、高效利用SDRAM 带宽的多端口SDRAM 控制器。

  本文作者创新点:设计实现的SDRAM 控制器能够完成多端口数据缓存,充分利用了SDRAM 的有效带宽,提高了存取速度,只要稍加修改就可以应用到图像处理,视频监控等需要高速多数据缓存的场合,可重用性好。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

网关、机顶盒、HDMI设备和USB电视棒得到SL3000的支持 印度班加罗尔2022年10月20日 /美通社/ -- Tejas Networks (孟买证券交易所代码:5...

关键字: ATSC 芯片 AN ABS

领先的半导体IP核提供商Arasan Chip Systems今天宣布,其MIPI DSI-2、CSI-2和C-PHY/D-PHY Combo IP已在Testmetrix...

关键字: STM TEST AN IP核

世界上最大的两家资产管理公司贝莱德(BlackRock)和先锋(Vanguard)等金融机构已在英国一项问询中表示,它们将继续投资化石燃料,并且不认同气候变化计划要求停止新的煤炭、石油和天然气投资的观点。贝莱德是试图采取...

关键字: CK 天然气 AN AC

高盛集团(Goldman Sachs Group)周二证实了一项全面重组计划,这是该公司历史上最大的改革举措之一。高盛将把其交易和投行业务合并为一个部门,使该行从四个部门缩减至三个部门,缩减进军零售银行业务的努力,专注于...

关键字: DMA GROUP GO AN

10月18日消息,快科技从相关渠道获悉,新款领克03+、新款领克03+ Cyan版、新款领克03 1.5T车型将会在10月20日上市。该车2.0T版和1.5T EM-F混动版已于上月底上市,共推出五款车型,售价区间为15...

关键字: 领克 TI AN 发动机

阿联酋迪拜2022年10月15日 /美通社/ -- 让用户能够在XR和其他数字体验中创建和体验全新水平沉浸式现实的领先沉浸式社交应用VUZ完成B轮融资2000万美元,国际领投方包括Caruso Ventures、Visi...

关键字: API AN 沉浸式体验 AI

上海2022年10月12日 /美通社/ -- 位于德国勃兰登堡州(Brandenburg)克莱特维茨(Klettwitz)附近劳希茨(Lausitzring)赛道的DEKRA德凯技术中心,投资七位数欧元新增电驱动和总成测...

关键字: 电动汽车 测试设备 AN 电机

香港2022年10月11日 /美通社/ -- 有光科技 (Fano Labs) 欣然宣布,公司已获得AEF大湾区创业基金(由戈壁大湾区管理)几百万美元投资,以拓展大湾区及东南亚业务。这次融资轮亦获得新视资本投资。...

关键字: ABS LAB AN BSP

(全球TMT2022年10月11日讯)阿吉兰兄弟控股集团子公司Sandsoft宣布在沙特首都利雅得设立了移动游戏开发工作室。Sandsoft致力于成为创新移动游戏的开发商、发行商和投资方。工作室的设立将为该地区创造80...

关键字: 游戏开发 移动 DSO AN

Meta Quest Pro定于本月25日面市,定价1500美元。零售包装内含头戴装置,Quest Touch Pro手柄,充电底座,压感笔尖(手柄附件),部分遮光罩(另有全遮光罩可选)。开发单位宣称Meta Quest...

关键字: ST AN 传感器 GB

智能硬件

22018 篇文章

关注

发布文章

编辑精选

技术子站

关闭