Allegro PCB Layout 高速布局布線培訓
Allegro PCB Layout 高速布局布線培訓煙台微言電子科技有限公司張紹言 shell.albert@gmail.com2014/06/15 TI AM335X,挂接一片DDR2SDRAM,MT47H128M16RT,128M*16-bit数据线宽度。1、拥有16条数据线,DQ0~DQ15,数据线14条,A0~A13,2^14=16384,具有3条组选择线BANK,BA0~BA2,共有2^3=8个Bank。则共有2^14*8=131072/1024=128Mbit。2、差分时钟线:CK/CKn时钟使能:CKE片选线:CSn行选通:RASn :rowactive strobe negative列选通:CASn:column active strobe negative写使能:WEn :writeenable 3、差分高字节读取数据掩码 UDQS/UDQSn:datastrobe for upper bytes高字节写入数据掩码 UDM:upper bytes data mask DQ差分低字节读取数据掩码LDQS/LDQSn:data strobe for low bytes低字节写入数据掩码 LDM:low bytes data mask DQ 供电引脚比较多,一般在每一个PIN旁边放置一个去耦电容,由于频率较高,放置0.01uF/10V。 AM335X内部含有DDR2控制器,可以直接与DDR2SDRAM进行连接。一般信号对应连接即可,但是注意,由于是高频信号,需要在每一个线上串接33欧姆的端接电阻,一般走线时放置在中间的位置,用于抑制振铃,上冲和下冲。 1、 定义区域规则在BGA区域内定义电气规则,包括线径线宽、间距等。其实就是在Allegro中对应的层中增加一个Shape,然后在ConstraintManager中增加一个ElectronicConstraint Set (ECSet),然后引用这个区域并为这个区域设置规则。file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image002.jpg注意此时一定要选择Constraint Region下的All。file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image004.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image006.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image008.jpg现在已经创建了一个区域,名为ZsyBGA。现在去规则管理器中创建电气规则集合。file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image010.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image012.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image014.jpg下面设置这个区域的物理规则,就是线宽线径之类的。创建物理规则之前,必须要先建立一个物理规则集合,Physical Constraint Set,(PCSet)。file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image016.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image018.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image020.jpg右击选择”Change”可以更改每一层的规则,适当的增加线距对于EMI是有好处的。file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image022.jpg然后我们在区域中引用刚才创建的物理规则电气集合。file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image024.jpg 2、 数据线等长匹配数据线的拓扑结构是很简单的,端到端(点到点),源端-终端电阻-宿端。先建立XNet属性,在Allegro->Analyze->ModuleAssignment…file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image026.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image028.jpg由于我们要对数据线进行匹配,每根数据线上都串接33欧姆的电阻,所以在DevType中选择33欧姆电阻的模型,但是元器件太多,这时可以,直接用鼠标在Allegro中随意点击一个33欧姆的电阻,器件会自动选择上相应的模型。file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image030.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image032.jpg单击Create Model。。。创建模型。file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image034.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image036.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image038.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image040.jpg可以看到,在每一个电阻的右侧都建立了相应的Signal Model。此时OK了,这样就为所有的33欧姆的电阻创建了XNet属性。下面的工作就是在规则管理器(CM)中进行了。此时我们在CM中看到的只要串接了33欧姆电阻的标号都由NET变成了XNet。file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image042.jpg因为我们在设置等长,所以需要在Relative Propagation Delay选项下。需要先设置Pin Pairs,即,source – resistor – destination。现在有2段,即s-r和r-d,我们需要设置一个pin pairs,起始为s,结束为d。这里以DDR_D0进行设置,其他为复制规则即可。file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image044.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image046.jpg从原理图中可以看到,Pin pair应该为U5A:M3 (DDR_D0) à R44 àU6:G8(DDR_D0)file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image048.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image050.jpg这里没有先后顺序,如果Pin Pair 的两个Pin Type全是Passive的话不能Create, 所以这里还需要定义一下Pin的形态, 如:Out put, In put, Bidirectional等。可以在原理图中修改,更新PCB,也可以直接在PCB中修改。file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image052.jpg定义完之后就可以看到,XNet:DDR_D0下属的Pin Pair,从U6.G8到U5.M3,暂时屏蔽掉中间的33欧姆匹配电阻。file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image054.jpg此在右擊PPr,選擇SigXplorer時,可以查看信號的拓撲結構,如下圖所示:file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image056.jpg當設置完一個XNet時,我們應該據此創建一個規則,然後對其他需要設置的信號,套用此規則,這樣就不需要一個一個去設置了。為了自動創建套用規則,我們借助SigXplorer,右擊PPr,選擇SigXplorer.file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image058.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image060.jpg從這個圖中可以看到,SigXPlorer自動將這個規則定義為DDR_D0.top,然後我們使用File->UpdateConstraint Manger,更瓣到規則管理器中.file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image062.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image064.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image066.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image068.jpg從上圖可以看到,自動創建了一個電氣參考規則,DDR_D0,此時,就可以將其中需要設置PinPair的XNet引用套用這個規則,我們來設置一個DDR_D1試驗一下.file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image070.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image072.jpg好的,可以套用自動規則.但是如果我們一個一個設置太麻煩.我們可以創建一個Net Group,包含所有的信號,一塊兒進行設置,将其他需要设置的信号加到该组中,实现规则复制。file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image074.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image076.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image078.jpg再將其他信號添加到這個NetGroup中.file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image080.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image082.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image084.jpg 這樣就將所有需要設置Pin Pair的信號整合到一個組中了,Net Group,如下所示.file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image086.jpg為該組設置DDR_D0規則,這樣所有的XNet都具有Pin Pair了.file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image088.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image090.jpgfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtml1/01/clip_image092.jpg可以看到每一個XNet都具有了Pin Pair,且都設置正確.從源到目的,跨過了端接電阻.張紹言。 3、 地址线等长匹配不错~ 图片看不到。。。 图片看不到啊。 看不到图片,楼主吧图片贴在帖子里就好了 看不到图片,楼主吧图片贴在帖子里就好了
页:
[1]