首页 EDA-VerilogHDL期末复习题总结必过(最新整理)

EDA-VerilogHDL期末复习题总结必过(最新整理)

举报
开通vip

EDA-VerilogHDL期末复习题总结必过(最新整理)选择题1.大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA结构与工作原理的描述中,正确的是(C)。A.FPGA全称为复杂可编程逻辑器件;B.FPGA是基于乘积项结构的可编程逻辑器件;C.基于SRAM的FPGA器件,在每次上电后必须进行一次配置;D.在Altera公司生产的器件中,MAX7000系列属FPGA结构。2.不完整的IF语句,其综合结果可实现(A)A.时序逻辑电路B.组合逻辑电C.双向电路D.三态控制电路3.综合是EDA设计流程的关键步骤,在下面对综合的描述中,(D)是错误的。A.综合就是把抽象...

EDA-VerilogHDL期末复习题总结必过(最新整理)
选择题1.大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA结构与工作原理的描述中,正确的是(C)。A.FPGA全称为复杂可编程逻辑器件;B.FPGA是基于乘积项结构的可编程逻辑器件;C.基于SRAM的FPGA器件,在每次上电后必须进行一次配置;D.在Altera公司生产的器件中,MAX7000系列属FPGA结构。2.不完整的IF语句,其综合结果可实现(A)A.时序逻辑电路B.组合逻辑电C.双向电路D.三态控制电路3.综合是EDA设计流程的关键步骤,在下面对综合的描述中,(D)是错误的。A.综合就是把抽象设计层次中的一种表示转化成另一种表示的过程;B.综合就是将电路的高级语言转化成低级的,可与FPGA/CPLD的基本结构相映射的网表文件;C.为实现系统的速度、面积、性能的 要求 对教师党员的评价套管和固井爆破片与爆破装置仓库管理基本要求三甲医院都需要复审吗 ,需要对综合加以约束,称为综合约束;D.综合可理解为一种映射过程,并且这种映射关系是唯一的,即综合结果是唯一的。4.大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA结构与工作原理的描述中,正确的是(C)。A.FPGA全称为复杂可编程逻辑器件;B.FPGA是基于乘积项结构的可编程逻辑器件;C.基于SRAM的FPGA器件,在每次上电后必须进行一次配置;D.在Altera公司生产的器件中,MAX7000系列属FPGA结构。5.以下关于状态机的描述中正确的是(B)A.Moore型状态机其输出是当前状态和所有输入的函数B.与Moore型状态机相比,Mealy型的输出变化要领先一个时钟周期C.Mealy型状态机其输出是当前状态的函数D.以上都不对6.目前应用最广泛的硬件描述语言是(B)。A.VHDLB.VerilogHDLC.汇编语言D.C语言7.一模块的I/O端口说明:“input[7:0]a;”,则关于该端口说法正确的是(A)。A.输入端口,位宽为8B.输出端口,位宽为8C.输入端口,位宽为7D.输出端口,位宽为78.基于EDA软件的FPGA/CPLD设计流程为:原理图/HDL文本输入→综合→_____→→适配→编程下载→硬件测试。正确的是(B)。①功能仿真②时序仿真③逻辑综合④配置⑤分配管脚A.③①B.①⑤C.④⑤D.④②9.下列标识符中,(A)是不合法的标识符。A.9moonB.State0C.Not_Ack_0D.signall10.下列语句中,不属于并行语句的是:(D)A.过程语句B.assign语句C.元件例化语句D.case语句11.已知“a=1’b1;b=3'b001;”那么{a,b}=(C)(A)4'b0011(B)3'b001(C)4'b1001(D)3'b10112.在verilog中,下列语句哪个不是分支语句?(D)(A)if-else(B)case(C)casez(D)repeat13.在verilog语言中整型数据在默认情况与(C)位寄存器数据在实际意义上是相同的。(A)8(B)16(C)32(D)6414.大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA结构与工作原理的描述中,正确的是(C)A.FPGA全称为复杂可编程逻辑器件;B.FPGA是基于乘积项结构的可编程逻辑器件;C.基于SRAM的FPGA器件,在每次上电后必须进行一次配置;D.在Altera公司生产的器件中,MAX7000系列属FPGA结构。15.请根据以下两条语句的执行,最后变量A中的值是(A)reg[7:0]A;A=2'hFF;A.8'b0000_0011B.8'h03C.8'b1111_1111D.8'b1111111116.下列描述中采用时钟正沿触发且reset异步下降沿复位的代码描述是(C)A、always@(posedgeclk,negedgereset)if(reset)B、always@(posedgeclk,reset)if(!reset)C、always@(posedgeclk,negedgereset)if(!reset)D、always@(negedgeclk,posedgereset)if(reset)17.关于过程块以及过程赋值描述中,下列正确的是(A)A、在过程赋值语句中表达式左边的信号一定是寄存器类型;B、过程块中的语句一定是可综合的;C、在过程块中,使用过程赋值语句给wire赋值不会产生错误;D、过程块中时序控制的种类有简单延迟、边沿敏感和电平敏感。18.Verilog语言与C语言的区别,不正确的描述是(C)A、Verilog语言可实现并行计算,C语言只是串行计算;B、Verilog语言可以描述电路结构,C语言仅仅描述算法;C、Verilog语言源于C语言,包括它的逻辑和延迟;D、Verilog语言可以编写测试向量进行仿真和测试。19.11.下列模块的例化正确的是(C)。A.Mydesigndesign(sin(sin),sout(sout));B.Mydesigndesign(.sin(sin),.sout(sout));C.Mydesigndesign(.sin(sin),.sout(sout););D.Mydesigndesign(.sin(sin);.sout(sout));20.下列关于VerilogHDL语言中模块的例化说法错误的是(B)。A.在引用模块时,有些信号要被输入到引用模块中,有些信号要从引用模块中输出B.在引用模块时,必须严格按照模块定义的端口顺序来连接C.在引用模块时可以用“.”符号,表明原模块是定义时规定的端口名,用端口名和被引用模块的端口相对应,提高程序的可读性和可移植性D.在语句“Mydesigndesign(.port1(port1),.port2(port2));”中,被引用的模块为Mydesign模块21.下列VerilogHDL语言中寄存器类型数据定义与注释矛盾的是(D)。A.reg[3:0]sat//sat为4位寄存器B.regcnt//cnt为1位寄存器C.reg[0:3]mymem[0:63]//mymem为64个4位寄存器的数组D.reg[1:5]dig//dig为4位寄存器22.下列关于非阻塞赋值运算方式(如b<=a;)说法错误的是(B)。A.块结束后才完成赋值操作B.b的值立刻改变C.在编写可综合模块时是一种比较常用的赋值方式D.非阻塞赋值符“<=”与小于等于符“<=”意义完全不同,前者用于赋值操作,后者是关系运算符,用于比较大小。23.下列关于阻塞赋值运算方式(如b=a;)说法错误的是(A)。A.赋值语句执行完后,块才结束B.b的值在赋值语句执行完后立刻就改变的C.在沿触发的always块中使用时,综合后可能会产生意想不到的结果D.在“always”模块中的reg型信号都采用此赋值方式24.在下列VerilogHDL运算符中,属于三目运算符的是(C)。A.&&B.!==C.?:D.===25.当a<0时,s的值是(C)。assigns=(a>=2)?1:(a<0)?2:0;A.0B.1C.2D.其他26.在VerilogHDL语言中的位拼接运算符是(A)。A.{}B.<>C.()D.''27.下面语句中,信号a会被综合成(B)。reg[5:0]a;always@(posedgeclk)if(ss>10)a<=20;elseif(ss>15)a<=30;A.寄存器B.触发器C.连线资源D.其他28.下列程序段中无锁存器的是(C)。A.always@(alord)B.always@(alord)beginbeginif(al)q<=d;if(al)q<=d;if(!al)q<=!d;endendC.always@(alord)D.always@(sel[1:0]beginoraorb)if(al)case(sel[1:0])q<=d;2'b00:q<=a;else2'b11;q<=b;q<=0;Endcaseend29.程序段如下:begin:reg[7:0]tem;count=0;tem=rega;while(tem)beginif(tem[0])count=count+1;tem=tem>>1;endend如果rega的值为8'b10101011,则程序结束后,count的值是()。A.4B.5C.6D.730.多路选择器简称多路器,它的输入输出端口情况是()。A.多输入,多输出B.多输入,单输出C.单输入,多输出D.单输入,单输出填空题1.用EDA技术进行电子系统设计的目标是最终完成ASIC的设计与实现。2.可编程器件分为FPGA和CPLD。3.随着EDA技术的不断完善与成熟,自顶向下的设计方法更多的被应用于VerilogHDL4.设计当中。5.目前国际上较大的PLD器件制造公司有Altera和Xilinx公司。6.完整的条件语句将产生组合电路,不完整的条件语句将产生时序电路。7.阻塞性赋值符号为=,非阻塞性赋值符号为<=。8.有限状态机分为Moore和Mealy两种类型。9.EDA缩写的含义为电子设计自动化(ElectronicDesignAutomation)10.状态机常用状态编码有二进制、格雷码和独热码。11.VerilogHDL中任务可以调用其他任务和函数。12.系统函数和任务函数的首字符标志为$,预编译指令首字符标志为#。13.可编程逻辑器件的优化过程主要是对速度和资源的处理过程。14.大型数字逻辑电路设计采用的IP核有软IP、固IP和硬IP。15.IEEE标准的硬件描述语言是verilogHDL和VHDL。16.Verilog语言规定的两种主要的数据类型分别是wire(或net)和reg。程序模块中输入,输出信号的缺省类型为wire(或net)。17.Verilog语言规定了逻辑电路中信号的4种状态,分别是0,1,X和Z。其中0表示低电平状态,1表示高电平状态,X表示不定态(或未知状态),Z表示高阻态。18.块语句有两种,一种是begin-end语句,通常用来标志顺序执行的语句;一种是fork-join语句,通常用来标志并行执行的语句。19.写出表达式以实现对应电路的逻辑功能20.下面两段代码中信号in,q1,q2和q3的初值分别为0,1,2和3,那么经过1个时钟周期后,左侧程序中q3的值变成0,右侧程序中q3的值变成2。名词解释1.EDA2.ASIC专用集成电路3.RTL寄存器传输级4.FPGA现场可编程门阵列5.SOPC可编程片上系统6.CPLD复杂可编程逻辑器件7.LPM参数可定制宏模块库8.EDA电子设计自动化9.IEEE电子电气工程师协会10.IP知识产权核11.ISP在系统可编程12.LUT:查找表13.HDL:硬件描述语言14.RTL:寄存器传输逻辑简答题1.简要说明仿真时阻塞赋值与非阻塞赋值的区别。非阻塞(non-blocking)赋值方式(b<=a):b的值被赋成新值a的操作,并不是立刻完成的,而是在块结束时才完成;块内的多条赋值语句在块结束时同时赋值;硬件有对应的电路。阻塞(blocking)赋值方式(b=a):b的值立刻被赋成新值a;完成该赋值语句后才能执行下一句的操作;硬件没有对应的电路,因而综合结果未知。2.简述有限状态机FSM分为哪两类?有何区别?有限状态机的状态编码风格主要有哪三种?FSM的三段式描述风格中,三段分别描述什么?根据内部结构不同可分为摩尔型Moore状态机和米里型Mearly状态机两种。摩尔型状态机的输出只由当前状态决定,而次态由输入和现态共同决;定米里型状态机的输出由输入和现态共同决定,而次态也由输入和现态决定。状态编码主要有三种:连续二进制编码、格雷码和独热码。3.VerilogHDL语言进行电路设计方法有哪几种①自上而下的设计方法(Top-Down)②自下而上的设计方法(Bottom-Up)③综合设计的方法4.简述moore状态机和mealy状态机的区别答:从输出的时序上看,Mealy机的输出是当前状态和所有输入信号的函数,它的输出是在输入变化后立即发生的。Moore机的输出则仅为当前状态的函数,在输入发生变化时还必须等待时钟的到来,时钟使状态发生变化时才导致输出的变化。Moore型状态机:次态=f(现状,输入),输出=f(现状);Mealy型状态机:次态=f(现状,输入),输出=f(现状,输入);5.简述FPGA内部主要结构及其功能答:FPGA由6部分组成,分别为可编程输入/输出单元、基本可编程逻辑单元、嵌入式块RAM、丰富的布线资源、底层嵌入功能单元和内嵌专用硬核等。大多数FPGA的I/O单元被设计为可编程模式,即通过软件的灵活配置,可适应不同的电器标准与I/O物理特性;可以调整匹配阻抗特性,上下拉电阻;可以调整输出驱动电流的大小等。查找表完成纯组合逻辑功能。查找表完成纯组合逻辑功能。嵌入式块RAM可以配置为单端口RAM、双端口RAM、伪双端口RAM、CAM、FIFO等存储结构。布线资源连通FPGA内部所有单元。6.简述基于数字系统设计流程包括哪些步骤?包括五个步骤:⑴、设计输入:将设计的结构和功能通过原理图或硬件描述语言进行设计或编程,进行语法或逻辑检查,通过表示输入完成,否则反复检查直到无任何错误。⑵、逻辑综合:将较高层的设计描述自动转化为较低层次描述的过程,包括行为综合,逻辑综合和版图综合或结构综合,最后生成电路逻辑网表的过程。⑶、布局布线:将综合生成的电路网表映射到具体的目标器件中,并产生最终可下载文件的过程。⑷、仿真:就是按照逻辑功能的算法和仿真库对设计进行模拟,以验证设计并排除错误的过程,包括功能仿真和时序仿真。⑸、编程配置:将适配后生成的编程文件装入到PLD器件的过程,根据不同器件实现编程或配置。7.简述CPLD和FPGA主要区别。答:CPLD:主要逻辑阵列块、宏单元、扩展乘积项和可编程连线阵列构成。程序掉电不丢失。FPGA:FPGA中多使用4输入的LUT,所以每一个LUT可以看成一个有4位地址线的16x1的RAM,程序掉电丢失,需重新加载。8.EDA设计的基本设计过程。答:图形输入HDL;文本输入;综合;适配;时序仿真与功能仿真;编程下载;硬件测试.9.解释什么是功能仿真?综合答:是直接对HDL、原理图描述或其他描述形式的逻辑功能进行测试模拟,以了解其实现的功能是否满足原设计的要求。仿真过程可不涉及任何具体器件的硬件特性。10.简述Verilog描述的状态机的一般结构包含哪几个部分。答:说明部分、主控时序进程、主控组合进程、辅助进程。(1)说明部分:使用parameter定义系统状态:用于描述状态。(2)主控时序进程:负责状态机运转和在时钟驱动下负责状态转换的进程。(3)主控组合进程:根据外部输入的控制信号和当前状态的状态值确定下一状态(next_state)的取向。(4)辅助进程:用于配合状态机工作的组合进程或时序进程11.简述VerilogHDL编程语言中函数与任务运用有什么特点?函数和任务都能独立完成相应电路功能,通过在同一模块中的调用实现相应逻辑电路功能。但它们又有以下不同:⑴、函数中不能包含时序控制语句,对函数的调用,必须在同一仿真时刻返回。而任务可以包含时序控制语句,任务的返回时间和调用时间可以不同。⑵、在函数中不能调用任务,而任务中可以调用其它任务和函数。但在函数中可以调用其它函数或函数自身。⑶、函数必须包含至少一个端口,且在函数中只能定义input端口。任务可以包含0个或任何多个端口,且可以定义input、output和inout端口。⑷、函数必须返回一个值,而任务不能返回值,只能通过output或inout端口来传递执行结果。12.简述FPGA与CPLD两种器件应用特点。CPLD与FPGA都是通用可编程逻辑器件,均可在EDA仿真平台上进行数字逻辑电路设计,它们不同体现在以下几方面:⑴FPGA集成度和复杂度高于CPLD,所以FPGA可实现复杂逻辑电路设计,而CPLD适合简单和低成本的逻辑电路设计。⑵、FPGA内主要由LUT和寄存器组成,倾向实现复杂时序逻辑电路设计,而CPLD内主要由乘积项逻辑组成,倾向实现组合逻辑电路设计。⑶、FPGA工艺多为SRAM、flash等工艺,掉电后内信息消失,所以该类型需外配存储器,而CPLD工艺多为EEPROM等工艺,掉电后信息不消失,所以不用外配存储器。⑷、FPGA相对CPLD成本高,但都可以在内都镶嵌硬核和软核,实现片上系统功能。13.画出下面程序综合出来的电路图。always@(posedgeclk)beginq0<=~q2;q1<=q0;q2<=q1;end程序填空1.下面是case语句编写的3-8译码器电路,将横线上的语句补上,使程序形成完整功能moduledecoder38(sel,csout);①②reg[7:0]csout;always@(③)begincase(④)3'b000:csout=8'b11111110;3'b001:csout=8'b11111101;3'b010:csout=8'b11111011;3'b011:csout=8'b11110111;3'b100:csout=8'b11101111;3'b101:csout=8'b11011111;3'b110:csout=8'b10111111;3'b111:csout=8'b01111111;default:csout=8'b11111110;endcaseendendmodule①input[2:0]sel;②output[7:0]csout;③sel,csout④sel2.下面是通过case语句实现四选一电路部分程序,将横线上的语句补上,使程序形成完整功能modulemux41a(a,b,c,d,s1,s0,y);inputa,b,c,d;①outputy;②always@(a,b,c,d,s1,s0)begin:MUX41case(③)2'b00:y=a;2'b01:y=b;2'b10:y=c;2'b11:y=d;④:y=a;endcaseendendmodule①inputs1,s0;②regy;③{s1,s0}④default3.下面是通过循环语句实现程序,用以统计一个8位二进制数中含1的数量,将横线上的语句补上,使程序形成完整功能。modulenum_1_e3_16(x,num);①output[3:0]num;reg[3:0]num;②always@(③)beginnum=0;for(i=0;i<=7;i=i+1)④endendmodule①input[7:0]x;②integeri;③x④if(x[i])num=num+1;4.下面是程序功能是一个具有同步置1,异步清零0的D触发器。端口说明RST:异步清零CLK:时钟输入,SET:同步置1,EN:同步使能,D:数据输入,Q:数据输出modulee5_3(RST,CLK,SET,EN,D,Q);inputRST,CLK,SET,EN,D;①regQ;always@(②)beginif(③)Q<=0;elseif(EN)beginif(④)Q<=1;elseQ<=D;endendendmodule①outputQ;②posedgeCLKornegedgeRST③!RST④SET对应RTL图完成Verilog程序。modulee5_6(set,D,clk,en,reset,Q);inputset,D,clk,en,reset;①regQ;always@(②)beginif(reset)③elseif(set)④elseif(en)⑤endendmodule①outputQ;②posedgeclkorposedgeresetorposedgeset③Q<=0;④Q<=1;⑤Q<=D;编程题1.试用VerilogHDL描述一个带进位输入、输出的8位全加器。端口:A、B为加数,CI为进位输入,S为和,CO为进位输出2.设计一个4位4输入最大数值检测电路,其中,a、b、c和d为4位二进制数,输出为max。modulemax_in4(a,b,c,d,max);input[3:0]a,b,c,d;output[3:0]max;wire[3:0]max1=(a>=b)?a:b;wire[3:0]max2=(c>=d)?c:d;assignmax=(max1>max2)?max1:max2;endmodule3.编写一个带异步清零、异步置位的D触发器。端口:CLK为时钟,D为输入,CLK为清零输入端,SET为置位输入端;Q输出端。4.设计一个带有异步复位控制端和时钟使能控制端的10进制计数器。端口设定如下:输入端口:CLK:时钟,RST:复位端,EN:时钟使能端,LOAD:置位控制端,DIN:置位数据端;输出端口:COUT:进位输出端,DOUT:计数输出端5.编写一个4位加法计数器VHDL程序的进程(不必写整个结构框架),要求复位信号reset低电平时计数器清零,变高后,在上升沿开始工作;输入时钟信号为clk,输出为6.填写完成一个8-3线编码器的真值表(5分),并写出其verilog程序8-3线编码器真值表enby0y1y21000000000001000000100011000001000101000010000111000100001001001000001011010000001101100000001110xxxxxxxx高阻态7.用IF语句编写一个四选一电路,要求输入d0~d3,s为选择端,输出y。8.现有输入信号是一个占空比位50%的方波,用VHDL设计一个时钟的5分频电路,输出为占空比位20%,写出VHDL代码。9.现有输入信号是一个占空比位50%的方波,用VHDL设计一个时钟的5分频电路,输出为占空比位50%,写出VHDL代码。10.试用verilog语言描述:图示为一个4位移位寄存器,是由四个D触发器(分别设为U1,U2,U3,U4)构成的。其中seri_in是这个移位寄存器的串行输入;clk为移位时脉冲输入;clr为清零控制信号输入;Q[1]~Q[3]则为移位寄存器的并行输出。11.设计一个带复位端且对输入时钟clk进行二分频模块,并画出仿真波形。modulem2(out,clk,reset);inputreset,clk;outputout;regout;always@(negedgeclk)beginif(reset)out<=0;elseout<=~out;endendmodule12.设计一带异步复位端、异步置数段(低电平有效)的四位加法计数器,时钟clk上升沿有效),复位信号clr,置数信号load、输入数据data、输出qout。并画出仿真波形。moduleadder_4(qout,clr,clk,load,data);output[3:0]qout;input[3:0]data;inputload,clr,clk;reg[3:0]qout;always@(posedgeclkornegedgeloadornegedgeclk)beginif(!load)qout<=data;elseif(!clr)qout<=0;elseqout<=qout+1;endendmodule13.试设计一个3/8译码器,规定模块定义为moduleDecoder(Out,In,En),其中Out为译码器输出,In为译码器输入,En为译码使能输入。要求:写出3/8译码器VerilogHDL设计程序并注释;moduledecoder(Out,In,En);(2分)output[7:0]out;input[2:0]in;inputen;//IO定义(3分)reg[7:0]out;always@(InorEn)beginif(En==0)//若En为低电平,3输出无效电平(2分)Out=8’b0;else//若En为高电平,3/8译码(3分)case(in)3’b000:Out=8’b00000001;//03’b001:Out=8’b00000010;//13’b010:Out=8’b00000100;//23’b011:Out=8’b00001000;//33’b100:Out=8’b00010000;//43’b101:Out=8’b00100000;//53’b110:Out=8’b01000000;//63’b111:Out=8’b10000000;//7endcaseend设计一个
本文档为【EDA-VerilogHDL期末复习题总结必过(最新整理)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: ¥6.6 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
精品文档
暂无简介~
格式:pdf
大小:1MB
软件:PDF阅读器
页数:16
分类:
上传时间:2023-10-16
浏览量:61