FPGA verilog 数字系统设计考试题
veriloghdl数字设计与综合答案
veriloghdl数字设计与综合答案【篇一:verilog习题选答】txt>答:fpga中,由程序来转换为可烧录的二进制码。
ic设计中,主要是由design-compiler来实现。
2.能否说模块相当于电路图中的功能模块,端口相当于功能模块的 3.assign声明语句,实例元件,always块,这三类描述中哪一种直接与电路结构有关?4.由连续赋值语句(assign)赋值的变量能否是reg型的?答:赋值运算分为连续赋值和过程赋值两种。
(1)连续赋值连续赋值语句只能对线网型变量进行赋值,而不能对寄存器型变量进行赋值,基本的语法结构为:assign #(延时量) 线网型变量名 = 赋值表达式; 一个线网型变量一旦被连续赋值语句赋值后,赋值语句右端赋值表达式的值将持续对赋值变量产生连续驱动,只要右端表达式任一操作数的值发生变化,就会立即触发对赋值变量的更新操作。
(2)过程赋值过程赋值主要用于两种结构化模块(initial和always)中的赋值语句。
在过程块中只能使用过程赋值语句,不能在过程块中出现连续赋值语句,同时过程赋值语句也只能用在过程赋值模块中。
基本的语法结构为:被赋值变量赋值操作符赋值表达式,其中,赋值操作符是“=”或“=”,它分别代表了阻塞赋值和非阻塞赋值类型。
过程赋值语句只能对寄存器类型的变量进行赋值,经过赋值后,上面这些变量的值将保持不变,直到另一条赋值语句对变量重新赋值为止。
5.如果都不带时间延迟、阻塞和非阻塞赋值有何不同?说明它们的不同点?答:代码1:module test(a,b,c,d,y); //两个与逻辑,1个或逻辑input a,b,c,d;output y;reg y,tmp1,tmp2;always @(a or b or c or d)// y的值并不等于当前的tmp1,tmp2相或的值,而是等于上 begin一次运算时tmp1,tmp2相或的值。
相当于一个延迟,在第2 tmp1 = ab; 次always模块运行完后得到想要的y值tmp2 = cd;y = tmp1|tmp2;endendmodule代码2:基本与代码1一样,只是在always的敏感列表中加入了temp1,temp2module test(a,b,c,d,y);input a,b,c,d;output y;reg y,tmp1,tmp2;always @(a or b or c or d or tmp1 or tmp2)//与代码一不同,begintmp1 = ab;tmp2 = cd;y = tmp1|tmp2;endendmodule代码3:在代码2中加进参数j,来帮助判断always模块的运行次数:module test(a,b,c,d,y);input a,b,c,d;output y;reg y,tmp1,tmp2;reg [8:0]j=0;always @(a or b or c or d or tmp1 or tmp2)beginj = j + 1;#5 //这里加了一个延时,方便分析tmp1 = ab;延迟消失了。
FPGA笔试题目
FPGA笔试题目一.填空题1.目前世界上有十几家生产cpld/fpga的公司,最大的两家是:()和()。
答案:xilinx、altera目的:知识面考点:fpga熟识2.fpga的基本结构由3种可编程单元和一个用于存放编程数据的静态存储器组成。
这3种可编程的单元分别就是()、()和()。
答案:iob――输出输出模块目的:知识面clb――可编程逻辑模块ir―互联资源或可编程内部连线目的:fpga基本结构的了解考点:fpga基本知识3.verilog语言信号赋值包含非堵塞赋值和堵塞赋值,通常非堵塞赋值用在()叙述中,堵塞赋值用在()描述中;答案:时序电路、组合逻辑目的:verilog语言的了解考点:硬件语言知识二.选择题1.电子系统设计优化,主要考虑提高资源利用率减少功耗(即面积优化),以及提高运行速度(即速度优化),下列方法(a)不属于面积优化。
a流水线设计b资源共享c逻辑优化d串行化2.下列方法中不能消除竞争冒险现象的是:(d)a.互连滤波电容b.修正逻辑设计c.导入选通脉冲d.采用女团逻辑3.大规模可编程器件主要有cpld和fpga两类,下面对fpga结构与工作原理描述中,正确的是(c)afpga全称作繁杂可编程逻辑器件bfpga是基于乘积项结构的可编程逻辑器件。
c.基于sram的fpga器件,每次上电后必须展开一次布局。
d在altera公司生产的器件中,max7000系列属fpga结构三.简答1.列举你熟识的前仿真检验工具,并以一种为基准直观叙述仿真步骤?答案:modelsim、vcs、nc等;步骤:目的:仿真工具的熟悉考点:工具知识掌握2.列举仿真过程中常用的verilog系统任务并叙述出高任务在仿真过程中的促进作用?答案:1).表明任务:$display$write主要促进作用就是在仿真过程中将仿真数据打印输出至屏幕;2).监控任务$monitor主要用作监控仿真过程中选定的参数,并将参数值输入列印至屏幕;3)探测任务$strobe主要用于在指定的时间之后显示仿真数据;4)文件输入和输出任务$fopen$fdisplay$fclose用于打开硬盘上的某个文件。
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 器件电路硬件检测。
fpga考试题库及答案
fpga考试题库及答案1. FPGA的全称是什么?A. Field Programmable Gate ArrayB. Fixed Programmable Gate ArrayC. Field Programmable Graphics ArrayD. Fixed Programmable Graphics Array答案:A2. FPGA与ASIC相比,其主要优势是什么?A. 成本更低B. 可编程性C. 功耗更低D. 速度更快答案:B3. 在FPGA设计中,以下哪个不是基本逻辑单元?A. 逻辑块(Logic Block)B. 互连(Interconnect)C. 触发器(Flip-Flop)D. 存储器块(Memory Block)答案:D4. 以下哪个不是FPGA设计流程中的步骤?A. 设计输入B. 功能仿真C. 逻辑综合D. 物理验证答案:D5. FPGA中的配置存储器通常用于存储什么?A. 程序代码B. 配置数据C. 用户数据D. 操作系统答案:B6. 在FPGA设计中,以下哪个不是常见的时钟资源?A. 全局时钟B. 区域时钟C. 局部时钟D. 外部时钟答案:C7. FPGA中的LUT(查找表)通常用于实现什么功能?A. 存储数据B. 执行算术运算C. 实现组合逻辑D. 控制数据流答案:C8. 在FPGA设计中,以下哪个不是布线资源?A. 导线(Wires)B. 多路选择器(Multiplexers)C. 缓冲器(Buffers)D. 触发器(Flip-Flops)答案:D9. FPGA中的I/O标准通常指的是什么?A. 输入/输出引脚的数量B. 输入/输出引脚的电气特性C. 输入/输出引脚的物理布局D. 输入/输出引脚的逻辑功能答案:B10. 在FPGA设计中,以下哪个不是优化设计性能的方法?A. 资源共享B. 流水线技术C. 增加逻辑门数量D. 并行处理答案:C结束语:以上是FPGA考试题库及答案,希望能够帮助考生更好地准备和理解FPGA的相关知识。
verilog期末考试试题
verilog期末考试试题一、选择题(每题2分,共20分)1. 在Verilog中,以下哪个关键字用于定义一个模块?A. moduleB. endmoduleC. inputD. output2. 以下哪个操作符用于Verilog中的按位与操作?A. &B. &&C. |D. ||3. Verilog中,一个时钟信号通常与哪个信号属性关联?A. regB. wireC. clkD. none of the above4. 在Verilog中,非阻塞赋值使用哪个操作符?A. =B. <=C. <=D. <=>5. 以下哪个是Verilog中定义参数的正确语法?A. parameter int a;B. parameter a = 10;C. parameter int a = 10;D. parameter a = 10 int;6. 以下哪个是Verilog中定义信号的初始值的正确方式?A. reg [7:0] data = 8'b1;B. reg [7:0] data = 8'b00000001;C. reg [7:0] data = 8'b10101010;D. reg [7:0] data = 8'b1;7. 在Verilog中,一个信号的宽度可以是任意的吗?A. 是的,可以是任意宽度B. 不是的,必须在1到32位之间C. 不是的,必须在1到64位之间D. 不是的,必须在1到1024位之间8. 以下哪个是Verilog中生成时钟信号的常用方法?A. 使用always块和非阻塞赋值B. 使用initial块和阻塞赋值C. 使用initial块和非阻塞赋值D. 使用always块和阻塞赋值9. 在Verilog中,case语句的每个分支后面应该使用哪个关键字?A. endB. endcaseC. caseD. default10. 以下哪个是Verilog中定义一个4位二进制计数器的正确方式?A. reg [3:0] counter;B. reg [4:1] counter;C. reg [0:3] counter;D. reg [4:0] counter;二、简答题(每题5分,共20分)1. 解释Verilog中的阻塞赋值和非阻塞赋值的区别。
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数字系统设计教程第二版课后练习题含答案
Verilog数字系统设计教程第二版课后练习题含答案练习题1:IGT上的闪光灯设计一个闪光灯电路,该电路使用维托吞尔(Vitold Kern)的交替时间生成器(IGT)控制LED的开关。
闪光灯的频率为每秒2次,LED的工作周期为2ms。
解答module flash(input clk,output reg led);reg[10:0] cnt;// 11 bit counteralways@(posedge clk)begincnt <= cnt +1;endalways@(posedge cnt[10])beginled <=~led;endendmodule练习题2:7段数码管设计一个数字系统,在7段数码管上显示0到9。
解答module seven_segment(input[3:0] digit,output reg[6:0] sseg);parameter COMMON_ANODE =0;// COMMON_ANODE = 1 for commo n anode displayalways@(*)begincase(digit)4'h0: sseg =7'b100_0000;4'h1: sseg =7'b111_1001;4'h2: sseg =7'b010_0100;4'h3: sseg =7'b011_0000;4'h4: sseg =7'b001_1001;4'h5: sseg =7'b001_0010;4'h6: sseg =7'b000_0010;4'h7: sseg =7'b111_1000;4'h8: sseg =7'b000_0000;4'h9: sseg =7'b001_1000;default: sseg =7'b111_1111;endcaseif(COMMON_ANODE ==0)beginsseg =~sseg;endendendmodule练习题3:模数计数器设计一个二进制数模数计数器,输出分别为0到3的二进制数。
fpga综合试题及答案
fpga综合试题及答案一、单选题(每题2分,共10分)1. FPGA的全称是什么?A. Field Programmable Gate ArrayB. Field Programmable Graphic ArrayC. Field Programmable General ArrayD. Field Programmable Group Array答案:A2. 下列哪个不是FPGA的编程语言?A. VHDLB. VerilogC. C++D. SystemVerilog答案:C3. FPGA与ASIC的主要区别是什么?A. FPGA是可编程的,ASIC是不可编程的B. FPGA是不可编程的,ASIC是可编程的C. FPGA和ASIC都是可编程的D. FPGA和ASIC都是不可编程的答案:A4. FPGA设计中,通常用于描述硬件行为的是哪类语言?A. 汇编语言B. 高级编程语言C. 硬件描述语言D. 机器语言答案:C5. 下列哪个不是FPGA设计流程中的步骤?A. 编写代码B. 编译C. 布局布线D. 烧录固件答案:D二、多选题(每题3分,共15分)6. 下列哪些是FPGA的优点?A. 可编程B. 可重复使用C. 性能稳定D. 成本低廉答案:A B7. 在FPGA设计中,以下哪些因素会影响设计的性能?A. 逻辑资源的使用B. 时钟频率C. 电源电压D. 布线复杂度答案:A B D8. FPGA设计中,常见的时序问题包括哪些?A. 时钟偏差B. 时钟偏斜C. 时钟抖动D. 时钟漂移答案:A B C9. FPGA设计中,通常需要考虑哪些功耗因素?A. 静态功耗B. 动态功耗C. 热设计功耗D. 电磁干扰答案:A B C10. 下列哪些是FPGA设计中常用的仿真工具?A. ModelSimB. VivadoC. QuartusD. Xilinx ISE答案:A B C三、判断题(每题1分,共5分)11. FPGA设计中,可以使用C语言进行硬件描述。
FPGA-Verilog试题(西安电子科技大学)
西安电子科技大学考试时间分钟试题题号一二三四五六七八九十总分分数1.考试形式:闭(开)卷;2.本试卷共四大题,满分100分。
班级学号姓名任课教师一、选择题(每题2分,共18分)1. 下面哪个是可以用verilog语言进行描述,而不能用VHDL语言进行描述的级别?( A )(A) 开关级 (B)门电路级 (C) 体系结构级 (D) 寄存器传输级2.在verilog中,下列语句哪个不是分支语句?( D )(A) if-else (B) case (C) casez (D) repeat3.下列哪些Verilog的基本门级元件是多输出( D )(A) nand (B) nor (C) and (D) not4.Verilog连线类型的驱动强度说明被省略时,则默认的输出驱动强度为( B )(A) supply (B) strong (C) pull (D) weak5.元件实例语句“notif1 #(1:3:4,2:3:4,1:2:4) U1(out,in,ctrl);”中截至延迟的典型值为( B )(A) 1 (B) 2 (C) 3 (D) 46.已知“a =1b’1; b=3b'001;”那么{a,b}=( C )(A) 4b'0011 (B) 3b'001 (C) 4b'1001 (D) 3b'101第 2 页共 8 页7.根据调用子模块的不同抽象级别,模块的结构描述可以分为(ABC )(A) 模块级 (B)门级 (C) 开关级 (D) 寄存器级8.在verilog语言中,a=4b'1011,那么 &a=(D )(A) 4b'1011 (B) 4b'1111 (C) 1b'1 (D) 1b'09.在verilog语言中整型数据与( C )位寄存器数据在实际意义上是相同的。
(A) 8 (B) 16 (C) 32 (D) 64二、简答题(2题,共16分)1.Verilog HDL语言进行电路设计方法有哪几种(8分)1、自上而下的设计方法(Top-Down)2、自下而上的设计方法(Bottom-Up)3、综合设计的方法2.specparam语句和parameter语句在参数说明方面不同之处是什么(8分)。
FPGA设计实验考试抽测题目
FPGA设计实验抽测题目1、试用verilog设计一个基本RS锁存器(用行为描述风格),并用test bench程序测试。
要求:用modelsim进行仿真,给出仿真波形图2、试用verilog设计一个基本RS锁存器(用结构描述风格),并用test bench程序测试。
3、试用verilog设计一个带低电平清零的D锁存器(用行为描述风格),并用test bench程序测试。
要求:用modelsim进行仿真,给出仿真波形图4、试用verilog设计一个带低电平清零的D锁存器(用数据流描述风格),并用test bench 程序测试。
5、试用verilog设计一个D触发器,其功能表如下表所示。
6、试用verilog设计一个JK触发器,其功能表如下表所示。
要求:用Quartus ii设计,并进行硬件测试。
给出Quartus ii仿真波形图、RTL图7、试用verilog设计74HC161,其功能表如下表所示要求:用Quartus ii设计,并进行硬件测试。
给出Quartus ii仿真波形图,给出并解释RTL图8、试用verilog设计一个四位二进制加法计数器的test bench程序要求:用modelsim进行仿真,给出仿真波形图9、试用verilog设计一个带置数功能的四位二进制加法计数器的test bench程序。
要求:用modelsim进行仿真,给出仿真波形图10、试用verilog设计一个检测3个1的检测器,其状态图如下图所示。
要求:用Quartus ii设计,并进行硬件测试。
给出Quartus ii仿真波形图,生成状态转移图或RTL图11、试用verilog设计一个检测3个或3个以上的1的检测器的test bench。
要求:用modelsim进行仿真,给出仿真波形图12、试用verilog设计74LS138译码器,其功能表如下表所示要求:用Quartus ii设计,并进行硬件测试。
给出Quartus ii仿真波形图,给出并解释RTL图13、试用verilog设计74LS148编码器,其功能表如下表所示要求:用Quartus ii设计,并进行硬件测试。
fpga综合试题及答案【2024版】
可编辑修改精选全文完整版fpga综合试题及答案一、单选题(每题2分,共10分)1. FPGA的全称是什么?A. Field Programmable Gate ArrayB. Field Programmable Graphic ArrayC. Field Programmable General ArrayD. Field Programmable Group Array答案:A2. 下列哪个不是FPGA的编程语言?A. VHDLB. VerilogC. C++D. SystemVerilog答案:C3. FPGA与ASIC的主要区别是什么?A. FPGA是可编程的,ASIC是不可编程的B. FPGA是不可编程的,ASIC是可编程的C. FPGA和ASIC都是可编程的D. FPGA和ASIC都是不可编程的答案:A4. FPGA设计中,通常用于描述硬件行为的是哪类语言?A. 汇编语言B. 高级编程语言C. 硬件描述语言D. 机器语言答案:C5. 下列哪个不是FPGA设计流程中的步骤?A. 编写代码B. 编译C. 布局布线D. 烧录固件答案:D二、多选题(每题3分,共15分)6. 下列哪些是FPGA的优点?A. 可编程B. 可重复使用C. 性能稳定D. 成本低廉答案:A B7. 在FPGA设计中,以下哪些因素会影响设计的性能?A. 逻辑资源的使用B. 时钟频率C. 电源电压D. 布线复杂度答案:A B D8. FPGA设计中,常见的时序问题包括哪些?A. 时钟偏差B. 时钟偏斜C. 时钟抖动D. 时钟漂移答案:A B C9. FPGA设计中,通常需要考虑哪些功耗因素?A. 静态功耗B. 动态功耗C. 热设计功耗D. 电磁干扰答案:A B C10. 下列哪些是FPGA设计中常用的仿真工具?A. ModelSimB. VivadoC. QuartusD. Xilinx ISE答案:A B C三、判断题(每题1分,共5分)11. FPGA设计中,可以使用C语言进行硬件描述。
FPGA-verilog-数字系统设计考试题
module alu (out,opcode,a,b); output [7:0] out; input [2:0] opcode; input [7:0] a,b; reg [7:0] out; always @(opcode or a or b) begin case(opcode) `plus: out=a+b; `minus: out=a-b; `band: out=a&b; `bor: out=a|b; `unegate: out=~a; default: out=8'hx; endcase end
S2=2’b11; always @(posedge clk)
if(rst) state<=idle;
else case(state) Idle: if(x)
state<=S0; else
state<=idle; S0: if(x)
state<=S1; else
state<=idle; S1: if(!x)
input ena; wire [7:0]data; wire c; output out; m1 m1_inst(data,ena,c ); m2 m2_inst(data,c,out ); endmodule
module m2(data,ena,out);
input ena; input [7:0]data; output out; ....... endmodule
答案不en限dm于o上du述le描述,
`timescale 1ns/1ns
以实现功能描述为准。
module test_m;
reg clk,reset;
wire clk4,clk8;
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试卷二
Verilog试卷二试卷二一、选择题(共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、9moonB、State0C、Not_Ack_0D、signall4、下列语句中,不属于并行语句的是()。
A、过程语句B、assign语句C、元件例化语句D、case语句5、EDA的中文意思是()A、电子设计自动化B、电子设计机械化C、电子系统集成D、电子分布系统二、填空题(共26分,每空 2 分)1、Verilog的基本设计单元是。
它是由组成,一部分描述;另一部分描述即定义输入是如何影响的。
2、用assign描述的语句我们一般称之为逻辑,并且它们是属于语句,即与语句的书写次序。
而用always描述的语句我们一般称之为逻辑或逻辑,并且它们是属于语句,即于语句的书写。
3、在case语句中至少要有一条语句。
三、简答题(共14分)1、怎样理解在进程语句中,阻塞语句没有延迟这句话?(4分)2、在进程中什么情况下综合为时序电路?什么情况下综合为组合电路?(5分)3、为什么在Verilog语言中,其综合只支持次数确定的循环,而不支持次数不确定的循环?(5分)四、改错题(15分)1、下述是一个实现四位数的BCD码加法的程序,请把正确的程序写在试卷上module bcdadd(clk,a,b,c,d,a1,b1,c1,d1,q1,q2,q3,q4,cout)input clk;input a,b,c,d,a1,b1,c21,d21[3:0];output q1,q2,q3,q4[3:0];output cout;reg q1,q2,q3,q4; [3:0]always @( clk, a,b,c,d,a1,b1,c1,d1 );beginq1=a+a1;if(q1>9) {cout,q1}=q1+6;q2=b+b1+cout;if(q2>9) {cout,q2}=q2+6;q3=c+c1+cout;if(q3>9) {cout,q3}=q3+6;q4=d+d1+cout;if(q4>9) {cout,q4}=q4+6;五、编程题(共35分)1、编程实现带异步清0、异步置1的D触发器。
《FPGA设计实验》考试题目
FPGA设计实验考试题目(开卷)要求:以下题目除特别说明外,均必须通过硬件测试(即下载至开发板验证),并编写好Test Bench,通过ModelSim仿真,给出其源程序(关键语句必须解释语句含义)、功能仿真图、RTL图(主要图形说明其功能)或状态机图。
其中现场操作50分。
总分100分。
1、设计一个多位数据比较器(测试时以3位为例)2、设计一个投票表决器(测试时以5人为例)3、将开发板上的50MHZ时钟分频为秒脉冲时钟信号module fenp(clk_out,clk_in,reset); output clk_out; input cl k_in; input reset; reg [1:0] cnt; reg clk_out;lways@(posedge clk_in or posedge reset) begin if(reset) begin cnt<=0; clk_out<=0; end else beginif(cnt==24999999) beginclk_out<=!clk_out; cnt<=0; end else cnt<=cnt+1; end end end module系统时钟为50MHz,用Verilog代码怎样将其分频至1/100smodule S20 (clk,rst,clk_out);input clk,rst;output clk_out;reg clk_out;reg [4:0] count1;always@( posedge clk or negedge rst)if ( !rst )begincount1 <= 0;clk_out<= 0;endelsebeginif (count1 < 20)begincount1 <= count1+1;if (count1>=10)clk_out <=1;elseclk_out <=0;endelsecount1 <=0;endendmodule设计一个分频器,要求:占空比为50%的任意奇数次5分频电路。
veriloghdl数字设计与综合答案.doc
veriloghdl数字设计与综合答案.docveriloghdl 数字设计与综合答案【篇一:verilog 习题选答】txt> 答:fpga 中,由程序来转换为可烧录的二进制码。
ic 设计中,主要是由design-compiler 来实现。
2.能否说模块相当于电路图中的功能模块,端口相当于功能模块的3.assign 声明语句,实例元件,always 块,这三类描述中哪一种直接与电路结构有关?4.由连续赋值语句(assign )赋值的变量能否是reg 型的?答:赋值运算分为连续赋值和过程赋值两种。
(1)连续赋值连续赋值语句只能对线网型变量进行赋值,而不能对寄存器型变量进行赋值,基本的语法结构为:assign #( 延时量) 线网型变量名= 赋值表达式; 一个线网型变量一旦被连续赋值语句赋值后,赋值语句右端赋值表达式的值将持续对赋值变量产生连续驱动,只要右端表达式任一操作数的值发生变化,就会立即触发对赋值变量的更新操作。
(2)过程赋值过程赋值主要用于两种结构化模块(initial 和always )中的赋值语句。
在过程块中只能使用过程赋值语句,不能在过程块中出现连续赋值语句,同时过程赋值语句也只能用在过程赋值模块中。
基本的语法结构为:被赋值变量赋值操作符赋值表达式,其中,赋值操作符是“=”或“=,”它分别代表了阻塞赋值和非阻塞赋值类型。
过程赋值语句只能对寄存器类型的变量进行赋值,经过赋值后,上面这些变量的值将保持不变,直到另一条赋值语句对变量重新赋值为止。
5.如果都不带时间延迟、阻塞和非阻塞赋值有何不同?说明它们的不同点?答:代码1:module test(a,b,c,d,y); // 两个与逻辑, 1 个或逻辑inputa,b,c,d; output y;reg y,tmp1,tmp2;always @(a or b or c or d)// y 的值并不等于当前的tmp1 ,tmp2相或的值,而是等于上begin 一次运算时tmp1 ,tmp2 相或的值。
FPGA 现代数字集成系统设计试题A
一、填空题题(共 15 分,每小题 1 分)1、Verilog的基本构建模块是?2、在Verilog中使用的四值逻辑值是:。
3、在verilog中用到的两类过程语句是initial和always。
其不同处是initial ,而always 。
4、在仿真时一般要用接近实际的最大timescale精度。
因精度越高,仿真时间步,仿真时间。
使用适当的精度,可达到精度与仿真时间的平衡。
5、若输出端输出X值,一种可能是输出net上发生,二是由一个传递到net上引起。
6、在posedge事件是指任何可能从低到高的跳变,具体包含:。
7、在用复制操作符复制一个数据时,例{3{‘b1}} 是。
8、在过程块中可以说明过程时序。
过程时序控制有三类,分别是:、、。
9、ASIC是专用集成电路,FPGA是ASIC中的可编程门阵列。
按编程方式不同,FPGA分为,2种。
二、简答题(共 25 分,每小题 5 分)1、简述D触发器的建立时间(setup time)、保持时间(hold time)和亚稳态(metastability)的定义,并说明建立时间裕量和保持时间裕量的含义。
2、请画图说明数字电路设计中的D触发器同步复位与异步复位的区别。
第1页共3页第2页 共3页3、什么是静态时序分析、动态时序仿真?简介各自的优缺点。
4、简述FPGA 等可编程逻辑器件设计流程。
5、赋值语句assign 通常给哪种类型的逻辑建模?过程块语句always 通常给哪种类型的逻辑建模?三、画出下面数据流建模的电路图:(10分)module FA _ Df (A, B, Cin, Sum, Cout ) ;input A, B, Cin;output Sum, Cout ;assign Sum = A ^B ^Cin;assign Cout = (A & Cin) | (B & Cin) | (A & B) ;endmodule四、画出clk, waito, edgeo 信号的波形。
FPGA题及答案
1、本课程的讲授目标:了解一种新技术EDA;掌握一种设计工具(器件:Altera FPGA软件:Quartus II);掌握一种语言Verilog HDL。
2、使用Quartus II进行逻辑设计,常用的设计思想的输入方式有:原理图、HDL 等。
3、高级语言C程序经过软件程序编译器形成cpu指令/数据代码流;Verilog HDL程序经过综合器形成电路网表文件4、CPLD是在PAL,GAL等类型器件的基础上发展起来的与或阵列型PLD器件,大多数FPGA采用了查找表结构,其物理结构是静态存储器SRAM.。
5、JTAG边界扫描技术用于对高密度、引脚密集的器件和系统进行测试,如:CPU,DSP,ARM,PLD 等。
同时,JTAG接口也被赋予了更多的功能:编程下载、在线逻辑分析。
6、使用Verilog HDL进行逻辑设计,变量的值有4种状态:0、1、x、z;7、定义逻辑功能的几种基本方法:用assign持续赋值语句定义、用always过程块定义、调用元件(元件例化)。
8、整数按如下方式书写:+/-<size> '<base><value> 即+/-<位宽>'<进制><数字>size 为对应二进制数的宽度;base为进制;value是基于进制的数字序列。
进制有如下4种表示形式:二进制(b或B)、十进制(d或D或缺省)、十六进制(h或H)、八进制(o或O)9、定义reg型标量型变量:reg qout;//变量名qout10、定义wire型向量:wire[7:0] databus;//databus的宽度是8位11、在状态机设计中使用一位热码定义5种状态,并定义状态变量:parameter s0=5’b00001,s1=5’b 00010,s2=5’b 00100,s3=5’b 01000,s4=5’b 10000;reg [4:0] state,next_state;12、在状态机设计中使用顺序码定义5种状态,并定义状态变量:parameter s0=3’b 000,s1=3’b 001,s2=3’b 010,s3=3’b 011,s4=3’b 100;reg [2:0] state,next_state;1、成为IEEE 标准的HDL 有( CD )A 、ABEL-HDLB 、AHDLC 、VHDLD 、Verilog HDL2、Quartus II 是 ( A )公司的( D )开发工具。
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、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4、假设仿真开始时间为时刻 0,画出以下描述的 S 信号波形图。
initial begin #2 S=1; #5 S=0; #3 S=1; #4 S=0; #2 S=1; #5 S=0; end
波形图:
5、写出仿真如下 top_alu 模块后屏幕上应显示的信息: _________________________________
,clk8);
endmodule
3、
module m33(din,dout); input [2:0]din; output [2:0]dout; reg [2:0]dout; always @(din) case(din) 3’b000: dout=3’b000; 3’b001: dout=3’b001; 3’b010: dout=3’b011; 3’b011: dout=3’b010; 3’b100: dout=3’b110; 3’b101: dout=3’b111; 3’b110: dout=3’b101; 3’b111: dout=3’b100; default:state<=3’bx; endcase
`define plus `define minus `define band `define bor `define unegate
3'd0 3'd1 3'd2 3'd3
3'd4
module alu (out,opcode,a,b); output [7:0] out; input [2:0] opcode; input [7:0] a,b; reg [7:0] out; always @(opcode or a or b) begin case(opcode) `plus: out=a+b; `minus: out=a-b; `band: out=a&b; `bor: out=a|b; `unegate: out=~a; default: out=8'hx; endcase end
module m31(clk,rst,x,z); input clk,rst,x; output z; reg [1:0]state; parameter idle=2’b00,
S0=2’b01, S1=2’b10,
S2=2’b11; always @(posedge clk)
if(rst) state<=idle;
a1(S3,A,S2); and
a2(S4,S1,B); or o(C,S3,S4);
endmodule
module m (A,B,C); input A,B; output C; assign C=A^B;
endmodule
3、
`include “m.v”
`timescale 1ns/1ns
module test_m;
一
二
三
四
五
六
七
八
九
十 十一
得分
总分
评阅人
复核人
一、填空(30 分)
1、$display(“result=%b”,5’b01010 | 5’b11111)
显示:
2、$display(“result=%b”,!(4'b1110 || 4'b1001)) 显示:
3、若 a=4'b1110,b=4'b1001,则$display(“result=%b”,{a,b,a+b}) 显示:
module m2(data,ena,out);
input ena; input [7:0]data; output out; ....... endmodule
2、
module m (A,B,C); input A,B; wire
S1,S2,S3,S4; output C; not n1(S1,A); not n1(S2,B); and
2 5 3 42 5
答案
5、output=126 说明:每小题 6 分,共 30 分。 二、(35 分) 1、
module m1(data,ena,c);
input ena; output [7:0]data; output c;
…… emnoddmuoldeumle(ena,out);
input ena; wire [7:0]data; wire c; output out; m1 m1_inst(data,ena,c ); m2 m2_inst(data,c,out ); endmodule
clk
clk4 clk8 reset
clk
测
分
clk4
试 reset 频 clk8
共4 页 第 3 页
山东理工大学《FPFA 技术及应用(A)》试卷纸
(A)卷 2011-2012 学年第 二 学期
班级:
姓名:
学号:
…………………………………装……………………………订…………………………线………….………………………………
input clk,reset;
output clk4,clk8;
reg [2:0]state;
parameter S0=3’b000, S1=3’b001, S2=3’b010, S3=3’b011, S4=3’b100, S5=3’b101, S6=3’b110, S7=3’b111;
always @(posedge clk)
学号:
…………………………………装……………………………订…………………………线………….………………………………
三、 根据要求设计逻辑电路(35 分)
1. 设计检测串行序列的逻辑电路,要求当检测到 110 时输出高电平脉冲。画出状态图,写出 verilog 描述。
x
z
clk
rst
2.设计一能进行 4、8 分频的分频器,写出分频器和测试模块的 Verilog 描述。
二、根据功能模块写出 Verilog 描述(35 分)
1、写出每个及连接在一起的逻辑功能模块 Verilog 描述(忽略逻辑部分)。
m1
m2
ena data[7..0] c
data[7..0] out ena
inst
inst1
2、写出以下逻辑电路的门级结构 Verilog 描述和行为 Verilog 描述。
endcase
assignclk4=(state==S0 or state==S1)?1’b1:1’b0;
assignclk8=(state==S0 or state==S1 or state==S2 or
state==S3)?1’b1:1’b0; `include “m32.v”
答案不en限dm于o上du述le描述,
reg A,B;
wire C;
或
initial
begin
A=0;
B=0;
#10 A=1;
#10 B=1;
#10 A=0;
#10
$stop;
end 答案不限上m述两种,只要实现功能即可。
m_inst(A,B,C);
endmodule
三、(35 分) 1、
0 /
idle
1
0/
/
S0
0
/
1
1
/
/
S
1
1/
0/
if(reset)
state<=S0;
else
case(state)
S0: state<=S1;
S1: state<=S2;
S2: state<=S3;
S3: state<=S4;
S4: state<=S5;
S5: state<=S6;
S6: state<=S7;
S7: state<=S0;
default:state<=S0;
endmodule
`timescale 1ns/1ns module top_alu;
wire [7:0] out; reg [2:0] op; reg [7:0] d1,d2; initial
begin d1=8’h3e; d2=8’h52; op=3’b011; #10 $display(“ouput=%d”,out); #10 $stop;
A
INPUT
VCC
AND2
NOT
inst2 NOT
inst3
inst AND2
B
INPUT
VCC
inst4
OR2 inst1
OUTPUT
C
3、编写二、2 逻辑电路的测试模块。
共 4页 第 2 页
山东理工大学《FPFA 技术及应用(A)》试卷纸
(A)卷 2011-2012 学年第 二 学期
班级:
姓名:
3、设计 3 位二进制码(Binary)到格雷码(Gray)的编码器,写出 Verilog 描述,码表如下:
二进制码 格 雷 码 (Binary) (Gray)
000
000
001
001
010
011
011
010
100
110
101
111
110
101
111
100
共4 页 第 4页
一、填空(30 分) 1、result=11111 2、result=0 3、result=111010010111 4、
else case(state) Idle: if(x)
state<=S0; else
state<=idle; S0: if(x)
state<=S1; else
state<=idle; S1: if(!x)