MOOC FPGA技术应用(北京信息职业技术学院)1463568163 最新慕课完整章节测试答案
1. 认识可编程逻辑器件
文章目录
小测验
1、单选题:
下列哪个流程是基于EDA软件的FPGA / CPLD一般设计流程( )。
选项:
A: 设计输入->逻辑设计->逻辑综合->功能仿真->布局布线->时序仿真->编程下载
B: 逻辑设计->设计输入->逻辑综合->功能仿真->布局布线->时序仿真->编程下载
C: 逻辑设计->设计输入->逻辑综合->时序仿真->布局布线->功能仿真->编程下载
D: 逻辑设计->设计输入->逻辑综合->布局布线->功能仿真->时序仿真->编程下载
答案: 【 逻辑设计->设计输入->逻辑综合->功能仿真->布局布线->时序仿真->编程下载】
2、单选题:
器件编程指()。
选项:
A: 以原理图或HDL方式描述设计电路。
B: 对设计文件逻辑化简优化,用目标芯片中的逻辑单元来实现设计逻辑。
C: 对设计电路的逻辑功能进行验证。
D: 把生成的编程文件装入可编程逻辑器件中。
答案: 【 把生成的编程文件装入可编程逻辑器件中。】
3、判断题:
电子系统设计方法特指自底向上的设计方法。
选项:
A: 正确
B: 错误
答案: 【 错误】
第1周单元测验
1、单选题:
主流FPGA都采用了基于( )工艺的( )结构。
选项:
A: SRAM,查找表
B: 熔丝,与或阵列
C: flash,查找表
D: 反熔丝,与或阵列
答案: 【 SRAM,查找表】
2、单选题:
FPGA的基本组成包括可配置的( )、可编程的I/O块、可编程布线资源等。
选项:
A: 与或阵列
B: 逻辑块
C: RAM
D: 存储块
答案: 【 逻辑块】
3、单选题:
下列关于可编程逻辑器件说法正确的是( )。
选项:
A: 电路设计人员开发FPGA所使用的语言只能是VHDL。
B: CPLD和FPGA实现逻辑函数的原理是相同的。
C: 一片FPGA包含上千个可编程逻辑资源,但是要实现多片通用型逻辑器件可以实现的功能还是困难的。
D: 可编程逻辑器件从集成密度上可分为低密度和高密度两大类。
答案: 【 可编程逻辑器件从集成密度上可分为低密度和高密度两大类。】
4、单选题:
EDA的中文含义是( )。
选项:
A: 计算机辅助计算
B: 计算机辅助制造
C: 计算机辅助教学
D: 电子设计自动化
答案: 【 电子设计自动化】
5、单选题:
对设计电路的逻辑功能进行验证被称为( )。
选项:
A: 功能仿真
B: 时序仿真
C: 编程验证
D: 逻辑综合
答案: 【 功能仿真】
6、多选题:
下列关于查找表LUT的说法正确的是( )。
选项:
A: LUT本质就是一个RAM,保存了逻辑电路的所有可能结果。
B: 一个4输入的查找表包含8个存储单元。
C: 查找表是FPGA实现逻辑函数的基本逻辑单元,由若干个存储单元和数据选择器构成。
D: FPGA的基本逻辑块内包含LUT、数据选择器和触发器,只能实现组合逻辑的功能。
答案: 【 LUT本质就是一个RAM,保存了逻辑电路的所有可能结果。;
查找表是FPGA实现逻辑函数的基本逻辑单元,由若干个存储单元和数据选择器构成。】
7、多选题:
下列哪些器件属于非易失性器件( )。
选项:
A: FPGA
B: PROM
C: CPLD
D: flash
答案: 【 PROM;
CPLD;
flash】
8、判断题:
包含延时信息的仿真称为时序仿真。
选项:
A: 正确
B: 错误
答案: 【 正确】
9、判断题:
现场可编程逻辑阵列FPGA技术由阿尔特拉Altera公司首创。
选项:
A: 正确
B: 错误
答案: 【 错误】
2.FPGA开发平台的使用
小测验
1、单选题:
常见的基本逻辑门在Quartus II 自带的( )库中。
选项:
A: megafunctions
B: others
C: primitives
D: project
答案: 【 primitives】
2、判断题:
在全加器设计中调用了半加器设计,全加器是顶层实体,半加器是底层实体。
选项:
A: 正确
B: 错误
答案: 【 正确】
第2周单元测验
1、单选题:
Quartus II是( )公司的用于开发可编程逻辑器件的软件 。
选项:
A: XILINX
B: Intel altera
C: LATTICE
D: ATMEL
答案: 【 Intel altera】
2、单选题:
Quartus II中原理图的文件类型是( )。
选项:
A: doc
B: pcb
C: bmp
D: bdf
答案: 【 bdf】
3、单选题:
Quartus II软件把逻辑综合、布局布线等软件集成在一起,称为( )工具。
选项:
A: 编辑
B: 综合
C: 编译
D: 编程
答案: 【 编译】
4、单选题:
在线调试状态下,选择将配置数据装入FPGA中的下载方式应为( )。
选项:
A: AS
B: PS
C: AS 或 JTAG
D: JTAG
答案: 【 JTAG】
5、单选题:
当程序调试完成后,选择( )下载方式将程序配置到FPGA芯片中。
选项:
A: AS
B: PS
C: JTAG
D: AS 或 JTAG
答案: 【 AS 或 JTAG】
6、多选题:
下面对Quartus II工程命名正确的是( )。
选项:
A: nand_2
B: 2nand
C: nand_2_lx
D: nand_test
答案: 【 nand_2;
nand_2_lx;
nand_test】
7、多选题:
下面( )文件不是应用Quartus II自带仿真工具进行仿真需要创建的仿真激励文件。
选项:
A: Block diagram / Schematic File
B: University Program VWF
C: Verilog HDL File
D: VHDL File
答案: 【 Block diagram / Schematic File;
Verilog HDL File;
VHDL File】
8、判断题:
时序仿真与功能仿真相比,其结果更接近实际电路行为。
选项:
A: 正确
B: 错误
答案: 【 正确】
9、判断题:
fitter指用目标芯片中的逻辑元件实现综合后的逻辑表达式。
选项:
A: 正确
B: 错误
答案: 【 错误】
3.Verilog HDL语言基础-1
小测验
1、多选题:
Adder_dataflow U0_FA(S[0],C0,A[0],B[0],C_1);对这句话理解正确的是( )。
选项:
A: 这是一个模块实例引用语句。
B: 被引用的子模块名为Adder_dataflow。
C: 子模块在父模块中的引用名为U0_FA。
D: 子模块和父模块之间的端口信号的关联方式是位置关联。
答案: 【 这是一个模块实例引用语句。;
被引用的子模块名为Adder_dataflow。;
子模块在父模块中的引用名为U0_FA。;
子模块和父模块之间的端口信号的关联方式是位置关联。】
2、判断题:
当一个模块被其它模块实例引用时,就形成了层次化结构。被引用的模块是父模块。
选项:
A: 正确
B: 错误
答案: 【 错误】
3、判断题:
模块只能以实例引用的方式嵌套在其它设计模块中。
选项:
A: 正确
B: 错误
答案: 【 正确】
第3周单元测验
1、单选题:
定义一个4位的输出端口sum,以下( )表述是正确的。
选项:
A: output [3:0] sum;
B: output [4:0] sum;
C: output sum[3:0];
D: output sum[4:0];
答案: 【 output [3:0] sum;】
2、单选题:
Adder_dataflow U0_FA(S[0],C0,A[0],B[0],C_1);对这句话理解正确的是( )。
选项:
A: 这是一个模块实例引用语句。
B: 被引用的子模块名为U0_FA。
C: 子模块在父模块中的引用名为Adder_dataflow。
D: 子模块和父模块之间的端口信号的关联方式是位置关联。
答案: 【 子模块和父模块之间的端口信号的关联方式是位置关联。】
3、单选题:
一个常数是4位二进制数1101,在Verilog语言中表示为( )。
选项:
A: 4‘b1101
B: 4'14
C: 4‘o17
D: 4’hE
答案: 【 4‘b1101】
4、单选题:
( )是Verilog HDL语言规定的逻辑值,用来表示数字逻辑电路的逻辑状态。
选项:
A: 1、 0
B: 1、 0、 x/X、z/Z
C: 1、0、?、z/Z、x/X
D: 1、0、U、x/X
答案: 【 1、 0、 x/X、z/Z】
5、单选题:
除了endmodule语句外,Veriog HDL语言的语句和数据定义的最后必须有( )符号。
选项:
A: ,
B:
C: :
D: ;
答案: 【 ;】
6、多选题:
Verilog HDL模块的端口包括( )。
选项:
A: 输入端口input
B: 输出端口output
C: 双向端口inout
D: 缓冲端口buffer
答案: 【 输入端口input;
输出端口output;
双向端口inout】
7、多选题:
fulladd fa0( .sum(sum[0]), .cout(c1), .a(a[0]), .b(b[0]), .cin(cin));对这句话理解正确的是( )。
选项:
A: 这是一个元件实例引用语句。
B: 被调用的模块名为fulladd,在父模块中的引用名为fa0。
C: 子模块和父模块的端口连接关系采用了名称关联的方式。
D: sum是父模块的信号名,sum[0]是子模块的端口名,两个信号连接到一起。
答案: 【 这是一个元件实例引用语句。;
被调用的模块名为fulladd,在父模块中的引用名为fa0。;
子模块和父模块的端口连接关系采用了名称关联的方式。】
8、判断题:
Verilog 语言提供预定义的逻辑门原语用户可以直接调用.
选项:
A: 正确
B: 错误
答案: 【 正确】
9、判断题:
reg[3:0] cnt;//这句话表示定义了一个4位的reg型变量cnt,cnt的每一位表示为:cnt[3]、cnt[2]、cnt[1]、cnt[0]。
选项:
A: 正确
B: 错误
答案: 【 正确】
第4周单元测验
1、单选题:
由连续赋值语句assign赋值的变量必须定位为( )数据类型。
选项:
A: wire
B: reg
C: memory
D: integer
答案: 【 wire】
2、单选题:
逻辑非运算符用于对操作数取反,是( )运算符。
选项:
A: 单目运算符
B: 双目运算符
C: 三目运算符
D: 多目运算符
答案: 【 单目运算符】
3、单选题:
”10%3”的结果是( )。
选项:
A: 3
B: 2
C: 1
D: 0
答案: 【 1】
4、单选题:
如果变量A=4’b1101,则A>>2执行的结果是( )。
选项:
A: 4‘b0111
B: 4’b0011
C: 4'b0100
D: 4'b0111
答案: 【 4’b0011】
5、单选题:
编写三人表决器设计,根据少数服从多数原则,以下代码设计合理的是( )。注:1-赞成/通过 0-反对/否决
选项:
A: assign result=d0+d1+d2; assign u=(result>=2)?1’b1:1’b0;
B: assign result=d0+d1+d2; assign u=(result>=2)?1’b0:1’b1;
C: assign u=((d0+d1+d2)>2)?1’b0:1’b1;
D: assign u=((d0+d1+d2)>2)?1’b1:1’b0;
答案: 【 assign result=d0+d1+d2; assign u=(result>=2)?1’b1:1’b0; 】
6、多选题:
下列( )语句是并行执行的。
选项:
A: 连续赋值语句
B: initial块语句
C: always块语句
D: 实例引用语句
答案: 【 连续赋值语句;
initial块语句;
always块语句;
实例引用语句】
7、多选题:
下表为3线-8线译码器真值表,如果用行为级描述方式,应用if语句描述该译码器的功能,下列代码不合理的是( )。
选项:
A: always@(A,G1,G2,G3) begin if (G1==0) Y=8’b1111_1111; else if(G2) Y=8’b1111_1111; else if(G3) Y=8'b1111_1111; else... ...end
B: always@* begin if (G1==0) Y=8’b1111_1111; else if(G2 | G3) Y=8’b1111_1111; else... ...end
C: reg s;always@(A ) begin s<=G2 | G3; if (G1==0) Y=8’b1111_1111; else if(s) Y=8’b1111_1111; else... ...end
D: wire s;always@(*) begin s<=G2 | G3; if (G1==0) Y<=8’b1111_1111; else if(s) Y<=8’b1111_1111; else... ...end
答案: 【 always@(A,G1,G2,G3) begin if (G1==0) Y=8’b1111_1111; else if(G2) Y=8’b1111_1111; else if(G3) Y=8'b1111_1111; else... ...end;
reg s;always@(A ) begin s<=G2 | G3; if (G1==0) Y=8’b1111_1111; else if(s) Y=8’b1111_1111; else... ...end;
wire s;always@(*) begin s<=G2 | G3; if (G1==0) Y<=8’b1111_1111; else if(s) Y<=8’b1111_1111; else... ...end】
8、判断题:
在Verilog语言中,12是用十进制数表示的整数型常量。
选项:
A: 正确
B: 错误
答案: 【 正确】
9、判断题:
表达式有操作数和运算符构成,根据运算符的含义计算出一个结果值。表达式中不包含等号。
选项:
A: 正确
B: 错误
答案: 【 正确】
第5周单元测验
1、单选题:
下表为3线-8线译码器真值表,如果用行为级描述方式,在else分支中,如果采用case语句表述,正确的是( )。
... ...
always@*
begin
if (G1==0) Y=8’b1111_1111;
else if(G2 | G3) Y=8’b1111_1111;
else
... ...
end
... ...
选项:
A: case(A) 3'b000:Y=8'b0111_1111; 3'b010:Y=8'b1011_1111; 3'b011:Y=8'b1101_1111; 3'b100:Y=8'b1110_1111; endcase
B: case(A) 3'b000:Y=8'b0111_1111; 3'b010:Y=8'b1011_1111; 3'b011:Y=8'b1101_1111; 3'b100:Y=8'b1110_1111; 3'b101:Y=8'b1111_0111; 3'b110:Y=8'b1111_1011; 3'b110:Y=8'b1111_1101;&n