FPGAVerilog试题西安电子科技大学讲课稿.docx
《FPGAVerilog试题西安电子科技大学讲课稿.docx》由会员分享,可在线阅读,更多相关《FPGAVerilog试题西安电子科技大学讲课稿.docx(12页珍藏版)》请在冰豆网上搜索。
FPGAVerilog试题西安电子科技大学讲课稿
西安电子科技大学
考试时间 分钟
试 题
题号 一 二 三 四 五 六 七 八 九 十 总分 分数
1.考试形式:
闭(开)卷;2.本试卷共 四 大题,满分100分。
班级 学号 姓名 任课教师
一、 选择题(每题2分,共18分)
1. 下面哪个是可以用verilog语言进行描述,而不能用VHDL语言进行描述的级别?
( A )
(A) 开关级 (B)门电路级 (C) 体系结构级 (D) 寄存器传输级
2.在verilog中,下列语句哪个不是分支语句?
( D )
(A) if-else (B) case (C) casez (D) repeat
3.下列哪些Verilog的基本门级元件是多输出( D )
(A) nand (B) nor (C) and (D) not
4.Verilog连线类型的驱动强度说明被省略时,则默认的输出驱动强度为( B )
(A) supply (B) strong (C) pull (D) weak
5.元件实例语句“notif1 #(1:
3:
4,2:
3:
4,1:
2:
4) U1(out,in,ctrl);”中截至延迟的典型值为( B )
(A) 1 (B) 2 (C) 3 (D) 4
6.已知 “a =1b’1; b=3b'001;”那么{a,b}=( C )
(A) 4b'0011 (B) 3b'001 (C) 4b'1001 (D) 3b'101
第 2 页 共 8 页
7.根据调用子模块的不同抽象级别,模块的结构描述可以分为(ABC )
(A) 模块级 (B)门级 (C) 开关级 (D) 寄存器级
8.在verilog语言中,a=4b'1011,那么 &a=(D )
(A) 4b'1011 (B) 4b'1111 (C) 1b'1 (D) 1b'0
9.在verilog语言中整型数据与( C )位寄存器数据在实际意义上是相同的。
(A) 8 (B) 16 (C) 32 (D) 64
二、 简答题(2题,共16分)
1.Verilog HDL语言进行电路设计方法有哪几种(8分)
1、自上而下的设计方法(Top-Down) 2、自下而上的设计方法(Bottom-Up) 3、综合设计的方法
2.specparam语句和parameter语句在参数说明方面不同之处是什么(8分)。
1、.specparam语句只能在延时的格式说明块(specify块)中出现,而parameter语句则不能在延时说明块内出现
2、由specparam语句进行定义的参数只能是延时参数,而由parameter语句定义的参数则可以是任何数据类型的参数
3、由specparam语句定义的延时参数只能在延时说明块内使用,而由parameter语句定义的参数则可以在模块内(该parameter语句之后)的任何位置说明
第 3 页 共 8 页
三、 画波形题(每题8分,共16分)
1. 根据下面的程序,画出产生的信号波形(8分)
module para_bloc_nested_in_seri_bloc(A,B);
output A,B;
reg a,b;
initial begin A=0;
B=1;
#10 A=1;
fork B=0;
#10 B=1;
#20 A=0;
join
#10 B=0;
#10 A=1;
B=1;
end
endmodule
第 4 页 共 8 页
2. 根据下面的程序,画出产生的信号波形(8分)
module signal_gen1(d_out); output d_out; reg d_out; initial begin
d_out=0; #1 d_out=1; #2 d_out=0; #3 d_out=1; #4 d_out=0; end
endmodule
四、 程序设计(4题,共50分)
1. 试用verilog语言产生如下图所示的测试信号(12分)
module signal_gen9(clk,in1,in2); output in1,in2,clk; reg in1,in2,clk; initial begin in1=0; in2=1;
第 5 页 共 8 页
clk=0; end initial begin
#15 in1=1 #10 in1=0; #5 in1=1; #10 in1=0; end initial begin
#5 in2=0; #5 in2=1; #25 in2=0; end always begin
#5 clk=~clk; end
endmodule
2.试用verilog语言,利用内置基本门级元件,采用结构描述方式生成如图所示的电路(12分)
module MUX4x1(Z,D0,D1,D2,D3,S0,S1);
3. 试用verilog语言描述:
图示为一个4位移位寄存器,是由四个D触发器(分别设为U1,U2,U3,U4)构成的。
其中seri_in是这个移位寄存器的串行输入;clk为移位时脉冲输入;clr为清零控制信号输入;Q[1]~Q[3]则为移位寄存器的并行输出。
(14分)
module d_flop(q,d,clr,clk); output q;
input d,clr,clk; reg q;
always @(clr) if(!
clr) assign q=0; else deassign q;
always @(negedge clk) q=d; endmodule
第 7 页 共 8 页
module shifter(seri_in,clk,clrb,Q); input seri_in,clk,clrb; output[3:
0] Q;
d_flop U1(Q[0],seri_in,clrb,clk), U2(Q[1],Q[0],clrb,clk), U3(Q[2],Q[1],clrb,clk), u4(Q[3],Q[2],clrb,clk); endmodule
4.利用有限状态机,以格雷码编译方式设计一个从输出信号序列中检测出101信号的电路图,其方块图、状态图和状态表如图表示。
(12分)
Din=0Din=1S0=00
SO, OS1, 0S1=01S2, 0S1, 0S2=11
S0, 0S1, 1
下一状态NS和输出Qout目前状态CS
module melay(clk,Din,reset,Qout);
input clk,reset; input Din; output Qout; reg Qout;
parameter[1:
0] S0=2'b00,S1=2'b01,S2=2'b11; reg[1:
0] CS;
第 8 页 共 8 页
reg[1:
0] NS;
always @(posedge clk or posedge reset) begin
if(reset==1'b01) CS=S0; else CS=NS; end
always @(CS or Din) begin
case(CS) S0:
beign
if(Din==1'b0) begin
NS=S0; Qout=1'b0; end else begin
NS=S1; Qout=1'b0; end end S1:
begin
if(Din==1'b0) begin
NS=S2; Qout=1'b0; end else begin
NS=S1; Qout=1'b0; end end S2:
beign
if(Din==1'b0) begin
NS=S0; Qout=1'b0;
第 9 页 共 8 页
end else begin
NS=S1; Qout=1'b0; end end
endcase end
endmodule
、填空题(10分,每小题1分)
1. 用EDA技术进行电子系统设计的目标是最终完成 的设计与实现。
2. 可编程器件分为 和 。
3. 随着EDA技术的不断完善与成熟, 的设计方法更多的被应用于Verilog HDL设计当中。
4. 目前国际上较大的PLD器件制造公司有 和 公司。
5. 完整的条件语句将产生 电路,不完整的条件语句将产生 电路。
6. 阻塞性赋值符号为 ,非阻塞性赋值符号为 。
二、选择题 (10分,每小题2分)
1. 大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA结构与工作原理的描述中,正确的是 。
A.FPGA全称为复杂可编程逻辑器件;
B.FPGA是基于乘积项结构的可编程逻辑器件;
C.基