引言

最近收到诸多粉丝的来信,要求出一版《数字 IC 设计、FPGA 设计秋招笔试题精讲》,于是,通过几天几夜的加班加点,终于出了这一版《2021 华为海思秋招笔试题目、答案、解析》,以后每隔 7 天就会出好几套卷,助各位数字 IC 设计者斩获大厂的高薪 Offer!!!

PS:纯题目的 PDF 版本可联系博主获取~

单选题

1、影响芯片成本的主要因素是 Die Size 和封装,但电源、时钟等因素,特别是功耗对解决方案的成本影响较大,因此低成本设计需要兼顾低功耗设计:()

A. 错误

B. 正确

正确答案:B
详细解析:题目里已经说明了,“影响芯片成本的主要因素是 Die Size 和封装”,那么封装成本和什么有关呢,当然是散热了,功耗越大,散热装置要求越高,封装难度更大,成本要求更高,所以,功耗是和成本相关的。

2、reg [31:0] big_vect; 那么 big_vect[0+:8] 是多少?()

A. big_vect[0:7]

B. big_vect[7:0]

正确答案:B
详细解析:这道题不就是书上的内容嘛!需要对向量的抽取有着较深的掌握,对于抽取符号 +:,其左边 0 表示起始位置,其右边 8 表示向量抽取位宽或者 Length,然后定义的是从最高位到最低位,对应下来所以选择 B,A 只是干扰的

3、generate 语句中的循环控制变量应该定义为 integer 类型()

A. 错误

B. 正确

正确答案:B
详细解析:定义的类型是 genvar,有写过这个代码的应该都是了解的,for 才是 integer

4、o10 换算成十进制是多少?()

A. 8

B. 16

C. 10

D. 2

正确答案:A
详细解析:o07 表示 7,+1 就是进位了,即 o10 = 8

5、哪些情况下不会产生 Latch 电路?()

A. 组合逻辑中条件不全的 case 语句没有 default 赋值

B. 时序逻辑中 if 选择语句,没有 else 部分表达

C. 使用 if 选择语句的组合逻辑没有 else 部分表达

D. 使用 case 选择语句的组合逻辑没有 else 表达

正确答案:B
详细解析:等你入职就会经常用到 B 的这种写法,这是一种低功耗 CG 设计的写法,不会生成锁存器 Latch

6、关于类的构造函数,以下说法中正确的有()

A. 函数体中必须有 new 语句

B. 返回类型是 void 类型

C. 函数名与齐类名完全相同

D. 不能有形参

正确答案:C
详细解析:
A:类可以认为是用户定义的一种数据类型,类的显式定义有 new(),隐式定义无,new() 的作用是进行初始化,没有 new() 时,类默认为 null,A 错;
B:构造类可以没有返回值,也没有返回值类型,但是可以有参数(包括形参 int a),D 错;
C:类名与函数名一样,C 对;
D:返回值类型不一定是void,void用于有返回值的数据类型,用来取消返回值,B 错

7、中断指示寄存器由实时告警的状态触发,是只读寄存器。()

A. 错误

B. 正确

正确答案:B
详细解析:中断状态寄存器是只读寄存器,只有软件经过处理之后,消除了这种告警状态,硬件就会对其自动清零

8、下面的选项中关于宏定义的说法不正确的是?(   )
A. 宏定义文件最好放在一个文件中集中管理,防止出现不同项目需要修改为不同的宏定义值,但是却漏改了某些地方的情况出现。
B. 综合的时候,define 可以跨文件列表生效
C. 如果模块中有很多宏定义,在模块的文件列表最后需要 undef 掉使用的宏,防止和其他模块的宏定义冲突。
D. 仿真时如果出现宏定义冲突,后面的 define 值会覆盖前面的 define 值

正确答案:C
新芯设计:关于宏定义,可以找本书好好看看
这里 undef 宏定义的话,那么该宏定义就不生效了

9、在 systemverilog 中,函数(task)可以调用函数任务(function)。(   )
A. 错误                                 B. 正确

正确答案:B
详细解析:Function 不可以调用 Function 和 Task,反之,Task 可以调用 Function 和 Task

10、假设输入信号 X 位宽为 12bit,inA 位宽为 6 bit,inB 位宽为 17bit,实现 Y = X*inA + inB 功能,并要求不损失精度,那么输出信号 Y 位宽应不小于(   )?
A. 17bit                 B. 12bit                 C. 18bit                 D. 19bit

正确答案:D
详细解析:这是数值计算导致的位宽扩大
对于乘法,结果的位宽是二者之和,对于加法,结果的位宽是最大位宽加一,综上,12 + 6 + 1 = 19

