VerilogHDL复习题与答案

合集下载

Verilog HDL试卷及答案教学提纲

Verilog HDL试卷及答案教学提纲

V e r i l o g H D L试卷及答案河北大学课程考核试卷2008——2009学年第一学期 2006级电气类专业(类)考核科目EDA技术课程类别必修考核类型考查考核方式闭卷类别 A一、选择题:1、下列标示符哪些是合法的(B )A、$timeB、_dateC、8sumD、mux#2、如果线网类型变量说明后未赋值,起缺省值是(D )A、xB、1C、0D、z3、现网中的值被解释为无符号数。

在连续赋值语句中,assign addr[3:0]=-3;addr被赋予的值是( A )A、4’b1101B、4’b0011C、4’bxx11D、4’bzz114、reg[7:0] mema[255:0]正确的赋值是(A )A、mema[5]=3’ d0,B、8’ d0;C、1’ b1;D、mema[5][3:0]=4’ d15、在code模块中参数定义如下,请问top模块中d1模块delay1、delay2的值是( D )module code(x,y); module top;paramee delay1=1,delay2=1; …………….……………………………… code #(1,5) d1(x1,y1);endmodule endmoduleA、(1,1)B、(5,5)C、(5,1)D、(1,5)6、“a=4’ b11001,b=4’ bx110”选出正确的运算结果(B )A、a&b=0B、a&&b=1C、b&a=xD、b&&a=x7、时间尺度定义为timescale 10ns/100ps,选择正确答案(C )A、时间精度10nsB、时间单位100psC、时间精度100psD、时间精度不确定8、若a=9,执行$display(“current value=%0b,a=%0d”,a,a)正确显示为(B )A、current value=1001,a=09B、current vale=1001,a=9C、1001,9D、current vale=00…001001,a=99、aways begin #5 clk=0;#10 clk=~clk;end产生的波形( A )A、占空比1/3B、clk=1C、clk=0D、周期为1010、在Verilog中定义了宏名 `define sum a+b+c 下面宏名引用正确的是(C )A、out=’sum+d;B、out=sum+d;C、out=`sum+d;D、都正确二、填空题:(共15分,每小题3分)1、某一纯组合电路输入为in1,in2和in3,输入出为out,则该电路描述中always的事件表达式应写为always@(in1,in2,in3 );若某一时序电路由时钟clk信号上升沿触发,同步高电平复位信号rst清零,该电路描述中always的事件表达是应该写为always @( posedge clk )。

最新Verilog-HDL期末考试复习题资料

最新Verilog-HDL期末考试复习题资料

【第一章】1、FPGA 芯片的发展主要体现在哪几个方面?未来的发展趋势是什么?答:新型芯片的规模越来越大,成本越来越低,低端的FPGA已逐步取代了传统的数字元件。

先进的ASIC生产工艺已经被用于FPGA的生产,越来越丰富的处理器内核被嵌入到高端的FPGA芯片中,基于FPGA的开发成为一项系统级设计工程。

随着半导体制造工艺的不同提高,FPGA的集成度将不断提高,制造成本将不断降低,其作为替代ASIC来实现电子系统的前景将日趋光明。

2、EDA 技术的优势是什么?答:1.用HDL对数字系统进行抽象的行为与功能描述以及具体的内部线路结构描述,从而可以在电子设计的各个阶段、各个层次进行计算机模拟验证,保证设计过程的正确性,可以大大降低设计成本,缩短设计周期。

2.EDA工具之所以能够完成各种自动设计过程,关键是有各类库的支持。

3.某些HDL也是文档型的语言,极大地简化了设计文档的管理。

4.EDA具有日益强大的逻辑设计仿真测试技术,极大地提高了大规模系统电子设计的自动化程度。

5.基于EDA技术的设计,由于用HDL表达的成功的专用功能设计在实现目标方面有很大的可选性,它既可以用不同来源的通用FPGA/CPLD实现,也可以直接以ASIC来实现,设计者拥有完全的自主权。

6.EDA技术的设计语言是标准化的,不会由于设计对象的不同而改变;它的开发工具是规范化的,EDA软件平台支持任何标准化的设计语言;它的设计成果是通用性的,IP核具有规范的接口协议。

良好的可移植与可测试性,为系统开发提供了可靠的保证。

7.EDA技术能将所有设计环节纳入统一的自顶向下的设计方案中。

8.EDA不但在整个设计流程上充分利用计算机的自动设计能力,在各个设计层次上利用计算机完成不同内容的仿真模拟,而且在系统板设计结束后仍可利用计算机对硬件系统进行完整全面的测试。

3、EDA 的设计流程包括哪几个环节?ANS: ①设计输入(原理图/HDL 文本编辑)②综合③FPGA/CPLD 适配④时序仿真与功能门级仿真⑤FPGA/CPLD 编程下载⑥FPGA/CPLD 器件电路硬件检测。

veriloghdl答案

veriloghdl答案

verilog-hdl答案第1章简介1.Verilog HDL是在哪一年首次被IEEE标准化的?Verilog HDL是在1995年首次被IEEE标准化的。

2.Verilog HDL支持哪三种基本描述方式Verilog HDL可采用三种不同方式或混合方式对设计建模。

这些方式包括:行为描述方式—使用过程化结构建模;数据流方式—使用连续赋值语句方式建模;结构化方式—使用门和模块实例语句描述建模3.可以使用Verilog HDL描述一个设计的时序吗?Verilog HDL可以清晰的建立时序模型,故可以使用Verilog HDL描述一个设计的时序。

4.语言中的什么特性能够用于描述参数化设计?在行为级描述中, Verilog HDL不仅能够在RT L级上进行设计描述,而且能够在体系结构级描述及其算法级行为上进行设计描述,而且能够使用门和模块实例化语句在结构级进行结构描述,这种特性可用于描述参数化设计。

5.能够使用Verilog HDL编写测试验证程序吗?能,可以编写testbench来对编写的程序进行验证。

6.Verilog HDL是由哪个公司最先开发的?Verilog HDL是由Gateway Design Automation公司最先开发的7.Verilog HDL中的两类主要数据类型是什么?线网数据类型和寄存器数据类型。

线网类型表示构件间的物理连线,而寄存器类型表示抽象的数据存储元件。

8.UDP代表什么?UDP代表用户定义原语9.写出两个开关级基本门的名称。

pmos nmos10.写出两个基本逻辑门的名称。

and or第2章 HDL指南1. 在数据流描述方式中使用什么语句描述一个设计?设计的数据流行为使用连续赋值语句进行描述2. 使用` t i m e s c a l e 编译器指令的目的是什么?举出一个实例。

使用编译指令将时间单位与物理时间相关联。

例如` timescale 1ns /100ps 此语句说明时延时间单位为1ns并且时间精度为100ps (时间精度是指所有的时延必须被限定在0.1ns内)3. 在过程赋值语句中可以定义哪两种时延?请举例详细说明。

