1 引言
DDR2(Double Data Rate2)SDRAM是由JEDEC(电子设备工程联合委员会)制定的新生代内存技术标准,它与上一代DDR内存技术标准最大的不同:虽然采用时钟的上升/下降沿同时传输数据的基本方式,但DDR2却拥有2倍的DDR预读取能力(即4位预存取技术)。此外,DDR2还增加ODT(内建核心终结电阻器)功能,内建合适的终结电阻,避免了以往因片外连接大片终结电阻带来的制板成本增加。
基于FPGA的SDRAM控制器,以高可靠性、强可移植性、易于集成的特点,逐渐取代以往的专用控制器而成为主流解决方案。本文采用Xilinx公司的Spartan-3A系列FPGA和Hynix公司的DDR2 SDRAM器件HY5PS121621实现DDR2控制器的设计。
2 FPGA与DDR2存储器接口
图1所示为DDR2与FPGA的外围接口连接图,DDR2的信号线分为:时钟信号线CK/CK ;数据信号线Data/DQS/DM;地址信号线Address/BA1/BA0;命令信号线RAS/CAS/WE;控制信号线CS/CKE/ODT。FPGA除与DDR2的所有信号线相连外,还引出外部环回信号线(图中虚线所示),此信号输出送至输入输出模块(IOB),以补偿FPGA与存储器之间的IOB、器件和迹线的延迟。
差分时钟线CK/CK为DDR2数据传输提供时钟,在CK的上升沿和下降沿均有数据被触发;双向差分线DQS/DQS看作数据的同步信号,写入时由控制器发出,读取时由DDR2产生DQS向控制器发送,它与读数据边沿对齐而与写数据中心对齐。DN为数据信号屏蔽位在突发写传输时屏蔽不存储的数据;RAS/CAS/WE作为命令信号线向DDR2发出读取、写人、刷新或预充电命令;片内终结信号线ODT控制是否需要DDR2进行片内终结。
3 DDR2控制器的设计原理
基于FPGA的DDR2控制器设计是由时钟生成模块、存储控制模块和读写数据接口模块组成如图2所示。
控制器中所有模块时钟均来自于时钟生成模块,它由数字时钟管理器(DCM)控制,输出90°、180°和270°时钟。该模块还包含延迟校准监视器,用于校准读取数据(DQ)对读取数据选通脉冲(DQS)的延迟,以便读取数据选通脉冲边沿能够正确对齐DQ有效窗口的中间位置。
读写数据接口模块是整个控制器设计的关键,它负责将用户写入的数据DQ和DOS按照DDR2 SDRAM时序要求发送给DDR2,DDR2在DQS的每一个时钟沿采集写数据。在读取数据时,DDR2 SDRAM将DQS和相关数据发送到与DQ对齐边沿的FPGA。FPGA将接收到的DQS信号经过延迟校准,作为内部存储读数据的FIFO的写时钟。FPGA为DDR2的每个数据位配置一对读写异步的FIFO,每个数据位都输入到上升沿(FIFO0)和下降沿(FIFO1)的FIFO中,实现原理如图3所示。
存储控制模块用于产生DDR2所需的地址和命令信号。DDR2在正常的读写操作前要初始化,因此需向DDR2发送初始化命令,待初始化完成后才能发送读写命令。对DDR2 SDRAM的读写访问为突发模式。突发写操作需向DDR2提供写命令(User_command)、写数据(User_input_data)和写地址(User_address)信号,在最后一个写地址发送突发操作完成信号(User_burst_done),并保持2个时钟周期有效下终止写操作,突发写时序如图4所示。突发读操作需向DDR2提供读命令(User_comm-and)和读地址(User-address),在最后一读地址发送突发完成信号(User-burst_done),并保持2个周期有效下终止读操作,突发读时序如图5所示。
4 DDR2控制器的设计及应用
为了缩短开发周期,采用Xilinx的MIG软件工具直接生成DDR2控制器设计模块,包括HDL代码和约束文件。用户可在MIG的GUI图形界面选择对应模板、总线宽度和速度级别,并设置CAS延迟、突发长度、引脚分配等关键参数。如果设计者所选器件与MIG所列模板不相符,可在代码生成后灵活修改代码,达到系统要求。代码添加到工程前需硬件验证,采用MIG自动生成的测试模块进行验证。该模块向存储器发出一系列的写入命令和读取命令,并对写入数据和读回数据进行比较,通过比较信号(led_error)验证控制器的正确与否。用ChipScope抓取的读数据和相关控制信号时序分别如图6和图7所示,读写比较信号(led_error)在检测到读写数据相等时输出'0'电平。
在硬件验证通过后,把控制器代码导入到系统工程中,设计者只需输入相应命令(包括读、写和初始化命令),控制器模块将自动产生命令和控制信号并按照DDR2的时序要求送至DDR2,命令发送完毕提供给用户一个命令应答信号(User_cmd_ack),设计者根据这一信号判断是否可以发送下一个命令。至于自动刷新、激活和预充电命令则由控制器自动完成,无需用户干涉。
5 结束语
通过MIG工具辅助设计,实现500 M/s带宽的DDR2接口数据采集,占用FPGA资源分别为15%IOB资源,17%逻辑Slice资源和2个DCM。在FPGA中实现DDR2控制器,节省功耗和空间,并缩短系统开发周期,满足大多数低成本系统设计要求。
关键字:DDR FPGA 接口 数据采集
引用地址:
Spartan-3A 的 DDR 2 接口数据采集
推荐阅读最新更新时间:2024-05-02 20:44
基于CS5451A多路同步数据采集系统设计
继电保护或者测控装置都需要同步采集多路的电压或者电流信号,现在一般的实现方式都是用多路逐次逼近型ADC(譬如AD7656或者ADS8-556)实现多路同步数据的采集,这种方案采样速度高、控制简单,但是每一通道都需要基于运算放大器的抗混叠滤波器,所以实现起来成本高、占用PCB面积大。本文提出一种使用CS5451A模数转换芯片实现多路同步数据采集的实现方案,这种实现方式电路简单、成本低。在本方案中,处理器选用的是飞思卡尔MPC8313处理器,主频333 MHz。CS5451A如果用CPU直接控制,由于CS5451A芯片输出数据速率低,处理器与ADC速度严重失配会大大占用CPU的开销,本文提出一种利用XILINX可编程逻辑芯片FPGA
[测试测量]
基于VHDL的SDRAM接口设计
RAM通常用于数据和程序的缓存,随着半导体工业的发展,RAM获得了飞速的发展,从RAM、DRAM(Dynamic RAM,即动态RAM)发展到SDRAM(Synchronous Dynamic RAM,即同步动态RAM),RAM的容量越来越大、速度越来越高,可以说存储器的容量和速度已经成为半导体工业水平的标志。 1 任务背景 SDRAM具有大容量和高速的优点,目前其存取速度可以达到100~133MHz,单片容量可以达到64Mbit或更高,因此在需要高速、大容量存储器的系统中得到广泛应用,如应用在目前的计算机内存中。但是SDRAM的控制比较复杂,其接口不能直接与目前广泛应用的普通微处理器如MCS-51系列、Motorol
[模拟电子]
基于C8051F021单片机和SD2300芯片实现海流数据采集存储接口的设计
随着科技的高速发展,现代工业测控领域的很多应用中都需要实现大量数据的定时采集存储。以为海流计设计的海流数据采集存储接口电路为例,介绍一种定时采集存储系统的工作原理及其实现方法。 1 总体结构 在很多情况下,尤其是恶劣的工作环境下,高性能的单片机和大容量的Flash存储器是数据采集存储系统的最佳选择,本文介绍的系统也是基于这样的考虑。系统硬件结构并不复杂,包括高性能单片机C8051F021、实时时钟芯片SD2300、大容量Flash存储器K9G8G08及其外围电路,如图1所示。工作原理也较为简单,通过串口将单片机C8051F021与海流计相连,通过对单片机的编程实现对海流计的控制和使用。同时,为了实现定时采集和数据存储的功能,还
[单片机]
单片机与液晶显示器的接口应用介绍
引言 液晶显示器(LCD)具有工作电压低、微功耗、显示信息量大和接口方便等优点,现在已被广泛应用于计算机和数字式仪表等领域,成为测量结果显示和人机对话的重要工具。液晶显示器按其功能可分为三类:笔段式液晶显示器、字符点阵式液晶显示器和图形点阵式液晶显示器。前两种可显示数字、字符和符号等,而图形点阵式液晶显示器还可以显示汉字和任意图形,达到图文并茂的效果,其应用越来越广泛。 GTG240128液晶显示模块: 1 模块特点 GTG240128图形点阵式液晶显示器的点阵的大小为240×128,带背光功能。内置1片T6963C液晶显示控制器和5片KS0086驱动器。该液晶显示模块具有如下特点。 ● 8位并行总线
[工业控制]
Quamtum-SI DDR3仿真解析
Quamtum-SI DDR3仿真解析 Automated DDR3 Analysis Quantum-SI 2008.04 automates signal integrity and timing analysis of DDR3 interfaces. Enhancements include new DDR3-specific waveform quality checks and modeling of dynamic timing behaviors (write and read-leveling). Quantum-SI simplifies the process of perform pre- an
[模拟电子]
串行接口LED数码管及键盘管理器件ZLG7289A的原理与应用
摘要:介绍了LED数码管及键盘管理器ZLG7289A的原理与应用。该芯片具有SPI串行接口,可同时驱动8位共阴式数码管(或64只独立LED),还可连接多达64键的键盘矩阵,单块芯片即可完成LED显示、键盘接口等全部功能。文章给出了ZLG7289A的特点、引脚功能、指令说明和经典电路,并以单片机AT89C51为例,给出了其接口电路及相应源程序。
关键词:ZLG7289A;LED显示;键盘接口;SPI
1 概述
ZLG7289A是广州周立功单片机发展有限公司自行设计的、具有SPI串行接口功能的、可同时驱动8位共阴式数码管(或64只独立LED)的智能显示驱动芯片。
该芯片同时可连接多达64键的键盘矩阵。单块芯片即可完成LED
[电源管理]
基于FPGA+ DSP的实时图像处理系统设计与实现
摘 要: 针对图像处理系统计算量大、实时性高和体积小的要求, 研制了一种以DSP为主处理器FPGA 为辅处理器的高性能实时图像处理系统。利用这两种芯片的各自特点, 将算法分成两部分分别交由FPGA 和DSP处理, 大大提高了算法的效率。系统具有结构简单易于实现和运用方便灵活的特点, 加载上相应的程序之后能实现对所获取的图像跟踪、识别和匹配等处理方法。详细说明了系统的设计思路和硬件结构, 并在硬件系统上进行了算法仿真及实验验证。实验结果表明: 该系统实时性高, 适应性好, 能够满足设计要求。 1 引 言 图像处理系统的处理算法复杂, 计算量大, 处理实时性要求高, 同时系统的体积也有严格的限制。 因此在设计系统时必须综合
[嵌入式]
基于CPLD的VXI总线接口的研制
摘要: 文章以VXI总线开关矩阵模块为例,介绍了基于可编程逻辑器件的VXIbus寄存器基接口的开发过程。给出了选用ALTERA公司的可编程逻辑器件FLEX 10K10在MAXPLUSII环境下,结合VXIbus时序对接口逻辑电路进行波形仿真和时序分析的方法。
关键词: VXI总线 接口 CPLD FLEX 10K
1 引言
VXI总线测试系统是一种世界范围内完全开放的、适用于多个生产厂家的模块化仪器总线系统。随着仪器功能逐渐向复杂化发展,以数字电路为主的接口电路的设计也在追求更高的集成度,这时如果采用可编程逻辑器件(PLD)技术代替传统的中、小规模集成电路来实现电路设计,不仅可以节省
[半导体设计/制造]