




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Verilog复习题一、填空题1 .用EDA技术进行电子系统设计的目标是最终完成ASIC的设计与实现。2 .可编程器件分为CPLD和FPGA。3 .随着EDA技术的不断完善与成熟,自顶向下的设计方法更多的被应用于VerilogHDL设计当中。4 .目前国际上较大的PLD器件制造公司有ALtera和Xilinx公司。5 .完整的条件语句将产生组合电路,不完整的条件语句将产生时序电路。6 .阻塞性赋值符号为,非阻塞性赋值符号为<=7 .有限状态机分为Moore和Mealy两种类型。8 .EDA缩写的含义为电子设计自动化(ElectronicDesignAutomation)|9 .状态机常用
2、状态编码有二进制、格雷码和独热码。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'1012、在verilog中,下列语句哪个不是分支语句?(D)(A)if-else(B)case(
3、C)casez(D)repeat3、VerilogHDL语言进行电路设计方法有哪几种(8分) 自上而下的设计方法(Top-Down) 自下而上的设计方法(Bottom-Up)综合设计的方法4、在verilog语言中,a=4b'1011,那么&a=(D)(A)4b'1011(B)4b'1111(C)1b'1(D)1b'05、在verilog语言中整型数据与(C)位寄存器数据在实际意义上是相同的。(A)8(B)16(C)32(D)646、大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA结构与工作原理的描述中,正确的是C。A.FPGA全称为
4、复杂可编程逻辑器件;B.FPGA呈逻辑器件;C.基于SRAM的FPGA器件,在每次上电后必须进行一次配置;D.在Altera公司生产的器件中,MAX7000系列属FPGA结构。7 、子系统设计优化,主要考虑提高资源利用率减少功耗(即面积优化)(即速度优化);指出下列哪些方法是面积优化B。 流水线设计 资源共享 逻辑优化 串行化 寄存器配平 关键路径法A.曲.C.D.8 、下列标识符中,A是不合法的标识符。A.9moonB.State0C.Not_Ack_0D.signall9 、下列语句中,不属于并行语句的是:D_A.过程语句B.assign语句C.元件例化语句D.case语句6、10、P,Q
5、,R都是4bit的输入矢量,下面哪一种表达形式是正确的1) inputP3:0,Q,R;2) inputP,Q,R3:0;3) inputP3:0,Q3:0,R3:0;4) input3:0P,3:0Q,0:3R;5) input3:0P,Q,R;11、请根据以下两条语句的执行,最后变量A中的值是。reg7:0A;A=2'hFF;8'b0000_00118'h038'b1111_11118'b11111111,以及提高运行速度5)三、简答题1 、简要说明仿真时阻塞赋值与非阻塞赋值的区别非阻塞(non-blocking)赋值方式(b<=a):b的值被
6、赋成新值a的操作,并不是立刻完成的,而是在块结束时才完成;块内的多条赋值语句在块结束时同时赋值;硬件有对应的电路。阻塞(blocking)赋值方式(b=a):b的值立刻被赋成新值a;完成该赋值语句后才能执行下一句的操作;硬件没有对应的电路,因而综合结果未知。阻塞赋值是在该语句结束是立即完成赋值操作;非阻塞赋值是在整个过程块结束是才完成赋值操作。2 、简述有限状态机FSM分为哪两类?有何区别?有限状态机的状态编码风格主要有哪三种?根据内部结构不同可分为摩尔型状态机和米里型状态机两种。摩尔型状态机的输出只由当前状态决定,而次态由输入和现态共同决定;米里型状态机的输出由输入和现态共同决定,而次态也由
7、输入和现态决定。状态编码主要有三种:连续二进制编码、格雷码和独热码。3 、简述基于数字系统设计流程包括哪些步骤?包括五个步骤:、设计输入:将设计的结构和功能通过原理图或硬件描述语言进行设计或编程,进行语法或逻辑检查,通过表示输入完成,否则反复检查直到无任何错误。、逻辑综合:将较高层的设计描述自动转化为较低层次描述的过程,包括行为综合,逻辑综合和版图综合或结构综合,最后生成电路逻辑网表的过程。、布局布线:将综合生成的电路网表映射到具体的目标器件中,并产生最终可下载文件的过程、仿真:就是按照逻辑功能的算法和仿真库对设计进行模拟,以验证设计并排除错误能仿真和时序仿真。的过程,包括功、编程配置:将适配
8、后生成的编程文件装入到PLD器件的过程,根据不同器件实现编程或配置。4、简述VerilogHDL编程语言中函数与任务运用有什么特点?函数和任务都能独立完成相应电路功能,通过在同一模块中的调用实现相应逻辑电路有以下不同:、函数中不能包含时序控制语句,对函数的调用,必须在同一仿真时刻返回。而任控制语句,任务的返回时间和调用时间可以不同。、在函数中不能调用任务,而任务中可以调用其它任务和函数。但在函数中可以调数自身。功能。但它们又务可以包含时序用其它函数或函、函数必须包含至少一个端口,且在函数中只能定义input端口。任务可以包含0个或任何多个端口,且可以定义input、output和inout端口
9、、函数必须返回一个值,而任务不能返回值,只能通过执行结果。output或inout端口来传递5、简述FPGA与CPLD两种器件应用特点。CPLD与FPGA都是通用可编程逻辑器件,均可在EDA仿真平台上进行数字逻辑电路体现在以下几方面:FPGA集成度和复杂度高于CPLD,所以FPGA可实现复杂逻辑电路设计,适合简单和低成本的逻辑电路设计。、FPGA内主要由LUT和寄存器组成,倾向实现复杂时序逻辑电路设计,而内主要由乘积项逻辑组成,倾向实现组合逻辑电路设计。、FPGA工艺多为SRAM、flash等工艺,掉电后内信息消失,所以该类型需外配存工艺多为EEPROM等工艺,掉电后信息不消失,所以不用外配存
10、储器。、FPGA相对CPLD成本高,但都可以在内都镶嵌硬核和软核,实现片上系统功能。设计,它们不同而CPLDCPLD储器,而CPLD四、计算题利用有限状态机,以格雷码编译方式设计一个从输出信号序列中检测出101信号的电路图,其方块图、状态图和状态表如图表示。Dili'QoutO'OSODmelkQoutresetRcsei=lDinQout00DiliDiiiQout0DinQout-10II目前状态cs下一状态NS和输出QoutDin=0Din=1S0=00SO,OS1,0S1=01S2,0S1,0S2=11S0,0S1,1modulemelay(clk,Din,reset,
11、Qout);inputclk,reset;inputDin;outputQout;regQout;parameter1:0S0=2'b00,S1=2'b01,S2=2'b11;reg1:0CS;reg1:0NS;always(posedgeclkorposedgereset)beginif(reset=1'b01)CS=S0;elseCS=NS;endalways(CSorDin)begincase(CS)S0:beignif(Din=1'b0)beginNS=S0;Qout=1'b0;endelsebeginNS=S1;Qout=1'b
12、0;endendS1:beginif(Din=1'b0)beginNS=S2;Qout=1'b0;endelsebeginNS=S1;Qout=1'b0;endendS2:beignif(Din=1'b0)beginNS=S0;Qout=1'b0;endelsebeginNS=S1;Qout=1'b0;endendendcaseendendmodule2、程序注解,并说明整个程序完成的功能。moduleAAA(a,b);outputa;input6:0b;reg2:0sum;integeri;rega;always(b)beginsum=0;fo
13、r(i=0;i<=6;i=i+1)if(bi)sum=sum+1;if(sum2)a=1;elsea=0;endendmodulemoduleAAA<sJ;苣<棋块有为AAA,端=1为矶b卞丈丑九向出猫匚!0】ou-tput3.inputObi弓盒2:0mm;inrcgn立义t?为棺出删口?b为丁位二进制皴如mj<lr弓金型变童用于隽计成的人散定义晏型爱匿iregaUVL,3A至E:X曲SUJTl=0.过程语柯够虐弓亵量为b语旬块?n初倍沟Qsum"sum -;elsrfor(i = 0;i<=6;i = i*l)WJDDfor语包,轨计V R 1的个数
14、条件语同只妾有人投竣对淳,则sun削ILfsu?n2) a - 1;若-存M 4人,若超过十人珞成则衣块通过 刚不通过3、设计一个带有异步复位控制端和时钟使能控制端的10进制计数器。端口设定如下:输入端口:CLK:时钟,RST:复位端,EN:时钟使能端,LOAD:置位控制端,DIN:置位数据端;输出端口:COUT:进位输出端,DOUT:计数输出端。modulecnt10(clk,rst,en,loat,cout,dout,data);inputclk;inputen;inputrst;inputload;input3:0data;output3:0dout;outputcout;reg3:0q
15、1;regcout;assigndout=q1;always(posedgeclkornegedgerst)beginif(!rst)q1<=0;elseif(en)beginif(!loat)q1<=data;elseif(q1<9)q1<=q1+1;elseq1<=4'bOOOO;endendalways(q1)if(q1=4'h9)cout=1'b1;elsecout=1'bO;功能。endmodule4、下面是通过case语句实现四选一电路部分程序,将横线上的语句补上,使程序形成完整modulemux4_tottout,il
16、LilTi2ti3tsl,sO);outputout;inputidJI,i3;inputsi,sO;regout;always晅心IorsQoriOorilori2or13)cast(I/Switchbasedoilconotcuudonofcontrol琲中inkdefault:$display(T<Invalidcontrolsignals*');cndcascciidmodulccase(s1,s0)2'b00:out=i0;2'b01:out=i1;2'b10:out=i2;2'b11:out=i3;3、标注各语句功能,指出整个程序完成的
17、电路功能。带同步清0/同步置1(低电平有效)的D触发器?moduledff_syn(q,qn,d,clk,set,reset);II定义模块为diff_syn,端口为q,qn,d,clk,set,resetinputd,clk,set,reset;outputregq,qn;II定义端口d,clk,set,reset为输入端口,reg,q,qn为输出端口always(posedgeclk)II对clk信号上升沿有效beginif(reset)beginqv=1'b0;qnv=1'b1;endII同步清零,低电平有效elseif(set)beginqv=1'b1;qnv=
18、1'b0;endII同步置位,低电平有效elsebeginqv=d;qnv=d;endIIq输出为d,qn输出为非d;endendmodule模块结束4、根据图3给定的两个2位全加器信号关系及实现的4位全加器功能部分程序,在下列部分程序中的横线上填入必要语句,实现4位全加器的完整功能。a(3.2) aib(3.2)suma(1 0) aiJ0 -0) ;hisum2位加法器coutcO sum4(1 .0)bi2位加法器.coutClsum4(3.2)cout4/底层4位全加器程序module add2(ai,bi,ci,sum,cout); input 1:0ai,bi;i nput
19、 ci;output 1:0sum; reg 1:0sum;output cout;reg cout;always (ai,bi,ci)cout,sum=ai+bi+ci;en dmodule/顶层8位全加器程序module fadd4(a,b,c,sum4,cout4);in put 3:0a,b;i nput c; output 3:0 sum4output cout4; wire c0;add4 U1(_a1:0,b1:0,c,c0,sum41:0);_ add4U2( a3:0,b3:0,c0,cou nt4,sum43:0); en dmodule5、根据下列给 定的仿真输入输出波形
20、图2,说明完成此功能的电路是什么功能电路?并写出对应的Verilog HDL 描述程序(图中clk,clr为输入,q,c为输出)。4进制加法计数器(1kdr1I 1 I ii111 I I1 1 1 1 1 1 11 1 1I i 11I 1 I 111I1 ii1 1 1 1 1 1 1川!V1_._1 1 1 111111111Hf$:】I1 1 1 1 1 1 11 11 11 1 1 1 1 1 1 11 1 1ioc0 I J 1 1 13 I 0 '1111i 111 11 1 11 1 1 1 1 1 11 1 1 1 1 1 11 11 1 1 , 1 1 i 1 1
21、1 1 11 1 1 1 1modulecounter(clk,clr,q,c)inputclk,clr;outputret1:Oq;outputc;always(posedgeclkornegedgeclr)beginif(clr)q<=2'0;elsebeginif(2'3=q)q<=2'0;elseq<=q+2'1;endendassignc=(2'3=q)endmodule6、采用结构描述方法设计一个二进制数字半加器,输入数据ai与bi,并将和输出到so,进位输出到co,给出详细设计过程。so=aibiaibiai二bi,_co
22、二aibi输入输出aibisoco0000011010101101由输入输出逻辑表达式,采用与门and和异或门xor进行结构描述的程序如下:(6分)modulehadd(ai,bi,so,co);inputai,bi;outputso,co;xor(so,si,ci);and(co,ai,bi);endmodule6 、采用结构描述方法设计一个二进制数字比较器,比较输入数据a与b的大小,并分别输出到x,y和z给出详细设计过程。x=abab,y=ab,z=abnot(not_a,a);not(not_b,b);and(ab,a,b);and(not_ab,not_a,not_b);or(x,ab
23、,not_ab);and(y,not_a,b);and(z,a,not_b);7 、采用结构描述方法设计一个3人竞选数字电路,输入数据2:0x,要求2人以上为1表示通过,且输出为y为1否则输出相反,给出详细设计过程。modulethree1(x,y);input2:0x;outputy;y=a&b+a&c+b&c=ab+ac+bc;wirea,b,c;and(a,x0,x1);and(b,x1,x2);and(c,x1,x0);or(y,a,b,c);endmodule一、填空题(10分,每小题1分)1. 用EDA技术进行电子系统设计的目标是最终完成ASIC的设计与实现
24、。2. 可编程器件分为FPGA和CPLD。3. 随着EDA技术的不断完善与成熟,自顶向下的设计方法更多的被应用于VerilogHDL设计当中。4. 目前国际上较大的PLD器件制造公司有Altera和Xilinx公司。5.完整的条件语句将产生组合电路,不完整的条件语句将产生时序电路。6.阻塞性赋值符号为=,非阻塞性赋值符号为<=。二、选择题(10分,每小题2分)1. 大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA结构与工作原理的描述中,正确的是C。AFPGA全称为复杂可编程逻辑器件;BFPGA是基于乘积项结构的可编程逻辑器件;C.基于SRAM的FPGA器件,在每次上电后必须进
25、行一次配置;D.在Altera公司生产的器件中,MAX7000系列属FPGA结构。2. 基于EDA软件的FPGA/CPLD设计流程为:原理图/HDL文本输入综合t_tt适配t编程下载t硬件测试。正确的是B。功能仿真时序仿真逻辑综合配置分配管脚A.B.C.D.3. 子系统设计优化,主要考虑提高资源利用率减少功耗(即面积优化),以及提高运行速度(即速度优化);指出下列哪些方法是面积优化B。流水线设计资源共享逻辑优化串行化寄存器配平关键路径法A?B.C.D.4. 下列标识符中,A是不合法的标识符。A.9moonB.State0C.Not_Ack_0D.signall5. 下列语句中,不属于并行语句的
26、是:_D7大会员特权立即尝鲜A.过程语句B.assign语句C.元件例化语句D.case语句三、EDA名词解释(10分)写出下列缩写的中文含义:ASIC:RTL:FPGA:SOPC:CPLDLPM:EDA:IEEE:IP:ISP:四、简答题(10分)1 .简要说明仿真时阻塞赋值与非阻塞赋值的区别(本题4分)。2 .简述有限状态机FSM分为哪两类?有何区别?有限状态机的状态编码风格主要有哪三种?FSM的三段式描述风格中,三段分别描述什么?(本题6分)五、程序注解(20分,每空1分)moduleAAA(a,b);outputainput6:0breg2:0sum;integeri;regaalwa
27、ys(b)beginsum=0;for(i=0;i<=6;i=i+1)if(bi)sum=sum+1;if(sum2)a=1;elsea=0;endendmodule本程序的逻辑功能是:四、VerilogHDL语言编程题(1、2小题10分,3小题20分)要求:写清分析设计步骤和注释。1 .试用VerilogHDL描述一个带进位输入、输出的8位全加器。端口:A、B为加数,CI为进位输入,S为和,CO为进位输出2 .编写一个带异步清零、异步置位的D触发器。SET为置位输入端;Q输出 端端口:CLK为时钟,D为输入,CLK为清零输入端,3 .设计一个带有异步复位控制端和时钟使能控制端的10进制
28、计数器。端口设定如下:输入端口:CLK:时钟,RST:复位端,EN:时钟使能端,LOAD:置位控制端,DIN:置位数据端;输出端口:COUT:进位输出端,DOUT:计数输出端。一、填空题(每空2分,共20分)1、ASIC2、FPGA和CPLD。3、自顶向下4、Altera和Xilinx5、组合时序6、=<=二、选择题(10分,每小题2分)1、C2、B3、B4、A5、D三、EDA名词解释(10分)ASIC专用集成电路RTL寄存器传输级FPGA现场可编程门阵列SOPC可编程片上系统CPLD复杂可编程逻辑器件LPM参数可定制宏模块库EDA电子设计自动化IEEE电子电气工程师协会IP知识产权核I
29、SP在系统可编程四、简答题(10分)1、简要说明仿真时阻塞赋值与非阻塞赋值的区别(本题4分)。答:非阻塞(non-blocking)赋值方式(b<=a):b的值被赋成新值a的操作,并不是立刻完成的,而是在块结束时才完成;块内的多条赋值语句在块结束时同时赋值;硬件有对应的电路。阻塞(blocking)赋值方式(b=a):b的值立刻被赋成新值a;完成该赋值语句后才能执行下一句的操作;硬件没有对应的电路,因而综合结果未知。2、简述有限状态机FSM分为哪两类?有何区别?有限状态机的状态编码风格主要有哪三种?FSM的三段式描述风格中,三段分别描述什么?(本题6分)答:Mearly型,Moore型;
30、前者与输入与当前状态有关,而后者只和当前状态有关;Binary,Gray,One-Hot编码;分别为状态保存,状态切换,输出;五、程序注解(20分,每空1分)moduleAAA(a,b);定义模块名为AAA,端口为a,boutputa定义a为输出端口input6:0b定义b为输出端口,b为7位二进制数reg2:0sum;sum为reg型变量,用于统计赞成的人数integer;量rega定义a定义整型变量为寄存器变量感变量为bbegin语句块always(b)i为循环控制变过程语句,敏sum=0b为1的个数sum初值为0for(i=0;i<=6;i=i+1)for语句,统计if(bi)sum=sum+1;条件语句只要有人投赞成票,则sum加1if(sum2)a=1;若超过4人赞成,则表决通过elsea=0;若不到4人,则不通过endendmodule本程序的逻辑功能是:7人投票表决器分,3小题20分)要求:写清分析设计步骤和注释。O/、VerilogHDL编程题(1、2小题101.试用VerilogHDL描述一个带进位输入、输出的8位全加器。端口:A、B为加数,CIN为进位输入,S为和,COUT为进位输出moduleadd4v(a,b,ci,s,co);input3:0a;input3:0b;inputci;output3:0s;outputco;wire
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 山西初三期中试卷及答案
- 2025企业资产管理合同范本
- 2025合同权益转让协议
- 煤炭加工过程中的余热发电技术考核试卷
- 毛织品行业市场竞争态势考核试卷
- 木材的再生和循环利用考核试卷
- 牛的饲养遗传改良技术研究考核试卷
- 临沂大型考试试题及答案
- 建筑安全检测考核试卷
- 临床踝泵运动护理宣教
- 废品站承包小区合同(2篇)
- 浅谈电力调度数据网的传输特性
- 2024年青海省中考英语试卷真题(含答案解析)
- 高标准农田设计实施方案(技术标)
- 苹果酒的家庭做法-苹果酒的效果和作用
- 海上基本急救全套教学课件
- 安全文明施工承诺书
- 糖尿病酮症酸中毒的应急预案及护理流程
- 2024年内蒙古航开城市投资建设有限责任公司招聘笔试冲刺题(带答案解析)
- 黑龙江省佳木斯市2023-2024学年八年级下学期期中联考数学试题(无答案)
- 仿生蝴蝶飞行原理
评论
0/150
提交评论