charlie_zhang的个人空间 https://blog.eetop.cn/910906 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

关于小芯片与大芯片设计的一些思考

热度 37已有 1636 次阅读2022-4-14 15:43 |系统分类:芯片设计

   1. 如果一个应届生,进入大型团队中,如果不进行深入的思考,或者力度不够,仅仅被项目schedule推着向前走。

      - 参加架构讨论,似懂非懂,更多记住了结论,去实施

     - 主要精力在集成上,然后集成方案画图,各自review,最后实施集成,利用平台工具脚本,陷入其中不能自拔。

     - 过了很久,能够达到3个层次

      层次1:特别适应大厂的工作节奏,善于集成。利用各自工具去集成,对方案背后原因略知一二,对基本的RTL设计技巧略知一二

      层次2:仍然适应大厂节奏,但对方案理解较透彻,但无法高屋建瓴融汇贯通;由于写了较多的IP,且接触了成熟高效的做法,所以

                  对RTL技巧较熟练,由于较专一,比小厂熟练的RTL coder考虑更加全面细致,配合各种来自SoC的需求,例如test/debug/robust

                  等。

      层次3:RTL code达到层次2的水平后,没有多少上涨空间了,优势不在RTL code;而是对标准协议,架构的理解非常深刻,且融汇贯通; 

                  能够站在产品的高度往下看,对应用场景,架构方案设计权衡取舍游刃有余,支持芯片全周期(bring up,测试,量产,失效分析)

                  且对设计风险有敏感的认识,能够组织把控风险,这点对于芯片设计非常重要。


  2. 如果一个应届生,进入小型团队,小规模芯片中,也会有三个层次

      层次1:对于基础概念都不牢靠,似是而非例如对于基本的亚稳态都理解不到位,对异步处理理解也不透彻,只要涉及较subtle的东西

                  都模棱两可,工作处于应付状态,思想处于神游状态,仅能够支持一些基础简单的事务性工作。例如这个寄存器什么含义,去

                  查IP文档,费劲力气或者在外部支持下才解决一个常规问题,没有沉淀总结思考。

      层次2:基础概念理解透彻牢靠,负责IP的设计,负责SoC子系统的集成与设计,参与制定方案并实施,对其中的细节特别清楚,但由于

                  需求原因,设计完备性,各种corner考虑略显不足;由于复杂性不高,对鲁棒性设计高亮不够;由于不需要较复杂的协议,架构,

                  所以数字设计水平停留在这里,主要是因为需求不高。但由于接触了不少中后端,模拟,原型验证,实验室调试等工作,所及技能

                  树会很杂,缺乏highlevel思考统筹的能力,陷在底层解决具体问题,而这些问题在大厂里都是有专门的岗位去做,会把这些基础

                  工作都做到很完善,总之只有较少时间去专注数字相关的协议,架构设计;较多的精力去解决杂散的问题,每个问题阈值都不高,

                  但挡不住问题多,所以看起来很忙。

       层次3:在长时间处于层次2以后,意识到问题了,因为层次2无法保证芯片的质量,疲于应付,培养了几个骨干去对几个方向处理

                   常规性事务后,终于回头思考一个问题,如何保证小型芯片的成功,这个才是核心竞争力。

                   不是ACE总线,虚拟化,片上高速互联网络,最新的服务器架构。

                   那是什么呢?首先必须经过层次2,这样在各个方向上都积累了足够的经验,但是又能从中脱离出来,对如下问题深入研究

                  - 典型模拟设计的架构,typical电路结构所能达到PPA,不去纠结过于细节结构优化,但应对背后设计的基础理论相当熟悉,例如稳定性分析相位裕度

                    以此知道模拟需要做每种仿真的目的都清楚,并且很全面。例如LDO稳定性仿真时,知道除了外部电容外,整个数字cell寄生电容都是其负载。

                    即从high-level看待模拟设计。

                  - 在理解模拟之后,会结合要实现的具体需求,灵活的对模拟,数字,软件功能进行划分,使得设计复杂度,成本,功耗之间找到最佳平衡点。

                  - 从用户角度考虑问题,保证好用,充分和软件沟通,充分理解终端客户的使用习惯,例如调试器,一个健壮高效的调试器能够简化客户开发过程;

                    例如一个简单硬件功能的添加与软件配合后大大提升了效率;

                  - 一些简单IP feature烂熟于心,对他们的典型使用场景非常熟悉,不会因为数字设计简单而排斥,因为看到最终用户使用时发挥的巨大作用。

                    例如PWM,从数字设计角度会吐槽,这个有什么很简单嘛,一些小的feature一点难度也没有;但是这些feature客户用起来能够灵活的控制电机,灯...

                    各种东西,这其中会遇到很多具体细节的问题,正是依赖数字一行小小代码改动而实现的;

                  - 一些较复杂的IP,例如sdio/usb等,不会因为其相对复杂性而排斥,能够highlevel理解其协议的初衷与能力,能力是通过软硬件结合实现的,对这些IP出现问题

                    时能够给与工程师以指导,必要时亲自debug,快速解决问题。

                  - 站在品质测试角度思考问题,多站一会,体会其中的方法论哲学

                  - 对于ESD latchup等基础问题也要多揣摩思考,把半导体物理拿过来当作兴趣多看看

                  - 对于TO之前的关键阶段,多想问题:在数模混合仿真的基础上,每个人的checklist等通用方法学外,多想想是否还有什么漏洞,或者没有检查到的地方

                    和下面工程师反复推演,增加checklist item。

   总结:很明显大型数字芯片重在逻辑的复杂性,因为牵扯到复杂的协议与架构,要满足PRD,架构设计是很关键的,要平衡很多东西,包括团队的能力,已有经验的继承,

             可实现性,TO的窗口,PMIC的限制,一个优秀的架构师是在既有条件下平衡各方约束,给出一个解决方案,就类似要设计一款优秀的航空发动机,几十甚至上百个

             子系统之间相互牵扯关联,每个子系统目前积累水平高度不一,有的短时间都无法实现突破,但项目仍需要向前推进,在资源足够情况下,各个子系统多去研究摸索

              实验他们的工作规律,可行性方案尝试,等待稳定后集成进入系统,然后与其他子系统打磨,甚至再走回头路。

              可以深入去研究子系统,或者若干个子系统相互协调的优化控制,例如CPU,NoC,DDR,Camera之类;或者单纯对高速接口进行定制化研究,使得其性能在specific 

              需求下得到优化,而不是general东西。

             -----------------------------------------

             而小型芯片重在每个细节的打磨,虽有权衡,但相对独立。

             小型IP feature 准确定义,每行代码都细扣以降低成本且满足市场需要;模拟数字软件和合理划分,特别是他们之间耦合工作过程;

             关键模拟模块的成本性能优势,例如在成本控制下得到设计PVT偏差较小的OSC电路;一致性好,耐操且精度良好的ADC;

             低功耗的成功也很大程度依赖快速起振的OSC,弱LDO的工程校准能力,模拟模块standby/running 低功耗设计。


27

点赞

刚表态过的朋友 (27 人)

发表评论 评论 (1 个评论)

回复 flscut 2022-4-21 08:49
非常好 深度思考之后的好文章

facelist

您需要登录后才可以评论 登录 | 注册

  • 关注TA
  • 加好友
  • 联系TA
  • 0

    周排名
  • 0

    月排名
  • 5

    总排名
  • 0

    关注
  • 14

    粉丝
  • 3

    好友
  • 27

    获赞
  • 9

    评论
  • 1001

    访问数
关闭

站长推荐 上一条 /2 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网 ( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2022-5-20 11:55 , Processed in 0.033084 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
返回顶部