1. DDR概述
如今,存储器件在计算机、汽车与消费电子产品上可谓无所不在。其中DDR SDRAM(双数据率同步动态随机存取存储器)是最常用的存储器设计技术之一,而随着该技术的发展,其传输速率在日益加快,功耗在日益降低。
传输速度加快使得此类存储器的验证难度呈指数上升。存储系统要准确工作,其信号完整性必须满足某种最低要求。因为信号完整性对系统互通性而言非常关键,或者说只有保持信号完整性才能保证不同厂商生产的器件在一起使用时能够很好地结合。信号完整性问题会引发包括时序冲突、协议背离、时钟抖动以及由其他总线引发的错误等其它问题。本文介绍了DDR信号的测量方法,DDR信号验证中面临的挑战,并针对其调试方法给出了相关建议。文中提到的方法适用于DDR、DDR2、 DDR3 和 SDRAM这一类全缓冲的DIMM系统调试。为简单起见,这些内存技术在下文中统称为DDR。
2.测量方法
JEDEC规范定义了DRAM的引脚或球必须满足的电气与定时方面的要求。一些较新的DDR DRAM采用了精细球栅阵列(FBGA)封装,此封装下的焊接球很难接触。因此,我们建议测量时,探头应尽可能接近DRAM的球状焊点。通常,我们可以在与焊接球相连的过孔上或与其相连的电阻靠近DRAM一侧的焊盘上测量。
目前最高级的差分有源电压探头能在探头顶端容性负载低于0.22pF的情况下达到高达13GHz的测量带宽。此类工具对DDR信号(通常为单端信号)的影响非常小,很适合DDR测量,强烈建议大家使用。由于DDR信号对噪声非常敏感,因此建议在测量此类信号时采用带宽足够大的示波器,以避免示波器的噪声影响测量。有些示波器具备带宽压缩功能,能调节至恰好适合测量的带宽,以实现最精确和可重复的测量。图1所示为13 GHz差分有源探头连接到DDR2 DIMM的过孔上的情形。
3.信号验证所面临的挑战
同一根数据总线上的DDR数据传输是双向的。这使DDR信号验证变得非常困难,因为我们首先必须分离数据总线上复杂的数据流才能对其进行信号完整性测量。而要想独立分析(由存储控制器和DDR芯片驱动的)信号完整性和定时关系,也必须分离数据流。
在探头和数据总线上存在三种状态,读操作(输出信号)、写操作(输入信号)和高阻(空闲状态)。8条数据总线构成一个数据群,这个数据群与一个选通信号实现源同步。读信号与写信号之间有一个重要差异:写信号与选通信号的边沿有90度相差,而读信号与选通信号的边沿是对齐的。
由于DDR信令比较复杂,因此为了能快速测试、调试和解决信号上的问题,我们希望能简单地分离读/写比特。此时,最常用的是通过眼图分析来帮助检查DDR信号是否满足电压、定时和抖动方面的要求。
图1:13 GHz差分有源电压探头连接到DDR2 DIMM的过孔上。
3.1 利用前导宽度触发器分离读/写信号
我们可以利用读/写前导的宽度来触发示波器,实现读/写信号分离。根据JEDEC规范,读前导的宽度为0.9到1.1个时钟周期,而写前导的宽度规定为大于0.35个时钟周期,没有上限。于是,我们在设置触发条件之前,首先要确定读/写前导的宽度。由于读前导和写前导各自有不同的宽度,因此可利用这一点分离读出的数据和写入的数据。
但这种方法在使用过程中也存在问题。首先,JEDEC规范中对前导宽度的定义比较松散,而且不同ASIC/DRAM厂商在这方面的定义也不尽相同。此外,由于写前导的上限没有定义,因此它也有可能与读前导宽度相同,而如果二者的值过于接近,那么要想分离读信号与写信号就十分困难了。
第二,如果写前导的宽度为0.5个时钟周期,与一个数据比特的宽度相当,那么硬件触发器就无法区分写前导比特与正常数据比特。
第三,随着DDR数据率变高,时钟周期将变得越来越窄。而随着时钟周期变窄,写信号的前导宽度也会大幅缩小。以DDR3-1600为例,其最小前导宽度只有大约200ps。示波器的硬件触发器有可能无法被如此窄的脉宽触发。
来源:维库开发网