
Verilog复习题(DOC).doc
16页Verilog复习题一、填空题1. 用EDA技术进行电子系统设计的目标是最终完成ASIC的设计与实现 2. 可编程器件分为 CPLD和FPGA3. 随着EDA技术的不断完善与成熟,自顶向下的设计方法更多的被应用于Verilog HDL设计当中4. 目前国际上较大的PLD器件制造公司有ALtera和Xilinx公司 5. 完整的条件语句将产生组合电路,不完整的条件语句将产生时序电路 6. 阻塞性赋值符号为 = ,非阻塞性赋值符号为 <= 7.有限状态机分为Moore和Mealy两种类型8、EDA缩写的含义为电子设计自动化(Electronic Design Automation)9.状态机常用状态编码有二进制、格雷码和独热码10.Verilog HDL中任务可以调用其他任务和函数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______ ①流水线设计 ②资源共享 ③逻辑优化 ④串行化 ⑤寄存器配平 ⑥关键 路径法 A.①③⑤ B.②③④ C.②⑤⑥ D.①④⑥ 8、下列标识符中,_____A_____是不合法的标识符 A.9moon B.State0 C. Not_Ack_0 D. signall9、 下列语句中,不属于并行语句的是:____D___ A. 过程语句 B.assign语句 C.元件例化语句 D.case语句6、 10、P,Q,R都是4bit的输入矢量,下面哪一种表达形式是正确的 5)1)input P[3:0],Q,R;2)input P,Q,R[3:0];3)input P[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、简述基于数字系统设计流程包括哪些步骤?包括五个步骤:⑴、设计输入:将设计的结构和功能通过原理图或硬件描述语言进行设计或编程,进行语法或逻辑检查,通过表示输入完成,否则反复检查直到无任何错误。
⑵、逻辑综合:将较高层的设计描述自动转化为较低层次描述的过程,包括行为综合,逻辑综合和版图综合或结构综合,最后生成电路逻辑网表的过程 ⑶、布局布线:将综合生成的电路网表映射到具体的目标器件中,并产生最终可下载文件的过程 ⑷、仿真:就是按照逻辑功能的算法和仿真库对设计进行模拟,以验证设计并排除错误的过程,包括功能仿真和时序仿真 ⑸、编程配置:将适配后生成的编程文件装入到PLD器件的过程,根据不同器件实现编程或配置4、简述Verilog HDL编程语言中函数与任务运用有什么特点?函数和任务都能独立完成相应电路功能,通过在同一模块中的调用实现相应逻辑电路功能但它们又有以下不同:⑴、函数中不能包含时序控制语句,对函数的调用,必须在同一仿真时刻返回而任务可以包含时序控制语句,任务的返回时间和调用时间可以不同⑵、在函数中不能调用任务,而任务中可以调用其它任务和函数但在函数中可以调用其它函数或函数自身⑶、函数必须包含至少一个端口,且在函数中只能定义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信号的电路图,其方块图、状态图和状态表如图表示module melay(clk,Din,reset,Qout);input clk,reset;input Din;output Qout;reg Qout;parameter[1:0] S0=2'b00,S1=2'b01,S2=2'b11;reg[1:0] CS;reg[1:0] NS;always @(posedge clk or posedge reset) begin if(reset==1'b01) CS=S0; else CS=NS; end always @(CS or Din) 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 endmodule2、 程序注解,并说明整个程序完成的功能。
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 = 。