VerilogHDL复习题

VerilogHDL复习题

聂雄题型介绍:一、选择题(每小题2分,共20分)1.在verilog中,下列语句哪个不是分支语句?( d )161(A) if-else (B) case (C) casez (D) repeat循环2.下列哪些的不属于基本门级元件( d )136(A) nand (B) nor (C) and (D) RAM3.已知“a =1b’1; b=3b'001;”那么{a,b}=( c )120 131(A) 4b'0011 (B) 3b'001 (C) 4b'1001 (D) 3b'101…………其它略……….二、填空题(每小题2分,共10分)1. 完整的条件语句将产生组合电路,不完整的条件语句将产生时序电路。

2. 阻塞性赋值符号为 = ,非阻塞性赋值符号为《= 。

…………其它略……….三、简答题:(每小题5分,共20分)1. 结构化描述可以通过哪几种方式进行结构建模?(5分)1172. FPGA芯片主流的生产厂家有哪3家?每个厂家列举2个型号芯片,并说明它所具有的逻辑门数量和IO端口数量。

(5分)…………其它略……….五、阅读程序并填空(每小题5分,共10分)六、设计题(每小题10分,共40分)1. 使用Verilog语言,设计一个带有异步复位控制端的100进制计数器。

(10分)1862. 基于Verilog语言设计一个8选一数据选择器,写出Verilog代码。

(10分)180 module option(a,b,c,d,e,f,g,h,s0,s1,s2,out);input [2:0] a,b,c,d,e,f,g,h;input s0,s1,s2;output [2:0] out;reg [2:0] out;always@(a or b or c or d or e or f or g or h or s0 or s1 or s2)begincase({s0,s1,s2})3'd0 : out=a;3'd1 : out=b;3'd2 : out=c;3'd3 : out=d;3'd4 : out=e;3'd5 : out=f;3'd6 : out=g;3'd7 : out=h;endcase endendmodule…………其它略……….网上试题:填空:1.已知x=4’b1001,y=4’0110,则 x 的 4 位补码为4’b1111,而 y 的 4 位的补码为4’b0110?2.在 case 语句中至少要有一条 default 语句。

VerilogHDL期末考试复习题

VerilogHDL期末考试复习题

VerilogHDL期末考试复习题【第一章】1、FPGA 芯片的发展主要体现在哪几个方面?未来的发展趋势是什么?答:新型芯片的规模越来越大,成本越来越低,低端的FPGA已逐步取代了传统的数字元件。

先进的ASIC生产工艺已经被用于FPGA的生产,越来越丰富的处理器内核被嵌入到高端的FPGA芯片中,基于FPGA的开发成为一项系统级设计工程。

随着半导体制造工艺的不同提高,FPGA的集成度将不断提高,制造成本将不断降低,其作为替代ASIC来实现电子系统的前景将日趋光明。

2、EDA 技术的优势是什么?答:1.用HDL对数字系统进行抽象的行为与功能描述以及具体的内部线路结构描述,从而可以在电子设计的各个阶段、各个层次进行计算机模拟验证,保证设计过程的正确性,可以大大降低设计成本,缩短设计周期。

2.EDA工具之所以能够完成各种自动设计过程,关键是有各类库的支持。

3.某些HDL也是文档型的语言,极大地简化了设计文档的管理。

4.EDA具有日益强大的逻辑设计仿真测试技术,极大地提高了大规模系统电子设计的自动化程度。

5.基于EDA技术的设计,由于用HDL表达的成功的专用功能设计在实现目标方面有很大的可选性,它既可以用不同来源的通用FPGA/CPLD实现,也可以直接以ASIC来实现,设计者拥有完全的自主权。

6.EDA技术的设计语言是标准化的,不会由于设计对象的不同而改变;它的开发工具是规范化的,EDA软件平台支持任何标准化的设计语言;它的设计成果是通用性的,IP核具有规范的接口协议。

良好的可移植与可测试性,为系统开发提供了可靠的保证。

7.EDA技术能将所有设计环节纳入统一的自顶向下的设计方案中。

8.EDA不但在整个设计流程上充分利用计算机的自动设计能力,在各个设计层次上利用计算机完成不同内容的仿真模拟,而且在系统板设计结束后仍可利用计算机对硬件系统进行完整全面的测试。

3、EDA 的设计流程包括哪几个环节?ANS: ①设计输入(原理图/HDL 文本编辑)②综合③FPGA/CPLD 适配④时序仿真与功能门级仿真⑤FPGA/CPLD 编程下载⑥FPGA/CPLD 器件电路硬件检测。

VerilogHDL复习题与答案

VerilogHDL复习题与答案

