└── README.md /README.md: -------------------------------------------------------------------------------- 1 | # Digital_IC_Backend_Interview 数字后端面试题精选(附参考答案) 2 | A collection of possible interview questions for ASIC PD position 3 | 4 | 5 | --- 6 | 7 | 8 | # 推荐一个Youtube博主,印度哥,没字幕,听懂可能有点困难,但讲的挺好的 9 | 10 | 11 | 12 | 13 | # 1.setup和hold time、transition time的概念; 14 | 15 | 16 | 17 | # 2.跨时钟域信号传输的方法; 18 | 19 | 20 | 21 | 22 | # 3.STA中Constraints有哪些内容,是怎么实现的; 23 | 24 | 25 | 26 | # 4.为什么要设置case analysis? 27 | 28 | 29 | 30 | 31 | # 5.简单介绍下clock gating的概念。 32 | 33 | 34 | 35 | 36 | 37 | # 6.设计过程中,如何处理跨时钟域的问题。 38 | 39 | 40 | 41 | 42 | # 7.简单介绍下ASIC设计从前端到后端的流程,以及每个阶段用到的EDA工具。 43 | 44 | 45 | 46 | # 8.简单介绍下你对逻辑综合的理解。 47 | 48 | 49 | 50 | # 9.STA中,clock skew的概念,如何消除skew? 51 | 52 | 53 | 54 | (1)通过在时钟树上使用lvt cell、中驱动cell或者插inverter增加驱动等方式使得clk路径延时降低,可以减小delay的variations,进而降低clock间的skew; 55 | 56 | (2)使用高层金属对时钟布线; 57 | 58 | (3)减少时钟树的non-common part; 59 | 60 | (3)采用inv,而不是buffer,因为缩短时钟树长度有利于减少skew。 61 | 62 | # 10.综合过程中的clock是怎么定义的? 63 | 64 | 65 | 66 | 67 | 68 | # 11.如果综合中timing比较差,有哪些优化的方法? 69 | 70 | 71 | 72 | 73 | 74 | # 12.实际的综合或STA中,skew如何影响setup和hold检查?有setup/hold violation的话如何调skew? 75 | 76 | 77 | 78 | # 13.为什么要用clock uncertainty?skew和uncertainty有关系吗? 79 | 80 | clock skew和clock uncertainty基本上没有任何关系。uncertainty是指jitter、ocv等无法直接计算的情况,需要在设置uncertainty时人为指定,而skew在CTS之后是可以通过计算得到的,因此不算是uncertainty。综合中在set_clock_uncertainty时考虑skew只是为了模拟/预估这一部分skew,避免pre-CTS过于乐观。 81 | 82 | 【总结】clock uncertainty在PD不同阶段的设置 83 | 84 | (1)pre-CTS:由于没有clock tree skew,clock uncertainty = PLL jitter + skew + margin 85 | 86 | (2)post-CTS:clock skew通过clock tree确定,clock uncertainty中没有skew 87 | 88 | # 14.什么是OCV?什么要在综合或者STA过程中做OCV?业界中有哪些种类的OCV? 89 | 90 | 91 | 92 | 93 | # 15.如何消除Setup/Hold violation? 如果只能选择一个消除,消除哪个? 94 | 95 | 96 | 97 | 98 | # 16.什么是CPPR(CRPR)?为什么OCV需要CPPR? 99 | 100 | 101 | 102 | 103 | 104 | # 17.时钟树上使用inverter和buffer的区别? 105 | 106 | 107 | 108 | # 18.什么是Power Gating?如何实现Power Gating? 109 | 110 | 111 | 112 | # 19.什么是亚稳态?如何避免亚稳态? 113 | 114 | 115 | 116 | # 20.什么是CrossTalk?如何减小CrossTalk? 117 | 118 | 119 | 120 | # 21.Clock Buffer和普通Buffer的区别是什么? 121 | 122 | 123 | 124 | # 22.同步逻辑和异步逻辑的区别? 125 | 126 | 127 | 128 | # 23.NLDM和CSS听说过吗? 129 | 130 | 131 | --------------------------------------------------------------------------------