FPGA数字IC笔试面试002——Verilog题目与解析



一、选择题
1.在不影响逻辑功能的情况下, CMOS与非门的多余输入端可 ______。
A.接高电平
B.接低电平
C.悬空
D.通过电阻接地

答案 :A
解析 :CMOS与非门,只要有一个输入端为低电平,与运算后均为低电平,输出为高电平,影响了输出结果,若接地或悬空会使输出始终为1。
CMOS与门、与非门:多余端通过限流电阻(500Ω)接电源;
CMOS或门、或非门:多余端通过限流电阻(500Ω)接地;
TTL与门、与非门:
(1)将多余输入端接高电平,即通过限流电阻与电源相连接;
(2)通过大电阻(大于1kΩ)到地,相当于输入端外接高电平;
(3)把多余输入端悬空(相当于有大电阻),输入端相当于外接高电平;

(4)TTL门电路的工作速度不高,信号源驱动能力较强,多余输入端可与使用的输入端并联。

TTL或门、或非门:通过接小于1 KΩ(500Ω)的电阻到地。

2.欲产生序列信号 11010111,则至少需要 ______级触发器。
A.2
B.3
C.4
D.5
答案:B
解析
触发器产生序列信号时,计算序列长度N=8,由2^3=8得:至少需要3级触发器;
欲用移位寄存器产生序列信号1101010,则至少需要()级触发器,答案是6。
1101010–1101010–1101010
(1)先用3级,则移位状态为110 - 101 - 010 - 101 - …,有重复,不可以;
(2)用4级,移位状态为1101- 1010 - 0101 - 1010 - …,有重复,不可以;
(3)用5级,移位状态为11010 - 10101 - 01010 - 10101 - …,有重复,不可以;
(4)用6级,移位状态为110101 - 101010 - 010101 - 101011 - 010110 - 101101 - 011010 - 110101…,没有重复的回到初始状态,可以;

3.一个 8位二进制减法计数器, 初始状态为 00000000, 问经过 268个输入脉冲后, 此计数器的状态为 ______。
A.11001111
B.11110100
C.11110010
D.11110011
答案:B
解析:8位二进制数计数2^8 = 256次后回到00000000,还剩268-256=12次计数,计数1次后从“00000000”减为“11111111”,此后再减11(00001011),得到11110100,选B。
1111 1111
– 0000 1011
1111 0100

4.移位寄存器由 8 级触发器组成,用它构成的扭环形计数器具有 ______种有效状态;用它构成的环形计数器具有 ______种有效状态,构成线性反馈移位寄存器具有 ______种有效状态。
A. 16,8,511
B. 4, 8,15
C. 16,8,255
D. 8,16,127

答案:C
解析
(1)扭环形计数器,每次状态变化时仅有一个触发器发生翻转,译码不存在竞争冒险,在n(n≥3)位计数器中,使用2n个状态,有2^n-2n个状态未使用;
(2)环形计数器,正常工作时所有触发器中只有一个是1(或0)状态,计n个数需要n个触发器,状态利用率低;
(3)n个寄存器的线性反馈移位寄存器LFSR可以产生的最长的随机序列是2^n−1长度(即m序列)。LFSR常被用来生成m序列,也可产生和校验CRC。

扩展:m序列,最长线性反馈移位寄存器序列,一种典型的伪随机序列、伪噪声(Pseudo-Noise Code,PN)序列,有很好的的自相关性和较好的互相关性。
在3G-CDMA系统的前向链路(基站到手机方向)中,215 长度的m序列作为正交引导PN序列(短码),用于基站同步;使用242-1长度的m序列长码,在前向链路中作为掩码,进行数据加扰和用户保密
在3G-CDMA系统的反向链路(手机向基站方向)中,因不同m序列之间有良好的相关性,从而产生地址空间,构成逻辑信道和移动台的地址码,实现码分多址
在4G-LTE的下行同步中,使用两个长度为31的m序列级联成辅同步序列SSS。

ZC序列,自相关性为0,恒幅值,零自相关序列,它和自己的(非整周期)移位序列的相关值为 0,而且两个互质的ZC序列的互相关也接近于0,傅里叶变换后仍具备以上特性,在OFDM系统中作为训练序列,作同步用。

常用的CAZAC序列(恒幅值、零自相关性)主要包括Zadoff-Chu序列(即ZC序列)、Frank序列、Golomb多相序列和Chirp序列。CAZAC序列常用于通信系统的同步算法中。

5.若要将一异或非门当做反相器 ( 非门) 使用,则输入端 A、 B端的连接方式是 ______。
A.A 或 B 中有一个接“ 1”
B.A 或 B 中有一个接“ 0”
C.A 和 B 并联使用
D.不能实现
答案:B
解析:输入与0“异或”是其本身,取“非”后是输入的取反,相当于反相器。