VerilogHDL硬件描述语言复习一、1. Verilog HDL 是在哪一年首次被I E E E标准化的答:Verilog HDL是在1995年首次被IEEE标准化的..2. Verilog HDL支持哪三种基本描述方式答:Verilog HDL可采用三种不同方式或混合方式对设计建模..这些方式包括:行为描述方式—使用过程化结构建模;数据流方式—使用连续赋值语句方式建模;结构化方式—使用门和模块实例语句描述建模3. Verilog HDL 是由哪个公司最先开发的答:Verilog HDL是由Gateway Design Automation公司最先开发的4. Verilog HDL中的两类主要数据类型什么答:线网数据类型和寄存器数据类型..线网类型表示构件间的物理连线; 而寄存器类型表示抽象的数据存储元件..5. U D P代表什么答:UDP代表用户定义原语6. 写出两个开关级基本门的名称..答:pmos nmos7.写出两个基本逻辑门的名称..答:and or8.在数据流描述方式中使用什么语句描述一个设计答:设计的数据流行为使用连续赋值语句进行描述9. 采用结构描述方式描述1位全加器..答:module full_adda;b;cin;s;co;input a;b;cin;output s;co;wire S1;T1;T2;T3;xorX1S1;a;b;X2s;S1;cin;andA1T3;a;b;A2T2;b;cin;A3T1;a;cin;orO1co;T1;T2;T3;endmodule10. i n i t i a l语句与always 语句的关键区别是什么答: 1 initial语句:此语句只执行一次..2 always语句:此语句总是循环执行; 或者说此语句重复执行..11.采用数据流方式描述2 - 4译码器..答:'timescale 1ns/nsmodule Decoder2×4A;B;EN;Z;input A;B;EN;output 0:3Z;wire abar;Bbar;assign #1 Abar=~A;assign #1 Bbar=~B;assign #2 Z0=~Abar&Bbar&EN;assign #2 Z1=~Abar&B&EN;assign #2 Z2=~A&Bbar&EN;assign #2 Z3=~A&B&EN;endmodule1 2. 找出下面连续赋值语句的错误..assign Reset=#2 Sel^WriteBus;答:不符合连续赋值语句的语法;应该为:assign #2 Reset = ^ WriteBus;二、1. 下列标识符哪些合法;哪些非法C O u n T; 1_2 M a n y; \**1; R e a l ; \wait; Initial答:COunT合法;1_2 Many非法;\**1;Real 非法;\wait合法;Initial合法2. 在Verilog HDL中是否有布尔类型答:没有3. 如果线网类型变量说明后未赋值;其缺省值为多少答:z4. Verilog HDL 允许没有显式说明的线网类型..如果是这样;怎样决定线网类型答:在Verilog HDL 中;有可能不必声明某种线网类型..在这样的情况下;缺省线网类型为1位线网..5.下面的说明错在哪里i n t e g e r 0:3 R i p p l e;答:应该是integer Ripple 0:36. Verilog HDL有哪几大类数据类型答:verilog hdl 有两大类数据类型:线网类型和寄存器类型..7.Verilog HDL有哪几种寄存器类型答:有五种不同的寄存器类型:reg、integer、time、real、realtime..三、1. 假定长度为6 4个字的存储器; 每个字8位;编写Verilog 代码;按逆序交换存储器的内容..即将第0个字与第6 3个字交换;第1个字与第6 2个字交换;依此类推..答:reg 7:0 mem 63:0;integer i = 0;reg 7:0 temp;whilei < 32begintemp = memi;memi = mem63 - i;mem63 - i = temp;i = i + 1;end2. 假定3 2位总线A d d re s s _ B u s; 编写一个表达式;计算从第11位到第2 0位的归约与非.. 答:~& addressBus20:113. 假定一条总线C o n t ro l _ B u s 1 5 : 0 ;编写赋值语句将总线分为两条总线:A b u s 0 : 9 和B b u s 6 : 1 ..答:Abus = ControlBus9:0;Bbus = ControlBus15:10;4. 编写一个表达式;执行算术移位;将Qparity 中包含的8位有符号数算术移位..答:{Qparity7-i:0; Qparity7:8-i}//左移;i表示移的位数{Qparityi-1:0; Qparity7: i}//右移;i表示移的位数5.使用条件操作符; 编写赋值语句选择N e x t S t a t e的值..如果C u rre n t S t a t e的值为R E S E T; 那么N e x t S t a t e的值为G O;如果C u rre n t S t a t e的值为G O;则N e x t S t a t e 的值为B U S Y;如果C u rre n t S t a t e的值为B U S Y;则N e x t S t a t e的值为R E S E T..答:NextState = CurrentState == RESET Go : CurrentState == Go BUSY : RESET6. 如何从标量变量A;B;C和D中产生总线B u s Q0:3 如何从两条总线B u s A 0 : 3 和B u s Y 2 0 : 1 5 形成新的总线B u s R 1 0 : 1答:BusQ3:0 = {D; C; B; A}BusR10:1 = {BusY20:15; BusA3:0}四、1、Verilig HDL提供的内置基本门分为哪几类1 多输入门、2 多输出门、3 三态门2、多输入门与多输出门的区别在哪里答:多输入门:and nand nor or xor xnor 这些逻辑门只有单个输出; 1个或多个输入第一个端口是输出;其它端口是输入..多输出门有:buf; not 这些门都只有单个输入;一个或多个输出最后的端口是输入端口;其余的所有端口为输出端口..3、Verilog HDL内置的mos开关门有哪些答:cmos; nmos; pmos; rcmos; rnmos; rpmos4、门时延值的组成有哪几个值答:1 上升时延2 下降时延3 关断时延5. Verilig HDL提供的内置基本门分为哪几类答:1 多输入门2 多输出门 3 三态门4 上拉、下拉电阻5 MOS开关6 双向开关6.假定一条总线Control_Bus7:0;编写赋值语句将总线分为两条总线:Abus 0:2和Bbus 4 : 1 ..答:Abus=ControlBus2:0;Bbus=ControlBus15:12;7. 编写一个表达式;执行算术移位;将Qparity 中包含的8位有符号数算术左移3位..答:{Qparity4:0; Qparity7:5}8.要求采用数据流方式设计一个半加器;写出完整的Verilig HDL设计模块..答:module half_addSum; Cout;A; B;input A; B;output Sum; Cout;assign Sum=A^B;assign Cout=A&B;endmodule五、1、操作符有按操作数个数分为3 种类型;其中三目操作符有 2 个操作符和 3 个操作数..2、关键字全是小写;标识符的首字符必须是字母或下划线..3、数字A=5’b011 的表示z ..设B=5’b101x1;C=5’b01x11;则操作运算F=B+C的结果F= 5'bxxxxx ..4、VerilogHDL中保存字符串“Hello”需要 5 位..5、声明reg 7:0data4:0表示5 个8 位的存储单元..6、module testq;clk;crt;output q;reg q;Input clk;crt;always @posedge clkbeginifcrt==1q=~q;endendmodule7、数据流建模的主要语法结构是assign LHS_target = RHS_expression; 语句;采用assign 关键字开始..8、线网赋值延迟可以通过普通赋值延迟; 隐式连续赋值延迟和线网声明延迟三种方法来实现..9、模型引用时;要指定实例名;但硬件和用户定义原语例外..10、语句assign #2:3:4;5:6:7portout;clk;in中的典型关断延迟是 4 ;最大关断延时是7 ..11、VerilogHDL语言可以从四个不同的抽象层次描述电路;这四层是开关级、门级、寄存器传送级、算法级12、结构化建模的主要语句是内置门原语和用户定义原语..六、1.门级建模的类型有:Aor和AND BOR和andCand和or DA、B、C都正确 C2.VerilogHDL使用的是逻辑是:A二值逻辑B四值逻辑C三值逻辑D八种强度 B3.不属于寄存器类型的是:Ainteger BregCwand Dtime C4.VerilogHDL语言中;标识符的作用范围是:A本模块B外部模块C所有模块D全局模块 A5.具有多个输出端口的门是:Aand BorCnor Dnot D七、1、语句内部时延与语句前时延效果是否一样答:不一样2、当时延表达式为负数时;时延值是如何处理得到答:取绝对值3、VeriligHDL有几种循环语句分别采用关键字是什么答:总共有四种循环语句;分别采用forever、repeat、while、for..八、1.VerilogHDL语言和C语言的结构化语句有何不同答:1.Verilog HDL是在C语言的基础上发展起来的;保留了C语言的结构特点..2.C语言由函数组成;Verilog由模块module组成3.C语言通过函数名及其端口变量实现调用;Verilog也通过模块名和端口变量实现调用4.C语言有主函数main;Verilog的个module均等价;但必有一个顶层模块;包含芯片系统与外界的所有I/O信号5.C语言是顺序执行;而Verilog的所有module均并发执行6.C 语言与Verilog语法相似..2、VerilogHDL语言的操作符类型有哪些其数据流建模采用什么来描述设计吗答:算术、逻辑、关系、等价、按位、缩减、移位、拼接、条件数据流建模采用算术与逻辑来描述设计3、VerilogHDL语言的优点是什么答:Verilog HDL语言的优势:由于它在其门级描述的底层;也就是晶体管开关的描述方面比VHDL等各种其它的HDL语言有更强的功能..所以在复杂数字逻辑电路和系统的设计仿真时更有优势;描述的设计思想、电路结构和逻辑关系清晰明了;并且设计语言简练、易学易用;其模块化分层结构在大规模设计时更能体现出优势..因此可以看出;Verilog HDL语言在EDA设计中相对与其他的各种硬件描述语言更有优势..4、下列例子中;b;c;d的最终值分别是什么initialbeginb=1’b1;c=1’b0;#10 b=1’b0;endinitialbegind=#25{b|c};end答:b=1'b0、c=1'b0、d=1'b05.一位全减器模块wsub具有三个一位输入:x;y和z前面的借位;两个一位的输出D差和B借位..计算D和B的逻辑等式如下所示:..D..yx=++..+..xyzzzxyyzx..+=B.+yzyzxx写出VerilogHDL数据流描述的该全减器wsub..答: module wsubD;B;x;y;xinput x;y;z;output D;B;assign D=~x*~y*~z+~x*y*~z+x*~y*~Z+x*y*z;assign B=~x*y+~x*z+y*z;endmodule。

