FPGA题及答案_第1页
FPGA题及答案_第2页
免费预览已结束,剩余8页可下载查看

下载本文档

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

文档简介

1、 精品文档 1欢迎下载 Hr Ahl TEXHFtULCKJICAL UHr E2IFY 一、填空题 1、 本课程的讲授目标:了解一种新技术 EDA 掌握一种设计工具(器件:Altera_FPGA 软件:Quartus_ II ); 掌握一种语言 Verilog_HDL_。 2、 使用 Quartus II 进行逻辑设计,常用的设计思想的输入方式有:原理图、_ HDL 等。 3、 高级语言 C 程序经过软件程序编译器形成 cpu指令/数据代码流;Verilog HDL 程序经过综合器形成 电路网表文件 4、 CPLD 是在 PAL,GAL 等类型器件的基础上发展起来的与或阵列型_ PLD 器件

2、,大多数 FPGA 采用了查找 表结构,其物理结构是静态存储器 SRAM. 5、 JTAG 边界扫描技术用于对高密度、引脚密集的器件和系统进行测试,如: CPU DSP ARM PLD 等。 同时,JTAG 接口也被赋予了更多的功能:编程下载、在线逻辑分析。 6、 使用 Verilog HDL 进行逻辑设计,变量的值有 4 种状态:0、1、x、z; 7、 定义逻辑功能的几种基本方法: 用 assign_持续赋值语句定义、_用 always_过程块定义、调用元件(元_ 件例化)。 8、 整数按如下方式书写: +/- 即+/-size 为对应二进 制数的宽度;base 为进制;value 是基于进

3、制的数字序列。进制有如下 4 种表示形式: 二进制(b 或 B)、十进制(d 或 D 或缺省)、十六进制(h或 H)、八进制(o 或 O) 9、 定义 reg 型标量型变量:reg_qout ; / 变量名 qout 10、 定义 wire 型向量:wire7:0_databus _ ; /databus 的宽度是 8 位 11、 在状态机设计中使用一位热码定义 5 种状态,并定义状态变量: parameter_s0=5_00001, s 仁 5 _00010, s2=5b_00100, s3=5 _01000, s4=5b_10000 ; reg 4:0 state,next_state;

4、_ 12、 在状态机设计中使用顺序码定义 5 种状态,并定义状态变量: parameter s0=3 000, s1=3001 , s2=3010 , s3=3b 011 , s4=3b 100 ; reg 2:0 state,next state; 一、 选择题(多选) 1、 成为 IEEE 标准的 HDL 有(CD ) A、ABEL-HDL B、AHDL C、VHDL_D、Verilog_HDL_ 2、 Quartus II 是 (A )公司的( D )开发工具。 A Altera_B、Xilinx C Lattice D 集成_E、专用 F、第三方 3、 ModelSim 是 Mento

5、r 公司的出色的(C )软件,它属于编译型( C )器,速度快,功能强。 A、综合 B 编译 C 仿真、 D 布局布线 E、编程配置 4、 使用 Altera 公司的 Quartus II 和 FPGA 器件能够进行( BEF )设计。 A、模拟电路设计 B 数字电路设计 C PCB 设计 精品文档 2欢迎下载 D 高速电路设计 E、 DSP 设计 F、 SOPC 设计 5、 使用 Verilog HDL 进行逻辑设计,端口类型有( ABC ) 精品文档 3欢迎下载 三、编程题 6、用 for 语句描述七人投票表决器 module voter7(pass,vote); output pass;

6、 in put6:0 vote; reg2:0 sum;i nteger i;reg pass; always (vote) beg in sum=0; for(i=0;i=6;i=i+1) /for 语句 if(votei) sum=sum+1; if(sum2) pass=1; /超过 4 人赞成,则通过 else pass=0; End en dmodule 8、4 选 1 数据选择器 W 歩 H 戋、曳 XPAM TECHFtaL-CXjICAL UHrVEHSITY A input B_、outputC、inout_D_、buffer 6、 使用 Verilog HDL 进行逻辑设计

