FPGA编程入门

该文介绍了如何使用QuartusII软件通过输入原理图和Verilog编程两种方法实现1位全加器。首先,详细讲解了半加器和全加器的原理图设计及仿真过程,接着展示了Verilog代码实现全加器,并进行编译和仿真。最后,文章描述了如何在IntelDE2-115开发板上进行硬件验证,通过配置引脚和观察LED反应来确认设计功能的正确性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实验1


前言

Quartus II、windows

一、输入原理图实现1位加法器

创建工程,选择File->New Project Wizard,芯片型号是EP4CE115F29C7。
在这里插入图片描述

1、半加器原理图

File->New,进入后选择Block Diagram/Schematic File
在这里插入图片描述
点出symbol窗口,如下建图。
在这里插入图片描述
保存并编译。
通过tool->Netlist Viewers->RTL Viewer,查看电路图
在这里插入图片描述
仿真
File→New->VWF,然后双击左侧空白区。
在这里插入图片描述

在这里插入图片描述
编译后启动仿真
在这里插入图片描述

2、全加器原理图

利用半加器元件实现全加器
打开半加器原理图文件f的情况下,选择菜中File中的 Create/Update→CreateSymbolFilesforCurrentFile项调用半加器。
其余步骤和创建半加器原理图一样。

注意,编译前需将全加器.bdf设为顶层文件,否则将显示上一文件的电路图。
如图:

在这里插入图片描述

在这里插入图片描述
保存并编译,查看电路图。
在这里插入图片描述
仿真
在这里插入图片描述
在这里插入图片描述

二、Verilog编程实现

新建一个工程,然后创建verilog文件
在这里插入图片描述
代码如下:

module full_adder(
	//输入信号,ain表示被加数,bin表示加数,cin表示低位向高位的进位
	input ain,bin,cin,
	//输出信号,cout表示向高位的进位,sum表示本位的相加和
	output reg cout,sum

);
reg s1,s2,s3;
always @(ain or bin or cin) begin
	sum=(ain^bin)^cin;//本位和输出表达式
	s1=ain&cin;
	s2=bin&cin;
	s3=ain&bin;
	cout=(s1|s2)|s3;//高位进位输出表达式
end
endmodule

保存并编译后,查看电路图。
在这里插入图片描述
仿真
在这里插入图片描述
和上文的全加器原理图输入方式的仿真结果一致。

三、插板子验证

芯片引脚配置表
在这里插入图片描述
配置引脚
从菜单中选择“assignments→pin planner”,
使用3个SW作为输入信号,2个LED作为输出信号
在这里插入图片描述
编译后原理图上标有引脚
在这里插入图片描述
然后就可以下载到硬件上进行测试了
把开发板接上电源,USB 接口接电脑。打开电源开关,点击programmer。在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

验证
拨动开关0、1、2,观察LED亮灭情况。
发现同时打开三个开关时,LED0和LED1同时亮起,其余情况只亮一个灯或不亮。
在这里插入图片描述
在这里插入图片描述


总结

本次实验让我学会了基于quartus和Intel DE2-115开发板,采用原理图输入和verilog编程两种方式实现一位全加器的设计,入门FPGA。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值