VerilogHDL试卷及答案

VerilogHDL试卷及答案

一、选择题:1、下列标示符哪些是合法的(B )A、$timeB、_dateC、8sumD、mux#2、如果线网类型变量说明后未赋值,起缺省值是(D )A、xB、1C、0D、z3、现网中的值被解释为无符号数。

在连续赋值语句中,assign addr[3:0]=-3;addr被赋予的值是(A )//补码!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!A、4’b1101B、4’b0011C、4’bxx11D、4’bzz114、reg[7:0] mema[255:0]正确的赋值是(A )A、mema[5]=3’ d0,B、8’ d0;C、1’ b1;D、mema[5][3:0]=4’ d15、在code模块中参数定义如下,请问top模块中d1模块delay1、delay2的值是( D )module code(x,y); module top;paramee delay1=1,delay2=1; …………….………………………………code #(1,5) d1(x1,y1);endmodule endmoduleA、(1,1)B、(5,5)C、(5,1)D、(1,5)6、“a=4’ b11001,b=4’ bx110”选出正确的运算结果(B )A、a&b=0B、a&&b=1C、b&a=xD、b&&a=x7、时间尺度定义为timescale 10ns/100ps,选择正确答案(C )A、时间精度10nsB、时间单位100psC、时间精度100psD、时间精度不确定8、若a=9,执行$display(“current value=%0b,a=%0d”,a,a)正确显示为(B )//去除无效0A、current value=1001,a=09B、current vale=1001,a=9C、1001,9D、current vale=00…001001,a=99、always begin #5 clk=0;#10 clk=~clk;end产生的波形(A )//5占15的1/3A、占空比1/3B、clk=1C、clk=0D、周期为1010、在Verilog中定义了宏名`define sum a+b+c 下面宏名引用正确的是(C )//注意引用A、out=’sum+d;B、out=sum+d;C、out=`sum+d;D、都正确二、填空题:(共15分,每小题3分)1、某一纯组合电路输入为in1,in2和in3,输入出为out,则该电路描述中always的事件表达式应写为always@(in1,in2,in3 );若某一时序电路由时钟clk信号上升沿触发,同步高电平复位信号rst清零,该电路描述中always的事件表达是应该写为always @( posedge clk )。

EDA verilog hdl考试题和答案

EDA verilog hdl考试题和答案

EDA verilog hdl考试题和答案一、选择题(每题2分,共20分)1. 在Verilog HDL中,以下哪个关键字用于定义模块?A. moduleB. endmoduleC. inputD. output答案:A2. Verilog HDL中,以下哪个操作符用于按位取反?A. ~B. !C. ^D. &答案:A3. 在Verilog HDL中,以下哪个关键字用于定义组合逻辑?A. alwaysB. initialC. always_combD. always_seq答案:C4. 以下哪个是Verilog HDL中合法的标识符?A. 2variableB. variable2C. variable$2D. variable_2答案:B5. 在Verilog HDL中,以下哪个关键字用于定义信号的初始值?A. initialB. alwaysC. assignD. defparam答案:A6. 在Verilog HDL中,以下哪个关键字用于定义参数?A. parameterB. defparamC. localparamD. specparam答案:A7. 在Verilog HDL中,以下哪个关键字用于定义一个始终块,该块在仿真开始时执行一次?A. alwaysB. initialC. always_combD. always_ff答案:B8. 在Verilog HDL中,以下哪个操作符用于逻辑与?A. &&B. &C. ||D. |答案:B9. 在Verilog HDL中,以下哪个关键字用于定义一个始终块,该块在信号变化时触发?A. alwaysB. initialC. always_combD. always_ff答案:A10. 在Verilog HDL中,以下哪个关键字用于定义一个三态输出?A. outputB. inoutC. triD. wire答案:C二、填空题(每题2分,共20分)1. 在Verilog HDL中,____关键字用于定义一个始终块,该块在信号的边沿触发时执行。

中南大学EDA VerilogHDL试题(附答案)

中南大学EDA VerilogHDL试题(附答案)

一、填空题(10分,每小题1分)1.用EDA技术进行电子系统设计的目标是最终完成的设计与实现。

2.可编程器件分为和。

3.随着EDA技术的不断完善与成熟,的设计方法更多的被应用于Verilog HDL设计当中。

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

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

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

二、选择题(10分,每小题2分)1.大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA结构与工作原理的描述中,正确的是。

A.FPGA全称为复杂可编程逻辑器件;B.FPGA是基于乘积项结构的可编程逻辑器件;C.基于SRAM的FPGA器件,在每次上电后必须进行一次配置;D.在Altera公司生产的器件中,MAX7000系列属FPGA结构。

2.基于EDA软件的FPGA / CPLD设计流程为:原理图/HDL文本输入→综合→_____→→适配→编程下载→硬件测试。

正确的是。

①功能仿真②时序仿真③逻辑综合④配置⑤分配管脚A.③①B.①⑤C.④⑤D.④②3.子系统设计优化,主要考虑提高资源利用率减少功耗(即面积优化),以及提高运行速度(即速度优化);指出下列哪些方法是面积优化。

①流水线设计②资源共享③逻辑优化④串行化⑤寄存器配平⑥关键路径法A.①③⑤B.②③④C.②⑤⑥D.①④⑥4.下列标识符中,__________是不合法的标识符。

