为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > DDR2仿真说明

DDR2仿真说明

2011-03-21 9页 pdf 568KB 22阅读

用户头像

is_902134

暂无简介

举报
DDR2仿真说明 DDR2仿真说明 heroedit@hotmail.com Ver0.0/2006-9-30 QQ信号完整性群:3488655 --谨以此文献给初学 SI的艰苦岁月 写此文的初衷是整理下仿真的思路,给那些和我曾经一样苦苦挣扎在仿真边 缘的人一点经验,与 SI同行。 论坛上经常可以看到不少人看 design guide 而不知道 design guide 怎么来 的,以及为什么有那么都走线关系等。实际上 design guide是根据仿真以及经验 整理出来,因此希望此文能回答一些基本问题。 本文难免有些错...
DDR2仿真说明
DDR2仿真说明 heroedit@hotmail.com Ver0.0/2006-9-30 QQ信号完整性群:3488655 --谨以此文献给初学 SI的艰苦岁月 写此文的初衷是整理下仿真的思路,给那些和我曾经一样苦苦挣扎在仿真边 缘的人一点经验,与 SI同行。 论坛上经常可以看到不少人看 design guide 而不知道 design guide 怎么来 的,以及为什么有那么都走线关系等。实际上 design guide是根据仿真以及经验 整理出来,因此希望此文能回答一些基本问题。 本文难免有些错误或者考虑不周,随时欢迎进行讨论并对其进行修改! 概要 本文大部分是基于 DDR2 Spec的理解并进行解释,包括很多时序图,因而 很多细节问题需要参考 DDR2 spec。DDR2的 spec在目前最新版本是 jesd79-2c 可在 www.jedec.org/download/search/JESD79-2C.pdf下载到,做仿真仿真,我觉得首 先要把仿真时序部分先弄清楚,那么仿真的事情已经完成一半。讨论几个概念 仿真工具的使用 Cadence pcb si: 板级仿真软件,时序计算比较方便 Synopsys Hspice: 晶体管级仿真软件,差分线仿真感觉精确度比 pcb si好点 Ansoft HFSS: 三维电磁场仿真软件,提取过孔模型等 DDR2 工作方框图 在子卡定义的时候经常有 single rank以及 dual rank的区分,从仿真角度来看, 如果一个数据线带 2个 SDRAM,那么认为是 double rank 不妨来看下 DDR2 sodimm的 Raw card A定义,它是 dual rank,原因在于,Raw card A采用的 SDRAM是 X16,而且 Raw card A上面有 8个 SDRAM,而 sodimm 的架构是 X64,因而每根数据线连到 16X8/64=2 SDRAM 仿真频率(Switching frequency)的选择 通常大家对于仿真频率选择有点迷糊,特别是 DDR2 产品,比如说定义 DDR2 的数据传输为 667 MT/s,那么 Clock/data/cmd/ctl的仿真频率如何选择,不妨看 下面的时序图 考虑 Clock时钟,他一个周期比如说 T0它包含 2个 bit01信息,对于 DDR2 667 来说 bit数据流 667Mbit/s,实际仿真的频率为 333MHz 考虑 Address/CMD,在此是 1T,通过时序图可以看到,它是 clock时钟的一半, 仿真的频率为 167MHz,因而可以得到下面的仿真频率 Clock 333MHz、Data 333MHz、Control 167MHz、Address/Cmd 167MHz(1T) 83(2T)。同理对于 pcie类 似的 2.5Gbit/s,他们仿真频率为 1.25GHz 仿真 DDR2的类型 通常在主板中可能用到如下的 DDR2 类型:直接在板上用 SDRAM 芯片; 使用 dimm(DIMM大部分用在台式机上面);使用 sodimm(sodimm大部分用在 笔记本电脑等上面)。实际上 DIMM/SODIMM 只是种规格,相当于插卡,插卡 板上采用 DRAM芯片,对于仿真来说,它们只不过是多板仿真,接口不同而已。 以下几点特别提出来,因为在仿真的时候,有可能碰到,虽然大同小异 a. 带 ECC功能的DDR2以及不带 ECC功能的DDR2,相当于多出来一组数据线, 不过他不是用来传输数据,而是用来检测数据的有效性 b. 带 Register功能的 DDR2以及不带 Register功能的 DDR2,由于 ADDR带的 负载比较重,所以在插卡上加个 register(buffer)来重新驱动 addr,因而计算 有些差异,但是仿真思路一致,在此不对于其进行赘述 具体大家可以去 www.micron.com查询,还有可去下载 JEDEC给出 board file, 大家可以进行对比。 ODT(on die termination)的概念 大家如果用过 DDR 会记得板上数据线后经常有个尾巴(56Ohm 上拉到电源 2.5V),在 DDR2 把这个尾巴集成到 SDRAM 中所谓 ODT 并提供几种终端方式 (比如可以在寄存器设置开启 150/75/50 Ohm等等) 时序图的概念 在 DDR2中有 2时序,读时序以及写时序,他们的时序图如下图所示 这儿列出的是Memory的时序,实际上Memory controller也有此类似的时序。由 于定义的不同,在这会产生两种不同的时序计算方法,一个以有效窗口概念来计 算,一个以具体的 setup time以及 hold time来计算。 有效窗口概念:发送端产生的 skew+Interconnect产生的 skew《接受端能容许的 skew(Freescale芯片MPC系列经常是这么定义的) setup time以及 holde time概念:发送端的有效 setup time》nterconnect产生的 skew +接受端需要的 setup time以及发送端的有效 hold time》nterconnect产生的 skew +接受端需要的 hold time(Intel芯片系列经常是这么定义的) 下述以前仿真的步骤来列出时序计算中必须考虑这几个事情 a叠层结构的设计(涉及全局,包括 pi/emc问题等,其计算说明已经贴出,在以 后版本会讨论如何设计);b 走线拓扑的选择;c 串扰的考虑;d 时序计算;e 制 订 design guide(规则) 考虑前 3步骤是为 4服务的,用来计算它对于时序的影响,第 4步是用来计算最 终时序并推出第 5步给 layout规则 叠层结构的设计 通常坏的叠层会产生所谓阻抗不连续性,例如反射问题,串扰问题,EMI问题, PI问题,因而在设计中应遵循如下原则:a对称性;b高速信号走线具有完整参 考平面,电源平面与地平面的耦合。 设计方法可以考虑如下 输入:总层数,走线层数,总厚度,阻抗要求 输出:叠层结构,单端信号的走线宽度与差分信号走线宽度以及间距 由于叠层结构设计和厂家制程能力息息相关,在设计的时候一定要和厂家协商。 下面列出在正常单端阻抗 55Ohm范围变化下所带来的 skew 如上图所示,阻抗越高,Slew rate越快,幅度越大,但是 aperture越小, jitter越 大,当在阻抗范围内变化时,有 5ps的 skew产生 拓扑结构的类型 目前的拓扑结构通常有:点到点(基本上目前高速信号所用的拓扑结构);多点 (菊花链型,树型,星型等等,多用于低速多负载) 在 DDR2 仿真中,如果采用插卡方式,拓扑结构可选择余地不多,通常需要做 的事情如下:确定驱动能力;确定 ODT 开启选项(和波形/时序设计相关) 通过调整驱动能力和开启 ODT选项,产生如下波形 Pre-route DDR2 SODIMM board Connector Memory Controller Memory 如上图所示,ODT阻抗越高,Slew rate越快,幅度越大,但是 aperture越小, jitter 越大,在此做个平衡,选择 1.75XODT150(选择强驱动通常是带 2个负载等) 在 micron的 appnote给出如下的 odt配置 串扰的分析 通常串扰分为电感性以及电容性,他们在传输线上叠加就生成前向串扰和后向串 扰,其对于波形的影响现在幅度以及 slew rate上面,如果叠加成眼图来看,在 时序上表现为 jitter(负载加载效应)。相邻走线层要按照垂直方向走线也就是因为 考虑宽边耦合 crosstalk。下图是不同的干扰眼图 No crosstalk 1 agggressor crosstalk(width:space=1:1), it causes about 35ps skew to timing 1 agggressor crosstalk(width:space=1:2), it causes about 5ps skew to timing 从上图可以看出,采用 1:2的 wdith:space以及 1:3的 wdith:space波形差异不 大,因而设计的时候可以走 1:2的 wdith:space(更短的线可以采用 1:1等等)。 注意大家经常看到说 DDR2走线要按照 1:2的 wdith:space,实际上他们是根据 crosstalk大小而确定,比如受驱动能力的影响,比如受线长的影响等 时序分析 目前时序分析基本上分为共时钟信号时序以及源同步时钟时序类型,无论类型怎 么分,他们都表现为要满足 setup time以及 hold time要求。 共时钟信号计算公式如下: 源同步时钟计算公式如下: 具体计算公式的意义大家可以去查 high speed digital system design,在此有个很 重要问题,怎么在 spec里面找时序参数?通常来说在 datasheet里面有 electrical characteristic,里面包含 AC/DC参数,比如在 JESD79-2C.pdf P75里面你可以找 到以下一些参数,对照时序图你可以找到你所需要的值 在计算时序的时候有个概念要弄清楚,那就是 Tco或者叫所谓的 buffer delay,通 常来说 Tco起基准作用,相当于基准坐标一样,你要计算时序的时候必须有个坐 标。对于共时钟信号的时序来说,由于他们基准坐标不一致(不同的 driver), 为了统一,需要测量不同 driver Tco,而对源同步信号的时序来(相同的 driver), 由于他们基准坐标一致,你可以不用考虑 Tco。 1 agggressor crosstalk(width:space=1:3), it causes about 5ps skew to timing 下面给出时序计算的例子 Memory controller spec: tVB=0.6ns, tVA=0.5ns Memory spec: tDS=0.1ns, tDH=0.175ns(注意有个 derating values table) Interconnect Setup Margin=tVB-tDS=0.5ns Interconnect Hold Margin=tVA-tDH=0.325ns Skew by Crosstalk/Impedance estimation 0.03ns 最终得到结果 Formula1: Max (settle delay DQ0-switch delay DQS0)+Skew < Interconnect Setup Margin Formula2: Max (settle delay DQS0-switch delay DQ0)+Skew < Interconnect Hold Margin 通过时序公式计算,我们可以确定大概长度范围(理论上源同步时序对于总长没 有要求,但是由于传输线损耗以及 DDR2内部有返回时序影响,总长需要设定), 大致确定走线关系 规则制订 走线层:高速线布线的优先顺序:{XXX}, {XXX}, {XXX}… 走线的拓扑结构:Point to point, 1.75XODT150 走线线宽线距:stackup确立 走线长度:根据时序计算 走线关系:DQ~DQS: 20mil(it will cause skew max about 5ps) Clock与 DQS关系 Clock与 ADDR/CMD/CTL关系 小结 在此讨论几个细节问题: 1,DDR connector的影响,在此只考虑 SLM模型(可去 tyco网站下载),更精 确点需要考虑MLM模型(tyco那儿好像需要签 NDA) 2,ISI影响,由于 data patteren与 ISI有关系,在此统统以看眼图的 jiiter来分析, 由于不是做研究,对于仿真来说粗略估算时序 3,SSN影响,实际上在 interconnect设计中,即使发现问题,你所能做的事情也 不多,解决 ssn问题最关键的还是芯片设计,在此要结合 pi设计 4,与测量的校准, A, 波形的校准,通常典型情况下,波形的趋势是一致,但是会有差异,表现在 仿真的波形 slew rate比测量的波形的 slew rate不一致,通常我对于测量波形 的 slew rate表示怀疑,因为他们测量的是测试点位置,大家有兴趣可以去搭 建一个 topology去看看在在 die上波形和距离 die上波形 500~1000mil的波 形差异 B, 时序的测量,通常典型情况下,测量的时序肯定要比仿真的时序大,因为他 们反应的是一般情况下的时序,而仿真考虑的是 worse case corner情况 5,仿真会遇到时序计算出来负值,怎么办?特别是计算 DDR2时序,在此有个 冗余问题,这儿需要经验,确定什么情况下能容许。 A, 需要查看下 spec,那些时序参数定义在什么情况,有些时候 spec定义在 die 上,有时候定义在 pin上,有时候时序定义测量在 Vref上面等等都会影响你 时序的计算值 B, 检查下你的时序计算公式,比如 DDR2 spec 定义 setup time 等用到 vih(ac) vih(dc)值等等 参考文献 1. JESD79-2c (from www.jedec.org) 2. High-speed Digital Design 3. High-Speed Digital System Design 4. TN47-02 (from www.micron.com) 5. 1G DDR2 SDRAM (from www.micron.com) 6. Cadence SQ foundation 15.2
/
本文档为【DDR2仿真说明】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索