11、reg [7:0] mem [1:256];initial $readmemh(“mem.data”,mem,128,1);对于mem行为正确的描述是(   )?
A. 从地址128开始,写到地址1
B. 从地址128开始,写1个地址
C. 从地址1开始,写128个地址

正确答案:A
详细解析:主要考察数组的定义和写法,这里,128 表示起始地址,1 表示最终地址

12、九进制数 16 与九进制数 27 相加的结果用九进制表示为(   )?
A. 45.0                 B. 46.0                 C. 43.0                 D. 44.0

正确答案:D
新芯设计:这种题目跟高考类似,实际用不到,但是考察答题者的应变能力
9 进制,那么 16 就是 10 + 6,这里的 10 表示 9,因此 16 就是 'd15,同理,27 就是 'd25,二者之和十进制是 'd40,转换成九进制就是 44

13、有关 DFT,以下说法不正确的是(   )?
A. scan 的设计规则,需保证时钟复位可控             
B. ECO 时无须关注 DFT 网表
C. 主流的 scan 方式采用 MUX-DFF              
D. MBIST 指的是对 memory 的 BIST 测试

正确答案:B
详细解析:ECO 表示 RTL Final 之后,在后端综合和物理实现流程中对电路进行修改,DFT 网表也是需要关注的

14、对芯片性能影响最大的三个因素是 PVT,分别是指?(   )
A. package,voltage,temperature
B. process,voltage,temperature
C. process,verification,temperature
D. process,voltage,test

正确答案:B
详细解析:
Process:制造工艺
Voltage:电压,电压越高,延时越小
Tempurature:温度,温度越高,延时越大

15、下面这段代码,说法错误的是(    )?
always @(posedge clk)begin
         din_dly <= din;
end
A. din_dly 用来当控制信号是安全的
B. din_dly不受复位影响
C. 数据寄存推荐这样的写法
D. din 的不定态会传递到 din_dly

正确答案:A
详细解析:这个考的还是有点奇怪的,信息给得不够全
B:这里没有复位信号的控制,那肯定不受复位的影响
C:数据的寄存可以这么写,不需要复位的控制,其实 SRAM 中数据也是没有复位的
D:肯定会传递的

17、关于功耗,以下描述不正确的是(    )
A. 改变芯片的供电电压和时钟频率都会对芯片功耗产生影响
B. 设计者需要关注平均功耗、峰值功耗和功耗跳变
C. 芯片的功耗会受实际信号的影响,所以功耗测试需要结合业务来开展
D. 对于可关断的模块,使用时钟门控即可降低功耗

正确答案:C
详细解析:芯片的功耗测试是内部的,跟外界的业务没有必然的关系,业务只是影响芯片的能耗

18、为实现占空比 50% 三分频时钟,下面描述的电路,正确的是(    )?
A. 用待分频时钟上升沿采样计数,产生占空比1/3的分频时钟A;用待分频时钟上升沿采样计数,产生1个占空比2/3的分频时钟;把A与B相或得到50%占空比时钟
B. 用待分频时钟上升沿采样计数,产生占空比1/3的分频时钟A;用待分频时钟下降沿采样计数,产生1个占空比1/3的分频时钟;把A与B相与得到50%占空比时钟
C. 用待分频时钟上升沿采样计数,产生占空比1/3的分频时钟A;用待分频时钟下降沿采样计数,产生1个占空比1/3的分频时钟;把A与B相或得到50%占空比时钟
D. 用待分频时钟上升沿采样计数,产生占空比1/3的分频时钟A;用待分频时钟上升沿采样计数,产生1个占空比2/3的分频时钟;把A与B相与得到50%占空比时钟

正确答案:B
详细解析:

19、关于冯诺依曼结构和哈佛结构的描述中,错误的是(     )?
A. 冯诺依曼接口中程序计数器负责提供程序执行所需要的地址
B. 哈佛结构中取指令和执行不能完全重叠
C. 冯诺依曼结构的计算机中数据和程序共用一个存储空间
D. 哈佛结构的计算机在一个机器周期内科同时获得指令和操作数

正确答案:B
详细解析:哈佛结构是数据和指令分开存储,通常指令存在 ROM,数据存在 RAM,其取值和执行是一可以同时发生的

20、状态机必须有1个缺省状态?(     )
A. 正确                                B. 错误

正确答案:A
详细解析:状态机必须有一个缺省状态,防止出现未知状态导致系统崩溃,同时也防止状态生成锁存器,就像 case 需要 default 一样

21、a1和a2的检查效果完全一样? (     )
property p1;
@(posedge clk) a|=>b|=>c;
endproperty
a1:assert property(p1);
property p2;
@(posedge clk) a##1 b##1 |->c;
endproperty
a2: assert property(p2);
A.正确                                B. 错误

