使用Quartus建立第一个FPGA工程

时间:2022-04-26 04:44:46

欢迎使用sina微博@颠覆的饕餮进行讨论,一起探讨学习~ ~嘿嘿

www.altera.com.cn 免费申请到Quartus网络版并且安装,这个过程非常简单。

安装好Quartus后,我们开始建立第一个FPGA工程,我们开始建立第一个FPGA工程。

打开后界面是

使用Quartus建立第一个FPGA工程

单击左上角 file->new project wizard 出现下面的界面

使用Quartus建立第一个FPGA工程

当然是next

之后在指定建立工程的路径

使用Quartus建立第一个FPGA工程

注意路径不能有中文!!

之后就是工程名,同样不能使用中文。

使用Quartus建立第一个FPGA工程

软件自动完成顶层设计名~嘿嘿

之后next,出现

使用Quartus建立第一个FPGA工程

要我们加入已有文件,当然我们没有任何文件加入,直接next~

之后就是选择型号了~如图

使用Quartus建立第一个FPGA工程

我是用

使用Quartus建立第一个FPGA工程

使用Quartus建立第一个FPGA工程

然后next,出现

使用Quartus建立第一个FPGA工程

让你选择外部工具,注意都我用的是

使用Quartus建立第一个FPGA工程

同样从 www.altera.com.cn 申请modelsim初学版,免费的~~然后呢我们用的是verilog进行开发所以选verilog HDL

之后出现汇总表,

使用Quartus建立第一个FPGA工程

当然是next。

这样工程就建立ok了~~

开始我们敲我们的代码~首先我们必须建立一个空文本,如图

使用Quartus建立第一个FPGA工程

点击圈圈中的图标,出现

使用Quartus建立第一个FPGA工程

选择

使用Quartus建立第一个FPGA工程

然后输入:

/*******************************************************

module:                        first_test

author:                        TT       

description:        Just the first FPGA project.

*******************************************************/

module first_test (a,b,c);

input a;

input b;

output c;

assign c = a&b;

Endmodule

先对代码进行分析/* */内的是注释,不用管它

module指定模块名字,括号里面的是端口列表,我们有3个端口 a b c

之后指定端口的类型,很明显的 input和output。

再然后是对c进行赋值,这里使用到关键字assign 一般assign表示描述的是组合逻辑。

很明显,我们只是描述了1个与门,c等于a与b。

最后的Endmodule代表模块结束

之后点击:

使用Quartus建立第一个FPGA工程

进行综合布局布线

会弹出是否保存,当然yes,跳出保存文件名称,软件已经自动生成,不要改动~直接ok

一路通过,但是出现12个警告~

使用Quartus建立第一个FPGA工程

3个Parallel compilation is not licensed and has been disabled表示你使用的是多核cpu,并行编译不被许可,这个是网络版的限制,可以不理他

Feature LogicLock is only available with a valid subscription license. You can purchase a software subscription to gain full access to this feature.这个同样是网络版的限制,也不理他

No clocks defined in design.没有使用时钟,这个是由于我们只描述了一个组合逻辑,没有使用时钟,无伤大雅

Found 1 output pins without output pin load capacitance assignment这个是没有指定输出引脚后面的电容,跟以后的门级仿真有关,我们先放过,其实一般也就让它过去了。。。。。

The Reserve All Unused Pins setting has not been specified, and will default to 'As output driving ground'.这个表示你没有指定没用到的管脚状态。。。我们要解决的就是这个。

首先先为我们的与门分配管脚

使用Quartus建立第一个FPGA工程

跳出

使用Quartus建立第一个FPGA工程

我们只要在

使用Quartus建立第一个FPGA工程

上面输入选择的指定管脚就ok了,当然你也可以拖动

使用Quartus建立第一个FPGA工程

上面的管脚到

使用Quartus建立第一个FPGA工程

上面完成分配

我们随意指定为

使用Quartus建立第一个FPGA工程

直接关闭~

然后点击

使用Quartus建立第一个FPGA工程

再点击

使用Quartus建立第一个FPGA工程

选择

使用Quartus建立第一个FPGA工程

然后一路ok~

然后重新进行我们的综合

使用Quartus建立第一个FPGA工程

就是圈圈的位置~~

大功告成~只有10个警告了~都是可以无视的~~

看看报表

使用Quartus建立第一个FPGA工程

只用了一个门,也是我们意料中的~~

看看

使用Quartus建立第一个FPGA工程

如图

使用Quartus建立第一个FPGA工程

也是意料中的~~

然后我们进行仿真

使用Quartus建立第一个FPGA工程

之后在

使用Quartus建立第一个FPGA工程

打开我们生成的test bench

在们工程目录的

使用Quartus建立第一个FPGA工程

中,一般文件名与工程名一样,后缀是vt

使用Quartus建立第一个FPGA工程

我们只要拉到45行,把原来的

initial

begin

// code that executes only once

// insert code here --> begin

// --> end

$display("Running testbench");

end

改为

initial

begin

a=1'b0;

b=1'b0;

#10;

a=1'b1;

b=1'b0;

#10;

a=1'b0;

b=1'b1;

#10;

a=1'b1;

b=1'b1;

#10;

$stop;

end

然后

使用Quartus建立第一个FPGA工程

使用Quartus建立第一个FPGA工程

点击test benches

再接下来的对话框点击New

出现

使用Quartus建立第一个FPGA工程

我们回到

使用Quartus建立第一个FPGA工程

的文本中,到28行

使用Quartus建立第一个FPGA工程

然后回到这里

使用Quartus建立第一个FPGA工程

我们的

使用Quartus建立第一个FPGA工程

就是文件的名字,不需要vt

使用Quartus建立第一个FPGA工程

使用Quartus建立第一个FPGA工程

就是刚刚我们在28行得到的模块名

之后在

使用Quartus建立第一个FPGA工程

加入文件,点击Add

一路ok

然后点击

使用Quartus建立第一个FPGA工程

进行仿真。