您当前的位置: 首页 > 

耐心的小黑

暂无认证

  • 4浏览

    0关注

    323博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

数字IC秋招---笔试记录

耐心的小黑 发布时间:2022-04-09 15:44:52 ,浏览量:4

2022年7月更新!!!

1、组合逻辑电路的冒险现象是由于()引起的?

在这里插入图片描述

2、芯片制造中,工艺节点28nm,12nm,7nm的含义?

?

3、哈佛结构和冯诺依曼结构?

https://blog.csdn.net/mahoon411/article/details/119078925

在这里插入图片描述

4、华为2021数字IC笔试题:异或门最少使用几个2选1 mux?(链接可点)

在这里插入图片描述

5、有符号数乘加位宽计算?

答案:7、9?

在这里插入图片描述

6、fifo深度计算?

第一种情况:写600个数据需要600个输入cycle,在这期间一直在读数据,这段时间为1/A * 600。在这段时间内读出的数据个数,也即读cycle个数是,1/A * 600 * 0.6A = 360,因此最小深度是240。 第二种情况:考虑到可能刚好前1000个cycle的后600个cycle写数据,后1000个cycle的前600个cycle写数据,那么就是一次写1200个数据。同理可得,最小深度是1/A * 1200 - 1/A * 1200 * 0.6A = 480。

在这里插入图片描述

2022年4月更新!!!

1、如果在多个initial里面并行的在同一时刻对同一个变量进行赋值,当#数量相同时,就是下面的initial块起作用,否则就是#数量多的起作用。例如:左图在20时刻,b = 10;右图在20时刻,b = 20。在这里插入图片描述 2、写一个N倍频的仿真模型。

在这里插入图片描述

3、功能覆盖率和代码覆盖率

https://zhuanlan.zhihu.com/p/240126362

4、verilog中的二等号在数据中有不确定的值时会返回x,三等号则要完全相等才返回1,否则返回0。 5、task和function
  • task可以包含task和function,function只能包含function。
  • task和function都不能在过程语句中被定义,并且不能包含always和initial等引导的过程语句。
  • task有输入输出,function没有常规意义上的输出端口。两者都可以在过程语句中被调用,后者还可以在连续赋值语句中被调用,因为它有返回值。
  • function不能消耗仿真时间;task可以消耗仿真时间;比如function不能带有#100的时延语句、不能有@(posedge clk)、不能有wait(ready)的阻塞语句。
  • 要想可综合,task和function内部必须是组合逻辑。
6、一批IC样品在测试中发现有setup或者hold时序问题,现取A,B,C,D四种样品进行测试。A降温后停止工作,则可能是(setup(40nm以下工艺)/(hold(40nm以上工艺))问题。B升温后停止工作,则可能是(hold(40nm以下工艺)/(setup(40nm以上工艺))问题。C降压后停止工作,则可能是(setup)问题。D升压后停止工作,则可能是(hold)问题。

解析:温度和电压对应到管子行为上就是对于单个管子电流的影响。这里注意温度这个选项。升温会使载流子速率降低,但是相应的也会使Vth降低。这其实对于电流大小的影响是两个反方向的,要看谁占主导因素。对于40nm以上的工艺,而升温对于Vth的影响可以忽略,因此载流子速率对于电流的影响占主导因素,因此升温导致管子电流减少,充放电时延增加。而对于40nm以下的先进工艺,升温使Vth显著降低,因此Vth占主导,升温电流增大,时延减小。

对于电压,升压电流大时延小,降压电流小时延大。

setup问题是时序关键路径总时延过大,而hold问题则是总时延过小。

7、看波形写verilog代码

在这里插入图片描述

对in[1]进行上升沿检测,然后用检测结果替换in[1]之后赋值给pedge。

module pedge (
    input  clk,
    input  [7:0] in,
    output [7:0] pedge
    
);

wire in_1_pos;
reg in_1_r1,in_1_r2;
reg [7:0]pedge_r;
always @(posedge clk ) begin
    in_1_r1             
关注
打赏
1640088279
查看更多评论
0.0386s