Verilog复习题共16页.docx

上传人:b****3 文档编号:5367444 上传时间:2023-05-08 格式:DOCX 页数:22 大小:1.81MB
下载 相关 举报
Verilog复习题共16页.docx_第1页
第1页 / 共22页
Verilog复习题共16页.docx_第2页
第2页 / 共22页
Verilog复习题共16页.docx_第3页
第3页 / 共22页
Verilog复习题共16页.docx_第4页
第4页 / 共22页
Verilog复习题共16页.docx_第5页
第5页 / 共22页
Verilog复习题共16页.docx_第6页
第6页 / 共22页
Verilog复习题共16页.docx_第7页
第7页 / 共22页
Verilog复习题共16页.docx_第8页
第8页 / 共22页
Verilog复习题共16页.docx_第9页
第9页 / 共22页
Verilog复习题共16页.docx_第10页
第10页 / 共22页
Verilog复习题共16页.docx_第11页
第11页 / 共22页
Verilog复习题共16页.docx_第12页
第12页 / 共22页
Verilog复习题共16页.docx_第13页
第13页 / 共22页
Verilog复习题共16页.docx_第14页
第14页 / 共22页
Verilog复习题共16页.docx_第15页
第15页 / 共22页
Verilog复习题共16页.docx_第16页
第16页 / 共22页
Verilog复习题共16页.docx_第17页
第17页 / 共22页
Verilog复习题共16页.docx_第18页
第18页 / 共22页
Verilog复习题共16页.docx_第19页
第19页 / 共22页
Verilog复习题共16页.docx_第20页
第20页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

Verilog复习题共16页.docx

《Verilog复习题共16页.docx》由会员分享,可在线阅读,更多相关《Verilog复习题共16页.docx(22页珍藏版)》请在冰点文库上搜索。

Verilog复习题共16页.docx

Verilog复习题共16页

Verilog复习题

一、填空题

1. 用EDA技术(jìshù)进行电子系统设计的目标是最终完成ASIC的设计(shèjì)与实现。

 2. 可编程器件(qìjiàn)分为 CPLD和FPGA。

3. 随着(suízhe)EDA技术的不断完善与成熟,自顶向下的设计方法更多的被应用于Verilog HDL

设计当中。

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

 5. 完整的条件语句将产生组合电路,不完整的条件语句将产生时序电路。

 6. 阻塞性赋值符号为=,非阻塞性赋值符号为<= 。

7.有限状态机分为Moore和Mealy两种类型。

8、EDA缩写的含义为电子设计自动化(ElectronicDesignAutomation)

9.状态机常用状态编码有二进制、格雷码和独热码。

10.VerilogHDL中任务可以调用其他任务和函数。

11.系统函数和任务函数的首字符标志为$,预编译指令首字符标志为#。

12.可编程逻辑器件的优化过程主要是对速度和资源的处理过程。

13、大型数字逻辑电路设计采用的IP核有软IP、固IP和硬IP。

二、选择题

1、已知“a =1b’1; b=3b'001;”那么{a,b}=(  C   )

   (A) 4b'0011  (B) 3b'001  (C) 4b'1001  (D) 3b'101 

2、在verilog中,下列语句哪个不是分支语句?

(  D    )  

(A) if-else (B) case  (C) casez  (D) repeat  

3、Verilog HDL语言进行电路设计方法有哪几种(8分) 

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

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

 ③综合设计的方法

4、在verilog语言中,a=4b'1011,那么   &a=(D   )   

(A) 4b'1011  (B) 4b'1111  (C) 1b'1  (D) 1b'0 

5、在verilog语言中整型数据与( C  )位寄存器数据在实际意义上是相同的。

 (A) 8  (B) 16  (C) 32  (D) 64  

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

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

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

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

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

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

   ①流水线设计

 ②资源共享

 ③逻辑优化

 ④串行化

 ⑤寄存器配平

  ⑥关键(guānjiàn) 路径(lùjìng)法

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

8、下列(xiàliè)标识符中,_____A_____是不合法(héfǎ)的标识符。

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

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

____D___ 

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

6、10、P,Q,R都是4bit的输入矢量,下面哪一种表达形式是正确的5)

1)inputP[3:

0],Q,R;

2)inputP,Q,R[3:

0];

3)inputP[3:

0],Q[3:

0],R[3:

0];

4)input[3:

0]P,[3:

0]Q,[0:

3]R;

5)input[3:

0]P,Q,R;

11、请根据以下两条语句的执行,最后变量A中的值是___①___。

reg[7:

0]A;

A=2'hFF;

①8'b0000_0011②8'h03③8'b1111_1111④8'b11111111

三、简答题

1、简要说明仿真时阻塞赋值与非阻塞赋值的区别

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

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

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

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

阻塞赋值是在该语句结束是立即完成赋值操作;非阻塞赋值是在整个过程块结束是才完成赋值操作。

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

