完整verilog考试题.docx

上传人:b****4 文档编号:4737155 上传时间:2022-12-08 格式:DOCX 页数:30 大小:137.89KB
下载 相关 举报
完整verilog考试题.docx_第1页
第1页 / 共30页
完整verilog考试题.docx_第2页
第2页 / 共30页
完整verilog考试题.docx_第3页
第3页 / 共30页
完整verilog考试题.docx_第4页
第4页 / 共30页
完整verilog考试题.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

完整verilog考试题.docx

《完整verilog考试题.docx》由会员分享,可在线阅读,更多相关《完整verilog考试题.docx(30页珍藏版)》请在冰豆网上搜索。

完整verilog考试题.docx

完整verilog考试题

(完整)verilog考试题

编辑整理:

 

尊敬的读者朋友们:

这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望((完整)verilog考试题)的内容能够给您的工作和学习带来便利。

同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。

本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为(完整)verilog考试题的全部内容。

西安电子科技大学

考试时间分钟

试题

题号

总分

分数

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

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.VerilogHDL语言进行电路设计方法有哪几种(8分)

1、自上而下的设计方法(Top-Down)

2、自下而上的设计方法(Bottom-Up)

3、综合设计的方法

2.specparam语句和parameter语句在参数说明方面不同之处是什么(8分)。

1、.specparam语句只能在延时的格式说明块(specify块)中出现,而parameter语句则不能在延时说明块内出现

2、由specparam语句进行定义的参数只能是延时参数,而由parameter语句定义的参数则可以是任何数据类型的参数

3、由specparam语句定义的延时参数只能在延时说明块内使用,而由parameter语句定义的参数则可以在模块内(该parameter语句之后)的任何位置说明

 

三、画波形题(每题8分,共16分)

1.根据下面的程序,画出产生的信号波形(8分)

modulepara_bloc_nested_in_seri_bloc(A,B);

outputA,B;

rega,b;

initial

begin

A=0;

B=1;

#10A=1;

fork

B=0;

#10B=1;

#20A=0;

join

#10B=0;

#10A=1;

B=1;

end

endmodule

2。

根据下面的程序,画出产生的信号波形(8分)

modulesignal_gen1(d_out);

outputd_out;

regd_out;

initial

begin

d_out=0;

#1d_out=1;

#2d_out=0;

#3d_out=1;

#4d_out=0;

end

endmodule

四、程序设计(4题,共50分)

1.试用verilog语言产生如下图所示的测试信号(12分)

modulesignal_gen9(clk,in1,in2);

outputin1,in2,clk;

regin1,in2,clk;

initial

begin

in1=0;

in2=1;

clk=0;

end

initial

begin

#15in1=1

#10in1=0;

#5in1=1;

#10in1=0;

end

initial

begin

#5in2=0;

#5in2=1;

#25in2=0;

end

always

begin

#5clk=~clk;

end

endmodule

2.试用verilog语言,利用内置基本门级元件,采用结构描述方式生成如图所示的电路(12分)

moduleMUX4x1(Z,D0,D1,D2,D3,S0,S1);

outputZ;

inoutD0,D1,D2,D3,S0,S1;

andu0(T0,D0,S0bar,S1bar),

u1(T1,D1,S0bar,S1),

u2(T2,D2,S0,S1bar),

u3(T3,D3,S0,S1),

notu4(S0bar,S0),

u5(S1bar,S1);

oru6(Z,T0,T1,T2,T3);

endmodule

3.试用verilog语言描述:

图示为一个4位移位寄存器,是由四个D触发器(分别设为U1,U2,U3,U4)构成的.其中seri_in是这个移位寄存器的串行输入;clk为移位时脉冲输入;clr为清零控制信号输入;Q[1]~Q[3]则为移位寄存器的并行输出。

(14分)

moduled_flop(q,d,clr,clk);

outputq;

inputd,clr,clk;

regq;

always@(clr)

if(!

clr)assignq=0;

elsedeassignq;

always@(negedgeclk)

q=d;

endmodule

moduleshifter(seri_in,clk,clrb,Q);

inputseri_in,clk,clrb;

output[3:

0]Q;

d_flopU1(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分)

modulemelay(clk,Din,reset,Qout);

inputclk,reset;

inputDin;

outputQout;

regQout;

parameter[1:

0]S0=2’b00,S1=2’b01,S2=2’b11;

reg[1:

0]CS;

reg[1:

0]NS;

always@(posedgeclkorposedgereset)

begin

if(reset==1’b01)

CS=S0;

elseCS=NS;

end

always@(CSorDin)

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;

end

else

begin

NS=S1;

Qout=1’b0;

end

end

endcase

end

endmodule

填空题(10分,每小题1分) 

1。

 用EDA技术进行电子系统设计的目标是最终完成     ASIC            的设计与实现。

 

2. 可编程器件分为  FPGA         和CPLD    。

 

3。

 随着EDA技术的不断完善与成熟,                 的设计方法更多的被应用于Verilog HDL设计当中。

 

