大疆 IC设计校招笔试题目

前言
后面,打算整理下数字ic笔试面试题目,希望以此为出发点,补充知识点!
声明:个人觉得,学习期间,基本上都是知识的搬运,所以本博客所有内容都可以被大家引用!为了大家方便引用,博客内的图片都没有加博客的水印(除非不是自己的或者没看到)!
这篇文章会基于下面这些文件整理,并参考大疆IC设计校招笔试题讲解,希望大家有所了解。
本文的ppt,请点击链接下载!
大疆介绍
大疆官网:www.dji.com/cn
校园招聘

关于大疆
大疆以" The Future of Possible(未来无所不能)"为主旨理念,致力于成为全球飞行影像系统先驱。2006年创立至今,全球员工人数超过12,000人,客户遍布全球百余个国家和地区。

核心业务:
大疆从飞行控制系统起家,凭借稳定高效的消费级和专业级的航拍飞行平台为人熟知

工作地
总部位于中国深圳,在北京、上海、西安设有专业研发中心。

芯片开发工程师
工作职责
1.负责 media方向的需求规格分析、架构设计、定义、评估等工作
2.负责模块设计、编写、测试、文档撰写等工作
3.负责视频编码(H265/H266)、验证及架构设计
4.负责ISP/CNN编码、验证及架构设计
5.负责业界新技术、新标准、新工具和新方法学的研究及开发。
任职要求
1.硕士及以上学历,集成电路、微电子、计算机、通信等相关专业
2.3年以上工作经验,有数字图像处理经验者优先;
3.熟悉 System Verilog/UVM,熟悉Per/ Python等脚本语言
4.熟悉视频、图像、通讯等知识,深入理解其硬件架构
5.具有良好的团队合作精神,能独立思考和解决问題,有责任心和上进心。

一、笔试题|单选
01. 下列关于多 bit 数据跨时钟域的处理思路,错误的有
A. 发送方给出数据,接收方用本地时钟同步两拍再使用
B. 发送方把数据写到异步 fifo,接收方从异步 fifo 里读出
C. 对于连续变化的信号,发送方转为格雷码发送,接收方收到后再转为二进制
D. 发送方给出数据,发送方给出握手请求,接收方收到后回复,发送方撤销数据

解析:选A;
两级信号同步是处理单比特信号;
而多比特数据可以用异步 FIFO、格雷码、握手协议
02. 对 12.918 做无损定点化,需要的最小位宽是多少位,位宽选择11 位时的量化误差是多少
A. 12 位,0.0118
B. 13 位,0.0039
C. 12 位,0.0039
D. 13 位,0.0118

解析:选C
12 用二进制表示需要 4 位,若小数用 8 位表示 0.918/(2^(-8))=235.008,即 2352^(-8)=0.918,所以最少只要 12 位。当 11 位时,小数位宽只有7,0.918/(2^(-7))= 117.5040,1172^(-7)= 0.9141,0.918-0.9141=0.0039
3. 两个噪声源的均方根噪声幅度分别是 10uVrms,5uVrms;两个噪声源叠加后的均方根噪声幅度不可能是以下值中的哪个?
A. 11.18uVrms
B. 2uVrms
C. 5uVrms
D. 14uVrms

解析:B
4. 考虑如下的 4*4 的“二维仲裁器”,R00 到 R33 为输入,G00 到G33 为输出,N 和 W 也为输入,E 喝 S 也为输出,假设所有的逻辑门(包括非门/与门/反相器)延时都为 1ns,请问该电路得最大延迟为
A. 23ns
B. 25ns
C. 19ns
D. 21ns

解析:D;
最大延时通过三个门,通过7个仲裁器。3x7=21
5. 下图所示 4bit 右移位寄存器,0 时刻 ABCD 初始状态为 0111,请写出 5 个时刻后的 ABCD 输出

A.1010
B.0100
C.1101
D.1110

解析:B
0111->0011->0001->0000->1000->0100(第五次移位值)
6. 1 个 16K*8 位的存储器,其地址线和数据线总和是
A.46
B.17
C.48
D.22

