数字IC后端设计工程师面试真题·3(含参考答案)

  1. 芯片为什么需要采用纵横交错的走线方式?

    有效利用布线资源。
  2. CTS的目的是什么?怎么样是一个合格的clock tree?

    综合考虑,timing, latency, skew, clock面积,clock功耗,这些参数,得到一个合理的时钟树。
  3. 为什么时钟树需要平衡?不平衡的时钟树有什么缺点?

    不用回答得太复杂,应届生能回答出”balance的clock tree 对hold比较容 易满足已经可以” 面试官会继续问你,为什么hold比较容易满足?答不出的话就前功尽弃了。
  4. 为什么我们需要优先修复transition和cap?
    Transition和cap决定了标准单元的延迟,如果这两值有违例,timing值不精确。
  5. timing path根据路径,一般可以划分为哪几种?

    Timing Path根据起点和终点可以分为以下四种: 由Flip-Flop时钟输入端到Flip-Flop数据输入端,即reg2reg path 由主要输入到Flip-Flop数据输入,即in2reg path 由Flip-Flop时钟输入端到主要输出,即reg2out path 由主要输入到主要输出,即in2out pat
  6. 我们一般采用哪些驱动能力的cell去生长时钟树?为什么?

    取中等驱动能力,X8, X10,X12左右,驱动太弱的cell容易造成slew violation,级数会比较多,clock tree会做太长;驱动能力太强的cell,会 造成较多fanout,容易出现EM问题,而且功耗比较大。
  7. 时钟树走线和普通信号线有什么区别?

    时钟树通常采用中高层走线,采用NDR走线,双倍宽度,双倍spacing,使 用shielding 普通信号线低层走线较多,一般不采用NDR。
  8. 为什么采用double width, double spacing的时钟树走线方式?

    Double width: 避免EM效应 Double spacing: 避免串扰。
  9. 碰到routing congestion该怎么办?

    route阶段的话我们不应该再看congestion了,因为已 经有真实的route结果,我们应该直接关注DRC结果。 Congestion只是初期衡量最后绕线情况的一个指标。如果初期congestion 很严重,可以查看一下congestion出现的区域。 Memory附近: memory的间距留的太窄,或者缝里面放了太多组合逻辑, 试着加一下blockage Standard cell附近: 查看该区域是否density很高,或者有一些pin很多的 cell,比如AOI, OAI这种,可以尝试加cell padding或者partial blockage.
  10. setup和hold violation该优先修复哪种,为什么? 

    Timing ECO过程中,先修复setup,再修复hold。 如果最后setup实在修不掉,在项目允许的情况下,把hold先修复以后, setup可以通过降频修复。
  11. 综合主要做了什么事情?说一下具体综合的流程!
    综合主要是将前端RTL代码,映射到具体的单元库上,然后转换成后端设计 使用的门级网表 大致流程: 读库 => 读RTL => 读约束 => 综合。
  12. DFF哪些pin需要做timing检查?

    D, SI pin: setup, hold检查 clock pin: min pulse width检查 Reset pin: recovery/removal检查。
  13. clock latency的概念,什么情况下需要设置?

    时钟树的传播延迟。一般情况下不需要设置,只有在某些clock上不想平衡它们,但是要满足他 们之间的时序要求时,才会设置。

    😎 更多IC岗笔面真题资源会陆续分享给大家的!整理不易!点个👍
#面试##内推##春招##面经##芯片设计工程师##深度学习#
全部评论
这是哪个公司的面试题
点赞 回复 分享
发布于 2022-04-06 21:01

相关推荐

头顶尖尖的程序员:我是26届的不太懂,25届不应该是找的正式工作吗?为什么还在找实习?大四还实习的话是为了能转正的的岗位吗
点赞 评论 收藏
分享
评论
10
59
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务