基于fpga的嵌入式系统设计——复习题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《基于fpga的嵌入式系统设计》复习题
1、名词概念解释:
(1)ASIC,FPGA,SOC,SOPC,NIOS II,I/O ,IP ;
(2)VHDL,verilog HDL,HDL,EDA ;
(3)功能仿真,后仿真,设计综合,设计验证;
(4)嵌入式系统的定义:
以应用为中心、以计算机技术为基础、软硬件可裁剪、适应应用系统对功能、
可靠性、成本、体积、功耗等严格要求的专用计算机系统。
(5)嵌入式系统的组成:
嵌入式系统主要由嵌入式处理器、外围设备、嵌入式操作系统及应用软件等组
成,它是集软硬件于一体的可独立工作的“器件”。
其中:嵌入式处理器是嵌入
式系统的核心部件,具有小型化、高效率、高可靠性、高集成度等特点。
外围
设备是嵌入式系统中用于完成存储、通信、调试、显示等辅助功能的部件。
2、填空题
(1)NiosII处理器有三种运行模式:___________ ,___________ ,_____________ 。
(2)CycloneII FPGA支持串行配置器件的isp编程,该特性是通过_____________利用JTAG接口实现的。
(3)在SOPC Builder中,复位地址的偏移量是________,异常地址的偏移量是________。
(4)在NiosII的多处理器系统中,最常用的共享资源是____________。
(5)根据Flash是否支持处理器的直接读操作,NiosII处理的bootloader分成两种模式:________________bootloader、________________ bootloader。
(6)用uC/OS-II操作系统实现以太网与轻量IP功能的时候,以太网的中断号至少是____________。
(7)Altera公司的FPGA常用的配置方式: JTAG方式、___________、___________。
(8)CycloneII FPGA上面集成的Block RAM为M4K,一个M4K的大小是________。
(9)使用QuartusII进行FPGA设计的开发流程是:设计输入、__________、___________、仿真、_________ 。
(10)NiosII IDE为软件开发提供了4个主要功能:工程管理器、编辑器和编译器、调试器、____________ 。
(11)SOPC组件On-chip Memory可以用作RAM外,还可以设置成___________,甚至可以设置成双口存取。
(12)CycloneII EP2C35器件包含4个PLL,每个PLL均有_________个输出。
其中第_________个输出的驱动能力最强。
(13)基于微电子设计的电路通常包含有:组合逻辑电路和_________逻辑电路。
(14)基于微电子设计的电路通常包含有:__________电路和时序逻辑电路。
(15)SOC是__________的缩写,EDA是__________的缩写。
(16)电子系统设计主要有_____________和硬件描述语言设计方式,前者比较直观,形象,但通用可移植性弱;后者利用文本的形式描述和设计电路,常用的两种硬件描述语言是__________和__________。
(17)现在集成电路设计主要采用硬件描述语言来描述自己的设计,然后利用EDA工具进行仿真和综合,转换成某种目标文件,然后利用ASIC实现。
请问综合的主要作用是__________________________________________________________。
(18)在基于EDA设计的技术中,有两种基本设计思路,一种是自顶向下的设计思路,一种是__________的设计思路。
(19)在过去的几十年中,数字电路设计技术发展迅速,经历了__________、__________,__________,__________,直到今天的SOC,我们可以把一个完整的系统集成在一个芯片上。
(20)设计仿真具体分为__________和__________,前者对电路的RTL模型的仿真,不考虑信号的时延关系,而后者是对综合或布局布线的网表进行的仿真,考虑信号的时延关系。
3、选择题
(1)基于FPGA的嵌入式系统,下面说法正确的是()
A.只有运行NiosII软核的FPGA系统才是嵌入式系统
B.基于FPGA的嵌入式系统是在FPGA中运行可配置的软核
C.基于FPGA的嵌入式系统主要特点是运行速度比其他嵌入式系统要快
D.基于FPGA的嵌入式系统是FPGA最主要的应用方向
(2)对于FPGA芯片来讲,下列说法错误的是:()
A.FPGA是现场可编程逻辑器件的缩写
B.FPGA的内部可以集成DSP、PowerPC等模块
C.FPGA是非易失性器件
D.FPGA的内部逻辑可以反复修改
(3)下列不属于FPGA片内资源的是哪个?()
A. PLL(锁相环)
B. LUT(查找表)
C. NiosII软核处理器
D. DSP处理模块
(4)下列关于SOPC的说法正确的是:()
A. SOPC系统可以对其结构进行修改,即可以说SOPC是永不过时的嵌入式系统。
B. NiosII是一种软核处理器,故可以任意修改其内部结构。
C. NiosII可以脱离FPGA芯片单独运行。
D. SOPC系统具有体积小、快速灵活、低功耗等优点。
(5)下列可综合的Verilog HDL语句是:()
A. !==
B. task
C. initial
D. #delay
(6)下列Verilog HDL表达式中正确的是:()
A. 4’b001 << 1 = 5’b00010;
B. !4’b1011 || ! 4’b0000 = 1’b1
C. 4’b1010 & 4’b1101= 1’b1;
D. 4’b1011 && 4’b0100 = 4’b1111;
(7)下列选项中哪个不是嵌入式系统软硬件划分的原则。
()
A. 系统优化原则
B. 资源利用率原则
C. 性能原则
D. 性价比原则
(8)NiosII的系统中SDRAM的IP核时钟与系统全局时钟相差多少度?()
A. -60度
B. -50度
C. -70度
D. -90度
(9)下列描述可以在FPGA中稳定运行的是:()
A. 状态机编码中采用二进制编码方式
B. 在时钟上升沿到来时 A的值由“1001”变为“0110”
C. 大量采用异步电路设计
D. 采用时钟的正负沿调整采样
(10)下列不属于FPGA应用范围的是()
A.信号处理 B.智能应用
C.手持PDA D.超大屏幕显示
(11)下列关于软核处理器的说法,正确的是()
A.软核处理器执行VHDL编写的程序
B.软核处理器是集成在FPGA中的模块
C.NiosII、Microblaze、PowerPC、MIPS都属于软核处理器的范畴
D.NiosII软核可以修改它的指令和外设
(12)下列说法正确的是()
A.IP核可以挂载到不同的总线上
B.系统中的IP核不支持Veriog HDL和VHDL混合编写
C.同一个IP核在不同的FPGA中具有相同的性能
D.嵌入式软核处理器并不属于IP核的范畴
(13)关于SOPC的说法,错误的是()
A.SOPC的系统中至少包含一个NiosII软核
B.SOPC技术包含了嵌入式设计的全部,除了硬件PCB外,还包括处理器和实时多任务操作系统(RTOS)
C.SOPC可以体现软硬件协同设计技术
D.如果FPGA中集成了硬核处理器,无论是否使用,系统都属于SOPC系统
(14)下列不属于FPGA片内资源的是()
A.高速串行收发器 B.PLL(数字锁相环)
C.RAM D.FIFO(先进先出)
(15)下面哪项不属于NiosII软核的可定制性()
A.可以修改基于NiosII的IP核 B.提高或降低工作频率
C.增加或取消MMU(内存管理单元) D.自定义NiosII指令
(16)关于FPGA的配置问题下列说法的正确的是()
A.EPCS16的容量是16Mb
B.FPGA仅支持EPCS配置
C.FPGA的配置优先级最高的是EPCS
D.EPCS配置FPGA属于PS(被动)方式
(17)关于NiosII软核启动过程,下列说法错误的是()
A.NiosII软核的启动过程主要分为FPGA器件的配置和NiosII程序的加载
B.CFI Flash可以保存FPGA的配置文件、NiosII程序和其他文件数据
C.FPGA配置文件(.sof)和NiosII程序(.elf)都可以保存在EPCS中
D.使用CFI Flash做为NiosII启动的器件时,FPGA把配置数据从CFI Flash读
出并加载,然后执行Bootloader把保存的NiosII程序复制SDRAM执行
(18)下列可以在FPGA中稳定运行的是()
A.在设计中同时存在大量同步和异步设计
B.状态机编码采用二进制码和独热码混合形式
C.使用很多已经验证好的IP核,但没有做整体的仿真
D.有的模块采用时钟上升沿,有的模块采用时钟下降沿
(19)下列哪项不是PLL锁相环的功能:()
A. PLL可以优化时钟,故有效降低FPGA芯片的功耗。
B. PLL核是集成在FPGA内的硬IP核,故无论使用与否PLL都存在在FPGA中。
C. 使用PLL可以有效减少时钟偏斜的现象
D. PLL可以调整时钟的频率,占空比,相位等
(20)下列关于存储器的说法错误的是:()
A. Nor flash的的特点是写入数据慢读出数据快。
多用于存储指令。
B. 所有的Flash存储器都存在“位交换”,故必须使用EDC/ECC算法以确保稳定性
C. Sram是静态随机存储器,一般读写速度很快但容量较小。
D. DDR是在SDRAM的基础上提高一倍时钟。
(21)在FPGA设计中不属于软件硬件协同设计的是()
A.C2H(C to Hardware)硬件加速编译器
B.难于用软件实现的部分功能用硬件实现
C.在C程序中使用自定义外设的函数
D.根据顶层设计要求,合理划分软硬件结构
(22)下列关于Verilog HDL模块连接正确的是:()
Module1 Module2( .a (code1 ) , .clk (clk) , .rst (rst ) , .b ( k1 ) )
A. a是顶层模块,code1是底层模块。
B. b是顶层模块,k1是底层模块。
C. Module1是底层模块,Module2是顶层模块。
D. Module2的端口可以用reg类型定义
(23)下列不属于软核处理器的是:()
A.Leon3 B. OpenRisc1200
C. Microblaze
D. MIPS
(24)关于SystemC和SystemVerilog的说法正确的是()
A.SystemC适合顶层建模,SystemVerilog适合验证
B.SystemVerilog适合顶层建模,SystemC适合验证
C.SystemVerilog是Verilog的升级版本
D.SystemC可以直接转换为RTL代码
(25)μCOS-II操作系统属于:()
A. 顺序执行系统
B. 占先式实时操作系统
C. 非占先式实时操作系统
D. 分时操作系统
(26)uC/OS-II的任务调度策略是()
A.哪个任务的优先级高就先执行哪个任务
B.高优先级的任务会被低优先级的任务抢占
C.各自轮流执行一段时间再让出CPU
D.如果某个任务一直得不到CPU资源,就会进入等待状态
(27)在uC/OS-II系统中不属于信号量用途的是()
A.共享资源的控制 B.用来表示一个事件的发生
C.实现两个任务之间信息的传递 D.实现两个任务的同步
(28)下列关于uClinux的说法正确的是()
A.uClinux是在linux的基础上裁剪了内核和应用程序库。
B.uClinux可以使用linux的一部分命令
C.uClinux由于没有MMU,故仅能运行在没有MMU的处理器上
D.uClinux是硬实时的嵌入式操作系统
(29)下列关于uClinux的说法正确的是: ()
A. uClinux是在linux的基础上裁剪了内核和应用程序库。
B. uClinux可以使用linux的一部分命令
C. uClinux由于没有MMU,故仅能运行在没有MMU的处理器上
D. uClinux是硬实时的嵌入式操作系统。
(30)下列对I2C总线说法正确的是:()
A. SCL线为高电平时,SDA线又低电平向高电平跳变表示数据传输的开始。
B. SCL线为低电平时,SDA线又低电平向高电平跳变表示数据传输的结束。
C. SDA线是双向的,而SCL线是单向的。
D. 在标准传输模式下,I2C总线的速度是400Kb/s
4、判断题(在题后括号内填入:√/ ×)
(1)NiosII处理器是可以配置成16位或32位的处理器。
()
(2)Avalon接口是一个同步协议的接口,所以Avalon总线不能与异步设备连接。
()(3)在SOPC设计中,SDRAM控制器核与SDRAM芯片之间需要PLL调整时钟相位。
()
(4)ANSI C数据类型不能明确地定义数据的宽度。
()
(5)在SOPC Builder中Auto-Assign IRQs能做出最好的IRQ分配。
()
(6)在设计时可以将NiosII程序和FPGA配置数据同时存放在同一个Flash中,这就需要一个配置控制器来驱动Flash输出配置数据以完成FPGA的配置。
()
(7)在SOPC Builder中定义CPU的复位地址在Flash,而在NiosII IDE中程序被连接到Flash之外的存储器,那么elf2flash实用程序将在用户程序前插入一个Boot-copier。
()
(8)NiosII的定时器计数模式有两种,一种是单次减1,另外一种是连续减1。
()(9)通常处理器的异常地址都是固定的,但是NiosII处理器的异常地址是可以配置的。
()
(10)NiosII IDE不能使用asm/C/C++混合编程。
()
(11)NiosII系统结构中有32个32位的通用寄存器,8个32位控制寄存器。
()(12)Avalon接口是一个同步协议的接口。
()
(13)在较高频率下SDRAM控制器核与SDRAM芯片之间需要PLL调整时钟相位。
()(14)NiosII的定时器控制器的特性之一是具有增1、减1两种计数模式。
()
(15)在QuartusII编译之前,对FPGA未使用的引脚一般要设置成As input tri-stated。
()(16)Flash的数据总线是三态的,NiosII CPU与Flash相连接时需要Avalon三态总线桥。
()
(17)在SOPC Builder中定义CPU的复位地址在Flash,而在NiosII IDE中用户程序被连接Flash之外的地址,那么elf2flash实用程序将在用户程序前插入一个Boot-copier。
()
(18)对于SDRAM控制器的数据引脚,可以与OUTPUT属性的引脚相连,也可以与BIDIR 属性的引脚相连。
()
(19)SOPC Builder提供了一个组件编辑器,一个典型的组件主要有三部分组成:硬件文件、软件文件和组件描述文件三部分组成。
()
(20)system.h头文件对SOPC硬件进行了软件的描述。
()
(21)组合逻辑的输出不受输入信号的变化而变化。
()
(22)ASIC比FPGA的设计流程长,但却有批量的价格优势。
()
(23)在verilog语言电路设计中,若某信号定义为reg变量,哪么它一定是一个触发器的输出信号。
()
(24)在仿真电路中,_`timescale 1us/1ns 伪指令定义了仿真电路的时间单位是1us 。
()
(25)在verilog语言电路设计中,always语句块不可以描述组合电路,因为always语句块中的输出信号必须定义为reg变量。
()
(26)在verilog电路设计中,如果一个reg类型变量,在多个always语句块中被赋值,如果仿真时没有发现设计有问题,那么逻辑综合也就不会出问题。
()
(27)在Verilog电路设计中要避免使用循环语句,因为这些语句是不可逻辑综合的。
()(28)在数字电路设计中,不要用多级逻辑产生的时钟,这样的时钟容易有毛刺,导致存储元件不能正确锁存数据。
()
5、问答题/论述题
(1)EDA技术的含义和内容是什么?
(2)比较电子系统传统设计方法和采用EDA技术设计方法的区别。
(3)EDA技术有哪些突出的优点?
(4)你认为EDA技术的核心是什么?请详细说明理由。
(5)一个电子系统可由单片机技术实现,也可由EDA技术实现,请比较两种方案各自的特点。
(6)Altera器件有哪些类型?各自特点是什么?
(7)Cyclone II系列的FPGA器件的主要组成部分是什么?FPGA芯片中的LE、LUT 代表什么含义,其作用是什么?
(8)ISP有什么意义?
(9)CPLD和FPGA有什么差异?在实际应用中各有什么特点?
(10)可编程器件是如何分类的?
(11)Altera新型系列可编程器件的内部结构有哪些变化?
(12)如何评价器件内部的大容量存储器和DSP块?
(13)有哪些器件系列支持NiosⅡ嵌入式处理器?
(14)QuartusⅡ软件有哪些主要的设计特性?
(15)QuartusⅡ软件有几种设计流程,各流程之间的关系如何?
(16)QuartusⅡ软件有几种设计输入方法?如何生成自己的功能模块?
(17)在全编译过程中,各功能模块有哪些设置特点?如何从编译报告中查看设计性能?
(18)功能仿真与时序仿真有什么区别?如何正确查看这两种仿真结果的波形?(19)在QuartusⅡ软件中如何进行设计的引脚分配?
(20)如何选择编程硬件?如何改变器件的编程模式?
(21)结合第2章内容考虑,QuartusⅡ软件是如何实现与第三方EDA工具接口的?(22)当在ModelSim软件中进行设计仿真时,为什么不能直接在Windows资源管理器中建立设计仿真库,而必须在ModelSim中使用菜单操作或使用vlib、vmap 命令完成?
(23)如何在ModelSim软件中设置Altera仿真库?
(24)在QuartusⅡ软件中如何设置后台调用第三方综合、仿真工具?
(25)比较说明NiosⅡ相对第一代Nios有哪些特点和优势?
(26)简述NiosⅡ嵌入式系统的开发流程。
(27)什么是SOPC技术?它的基本特征有哪些?
(28)SOPC Builder 有哪些功能特点?
(29)查看所安装的SOPC Builder 中的模块池,都有哪些可供用户调用的模块?
(30)什么是LogicLock技术,在设计中为什么要使用LogicLock技术?
(31)LogicLock区域有几种类型,各有什么特点?
(32)如何导出LogicLock区域约束?为什么要反向标注LogicLock区域?
(33)在反向标注LogicLock区域布线信息时应注意什么?
(34)为什么要使用SignalTapⅡ嵌入式逻辑分析仪?
(35)结合实际逻辑分析仪功能,说明SignalTapⅡ嵌入式逻辑分析仪的设置过程。
(36)简述FPGA稳定性设计原则。
(37)请以自己的语言描述什么是SOPC?一般SOPC系统应具有哪些基本组件?
(38)请描述一下你对IP核的理解以及其类型,并简要给出各类型的定义和特点。
(39)请简要写出SOPC的设计流程,同时以数字钟为例,画出设计流程图。
(40)请简要描述用户自定义IP核的设计步骤。
(41)SOPC构建系统,当添加某一外设时,此时外设相当于从设备,描述一些常用从设备与主机之间的接口信号类型及其宽度和方向。
(42)简述SOPC开发流程和对SOPC的理解?
(43)简述IP核复用的好处。
(44)硬核和软核的区别。
(45)Moore和Mealy状态机的异同?
(46)如何理解可编程逻辑设计的面积和速度平衡与互换原则?
(47)什么是同步设计,什么是异步设计?FPGA设计中为什么遵循同步设计原则?
(48)Verilog HDL设计中阻塞赋值和非阻塞赋值有什么区别?举例说明。
(49)简述FPGA设计中毛刺产生的条件及消除毛刺的简单方法。
6、综合设计题
(1)在Verilog HDL中如何定义inout型的接口?
(2)系统的时钟输入是50MHz,请用Verilog 设计一个分频器得到10Hz的时钟输出。
(3)说明扫描矩阵键盘的工作原理,用Verilog编写去除按键抖动的代码?
(提示:认为只有一次按下是键盘抖动,三次按下才是有按键输入)
(4)用Verilog编写8bit并行输入1bit串行输出的接口转换模块。
(提示:注意输入和输出的时钟)
(5)用Verilog编写简单的I2C总线控制器,用来向从设备中的某个寄存器写入一个确定的值。
(提示:假设I2C总线从设备的地址为0x90,向0xAA寄存器写入0x55)(6)下图所示为电子钟原理框图,按照下面的步骤完成各部分功能的逻辑设计。
•使用原理图输入方法完成模60和模12计数器设计。
•使用硬件描述语言(如AHDL)完成分频器、七段译码器的设计。
•使用功能仿真单独仿真验证各模块的功能。
•产生顶层模块,完成电子钟的顶层设计。
•选择目标器件,编译顶层设计,在编译报告中查看时序分析结果和器件资源使用情况。
•在分配编辑器中完成引脚分配。
(7)根据下图的原理框图和时序波形设计一个简易自动频率测试系统。
7、综合试验题(以Nios Cyclone 开发板为平台建立相应系统,完成以下试验)(1)模拟对十字路口交通灯的控制。
目的:了解在NiosⅡ环境下编程的基本方法并实现对外围器件数码管和LED的编程控制。
要求:在NiosⅡIDE环境下编程模拟对十字路口交通灯的控制。
要求依次点亮红
灯(LED1)30秒,黄灯(LED2)10秒,绿灯(LED3)60秒,并在七段数码管上显示秒数倒计时。
注意:数码管显示字型代码为:
0x81, 0xCF, 0x92, 0x86, 0xCC, 0xA4, 0xA0, 0x8F, 0x80, 0x84 /* 0-9 */
0x88, 0xE0, 0xF2, 0xC2, 0xB0, 0xB8 /* a-f */
(2)实现LCD的字符滚动显示。
目的:了解在NiosⅡ环境下编程的基本方法,实现对外围器件LCD的编程控制。
要求:在NiosⅡIDE环境下编程实现LCD显示滚动的字符效果。
(3)编程实现串口通信。
目的:了解在NiosⅡ环境下编程的基本方法,实现对串口的编程控制。
要求:在NiosⅡIDE环境下编程实现串口的收发通信。
Nios通过串口向主机发送字符串,主机接受并显示出来;主机通过串口向Nios发送字符串,Nios接受字符串并在LCD上显示。