设为首页 加入收藏

TOP

我的 FPGA 学习历程(02)—— 实验:点亮 LED 灯(一)
2017-10-10 12:30:52 】 浏览:1872
Tags:FPGA 学习 历程 实验 :点亮 LED

关于 Quartus 的操作可以使用 Quartus 自带的帮助,帮助中带有全套的操作教程。

中文网络教程链接(链接至 altera中文官网,点击观看)

  1. Quartus II 软件设计系列:基础
  2. Quartus II 软件中的原理图设计
  3. SignalTap II 嵌入式逻辑分析器
  4. 使用 Nios II 处理器
  5. 系统控制台
  6. Nios II 处理器开发软件:设计流程
  7. Nios II 处理器开发软件:MMU 和 MPU

无论是英文帮助还是网络中文教程,他们的前提是 你是有基础的,这些教程之会教给你我们的 quartus 套件该如何使用,至于 verilog 你应该实现学习,处理器的基本支持您应该都听的懂。入门知识并不在他们的职责之内,这本无可厚非,却给了入门带来了极大的困难。

这是我的第一个实验,目的是用一个按键控制一个 LED 灯,使用原理图输入。

1. 点击 file –> new project wizard,新建一个项目

新建项目1

 

2. 输入工程目录

        quartus要求事先新建一个空目录用于保存项目文件,路径不能有中文和空格。

        此外项目名称和顶层模块名称一般和目录名称一致。

        第三行的名称在使用 HDL 输入时必须和 顶层模块名称一致,否则编译报错,这里用的是原理图输入,暂时可以不管

新建项目2

3.添加其他文件到项目中

        如果你已经写好了 verilog 文件,并且顶层模块名称与项目要求一致,在这里添加其他文件路径,这里我们留空。

新建项目3

4.选择 FPGA 的型号。

       我用的 AX301 板上的 FPGA 属于 Cyclone IV EP4CE6FC8N,

Cyclone IV 是 Altera 的低端系列,Cyclone IV 有两个系列,其中 E 系列为不带高速收发器,而GX 系列带有高速收发器。另外结尾的 N 代表无铅工艺,L 代表 低电压。

       从下面的表格中可也看到,该芯片有 6272 个 LE 单元,180 个用户管脚,2 个锁相环。

新建项目4

5.其他工具

       quartus 可以使用其他工具来完成 FPGA 的设计,第一项是综合器的选择,第二项是仿真工具的选择,第四项是板级选择。

       因为我们用不着,所以留空。

新建项目5

6.项目总览

      用于确认前几部的选择是否正确,看看就可以。

新建项目6

7.项目建成之后,点击 file –-> new,新建一个原理图文件

新建原理图文件

8.原理图编辑器

       双击原理图空白处,弹出以下对话框,在搜索框中输入 not,表示选择非门。

同理 and2 就是两输入的与门、or2 就是或门。要注意看看其他原件的符号,免得用的时候不知道。

加入非门

       输入完成后是这个样子,箭头按钮表示选择,小手表示拖动,此外还有导线(wire),总线(bus)和几个绘图按钮(方块、椭圆什么的)

如果输入或者输出是总线,则需要把名称改为像这样的 led[7..0],而不是 led[7:0]。

除了输入输出、符号之外,导线也可命名(右键点击导线,进行重命名)。

quartus 和 protel 一样使用网络标号来连接导线和总线,比如把一段总线命名为 a[3..0],接着把四根其他导线命名为a[3]、a[2]、a[1]、a[0],就可以可以实现他们之间的连接。

非门原理图

9.分配 FPGA 管脚

        这个项目中用到了两个引脚,一个按键和一个 LED,查看用户手册,我的用户手册如下

按键对应引脚

LED引脚

        这里我选择使用 LED0 和 KEY1,需要记住两个引脚名称 G15 和 E15。(-?-;)

       分配管脚后

分配管脚

10.项目设置

        这片 EP4CE6F17C8 芯片上可以接多个时钟,但由于该芯片内置了 PLL (锁相环,用于分频,倍频,改变时钟相位),对于初学者而言锁相环就够了并不需要使用多个时钟,所以芯片上就多出来的时钟管脚就用在按键上了,这个需要设置一下

       在 project –> settings 下点击右上角的 Device…

设置

       找到 Device and Pin Options 这个页面,设置复用管脚为普通管脚特殊管脚设置

       设置不用的管脚为三态,点击确定

未使用管脚设置为三态

        由于上次我们没有设置引脚对应的管脚,虽然也生成了 sof 文件,但这个文件不能用。需要再次编译一下项目。

        编译后查看一下警告、错误和提示信息。这里提示的是没有时序约束文件,初学者不用理会。

编译报告(没有时序约束文件)

        警告提示没有时钟,时钟在时序逻辑中一定会用到,这里是简单组合逻辑,没用用到时钟

        而最上面的提示就是多用管脚的设置信息。

编译报告(没有时钟和管脚分配问题)

       分配管脚后原理发生了变化,图上显示了分配的管脚名称

分配管脚后的原理图编辑器

11.USB-Blaster 驱动安装

黑金的手册和视频上反复强调,不要带电插拔 Jtag 线(就是那组10pin 的排线),由于低端的 Cyclone IV 中没有钳位二极管,带电插拔 Jtag 口可能会烧坏 FPGA,我的流程是先关闭开发板开关,连上 Jtag 的两头,将 USB-Blaster 的另一头接上 usb 线,然后连接 USB-blaster 到电脑,连接开发板电源,最后打开开发板电源开关。

         连好 USB-Blaster 到电脑,在控制面板依次找到 系统和安全 >> 系统 >> 设备管理器

       没有安装驱动的在设备管理器中选择有黄色感叹号的设备,选择更新

首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇基于FPGA的肤色识别算法实现 下一篇我的 FPGA 学习历程(02)—— 实..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

最新文章

热门文章

C 语言

C++基础

windows编程基础

linux编程基础

C/C++面试题目