1、简述 FPGA 的开发流程需求分析与模块设计:明确功能,划分硬件模块,确定接口信号。编写 RTL 代码:使用 Verilog HDL/VHDL 描述硬件逻辑。功能仿真(前仿真):编写 testbench,验证逻辑功能是否正确,不考虑布线延迟。综合 (Synthesis):将 RTL 代码翻译成 FPGA 内部的门级网表。布局布线(Implementation):把网表映射到 FPGA 芯片真实资源,完成器件分配与走线。时序仿真(后仿真):加入布线带来的真实延迟,检查时序是否满足要求。生成比特流文件:编译输出 bit 配置文件。下载到 FPGA 开发板:将比特流烧写,硬件板级验证。2、一个模块包含哪两部分?
模块分为模块定义(模块端口声明)和模块内部逻辑描述两部分。
简单记:端口列表 + 内部逻辑。3、timescale 1ns/100ps 中的 1ns 代表(C)语法:timescale 时间单位 / 时间精度1ns:时间单位,代码中 #延时数值的基准单位100ps:时间精度,仿真器最小分辨时间 A 错,精度是 100ps;B 错;D 错。选 C4、点亮开发板上 4 个 LED,Verilog 完整代码假设:LED 低电平点亮,4 位输出 led [3:0],开发板系统时钟可不使用,直接常亮。
module led4(
output reg [3:0] led //4路LED输出
);
//上电常亮4个LED,低电平点亮则赋值0000;高电平点亮则赋值1111
initial
begin
led = 4'b0000;
end
endmodule
`timescale 1ns/100ps
module tb_led4;
wire [3:0] led;
led4 u_led4(
.led(led)
);
endmodule【我的做法】新建 Verilog 工程,创建 led4.v 源文件,编写上述模块代码。添加约束文件,绑定 4 个 LED 端口到 FPGA 芯片引脚。运行综合、布局布线,生成 bit 文件。连接开发板,下载比特流到 FPGA。

评论 0