博客

  • 单点接地选型实战:接地点位置与连接器件设置

    本人实际测试过TPS5430降压模块(V1.2),踩过坑,此坑为单点接地位置错选在了电容负极,进而致使输出纹波飙升到80mV。新手沿着下面步骤一步步开展操作,便能较为轻松地避开这类常见问题。单点接地选型实际上就是要找对汇流点,将不同地回路在物理层面分开,最终连接到一点,其核心在于控制地环流噪声。

    接地点位置如何定

    步骤一:于PCB Layout软件也就是Altium Designer 24里,在打开原理图同步之后,点击Design ,接着去选择Import Changes,进而确认网络表。把所有模拟地网络也就是AGND选中,通过右键选择“Filter Selected”,按照S+C的方式框选对应的引脚。在PCB该界面依据P+P去放置焊盘以此作为主接地点,将坐标设定为(60,60)mm。把AGND以及DGND分别使用0.5mm宽的走线连接到这个焊盘。

    【新手防错】经常遇见的报错情况是,DRC会报出“Un-Routed Net Constraint”,这是由于焊盘的默认网络不是正常网络而是No Net。其中的关键原因在于,主接地点焊盘没有被设置成GND,并且和AGND、DGND之间没有实现连通。能够快速解决问题的办法是,双击焊盘,在Properties面板当中把Net改成GND,接着重新进行铺铜或者走线。

    接地连接器件怎么选

    操作步骤2:对于将AGND和DGND汇接到主地点的连接元件,推荐使用0Ω电阻(封装0603)或者磁珠。关键参数的推荐值为:当开关频率为300kHz时,磁珠选型在100MHz的阻抗推荐为600Ω±25%,额定电流≥2A。设置理由是:600Ω磁珠能够有效抑制开关纹波的高频分量(大约为10 – 100MHz),其直流电阻。在Altium里,从Library也就是库中,找出“BLM21PG600SN1”来进行放置,接着把Comment这项修改成600R@100MHz。

    磁珠发烫,或者输出电压下跌,这是新手常见会碰到的现象。出错的原因在于,磁珠额定电流选小了,就像用了1A型号那样。快速解决的办法是,换成功率额定电流3A的磁珠,或者直接短路换成0Ω电阻。方案对比的情况是,低频模拟电路,也就是10MHz的时候要使用磁珠,以此来提供高频损耗。取舍的逻辑是,信号频率低,而且对电源内阻敏感时,要选0Ω电阻,反过来的话就要选磁珠。

    单点接地失败快速救

    操作步骤3:要是单点接地完毕后,ADC采样值出现乱跳的情况,那就去执行完整的排查流程。先把原理图打开,接着点击Tools -> Design Rule Check来运行所有规则。然后切断主接地点的连接,分别测量AGND和DGND对于大地的阻抗(正常情况下Panels -> PCB,在层颜色当中高亮GND层。

    【新手需防】高频率出现的那种完整的报错情况是,报错的信息呈现为“Voltage Reference Noise”,又或者是 ADC 的读数会出现上下跳动,幅度达到正负 20LSB。其背后的缘由所在,是单个点进行接地的时候,那个回流的路径不经意间就经过了模拟信号的输入区域,进而把数字噪声给引入进来了。有一种能全面解决问题的办法,首先,要把原来单个点的连接关系给删除掉;接着,在靠近电源输入电容负极的地方重新去打一个过孔,把这个过孔当作主要的接地点;之后,使用宽度为 10mil 的走线,分别从 AGND 和 DGND 区域各自单独拉到这个过孔处,并且加宽到 20mil ;再然后,重新去铺铜,把过孔设置成禁止覆铜连接。经过实际测试,噪声降低到了正负 2LSB。

    针对于100MHz往上走的射频电路(好比2.4G WiFi模块),或者电流比15A还要大的大功率电机驱动,此方法并不适用,这类场景采用多点接地或者混合接地会更适宜:对于射频板而言,建议整个板子要有完整的地平面,并且布满地过孔;对于大功率板来说,建议功率地和信号地分开,借助磁珠在电源输入端进行单点连接,你于实际项目里在单点接地的时候碰到过哪些稀奇古怪的干扰问题?用了哪一种连接器件去解决的?欢迎在评论区进行分享,点赞收藏以便让更多工程师能够看到。

  • 钻孔文件导出三步搞定 新手跟着做不踩坑

    我亲自测试了PADS VX2.10,有过因钻孔文件缺失致使制板厂不断打电话来责骂的经历,新手只要依照步骤一步步实施操作,便能够轻易躲开这类常见问题陷阱。

    第一步 设置钻孔文件参数 2比4格式最稳

    当开启PCB文件后,点击菜单栏File从而进入CAM,接着在下拉选项中寻觅到Define Drill Drawing。于弹出的对话框之内,Unit选择Metric,Format那一栏选择Decimal、Leading,对数字填入2以及4。此即为业内常常提及的2:4格式,其精度可以达到0.01mil,绝大多数板厂的光绘机都能够识别,不会产生比例缩放错乱的情况。

    【新手需防】 常见出现报错“Drill file size mismatch”,其核心缘由是Format选择了2:3或者是选取了3:3,在板厂进行读取的时候位数无法对应得上。解决的办法是:强制性的去统一采用2:4,并且在往外导出之前跟板厂再次confirmation一遍支持度。

    第二步 执行NC Drill导出 勾选单独文件

    仍然是于CAM对话框之中,在左边的列表期间找到NC Drill而后双击,勾选上Separate file for each NC。紧接着点击Run之处,在弹窗里面将Output file后缀改变成为.drl,对于路径选择项目文件夹。这一个步骤将会生成钻孔文件以及与之对应的.rep报告。

    首先,新手避坑中,报错“No holes found”最为常见,其原因在于你有忘记在PCB里放置过孔的情况,或者铺铜未连接到地。其次,快速解决办法包括先执行使之一遍这样的操作,工具范畴的Tools方面下选择Verify Design里的Check Clearances,以此确保网络连通,之后再重新进行导出。

    第三步 检查并选择发货方案 两种路子看场景

    试着用记事本将.rep文件打开,瞧瞧核对总孔数是不是跟设计相符。而后你将会碰见两条路,其一为,方案A,直接把.drl与Gerber进行打包之后发送给板厂,这样能够节省时间;其二是,方案B,先拖进CAM350里面实施叠层检查之后再发送,虽说会多花费5分钟时间,不过比较保险。要是小批量打样的话就选择方案A,要是批量生产那就必定得选择方案B。

    涉及新手需要避开的坑,存在常常出现的完整报错名为“钻孔文件偏移”,其呈现出来的现象是孔与焊盘的中心差值在0.5mm以上,而造成这种情况的根本缘由是该原点未能确定稳固。有着一站式的解决办法,首先是进入Setup,接着选择Set Origin,随后挑选板子左下角的物理点,之后再重新去执行第一步以及第二步,这样来看绝对坐标能够从根本上解决偏移的问题。

    此方法不适用于Altium Designer或者Allegro,它们导出菜单全然不同。替代方案颇为简单:在AD里查找File->Fabrication Outputs->NC Drill Files,Allegro则运用Manufacture->NC->Drill Legend。你最近被钻孔文件坑得最为惨痛的一次情形是怎样的?在评论区说一说,我来帮你瞧瞧。

  • PCB Layout差分线等长绕线 老工程师踩坑实战

    我亲自进行了 Altium Designer 22.6 的实际测试,遭遇了差分线等长绕线状况下,由于规则设置出现差错,致使绕线长度一直未能匹配的困境,对于刚入门者而言,只要依照相关步骤循序渐进地开展操作行事,便能够轻轻松松地规避这类极为常见的问题。

    步骤1 打开规则约束并设置差分对

    操作的路径是,菜单栏当中的Design,接着是Rules,然后是左侧的Routing,最后是Differential Pairs Routing。去寻找到你自己的差分对信号,于“Uncoupled Length”这一栏之内输入最大允许的不匹配长度,其推荐的值是5mil。首先,高速接口(USB 2.0/HDMI)的要求十分严格,其次,5mil所对应的时延差大约是0.8ps,这一数值低于多数芯片的阈值,另外,倘若板厚为1.6mm且材质是FR4,那么过长的情况就会引发出共模噪声。

    对于新手而言需注意避开的情况是,存在像常见报错为“差分对未完整约束”这般的状况,其呈现出的现象乃是,在进行绕线操作期间软件会自动退出,或者出现绕线失败的情形。而其核心的出错缘由在于,没有给差分对分配网络名称,也就是后缀为_P/_N的那种。其解决的办法是,在PCB面板里双击差分对,然后手动去添加完整的网络名,之后再回到Rules那里点“优先约束”。

    步骤2 交互式绕线调整长度

    操作的路径是,通过快捷键U加上R,或者去点击顶部的工具栏Interactive Length Tuning。接着,用鼠标选中差分对当中的一根线,再按Tab键调出属性窗,在Target Length那里填写两组实测长度差值的一半,比如说一根线是100mil,另一根是105mil,差值是5mil,目标填写2.5mil。绕线幅度选15mil,间隔选10mil

    【新手需防】常见状况是,绕线之后,总长度反倒更加偏向一边,又或者绕线的区域被碎线挤得满满当当。核心缘由为,“拖动时保持45度角”未开启,并且差分对间距锁定已然失效。快速解决的办法是,在Preferences这个选项里,找到PCB Editor,再进入Interactive Routing,勾选“Restrict to 45/90”,接着把差分对间距手动锁定成两倍的线宽(要是线宽是5mil,那么间距就是10mil)。

    两种绕线方案对比与取舍

    方案A呈现为紧凑锯齿型,其每段绕线长度是5mil,并且间距较为紧密。方案B展现为缓坡拱起型,它的每段绕线长度为20mil,而且间距比较稀疏。取舍的逻辑是,板子内部空间处于紧张状态并且频率低于1GHz的情况选A,而绕线区域靠近敏感模拟电路的情况选B,因为缓坡型的辐射更小。要是走线层临近电源层呀,则必须选B,不然寄生电容会把信号边沿给吃掉呢。

    高频完整报错:绕线后DRC报间距错误

    完整的报错提示呈现为,“Clearance Constraint Violation”,也就是,“Gap between differential pair and copper”。能一站式解决的流程是这样的:首先,按T+D运行DRC,以此来锁定全部冲突坐标;接着,于Rules → Electrical →Clearance当中,把属于差分对与动态铜箔那种的间距,从6mil放宽至8mil;然后,选中出现报错的区域,按M+S移动整段绕线,让它远离铺铜边界;最后,重新进行铺铜(快捷键是T+G+A),并且重建所有过孔连接。整个过程花费时间不到2分钟。

    此方法对柔性板(FPC)以及超过6层的背板并不适用,鉴于材料介电常数不均衡会致使5mil的严格限制遭受破坏。简便的替代办法是:采用阻抗条来管控整体时延,舍弃单根绕线,直接于原理图端对差分对串入共模扼流圈。

  • PCB设计实操笔记 新手照着做避开这三个大坑

    实测Altium Designer 22.8.1的是我,我遇到过差分线阻抗匹配失控致使信号反射、板子回来后跑不通的情况。新手只要跟着步骤一步步去操作,便能够轻松躲开这类常见问题。

    步骤1 设置默认线宽和间距规则

    用于把控行为举动的路线途径是这样的操作:先要从“Design”开始,随后进入“Rules”,接着找到“Routing”,当中有一项是“Width”。然后,用双手双击以此来创建全新的规则,在“Min Width”这里填写成“6mil”,“Preferred”填写为“6mil”,“Max Width”则填写成“10mil”。之后,再次进入“Clearance”,创建新的规则并把间距设置成为“6mil”。关键参数最优推荐值当中,6mil线宽(1oz铜厚)属于性价比最高的选择,这是为何呢,因为多数PCB厂的最低制程能力是6mil,要是低于这个数值,就会加收50%的工程费,然而要是高于8mil,就会造成高密度板空间的浪费。

    新手需避坑,常见报错是,规则检查之际提示“Un-Routed Net Constraint” ,核心原因在于,你仅更改了全局规则,却未给特定网络分配规则,或者Class里错误设置了其他约束 ,快速解决办法为,在Width规则当中设置“Where The Object Matches”选“All”,且右键选择优先级处于最高。

    步骤2 差分对等长蛇形线补偿

    操作的路径是,将Place选定,接着选定Directives,再选定Differential Pair,以此给一对网络添加差分对标识。然后是Route,选定Interactive Differential Pair Routing,按下Tab键调出具有属性的面板,把线宽设置为6mil,把间隙设置为6mil,将目标阻抗设置为100Ω。当存在需要等待进行长补偿的情况时,运用Tools -> Length Tuning,将差分线予以选中,把Target Length设定为最长的那一条线的长度,把振幅选定为1.5mm,把间隙选定为0.3mm。

    新手需避坑的常见现象是,蛇形线绕完后,差分对内部的相位差超出了5ps,信号眼图无法张开。核心原因在于,没有单独对内等长,或者绕线时耦合段不对称。快速解决办法是,先测量两条线的长度差,在Length Tuning里开启“Pin to Pin”测量模式,只针对差分对内的两条线进行补偿,不要整体拉长。

    步骤3 动态铜皮浇铸与过孔缝合

    操作途径:放置的动作指向,多边形倒灌这一行为,在绘制好相应区域之后,于属性范围里将连接到网络设置成接地,倒灌顺序选择所有层面同时进行浇铸操作。关于过孔缝合的操作流程是这样的:先找到Tools这个选项,然后在其中找到Via Stitching,接着点击Add Stitching to Net,之后从中选择GND网格,还要设置间距为80mil,过孔的孔径设定为0.3mm,焊盘的尺寸设定为0.6mm。这里需要注意,要先去执行铜皮浇铸这个操作,也就是找到Tools里的Polygon Pours,再点击Repour All,完成后才进行打过孔的操作。

    对两种方案进行对比,方案A是整板网格铜,这里填充比例为30%,方案B是实心铜皮。对于高密度数字板而言,应选实心铜皮,这是由于其能够降低50%的回路电感;而在射频或天线区域,则要选网格铜,目的是避免大面积铜皮引发寄生电容。其取舍逻辑为,若板子超过四层并且以数字信号为主,那就无脑选实心铜;要是存在柔性区域或者天线周边,那就必须选网格铜。

    频次较高的完整报错情况为:在进行浇铸操作之际,弹出了“Polygon Not Repoured (Layer: Top) – Broken Pour”这样的提示。所呈现的现象是:在铜皮所在区域出现了白色的十字叉形状,并且无法进行填充操作。提供的一站式解决流程方面:第一步是要去检查铺铜区域的边界状况是否处于闭合状态(具体操作是点击Edit -> Polygon Pour -> Vertices) ;第二步是要查看所分配的网络是否存在(举例来说,像GND网络被误删掉的这种情况) ;第三步是重新启动软件,将该铺铜删除之后再重新绘制出一个矩形区域,先针对单层实施浇铸测试。90%的情况是边界自交或内存溢出,重新画即可。

    于四层板以内、常规FR4板材、线宽要不小于了4mil才实测的本方法。要是您的板子是HDI任意层互连或者射频毫米波频段,那这套规则是不适用的,建议去改用像Polar Si9000那样的专用阻抗计算题比如手动叠层。你在PCB设计里最头疼的DRC报错是哪一种呢?在评论区一起去吐槽。

  • Cadence快捷键实测 三步自定义与报错修复

    笔者亲身试过Cadence 17.4,遭遇过按下快捷键保存后,再次启动就直接没效果的状况,刚入门的新手依照下面这些步骤逐个去进行操作,便能够轻快地躲开这类平常会出现的问题。

    Cadence快捷键怎么自定义

    1. 把安装目录里的Sharepcbtextenv文件打开,使用记事本进行编辑。于# Bind aliases的下方依照格式去输入:alias F10 zoom fit,这意味着按F10键的时候会执行全屏适配。关键参数推荐,将set bindmode设为1,其理由在于,这个模式能够使得自定义快捷键去覆盖系统默认,进而避免被其他命令所抢占。

    新手需避开此坑,保存env时出现提示“权限不足”,其原因在于文件属性是只读状态。通过右键env文件,去掉“只读”勾选便可解决。另外,千万不要使用Word进行编辑,因为会引致隐藏字符的出现,进而致使整份env报废。

    快捷键冲突如何快速排查

    2. 于Console栏键入alias后回车,便可看到所有已加载的快捷键。要是发觉F2同时绑定了两个操作,系统仅会认最后加载的那一个。两种方案作对比:方案A是手动删除env里的重复行,适宜少量冲突情况;方案B是用unalias F2临时解除,适宜调试的时候用。新手直接采用方案A,可一劳永逸。

    【新手需防入坑】执行别名后毫无输出?这表明环境变量路径有误。查看系统环境变量住处是否指向准确的Cadence安装目录。常见的错误情形是软件读取了C盘预设的临时.env文件,解决的方式是在Cadence启动快捷方式当中设置起始位置为你所拥有的工程文件夹。

    env文件修改后保存报错解决

    3. 频率较高地出现报错情况:在保存env之时,弹出呈现为“E- Error parser: unterminated string”这样的内容。有着一种能够提供全面解决办法的流程:借助Notepad++将env打开,依据行号去寻觅到缺失引号的具体位置并进行补充完整。要是出现乱码从而无法确定位置,首先对env进行备份,接着逐行把最近修改的几行添加注释,重新启动软件来加以验证。末尾运用echo $HOME去证实当下生效的env路径是不是准确的。

    【新手需防入坑】在进行修改之前,务必对原始的env进行备份!有相当多的人直接进行覆盖操作,进而致使所有的快捷键都丢失了。备份的命名应为env_backup。另外,要留意alias后面跟着的键名必须采用大写字母,举例来说,F10不能写成f10,不然系统会直接将其忽略。

    这种方法适用于处于Cadence 16.6至17.4阶段的Allegro PCB Editor,然而其并不适用于Allegro Viewer免费版,那个版本将自定义快捷键予以禁用。替代的办法具体是换用完整版或者借助按键精灵来进行模拟。你是否碰到过那些颇为怪异的快捷键报错情况呢?在评论区把它们都抛出来,大家一起去解决,要是觉得有用的话,一定要记得点赞以及分享呀!

  • Mentor Xpedition高级功能 差分对等长绕线三招搞定

    我亲自进行了Xpedition VX.2.14的实测,经历了差分对等长绕线怎么都绕不出来的那种情形,对于新手而言,只要依照步骤一步步去开展操作,便能够轻易地躲开这类普遍出现的问题。

    1 打开CES约束管理器设置匹配组

    从Editor Control窗口开始,进入Setup,再到Constraint Editor System (CES),于左侧Net Classes中选定目标差分对网络,接着切换至Matching选项卡,然后敲击Add Matching,在名为Tolerance的地方填入0.1mm(此乃最优推荐值),将Propagation Delay设定为From Pin to Pin。原因是,0.1mm这样的等长精度,已然足以去满足像USB 3.0以及HDMI这类高速信号的相关要求,假使过严的话,就会使得绕线的难度有所增加,要是过松的话,又会对信号时序造成影响。

    为新手提供避坑提示,常见的报错状况是,设置好匹配组之后,绕线竟然依旧没有产生效果。其核心的缘由在于,没有勾选CES里面的Enable Length Matching复选框。快速的解决方式是,返回至Matching选项卡,寻找到顶部的Enable按钮并打上勾,接着点击Apply。

    2 交互式绕线命令与调谐窗口

    首先是操作路径,处于Route模式,接着选择要绕的差分对,之后右击选择Tune,或者按快捷键Ctrl+T,随后会弹出调谐窗口,在该窗口中,Tuning Type选择Symmetric,将Amplitude设置为0.5mm,把Gap设置为0.3mm,然后点击起点,接着拖动鼠标拉出绕线形状,按Tab键能够实时调整绕线幅度。

    注意,新手朋友们要避开这个坑!常常会出现的一种报错情况是,被拉出来的绕线,呈现的是那种有如锯子齿痕般的形状,而且长度还不一样。这里面最关键的原因在于,差分对的两条线,被设定成了不同步的锁定状态。那针对这个问题该怎么解决?办法是这样的,在Route这个选项下面找到Tuning Parameter,然后勾选Couple both traces这个选项,接着去检查Net Class下面,这两条线是不是已经被配成了Primary/Secondary的状态。

    3 两种等长方案对比与取舍

    方案A,也就是上述提到的对称绕线,它适用于板内空间充足的情况,并且要求差分对周围3mm没有其他走线,如此才能保持共模抑制达到最优状态。方案B叫做分段单线绕,其操作路径为,先Tune,接着取消Couple both traces,然后分别去绕P/N线,每段幅度是0.3mm。它的适用场景是空间极度拥挤或者差分对间距不恒定。其取舍逻辑是,优先选择方案A,只有当绕线区域被大量过孔挡住时才切换到方案B,不然EMI风险会增高。

    4 高频完整报错一站式解决

    解决的流程是这样的:首先,要看在CES当中,当前的线长是不是已经超过了匹配组最大值;其次,要让Tune窗口的Max Amplitude缩小到0.3mm以下;接着,把DCR关闭即(Dynamic Copper Refresh,路径是Edit → Control → DCR → Disable);最后,重启布线器,将起始点偏移0.5mm重新拉线,90%的情况是能够接通的。

    针对超高速接口(像PCIe Gen5及更高版本这类)或者背板设计,本方法并不适用,这是因为需要额外去考虑玻纤效应以及时延匹配。可供替用的方案是:采用Xpedition的Delay Tuning功能并配合手动绘制蛇形线,具体的操作路径是:Route → Delay Tune → 手动绘制蛇形段,这种方式精度更高不过耗时会翻倍。你手中的板子有没有碰到过等长绕线绕崩了的状况呢?在评论区张贴报错截图,我来帮你查看看看。

  • EDA工具选型实操 三步避开Synopsys DC常见坑

    实实在在亲自测试了Synopsys DC 2023.12 – SP3,遭遇过因lib库路径写错致使综合直接崩溃的情况,新手依据步骤逐个操作,便能够轻易躲开这类常见问题。

    1. 环境变量配置

    打开,位于用户主目录下的隐藏文件.bashrc,往其中添加内容,内容为,将SYNOPSYS_HOME环境变量设置为/tools/synopsys/DC_2023.12,再添加内容,内容是将PATH环境变量设置为现有PATH加上SYNOPSYS_HOME目录下的bin子目录路径,最后执行source命令,该命令作用于~/.bashrc文件。关键参数LM_LICENSE_FILE,建议设置成为27000@lic_server,原因在于,统一端口能够防止冲突,在多个工具共同使用的时候,不需要反复进行修改。

    避免新手踩坑,运行dc_shell时出现“command not found”提示:很大概率是PATH顺序有误,通过echo $PATH检查,要保证/bin处于前面;要是出现“License checkout failed”提示,首先使用lmstat -a查看服务器是否连通,接着ping lic_server来确认网络情况。

    2. 启动并挂载库文件

    因综合时采用最慢corner,后端布线后setup/hold更易于收敛,所以slow.db是最优推荐值,且要留出20%时序余量。

    【新手避开误区】,当出现报“无法找到库”的情况时:千万绝对不要使用相对路径!使用pwd查看当前目录,然后直接固定写成/home/project/lib/slow.db。另外还要检查.db文件是否被chmod锁定,通过ls -l查看一下权限。

    3. 读入设计文件

    分别执行,先进行read_verilog -netlist -verbose ./rtl/uart_top.v操作,然后执行current_design uart_top操作,最后执行link操作 ,是这样的流程过程。将时钟周期设定为8纳秒,此设定是为目标100兆赫兹留出20%的余量,对应的命令是:create_clock -period 8 [get_ports clk]。

    《【新手躲避陷阱】》,出现“报‘未定义模块uart_rx’”这种情况,是因为“读入顺序有误”,“子模块必须在顶层之前读入”。“方案对比”方面,“其一”,“图形界面gui_start”,接着进行“File”操作,再选择“Read”,然后勾选“Verbose”,这种方式适合“用肉眼检查错误”;“其二”,“脚本模式dc_shell -f run.tcl”,此方式适合“批量跑完后去喝茶”。“调试时使用第一种方式”,“生产时使用第二种方式”。

    对高频出现的错误提示“Feature DC_Ultra_Opt not available”进行完整解决,具体步骤如下:可以通过运行lmstat -a来查看是否存在feature缺失的情况,若发现存在feature缺失,接着打开license文件,在其中搜索“DC_Ultra_Opt”,要是没有找到该内容,那么就更换带有该feature的license文件,或者联系管理员进行处理,之后设置export LM_LICENSE_FILE=27000@new_server,然后通过运行lmgrd -c license.dat来重启服务,最后在dc_shell中再度重试。

    开源 EDA(像 Yosys 这样的)不适用上述方法,替代的方案是:改成使用 yosys -p”read_verilog uart_top.v; synth_ice40″ ,环境变量全部要手动去配置。你手头的 EDA 选型在哪里卡在了某个报错上面呢?在评论区把截图丢出来,我帮你看一看。

  • PCB电源完整性实测 踩过PDN阻抗坑 三步骤新手避坑指南

    我亲自进行了Cadence Sigrity 2023的实测,遇到过PDN阻抗曲线在30MHz这个频率点处出现超标情况,进而致使DDR4控制器发生随机复位现象,新手依照下面的步骤逐个进行操作,便能够轻松躲开这类常见的问题。

    步骤1 导入PCB并设置叠层参数

    将Sigrity PowerSI开启,点击File,再点击Import,之后点击BRD即括弧中Allegro,挑选你的.brd文件。于Layer Stackup窗口,手动键入每层的厚度,其中TOP层铜厚为1oz,Prepreg厚度是4.5mil,内层参考地为1oz,核心板厚度依据板厂实际情况填写为47mil。最为关键之处在于,目标阻抗Ztarget被设定为20mΩ ,此设定基于1.2V的电源 ,存在5%的纹波也就是60mV ,最大瞬态电流为3A ,经计算得出结果为20mΩ。

    新手避坑

    将后仿实行导入时出现报错“Stackup thickness mismatch”,其缘由在于板厂所给予的叠层公差超出了±10%。处理的办法是:径直与板厂实现联系,从而获取实测叠层报告。接着要把Prepreg实际压合厚度予以填入,不要轻信默认数值。

    步骤2 添加VRM和负载模型

    于部件面板通过右键操作选择添加VRM,选中VCC1V2网络,设定输出电压为1.2V,设定输出阻抗为10mΩ,在负载端选择主芯片的电源引脚,通过右键添加负载,将电流曲线选择为PWL模式,填写从0A至3A的跳变沿为1μs。有两组方案进行对比,方案A全部采用0402电容,是100nF与1μF混合的那种,方案B分别采用0402并100nF高频的,以及0603并10μF中频的。要是板子面积紧张就选择A,若成本敏感但是对纹波有要求。

    【新手避坑】

    进行仿真跑DC IR Drop操作时,所得到的结果竟然全部都是NaN。其缘由在于,VRM的地网络名称与负载的地网络名称并不一致 ,举例来说吧 ,VRM的地被称作GND ,而负载的地却被叫做GND_PWR。针对此情况的解决办法是 ,将地网络统一重新命名为GND ,并且在回路当中添加一个0V电压源用以作为参考。

    步骤3 运行PDN阻抗扫频分析

    点击Simulation,然后选择PDN Impedance,将扫频范围设置为从1MHz至1GHz,步长选择为100点,采用对数刻度。再点击Run,查看阻抗曲线是否在整个过程中都低于20mΩ。将高频报错“Convergence failed at 100MHz”完整解决的流程是这样的,首先要去查看电容模型是不是带有ESR/ESL参数,然后前往官网下载原厂SPICE模型进行替换,接着在仿真设置当中把最大迭代次数由100提升至500,同时将收敛容差从1e-3放宽为5e-3。

    【新手避坑】

    跑完曲线,在200MHz处出现尖峰,该尖峰超过50mΩ,其核心原因在于,电容布局间距过大进而产生反谐振。需快速修正,将100nF电容打散,每两个电容之间的间距控制在2mm以内,在参考平面挖空区域补上至少4个过孔进行缝合。

    如果完成了上述三步,那么绝大多数低频DC – DC电源的PDN问题便能够得到解决。然而,此方法并不适用于射频功放或微波频段(大于2GHz)的情况,在那些场景之中致使寄生参数占据主导地位,所以需要改用3D EM仿真,比如ANSYS HFSS。要是你的板子频率超过了500MHz,那么建议直接采用混合求解器。你在调试PDN的时候遇到过哪一种奇葩报错呢?在评论区发布出来一起剖析,顺便点个赞让更多的硬件兄弟能够少走弯路。

  • 高速电路原理:实测阻抗匹配3步解决信号反射

    实测Cadence Sigrity 2023的是本人,踩过50欧姆微带线反射超标这个坑,新手只要跟着步骤一步步去操作,便能轻松避开这类常见问题。

    1 精确计算层叠结构与阻抗值

    开启Stackup Editor,开展8层板的设置操作,施以FR4材料的分配(其中Er等于4.2)。于Prepeg层当中放入厚度为4mil,目标阻抗为50Ω的设置,软件依据1oz铜厚自动算出6mil的线宽。将6mil推举为最优数值,原因在于依据实际测量该线宽情况下反射系数小于5%,且对损耗与布线密度进行了兼顾。

    【新手躲开坑洼】,平常会出现报错“Impedance not matching”,关键缘由忘掉了阻焊层所带来的影响。迅速解决的办法是:于Impedance Calculator里勾选“Include Solder Mask”,并且手动填进阻焊厚度0.5mil,再次进行计算便可达成匹配。

    2 两种端接方案对比与选择

    于PCB Editor之中,选中高速信号线,接着右键点击Properties选取,勾选“Add Series Termination”而后设置22Ω串联电阻;又或者选择“Add Parallel Termination”并接驳到VTT。串联端接的功耗较低,适宜用于点对点的情况;并联端接的匹配更为彻底,适用于DDR多点总线场景。高速DDR4地址线建议选择并联方式,原因在于其能够吸收多次反射。

    对于新手而言的避坑提示,常见的错误情形是,将用于处理串接的电阻放置在了起着接收作用的一端,而正确的放置位置应当是靠近负责驱动功能的一端,而且还存在并联电阻数值计算出现错误的情况。实现快速解决问题的作法是,先对IBIS模型输出的阻抗Ro进行测量,然后得到串接电阻应该等于50减去Ro这个数值,对于并联电阻则直接选取50Ω,此数值要与Zo保持一致。

    3 解决反射超标的完整流程

    运行Sigrity SystemSI,将PCB以及IBIS模型进行导入,设置PRBS 10Gbps的激励,执行TDR仿真。针对高频报错“Reflection exceeding 15% at U1 pin”存在一站式流程:首先要查找出现阻抗突变的位置点(此即为过孔),于Via Designer之中把反焊盘的直径从20mil扩展至24mil;接着针对每2个信号过孔添加1个地过孔;最后再次运行仿真进行验证。

    【新手需防入坑】好多人曾对过孔残桩有所忽视,致使反射仍然不达标。绝对要设定背钻深度直至相邻层(好比是从L1钻至于L3),且于Manufacturing规则里开启“Backdrill”选项。

    此类方法对于低于一百兆赫兹的模拟电路或者功率回路并不适用,原因在于反射所产生的影响能够被忽略不计。可供替代的方案情形为:低速情况下的信号直接通过手动方式进行绕线匹配,并不需要对阻抗进行严格把控。在你实际测量的过程当中有没有碰到过人更加隐蔽一些的反射方面的问题呢?欢迎在评论区域进行分享,点赞能够让更多的工程师在工作过程当中少走一些弯路。

  • PCB设计标准 新手避坑:线宽孔距拐角三大硬核步骤

    亲手进行了 Altium Designer 22.6.1 的实际测试,遭遇过因线宽设置过低致使工厂直接拒绝接受的情况,对于新手而言,依照步骤逐一开展操作,便能够轻易躲开这类普遍存在的问题。

    PCB设计线宽该设多少

    首先,将对应程序进行启动,之后就需要按照特定的操作路径来把具体的规则加以打开。这个特定的规则就是约束设置,要通过点击菜单栏里的【Design】选项,然后再点击其中的【Rules】选项,此操作有着对应的快捷键,也就是DR。完成这一操作流程后,会进入到一个新的页面区域,也就是【Routing】选项里面的【Width】板块,在这里要创建一个全新的规则。创建规则的过程中,有一系列具体参数需要进行设置,其中最小线宽的明确数值设定为0.25mm,最大线宽的明确数值设定为2.0mm,首选线宽的明确数值则设定为0.3mm。这个0.25毫米是最优作为推选的数值,低于它好多小厂蚀刻的良品比率会急剧下降,实际测量0.2毫米的线宽在批量生产的板子上存在超过15%的线路断开的风险。

    对于新手而言要避开的坑,常见的报错呈现为“Clearance Constraint Violation”以绿色进行高亮显示,其核心的原因在于没有关闭实时DRC检测,或者规则的优先级没有调整正确。解决的办法是,通过按快捷键T+D进入到在线DRC设置之中,勾选“Batch Mode”而非“Online Mode”,之后按照优先级将Width规则拖动到最上面。

    孔到线距离留多宽

    第二步:把孔壁到相邻走线的间距强制设为这样一个数值,进到【Design】这个特定区域,再点选【Rules】这个选项,接着前往【Electrical】这个分类,然后找到【Clearance】,在这里面建立全新的一个间距规则,这个数值是0.254mm(10mil)。单独设置内层孔环宽度为0.2mm,,该项设置是遵循IPC – 2221标准里B2级板材所对应的实测安全阈值。

    【新手需防的状况要点提示】众多批量参与作业的板厂所反馈得来带有较高频次去被提及的问题,乃是过孔以及走线二者之间距离太过相近,进而就致使钻孔位点发生偏移状态之后产生短路情况。这其呈现出来的表现情形为,运用飞针进行测试时并不能够顺利通过,而且孔的边缘位置显现出发黑发暗的状况。针对于此所具备的解决办法是:于【印制电路板线路板面板】 – 【过孔】这个范畴之内,将所有过孔进行批量选择使其同时被选中,而后点击右键选择【操作动作】 – 【泪滴】这项操作去添加上泪滴,眼泪模样的泪滴长度设定为0.5毫米,宽度相应设定为0.3毫米,如此这般的操作能够在物理层面上增加安全的多余计量。

    两种走线拐角方案对比

    第三步:对走线拐角模式予以调整,于【Preferences】-【PCB Editor】-【Interactive Routing】之中对拐角样式作出修改。45度角加上圆弧过渡适宜1GHz以下的数字电路,其阻抗突变较小;纯粹的45度角适宜模拟音频或者大电流走线,加工最为快速,然而会在拐角处产生微小的阻抗反射。必须在高频射频板的情况下选择前者,对于普通控制板而言,选择后者能够降低布线时间,且降低幅度为百分之二十。

    有一个新手需要避开的坑,那就是最坑人的报错,是出现“Un-Routed Net Constraint”这样的提示,意思是线没有连接完,然而在图上看起来却都已经连接了。其原因在于拐角的地方存在极短的不闭合线段,这种不闭合线段小于0.01mm。解决的办法是,先按Ctrl+A进行全选,再点击【Tools】,接着点击【Design Rule Check】,然后点击【Run】,之后在Report里定位到坐标,最后按Shift+S切换到单层模式,放大后删除残段。

    报错完整解决流程

    如果您碰到了“Broken Net Constraint”频繁出现报错的情况,不要慌张。处理该问题有一套一站式流程:首先,您需要按下R键和B键,以此来重建所有的铺铜;然后,您要按下T键和R键,再次运行规则检查。寻得报错之处后,借由【Edit】-【Move】-【Drag Vertex】操作,拖动拐点以便截断原来的线,重新连接后凭借按M和G来重置走线的几何形状。于【File】-【Fabrication Outputs】-【Gerber Files】领域,于最后阶段,勾选以2:5格式予以输出,将精度设定为±0.005mm,如此这般,方可经由板厂审核无误。

    刚柔结合板或者埋盲孔设计,本方法并不适用,这类板子需要单独设置机械层约束。简易的替代方案是,直接通过【File】-【Fabrication Outputs】-【NC Drill】导出钻孔文件,发给板厂,让他们用CAM350对你做间距修正,前提是你的设计余量在0.05mm以内。

    你于画板过程中,有没有因过孔与线距过于接近,而被工厂退回订单呢?在评论区交流一下你所遭遇过的坑洼情况,若点赞数量超过五百,我便继续撰写关于埋盲孔的Gerber输出时的避坑指南