7、,可综合的变量类型有( ABF A reg B wire_ C buffer D string E、 double F、 integer 7、 a=5b11001; b=5b10101; 下面那个是正确的 (ABCD A a=5 00110;_ B _a&b=5b10001;_ C a|b=5b11101;_ 8、 下面那些语句可以被综合成电路 (BCDE A、initial B _、always_C_、assign_D_、define_E _ 、for_ 1、VHDL 和 Verilog HDL 是一种 HDL 的两种名称 二、判断题 - 2Verilog HDL 是 IEEE 标准

8、 3、 相同的电路逻辑即可使用原理图方法输入也可使用 HDL 语言输入 4、 Verilog HDL 语言编写的程序都是可以被综合的,都能形成网表电路。 )F、while 5、Verilog HDL 语言即可用来做可综合的功能模块设计,又可以编写仿真文件实现对模块的测试。 ( V ) 6、“? ”是高阻 Z 的另一种表述符号。 7COUN与 count 是相同的标识符名称。 8、Verilog 语言内部已经使用的词称为关键字或保留字, 关键字都是大写的。 能实现相同的功能 (V) A 3 a,b ; B、 a,b , a,b , a,b 10i ni tial 语句可以被综合器综合成电路。 这

9、些保留字用户不能作为变量或节点名字使用。 (x ) 9 、下面 3 中连接符的使用 ;C、 a , b , a , b , a , b (x) 精品文档 4欢迎下载 module mux4_1(out, in 0,i n1,i n2,i n3,sel); output out; in put in 0,i n1,i n2,i n3; XrAM TEXHNaL-DaiCAL UHIVERSirY in put1:0 sei; reg out; always (i nO or ini or in2 or in3 or sei) / 敏感信号列表 case(sel) 2b00: out= in0;

10、2b01: out=i n1; 2b10: out= in2; 2b11: out= in3; default: out=x; endcase en dmodule 13、带同步清 0/同步置 1 (低电平有效)的 D 触发器 module dff_s yn(q,qn, d,clk,set,reset); in put d,clk,set,reset; output reg q,qn; always (posedge clk) begin if(reset) begi n q=1b0 ;qn=1b1;e nd /同步清 0,低电平有效 else if(set) begi n q=1b1; qn

11、=1b0;e nd /同步置 1,低电平有效 else begi n q=d; qn=d; end end en dmodule 14、带异步清 0/异步置 1 (低电平有效)的 D 触发器 module dff_as yn(q,qn, d,clk,set,reset); in put d,clk,set,reset; output reg q,qn; always (posedge clk or n egedge set or n egedge reset) begin if(reset) begi n q=1b0 ;qn=1b1; end /异步清 0,低电平有效 else if(set)

12、 begi n q=1b1; qn=1b0; end /异步置 1,低电平有效 else begi n q=d; qn=d; end end en dmodule 18、分频器设计(偶数等占空比分频; 1: 15 占空比分频) A、 module div6(clk,rst,clk6); in put rst,clk; output clk6; reg clk6; reg 1:0 cnt; 精品文档 5欢迎下载 always(posedge clk or posedge rst) begin XFAM T C:HNQL-CX2ICAL !UHrVENSir if(rst=1 1) cnt=2 0

13、0; else if(cn t=2)begi n cnt=2 00; clk6=clk6; end else cn t=c nt+1; end en dmodule module div1_15(clk,rst, clk16); in put rst,clk; output clk16; reg clk16; reg 3:0 cnt; always(posedge clk or posedge rst) begin if(rst=1 1) cnt=4 0000; else cn t=c nt+1; end always(posedge clk or posedge rst) begin if(

14、rst=1 1) clk16=1 0; else if(clk16=15) clk16=1 1; else clk16=1 0; end en dmodule 19、画出状态转移图,并采用有限状态机设计一个彩灯控制器,要求控制 8 个 LED 灯实现如下的演示 花型: 从两边往中间逐个亮;全灭;从中间往两头逐个亮;全灭;循环执行上述过程 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_Arith.ALL; USE IEEE.STD_LOGIC_ Un sig ned.ALL; ENTITY sfwy IS PORT(c

15、lk:IN STD_LOGIC; led: OUT STD_LOGIC_VECTOR(7 DOWNTO 0); en d; ARCHITECTURE one OF sfwy IS sig nal led_r: stdo gic_vector(8 DOWNTO 0); 精品文档 6欢迎下载 sig nal tmp:std_logic_vector(25 dow nto 0); 精品文档 7欢迎下载 sig nal q:std_logic; begin process(clk) begin if clk eve nt and clk=1the n tmp=tmp+1; end if; end pr

16、ocess; q=tmp(25); led=led_r(7 DOWNTO 0); process(q) begin if qeve nt and q=1the n led_r=led_r(7 DOWNTO 0) & O; if led_r=000000000 THEN- 循环完毕吗? led_r=111111111;- 是,则重新赋初值 end if; end if; end process; end one; 20、画出状态转移图,并采用有限状态机设计一个 输入 x: 000 101 010 010 011 101 001 110 101 输出 z: 000 000 000 010

17、010 000 001 000 000 初始状态设为 s0,此时检测数据序列为“ 0000”,当再检测到一个 0 时,仍为 s0,当检测到 1 时,进 入下一个状态 s1,此时序列为“ 0001 ”;当在状态 s1 检测到 0 时,进入到状态 s2,此时序列为“ 0010”, 当检测到 1 时,仍为 S1;当在状态 s2 检测到 0 时,进入到状态 S3,此时序列为“ 0100”,当检测到 1 时,进入 S1;当在状态 s3 检测到 0 时,进入 s0,当检测到 1 时,进入状态 S4,此时序列为“ 1001 ”, 结果输出为 1 ;当在 s4 检测到 0 时,进入状态 s2,当检测到 1 时

18、,进入状态 s1 实验代码: module sjjcq10_3(x,z,clk,reset,state); in put x,clk,reset; output z; output2:0state; reg2:0state; reg 乙 parameter S0=d0,s1=d1,s2=d2,s3=d3,s4=d4; always(posedge clk) begin 歩工戋、节 XrAN TECHraLCaiCAL UWrVERSITY 1001”串行数据检测器。其输入、输出如下所示: 精品文档 8欢迎下载 XrAM TECHHCIL-CXJICAL RJHIVEH5ITY if(reset

19、)begi n state=sO;z=O;e nd else casex(state) s0: begi n if(x=0) begi n state=s0;z=0;e nd else begi n state=s1;z=0;e nd end s1: begi n if(x=0) begi n state=s2;z=0;e nd else begi n state=s1;z=0;e nd end s2:begi n if(x=0) begi n state=s3;z=0;e nd else begi n state=s1;z=0;e nd end s3:begi n if(x=0) begi

20、n state=s0;z=0;e nd else begi n state=s4;z=1;e nd end s4:begi n if(x=0) begi n state=s2;z=0;e nd else begi n state=s1;z=0;e nd end default: state=s0; endcase end en dmodule 三、简答题 1、 什么是 IP 复用技术,IP 核对 EDA 技术的应用和发展有什么意义? 答案:IP 复用是指对系统中的某些模块直接使用自己的 IP 来实现,不用设计所有模块; IP 核具有规范的接口协议,良好的可移植性与可测试性,为系统开发提供了可靠

21、的保证 2、 基于 FPGA/CPLD 勺数字系统设计流程包括哪些步骤? 答案:设计输入。综合。布局布线。仿真和编程下载 3、 功能仿真与时序仿真有什么区别? 答案:不考虑信号时延等因素的仿真称为功能仿真;时序仿真又称为后仿真,是在选择具体器件并 完成布局布线后进行的包含延时的仿真。 4、 wire 型和 reg 型变量有什么本质区别? | 答案:Wire 是常用的 net 型数据变量,net 型数据数据相当于硬件电路中的各种物理连接; reg 型变 量属于 variable 型变量,必须放在过程语句中,通过过程赋值语句赋值。 5、 说说 JTAG 接口都有哪些功能。 答案:JTAG 边界扫描

22、技术用于对高密度、引脚密集的器件和系统进行测试,如: CPU DSR ARM PLD 等。同时,JTAG 接口也被赋予了更多的功能:编程下载、在线逻辑分析。 6、 CPLC 和 FPGA 在结构上有什么明显的区别,各有何特点? 答案:CPLD 是宏单元结构,是一种可编程逻辑器件,它可以在制造完成后由用户根据自己的需要定义 XriUi TECHNaLCaiCAL RJHrVEnSITY 其逻辑功能。 FPGA 是查找表结构,解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。 CPLD 更适合完成各种算法和组合逻辑 ,FPGA 更适合于完成时序逻辑。 7、阻塞赋值和非阻塞赋值的区别? 答案:阻塞赋值是在该语句结束是立即完成赋值操作;非阻塞赋值是在整个过程块结束是才完成赋

温馨提示

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

评论

0/150

提交评论