有何区别?

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

根据内部结构不同可分为摩尔型状态机和米里型状态机两种。

摩尔型状态机的输出只由当前状态决定,而次态由输入和现态共同决定;米里型状态机的输出由输入和现态共同决定,而次态也由输入和现态决定。

状态编码主要有三种:

连续二进制编码、格雷码和独热码。

3、简述基于数字系统设计流程包括哪些步骤?

包括五个步骤:

⑴、设计输入:

将设计的结构和功能通过原理图或硬件描述语言进行设计或编程,进行语法或逻辑检查,通过表示输入完成,否则(fǒuzé)反复检查直到无任何错误。

⑵、逻辑综合:

将较高层的设计描述自动转化(zhuǎnhuà)为较低层次描述的过程,包括行为综合,逻辑综合和版图综合或结构综合,最后生成电路逻辑网表的过程。

⑶、布局布线:

将综合生成的电路网表映射到具体的目标器件中,并产生最终(zuìzhōnɡ)可下载文件的过程。

⑷、仿真:

就是按照逻辑功能的算法和仿真库对设计进行模拟,以验证(yànzhèng)设计并排除错误的过程,包括功能仿真和时序仿真。

⑸、编程配置:

将适配后生成的编程文件装入到PLD器件的过程,根据不同器件实现编程或配置。

4、简述VerilogHDL编程语言中函数与任务运用有什么特点?

函数和任务都能独立完成相应电路功能,通过在同一模块中的调用实现相应逻辑电路功能。

但它们又有以下不同:

⑴、函数中不能包含时序控制语句,对函数的调用,必须在同一仿真时刻返回。

而任务可以包含时序控制语句,任务的返回时间和调用时间可以不同。

⑵、在函数中不能调用任务,而任务中可以调用其它任务和函数。

但在函数中可以调用其它函数或函数自身。

⑶、函数必须包含至少一个端口,且在函数中只能定义input端口。

任务可以包含0个或任何多个端口,且可以定义input、output和inout端口。

⑷、函数必须返回一个值,而任务不能返回值,只能通过output或inout端口来传递执行结果。

5、简述FPGA与CPLD两种器件应用特点。

CPLD与FPGA都是通用可编程逻辑器件,均可在EDA仿真平台上进行数字逻辑电路设计,它们不同体现在以下几方面:

⑴FPGA集成度和复杂度高于CPLD,所以FPGA可实现复杂逻辑电路设计,而CPLD适合简单和低成本的逻辑电路设计。

⑵、FPGA内主要由LUT和寄存器组成,倾向实现复杂时序逻辑电路设计,而CPLD内主要由乘积项逻辑组成,倾向实现组合逻辑电路设计。

⑶、FPGA工艺多为SRAM、flash等工艺,掉电后内信息消失,所以该类型需外配存储器,而CPLD工艺多为EEPROM等工艺,掉电后信息不消失,所以不用外配存储器。

⑷、FPGA相对CPLD成本高,但都可以在内都镶嵌硬核和软核,实现片上系统功能。

四、计算题

 1、   利用有限状态机,以格雷码编译方式设计一个从输出信号序列中检测出101信号的电路图,其方块图、状态图和状态表如图表示。

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

2、 程序(chéngxù)注解,并说明整个程序完成的功能。

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  

 

 3、设计(shèjì)一个带有异步复位控制端和时钟使能控制端的10进制计数器。

 端口设定(shèdìnɡ)如下:

  输入(shūrù)端口:

CLK:

时钟(shízhōng),RST:

复位端,EN:

时钟使能端,LOAD:

置位控制端, DIN:

置位数据端;  输出端口:

COUT:

进位输出端,DOUT:

计数输出端。

modulecnt10(clk,rst,en,loat,cout,dout,data);

inputclk;

inputen;

inputrst;

inputload;

input[3:

0]data;

output[3:

0]dout;

outputcout;

reg[3:

0]q1;

regcout;

assigndout=q1;

always@(posedgeclkornegedgerst)begin

if(!

rst)q1<=0;

elseif(en)

begin

if(!

loat)q1<=data;

elseif(q1<9)q1<=q1+1;

elseq1<=4'b0000;

end

end

always@(q1)

