数字IC笔试题 ——Cadence前端设计2018
![](https://i-blog.csdnimg.cn/blog_migrate/def2b42e0a46177c23e0da79da71482a.png)
第二题:SV知识
bit可以用于合并数组的定义,合并数组的存储都是连续的,所以只能定义bit类型;
![](https://i-blog.csdnimg.cn/blog_migrate/6b06ec0159f5c01ad9fff01462ab7ebf.png)
补充知识1-fork join/join_any/join_none
https://blog.csdn.net/zhajio/article/details/79529652
补充知识2-DFT
![](https://i-blog.csdnimg.cn/blog_migrate/acef4bc410667e7b56171d874ae8a687.png)
还没涉及
比较好的题
![](https://i-blog.csdnimg.cn/blog_migrate/9a040d76489144d772ec06fe1d061b3f.png)
![](https://i-blog.csdnimg.cn/blog_migrate/02e8016ce0e0dc01eb73d21fcdea6933.png)
![](https://i-blog.csdnimg.cn/blog_migrate/a689817f706ca9ad941a7e06b0800ba6.png)
对于setup而言:
本级的clk_skew延时是有利的,(可以扩大design margin)
本级之前的comb逻辑延迟和clk_skew是不利的。
有利是指可以放宽要求,也就是往接近clk上升沿走。对于setup而言,最差情况是margin=0的点,也就是数据到达D端的时候刚好满足setup条件,此时本级skew可以预留出1ns的margin,所以setup可以放宽1ns(+)。相反,comb延迟使得数据往后推迟2ns,setup需要变紧(-)。
所以setup’ = setup + 1 - 2
对于hold而言:
本级的clk_skew是不利的(缩小了design margin)
本级之前的comb延时和clk_skew是有利的。
对于hold而言,最差情况是margin=0的点,也就是数据在上升沿后hold时间刚好改变,此时本级skew会使数据等效地提前1ns,也就是hold的检查点会提前1ns,所以要不发生violation,hold需要变紧1ns(+)。相反,comb延迟使得数据往后推迟2ns,hold可以放宽2ns(-)。
所以hold’ = hold + 1 - 2
对于这种DFF的输出还会接回到自己的例子,因为这条path的clk其实是同一个clk,所以clk skew = 0。
![](https://i-blog.csdnimg.cn/blog_migrate/f790609009a3d6b7c2c9efedebea7ab4.png)
![](https://i-blog.csdnimg.cn/blog_migrate/12dfb401d45f3e7274df0571261afbc4.png)
</div><div><div></div></div>
<link href="https://csdnimg.cn/release/phoenix/mdeditor/markdown_views-ff98e99283.css" rel="stylesheet">
</div>