解析:D
地址 16K = 24 * 210,数据 8 位,总共 4+10+8=22
7. 数字系统中,采用( )可以将减法运算转化成为加法运算
A.原码
B.BCD 码
C.ASII 码
D.补码

解析:D
补码是带符号的,支持正负数相加。
8. 关于流水线设计的理解,错误的是
A.流水线设计会消耗较多的组合逻辑资源
B.流水线设计会导致原有通路延时增加
C.流水线设计的思想,是使用面积换取速度
D.关键路径中插入流水线,能够提高系统时钟频率

解析:B
流水线是插入寄存器,使得 set up time 更容易满足,frequency 更大,速度更快,面积换速度。
9. 在 Verilog 语言中,如果 a=1’b1,b=3’b101,c=1’b0,则{a,{3 {c}},b}=
A.8’b10110101
B.7’b1011101
C.7’b1000101
D.8’b10001010

解析:C
10. 下列哪种逻辑门可以实现逻辑(A XOR B) OR (C AND D)?
A.NAND
B.NOR
C.XOR
D.INV

解析:A
(A XOR B) OR (C AND D)= AB’+A’B+CD
= ((AB’)’(A’B)’(CD)’)’
= ((A(BB)’)’((AA)’B)’(CD)’)’
点拨:与非门和或非门是通用门,可以直接选择?
11. 关于 DFT(design for test)的描述错误的是:
A.DFT 测试不能覆盖电路时序问题
B.DFT 测试过程通常会消耗到大量的动态功耗
C.DFT 的主要目的是发现芯片在生产过程中出现的缺陷
D.寄存器扫描链是一种常用的 DFT 技术

解析:A
DFT 的 at-speed test 会采用芯片 PLL 高速时钟进行寄存器的 setup 和 hold 测试
12. 下列哪个工具不具备逻辑综合功能
A.Synplify
B.Design Compiler
C.Modelsim
D.ISE

解析:C
Synplify、Synplify Pro 和 Synplify Premier 是 Synplicity(Synopsys公司于 2008 年收购了 Synplicity 公司)公司提供的专门针对 FPGA 和CPLD 实现的逻辑综合工具,Synplicity 的工具涵盖了可编程逻辑器件
(FPGAs、PLDs 和 CPLDs)的综合,验证,调试,物理综合及原型验证等领域。Xilinx ISE 14.7 是一款专业的电子设计套件,也是目前的最新版本,全面支持 win8 和 win8.1 系统。Xilinx ISE 为设计流程
的每一步都提供了直观的生产力增强工具,包括设计输入、仿真、综合、布局布线、生成 BIT 文件、配置以及在线调试等,功能非常强大。
13. 对芯片静态功耗影响最大是哪一项
A.工作模式
B.频率
C.负载
D.电压

解析:D
Pstat=Istat · VDD
14. 组合逻辑中的冒险是由于( )引起的
A.电路有多个输出
B.电路未达到最简
C.逻辑门类型不同
D.电路中的延时

解析:D
由于延时导致电平翻转不能同时进行
15. 指令系统中程序控制类指令的功能是
A.实现主存于 CPU 之间的数据传送
B.实现程序执行顺序的改变
C.实现算数和逻辑运算
D.实现堆栈操作

解析:B
程序控制类指令包括跳转指令,循环指令,子程序指令以及中断指令。这些指令可以控制程序的执行顺序
16. 在对信号做降采样前添加滤波器,一般需要添加什么样的滤波器,完成什么功能:
A.高通,抗周期延拓
B.高通,抗混叠滤波
C.低通,抗周期延拓
D.低通,抗混叠滤波

解析:D
为解决频率混叠,在对模拟信号进行离散化采集前,采用低通滤波器滤除高于 1/2 采样频率的频率成份。实际仪器设计中,这个低通滤波器的截止频率(fc) 为:截止频率(fc)= 采样频率(fz)/ 2.56 在进行动态信号测试中测量仪器必须具有抗混滤波功能。
17. 假 设 一 个 cycle 只 能 完 成 一 个 ( 8bits8bits ) 或 一 个(17bits+17bits+17bits)操作,那么设计 16bits16bits 乘法最少可以多少个 cycle 完成
A. 2 个 cycle
B. 4 个 cycle
C. 3 个 cycle
D. 1 个 cycle