if(q1==4'h9)cout=1'b1;

elsecout=1'b0;

endmodule

4、下面是通过case语句实现四选一电路部分程序,将横线上的语句补上,使程序形成完整(wánzhěng)功能。

case({s1,s0})

2’b00:

out=i0;

2’b01:

out=i1;

2’b10:

out=i2;

2’b11:

out=i3;

3、标注各语句功能,指出整个(zhěnggè)程序完成的电路功能。

//带同步(tóngbù)清0/同步置1(低电平有效)的D触发器.

moduledff_syn(q,qn,d,clk,set,reset);//定义(dìngyì)模块为diff_syn,端口为q,qn,d,clk,set,reset

inputd,clk,set,reset;outputregq,qn;//定义(dìngyì)端口d,clk,set,reset为输入端口,reg,q,qn为输出端口

always@(posedgeclk)//对clk信号上升沿有效

begin

if(~reset)beginq<=1'b0;qn<=1'b1;end//同步清零,低电平有效

elseif(~set)beginq<=1'b1;qn<=1'b0;end//同步置位,低电平有效

elsebeginq<=d;qn<=~d;end//q输出为d,qn输出为非d;

end

endmodule//模块结束

4、根据图3给定的两个2位全加器信号关系及实现的4位全加器功能部分程序,在下列部分程序中的横线上填入必要语句,实现4位全加器的完整功能。

 

 

5、根据(gēnjù)下列给定的仿真输入输出波形图2,说明完成(wánchéng)此功能的电路是什么功能电路?

并写出对应的VerilogHDL描述程序(图中clk,clr为输入,q,c为输出)。

4进制加法(jiāfǎ)计数器

modulecounter(clk,clr,q,c)

inputclk,clr;

outputret[1:

0]q;

outputc;

always@(posedgeclkornegedgeclr)

begin

if(~clr)q<=2’h0;

else

begin

if(2’h3==q)q<=2’h0;

elseq<=q+2’h1;

end

end

assignc=(2’h3==q)

endmodule

6、采用结构描述(miáoshù)方法设计一个二进制数字半加器,输入数据ai与bi,并将和输出到so,进位输出到co,给出详细设计过程。

输入

输出

ai

bi

so

co

0

0

0

0

0

1

1

0

1

0

1

0

1

1

0

1

由输入输出逻辑表达式,采用与门and和异或门xor进行结构描述的程序(chéngxù)如下:

(6分)

modulehadd(ai,bi,so,co);

inputai,bi;

outputso,co;

xor(so,si,ci);

and(co,ai,bi);

endmodule

6、采用结构(jiégòu)描述方法设计(shèjì)一个二进制数字比较器,比较输入数据a与b的大小,并分别输出到x,y和z,给出详细设计过程。

not(not_a,a);

not(not_b,b);

and(ab,a,b);

and(not_ab,not_a,not_b);

or(x,ab,not_ab);

and(y,not_a,b);

and(z,a,not_b);

7、采用结构描述(miáoshù)方法设计一个3人竞选数字电路,输入数据[2:

0]x,要求2人以上为1表示通过,且输出为y为1,否则输出相反,给出详细设计过程。

modulethree1(x,y);

input[2:

0]x;outputy;

y=a&b+a&c+b&c=ab+ac+bc;

wirea,b,c;

and(a,x[0],x[1]);and(b,x[1],x[2]);and(c,x[1],x[0]);

or(y,a,b,c);

endmodule

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

1. 用EDA技术进行电子系统设计(shèjì)的目标是最终完成      ASIC               的设

计与实现(shíxiàn)。

 

2. 可编程器件(qìjiàn)分为 FPGA     和 CPLD   。

 

3.随着EDA技术(jìshù)的不断完善与成熟,  自顶向下的设计方法更多的被应用于Verilog HDL设计当中。

 

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

 5.完整的条件语句将产生  组合  电路,不完整的条件语句将产生时序   电路。

 

6.阻塞性赋值符号为     =             ,非阻塞性赋值符号为         <=             。

  

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

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

中,正确的是     C           。

  

A.FPGA全称为复杂可编程逻辑器件; B.FPGA是基于乘积项结构的可编程逻辑器件; 

C.基于SRAM的FPGA器件,在每次上电后必须进行一次配置; D.在Altera公司生产的器件中,MAX7000系列属FPGA结构。

 

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

原理图/HDL文本输入 →  综合    

→___     __→          →适配→编程下载→硬件测试。

正确的是 B           。

 

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

  A.③①  

B.①⑤ 

 

C.④⑤ 

 

D.④② 

3. 子系统设计优化,主要考虑提高资源利用率减少(jiǎnshǎo)功耗(即面积优化),以及提高运行

速度(sùdù)(即速度优化);指出下列哪些方法是面积优化     B        。

   

①流水线设计(shèjì) ②资源共享 ③逻辑(luójí)优化 ④串行化 

⑤寄存器配平 ⑥关键路径法 A.①③⑤ 

B.②③④     C.②⑤⑥  

D.①④⑥ 

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

 

A.9moon 

    B.State0    C. Not_Ack_0  

D. signall 

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

___D____ 

阅读会员限时特惠7大会员特权立即尝鲜

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 

 本程序(chéngxù)的逻辑功能是:

                                                 。

 

 

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

写清分析(fēnxī)设计步骤和注释。

 

1.  试用(shìyòng)Verilog HDL描述一个带进位输入、输出的8位全加器。

 

端口:

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

        

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

 

端口:

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

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

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2