正确答案:A
详细解析:

22、以下关于flase-path,正确的是(    )?
A. 一般模拟IP和系统的互联接口都可以设置为flase-path
B. 一般异步电路可以设置为flase-path
C. 一般异步复位可以设置为flase-path
D. 两个不同频率之间的接口一定可以设置为flase-path

正确答案:A
详细解析:

23、在 Verilog 中,比算数运算符 + 优先级高的是? (    )
A. &                         B. %                         C. >                         D. !==

正确答案:B
详细解析:其实优先级这种东西没必要考的,为了应付笔试还是背一背吧

24、有关功耗,以下说法不正确的是(    )?
A. 电压越大,工作频率越高,其动态功耗越高
B. 低功耗设计的目标就是采用各种优化技术和方法,在各个设计目标之间找到最佳的结合点
C. 设计层次越高,功耗优化所能达到的效果越好
D. 芯片单位面积的动态功耗和静态功耗随着工艺的发展呈下降趋势

正确答案:D
详细解析:随着工艺的提高,晶体管阈值减小,漏电流变大,静态功耗变大

25、generate for 循环语句中使用的标尺变量可定义为 integer?(    )
A. 错误                                 B. 正确

正确答案:A
详细解析:
generate for 使用的是 genvar,for 循环使用的才是 integer

26、在时钟上升沿时采样到start有效开始,两个时钟周期后,信号“a”连续或者间断地出现3次为高电平,紧接着信号“stop”在下一周期为高的是哪个?(    )
A. property p0;
@(posedge clk)$rose(start1) |-> ##2(a[=>3]) ##1 stop;
endproperty
a0:assert property(p0);
B. property p0;
@(posedge clk)$rose(start1) |-> ##2(a[*3]) ##1 stop;
endproperty
a0:assert property(p0);
C. property p0;
@(posedge clk)$rose(start1) |-> ##2(a[->3]) ##1 stop;
endproperty
a0:assert property(p0);
D. property p0;
@(posedge clk)$rose(start1) |-> ##2(a[=3]) ##1 stop;
endproperty
a0:assert property(p0);

正确答案:C
详细解析:

27、ASIC开发流程中,如下环节的先后顺序是?(   )
A. synthesis->P&R->RTL
B. RTL-> P&R-> synthesis
C. RTL-> synthesis-> P&R
D. synthesis-> RTL-> P&R

正确答案:C
新芯设计:基础知识
RTL 设计 -> 综合 -> 布局布线

28、以下关于 flase-path,正确的是(   )?
A. 一般模拟 IP 和系统的互联接口都可以设置为 flase-path
B. 一般异步电路可以设置为 flase-path
C. 一般异步复位可以设置为 flase-path
D. 两个不同频率之间的接口一定可以设置为 flase-path

正确答案:A
详细解析:

29、有关综合的说法,一下哪个选项是错误的?(   )
A. 综合网表可用于 EDA 功能仿真
B. 时序逻辑 always 语句中,if-else 如果 else 的分支缺乏,会综合成 latch
C. casez 是不可综合的
D. 相同的 RTL 代码,每次综合出来的网表可能是不一样的

正确答案:B
详细解析:
值得注意的是,禁止 casex,不推荐 casez,虽然不一定不可综合,但是 casex 把 x/z 视为 don't care,casez 把 z 视为 don't care

30、下面是一个什么电路(    )?
always @(posedge clk)begin
if(rst_n == 1’b0)
        a <= 2’b0;
else if (b>2’b0)
        a <= b;
end
A. 综合成 Latch

B. 带异步复位的 D 触发器

C. 组合逻辑

D. 带同步复位的 D 触发器

正确答案:D
详细解析:
这个是时序电路,不会综合成 Latch 的,很明显,这是同步复位电路