解析:C
表示不懂
两个16位相乘(A×B),等于同时有两个“两个8位相乘”,消耗一个cycle;
A的低八位乘B的低八位产生一个16位的数,类似的,一共产生4个16位的数,这四个16位的数交错相加;
最低八位不变,最高八位不变,次高位三个八位数相加,次低位三个八位数相加,又消耗两个cycle。

18、 下面那一项不是负反馈电路?
A. 电压串联反馈
B. 电压并联反馈
C. 电容并联反馈
D. 电流串联反馈

解析:C
电压串联负反馈、电压并联负反馈、电流串联负反馈、电流并联负反馈
19. 如下关于“线与”逻辑的描述,错误的是:
A. 可以使用 OC 门来实现“线与”
B. “线与”逻辑必须在输出端加一个下拉电阻
C. “线与”逻辑是两个输出信号相连可以实现“与”的功能
D. 可以用 OD 门来实现“线与”

解析:B
OD:open-drain,源级开漏输出(开漏),OC:open-collector,集电极开路。OD 是对 mos 管而言,OC 是对双极型管而言,两者实现线与需外加上拉电阻
20. 下列说法正确的是:
A. 乘法器在 FPGA 上必须使用 DSP 资源
B. 基于 SRAM 的 FPGA 器件,每次上电后必须重新进行配置
C. FPGA 的 ChipScope 设置同样的采样深度,如果想一次观测
更长时间的信号波形,可以将采样时钟换成更高频率的时钟
D. Source clock latency 也属于 FPGA IO 接口约束

解析:B
二、笔试题|多选
1. 关于异步处理,一下说法正确的是:
A. 静态配置信号可以不做异步处理
B. 异步 FIFO 采用格雷码的原因是为了提高电路速度
C. 异步处理需要考虑发送和接收时钟之间的频率关系
D. 单比特信号打两拍后可以避免亚稳态的发生

解析:AC
避免?
2. 下列器件中那些是非易失性存储器
A. EPROM
B. DRAM
C. SRAM
D. Flash

解析:AD
非易失性存储器(英语:non-volatile memory,缩写为 NVM)是指当电流关掉后,所存储的数据不会消失的电脑存储器。非易失性存储器中,依存储器内的数据是否能在使用电脑时随时改写为标准,可分为二大类产品,即 ROM 和 Flash memory。
3. 关于 16 点的 FFT 描述真确的是
A. 每个蝶形算法需要一次复数加法
B. 每级有 8 个蝶形算法
C. 每个蝶形算法需要一次复数乘法
D. 共有 4 级分解

解析:BCD
完成一个蝶形运算需要一次复数乘法和两次复数加法
4. Verilog 语言中,下列那些语句不能被综合:
A. 用 generate 语句产生的代码
B. Initial 语句块
C. Always 语句块
D. Force 语句

解析:BD
5. 在不增加 pipeline 的情况下,如何解决一条 critical path 的 setup时序不满足的问题
A. 使用更先进工艺的工艺库
B. 在这条 path 上插入寄存器
C. 将部分组合逻辑电路搬移到前级 path 上
D. 降低时钟频率

解析:ACD
A 为综合工具 DC 常用方法,B 实际上就是 pipeline,C可减小传播延时和组合逻辑延时和建立时间,D 可加大时钟周期
6.下列关于代码覆盖率描述错误的是:
A. 代码覆盖率达到百分之一百说明代码 bug 已消除
B. 代码覆盖率包括功能覆盖率
C. 代码覆盖率包括条件覆盖率
D. 代码覆盖率包括语句覆盖率

解析:AB
覆盖率是衡量设计验证完成程度的指标,并不是验证的目的。任何覆盖率达到 100%并不代表芯片 bug 已消除。代码覆盖率包括行覆盖率、条件覆盖率、状态机覆盖率和翻转覆盖率。功能覆盖率反映开发出来的需要覆盖的功能点覆盖的比例。断言覆盖率测量断言被触发的频繁程度
7. C 程序中定义了一个全局数组,编译后此数组变量可能分配在下列哪个段
A. Text 段
B. Bss 段
C. Data 段
D. Stack 段