6.实现同一功能的 Mealy 型同步时序电路比 Moore 型同步时序电路所需要的 ______。
A.状态数目更多
B.状态数目更少
C.触发器更多
D.触发器更少
答案:B
解析
(1)Mealy型:输出信号不仅取决于当前状态,还取决于输入;
(2)Moore型:输出信号只取决于当前状态;
Mealy型比Moore型输出超前一个时钟周期,Moore型比Mealy多一个状态。

二、
1.假定某 4 比特位宽的变量 a 的值为 4’b1011 ,计算下列运算表达式的结果:
&a, {3{a}},~a,{a[2:0],a[3]},(a<4’d3) || (a>=a) ,!a
答案:
&a = 0    {3{a}} = 12’b101110111011
~a = 4’b0100    {a[2:0],a[3]} = 4’b0111
(a<4’d3) || (a>=a) = 1’b1    !a = 1’b0
解析:
(1)“&”按位与,“&&”是逻辑与,&a是a中的各位相与,结果为1 bit的数据,a中有0,相与后结果为0;
(2)“{}”位拼接符,{3{a}}是3个a依次从高位到低位拼起来;
(3)“~ ”按位取反,~a对a中的每一位取反,结果的位数与a相同;
(4)“{}”位拼接符,{a[2:0],a[3]}是按出现的顺序从高位到低位拼起来,a[2:0]=011,放在高3位,a[3]=1,结果为4’0111,实现了循环移位(左移)的效果;
(5)“||”逻辑或,“<”和“>=”的结果是逻辑值“1”或“0”,逻辑或后仍为逻辑值,有1个为1结果就为1;
(6)“!”逻辑取反,非0则1,非1则0,a不为0,则逻辑取反后为0。

2.下面两段代码中信号in,q1,q2和q3的初值分别为 0,1,2和3,那么经过1个时钟周期后,左侧程序中q3 的值变成(),右侧程序中q3 的值变成()。

答案:0, 2
解析:
(1)左侧是阻塞赋值“=”,阻塞的意思是要等到当前赋值语句的赋值结束后才能进行下一个语句的赋值,即in的初值0赋给q1,q1更新为0后才赋值给q2,到q3时也是获得了0;
(2)右侧是非阻塞赋值“<=”,非阻塞的意思是不同的赋值语句之间互相不影响,在下一个时钟时将q2在上一时钟的值2赋给了q3,q3输出2。

3.一个大型的组合电路总延时为100ns,采用流水线将它分为两个较小的组合电路,理论上电路最高工作频率可达()。
答案:20 MHz
解析:拆分后每个延时50ns,流水线后取其中最大的延时,即50ns,对应20MHz。

4.块语句有两种,一种是 begin-end 语句, 通常用来标志()执行的语句; 一种是 fork-join 语句,通常用来标志()执行的语句。
答案:顺序,并行
解析
(1)begin_end用于将多条语句组成顺序快,语句按顺序一条一条执行(除了带有内嵌延迟控制的非阻塞赋值语句),每条语句的延迟时间是相对于由上一条语句的仿真时间而言;
(2)fork-join并行块,块内语句同时执行。

5.在高速系统设计中,下列哪种优化方案的目的不是为了提高系统的工作频率()
A.流水线    B. 树型结构    C. 迟置信号后移    D.资源共享
答案:D
解析
(1)面积优化,提高资源利用率以降低功耗要求:串行化,资源共享,逻辑优化;
(2)速度优化,提高运行速度:流水线设计,寄存器配平,关键路径优化,迟置信号后移。

12.状态机的编码风格包括一段式、两段式和三段式,下列描述正确的是()
A、一段式寄存器输出,易产生毛刺,不利于时序约束;
B、二段式组合逻辑输出,不产生毛刺,有利于时序约束;
C、三段式寄存器输出,不产生毛刺,有利于时序约束;
D、所有描述风格都是寄存器输出,易产生毛刺,有利于时序约束。
答案:C
解析:
(1)一段式一个always块,既描述状态转移,又描述状态的输入输出,当前状态用寄存器输出;
(2)二段式两个always块,时序逻辑与组合逻辑分开,一个always块采用同步时序描述状态转移;另一个always块采用组合逻辑判断状态转移条件,描述状态转移规律以及输出,当前状态用组合逻辑输出,可能出现竞争冒险,产生毛刺,而且不利于约束,不利于综合器和布局布线器实现高性能的设计;
(3)三段式三个always块,一个always模块采用同步时序描述状态转移;一个always采用组合逻辑判断状态转移条件,描述状态转移规律;第三个always块使用同步时序描述状态输出,寄存器输出。
三段式与二段式相比,关键在于根据状态转移规律,在上一状态根据输入条件判断出当前状态的输出,从而在不插入额外时钟节拍的前提下,实现了寄存器输出。

