1、DDR简介
The DDR and DDR2 SDRAM High-Performance Controller MegaCore functions and ALTMEMPHY megafunction offer full-rate or half-rate DDR and DDR2 SDRAM interfaces. The DDR and DDR2 SDRAM High-Performance Controller MegaCore functions offer two controller architectures: high-performance controller (HPC) and high-performance controller II (HPC II). HPC II provides higher efficiency and more advanced features.
 
HPC和HPC II(DDR and DDR2 high-perfomance controllers)
-6等级,top,bottom bank可以到200Mhz, left, right bank 到167Mhz.
 
内存的性能取决于位宽和频率,即带宽=位宽*频率。带宽(MB/s)用来表示内存的性能,位宽指的是内存总线位数,频率就是指数据传输的速率。
由此可见,通常提高内存性能的方法是提高频率和位宽.
 
DDR2,是第2 代DDR 内存,有着和DDR SDRAM 基本类似的机构。DDR2 内存的工作电压为1.8V,使得它的功耗仅为DDR 内存(2.5V)的50%左右。数据通道则采用双边的同步电路设计,一次同时处理4 组数据,即4 比特预读取,但核心工作频率是DDR 内存的两倍,从而在不改变原有RAM 核心的情况下频率加倍。与DDR内存相比,DDR2 采用了3 项新技术,即:片外驱动调教(OCD,Off-Chip Drive),提高数据采样信号DQS 与数据DQ 同步精读的设计;片内终结电阻(ODT,On-DieTermination),通过调整负载调整了信号完成性,同时降低了外围电路成本;前置读写命令信号(CAS)和引入附加延迟,减少命令的冲突——总线“冒泡”现象,提高了总线的利用率。因此,DDR2 SDRAM 具有更高的速度及带宽,同时功耗更低,散热更好。
DDR3 SDRAM 是最新一代的SDRAM,工作电压由1.8V 降低至1.5V,并增加了异步复位功能。DDR3 在DDR2 的基础上,采用了如下的新型设计:采用8 比特的预读取设计,即DRAM 的内核频率为外部数据频率的1/8;采用100nm 以下工艺,目前最新工艺为Epida 公司发布的50nm 工艺技术;采用点对点的拓扑结构,减轻了地址总线与命令总线的负担。面向64 位等高位宽总线系统应用时,DDR3 显然在性能上更胜一筹。此外DDR3 SDRAM 采用了根据温度自动刷新、局部自刷新等一些新技术,由于工艺上的优势,在功耗方面显然更为出色。
 
DDR2 存储芯片的容量大多数都以M*W的方式来表示。其中,M是该芯片中存储单元的总数,单位是兆(M),W是每个存储单元的容量,即芯片的位宽(Width),单位是bit。例如8M*8就是一个8bit,有8M个存储单元的芯片,总容量是64Mbits(8MB)。
 

 

控制器与DDR2存储芯片之间需要PHY电路作为接口设备
 
 
2、DDR2容量
 

 

 

3、full-rate和half-rate
在Avalon-MM接口上数据总线的位宽,full产生一个2X存储器数据位宽。half产生一个4X存储器数据位宽。
The full-rate state machine supports 1T address and command, and always issues memory burst length of 4. 
The half-rate state machine supports 2T address and command, and always issues memory burst length of 8.
 
这里的 half rate/full rate 指是 DDR IP 的  数据控制  和 device 器件接口间的时钟速率关系.    
数据控制:  指 DDR 数据传输控制部分。
device 接口: 指的是 DDR IP和 ddr device 的连接.
full rate时:    上述两者 clock 频率相同,  数据宽度  前者 = 后者 x2    如果device接口是16位,则数据接口是32位
half rate时:  上述两者 clock: 前者 = 后者 /2,  数据宽度: 前者 = 后者 x4    如果device接口是16位,则数据接口是64位
这一参数选项存在原因是为了, 降低时钟频率
 
同时为什么会出现full或half模式下,频率相同,但数据宽度不一样
因为DDR2内部是双边沿,但是控制是单边沿。
 
4、memory burst length和burst_size的关系
Memory burst length(存储器突发长度):设置每个传输读取或写入字的数量。                                            单位:beats   范围:4 or 8
                                                                  存储器突发长度为4 等同于半速率设计中本地突发长度为1(四分之一),也等同于全速率设计中本地突发长度为2(二分之一)。
在HPC II中:
            half-rate模式下,memory burst length只能是8
            full-rate 模式下,memory burst length只能是4
local_size(本地突发长度):连续读或写到memory字的个数。
                                           如果选择memory burst length=4,half rate,则local burst size是1,所以local_zise总是1
                                           如果选择memory burst length=4,full rate,则local burst size是2,所以local_size应该设置为1或2对应每次的写读请求
如果是local_size=2的时候,则一次写入2个local_wdata,两个64位
 
 
5、4bit预读
内存基本工作步骤分为: 从系统预读数据 → 保存在内存单元队列 → 传输到内存I/O缓存 → 传输到CPU系统处理。‘
DDR内存采用200MHZ的核心频率,通过两条路线同步传输到I/O缓存,实现400MHZ的是实际频率。
DDR2采用100MHZ的核心频率,通过四条传输路线同步传输至I/O缓存,同样实现400MHZ的实际频率。
正是因为DDR2可以预读4BIT数据,所以,可以采用四路传输,而由于DDR只能预读2BIT数据,则只能采用200MHZ的两条传输线路实现400MHZ。这样,DDR2就完全实现了在不降低总频率的情况下,将核心频率降低到100MHZ,从而很轻松能够实现更小散热量,更低电压要求。
而预读取则是指对于即将执行的数据,采用预先读取待用的技术,在需要时既可快速进入处理环节,这样减少了数据查找、等待、排队的时间。
 
6、为什么DDR2的突发长度是4和8
因为他是预读4bit结构,所以64位,传到16位,至少需要传输4次
posted on 2017-10-12 10:21  firetribe  阅读(2143)  评论(0编辑  收藏  举报