精华内容
下载资源
问答
  • Xilinx DDR2存储器接口调试verilog代码
  • Xilinx DDR2存储器接口调试代码.7z
  • DDR存储器电接口检验》应用指南
  • FPGA外挂DDR存储器简介

    2020-12-21 00:02:39
    1.1 FPGA外挂DDR存储器简介 1.1.1 本节目录 1)本节目录; 2)本节引言; 3)FPGA简介; 4)FPGA外挂DDR存储器简介; 5)结束语。 1.1.2 本节引言 “不积跬步,无以至千里;不积小流,无以成江海。就是说:...

    1.1 FPGA外挂DDR存储器简介

    1.1.1 本节目录

    1)本节目录;

    2)本节引言;

    3)FPGA简介;

    4)FPGA外挂DDR存储器简介;

    5)结束语。

    1.1.2 本节引言

    “不积跬步,无以至千里;不积小流,无以成江海。就是说:不积累一步半步的行程,就没有办法达到千里之远;不积累细小的流水,就没有办法汇成江河大海。

    1.1.3 FPGA简介

    FPGA(Field Programmable Gate Array)是在PAL、GAL等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。

    FPGA设计不是简单的芯片研究,主要是利用 FPGA 的模式进行其他行业产品的设计。 与 ASIC 不同,FPGA在通信行业的应用比较广泛。通过对全球FPGA产品市场以及相关供应商的分析,结合当前我国的实际情况以及国内领先的FPGA产品可以发现相关技术在未来的发展方向,对我国科技水平的全面提高具有非常重要的推动作用。

    与传统模式的芯片设计进行对比,FPGA 芯片并非单纯局限于研究以及设计芯片,而是针对较多领域产品都能借助特定芯片模型予以优化设计。从芯片器件的角度讲,FPGA 本身构成 了半定制电路中的典型集成电路,其中含有数字管理模块、内嵌式单元、输出单元以及输入单元等。在此基础上,关于FPGA芯片有必要全面着眼于综合性的芯片优化设计,通过改进当前的芯片设计来增设全新的芯片功能,据此实现了芯片整体构造的简化与性能提升。

    以硬件描述语言(Verilog或VHDL)所完成的电路设计,可以经过简单的综合与布局,快速的烧录至 FPGA 上进行测试,是现代 IC设计验证的技术主流。这些可编辑元件可以被用来实现一些基本的逻辑门电路(比如AND、OR、XOR、NOT)或者更复杂一些的组合功能比如解码器或数学方程式。在大多数的FPGA里面,这些可编辑的元件里也包含记忆元件例如触发器(Flip-flop)或者其他更加完整的记忆块。系统设计师可以根据需要通过可编辑的连接把FPGA内部的逻辑块连接起来,就好像一个电路试验板被放在了一个芯片里。一个出厂后的成品FPGA的逻辑块和连接可以按照设计者而改变,所以FPGA可以完成所需要的逻辑功能。

    FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个新概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。可以支持一片PROM编程多片FPGA;串行模式可以采用串行PROM编程FPGA;外设模式可以将FPGA作为微处理器的外设,由微处理器对其编程。

    1.1.4 FPGA外挂DDR存储器简介

    1)SRAM简介

    SRAM是英文Static RAM的缩写,它是一种具有静止存取功能的内存,不需要刷新电路即能保存它内部存储的数据。不像DRAM内存那样需要刷新电路,每隔一段时间,固定要对DRAM刷新充电一次,否则内部的数据即会消失,因此SRAM具有较高的性能,但是SRAM也有它的缺点,即它的集成度较低,相同容量的DRAM内存可以设计为较小的体积,但是SRAM却需要很大的体积,所以在主板上SRAM存储器要占用一部分面积,在主板上哪些是SRAM呢?

    一种是置于CPU与主存间的高速缓存,它有两种规格:一是固定在主板上的高速缓存(Cache  Memory );二是插在卡槽上的COAST(Cache On A Stick)扩充用的高速缓存,另外在CMOS芯片1468l8的电路里,它的内部也有较小容量的128字节SRAM,存储我们所设置的配置数据。

    2)SDRAM

    SDRAM(Synchronous Dynamic Random Access Memory)同步动态随机存取存储器,同步是指Memory工作需要步时钟,内部的命令的发送与数据的传输都以它为基准;动态是指存储阵列需要不断的刷新来保证数据不丢失;随机是指数据不是线性依次存储,而是由指定地址进行数据读写。目前的168线64bit带宽内存基本上都采用SDRAM芯片,工作电压3.3V电压,存取速度高达7.5ns,而EDO内存最快为15ns。并将RAM与CPU以相同时钟频率控制,使RAM与CPU外频同步,取消等待时间,所以其传输速率比EDO DRAM更快。

    3)SRAM与SDRAM的比较

    SRAM是靠双稳态触发器来记忆信息的;SDRAM是靠MOS电路中的栅极电容来记忆信息的。由于电容上的电荷会泄漏,需要定时给与补充,所以动态RAM需要设置刷新电路。但动态RAM比静态RAM集成度高、功耗低,从而成本也低,适于作大容量存储器。所以主内存通常采用SDRAM,而高速缓冲存储器(Cache)则使用SRAM,在存取速度上,SRAM>SDRAM。另外,内存还应用于显卡、声卡及CMOS等设备中,用于充当设备缓存或保存固定的程序及数据。

    5)DDR简介

    DDR内存全称是DDR SDRAM(Double Data Rate SDRAM,双倍速率SDRAM)。DDR SDRAM最早是由三星公司于1996年提出,由日本电气、三菱、富士通、东芝、日立、德州仪器、三星及现代等八家公司协议订立的内存规格,并得到了AMD、VIA与SiS等主要芯片组厂商的支持。

    6)DDR2简介

    DDR2/DDR II(Double Data Rate 2)SDRAM是由JEDEC(电子设备工程联合委员会)进行开发的新生代内存技术标准,它与上一代DDR内存技术标准最大的不同就是,虽然同是采用了在时钟的上升/下降沿同时进行数据传输的基本方式,但DDR2内存却拥有两倍以上一代DDR内存预读取能力(即:4bit数据读预取)。换句话说,DDR2内存每个时钟能够以4倍外部总线的速度读/写数据,并且能够以内部控制总线4倍的速度运行。

    7)DDR3简介

    DDR3是一种计算机存规格。它属于SDRAM家族的内存产品,提供了相较于DDR2 SDRAM更高的运行效能与更低的电压,是DDR2 SDRAM(同步动态动态随机存取内存)的后继者(增加至八倍),也是现时流行的内存产品规格。

    8)DDR4简介

    DDR4内存是新一代的内存规格。2011年1月4日,三星电子完成史上第一条DDR4内存。

    DDR4相比DDR3最大的区别有三点:16bit预取机制(DDR3为8bit),同样内核频率下理论速度是DDR3的两倍;更可靠的传输规范,数据可靠性进一步提升;工作电压降为1.2V,更节能。

    9)DDR5简介

    DDR5是一种计算机内存规格。

    2020年7月,JEDEC协会正式公布了DDR5标准,起步4800MHz,未来可以达到6400MHz。

    10)经验总结

    1、FPGA外挂DDR存储芯片为了缓存大数据;

    2、合理的规划DDR设计,包括逻辑设计和硬件设计以及DDR选型。

    3、FPGA控制DDR4是目前的缓存趋势,因为大数据必须要使用大容量DDR和快速读写DDR。

    1.1.5 结束语

    第一,希望阅读笔者的博客可以对您有所帮助。

    第二,希望读者可以快速学习FPGA这门技术。

    第三,如果需要技术沟通,可以联系笔者。希望对你有帮助,如果遇到问题,可以一起沟通讨论,邮箱:jhqwy888@163.com

    展开全文
  • 英飞凌科技(Infineon Technologies)日前宣布推出2GB DDR2平面寄存器式(Planar Registered)双列直插式存储器模块(DIMM)的第一批样品。 这些模块使用的是采用非常紧凑的密间距球栅阵列(FBGA)封装的单裸片512Mb ...
  • DDR是双数据速率的SDRAM内存,已经成为今天存储器技术的选择。DDR技术不断发展,不断提高速度和容量,同时降低成本,减小功率和存储设备的物理尺寸。  随着时钟速率和数据传输速率不断增加和性能的提高,设计...
  • 高精度温度监视器MAX6604设计为监视DDR存储器模块的温度。该器件通过2线SMBus:trade_mark:/I²C兼容接口读取和编程。三个地址输入可设置温度传感器的总线地址,从而可在一条总线挂接多达8个器件。  内部温度传感器...
  • ISL88550A具有的综合特性为DDR和DDR2存储器电源提供解决方案;也可用于所需电压低至0.7V的其他应用。  ISL88550A集成了一个同步降压PWM(脉宽调制)控制器、一个吸收或提供电流的LDO(低压差)稳压器以及一个10mA基准...
  • Flash存储器又称为闪存,是一种非易失性的ROM存储器,在EEPROM的基础上发展而来,但不同于EEPROM只能全盘擦写,闪存可以对某个特定的区块进行擦写,...DDR是一种技术,中文为双倍速率,并不属于一种存储器DDR通常指DD

    Flash存储器又称为闪存,是一种非易失性的ROM存储器,在EEPROM的基础上发展而来,但不同于EEPROM只能全盘擦写,闪存可以对某个特定的区块进行擦写,这源于它和内存一样拥有独立地址线。闪存的读写速度快,但远不及RAM存储器;但它断电后不会像内存一样丢失数据,因此适合做外存储设备。用途:U盘、固态硬盘BIOS芯片等。

    DDR是一种技术,中文为双倍速率,并不属于一种存储器。DDR通常指DDR SDRAM存储器,全称为Double Date Rate Synchronous Dynamic Random Access Memory,双倍速率同步动态随机存储器。顾名思义,它有三个重要特性:Double Date Rate、Synchronous和Dynamic。首先是Dynamic(动态),表明存储元为电容,通过电容的电荷性判断数据0和1。而由于电容有漏电流,必须随时对电容进行充电,以防数据丢失,这个过程就叫动态刷新;其次是Synchronous(同步),表明读写过程由时钟信号控制,只能发生在时钟信号的上沿或下沿,是同步进行的,而不可以在随意时刻进行;最后是Double Date Rate(DDR),这是DDR内存最重要的特性,即相比SDRAM内存,DDR内存在时钟的上沿和下沿均可以完成一次数据发射,因此一个周期内可以传输两次数据,所以称为双倍速率。因此等效频率是SDRAM的两倍。用途:内存条和显存颗粒,如DDR、DDR2、DDR3、GDDR5

    RAM是Random Access Memory的缩写,中文为随机存储器。这个定义非常广,凡是可以进行随机读写的存储器,都可以称为RAM,和ROM(只读存储器)相对。用途:内存、显存、单片机、高速缓存等等

    SRAM是Static Random Access Memory的缩写,静态存储器,和动态存储器DRAM相对。由于SRAM工作原理是依靠晶体管组合来锁住电平,并不需要进行刷新,只要不断电,数据就不会丢失,因此称为静态RAM。相比动态RAM,优点:1.不需要刷新操作,省去刷新电路,布线简单;2.速度远高于DRAM。缺点:1.容量远小于DRAM;2.由于晶体管规模远大于DRAM,成本远高于DRAM。用途:寄存器、高速缓存、早期内存

    DRAM是Dynamic Random Access Memory的缩写,动态存储器。和上面的定义一样,由电容存储数据,需要实时刷新,因此叫动态RAM。和SDRAM的区别在于DRAM可以不需要时钟信号控制发射,但通常我们不严格区分它们,把SDRAM和DRAM都叫做DRAM。DDR SDRAM也属于一种DRAM。用途:内存、显存

    展开全文
  • DDR存储器接口

    千次阅读 2020-04-19 23:22:18
    DDR SDRAM是一种高速CMOS双倍数据率的同步动态随机存储器,其特点是集成度高、密度大、接口带宽高,价格便宜。 与传统的SDR SDRAM不同的是,DDR SDRAM采用双数据速率端口,在时钟的正沿和负沿都需要对数据进行采样,...

    1、DDR SDRAM 芯片的工作原理

    DDR SDRAM是一种高速CMOS双倍数据率的同步动态随机存储器,其特点是集成度高、密度大、接口带宽高,价格便宜。

    与传统的SDR SDRAM不同的是,DDR SDRAM采用双数据速率端口,在时钟的正沿和负沿都需要对数据进行采样,是一种2-n预取(2-n Prefetch)结构,即每个时钟周期数据传输率为2nbit。

    由于DDR SDRAM的频率很高,如果采用传统的系统同步的方式会导致时序的紧张。因此DDR SDRAM采用源同步的传输方式,读写数据的采样均由随路传送的时钟(DQS)来进行。在读数据的时候,由存储器在送出有效数据DQ的同时将有效的DQS采样信号送出;在写数据的时候,由FPGA送出相应的数据DQ和DQS。源同步的方法使得采样时钟和数据之间有确定的相位关系,从而使得采样的时序余量最大化

    DDR SDRAM中的读和写访问是突发模式,读写访问从一个选定的地址开始,并以编程好的顺序连续存取,存取的长度是DDR SDRAM中设定的突发长度。在读的时候数据采样信号(DQS)和数据总线(DQ)在命令有效的CK/CK#正沿后一个CAS延迟(CAS Latency,CL)之后有效,如下图所示 表示当CL=2时,DDR SDRAM的读写时序关系,突发长度(Burst Length,BL)为4。系统时钟的上升沿T1给DDR SDRAM输入READ命令和相应的BANK和地址,DDR存储器在系统时钟上升沿T3输出DQS和DQ信号。从READ命令发出到有效数据出现在总线上的这段时间叫做CAS延迟。发出命令后总线上送出4个数据,是由数据突发长度BL决定的,因为途中BL=4,所以在一个READ命令后总线上会送出4个数据。BL和CL通过配置DDR存储器中模式寄存器来改变。伴随DQS信号和DQ同步送出,因为DQ和DQS是边沿对齐,无法用DQS信号直接去采样DQ,所以在控制器设计中必须用延时90°相位后的DQS信号来锁存DQ信号。在这里插入图片描述

    下图是CL=2、BL=4时的DDR SDRAM的写操作时序关系图,控制器在系统时钟的上升沿T1给DDR SDRAM输入WRITE命令和相应的BANK和地址,DQS的第一个上升沿出现在WRITE命令的下一个系统时钟正沿处,这一段时间定义为tDQSS,它的有效范围是一个时钟周期的75%~125%。写操作时的DQS和DQ数据是中间对齐的,这样送给DDR SDRAM芯片后,DQS能够直接采样DQ信号。
    在这里插入图片描述

    2.FPGA芯片中DDR存储器接口系统设计

    FPGA通常内嵌有存储器块,但一般其存储容量不大。当FPGA用户设计的系统需要有大量的数据存储和读写时,需要用到片外DDR存储器,这时FPGA芯片需要有与外部存储器的高速接口。
    FPGA芯片中的DDR存储器接口是为FPGA用户电路提供对片外的DDR SDRAM的访问控制。这一节介绍DDR SDRAM芯片的工作原理,并根据DDR SDRAM的工作原理设计适用于FPGA芯片的DDR接口数据通路。

    FPGA中DDR存储器接口系统如下图:它包括用户电路、支持SSTL–2/3的输入/输出缓冲器、DDR读写数据通路以及刷新控制和命令产生模块。

    在这里插入图片描述
    其中刷新控制模块定时为DDR SDRAM发送刷新操作,命令产生模块接收从用户电路来的命令和存储器地址,对命令进行译码并将请求发送给DDR SDRAM,这两个模块由于FPGA中国的芯核可编程资源实现;延时锁定环DDL实现对DQS输入信号的相移。为了满足DDR 存储器即可的电器特性,FPGA芯片中与DDR读写数据通路相对应I/O缓冲器采用兼容SSTL_2标准和SSTL_3标准的输入/输出缓冲器,而地址和命令接口对应的I/O缓冲器采用LVTTL标准。

    2.1DDR接口的数据通路
    由于DDR接口的工作频率较高,若采用传统的系统同步,会导致时序紧张,因此DDR接口采用源同步的方式,即数据信号和采样信号伴随传输,保持一定的相位关系。

    在FPGA芯片中,对读写数据的采样是由数据通路通过操控外部DDR存储器接口来完成的,下图是FPGA中的读写数据通路电路,由读写两部分的寄存器组成,主要实现数据读入和写出的时序逻辑功能。其中CLK1为系统时钟,CLK2为-90°的时钟,他们均来源于FPGA内部的PLL。
    在这里插入图片描述
    当FPGA从外部DDR存储器读数据时,由于从存储器来的数据信号DQ和数据选通信号DQS的边沿是对齐的,为了在DQS的上升沿和下降沿,为了在DQS的上升沿和下降沿均采样数据,需要对信号DQ或DQS移相,而每个DQS信号采样8个DQ,如果对DQ信号进行相移的话,需要8个相移补偿单元,这样开销相对较大,因此选择对DQS进行相移 ,如上图所示,这里设计的数据通路采用一个DLL控制延时链,使DDR SDRAM来的数据选通信号DQS相移90°,再进入DQS局部总线。这样同时达到了节省开销的目的。

    下图为DDR接口读数据通路时序。DQS总线信号在进入DDR输入寄存器之前需要经过反相器反相以确保采样数据的正确性。DDR输入寄存器由下图中的寄存器R1~R3实现。它们的时钟端由相移后的DQS总线控制。DDR输入寄存器的数据端为9位的DQ信号,在DQS时钟的下降沿通过寄存器R2采入DQ的第一个数据D0,在DQS时钟的上升寄存器R3采入第二个数据D1,同时寄存器R1将数据D0同步。数据D0和D1被输出到FPGA内部进行时钟域重同步。在这里插入图片描述

    DDR输出寄存器由寄存器R4~R13实现,其中R6和R7为DQ信号输出寄存器,它们的时钟端采用-90°时钟CLK2,;
    R10和R11为DQS信号输出寄存器,时钟端采用系统时钟CLK1.这样对外部DDR写数据的时候,输出的DQS信号的边沿对齐到数据DQ的中央。
    FPGA往片外存储器写数据时,数据由输出缓冲器输出。输出缓冲器需要有输出使能的控制信号,由寄存器R4、R10、R11和或门O2产生。R4和R10为输出使能信号提供寄存器输出,而R11和或门O2则是为了避免误触发添加的逻辑电路。

    由于DQS信号线采用的SSTL_2的电平标准,当DDR SDRAM和FPGA芯片都不驱动SSTL_2总线时,该总线呈三态。三态时DQS信号的传输线被拉到端接电压Vtt(1.25V),DQS管脚输入为1.25V,是地到电源电压2.5V的中间值。如果此时有轻微的噪声引入到三态的总线上,则信号传到FPGA内部有可能产生不期望的触发沿,导致信号误触发。在这里插入图片描述
    这里设计的DDR接口电路在DQS管脚附近增加了一个逻辑电路,用以消除这种误触发情况。该控制电路由寄存器R16和与门A1组成。R15是一个复位置位寄存器,当DQ_EN信号有效时,寄存器置位,当DQ_EN信号失效且时钟上升沿时,寄存器被复位。
    如下图所示,控制吸纳后DQ_EN在DQS出现前导码时有效,R16被置位,此时与门A1导通,DQS信号能传输到输入寄存器的时钟端;DQ_EN在最后一个有效DQS下降沿出现之前失效。这样经过最后一个DQS的下降沿后,R16被复位为低电平,与门A1屏蔽从DQS传来的由于噪声造成的跳变沿。从而杜绝噪声被引入到FPGA内部,消除信号的误触发。
    在这里插入图片描述
    控制器的数据通路主要传送采样信号DQS、数据信号DQ、和数据屏蔽信号DM三类信号。由于DDR SDRAM有X4、X8、X16几种位宽模式,因此数据通路用DQS组来进行管理,把8位的DQ信号、1位的DQS和DM信号作为一个DQS组。根据设计的FPGA资源情况,一共设计了8个X8模式的DQS组分别置于芯片的顶部和底部,分布在FPGA芯片中的IO模块中,其每个BANK含有两个DQS组,能提供16位的数据DQ信号,同时含有一个DLL,用于为DQS提供相移,每个DLL控制两个DQS组。在这里插入图片描述

    2.2DDR接口的时钟重同步
    输入寄存器的读数据采用DQS作为采样时钟,因此数据需要从DQS时钟域转换到FPGA系统时钟域,这个过程为FPGA中DDR接口的时钟重同步。

    DQS时钟域和FPGA系统时钟域的相位关系依赖于回程延时。回程延时是从FPGA中的系统时钟送出到数据到达FPGA的时间。它与RAM的输入时钟相位、DQS/DQ之间的相位关系。PCB走线延时以及DQS从管脚到寄存器端的延时等因素有关。

    考虑到最大和最小回程延时的重叠区域,再减去LE触发器的建立保持时间,能得到一个重同步窗口,重同步的时钟需要选择在这个窗口中。

    回程延时如下图所示,包括系统时钟到FPGA管脚的延时tck_pin、时钟的板级传输延时tck_trace、DQS的相位偏移tshift和DDR输入寄存器的采样时间tcapture。
    总的回程延时tRTD为:

    tRTD = tck_pin + tck_trace + TDQS_trace + tDQSCK + tshift + tcapture在这里插入图片描述
    考虑到差分时钟PCB走线延时、DQS信号PCB走线延时和其从管脚到第一次采样D触发器的延时等因素,回程延时有一定的变化范围。若回程延时的最大值为tRTDmax,最小值为tRTDmin,那么时钟重同步的有效接口为:

    tRTDmax + tsu < tsync_valid < tRTDmin + Tclk - thd

    所选择的重同步时钟的时钟上升沿必须在有效窗口内才能正确地使数据同步到系统时钟域中。

    重同步时钟利用FPGA中的锁相环产生,在所设计的FPGA锁相环中,使能产生两路相位差为90°的时钟网络传输到重同步寄存器,而每个时钟在进入寄存器前可以编程为反相输入,因此有4路不同相位的时钟可以作为重同步时钟,分别为相对于系统时钟偏移0°、90°、180°、和270°的时钟。当列地址选通潜伏期(CAS Latency,CL)为2或3时,考虑到实际回程时间小于1个时钟周期,重同步最好选择270°相位的时钟,若列地址选通潜伏期为2.5个时钟周期时,则重同步时钟最好选择90°相位的时钟。

    2.3DDR接口中的DQS相移电路
    FPGA对外部DDR存储器读操作时,为了在源同步时钟的上升和下降沿均能采样数据,输入的DQS信号需要被相移。这就需要通过延迟锁定环锁定固定延时,实现相移。

    由于在FPGA芯片中主要的逻辑资源是数字电路,其电源噪声和衬底噪声会对模拟电路产生较大的干扰。这对模拟DLL和数模混合DLL的性能造成影响,因此在FPGA芯片中选择抗干扰较好的数字DLL的结构。

    2.4DDR接口中的SSTL_2/3标准的I/O缓冲器
    在DDR接口中需要在时钟的上升沿和下降沿均可以采数据。这就要求支持SSTL_2的标准的I/O缓冲器,高速工作的同时输出占空比50%左右的偏差范围内。I/O缓冲器时芯片中与外部电路接口的电路模块。对于不同的接口,需要支持相应标准的I/O缓冲器。
    与SDR和 DDR存储器接口的芯片的I/O缓冲器需要分别满足SSTL_3和SSTL_2标准的输入逻辑电平和输出驱动电流等。其中,对于SSTL_2或SSTL_3标准,驱动电流的两种不同规范相应于Class I和Class II的输出缓冲器。
    下图是带摆率控制和驱动电流控制的支持SSTL_2/3标准ClassI和Class II的输出缓冲器。电平转换器实现信号高电平由芯核电源电压变为I/O电源电压。
    在这里插入图片描述

    3、DDR存储器接口控制器的设计和验证

    DDR存储器控制器的作用是为FPGA用户电路提供对DDR SDRAM的访问控制,包括对读写请求、地址信号、数据信号和命令信号的控制。存储器控制器的总体结构如下图所示,包括刷新控制器、控制接口模块、命令模块和数据通路模块。其中数据通路模块采样上一节所说的读写数据通路,其他模块使用FPGA内核资源实现。

    在这里插入图片描述
    3.1控制器的刷新模块
    **刷新请求命令有限与控制接口来的命令。**如果控制接口的命令和刷新请求命令同时到达,则控制仲裁器会延后送出控制接口的命令。DDR SDRAM存储体中的每一行在间隔64ms内必须对其进行刷新,刷新命令对一行刷新,因此发送间隔由SDRAM的总行数决定。在刷新控制模块中设计了一个刷新计数器,每当刷新控制器计数满时发送一个刷新命令。

    3.2控制器的命令和状态转换
    SDRAM支持的命令包括:空操作(NOP)、激活操作(Active)、突发读(Burst Read)、突发写(Burst Write)、自动刷新(Auto Refresh)、预充电(Precharge)和模式寄存器配置(Mode Register Set)。这些命令由命令接口CAS_N、RAS_N和WE_N送到DDR SDRAM中,其基本操作命令如下表:
    在这里插入图片描述
    实现DDR SDRAM的状态转换的状态机如下图所示。控制器在上电复位之后,对存储器进行预充电操作。控制器开始设置在空闲(IDLE)状态,接下来的状态根据控制命令的不同可以是预充电(Precharge),导入模式寄存器(LoadModeRegister)、刷新(Prefresh)、行有效(Active)等状态。要进入读写数据状态,必须先经过行有效状态。读数据时,状态机由行有效装换我读准备状态,然后根据指令进入读状态,并保持该状态直到脉冲终止命令触发或数据读完。
    在这里插入图片描述

    3.3验证结果与分析
    对DDR存储器控制器进行仿真验证,仿真环境如下图所示。其中DDR存储器控制器的设计通过FPGA芯片和配套的软件综合成网表文件,DDR SDRAM选用64MB的MT46V16M8的verilog模型。
    在这里插入图片描述
    图中Clk为系统时钟信号,CAS_N,RAS_N和WE_N是命令接口信号,SA为地址信号,BA为SDRAM的bank地址,CS_N为片选信号,padio为8位的DQ信号,dqs_padio为DQS信号。控制器在CKE上升之后开始工作,在CKE上升后的第一个命令是预充电;预充电完成后的命令是寄存器配置,突发长度设置为4,CAS延迟设置为2.5个时钟周期;控制器对SDRAM的初始化完成,进入空闲状态。
    在这里插入图片描述
    接着控制进入写数据状态,在发送WRITE命令之前先激活相应的行地址。在发送WRITE命令的2个时钟周期后,控制器往dqs_padio和padio输出采样信号和数据信号。

    控制器在读命令READ之前需要发送一个激活操作Active命令;在READ结束后2.5个时钟周期胡读数据出现在DQS和DQ总线上。

    展开全文
  • ISL88550A具有的综合特性为DDR和DDR2存储器电源提供解决方案;也可用于所需电压低至0.7V的其他应用。 ISL88550A集成了一个同步降压PWM(脉宽调制)控制器、一个吸收或提供电流的LDO(低压差)稳压器以及一个10mA基准...
  • ISL88550A具有的综合特性为DDR和DDR2存储器电源提供解决方案;也可用于所需电压低至0.7V的其他应用。 ISL88550A集成了一个同步降压PWM(脉宽调制)控制器、一个吸收或提供电流的LDO(低压差)稳压器以及一个10mA基准...
  • C&D Technologies公司发布新款非隔离负载点(POL)转换器——VCN75-018V,它是为计算机DDR2存储器的供电应用而设计的,可以提供高达75A电流输出。该模块也适合用于其他许多固定大电流输出需求的设备。 VCN75-018V输入...
  • DDR2存储器介绍

    千次阅读 2017-03-31 18:32:29
    收藏,学习!! 原文地址:... 一.... DDR2由JEDEC(电子设备工程联合委员会)开发的新生代内存技术标准。该标准定义了DDR2封装、寻址及操作、电气等所有特性。...DDR相关技术对比 ...DDR ...DDR

    收藏,学习!!

    原文地址:http://www.cnblogs.com/embedded-linux/p/4993069.html

    一. DDR2介绍

    DDR2JEDEC(电子设备工程联合委员会)开发的新生代内存技术标准。该标准定义了DDR2封装、寻址及操作、电气等所有特性。

    DDR相关技术对比

     

    DDR

    DDR2

    DDR3

    电压,VDD

    2,5V

    1,8V

    1,5V

    I/O接口

    SSTL_25

    SSTL_18

    SSTL_15

    数据传输率

    200~400

    400~800

    800~2000

    容量标准

    64M~1G

    256M~4G

    512M~8G

    CL

    1,5/2/2,5/3

    3/4/5/6

    5/6/7/8

    预读取(Bit

    2

    4

    8

    Bank数量

    2/4

    4/8

    8/16

    突发长度

    2/4/8

    4/8

    8

    封装形式

    TSOP

    FBGA

    FBGA

    针脚数(Pin

    184

    240

    240

     

    二. DDR2信号

    时钟信号CKCK#CKE

    片选芯片CS#

    片内终结信号ODT

    命令输入信号RAS#CAS#WE#

    数据掩码DM

    地址信号BA0-BA2A0-A15

    数据信号DQ

    数据索引信号DQSDQS#

    电源信号等

     

    注:DDRSDRAM多一个CLK#时钟信号,该信号与标准时钟信号CLK相位相差180。,从而形成差分时钟。与SDRAM只能在时钟的上升沿进行数据传输不同,DDRCLK的上升沿和下降沿都可以传输数据,这样,在相同的系统时钟下,DDR的数据传输速率就是SDRAM的两倍。

    需要注意的是,CLK#并不作为第二个触发时钟,而是用于校准触发时钟。这是因为DDRCLK的双沿触发数据传输,使得传输周期缩短一半,因此必须保证传输周期的稳定以确保数据的正确传输。基于这一要求,必须对CLK的上下沿间距进行精确的控制。但由于温度波动、电阻性能改变等原因,CLK上下沿间距可能会发生变化,此时CLK#可以起到校准的作用。

     

     

    三. DDR2采用的新技术

    OCDoff-chip driver):离线驱动调整,DDR II通过OCD可以提高信号的完整性。DDRII通过调整上拉/下拉的电阻值使两者电压相等。使用OCD通过减少DQ-DQS的倾斜来提高信号的完整性;通过控制电压来提高信号品质。

    ODTon-die terminal):内建核心的终结电阻器。DDR2根据自己的特点内建合适的终结电阻,可以保证最佳信号波形,达到最佳的信号质量。

    Post CAS:前置CAS,为提高DDR2内存的利用效率而设定。Post CAS操作中,CAS信号(读写/命令)能够被插到RAS信号后面的一个时钟周期,CAS命令可以在附加延迟(Additive Latency)后面保持有效。原来的tRCDRASCAS延迟)被ALAdditive Latency)所取代,AL可以在01234中进行设置。由于CAS信号放在了RAS信号后面一个时钟周期,因此ACT(行选择)和CAS信号永远也不会产生碰撞冲突。

    四. DDR2构造

    DDR2内部的存储单元按bank进行管理,根据容量大小一般分为48bank。每个bank中又分为行和列,bank的位宽就是整个芯片的位宽。

    五. DDR2工作方式

    DDR2工作时每个bank只允许打开1,即只允许对打开的行进行读写操作,如果要对同一bank中的其他行进行读写操作,则必须先用预充电(precharge)命令关闭已经打开的行,再用激活(active)命令打开需要进行读写操作的行。发送激活命令时要同时给出bank地址和行地址,选定需要打开的行,等待一定时间间隔后再给出列地址。DDR2的行列地址线是复用的,通过列地址选通信号CAS可以区分行地址与列地址。

    DDR2采用突发方式进行数据传输,即对同一行中相邻的存储单元连续进行数据传输,连续传输所涉及的存储单元(列)的数量就是突发长度(Burst Lengths)。工作时只要给出起始地址和突发长度,DDR2就会依次自动对后面相应数量的列进行读写操作。DDR2支持的突发长度为48

    DDR2采用电容存储数据信息,电容的漏电造成数据丢失,必须要定时刷新才不会丢失。为了保存内部数据,DDR2每隔一定的时间就要对每一行进行刷新。根据DDR2JEDEC标准,最多每隔7.8us就要刷新一次,用来保持DDR2内部数据的正确性。DDR2有两种刷新模式:自刷新(self-refresh)和自动刷新(auto-refresh)自刷新通常工作于所有bank都处于空闲的状态,功耗低,但是进入自刷新模式和退出自刷新模式都要经过复杂的时序步骤来完成,控制复杂。自动刷新模式由定时器产生刷新命令,易于控制,因此一般选择自动刷新模式。

    DDR2的工作频率很高,因此数据窗口很窄,为了能准确采集数据,DDR2使用差分信号DQSDQS_N来采集数据。写操作中,DQS信号由控制器发出,DQS信号与数据窗口中央对齐;读操作中DQS信号由DDR2存储器发出,DQS信号与数据窗口边沿对齐,控制器接收到DQS信号后,要将DQS信号与数据窗I1相位偏移90°,使DQS信号与数据窗口中央对齐。DQS信号对相位要求很严格,在实际使用中,考虑连线延迟、管脚延迟等因素,在高频率下进行数据采集变得很困难,一般由专门的PHY(Physical Layer Interface)来完成。

    上电后控制器首先执行的是初始化过程,然后才是读写操作。在读写过程中,会遇到刷新请求,刷新的优先权要高于读写操作。如果刷新操作与读写操作冲突,则控制器会先通知用户停止发送读写命令,并等待现有的读写操作完成,然后进行刷新操作。

    执行读写操作时,控制器会先根据映射的行地址来判断操作所需要的行是否已经激活,如果已经激活,则直接发送列地址;如果没激活且在不同的bank中,则先发送激活命令再发送列地址和读写命令;如果没激活且在相同的bank中,则先要发送预充电命令关闭已经打开的行,然后依次发送激活命令和读写命令。

    如果执行读操作,则在读命令发出后,要等待读数据传回,根据DQS信号来接收读数据,将双速率的64bit数据转换成单速率的128 bit数据送给用户端口(CPU)。

     

    读命令

    DDR2 SDRAMbank被打开之后,就可以对该bank进行读写访问操作。当控制器给出读命令的同时,要给出访问目标的列地址,并设定自动预充电是否有效。如果自动预充电有效,当读操作结束时自动执行预充电并关闭该bank

    DDR2 SDRAM接受读命令到给出到有效读数据之间的延时,称为读延迟(Read Latency,即RL)。读延迟被定义为ALCL的和,即RL=AL+CLALCL的值可以分别通过MREMR来设定。

    DQS/DQSn是由DDR2 SDRAM驱动的,伴随数据输出的选通脉冲信号。如下图所示,当即将输出数据时,DQS信号被设为低——DQSn信号是DQS信号的反,这就是所谓的前同步信号(preamble);当输出数据即将结束时,即一次读访问的最后一个有效数据时,DQS信号为低,这就是所谓的后同步信号(postamble)。

    写命令

    与读命令相似,写命令也只能在目标地址所在的bank被打开后才能进行;同样,在给出写命令的同时要给出地址和自动刷新命令。写命令与写数据之间的延迟称为写延迟(Write LatencyWL),定义为读延迟减去1,即WL=RL-1

    写操作也有前同步信号和后同步信号,与读操作的相比,在长度上有所不同。读操作的前同步信号是1个时钟宽度,后同步信号是0.5个时钟宽度;写操作的前后同步信号的宽度都是在0.51个时钟宽度之间。DQS和数据DQ的同步问题上,读写操作也各不相同。读操作的数据信号DQ和数据选通信号DQS是同步的;写操作的数据信号DQ和数据选通信号DQS的相位相差90度,这是为了数据在写入内存时,数据眼图中央部分的可靠信号可以被内存模块截获。

    预充电命令(Precharge

    预充电有两种发起方式,一是通过由控制器通过命令总线的预充电命令发起;二是通过与读写命令一起的自动预充电命令发起。预充电命令可以选择一个特定bank或所有bank的处于打开状态的行进行关闭,当然,由于DDR2 SDRAMbank结构的原因,每个bank最多只能有1个行处于打开状态。

    如果是由命令总线的预充电命令发起的,那么地址线上的第10位信号(A10的输入将决定是关闭全部bank的行还是单一bank的行。当A10为高时,bank地址将被忽略,所有的bank都将被关闭;当A10信号为低时,bank地址将指定被关闭的bank如果预充电命令是自动预充电的话,在读写命令发出时,A10表示是否要在完成读写操作之后进行预充电。为保证存储单元内数据的信号强度,DDR2 SDRAM要求平均间隔tREFI,最大间隔9×tREFI,进行一次刷新操作。通常,常温使用状态下tREFI 7.8us;当工作温度高于85℃时,tREFI3.9us

    空操作命令NOP

    空操作命令,顾名思义,就是没有实际的特殊功能的操作。NOPDDR2 SDRAM处于空闲或者等待的状态时,为了避免命令总线上出现不定的动作而设定的,它不会对DDR2 SDRAM当前的状态及动作产生任何影响。

     

    六. 地址映射

        用户端发送的是线性地址,而不同类型DDR2存储器所规定的行列地址及bank地址所占用的位宽不相同,因此要将输入的线性地址根据所使用的DDR2存储器进行地址映射,将最终发送给DDR2的各类地址分离出来,供状态机(DDR2)使用。

    七. timing

    CL CAS(READ) latency,列选择到数据输出的时间。

    tRASACTIVE-to-PRECHARGE command

    tRCACTIVE-to-ACTIVE command period(同bank)。

    tRRDACTIVE bank a to ACTIVE bank b command(异bank)。

    tRCDACTIVE-to-READ or WRITE delay,行选择(RAS)到列选择(CAS)延迟。

    tRPPRECHARGE command period,预充电命令的执行时间。

     

    参考:

    1. SDRAM的工作原理》,中国科学院西安光学精密机械研究。
    2. DDR2 SDRAM控制器的设计及FPGS验证》,刘冠男,欧明双,宋何娟,中国集成电路CIC
    3. 《基于FPGADDR2 SDRAM控制器的设计与实现》,张凌,北京航空航天大学专业硕士学位论文。
    展开全文
  • DDR 存储器的发展历史

    2020-12-27 00:20:49
    RAM:随机存取存储器(random access memory)又称作"随机存储器",是与CPU直接交换数据的内部存储器,也叫主存(内存)。它可以随时读写,而且速度很快,通常作为操作系统或其他正在运行中的程序的临时数据存储媒介。...
  • 当今的IC设计大幅增加了许多功能,必须运用既有的验证有效IP组件,以满足上市前置时间的要求。但是,由于功能要求与技术制程的差异,各公司必须提供的IP种类太多。创意电子的IP生态系统(IPEco-System)为整体解决方案...
  • 当今的IC设计大幅增加了许多功能,必须运用既有的验证有效IP组件,以满足上市前置时间的要求。但是,由于功能要求与技术制程的差异,各公司必须提供的IP种类太多。创意电子的IP生态系统(IP Eco-System)为整体解决...
  • 笔者刚开始学习 FPGA由于项目需要用到了一片 DDR2 芯片,不知道怎么计算大小,看了很多教程比较乱,在这里简单总结一下。 首先说明一下这里用到的 DDR2 型号为MT47H64M16。 以下是正文。 目录 ...
  • 当今的IC设计大幅增加了许多功能,必须运用既有的验证有效IP组件,以满足上市前置时间的要求。但是,由于功能要求与技术制程的差异,各公司必须提供的IP种类太多。创意电子的IP生态系统(IP Eco-System)为整体解决...
  • 渴望数据的消费产品 当今的片上系统(SoC)设计成功的最重要因素之一就是能够有效访问片外双倍数据速率(DDR)动态随机存取存储器(DRAM)存储器。在消费级SoC中尤其如此,在这些消费级SoC中,存储子系统通常是共享...
  • DDR存储器ECC机制

    2021-05-07 20:41:43
    不同的ECC方案 边带ECC 边带ECC方案通常在使用标准DDR存储器(例如DDR4和DDR5)的应用中实现。顾名思义,ECC代码作为边带数据与实际数据一起发送到内存。例如,对于64位数据宽度,将8个附加位用于ECC存储。因此,...
  • DDR3存储器系统可以大大提升各种数据处理应用的性能。然而,和过去几代(DDR和DDR2)器件相比,DDR3存储器器件有了一些新的要求。为了充分利用和发挥DDR3存储器的优点,使用一个高效且易于使用的DDR3存储器接口控制...
  • 与过去几代(DDR和DDR2)器件相比,DDR3存储器器件有了明显的进步。DDR3存储器系统可以大大提升各种数据处理应用的性能。为了充分利用和发挥DDR3存储器的优点,使用一个高效且易于使用的DDR3存储器接口控制器是非常...
  • 直到最近,只有少数高端(昂贵)的FPGA有支持与高速的DDR3存储器可靠接口的块。然而,现在新一代中档的FPGA提供这些块、高速FPGA架构、时钟管理资源和需要实现下一代DDR3控制器的I/O结构。本文探讨设计所遇到的挑战...
  • DS34S132 32端口TDM - over –Packet IC采用外部DDR同步DRAM (DDR1)存储器缓存数据。内存空间需提供足够的缓存区域,以支持256条伪线(PW)/绑定中每一伪线的256ms数据包延迟变化(PDV)。如果数据包交换网络(PSN...
  • 存储器综述 在过去的数年里,电子... DDR存储器最初是一种高性能、低成本的存储器解决方案,主要用于个人计算机和其它成本敏感的消费品市场。近来,由于施加在整个电子工业上的经济压力,非消费产品也开始采用DDR存
  • MAX17000A脉宽调制(PWM)控制器为笔记本电脑的DDR、DDR2、DDR3存储器提供完整的电源方案。该器件集成了一路降压控制器、一路可源出/吸入电流的LDO稳压器以及一路基准缓冲器,能够产生VDDQ、VTT和VTTR所需的所有电压。...
  • 利用Spartan-3 实现DDR2 SDRAM存储器接口

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,031
精华内容 412
关键字:

ddr存储器