微波EDA网,见证研发工程师的成长!
首页 > 通信和网络 > 通信网络技术文库 > 多端口SDRAM控制器的设计与实现

多端口SDRAM控制器的设计与实现

时间:09-18 来源:EDN 点击:


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 的有效带宽,提高了存取速度,只要稍加修改就可以应用到图像处理,视频监控等需要高速多数据缓存的场合,可重用性好。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top