A.9moon B.State0 C.Not_Ack_0 D.signall5.下列语句中,不属于并行语句的是:_______A.过程语句B.assign语句C.元件例化语句D.case语句三、EDA名词解释(10分)写出下列缩写的中文含义:ASIC:RTL:FPGA:SOPC:CPLD:LPM:EDA:IEEE:IP:ISP:四、简答题(10分)1、简要说明仿真时阻塞赋值与非阻塞赋值的区别(本题4分)。

答:非阻塞(non-blocking)赋值方式 ( b<= a):b的值被赋成新值a的操作, 并不是立刻完成的,而是在块结束时才完成;块内的多条赋值语句在块结束时同时赋值;硬件有对应的电路。

(完整word版)EDA-VerilogHDL期末复习题总结必过

(完整word版)EDA-VerilogHDL期末复习题总结必过

(完整word版)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. Verilog HDLC. 汇编语言D. C语言7.一模块的I/O 端口说明:“input [7:0] a;”,则关于该端口说法正确的是( A )。

verilog hdl 习题答案

verilog hdl 习题答案

verilog hdl 习题答案Verilog HDL 习题答案Verilog HDL(Hardware Description Language)是一种硬件描述语言,用于设计和仿真数字电路。

它是一种高级语言,可以用于描述电路的结构和行为,并且可以进行逻辑仿真和综合。

在学习Verilog HDL的过程中,习题是不可或缺的一部分。

下面将提供一些常见Verilog HDL习题的答案,帮助你更好地理解和掌握这门语言。

1. 设计一个4位全加器module full_adder(input a, b, cin, output sum, cout);assign sum = a ^ b ^ cin;assign cout = (a & b) | (a & cin) | (b & cin);endmodule2. 设计一个4位加法器module four_bit_adder(input [3:0] a, b, output [3:0] sum, output carry_out);wire [3:0] carry;assign sum = a + b;assign carry = a + b + 1'b0;assign carry_out = carry[3];endmodule3. 设计一个2输入4输出的多路选择器module mux_2to4(input [1:0] sel, input [3:0] in, output [3:0] out);assign out[0] = (sel[1] & sel[0]) ? in[0] : 1'bz;assign out[1] = (sel[1] & ~sel[0]) ? in[1] : 1'bz;assign out[2] = (~sel[1] & sel[0]) ? in[2] : 1'bz;assign out[3] = (~sel[1] & ~sel[0]) ? in[3] : 1'bz;endmodule4. 设计一个4位移位寄存器module shift_register(input [3:0] in, input clk, input reset, output [3:0] out);reg [3:0] reg_out;always @(posedge clk or posedge reset) beginif (reset)reg_out <= 4'b0000;elsereg_out <= {reg_out[2:0], in[0]};endassign out = reg_out;endmodule这些习题的答案提供了基本的Verilog HDL设计和实现方法。

verilog hdl答案

verilog hdl答案

第1章简介1.Verilog HDL是在哪一年首次被IEEE标准化的?Verilog HDL是在1995年首次被IEEE标准化的。

2.Verilog HDL支持哪三种基本描述方式Verilog HDL可采用三种不同方式或混合方式对设计建模。

这些方式包括:行为描述方式—使用过程化结构建模;数据流方式—使用连续赋值语句方式建模;结构化方式—使用门和模块实例语句描述建模3.可以使用Verilog HDL描述一个设计的时序吗?Verilog HDL可以清晰的建立时序模型,故可以使用Verilog HDL描述一个设计的时序。

4.语言中的什么特性能够用于描述参数化设计?在行为级描述中, Verilog HDL不仅能够在RT L级上进行设计描述,而且能够在体系结构级描述及其算法级行为上进行设计描述,而且能够使用门和模块实例化语句在结构级进行结构描述,这种特性可用于描述参数化设计。

5.能够使用Verilog HDL编写测试验证程序吗?能,可以编写testbench来对编写的程序进行验证。

6.Verilog HDL是由哪个公司最先开发的?Verilog HDL是由Gateway Design Automation公司最先开发的7.Verilog HDL中的两类主要数据类型是什么?线网数据类型和寄存器数据类型。

线网类型表示构件间的物理连线,而寄存器类型表示抽象的数据存储元件。

8.UDP代表什么?UDP代表用户定义原语9.写出两个开关级基本门的名称。

pmos nmos10.写出两个基本逻辑门的名称。

and or第2章 HDL指南1. 在数据流描述方式中使用什么语句描述一个设计?设计的数据流行为使用连续赋值语句进行描述2. 使用` t i m e s c a l e 编译器指令的目的是什么?举出一个实例。

使用编译指令将时间单位与物理时间相关联。

例如` timescale 1ns /100ps 此语句说明时延时间单位为1ns并且时间精度为100ps (时间精度是指所有的时延必须被限定在0.1ns内)3. 在过程赋值语句中可以定义哪两种时延?请举例详细说明。

veriloghdl考试题及答案A卷

veriloghdl考试题及答案A卷

veriloghdl考试题及答案A卷一、选择题(每题2分,共20分)1. 在Verilog中,以下哪个关键字用于定义模块?A. moduleB. functionC. defineD. task答案:A2. 在Verilog中,以下哪个操作符用于按位与操作?A. &B. &&C. |D. ||答案:A3. 在Verilog中,以下哪个关键字用于定义输入端口?A. inputB. outputC. inD. out答案:A4. 在Verilog中,以下哪个关键字用于定义输出端口?A. inputB. outputC. inD. out答案:B5. 在Verilog中,以下哪个关键字用于定义组合逻辑?A. alwaysB. initialC. always_combD. always_seq答案:C6. 在Verilog中,以下哪个关键字用于定义时序逻辑?A. alwaysB. initialC. always_combD. always_seq答案:A7. 在Verilog中,以下哪个关键字用于定义一个过程块?A. alwaysB. initialC. processD. begin答案:A8. 在Verilog中,以下哪个关键字用于定义一个初始块?A. alwaysB. initialC. processD. begin答案:B9. 在Verilog中,以下哪个关键字用于定义一个函数?A. functionB. taskC. moduleD. begin答案:A10. 在Verilog中,以下哪个关键字用于定义一个任务?A. functionB. taskC. moduleD. begin答案:B二、填空题(每题3分,共15分)1. 在Verilog中,使用________关键字可以定义一个参数化的模块。

答案:parameter2. 在Verilog中,使用________关键字可以定义一个端口映射。

(完整)Verilog_HDL试卷及答案,推荐文档.doc

(完整)Verilog_HDL试卷及答案,推荐文档.doc

河北大学课程考核试卷2008 —— 2009 学年第一学期2006 级电气类专业(类)考核科目 EDA 技术课程类别必修考核类型考查考核方式闭卷类别 A一、选择题:1、下列标示符哪些是合法的( B )A、 $timeB、 _dateC、 8sumD、 mux#2、如果线网类型变量说明后未赋值,起缺省值是( D )A、 xB、 1C、 0D、 z3、现网中的值被解释为无符号数。