状态机编码:
二进制码Binary Code和格雷码Gray Code占用的位宽少,相应的使用的触发器资源少,但是状态对比时需要比较多个bit,消耗的组合逻辑比较多,适用于组合电路资源丰富的情况(CPLD);独热码One-Hot Code的状态比较时只比较1bit,节省逻辑资源,使用的触发器资源比较多,适用于触发器资源丰富的情况(FPGA);总体来讲,状态较少时(4-24个状态)用独热码效果好,状态多时格雷码(状态数大于24)效果好。
对四个状态编码:
二进制码:
S0 = 2’b00;    S1 = 2’b01;    S2 = 2’b10;    S3 = 2’b11;
格雷码相邻码元之间有且只有一位不同:
S0 = 2’b00;    S1 = 2’b01;    S2 = 2’b11;    S3 = 2’b10;
独热码只有一位是“1”:
S0 = 2’b0001;    S1 = 2’b0010;    S2 = 2’b0100;    S3 = 2’b1000;
有时候也是用连续编码,状态值连续:
S0 = 2’d0;    S1 = 2’d1;    S2 = 2’d2;    S3 = 2’d3;

13.关于过程块以及过程赋值描述中,下列正确的是()
A、在过程赋值语句中表达式左边的信号一定是寄存器类型;
B、过程块中的语句一定是可综合的;
C、在过程块中,使用过程赋值语句给wire 赋值不会产生错误;
D、过程块中时序控制的种类有简单延迟、边沿敏感和电平敏感。
答案:A
解析:
(1)过程赋值:Verilog HDL 中提供initial块和always块这两种过程赋值块,实现行为级建模。这两种语句之间的执行是并行的,若与语句块(begin …end)相结合,则语句块中的执行是按顺序执行的。左侧被赋值的数据类型必须是寄存器类型的变量(reg),赋值方式有阻塞赋值“=”与非阻塞赋值“<=”。
(2)连续赋值:连续赋值语句用于组合逻辑的建模。左侧被赋值的数据类型是wire类型的变量,右边可以是常量、由运算符如逻辑运算符、算术运算符参与的表达。
assign out=in;
任何一个输入的改变都将立即导致输出更新;在initial或always外的assign赋值语句称为连续赋值语句,一般在描述纯组合电路时使用。

14.关于函数的描述下列说法不正确的是( B )
A、函数定义中不能包含任何时序控制语句;
B、函数至少有一个输入,包含任何输出或双向端口;
C、函数只返回一个数据,其缺省为 reg 类型;
D、函数不能调用任务,但任务可以调用函数。
答案:B
解析:
function <返回值的类型或范围(可选,默认是1bit寄存器类型)> (函数名);
<端口说明语句>
<变量类型说明语句>
begin
<语句>

end
endfunction
A:函数定义中不能包含任何时间控制语句,即任何#、@、wait等语句,任务中可以使用延迟、事件和时序控制结构;
B:函数至少有一个输入变量,不能包含任何输出和双向端口,任务可以有任意多个输入、双向和输出变量;
C:函数function有一个返回值,缺省时默认返回1bit的reg寄存器类型数据,任务task没有返回值;
D:函数不能启动任务,但是任务能启动其他任务或函数。




#笔试##笔经#
FPGA数字IC笔试100道题 文章被收录于专栏

笔试刷题及解析,FPGA和数字IC类的笔试题汇总、解析,助力实习、提前批、秋招

全部评论
感谢分享的Verilog题目与解析
点赞 回复 分享
发布于 2022-10-23 17:58 陕西

相关推荐

比亚迪汽车新技术研究院 硬件工程师 总包21左右 硕士
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
11-21 17:16
科大讯飞 算法工程师 28.0k*14.0, 百分之三十是绩效,惯例只发0.9
点赞 评论 收藏
分享
霁华Tel:秋招结束了,好累。我自编了一篇对话,语言别人看不懂,我觉得有某种力量在控制我的身体,我明明觉得有些东西就在眼前,但身边的人却说啥也没有,有神秘人通过电视,手机等在暗暗的给我发信号,我有时候会突然觉得身体的某一部分不属于我了。面对不同的人或场合,我表现出不一样的自己,以至于都不知道自己到底是什么样子的人。我觉得我已经做的很好,不需要其他人的建议和批评,我有些时候难以控制的兴奋,但是呼吸都让人开心。
点赞 评论 收藏
分享
一个菜鸡罢了:哥们,感觉你的简历还是有点问题的,我提几点建议,看看能不能提供一点帮助 1. ”新余学院“别加粗,课程不清楚是否有必要写,感觉版面不如拿来写一下做过的事情,教育经历是你的弱势就尽量少写 2. “干部及社团经历”和“自我评价”删掉 3. 论文后面的“录用”和“小修”啥的都删掉,默认全录用,问了再说,反正小修毕业前肯定能发出来 4. 工作经验和研究成果没有体现你的个人贡献,着重包装一下个人贡献
点赞 评论 收藏
分享
5 23 评论
分享
牛客网
牛客企业服务