FPGA习题集及参考答案_第1页
FPGA习题集及参考答案_第2页
FPGA习题集及参考答案_第3页
FPGA习题集及参考答案_第4页
FPGA习题集及参考答案_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

习题集及参考答案填空题一般把EDA技术的开展分为〔〕个阶段。FPGA/CPLD有如下设计步骤:=1\*GB3①原理图/HDL文本输入、=2\*GB3②适配、=3\*GB3③功能仿真、=4\*GB3④综合、=5\*GB3⑤编程下载、=6\*GB3⑥硬件测试,正确的设计顺序是=1\*GB3①〔〕=5\*GB3⑤=6\*GB3⑥。在EDA工具中,能完成在目标系统器件上布局布线的软件称为〔〕。设计输入完成之后,应立即对文件进展〔〕。基于硬件描述语言的数字系统设计目前最常用的设计方法称为〔〕设计法。将硬件描述语言转化为硬件电路的过程称为〔〕。IP核在EDA技术和开发中具有十分重要的地位,以HDL方式提供的IP被称为〔〕IP。SOC系统又称为〔〕系统。SOPC系统又称为〔〕系统。将硬核和固核作为〔〕IP核,而软核作为〔〕IP核。IP核在EDA技术和开发中具有十分重要的地位,以HDL方式提供的IP被称为〔〕。HDL综合器就是逻辑综合的过程,把可综合的VHDL/VerilogHDL转化成硬件电路时,包含了三个过程,分别是〔〕、〔〕、〔〕。EDA软件工具大致可以由五个模块构成,分别是设计输入编辑器、〔〕、〔〕、〔〕和〔〕。按仿真电路描述级别的不同,HDL仿真器分为〔〕仿真、〔〕仿真、〔〕仿真和门级仿真。系统仿真分为〔〕、〔〕和〔〕。〔〕仿真是对设计输入的标准检测,这种仿真通过只能表示编译通过,说明设计满足一定的语法标准,但不能保证设计功能满足期望。〔〕仿真是对综合后的网表进展的仿真,它验证设计模块的根本逻辑功能,但不带有布局布线后产生的时序信息,是理想情况下的验证。〔〕仿真是布局布线后进展的后仿真,仿真时考虑了布线延时,和芯片实际的工作情况更加接近。目前Xilinx公司生产的FPGA主要采用了〔〕配置存储器构造。描述测试信号的变化和测试工程的模块叫做〔〕。现代电子系统设计领域中的EDA采用〔〕的设计方法。有限状态机可分为〔〕状态机和〔〕状态机两类。VerilogHDL中的端口类型有三类:〔〕、〔〕、输入/输出端口。VerilogHDL常用两大数据类型:〔〕、〔〕。FPGA/CPLD设计流程为:原理图/HDL文本输入→〔〕→综合→适配→〔〕→编程下载→硬件测试。〔〕是描述数据在存放器之间流动和处理的过程。连续赋值常用于数据流行为建模,常以〔〕为关键词。VerilogHDL有两种过程赋值方式:〔〕和〔〕。`timescale1ns/100ps中1ns代表〔〕,100ps代表〔〕。未来的集成电路技术的开展趋势,把整上系统集成在一个芯片上去,这种芯片被称为〔〕。从互连构造上可将PLD分为确定型和统计型两类。确定型构造的代表是〔〕,统计型构造代表是〔〕。CPLD是由〔〕的构造演变而来的。FPGA的核心局部是〔〕,由内部逻辑块矩阵和周围I/O接口模块组成。把基于电可擦除存储单元的EEPROM或Flash技术的的在系统下载称为〔〕,这个过程就是把编程数据写入E2CMOS单元阵列的过程。根据配置数据线数,器件配置可分为并行配置和串行配置两类。串行配置以〔〕为单位将配置数据载人可编程器件:而并行配置一般以〔〕为单位向可编程器件载入配置数据。FPGA的配置模式有从动串行模式、从动并行模式、主动串行模式、主动并行模式、以及〔〕模式。可编程逻辑器件的配置方式分为〔〕和〔〕两类。VerilogHDL是在〔〕年正式推出的。在verilogHDL的always块本身是〔〕语句。VerilogHDL中的always语句中的语句是〔〕语句。VerilogHDL提供了标准的系统任务,用于常用的操作。如显示、文件输入/输出等,系统函数前都有一个标志符〔〕加以确认。VerilogHDL很好地支持了“自顶向下〞的设计理念,即,复杂任务分解成的小模块完成后,可以通过〔〕的方式,将系统组装起来。VerilogHDL模块分为两种类型:一种是〔〕模块,即,描述某种电路系统构造,功能,以综合或者提供仿真模型为设计目的;另一种是〔〕模块,即,为功能模块的测试提供信号源鼓励、输出数据监测。Verilog语言中,标识符可以是任意一组字母、数字、〔〕符号和下划线符号的组合。state,State,这两个标识符是〔〕同。assignc=a>ba:b中,假设a=3,b=2,则c=〔〕;假设a=2,b=3,则c=〔〕。在VerilogHDL的逻辑运算中,设A=4´b1010,则表达式~A的结果为〔〕在VerilogHDL的逻辑运算中,设a=2,b=0,则a&&b结果为〔〕,a||b结果为〔〕。在VerilogHDL的逻辑运算中,设a=4´b1010,a>>1结果是〔〕。EDA名词解释ASIC,2.CPLD,3.FPGA,4.IC,5.LUT.6.PCB.7.RTL,8.FSM,9.GAL,10.ISP,11.JATG,12.PBD,13.BBD选择题任VerilogHDL的端口声明语句中,用〔〕关键字声明端口为双向端口A:inoutB:INOUTC:BUFFERD:buffer用VerilogHDL的assign语句建模的方法一般称为〔〕方法。A:连续赋值B:并行赋值C:串行赋值D:函数赋值IP核在EDA技术和开发中具有十分重要的地位,IP是指〔〕。A:知识产权B:互联网协议C:网络地址D:都不是在verilogHDL的always块本身是〔〕语句A:顺序B:并行C:顺序或并行D:串行在VerilogHDL的逻辑运算中,设A=8'b11010001,B=8'b00011001,则表达式“A&B〞的结果为〔〕A:8'b00010001B:8'b11011001C:8'b11001000D:8'b00110111大规模可编程器件主要有FPGA、CPLD两类,以下对FPGA构造与工作原理的描述中,正确的选项是〔〕。A:FPGA是基于乘积项构造的可编程逻辑器件;B:FPGA是全称为复杂可编程逻辑器件;C:基于SRAM的FPGA器件,在每次上电后必须进展一次配置;D:在Altera公司生产的器件中,MAX7000系列属FPGA构造。以下EDA软件中,哪一个不具有逻辑综合功能:〔〕。A:ISEB:ModelSimC:QuartusIID:Synplify以下标识符中,〔〕是不合法的标识符。A:State0 B:9moon C:Not_Ack_0 D:signal@关于VerilogHDL中的数字,请找出以下数字中最大的一个:〔〕。A:8´b1111_1110B:3´o276C:3´d170D:2´h3E大规模可编程器件主要有FPGA、CPLD两类,以下对CPLD构造与工作原理的描述中,正确的选项是〔〕。

A:CPLD是基于查找表构造的可编程逻辑器件;B:CPLD即是现场可编程逻辑器件的英文简称;C:早期的CPLD是从GAL的构造扩展而来;D:在Xilinx公司生产的器件中,XC9500系列属CPLD构造;IP核在EDA技术和开发中具有十分重要的地位;提供用VHDL等硬件描述语言描述的功能块,但不涉及实现该功能块的具体电路的IP核为〔〕。A:瘦IPB:固IPC:胖IPD:都不是不完整的IF语句,其综合结果可实现〔〕。A:时序逻辑电路 B:组合逻辑电路C:双向电路D:三态控制电路CPLD的可编程是主要基于什么构造〔〕。A:查找表〔LUT〕C:PAL可编程B:ROM可编程D:与或阵列可编程IP核在EDA技术和开发中具有十分重要的地位,以HDL方式提供的IP被称为:〔〕A:硬IPB:固IPC:软IPD:都不是;设a=4´b1010,b=4´b0001,c=4´b1xz0则以下式子的值为1的是〔〕A:a>bB:a<=cC:13-a<bd:13–(a>b)设a=2,b=0,则以下式子中等于X的是〔〕。A:a&&bB:a||bC:!aD:x&&aFPGA可编程逻辑基于的可编程构造基于〔〕。A:LUT构造B:乘积项构造C:PLDD:都不对CPLD可编程逻辑基于的可编程构造基于〔〕。A:LUT构造B:乘积项构造C:PLDD:都不对以下运算符优先级最高的是〔〕。A:!B:+C:&D:{}设a=1´b1,b=3´b101,c=4´b1010则X={a,b,c}的值的等于〔〕A:7´b1101100B:8´b10101011C:8´b11010101D:8´b11011010将设计的系统按照EDA开发软件要求的某种形式表示出来,并送入计算机的过程,称为〔〕。A:设计的输入B:设计的输出C:仿真D:综合一般把EDA技术的开展分为〔〕个阶段。A:2B:3C:4D:5设计输入完成之后,应立即对文件进展〔〕。A:编译B:编辑C:功能仿真D:时序仿真VHDL是在〔〕年正式推出的。A:1983B:1985C:1987D:1989VerilogHDL是在〔〕年正式推出的。A:1983B:1985C:1987D:1989基于硬件描述语言的数字系统设计目前最常用的设计方法称为〔〕设计法。A:自底向上B:自顶向下C:积木式D:顶层在EDA工具中,能将硬件描述语言转化为硬件电路的重要工具软件为〔〕。A:仿真器B:综合器C:适配器D:下载器在EDA工具中,能完成在目标系统器件上布局布线的软件称为〔〕。A:仿真器B:综合器C:适配器D:下载器逻辑器件〔〕属于非用户定制电路。A:逻辑门B:PROMC:PLAD:GAL可编程逻辑器件PLD属于〔〕电路。A:半用户定制B:全用户定制C:自动生成D:非用户定制不属于PLD根本构造局部的是〔〕。A:与门阵列B:输入缓存C:与非门阵列D:或门阵列任VerilogHDL的标识符使用字母的规则是〔〕。A:大小写一样B:大小写不同C:只允许大写D:只允许小写操作符是VerilogHDL预定义的函数命名,操作符是由〔〕字符组成的。A:1B:2C:3D:1~3在VerilogHDL模块中,task语句类似高级语言中的〔〕。A:函数B:常数C:变量D:子程序在VerilogHDL模块中,函数调用时返回一个用于〔〕的值。A:表达式B:输出C:输入D:程序包VerilogHDL中的always语句中的语句是〔〕语句。A:串行B:顺序C:并行D:顺序或并行嵌套的if语句,其综合结果可实现〔〕。A:条件相与的逻辑B:条件相或的逻辑C:条件相异或的逻辑D:三态控制电路嵌套的使用if语句,其综合结果可实现〔〕。A:带优先级且条件相与的逻辑电路B:双向控制电路C:三态控制电路D:条件相异或的逻辑电路以下哪个FPGA/CPLD设计流程是正确的〔〕。A:原理图/HDL文本输入->功能仿真->综合->适配->编程下载->硬件测试B:原理图/HDL文本输入->适配->综合->功能仿真->编程下载->硬件测试C:原理图/HDL文本输入->功能仿真->综合->编程下载->适配->硬件测试D:原理图/HDL文本输入->适配->功能仿真->综合->编程下载->硬件测试简答题简述EDA技术的开展历程?什么是EDA技术?在EDA技术中,什么是自顶向下的设计方法?自顶向下的设计方法有什么重要意义?简要说明目前现代数字系统的开展趋势是什么?简述现代数字系统设计流程。简述原理图设计法设计流程。简述原理图设计法设计方法的优缺点。什么是综合?综合的步骤是什么?什么是基于平台的设计?现有平台分为哪几个类型?目前,目前数字专用集成电路的设计主要采用三种方式?各有什么特点?什么是SOC技术含义是什么?什么是SOPCSOPC技术含义是什么?SOPC技术和SOC技术的区别是什么?SOPC技术是指什么?SOPC的技术优势是什么?简要说明一下功能仿真和时序仿真的异同。设计过程中如果只做功能仿真,不做时序仿真,设计的正确性是否能得到保证?综合完成的主要工作是什么?实现〔Implement〕完成的主要工作是什么?主要的HDL语言是哪两种?VerilogHDL语言的特点是什么?简述阻塞赋值与非阻塞赋值的不同。简述过程赋值和连续赋值的区别。什么叫做IP核IP在设计中的作用是什么什么是IP软核,它的特点是什么?根据有效形式将IP分为哪几类?根据功能方面的划分分为哪两类?比拟基于查找表的FPGA和CPLD系统构造和性能上有何不同什么是数据流级建模?什么是行为级建模?timescale指令的作用是什么。采用HDL完成设计后,必须应用测试程序〔testbench〕对设计的正确性进展验证。测什么是FPGA,CPLD?他们分别是基于什么构造的可编程逻辑构造?CPLD是基于什么构造的可编程逻辑器件?其根本构造由哪几局部组成。FPGA是于什么构造的可编程逻辑器件?其根本构造由哪几局部组成。PLD器件按照编程方式不同,可以分为哪几类?解释编程与配置这两个概念。说明FPGA配置有哪些模式,主动配置和从动配置的主要区别是什么?为什么在FPGA构成的数字系统中要配备一个PROM或E2PROM?程序补充完整下面程序是一个3-8译码器的VerilogHDL描述,试补充完整。空〔1〕decoder_38(out,in)output[7:0]out;input[2:0]in;reg[7:0]out空〔2〕@(in)begin空〔3〕(in)3´d0:out=8´b11111110;3´d1:out=8´b11111101;3´d2:out=8´b11111011;3´d3:out=8´b11110111;3´d4:out=8´b11101111;3´d5:out=8´b11011111;3´d6:out=8´b10111111;3´d7:out=8´b01111111;endcase空〔4〕空〔5〕下面程序4位计数器的VerilogHDL描述,试补充完整。空〔1〕count4(out,reset,clk)output[3:0]out;空〔2〕reset,clk;reg[3:0]out;空〔3〕@(posedgeclk)空〔4〕 if(reset)out<=0; else out<=out+1;end空〔5〕下面程序描述一个时钟上升沿触发、同步复位的D触发器,试补充完整。空〔1〕dflop(d,reset,clk,q);inputd,clk;inputreset;空〔2〕q;regq;空〔3〕(posedgeclk)if(reset) q<=0;elseq<=空〔4〕;空〔5〕用下面测试平台对mux21u1二选一选择器进展测试,试补充完整。空〔1〕1ns/100psModule空〔2〕;regA,B;regSEL;wireC;mux21u1(.a(A),.b(B),.sel(SEL),.c(C));空〔3〕beginA=0;B=0;SEL=0;#10beginA=1;B=0;SEL=0;end#10beginA=0;B=0;SEL=1;end#10$空〔4〕;end空〔5〕clock1是周期为20的时钟,clock_pshift是clock1相移,试补充完整。空〔1〕Gen_clock1(clock_pshift,clock1);outputclock_pshift,clock1;regclock1;wireclock_pshift;空〔2〕T=20;parameterpshift=2;空〔3〕clock1=0;always#(T/2)clock1=~clock1;空〔4〕#PSHIFTclock_pshift=clock1;空〔5〕下面程序描述了8位移位存放器,试补充完整。空〔1〕shifter(空〔2〕,clr,dout);inputdin,clk,clr;output空〔3〕dout;reg[7:0]dout;always@(posedgeclk)beginif(空〔4〕)dout<=8'b0;elsebegindout<=dout<<1;dout[0]<=din;end空〔5〕endmodule下面程序描述了一个数据选择器MUX,试补充完整。空〔1〕mux(data_in1,data_in2,sel,data_out);inputdata_in1,data_in2;input[1:0]sel;outputdata_out;always@〔空〔2〕〕begincase〔空〔3〕〕2′b00:data_out<=data_in1^data_in2;2′b01:data_out<=data_in1|data_in2;2′b10:data_out<=data_in1~^data_in2;2′b11:data_out<=~data_in1;空〔4〕:data_out<=2′bxx;endcaseend空〔5〕下面程序描述了一个返回两个数中的最大值的函数。试补充完整。空〔1〕[3:0]max;空〔2〕[3:0]a,b;beginif(空〔3〕)max=a;elsemax=b;空〔4〕空〔5〕程序改错下面的中有5处错误,试找出错误并修改正确。第1行moduledivide2(clk,clk_o,reset)第2行input

clk,reset;第3行output

clk_o;

第4行wirein;

第5行wireout;

第6行always(posedgeclkorposedgereset)

第7行if(reset)

第8行

out<=0;

第9行

else

第10行out<=in;

第11行

assignin<=~out;

第12行assignclk_o=out;下面的中有5处错误,试找出错误并修改正确。第1行moduledff8(reset,d,q);

第2行input

clk;

第3行input

reset;

第4行input[7:0]

d;

第5行outputq;

第6行reg[7:0]q;

第7行initial@(posedgeclk)

第8行

if(reset)

第9行

q<=0;

第10行else

第11行

q<=d;

第12行endmodule;下面的中有5处错误,试找出错误并修改正确。第1行moduledecode4_7(decodeout,indec)第2行output[6:0]decodeout;第3行input[3:0]indec;第4行reg[6:0]decodeout;第5行always@(indec)第6行begin第7行 case第8行 4´d1:decodeout=7´b1111110;第9行4´d1:decodeout=7´b0110000;第10行4´d2:decodeout=7´b1101101;第11行4´d3:decodeout=7´b1111001;第12行4´d4:decodeout=7´b0110011;第13行4´d5:decodeout=7´b1011011;第14行4´d6:decodeout=7´b1011111;第15行4´d7:decodeout=7´b1110000;第16行4´d8:decodeout=7´b1111111;第17行4´d9:decodeout=7´b1111011;第18行endcase第19行end下面的中有5处错误,试找出错误并修改正确。第1行timescale10ns/1ns第2行modulewave2;第3行regwave;第4行cycle=5;第5行always第6行fork第7行wave=0;第8行#(cycle)wave=1;第9行#(2*cycle)wave=0;第10行#(3*cycle)wave=1;第11行#(4*cycle)wave=0;第12行#(5*cycle)$finish;第13行endmodule;下面的中有5处错误,试找出错误并修改正确。第1行modulealutast(code,a,b,c)第2行input[1:0]code;第3行input[3:0]a,b;第4行output[4:0]c;第5行reg[4:0]c;第6行taskmy_and;第7行input[3:0]a,b;第7行output[4:0]out;第8行intergeri;第9行for(i=3;i>=0;i=i-1)第10行out[i]=a[i]&b[i];第11行end第12行always@(codeoraorb)第13行begin第14行 case(code)第15行 2’b00:my_hand(a,b,c);第16行2’b01:c=a|b;第17行 2’b10:c=a-b;第18行 2’b11:c=a+b;第19行end第20行endmodule;下面的中有5处错误,试找出错误并修改正确。modulemux4_1(out,in0,in1,in2,in3,sel);inputout;inputin0,in1,in2,in3;inputsel;regout;always@()case(sel)2'b01: out=in0;2'b01: out=in1;2'b10: out=in2;2'b11: out=in3;default:out=2'bx;endmodule下面的中有5处错误,试找出错误并修改正确。moduleencoder8_3(none_on,outcode,a,b,c,d,e,f,g,h);outputnone_on;output[3:0]outcode;inputa,b,c,d,e,f,g,h;reg[3:0]outtemp;assign{none_on,outcode}=outtemp;always(aorborcordoreorforgorh)if(h) outtemp=4'b0111;elseif(g) outtemp=4'b0110;elseif(f) outtemp=4'b0101;elseif(e) outtemp=4'b0100;elseif(d) outtemp=4'b0011;elseif(c) outtemp=4'b0010;elseif(b) outtemp=4'b0001;elseif(a) outtemp=4'b0000;elseif outtemp=4'b1000;endendmodule下面的中有5处错误,试找出错误并修改正确。moduleshifter();inputdin,clk,clr;output[7:0]dout;reg[7:0]dout;alway@(posedgeclk)if(clr)dout=8'b0;elsebegindout<=dout<<1;dout[0]<=din;endendmodule程序分析与设计设计7人投票表决器,当大于等于4票时输出为1,否则为0。试描述一个具有循环左移和循环右移功能的8位串入并出移位存放器。试描述一个能实现2倍分频功能的模块。

试描述一个异步复位、二十进制的减法计数器。 试描述一个带进位输入、输出的4位全加器,其中端口:A、B为加数,CIN为进位输入,S为加和,COUT为进位输出。试描述一个同步置数、同步清零的8位加法计数器分别用持续赋值和阻塞赋值方式描述的2选1多路选择器。用阻塞赋值方式描述移位存放器。用for语句实现2个位数相乘。试描述8-3优先编码器。试描述一个异步清0、异步置1的D触发器。试描述一个4位并串转换器。设计一个序列检测器,用于检测串行的二进制序列,每当连续输入三个或三个以上的1时,序列检测器的输出为1,其它情况下输出为0。〔1〕画出状态图〔2〕写出实现程序。设计一个状态机实现在时钟clk的控制下检测输入的串行数据是否为“110〞,画出状态转移图,并写出设计实现程序。要求:当串行数据是“101〞时,flag_out=1,否则flag_out=0。以下图是一个含有下降沿触发的D触发器的时序电路,试写出此电路的VerilogHDL设计程序。根据以下原理图写出相应的Verilog程序。□习题集解答填空题1.〔3〕2.(=3\*GB3③=4\*GB3④=2\*GB3②)3.(适配器)4.(编译)5.(自顶向下)6.(综合)7.(软)8.(片上系统)、(可编程片上系统)9.(硬)、(软)10.(软IP)11.(转化)、(优化)、(映射)12.〔HDL综合器〕、〔仿真器〕、〔适配器或布局、布线器〕、〔下载器〕13.〔系统级〕、〔行为级〕、〔RTL级〕14.〔行为仿真〕、〔功能仿真〕、〔时序仿真〕15.(行为)16.(功能)17.(时序)18.〔SRAM〕19.〔测试平台testbench〕20.〔自顶向下〕21.〔Mealy〕、〔Moore〕22.〔输入端口〕、〔输出端口〕23.〔线网类型〕、〔存放器类型〕24.〔功能仿真〕、〔时序仿真〕25.〔数据流级建模〕26.〔assign〕27.〔阻塞赋值〕、〔非阻塞赋值〕28.〔时间单位〕、〔时间精度〕29.〔片上系统SOC〕30.〔CPLD、〔FPGA〕31.〔简单PLD〕32.〔逻辑单元阵列LCA〕33.〔编程〕34.〔Bit比特)、(Byte字节)35.〔JTAG〕36.〔主动配置〕、〔从动配置〕37.〔1983〕38.〔并行〕39.〔顺序〕40.〔$〕41.〔调用〔也称例化〕〕42.〔功能〕、〔测试〕43.〔$〕44.〔不同〕45.〔3〕、〔3〕46.〔8'b0101〕47.〔0〕、〔1〕48.〔4´b0101〕EDA名词解释ApplicationSpecificInte

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论