DDR3存储器系统可以大大提升各种数据处理应用的性能。然而,和过去几代(DDR和DDR2)器件相比,DDR3存储器器件有了一些新的要求。为了充分利用和发挥DDR3存储器的优点,使用一个高效且易于使用的DDR3存储器接口控制器是非常重要的。视屏处理应用就是一个很好的示例,说明了DDR3存储器系统的主要需求以及在类似数据流处理系统中DDR3接口所需的特性。
视频处理系统将对于数据带宽的要求推高到了极致:系统可以处理越多的数据,就具有越高的性价比。视频聚合器和路由器可并行处理多个视频流,因此对于匹配数据处理能力和视频带宽的需求就成为了设计的一大挑战。FPGA可通过在单个FPGA中实现多个视频处理器来提供强大的处理能力。那么现在的挑战就变成了要使数据尽快且高效地从FPGA进出。DDR3存储器系统在大多数情况下可以为这些基于FPGA的系统提供足够的带宽。
视频处理设计说明
我们的目标视频处理设计将同时处理四个视频源,将视频数据转换和压缩为一种可以通过PCI Express接口传输到存储器hub的格式。系统的主要功能块如图1所示。
图1:视频处理器框图
FPGA获取并缓存四个视频源的数据流。这些FIFO缓冲器由DDR3存储器控制器清空并保存在DDR3存储器中。一旦一个完整的视频数据包存储完毕,视频处理器会向DDR3存储器控制器申请数据,存储器控制器读取数据并将其传到视频处理器。视频处理器对视频数据进行格式化和压缩,并通过DDR3存储器控制器写回存储器。当一个视频数据包全部处理完毕,并准备通过PCI Express接口进行传输,DDR3存储器控制器从视频处理器获取数据并将其传到PCI Express接口。
DDR3存储器接口控制器概述
从零开始设计一个DDR3存储器控制器是非常困难的。需要考虑许多特性之间的权衡和互相影响。使用一个经验证的IP核可以省去了大量的开发、测试和调试时间,否则就需要花费许多时间来进行in-house设计开发。一个经验证的IP核还可以减少后续支持的负担,因为这将由专门的开发人员来支持。最重要的是,使用一个经验证的IP核可以使设计师将精力集中在其设计的独特特性上,从而向最终客户交付高价值的产品设计。例如,LatTIceECP3 DDR3存储器控制器IP核已经通过了一个第三方验证套件的验证。该IP核使用LatticeECP3 I/O协议板来实现并通过全部测试。
图2展示了一个存储器控制器的框图。图最上面的配置接口用于设置设计的各个选项。DDR3 I/O模块使用I/O 基元来实现。指令译码模块根据每个bank和每一行,对用户指令进行译码,产生内部存储器指令序列。指令应用模块将每条指令序列转换为满足目标存储器件功能和时序要求的存储器指令。数据通路模块与DDR3 I/O模块连接,并且在读操作时产生读数据和读取数据有效信号。读数据偏移校正模块对齐每一条8位数据线上的数据,调整任何可能的时钟偏移。这使得用户端的读数据总线与系统时钟准确校准。写调整模块为了正确的捕获数据,调整了DQS对CK的关系。ODT块通过为任意或所有DDR3 SDRAM器件提供单独的终端阻抗控制,提高了存储器通道的信号完整性。
图2:DDR3存储器控制器IP核框图
作者:莱迪思半导体公司 来源:EDN