网站首页 | 技术文章 | 解决方案 | 电子书籍 | 下载中心 | 电子商城 | 技术论坛 | 电子博客 | 商务信息  
联系站长
加入收藏
会员登陆
交易首页 最新信息 - 推荐信息 - 热门信息 - 免费发布 - 行业新闻 - 行业资讯 - 行业知识 - 积分说明 - 信息分类 - 企业展示 - 帮助
 您的位置: 中国电子设计 >> 技术文章 >> 编程逻辑 >> 正文 商务信息栏目开通公告  [2008-05-19 11:47:00]
   □  一种基于FPGA的DDR SDRAM控制器的设计   
一种基于FPGA的DDR SDRAM控制器的设计
[作者:吴健军 初建朋 赖宗声    转贴自:微计算机信息    点击数:    更新时间:2008-9-24
【字体:

A Implementation of DDR SDRAM Controller based on FPGA
Abstract –With the CPUs speed up, the storage’s reading/writing speed and capability of periphery control circuit became the obstacle to the development of system’s performance. This paper proposes a new DDR SDRAM controller based on FPGA.
Key Words: DDR SDRAM Controller,FPGA, tcac,  DLL
摘要:随着现在各种处理器的工作频率越来越快,存储器的读写速度以及外围的控制电路的性能成为直接制约系统的性能的瓶颈。介绍了一种基于FPGA的DDR SDRAM控制器的设计。
关键词:DDR SDRAM 控制器,FPGA, tcac,  DLL  

I.引言
  DDR SDRAM的原理及特点:DDR SDRAM不需要提高时钟频率就能加倍提高SDRAM的速度,因为它允许在时钟脉冲的上升沿和下降沿读写数据。至于地址和控制信号,还是跟传统的SDRAM一样,在时钟的上升沿进行传输。
DDR (Double Data Rate SDRAM),能够以相同频率SDRAM的两倍来传输数据,每个时钟周期传输两次数据,它在时钟信号的上升沿和下降沿传输数据。存储单元工作在相同的时钟频率下,但是内部总线加宽,从内部阵列到缓存之间的总线宽度是外部总线(buffer)到控制器)的两倍,使得缓存到控制器的数据传输率达到内部存储单元工作频率的两倍。存储单元内部使用一个很宽但较慢的总线,但当数据传输到控制器时使用了一个较窄但是快速的总线。I/0口的控制电路对存储器的总体控制和时序具有极大的影响。
 

在DDR的读取过程中,需要考虑的有两个主要类型的延迟。第一类的是连续的DRAM读操作之间的延迟。DDR不可能在进行完一个读取操作之后就立刻进行第两个读取操作,因为读取操作包括电容器的充电和放电另外还包括把信号传送出去的时间,所以在两个读取操作中间至少留出足够的时间进行这些方面的操作。第二种延迟类型是叫做内部读取延迟(inside-the-read)。这种延迟同同两次读取操作之间的延迟非常的相似,但是不是由停止 /RAS和/CAS激活而产生的,而是由于要激活 /RAS和/CAS而产生的。比如,行存取时间(tRAC)--它就是在你激活RAS和数据最终出现在数据总线之间的时间。同样的列存取时间(tCAC)就是激活 /CAS引脚和数据最终出现在数据总线上之间的时间。

   DDR SDRAM 控制器是一个可配置的,用户可以根据设计需要,灵活修改数据宽度、脉冲传输速率和 CAS 等待时间的设置。另外,DDR 控制器还支持组块管理,这是通过维护一个所有组块均被激活以及每一组块行激活的功能来实现的。DDR SDRAM 控制器通过这些信息决定是否需要一个激活命令或预充电命令。这有效缩短了 DDR SDRAM 接受读写命令的等待时间。

II.控制器总体框图:

图2中DATAIN、DATAOUT分别是输入、输出数据信号,CMD信号为用户对DDR SDRAM进行的操作,可以支持NOP、WRITEA 、READA、REFRESH、PRECHARGE、LOAD_MODE命令。CS_N为片选信号,RAS_N、CAS_N分别为SDRAM的行选通、列选通信号。

 

图2:DDR控制器的总体框图