在连续赋值语句中,assign addr[3:0]=-3;addr 被赋予的值是( A )A、 4’b1101B、 4’b0011C、 4’bxx11D、 4’bzz114、 reg[7:0] mema[255:0] 正确的赋值是( A )A、 mema[5]=3 ’d0,B、 8’d0;C、 1’b1;D、 mema[5][3:0]=4 ’d15、在 code 模块中参数定义如下,请问top 模块中 d1 模块 delay1、 delay2 的值是 ( D )module code(x,y); module top;paramee delay1=1,delay2=1; .code #(1,5) d1(x1,y1);endmodule endmoduleA、( 1,1)B、(5,5)C、( 5,1)D、( 1,5)6、“ a=4’b11001,b=4 ’bx110”选出正确的运算结果( B )A、 a&b=0B、a&&b=1C、b&a=xD、 b&&a=x7、时间尺度定义为timescale 10ns/100ps ,选择正确答案( C )A、时间精度 10nsB、时间单位 100psC、时间精度 100psD、时间精度不确定8、若 a=9,执行 $display( “current value=%0b,a=%0d ”,a,a)正确显示为( B )A、 current value=1001,a=09B、current vale=1001,a=9C、 1001,9D、 current vale=00 001001,a=99、 aways begin #5 clk=0; #10 clk=~clk;end 产生的波形( A )A、占空比 1/3B、 clk=1C、 clk=0D、周期为 1010、在 Verilog 中定义了宏名`define sum a+b+c 下面宏名引用正确的是( C )A、 out= ’sum+d;B、 out=sum+d;C、 out=`sum+d;D、都正确二、填空题:(共 15 分,每小题 3 分)1、某一纯组合电路输入为in1,in2 和 in3,输入出为 out ,则该电路描述中always 的事件表达式应写为always@(in1,in2,in3 ); 若某一时序电路由时钟clk 信号上升沿触发,同步高电平复位信号rst 清零,该电路描述中always 的事件表达是应该写为always @( posedge clk )。

Verilog_HDL试卷及答案

Verilog_HDL试卷及答案

reg[7:0]一、选择题:1、下列标示符哪些是合法的(B)A、$timeB、_dateC、8sumD、mux#2、如果线网类型变量说明后未赋值,起缺省值是(D)A、xB、1C、0D、z3、现网中的值被解释为无符号数。

在连续赋值语句中,assignaddr[3:0]=-3;addr被赋予的值是(A)//补码!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!A、4’b1101B、4’b0011C、4’bxx11D、4’bzz114、reg[7:0]mema[255:0]正确的赋值是(A)A、mema[5]=3’d0,B、8’d0;C、1’b1;D、mema[5][3:0]=4’d15、在code模块中参数定义如下,请问top模块中d1模块delay1、delay2的值是(D)modulecode(x,y);moduletop;parameedelay1=1,delay2=1;…………….………………………………endmoduleendmoduleA、(1,1)B、(5,5)C、(5,1)D6、“a=4’b11001,b=4’bx110A、a&b=0B、a&&b=1C、b&a=xD、7、时间尺度定义为timescale10ns/100psA、时间精度10nsB、时间单位100psC、都正确in3,输入出为out,则该电路描述中always的事件表达式应写为always@(in1,in2,in3);若某一时序电路由时钟clk信号上升沿触发,同步高电平复位信号rst清零,该电路描述中always的事件表达是应该写为always@(posedgeclk)。

//@(条件表达式)do_something;表示等待条件表达式满足,然后do_something,然后就往下走了。

通常用在testbench中,不可综合。

------------------------------------always@(aorborc)begindo_something;end表示不停地监测a、b、c,一旦它们任何一个发生变化,就立刻do_something,并且这个“监测”是始终存在的。

(完整word版)EDA-VerilogHDL期末复习题总结必过

