Cadence高级功能太难懂?实测三步搞定复杂PCB设计

发布于 更新于
1,695
1
1
详情介绍
智行者IC社区持续更新技术干货、实操教程、案例分享与常见问题解答,为学习者提供实用的学习参考资料。

已由我实际测试Cadence 17.4版本,为此在信号完整性以及约束规则设置方面经历了数不清的麻烦易错之处。Cadence的高级功能并非难以触及,特别是Allegro PCB Editor里的Constraint Manager和SI/PI仿真工具,只要正确运用适用的方法,普通的工程师同样能迅速熟练掌握。

第一步 打开Constraint Manager并设置层叠参数

在Allegro PCB Editor里,点击菜单栏中的 Setup 然后选转到 Constraints 接着再选 Constraint Manager。在弹出的那个界面当中,在左侧的树形结构那儿选择 Physical 之后再选 All Layers。鼠标右键点击那处在Column列里头的首个层,然后去挑选Edit Layer Stack这个操作项目。在层叠该编辑器当中,把位于Top层的铜厚设定成为1 oz,对于板材介质厚度依据实际板卡所需要求来填写,就好比是将FR4这种材料的εr设定为4.2。紧接着,针对每一个信号层,去分配Impedance目标数值,举例来说就是单端50Ω。

【新手避坑】

如下常见报错情况:当层叠参数未保存时关闭窗口,会导致设置遗失。其核心原因为: Constraint Manager不会自动进行保存,需要手动去点击File → Save。而解决办法是:每当修改完一组参数后,马上按下Ctrl+S进行保存,之后再继续设置差分线阻抗等后续相关内容。

第二步 设定差分对规则并走线

在于Constraint Manager里头,切换至Electrical → Differential Pair标签,对着空白处右击,选Create → Differential Pair,挑选要配对的网络像DP_P以及DP_N。启动这种在软件里的名为Auto-interactive Diff Pair Routing的模式(具有快捷键Shift+F5),软件就随之会自动于其间保持特定间的距。

【新手避坑】

有这样一种报错的情况,那就是在进行走线操作的时候,会出现提示“Gap violation”,然而事实上线之间的间距却是偏小的。而导致这种情况出现的原因在于,所设定的5/7规则并未被激活。针对此情况的解决办法是,先检查Electrical CSet是否附着到网络,接着在Constraint Manager当中选中该差分对,然后右键点击Assign to CSet选择预先设定好的差分约束集,最后再进行走线操作。

第三步 执行信号完整性仿真验证

往Allegro主界面返回,点选Analysis,再选SI/PI Simulation,接着选Model Assign。给重要网络像DDR3_CLK分派IBIS模型,从不外乎从制造商官方网站上下载与之对应的模型文件。

【新手避坑】

弹出了报错,是在仿真的时候,出现了名为“No model assigned”的警告。其原因在于,模型路径并没有被准确地配置。而解决的办法是,在Setup这个选项里,找到User Preferences,接着进到Paths,再进入Library,在其中添加模型文件夹路径,之后再去执行Model Assign。

关键参数存在最优推荐值:针对DDR4走线而言,建议把单端阻抗设定为50Ω ±10%,其原因在于该值对大部分控制器以及颗粒的驱动能力具备兼容性,在6层板以下能够确保有较低的反射损耗。

两种用于实际操作的方案对比,其中,方案A这样操作,手动在Constraint Manager里,逐条去设定每一条网络的规则,而方案B是先在原理图端,给网络添加NC属性,也就是标记为关键网络,随后导入PCB后,软件会自动识别并进行批量生成规则。存在这样一种情况,方案A它适合那种少信号线,也就是10条以内的简易板,并且它能够进行精细化控制;而方案B情况有所不同,它适合DDR或者PCIe这类多线束的场景,在这种场景下其效率提升会相当明显,不过呢,这里存在一个前提条件,那就是原理图必须要在提前的时候就标注好属性。

快速频率完整出现错误报告:在运行模拟之后,有关眼图彻底闭合,输出了“信号完整性违规”。解决的流程如下:先的一步,核查层叠的厚度是不是跟板材实际的参数相一致,举例来说,要是 Er 值的偏差超出了 0.5 这份参数,就会导致阻抗互相配错误。第二步,在Constraint Manager里把Propagation Delay设定成100 ps,去留意观察那些时延超出标准的走线,依靠手动的方式来缩短其长度。第三步,在走线的末端添加Series Termination电阻,就比如说22Ω,之后再重新做完仿真,这样眼图通常能够恢复到正常的状态。

这种方法仅仅适用于常规的FR4板材,以及频率低于5GHz的设计情况。要是运用高速陶瓷材料,或者频率超过10GHz,那么则建议改回用Hybrid Stackup模型,并且配合HFSS场求解器去做3D全波仿真,防止简单2D模型导致的结果偏差。对于刚开始学习的人来说,先去掌握上面的步骤,之后再进行高阶操作,这样不容易出现卡顿的情况。

常见问题(FAQ)

在约束管理器里改完参数,为什么设置会丢失?
因为约束管理器不会自动保存。每改完一组参数马上按 Ctrl+S,再继续设置差分线阻抗等后续内容。
差分对走线提示间距违规但实际间距偏小是怎么回事?
多半是 5/7 规则没有被激活。先检查电气约束集有没有附着到网络,在约束管理器里选中该差分对,右键把它指派到预设的差分约束集,再开始走线。
DDR4 走线的单端阻抗推荐设多少?
建议设成 50Ω ±10%。这个值对大多数控制器和颗粒的驱动能力都兼容,在 6 层板以下能保持较低的反射损耗。
0 / 600
1 讨论
热门最新
总结

很好
😍😍

安徽省
嗨,下午好!
学硬件设计・来智行者 IC 社区
相关文章