数字 IC 设计、FPGA 设计秋招笔试题目、答案、解析(2)2021 华为海思(上)相关推荐

  1. 【2022秋招】IC设计/FPGA开发秋招经历总结(2)——公司专题

    接上篇~ [2022秋招]IC设计/FPGA开发秋招经历总结_Richie_L的博客-CSDN博客 笔者的意向岗位是数字IC/FPGA,项目经历有FPGA相关,涉及信号处理以及单片机等.目前笔者的面试 ...

  2. 数字 IC 设计、FPGA 设计秋招笔试题目、答案、解析(1)2022 紫光展锐(上)

    引言 最近收到诸多粉丝的来信,要求出一版<数字 IC 设计.FPGA 设计秋招笔试题精讲>,于是,通过几天几夜的加班加点,终于出了这一版<2022 紫光展锐秋招笔试题目.答案.解析& ...

  3. 数字 IC 设计、FPGA 设计秋招笔试题目、答案、解析(3)2022 大疆创新数字芯片 B 卷

    引言 最近收到诸多粉丝的来信,要求出一版<数字 IC 设计.FPGA 设计秋招笔试题精讲>,于是,通过几天几夜的加班加点,终于出了这一版<2022 大疆创新秋招笔试题目.答案.解析& ...

  4. 艾为数字ic面试题_秋招 应聘FPGA/数字IC笔试面试经验分享(简单列举FPGA/数字IC公司)...

    1.自我介绍 我是一名二本院校的电气自动化专业的本科生,因为自己的爱好,喜欢FPGA开发,两年的开发经验,用FPGA开发并完成三个省级科研立项并获得一个A类竞赛国家一等奖.目前签约上海艾为电子,数字I ...

  5. 保研面试 算法题_GitHub - 13538899384/AlgorithmTest: 春招秋招笔试题目汇集

    秋招总结(Android开发工程师) 前言 从春招过渡秋招,连续半年时间都是努力奔波在求职路上,找工作确实非常累,无论是生理上还是心理上,记得我有次从广州跑过去深圳面完百度,接着面蘑菇街,再接着参加深 ...

  6. 华为2018春招笔试题目 字节流解析与长整数相乘

    基础知识杂烩: 字节也叫Byte,是计算机数据的基本存储单位, bit存储内容是0和1,bit是计算机中最小的储存单位 一个Byte是由8个bit组成,它是最小的可寻址单元 ,1个字节等于8位二进制. ...

  7. 数字 IC 设计、FPGA 设计秋招笔试题目、答案、解析(6)2022 紫光展锐数字芯片提前批笔试

    单选题(每题2分 共20题) 1.一个八位D/A转换器最小电压增量为0.01V,当输10011100时,输出电压为(   )V A. 1.28 B. 1.45 C. 1.54 D. 1.56 正确答案 ...

  8. 数字IC设计/FPGA工程师秋招面经

    秋招面经 秋招总结 迷茫期 低谷期 兴奋期 秋招面试常问问题 投递公司 学习的FPGA课程 总结 秋招总结 已经一个多月没更新博客了,并不是因为博主的只是储备量空了,而是因为我去准备秋招去了,接下来将 ...

  9. 【2022秋招】IC设计/FPGA开发秋招经历总结

    现在是2022年10月末,来给自己的秋招做一个阶段性总结.笔者正式的秋招是暑假出差回来之后开始的,7月15日至今,历时差不多3个月.当然前期也做了一些准备工作,比如简历制作和学校组织的模拟面试以及就业 ...

最新文章

  1. 企业上云需跨越哪些“雷区”?
  2. 雅特力415开发资料_雅特力在车用电子领域 AT32 MCU应用于ADAS环视系统
  3. 皮一皮:顶尖黑客技术,10秒教学,不会你打我!
  4. 关于父窗口获取跨域iframe子窗口中的元素
  5. Ubuntu使用技巧(一)
  6. 如何在Java中验证电话号码(正则表达式+ Google libphonenumber)
  7. Linux驱动开发必看详解神秘内核(完全转载)
  8. 128核云原生新力作:Ampere® Altra® Max性能参数公布,提升50%!
  9. linux block的含义,Block Prefetching含义
  10. k8s从入门到放弃--使用kubeadm快速安装kubernetes
  11. 设置eclipse中xml的默认编辑器、行数、xsd和dtd
  12. windows tcp ping 端口工具及使用方法
  13. 计算机专业sci二区难吗,二区的sci有多难?sci二区版面费一般多少?
  14. js+ajax编码三级联动
  15. (4)数仓建设-数据仓库命名规则
  16. 电脑基础知识精选(硬件篇)
  17. 用矿卡P106升级tensorflow深度学习服务器
  18. 1008:Maya Calendar
  19. 微软最爽命令行工具将成 Win11 默认终端
  20. 按键精灵 打开windows系统应用

热门文章

  1. 安卓手机键盘弹出导致h5页面错乱
  2. Android Studio 官方示例源码地址
  3. Call of Overloaded Function is ambiguous
  4. Designer Compiler2016与Prime Time2016安装过程的若干问题
  5. Linux下阅读中国知网下载的.caj文献
  6. shopex.4.85支持php5.3
  7. 现代C++教程笔记(下)
  8. ElementUI tree控件如何取得被选中的节点,以及父节点(即使没被全选)
  9. 【科普】优质变色镜片的选择
  10. 英语背单词有用吗_孩子英语不好,每天逼着Ta背单词到底有用吗?