解析:BC
BSS 存放的是未初始化的全局变量;DATA 存放的是初始化的全局变量;堆栈用来存放局部变量;text段用来存放程序执行代码
8、 下面电路中属于时序电路的是?
A. 寄存器
B. 触发器
C. 译码器
D. 计数器

解析:ABD
译码器是组合逻辑电路
9. 下列优化方法中那些是速度优化方法:
A. 资源共享
B. 关键路径优化
C. 流水线
D. 串行化

解析:BC
面积优化——资源共享、串行化;速度优化——流水线、关键路径法,寄存器配平;
10. 对于 PSK 和 QAM 调制,以下哪些说法是正确的:
A. 对于 QAM 调制,星座图的每个点的幅度相等
B. 2PSK 和 4PSK 在归一化条件下,其幅值都是 1
C. 4-QAM 调制与 QPSK 的调制方式一致
D. 在同样信道条件下,16-QAM 的误码绿大于 4-QAM

解析:BCD
PSK 调制,星座图中的点都位于单位圆上,模相同(都为 1),只有相位不同。而QAM调制星座图中的点不再位于单位圆上,而是分布在复平面的一定范围内,各点如果模相同,则相位必不相同,如果相位相同则模必不相同。
三、笔试题|填空
1. write-back cache 和 write-through cache 的区别:(write-back)cache只在 cache line 被替代的时候把 cache 里的有效数据写下一级存储。
解析:Write-through(直写模式)在数据更新时,同时写入缓存 Cache和后端存储。此模式的优点是操作简单缺点是因为数据修改需要同时写入存储,数据写入速度较慢Write-back(回写模式)在数据更新时只写入缓存 Cache 只在数据被替换出缓存时,被修改的缓存数据才会被写到后端存储。此模式的优点是数据写入速度快,因为不需要写存储;缺点是一更新后的数据未被写入存储时出现系统掉电的情况,数据将无法找回
2. 正则表达式里可以使用计数符和通用字符集进行搜索匹配,这些计数符中,(*)号的意思是匹配 0 个,1 个或者多个,(+)号的意思是匹配 1 个或者多个,(?)号的意思是匹配 0 个或者 1 个。
3. FPGA 时序检查中对于异步复位电路的时序分析分别叫(恢复时间检查)和(移除时间检查)。
解析:(1)recovery time:恢复时间撤销复位时,恢复到解复位状态的电平必须在时钟有效沿来临之前的
一段时间到来,才能保证时钟能有效恢复到解复位状态,此段时间为recovery time。类似于同步时钟的 setup time。如下图所示,rst_n 为 1’b0 表示复位,clk 上升沿触发,rst_n 从 1’b0到 1’b1 的上升沿与时钟上升沿必须不小于 recovery time 才能保证寄存器恢复到正常状态。
(2)removal time :移除时间复位时,在时钟有效沿来临之后复位信号还需要保持的时间为移除时
间 removal time。类似同步时钟 hold time。如下图所示,rst_n 为 1’b0 表示复位有效,clk 为上升沿触发,rst_n 保持为 1’b0 经过 clk 上升沿后仍需要保持一段时间,才能保证寄存器有效复位,防止亚稳态。


4. 并行计算是提高程序速度的关键,设 a 为并行计算部分所占比例,n 为并行处理的节点数,则并行计算带来的加速比为
解析:

Ws程序中的串行部分,Wp程序中的并行部分,p为并行的节点数。
5.下图球框由三个相同的铁圈两两正相交组成,每个铁圈的电阻均为 R。AB 两点间的电阻为(5R/48)