4. 目前国际上较大的PLD器件制造公司有               和                 公司. 

5. 完整的条件语句将产生           电路,不完整的条件语句将产生          电路. 

6。

 阻塞性赋值符号为                  ,非阻塞性赋值符号为                   。

  

二、选择题 (10分,每小题2分) 

1。

 大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA结构与工作原理的描述中,正确的是                。

  

A.FPGA全称为复杂可编程逻辑器件; 

B.FPGA是基于乘积项结构的可编程逻辑器件; 

C.基于SRAM的FPGA器件,在每次上电后必须进行一次配置; 

D.在Altera公司生产的器件中,MAX7000系列属FPGA结构。

 

2. 基于EDA软件的FPGA / CPLD设计流程为:

原理图/HDL文本输入 →  综合    →___     __→          →适配→编程下载→硬件测试。

正确的是            。

 ①功能仿真 ②时序仿真 ③逻辑综合 ④配置 ⑤分配管脚              

A.③①  B.①⑤  C.④⑤  D.④② 

3. 子系统设计优化,主要考虑提高资源利用率减少功耗(即面积优化),以及提高运行速度(即速度优化);指出下列哪些方法是面积优化             。

   ①流水线设计 ②资源共享 ③逻辑优化 ④串行化 ⑤寄存器配平 ⑥关键路径法 

A.①③⑤ B.②③④     C.②⑤⑥  D.①④⑥

4. 下列标识符中,__________是不合法的标识符. 

A.9moon     B.State0    C. Not_Ack_0  D. signall 

5。

 下列语句中,不属于并行语句的是:

_______ 

A.过程语句     B.assign语句  C.元件例化语句 D.case语句 

三、EDA名词解释(10分) 写出下列缩写的中文含义:

 

ASIC:

                          RTL:

                      

FPGA:

                         SOPC:

                     

CPLD:

                        LPM:

                      

EDA:

                           IEEE:

                      

IP:

 ISP:

                            

四、简答题(10分) 

1. 简要说明仿真时阻塞赋值与非阻塞赋值的区别(本题4分)。

    

 

2. 简述有限状态机FSM分为哪两类?

有何区别?

有限状态机的状态编码风格主要有哪三种?

FSM的三段式描述风格中,三段分别描述什么?

(本题6分)

五、程序注解(20分,每空1分) 

module  AAA  ( a ,b );                                              

output  a                                                    

input [6:

0] b                                                    

reg[2:

0] sum;                                                  

 integer i;                                                       

reg  a                                                         

always @ (b)                                                        

begin                                                             

sum = 0;                                                       

for(i = 0;i〈=6;i = i+1)                                             

if(b[i])                                          

sum = sum+1;                                 

               if(sum[2])  a = 1;                                 

else       a = 0;                                 

          end

 endmodule 

 

本程序的逻辑功能是:

       

 

四、VerilogHDL语言编程题(1、2小题10分,3小题20分)     要求:

写清分析设计步骤和注释。

 1。

  试用Verilog HDL描述一个带进位输入、输出的8位全加器. 端口:

A、B为加数,CI为进位输入,S为和,CO为进位输出                 

 

 

2。

 编写一个带异步清零、异步置位的D触发器。

 

端口:

CLK为时钟,D为输入,CLK为清零输入端,SET为置位输入端;Q输出端.                  

 

3。

 设计一个带有异步复位控制端和时钟使能控制端的10进制计数器。

 端口设定如下:

 

输入端口:

CLK:

时钟,RST:

复位端,EN:

时钟使能端,LOAD:

置位控制端, DIN:

置位数据端; 

输出端口:

COUT:

进位输出端,DOUT:

计数输出端。

                   

 

一、填空题(每空2分,共20分) 

1、   ASIC    2、     FPGA     和 CPLD   。

 3、 自顶向下 

4、   Altera  和  Xilinx   5、 组合     时序   6、   =    〈=   

二、选择题 (10分,每小题2分) 

1、C   2、 B   3、B    4、 A   5、D  

三、EDA名词解释(10分) ASIC      专用集成电路         RTL  寄存器传输级 

FPGA      现场可编程门阵列     SOPC   可编程片上系统 

CPLD      复杂可编程逻辑器件   LPM 参数可定制宏模块库

 EDA 电子设计自动化   IEEE 电子电气工程师协会 IP知识产权核    ISP 在系统编程 

四、简答题(10分) 

 1、简要说明仿真时阻塞赋值与非阻塞赋值的区别(本题4分)。

 答:

非阻塞(non-blocking)赋值方式 ( b〈= a):

 

b的值被赋成新值a的操作, 并不是立刻完成的,而是在块结束时才完成; 块内的多条赋值语句在块结束时同时赋值; 硬件有对应的电路。

 

阻塞(blocking)赋值方式 ( b = a):

 b的值立刻被赋成新值a; 

完成该赋值语句后才能执行下一句的操作; 硬件没有对应的电路,因而综合结果未知. 

