打印

JD642 SDRAM匹配预仿真

[复制链接]
2216|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zjd1|  楼主 | 2007-9-11 22:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
  现在国内几乎所有的电子企业都不做PCB仿真,画完PCB直接投入生产,即使高频应用经验丰富的工程师也难免会出差错。因为很多情况下都要对一些方案进行折衷。就像这款JD642,体积较小,64位的SDRAM数据线如果加匹配处理的话需要很多空间,而如果不做匹配的话又怕信号质量不能满足要求。怎么折衷?不加匹配,等出现信号质量问题再改版吗?成本?开发周期?...即使调试过程中没有发现信号质量问题,以后产品投入市场能确保没有问题吗?下面就通过SDRAM数据线PCB信号仿真来看一下如何利用PCB仿真工具来协助完成原理图设计。 

应用情景 
  下面是一个DSP硬件电路部分元件位置关系(原理图和PCB使用PROTEL99SE设计),其中DRAM作为DSP的扩展Memory(64位宽度,低8bit还经过3245接到FLASH和其它芯片),DRAM时钟频率133M。因为频率较高,设计过程中我们需要考虑DRAM的数据、地址和控制线是否需加串阻。下面,我们以数据线D0仿真为例看是否需要加串阻。 

 

模型建立 
  首先需要在元件公司网站下载各器件IBIS模型。 
  然后打开Hyperlynx,新建LineSim File(线路仿真—主要用于PCB前仿真验证)。 

 

  新建好的线路仿真文件里可以看到一些虚线勾出的传输线、芯片脚、始端串阻和上下拉终端匹配电阻等。 
  下面,我们开始导入主芯片DSP的数据线D0脚模型。 
左键点芯片管脚处的标志,出现未知管脚,然后再按下图的红线所示线路选取芯片IBIS模型中的对应管脚。 

 

  点OK后退到“ASSIGN Models”界面。选管脚为“Output”类型。 
  这样,一样管脚的配置就完成了。同样将DRAM的数据线对应管脚和3245的对应管脚IBIS模型加上(DSP输出,3245高阻,DRAM输入)。 

 

  下面我们开始建立传输线模型。 
  左键点DSP芯片脚相连的传输线,增添传输线,然后右键编辑属性。因为我们使用四层板,在表层走线,所以要选用“Microstrip”,然后点“Value”进行属性编辑。这里,我们要编辑一些PCB的属性,布线长度、宽度和层间距等,属性编辑界面如下: 

 

  再将其它传输线也添加上。 

 

  这就是没有加阻抗匹配的仿真模型(PCB最远直线间距1.4inch,对线长为1.7inch)。现在模型就建立好了。 