(完整word版)EDA-VerilogHDL期末复习题总结必过
C )。
FPGA全称为复杂可编程逻辑器件;
FPGA是基于乘积项结构的可编程逻辑器件;
基于SRAM的FPGA器件,在每次上电后必须进行一次配置;
在Altera公司生产的器件中,MAX7000系列属FPGA结构。
以下关于状态机的描述中正确的是( B )
.Moore型状态机其输出是当前状态和所有输入的函数
.与Moore型状态机相比,Mealy型的输出变化要领先一个时钟周期
.Mealy型状态机其输出是当前状态的函数
.以上都不对
目前应用最广泛的硬件描述语言是( 说明: “input [7:0] a;”,则关于该端口说法正确的是( A )。
IEEE 标准的硬件描述语言是 verilog HDL 和 VHDL 。
Verilog 语言规定的两种主要的数据类型分别是 wire( 或 net) 和 reg 。程
wire( 或 net) 。
Verilog 语言规定了逻辑电路中信号的 4 种状态,分别是 0, 1, X 和 Z。
0 表示低电平状态, 1 表示高电平状态, X 表示 不定态(或未知状
输入端口,位宽为 8
输出端口,位宽为 8
输入端口,位宽为 7
输出端口,位宽为 7
基于 EDA 软件的 FPGA / CPLD 设计流程为:原理图 /HDL 文本输入 → 综合
___ __→ → 适 配 → 编 程 下 载 → 硬 件 测 试 。 正 确 的 是( B )。
②时序仿真 ③逻辑综合 ④配置 ⑤分配管脚
不完整的IF语句,其综合结果可实现( A )
时序逻辑电路 B.组合逻辑电 C. 双向电路 D. 三态控制电路
综合是EDA设计流程的关键步骤,在下面对综合的描述中,( D )是错误的。

verilog期末试题及答案

verilog期末试题及答案

verilog期末试题及答案一、选择题1. Verilog是一种用于描述数字电路的语言,它是一种:A. 高级语言B. 低级语言C. 汇编语言D. 脚本语言答案:B. 低级语言2. Verilog的设计单元包括:A. 模块B. 信号C. 进程D. 任务答案:A. 模块3. Verilog的模块声明语法是:A. module 模块名(输入端口, 输出端口);B. module 模块名(input 输入端口, output 输出端口);C. 定义变量和信号D. 使用时调用模块答案:B. module 模块名(input 输入端口, output 输出端口);4. Verilog的赋值语句中,"="表示:A. 非阻塞赋值B. 阻塞赋值C. 非条件赋值D. 条件赋值答案:B. 阻塞赋值5. Verilog中的always块用于:A. 声明变量和信号B. 定义模块C. 并行执行代码块D. 顺序执行代码块答案:C. 并行执行代码块二、填空题1. Verilog的基本数据类型有______、______、______、______。

答案:wire, reg, integer, real2. Verilog中用于实现多路选择的关键字是______。

答案:case3. Verilog中用于实现循环的关键字是______。

答案:for4. Verilog中用于延迟执行的关键字是______。

答案:#(井号)5. Verilog中用于表示逻辑非的关键字是______。

答案:!三、简答题1. 请简要说明Verilog的模块和例化的概念。

答案:Verilog的模块是用于描述数字电路的基本单元,一个模块可以包含多个输入端口和输出端口,以及内部的逻辑代码。

模块可以被实例化(例化),即在其他模块中调用并使用。

例化时需要指定模块的名称,并连接相应的输入和输出端口。

2. 请简要说明Verilog中的阻塞赋值和非阻塞赋值的区别。

verilog hdl 习题答案

verilog hdl 习题答案

verilog hdl 习题答案Verilog HDL 习题答案Verilog HDL(硬件描述语言)是一种用于描述数字电路的硬件描述语言,它被广泛应用于数字系统的设计和验证。

在学习Verilog HDL的过程中,练习题是非常重要的,通过解答习题可以加深对Verilog HDL语言的理解,并提高设计和编程的能力。

下面我们将为您提供一些Verilog HDL习题的答案,希望能够帮助您更好地掌握这门语言。

1. 请编写一个Verilog HDL模块,实现一个4位全加器。

module full_adder(input wire a, b, cin,output wire sum, cout);assign sum = a ^ b ^ cin;assign cout = (a & b) | (b & cin) | (a & cin);endmodule2. 请编写一个Verilog HDL模块,实现一个4位加法器。

module adder_4bit(input wire [3:0] a, b,output wire [3:0] sum);wire c0, c1, c2;full_adder fa0(a[0], b[0], 1'b0, sum[0], c0);full_adder fa1(a[1], b[1], c0, sum[1], c1);full_adder fa2(a[2], b[2], c1, sum[2], c2);full_adder fa3(a[3], b[3], c2, sum[3], );endmodule3. 请编写一个Verilog HDL模块,实现一个4位移位寄存器。

module shift_register(input wire clk, rst, shift,input wire [3:0] in,output wire [3:0] out);reg [3:0] reg_data;always @(posedge clk or posedge rst) beginif(rst)reg_data <= 4'b0;else if(shift)reg_data <= {reg_data[2:0], in[0]};elsereg_data <= in;endassign out = reg_data;endmodule以上是一些常见的Verilog HDL习题的答案,通过这些习题的练习,相信您对Verilog HDL语言的掌握会更加深入。

Verilog系统设计考试试卷与答案

Verilog系统设计考试试卷与答案

一、填空题(共10分,每空1分)1、变量是在程序运行过程中其值可以改变的量。

变量分为两种,一种类型为线网类型,一般指示硬件电路的物理连接,另一种是 ,对应的是具有状态保持作用的电路元件。

2、Verilog HDL中,如果一个给定的整数没有定义大小(size),缺省为位。

3、Verilog采用四值逻辑系统,0表示低电平,1表示高电平,x表示。

4、实际组合电路中,信号经过不同的路径到达某个门电路的输入端时,有先有后,这种现象称为。

5、有限状态机是由和组合逻辑构成的硬件时序电路;其状态只能在的情况下才能从一个状态转向另一个状态;6、状态机按照输出逻辑可以分为两种,一种称为状态机,其时序逻辑的输出不仅取决于当前状态,还取决于输入;另一种称为状态机,其时序逻辑的输出只取决于当前状态。

7、`timescale用于说明程序中的时间单位和仿真精度,语句`timescale 1ns/100ps中,程序中的仿真精度为8、完成语句,使rand0产生一个(-59,59)的随机数。

reg [23:0] rand0;rand0= ;二、选择题 ( 本题共 2 0 分,每小题 1 分 )1 、任v e r i l o g H D L 的端口声明语句中,用关键字声明端口为双向方向。

A.inoutB.INOUTC.inputD. output2、在V e r i l o g H D L的逻拇运算中,设A=8'b11010001,B=8'b00011001,则表达式"A&B"的结果为。

3A.8'b00010001B.8'b11011001C.8'b11001000D.8'b001101113、已知A=3'b110,B=3'b000,则AIIB结果为A.1B.O 110 D.3'b0014 、已知 A = 4 ' b 1 0 1 0 , 则 & A = ,A.1,0B.1,1 D.0,015、不完整的IF语句,其综合结果可实现:A . 三态控制电路B .条件相或的逻辑电路C.双向控制电路D.时序逻辑电路16、下列关于同步有限状态机的描述错误的是A. 状态变化只能发生在同一个时钟跳变沿;B.状态是否变化要根据输入信号,只要输入条件满足,就会立刻转入到下一个状态。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

VerilogHDL硬件描述语言复习一、1. Verilog HDL 是在哪一年首次被I E E E标准化的?答:Verilog HDL是在1995年首次被IEEE标准化的。

2. Verilog HDL支持哪三种基本描述方式?答:Verilog HDL可采用三种不同方式或混合方式对设计建模。

这些方式包括:行为描述方式—使用过程化结构建模;数据流方式—使用连续赋值语句方式建模;结构化方式—使用门和模块实例语句描述建模3. Verilog HDL 是由哪个公司最先开发的?答:Verilog HDL是由Gateway Design Automation公司最先开发的4. Verilog HDL中的两类主要数据类型什么?答:线网数据类型和寄存器数据类型。

线网类型表示构件间的物理连线,而寄存器类型表示抽象的数据存储元件。

5. U D P代表什么?答:UDP代表用户定义原语6. 写出两个开关级基本门的名称。

答:pmos nmos7.写出两个基本逻辑门的名称。

答:and or8.在数据流描述方式中使用什么语句描述一个设计?答:设计的数据流行为使用连续赋值语句进行描述9. 采用结构描述方式描述1位全加器。

答:module full_add(a,b,cin,s,co);input a,b,cin;output s,co;wire S1,T1,T2,T3;xorX1(S1,a,b),X2(s,S1,cin);andA1(T3,a,b),A2(T2,b,cin),A3(T1,a,cin);orO1(co,T1,T2,T3);endmodule10. i n i t i a l语句与always 语句的关键区别是什么?答: 1) initial语句:此语句只执行一次。

2) always语句:此语句总是循环执行, 或者说此语句重复执行。

11.采用数据流方式描述2 - 4译码器。

答:'timescale 1ns/nsmodule Decoder2×4(A,B,EN,Z);input A,B,EN;output [0:3]Z;wire abar,Bbar;assign #1 Abar=~A;assign #1 Bbar=~B;assign #2 Z[0]=~(Abar&Bbar&EN);assign #2 Z[1]=~(Abar&B&EN);assign #2 Z[2]=~(A&Bbar&EN);assign #2 Z[3]=~(A&B&EN);endmodule1 2. 找出下面连续赋值语句的错误。

assign Reset=#2 Sel^WriteBus;答:不符合连续赋值语句的语法,应该为:assign #2 Reset = ^ WriteBus;二、1. 下列标识符哪些合法,哪些非法?C O u n T, 1_2 M a n y, \**1, R e a l?, \wait, Initial答:COunT合法,1_2 Many非法,\**1,Real?非法,\wait合法,Initial合法2. 在Verilog HDL中是否有布尔类型?答:没有3. 如果线网类型变量说明后未赋值,其缺省值为多少?答:z4. Verilog HDL 允许没有显式说明的线网类型。

如果是这样,怎样决定线网类型?答:在Verilog HDL 中,有可能不必声明某种线网类型。

在这样的情况下,缺省线网类型为1位线网。

5.下面的说明错在哪里?i n t e g e r [0:3] R i p p l e;答:应该是integer Ripple [0:3]6. Verilog HDL有哪几大类数据类型?答:verilog hdl 有两大类数据类型:线网类型和寄存器类型。

7.Verilog HDL有哪几种寄存器类型?答:有五种不同的寄存器类型:reg、integer、time、real、realtime。

三、1. 假定长度为6 4个字的存储器, 每个字8位,编写Verilog 代码,按逆序交换存储器的内容。

即将第0个字与第6 3个字交换,第1个字与第6 2个字交换,依此类推。

答:reg [7:0] mem [63:0];integer i = 0;reg [7:0] temp;while(i < 32)begintemp = mem[i];mem[i] = mem[63 - i];mem[63 - i] = temp;i = i + 1;end2. 假定3 2位总线A d d re s s _ B u s, 编写一个表达式,计算从第11位到第2 0位的归约与非。

答:~& addressBus[20:11]3. 假定一条总线C o n t ro l _ B u s [ 1 5 : 0 ],编写赋值语句将总线分为两条总线:A b u s [ 0 : 9 ]和B b u s[ 6 : 1 ]。

答:Abus = ControlBus[9:0];Bbus = ControlBus[15:10];4. 编写一个表达式,执行算术移位,将Qparity 中包含的8位有符号数算术移位。

答:{Qparity[7-i:0], Qparity[7:8-i]}//左移,i表示移的位数{Qparity[i-1:0], Qparity[7: i]}//右移,i表示移的位数5.使用条件操作符, 编写赋值语句选择N e x t S t a t e的值。

如果C u rre n t S t a t e的值为R E S E T, 那么N e x t S t a t e的值为G O;如果C u rre n t S t a t e的值为G O,则N e x t S t a t e 的值为B U S Y;如果C u rre n t S t a t e的值为B U S Y;则N e x t S t a t e的值为R E S E T。

答:NextState = (CurrentState == RESET) ? Go : (CurrentState == Go ? BUSY : RESET) 6. 如何从标量变量A,B,C和D中产生总线B u s Q[0:3]? 如何从两条总线B u s A [ 0 : 3 ]和B u s Y[ 2 0 : 1 5 ]形成新的总线B u s R [ 1 0 : 1 ] ?答:BusQ[3:0] = {D, C, B, A}BusR[10:1] = {BusY[20:15], BusA[3:0]}四、1、Verilig HDL提供的内置基本门分为哪几类?1) 多输入门、2) 多输出门、3) 三态门2、多输入门与多输出门的区别在哪里?答:多输入门:and nand nor or xor xnor 这些逻辑门只有单个输出,1个或多个输入第一个端口是输出,其它端口是输入。