2、 简述有限状态机FSM分为哪两类?

有何区别?

有限状态机的状态编码风格主要有哪三种?

FSM的三段式描述风格中,三段分别描述什么?

(本题6分) 

答:

Mearly型,Moore型;前者与输入与当前状态有关,而后者只和当前状态有关;Binary,Gray,One-Hot编码;分别为状态保存,状态切换,输出; 

五、程序注解(20分,每空1分) 

 

 本程序的逻辑功能是:

     7人投票表决器。

 六、VerilogHDL语言编程题(1、2小题10分,3小题20分)     要求:

写清分析设计步骤和注释. 1.试用Verilog HDL描述一个带进位输入、输出的8位全加器。

 端口:

A、B为加数,CIN为进位输入,S为和,COUT为进位输出 

module add4v(a,b,ci,s,co);   

 input[3:

0] a,b,ci;       

output[3:

0] s;    

output co;  

wire[3:

0] carry; 

function fa_s(input a,input b,input ci);   

fa_s  = a ^ b ^ ci;    

endfunction 

function fa_c(input a,input b,input ci);       

fa_c = a & b | a & ci | b & ci;    

endfunction 

assign  s[0] = fa_s(a[0],b[0],ci);    

assign  carry[0] = fa_c(a[0],b[0],ci);    

assign s[1] = fa_s(a[1],b[1],carry[0]);    

assign carry[1] = fa_c(a[1],b[1],carry[0]);    

assign s[2] = fa_s(a[2],b[2],carry[1]);    

assign carry[2] = fa_c(a[2],b[2],carry[1]);    

assign s[3] = fa_s(a[3],b[3],carry[2]);    

assign co = fa_c(a[3],b[3],carry[2]); 

endmodule 

2.编写一个带异步清零、异步置位的D触发器。

 

3。

设计一个带有异步复位控制端和时钟使能控制端的10进制计数器。

 

module CNT10 (CLK,RST,EN,LOAD,COUT,DOUT,DATA); 

input CLK,EN,RST,LOAD,DATA;    

output [3:

0] DOUT,COUT ; 

reg [3:

0] Q1  

reg COUT  

assign DOUT = Q1; 

always @(posedge CLK or negedge RST) 

begin if (!

RST)   

Q1 <= 0; 

else  if (EN) 

begin 

if (!

LOAD)   

Q1 〈= DATA; 

else if (Q1<9)  

Q1 <= Q1+1; 

else     

Q1 〈= 4’b0000; 

end 

end 

always @(Q1) 

if (Q1==4’h9)  

COUT = 1’b1; 

else          

COUT = 1’b0; 

endmodule 

二○一○~二○一一学年  第二学期 (A)卷

课程名称Verilog硬件描述语言   适用专业 2008电信    

考试方式 (闭)卷  考试时间(120)分钟

题号

总分

得分

评卷人

备注:

所有试题答案必须全部写在试卷答题纸上,试题纸上答题无效.

一、填空题(共26分,每空2分)

1.Verilog的基本设计单元是。

它是由组成,一部分描述;

另一部分描述即定义输入是如何影响的。

2.用assign描述的语句我们一般称之为逻辑,并且它们是属于语句,即于语句的书写次序。

而用always描述的语句我们一般称之为逻辑或逻辑,并且它们是属于语句,即于语句的书写。

3.在case语句中至少要有一条语句

二、简答题(共15分,每小题5分)

1.怎样理解在进程语句中,阻塞语句没有延迟这句话?

2.在进程中什么情况下综合为时序电路?

什么情况下综合为组合电路?

3.为什么在Verilog语言中,其综合只支持次数确定的循环,而不支持次数不确定的循环?

三、改错(15分)

//下述是一个实现四位数的BCD码加法的程序,请把正确的程序写在试卷上

modulebcdadd(clk,a,b,c,d,a1,b1,c1,d1,q1,q2,q3,q4,cout)

inputclk;

inputa,b,c,d,a1,b1,c21,d21[3:

0];

outputq1,q2,q3,q4[3:

0];

outputcout;

regq1,q2,q3,q4;[3:

0]

always@(clk,a,b,c,d,a1,b1,c1,d1);

begin

q1=a+a1;

if(q1〉9){cout,q1}=q1+6;

q2=b+b1+cout;

if(q2〉9){cout,q2}=q2+6;

q3=c+c1+cout;

if(q3>9){cout,q3}=q3+6;

q4=d+d1+cout;

if(q4>9){cout,q4}=q4+6;

endmodule

四、编程(15分)

编程实现带异步清0、异步置1的D触发器。

五、编程(15分)

编程实现求补码的程序,输入是带符号的8位二进制数。

六、编程(14分)

编程实现一个并行加载串行输出的程序,输入是一个8位的二进制数。

 

二○一○~二○一一学年  第二学期 (B)卷

课程名称Verilog硬件描述语言   适用专业 2008电信    

考试方式 (闭)卷  考试时

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1