仿真及分析 
  下面我们就要为各点加示波器探头了,按照下图红线所示路径为各测试点增加探头: 

 

  为发现更多的信息,我们使用眼图观察。因为时钟是133M,数据单沿采样,数据翻转最高频率为66.7M,对应位宽为7.58ns。所以设置参数如下: 

 

  之后按照芯片手册制作眼图模板。因为我们最关心的是接收端(DRAM)信号,所以模板也按照DRAM芯片HY57V283220手册的输入需求设计。 
  芯片手册中要求输入高电平VIH高于2.0V,输入低电平VIL低于0.8V。DRAM芯片的一个NOTE里指出,芯片可以承受最高5.6V,最低-2.0V信号(不长于3ns): 

 

  按下边红线路径配置眼图模板: 

 

  之后就可以进行仿真了,来看一下我们的眼图吧:) 

 

  可以看到三个测试点波形差异很大。波形最差的就是接收端的紫色波开形了,上冲到5.4V,下冲到-1.2V。但仍能满足DRAM芯片要求。从DRAM芯片方面来看,不加串阻是可以满足芯片要求的,而且接收端的信号虽然回冲很大,不过,还是高于2.0V,满足芯片高电平界定标准。整个眼图和模板没有交叠,所以可以接受。 
  下面再看一下在DRAM侧距DSP引脚500mil的地方加33欧串阻的话信号是什么样子: 

 

  可以看到信号质量明显改善。上下冲和回冲都减小了。 
  我们知道匹配分始端串联匹配和终端并联匹配。那看一下终端并75欧电阻波形是什么样子: 

 

  波形也明显改善很多^_^ 
  当然,始端串阻和终端并阻是不能同时使用的,如果同时使用,对终端实际上就形成了分压。最终电平不能满足高电平判别需求: 

 

  上图是在始端加33欧串阻,终端加75欧并阻的情况,可以看到DRAM接收到的高电平只有3*(75/(75+33))约2V。 
  对于这样的数据总线,随着读和写的改变,始端和末端也发生变化,那样串阻就不好确定放在什么地方了,那我们看一下,把串阻放在靠近DRAM端的情况(距DSP1.2inch,距DRAM0.5inch): 

 

  可见,效果仍然比不加串阻的情况要好很多,知所以串阻能起到这样的效果。从能量的角度可以简单的这样理解,因为整条线的各个芯片脚都是阻抗比较大,整条线上没有消耗能量的点,没有串阻的话,能量会在传输线上来回反射,相互叠加,造成很大的过冲和振铃。其中又因为DRAM输入阻抗较高,而且线又较长,所以信号问题比较严重。在这段线上加一个串阻能有效的消耗反射的能量,使过冲和振铃现象得到改善。 
  下面我们再把DRAM设为输出端,DSP设为输入端,3245仍为高阻,看一下各点的测试波形。 

 

  看一下是否能满足DSP芯片要求 
  在DSP芯片数据手册里有下面一段内容: 

 

  这段内容指出,下冲不低于1.0V,上冲不超过4.3V就算合格的。这样看来DSP也可以接受不加串阻的情况。而3245数据手册没有给出芯片输入电平条件,但从芯片资料给出的内部结构上看,输入电平高于4V是没有问题的。 

结论 
  低8位数据线没有串阻可以满足设计要求,而其他的56位都是一对一,经过仿真没有串阻也能通过。于是数据线不加串阻可以满足设计要求,但有一点需注意,就是写数据时因为存在回冲,DRAM接收高电平在位中间会回冲到2V。因此会导致电平判决裕量较小,抗干扰能力差一些,如果调试过程中发现写RAM会出错,还需要改版加串阻(单板调试时SDRAM经超频测试到150M系统运行稳定,长时间通过CCS观察SDRAM内数据没有发现错误数据)。 
 

  一些朋友怀疑软件仿真的可靠性,其实软件仿真不管是原理图仿真还是PCB仿真,关键是模型提取和建立。只要模型建立正确,仿真结果还是很可靠的(以前用250M信号验证过CADENCE和Hyperlynx的仿真结果,示波器观察到的波形和仿真结果还是很一致的)。至于人们说的误差确实也是存在的,比如PCB板阻抗由于材质差异及厚度差异、温度变化、信号频率差异等可能存在20%左右的误差。即使这些差异存在,但仿真结果仍然具有极高的参考意义,掌握一定的高频应用知识和材料知识可以帮我们更好的利用仿真结果做出最佳的决策。
其他JD642相关开发步骤介绍及JD642原理图、PCB见个人BLOG
http://blog.163.com/zjd01@126
或http://user.qzone.qq.com/37564275

相关帖子

沙发
catiya| | 2007-9-18 11:04 | 只看该作者

这么棒的帖子怎么没人顶?

学习!

使用特权

评论回复
板凳
mybao| | 2007-9-18 11:11 | 只看该作者

忽略了一个最重要的仿真

建立保持时间的仿真与计算。

使用特权

评论回复
地板
zjd1|  楼主 | 2007-9-20 09:29 | 只看该作者

to:楼上

建立保持时间那个是自己用笔算的:)因为算出来裕量很大,所以没有仿哈

使用特权

评论回复
5
teddeng| | 2007-9-20 17:23 | 只看该作者

很好,顶一个

使用特权

评论回复
6
mybao| | 2007-9-20 17:31 | 只看该作者

楼主辛苦了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

39

主题

103

帖子

18

粉丝