III.DDR 控制器主要模块
DDR控制器主要是由Control interface 模块、Data path模块以及Command interface模块组成,另外还包括FPGA上的DLL模块,如图3所示。
Control interface模块主要是对来自用户的command进行保存、译码,可支持NOP、WRITEA 、READA、REFRESH、PRECHARGE、LOAD_MODE命令。Control interface模块将Command信号和地址ADDR信号同时送到Command interface模块中,同时产生地址选通信号CA_N。
Command interface模块接收来自Control interface模块的译码的命令,对DDR SDARM产生相应的操作,即上面的6种命令。Command interface模块里还包含一个简单的仲裁器,用于对Command和refresh要求的仲裁。refresh要求总是优先于任何一个Command。有16 bits 的 refresh counter寄存器用于自动refresh。
Data path模块提供DDR和user interface之间的数据通路,通过对path width配置,可支持16、32、64的数据宽度。 burst length可以配置成是2、4、8。 Data path模块的数据宽度是DDR SDRAM的两倍,在时钟的上下沿都对DDR SDRAM进行操作。同时Data path模块产生DQS信号,即在写操作的时候Data path模块对写入DDR SDRAM的数据按照要求进行选通。如图中Data Strobe所示。
 
图3:DDR 控制器内部控制模块
此外,DDR SDRAM 控制器还利用了FPGA内部的DLL模块,给系统提供了2个时钟CLK 和CLK2X,并且可以改善时钟性能,减少时钟抖动,改善了系统的性能。
IV读写波形
 
图4:读数据波形图                                 图5:写数据波形

图4、图5是用采用Mentor modelsim 得到的仿真波形,是典型的读写波形,时钟频率为100MHz。
V系统实现及结论
   DDR SDRAM 控制器在 Xilinx公司的XC2V1000 FPGA上实现,综合后使用了798个逻辑单元,在数据宽度为64,系统时钟为100Mhz的工作环境下,最高可达到1.6Gbytes/s的速率。使用的DDR SDRAM是Toshiba的TC59WM803BFT。
 本文给出了基于FPGA的DDR SDRAM控制器的设计。DDR SDRAM 控制器是一个可配置的,用户可以根据设计需要,灵活修改数据宽度和 CAS 等待时间的设置。可广泛用于高速的DDR SDRAM中,提高系统的性能。
VI  Reference
[1]. Jan M.. and Anantha Chandrakasan “Digital Integrated Circuits ”
[2]. B.S.Amrutur,M.A.Horowitz,”Fast Low-Power Decoders for RAMs,” IEEE Journal of Solid-State Circuits,vol.36,no.10,pp.1506-1515,October 2001
[3] H.Hidaka et al.,”A 34-ns 16-Mb DRAM with Controllaber Voltage-Down Converter,” IEEE Journal of Solid-State Circuits, vol.27,no.7,pp.1020-1027,July 1992
[4] H.YOO et al.,”A 159-Mhz 8-Banks 256-M Synochronous DRAM with Wave Pipelining Methods,” ISSCC Digest of Technical Papers,pp.374-375,1995

作者简介:吴健军,男,1978年出生。2003年进入华东师范大学微电子电路与系统研究所攻读研究生学位。主要研究方向:超大规模集成电路设计
导师简介:赖宗声,男。华东师范大学电子科学技术系教授(博士生导师),研究方向为超大规模集成电路设计
联系方式:上海华东师范大学信息学院03电子系研究生信箱 华东师大理科大楼A329   邮编 200062
email: ys03242022@student.ecnu.edu.cn

 

  • 上一篇文章:采用CPLD技术的CCD相机图像信号模拟器设计
  • 下一篇文章:基于FPGA的、通用可配置的通信开发与测试平台设计
  • Google
     
    Web www.cediy.com
    发表评论 □告诉好友 □打印此文 □关闭窗口
     最新热点文章
     一种低纹波高精度数字电流源的设计...
     基于数字PWM信号的超声波功率电源的...
     一种高精度数控直流电流源的设计与...
     基于EZ-USB FX2LP的USB2.0高速数据...
     基于AT89S51的直流数控可调稳压电源...
     基于AT89S52的简易单片机实验开发器...
     
     最新推荐文章
     基于TMS320C6713与PC机的PCI总线高...
     基于TMS320VC5409和Cygnal单片机构...
     基于ARM控制器S3C44B0x的给煤机控制...
     基于USB 2.0的高速数据采集卡在虚拟...
     大功率谐振过渡软开关技术变频器研...
     大功率谐振过渡软开关技术变频器研...
     
     相 关 文 章
      ◇  网友评论:(只显示最新5条。评论内容只代表网友观点,与本站立场无关!)
     设为首页  加入收藏  关于本站  版权申明   联系站长   宣传赚点   友情链接
    如果我在线,不用加为好友,立刻与我交谈。 业务咨询QQ:342488946
    Copyright© 2004-2010 CEDIY.COM .All Rights Reserved
    粤ICP备05119258号