V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
sennes
V2EX  ›  硬件

"PCB 自动布线"能否达到什么程度?

  •  
  •   sennes · 2016-03-23 19:12:15 +08:00 · 4811 次点击
    这是一个创建于 2962 天前的主题,其中的信息可能已经有所发展或是发生改变。

    先谢谢大家

    个人观点是,在做硬件的流程中,最让工程师头疼的就是原理图设计和 PCB layout

    关于软件自动 layout 零碎的一些信息:

    1. 大部分的 layout 工具自动布线的效果都很差,个人感觉无法比拟人手工布线的质量。
    2. 手工布线非常浪费工程师的精力和时间。
    3. 把 PCB 外包给别人 lay 是很贵的(我这边找人 lay 要 4 块钱一个点)。
    4. layout 有规律可循,有规则制约。
    5. 网表导出后,只要确定布局和板框,其他点与点之间的联系是确定的。
    6. 布线感觉不需要"创作",是有目标、有规则的"任务"。个人感觉挺适合计算机来完成?
    7. 目前 lay 板有工具协助效率确实是提高了,但是大部分走线始终还是得自己拉。
    8. 经验不多,我一天也就大概能拉 50 条线。。。

    我想知道的信息:

    1. 目前自动布线能达到什么样的程度? (低速板之类的不考虑,至少也有 BGA 芯片、 DDR 等的高速电路)
    2. 大家觉得在"自动布线"这个领域,计算机未来能做到怎样的程度?
    3. 人工 layout 既然是一件挺费钱和精力的事情,现在有没有什么团队在研究相关的解决方案呢?
    4. 制约这项工作的主要因素是因为算力和算法不完善,还是没有人重视这个方向(靠机器解放 layout 工程师的部分工作量)
    5. 其实我就是懒。

    我问题还是挺多的,相关的东西大家可以随意说说,不必太严肃,我就是了解一下 :)

    15 条回复    2020-10-03 01:25:53 +08:00
    JamesRuan
        1
    JamesRuan  
       2016-03-23 19:52:56 +08:00   ❤️ 1
    Cadence 这类 EDA 工具基本代表了目前最高水平,人家考虑的难点都是逻辑严重和时序分析, PCB Layout 是基础功能。
    JamesRuan
        2
    JamesRuan  
       2016-03-23 19:54:02 +08:00   ❤️ 1
    Errata :逻辑严重->逻辑验证
    theoractice
        3
    theoractice  
       2016-03-23 20:14:19 +08:00
    yin wang 多年前似乎搞过这个?
    是的,商业软件基本代表了目前最高水平——也就那样。
    sophymax
        4
    sophymax  
       2016-03-23 21:05:38 +08:00
    大学时有同学布线布的好,找到了对口工作,现在还干得好好的,看样子短期内是没办法取代人了
    jyf007
        5
    jyf007  
       2016-03-23 23:45:59 +08:00 via Android
    前司如果是自动布线的,我就留下来了。
    jyf007
        6
    jyf007  
       2016-03-23 23:47:13 +08:00 via Android   ❤️ 1
    另外有玻璃天花板,我啥也没办法说什么决定性的结论。
    green15
        7
    green15  
       2016-03-24 00:32:48 +08:00
    没用过 EDA 相关软件,不过以前看过一篇不明真假的文章(吐槽),说是 AMD 为了节省成本,前期采用软件自动化布线(?)太过了,后期人工优化到爆肝~~
    就我接触的一些工业软件 /模块插件,各大厂商一直都在致力研究设计自动化、简单化。
    随着机器学习的发展,取代人类是不可避免的,包括一直的说创新、艺术。
    xJogger
        8
    xJogger  
       2016-03-24 08:32:45 +08:00 via Android
    歪个题,题目似乎是病句?
    : P
    sa2852
        9
    sa2852  
       2016-03-24 09:10:21 +08:00
    再复杂的板子它也能给你画通,但是要画好,我认为在短时间内也不可能实现。

    最佳的方法是,先手工布局,手工画部分敏感走线,设置一个合理的规则,

    剩下的就可以交给自动布线了。
    est
        10
    est  
       2016-03-24 09:21:58 +08:00
    @sa2852 不是还有最后一招 飞线 么。。。
    sennes
        11
    sennes  
    OP
       2016-03-24 09:57:52 +08:00   ❤️ 1
    @JamesRuan Cadence 的这一套流程确实是现在业界比较常用的。我用起来觉得也比其他工具要舒服。但即使是他们,在自动布线这一块也没有什么特别的进展。


    @sophymax 我也觉得短时间内不能取代人工,不过挺希望有人能往这边研究。因为你想一个板要 lay 一两周确实是长的一个周期。


    @jyf007 哈哈,个人觉得要是有自动布线的 tool ,聘请负责跟踪硬件这块的工程师就不需要太高的门槛了。


    @green15 在我的经验看来,如果一个项目全部用机器 layout 然后手工调整。我宁愿自己一根根重新画(因为我没法理解机器布线的逻辑。)


    @xJogger sorry 因为题目当时较长,发布前修改了标题没重新读一遍,于是造成了病句。


    @sa2852 仅仅是走通的话,大部分的 tool 确实都能实现。不过既然您说了能设计合理的规则,为何不能设置全局的规则呢? 我在想是不是全局规则对计算机来说太难满足? (如果设置了全局的规则+布通 = 板子 lay 好了)
    另外,机器布线一般不够美观,但是不美观是不是就不符合规则呢? 有没有可能是我们觉得机器走线不好看就是没画好??


    @est 飞线这项技能,做 demo 的时候很好使。一旦批量的板子出问题要飞线,那就真的宁愿改版重做了。
    sennes
        12
    sennes  
    OP
       2016-03-24 09:59:59 +08:00
    其实我在想的是
    有没有可能通过机器分析手工 layout 的文件,来建立一些定式,结合用户设定的规则来完成自动化布线。说高大上一点就是那些所谓的云计算、机器学习、神经网络啥的。
    sa2852
        13
    sa2852  
       2016-03-24 10:20:16 +08:00
    @sennes 全局规则?是否可以理解为通用规则? 但你是做数码产品的,我是做电力电子的,他是做射频电子的,不同的产品,侧重都不一样,要设置一个通用的规则是非常困难的。

    美观与否,这是人的审美标准,是在不影响性能的情况下才考虑的,即使人工布线的时候也是如此。

    但 PCB 布线又不是走通就 OK 的, PCB 也算是产品设计的一部分,尤其是射频电子类,每一段走线都需要当成一个模型考虑,都是设计的一部分。
    green15
        14
    green15  
       2016-03-24 10:54:06 +08:00 via Android
    @sennes 我倒觉得挺好理解,根据软件设计原理,这种布线满足于能用且不出大问题,至于效率好用好看就不是最优先考虑范围。某个意义上,这就能取代很多重复性工作,也避免很多人为大意的 bug 。科技的进步,让像学生哥也能通过鼠标点点点,完成一些以前需要经验丰富的工程师做的工作。

    和基友聊天,做设计只要找到规律,合适的反馈修正,这就可以像叠积木一样,单调而重复,没有说什么是只有人类才能做的工作。
    qgb
        15
    qgb  
       2020-10-03 01:25:53 +08:00
    pcb 自动布线

    设计规则检查(英語:Design rule checking, DRC )是电子设计自动化的一个重要组成部分,它决定了指定集成电路芯片的物理版图是否满足推荐的参数要求
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2377 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 12:26 · PVG 20:26 · LAX 05:26 · JFK 08:26
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.