多输出门有:buf,not 这些门都只有单个输入,一个或多个输出最后的端口是输入端口,其余的所有端口为输出端口。

3、Verilog HDL内置的mos开关门有哪些?答:cmos, nmos, pmos, rcmos, rnmos, rpmos4、门时延值的组成有哪几个值?答:1) 上升时延2) 下降时延3) 关断时延5. Verilig HDL提供的内置基本门分为哪几类?答:1) 多输入门2) 多输出门3) 三态门4) 上拉、下拉电阻5) MOS开关6) 双向开关6.假定一条总线Control_Bus[7:0],编写赋值语句将总线分为两条总线:Abus [0:2]和Bbus[ 4 : 1 ]。

答:Abus=ControlBus[2:0];Bbus=ControlBus[15:12];7. 编写一个表达式,执行算术移位,将Qparity 中包含的8位有符号数算术左移3位。

答:{Qparity[4:0], Qparity[7:5]}8.要求采用数据流方式设计一个半加器,写出完整的Verilig HDL设计模块。

答:module half_add(Sum, Cout,A, B);input A, B;output Sum, Cout;assign Sum=A^B;assign Cout=A&B;endmodule五、1、操作符有按操作数个数分为3 种类型,其中三目操作符有 2 个操作符和 3 个操作数。

2、关键字全是小写,标识符的首字符必须是字母或下划线。

3、数字A=5’b011?的?表示z 。

设B=5’b101x1,C=5’b01x11,则操作运算F=B+C的结果F= 5'bxxxxx 。

4、VerilogHDL中保存字符串“Hello”需要 5 位。

5、声明reg [7:0]data[4:0]表示5 个8 位的存储单元。

6、module test(q,clk,crt);output q;reg q;Input clk,crt;always @(posedge clk)beginif(crt==1)q=~q;endendmodule7、数据流建模的主要语法结构是assign LHS_target = RHS_expression; 语句,采用assign 关键字开始。

8、线网赋值延迟可以通过普通赋值延迟,隐式连续赋值延迟和线网声明延迟三种方法来实现。

9、模型引用时,要指定实例名,但硬件和用户定义原语例外。

10、语句assign #(2:3:4,5:6:7)port(out,clk,in)中的典型关断延迟是 4 ,最大关断延时是7 。

11、VerilogHDL语言可以从四个不同的抽象层次描述电路,这四层是开关级、门级、寄存器传送级、算法级12、结构化建模的主要语句是内置门原语和用户定义原语。

六、1.门级建模的类型有:(A)or和AND (B)OR和and(C)and和or (D)A、B、C都正确( C )2.VerilogHDL使用的是逻辑是:(A)二值逻辑(B)四值逻辑(C)三值逻辑(D)八种强度( B )3.不属于寄存器类型的是:(A)integer (B)reg(C)wand (D)time (C )4.VerilogHDL语言中,标识符的作用范围是:(A)本模块(B)外部模块(C)所有模块(D)全局模块( A )5.具有多个输出端口的门是:(A)and (B)or(C)nor (D)not ( D )七、1、语句内部时延与语句前时延效果是否一样?答:不一样2、当时延表达式为负数时,时延值是如何处理得到?答:取绝对值3、VeriligHDL有几种循环语句?分别采用关键字是什么?答:总共有四种循环语句,分别采用forever、repeat、while、for。

相关文档
最新文档