芯学长 | 掌握芯资讯,引领芯未来

您当前所在位置:首页 > 芯片设计 > 数字IC后端

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

发布时间:2023-06-02来源:知乎雨人 0

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上不想平衡它们,但是要满足他 们之间的时序要求时,才会设置。

【免责声明】:本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。

文章评价

-   全部 0 条 我要点评

有疑惑?
在线客服帮您
029-81122100

立即咨询 >