本帖最后由 whtwhtw 于 2017-6-3 15:46 编辑
看到其中一篇网文说他的板子也出现读写错误,怕是走线不好,因此把MCU与SDRAM之间的时钟线割开,用导线直接连接后改善很多的介绍,灵机一动,我的是不是也是这个问题?
看看网上怎么说?
网文一:
参考君正给的参考设计发现其在SDRAM的地址线源端串联了一个33欧电阻。显然,这33欧电阻是用来做阻抗匹配的。
问:参考设计所说的60欧的阻抗包不包括这33欧电阻呢?
答:这个60欧的阻抗应该是传输线的特征阻抗,不包括33欧姆电阻。那个电阻是去振铃的,但振铃就是阻抗不匹配造成的,匹配了就没振铃了。
问:用串联电阻做阻抗匹配的话,还需不需要计算走线的阻抗?还是说两者都需要?
答:DRAM Layout时第一就要保证走线的阻抗,例如 DDR的数据线保证特征阻抗为50-60欧姆,差分信号线为100-120欧姆。
如果不加串联电阻,其实大多数情况下,也可以正常跑起来。但是,为了可靠性来讲,并不建议这样做。
如果在在DRAM的端口串联一个电阻,可以使DRAM端口的输出阻抗加上这个串联电阻阻抗等于传输线的特征阻抗,简单的说这样可以有效的避免信号反射,提高可靠性。
问:如果我用POLAR计算得传输线的阻抗为87欧,DRAM端口的输出阻抗为22欧,是不是说我只要串联一个65欧的就行?如果这样的话,那么很多书上写的:传输线阻抗为50欧是什么意思呢?
是的,加入电阻式串行匹配的一种方式。
传输线阻抗为50欧是这个意思:在信号的传输过程中,在信号沿到达的地方,信号线和参考平面(电源平面或地平面)之间由于电场的建立,就会产生一个瞬间的电流,如果传输线是各向同性的,那么只要信号在传输,就会始终存在一个电流I,而如果信号的输出电平为V,则在信号传输过程中(注意是传输过程中),传输线就会等效成一个电阻,大小为V/I,我们把这个等效的电阻称为传输线的特征阻抗Z。要格外注意的是,这个特征阻抗是对交流(AC)信号而言的,对直流(DC)信号,传输线的电阻并不是Z,而是远小于这个值。举例:50欧姆就是这个Z。
问:2层板怎么解决阻抗问题?
阻抗控制是要有参考层的(就是所谓的地或电源层),需要参考层没问题,但参考层可以和信号线在同一面,叫Coplanar Strip。不过这个对布线要求更高,弄起来更麻烦。
两层板的阻抗控制比较累吧,如果底层敷地的话容易产生阻抗不连续 !双面板阻抗控制的问题是50欧姆线太宽了。如果偶尔需要,不太关键的信号,可以用coplanar凑合一段。 2层板不考虑阻抗,运气好也跑得起来,但是稳定性不敢说。玩玩可以,做产品不要这样。
高频的东西,该遵守的规则还是要遵守。
问:如果sdram布线的时候不考虑阻抗会怎么样?(也就是说直接串个33欧的电阻,不考虑做阻抗板)
使dram端口的输出阻抗加上这个串联电阻阻抗等于传输线的特征阻抗。如果频率不高,线又很短不考虑阻抗也可以。
问:“如果线小于6inch的话是可以不考虑阻抗,只要差不多就行了”,请问是不是有这一说法???
线路的阻抗匹配,在高频上主要是看这段线是否要被视为传输线。是否视为传输线和这段线的尺寸及主要的信号波长相关。
有的说法是,长度是波长的1/20以下,传输时间是上升沿的多少分之一,还有个什么条件,满足了就可以认为是集总参数的较为理想的线,不太用管阻抗了。此时,如果条件许可,尽量匹配阻抗也是有好处的,减小反射。
问:pcb走线相对于高频信号有一个特征阻抗,串接进去的电阻怎么相对于高频就按其电阻值算呢?电阻相对于高频的特征阻抗难道就是其阻值吗? 我的理解是…要是做匹配的话…假如你设计的传输线50欧的…但是器件的阻抗实际上并不都是能与50欧传输线匹配的…而且还经常有各种拓扑结构…所以在终端接上器件就没办法匹配…出现瞬间阻抗不连续…引起反射…所以必须找一个外部的办法让器件与传输线匹配…其中之一就是串接一个电阻…让电阻和器件一起得到的阻抗与传输线匹配…这样就能实现消除反射了…这个电阻是把传输线看成50欧的时候器件要与它匹配时候需要的电阻。
实体电阻是集总参数元件,其参数可以用集总RLC的串并联,etc,表示。集总元件表现出来的是其在指定频率下的复数阻抗。一般所说的特征阻抗,是无损传输线的同向行波电压和行波电流比给出的参数,是传输线专有的概念,对集总参数元件不适用。集总参数元件在体积满足足够小的情况下,表现出来的特性就是其复数阻抗。电阻一般就认为是其阻值,LC参数考虑的貌似不多。基本上就是这个意思,元件的参数是元件的;传输线的是传输线的,各算各家。
/***************************************************************************************/
首先要预估走线的长度,所谓传输线(Transmission Line)效应在高速PCB的布线中也不是普遍存在的,一般当走线产生的延迟接近其信号沿变化速度(rise/fall)的1/3(保守按1/3算)时,需要面对传输线效应,采用各种端接(Terminate)的方式实现阻抗匹配加以解决;1/2到1/3之间建议纳入考虑范围;
保守计算:电信号在PCB线路中的传播速度取光速的一半,大约是30cm/ns,反射需要个跑来回,再对折,约15cm/ns;
SDRAM的信号延变化速度大致是1ns,其允许不考虑匹配的延迟范围大致是15cm * 1/3 = 5cm = 1968mil,也就是说走线长度控制在5cm以内就能基本避免传输线效应,而无需端接;实际上放宽到1/2(7.5cm)也没问题;
如果走线长度超过5cm较多,那么再配合PCB的叠层(Stackup)间距,计算走线的阻抗和匹配的电阻值;一般原理图中由于不知道PCB的具体情况,所以都会串或并一些端接电阻的。
|
我做了块SDRAM板子,程序整体功能有异常,调试了好长时间一直搞不好,我一开始并不怀疑我的板子硬件有问题,一直认为是软件问题,后来看了网上的帖子,越看越怀疑会不会是我板子画的不行,差点去重新画板子,后来在自己的努力下终于还是搞定了,最终发现还是软件问题。看了网的评论甚至一度误导我以为是硬件问题。浪费了我好长时间。