- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
多端口SDRAM控制器的设计与实现
录入:edatop.com 点击:
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 的有效带宽,提高了存取速度,只要稍加修改就可以应用到图像处理,视频监控等需要高速多数据缓存的场合,可重用性好。
通过使用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 的有效带宽,提高了存取速度,只要稍加修改就可以应用到图像处理,视频监控等需要高速多数据缓存的场合,可重用性好。
上一篇:什么是嵌入式系统?(精华)
下一篇:基于USB的嵌入式LCD
显示系统的设计