笔试题|简答
1. Signal_a 是 clka(300M)时钟域的一个单时钟脉冲信号,如何将其同步到时钟域 clkb(100M)中,并产生出 Signal_b 同步脉冲信号。请用 Verilog 代码描述,并画出对应的时序波形说明图。
module div_3_50(
    input   clk,
    input   rst_n,
 
    input   in,
 
    output  q,
    output  out,
);
 
    reg q1,q2;
    reg [1:0] count1,count2;
 
    reg in_p,in_pp,in_ppp;
 
    wire out_b;
 
    reg out_bb,out_bbb;
 
    assign q=q1|q2;
 
    always_ff@(posedge clk , negedge rst_n)begin
        if(!rst_n) begin
            q1 <= '0;
            count1 < ='0;
        end
        else if(count1==0) begin
            q1 <= ~q1;
            count1 <= count1 + 1;
        end
        else if(count1==1) begin
            q1 = ~q1;
            count1 <= count1 + 1;
        end
        else begin
            count1 <= '0;
        end
    end
 
    always_ff@(negedge clk , negedge rst_n)begin
        if(!rst_n) begin
            q2 <= '0;
            count2 < ='0;
        end
        else if(count2==0) begin
            q2 <= ~q2;
            count2 <= count2 + 1;
        end
        else if(count2==1) begin
            q2 = ~q2;
            count2 <= count2 + 1;
        end
        else begin
            count2 <= '0;
        end
    end
 
    always_ff@(posedge clk , negedge rst_n)begin
        if(!rst_n) begin
            in_p   <= '0;
            in_pp  <= '0;
            in_ppp <= '0;
        end
        else begin
            in_p   <= in;
            in_pp  <= in_p;
            in_ppp <= in_pp;
        end
    end
 
    assign out_b = in_ppp|in_pp|in_p;
 
    always_ff@(posege clk , negedge rst_n)begin
        if(!rst_n) begin
            out_bb  <= '0;
            out_bbb <= '0;
        end
        else begin
            out_bb  <= out_b;
            out_bbb <= out_bb;
        end
    end
 
    assign out = out_bbb;
 
endmodule
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87


2. 如下图,一个高速接口的端口电路示意图,要求 D 端发送数字0/1,DQ 端收到相同的数字 0/1。VREF 电压为比较器数字输出0/1 的判决电压。
(1)S1 断开时,DQ 端 VREF 电压需设置为?
(2)S1 连通时,DQ 端 VREF 电压需设置为?
(3)驱动端发送 0 时功耗较低,这句话是否正确?为什么?
备注:VREF 电压是 AD 比较器判断 0 或 1 的基准参考电压


解析:
(1) S1 断开的时候,若 D 为 1,Q 端电压为 VDDQ,因此 VREF 要小于 VDDQ。若 D 为 0,Q 端的电压为 0,因此VREF 要大于 0,因此 0<VREF<VDDQ
(2) S1 连通时,若 D 为 1,Q 端电压为𝑉𝐷𝐷𝑄/3,若 D 为 0,Q 端的电压为 0,因此 VREF 要大于 0,因此 0<VREF<𝑉𝐷𝐷𝑄/3 。
(3) 驱动端为 0 时,NMOS 管导通,反相器输出接地,电阻没有电流,因此功耗较低。

3. 用 moore 型状态机实现序列“1101”从右到左的不重叠检测。
(注:典型的状态机设计分为 moore 和 mealy 两大类,其中mealy 状态机的输出不仅与当前状态值有关,而且与当前输入有关;moore 状态机的输出仅与当前状态有关,而与此时的输入无关)
1) 请画出状态转换图,其中状态用 S0,S1,S2,…表示
2) 针对这个具体设计如何衡量验证的完备性?

解析:(1)


(2)可以从定向测试,随机测试两种方式产生激励,从代码覆盖率的角度保证覆盖率达 100%

4、 进行一个运算单元的电路设计,A[7:0]*11111011,尽量用最少的资源实现,写出对应的 RTL 代码。
module mul(
    input  [7:0]    A,
    output [15:0]   B
);
 
    wire [15:0] reg1;
    wire [15:0] reg2;
    wire [15:0] reg3;
 
    assign reg1 = { A, {8{1'b0}}};
    assign reg2 = { {6{1'b0}} , A ,{2{1'b0}}};
    assign reg3 = { {8{1'b0}} , A};
 
    assign B = reg1 - reg2 - reg3;
 
endmodule
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
5. 用 C 语言实现整数到 ASCII 码字符串的转换
Void itoa(long int value,char *string){undefined
//value 为一个 int 值,string 是用来存放转换后的字符串的

————————————————
版权声明:本文为CSDN博主「杰之行」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/haojie_duan/article/details/113922958

  • 1
    点赞
  • 48
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值