HNU FPGA课设项目上手指南
1.介绍
本文章旨在帮助HNU的同学更优雅的完成数电的FPGA课设(使用DE2-115),文章将涉及完成FPGA项目需要掌握的知识,资源分享以及一些关于完成项目的经验指导。大家快快搬好小板凳,准备发车吧(doge)。
2.基础知识学习指导
Verilog
想要完成FPGA的项目,那必不可少的就是
Verilog这个硬件描述语言,可以说Verilog是一切一切的基础,下面将给出如何更好的学习Verilog
视频推荐:【三天入门verilog速成】 https://www.bilibili.com/video/BV1iv4y1F7Km
看完这个视频,基本上就可以上手写代码了,当然建议看完以后再根据UP主的PPT自己再整体过一遍,这样就差不多了,下面这个链接是PPT的百度网盘链接
链接:https://pan.baidu.com/s/1mnE-7S4ymgYH8GBsk41v8w?pwd=i81l
提取码:i81l
Quartus下载
quartus 18.1
下载链接:https://pan.baidu.com/s/1i0sjRkMIFU693LjjbEePOA
提取码:delp
链接放这了,老师分享的,有需要的自取,本篇教程也都是根据quartus 18.1来写的
Quartus使用
Quartus是一款非常强大的写FPGA的软件,如果是第一次接触FPGA就不用考虑那么多了,无脑选择Quartus即可。
下面是完成项目时在Quartus里会用到的板块,基本涵盖了所有的需求.
- 新建项目

这两个地方都是新建项目,针对DE2-115的建项目中需要注意的点,在后面会提到,会将整个流程带大家走一遍
- 创建verilog文件

如图,按顺序点击,即可创建Verilog文件,保存时注意要保存到创建好的项目的目录里去,不然非常容易乱.
- 创建波形仿真文件及使用指南

同样是上面的操作,在这个小窗口里往下翻,点开如图所示的文件,即可看到下面的界面.

若要添加信号,则可跟随下面的图示来操作



到这边选择List,有的信号下面会一一显示出来,选择需要的信号添加即可.

添加完信号后,可指定各个输入信号input的波形,选择好信号后,点击上图里面的C图标,即可给出脉冲。
当全部输入信号的制定好以后,点击Simulation即可启动仿真

注:我这里是因为没有打开项目,所以是灰色的。
- 引脚分配
写好代码后,如果想要部署到相应的FPGA的板子上,那么就需要分配引脚.

点开如图所示的按钮,即可进入到分配引脚的界面,如下图

可在Location里分配到实际的引脚里,下面是DE2-115的引脚对应表.









上面是常用的引脚分配,如果想要了解更多,可以看我下面分享的这个pdf文档
链接:https://pan.baidu.com/s/1in7MwdqZ6lGI_f-FRDiMsg?pwd=eqtx
提取码:eqtx
- 图生成
Quartus中提供了非常方便的图生成工具,如果自己的老师有要求的话,可以根据下面的步骤来生成对应自己代码的图

点开即可查看图,如下

还可点开模块看里面的细节,如下

- 烧录
代码整个写完,引脚也分配完,编译通过后,就到了烧录到板子上验证的时候了,如下操作
首先应该确认自己的电脑有没有CH340和USB-BLASTER的驱动。
安装方式如下,如果已经有了就可以跳过
CH340
这个去网上搜一个都行,或者点下面的这个链接下载。CH340
USB-BLASTER
这个驱动的安装需要保证先装好了Quartus,然后看这个链接里的教程安装即可[1. Quartus软件和USB-Blaster驱动安装 — 野火]FPGA Verilog开发实战指南——基于Altera EP4CE10 征途Mini开发板 文档 (embedfire.com)
两个驱动都装好后,点击Quartus里的这个按钮,即可进入到烧录界面

如下图,如果驱动安装没问题,有如下画面

最后,点击Start开始烧录即可

一般情况下,这样烧录进去的代码,fpga断电重启后就会没有,想了解详细的原因的可以看这篇文章。
- 编译
前面讲了好多,好像忘讲怎么编译了,编译其实非常简单,如下

点击一下图中的按钮(也可点击快捷键Ctrl+L),即可开始编译,正常来说编译的时间都挺长的,如果不想等那么长时间,只是想看看有没有问题,那么点击快捷键Ctrl+K即可
编译成功后,有如下画面

3.基本项目创建流程
这里我就截老师的ppt里的内容了,按照步骤一步步来准没问题








按照上面的步骤建立好文件后,就可以开始写代码了
HNU FPGA课设项目上手指南的更多相关文章
- FPGA课设-基于Xilinx Basys2开发板的除法器设计
介绍一下Basys开发板: Basys2 FPGA开发板是一个电路设计实现平台,任何人都可以通过它来搭建一个真正的数字电路.Basys2是围绕着一个Spartan-3E FPGA芯片和一个Atmel ...
- Android SDK上手指南:示例项目
Android SDK上手指南:示例项目 2013-12-26 15:40 核子可乐译 51CTO 字号:T | T Android SDK示例项目中的应用能够执行种种功能,例如各类用户界面元素.数据 ...
- 谷歌内部流出Jetpack Compose最全上手指南,含项目实战演练!
简介 Jetpack Compose是在2019Google i/O大会上发布的新的库.Compose库是用响应式编程的方式对View进行构建,可以用更少更直观的代码,更强大的功能,能提高开发速度. ...
- X下轻量级桌面WindowMaker上手指南
layout: post title: 轻量级桌面WindowMaker上手指南 tags: x11, cygwin, raspi --- 最近工作上需要在远程Linux上运行一个桌面(我需要跑Net ...
- Resharper上手指南
原文http://www.cnblogs.com/renji/archive/2007/12/11/resharper.html Resharper上手指南 我是visual studio的忠实用户, ...
- 计算机网络课设之基于UDP协议的简易聊天机器人
前言:2017年6月份计算机网络的课设任务,在同学的帮助和自学下基本搞懂了,基于UDP协议的基本聊天的实现方法.实现起来很简单,原理也很简单,主要是由于老师必须要求使用C语言来写,所以特别麻烦,而且C ...
- Android SDK上手指南:下一步学习方向
Android SDK上手指南:下一步学习方向 2014-02-28 11:01 核子可乐 译 51CTO 字号:T | T 到目前为止,我们已经介绍过的知识足以帮助大家从非常理想的起点开始进行And ...
- NewLife.XCode 上手指南2018版(一)代码生成
目录 NewLife.XCode 上手指南2018版(一)代码生成 NewLife.XCode 上手指南2018版(二)增 NewLife.XCode 上手指南2018版(三)查 NewLife.XC ...
- JAVA课设个人博客--多源数据教学管理系统
JAVA课设个人博客--多源数据教学管理系统 1.团队课程设计博客链接 https://www.cnblogs.com/hq9-/p/10278470.html 2. 个人负责模块或任务说明 主要模块 ...
- Gatsby上手指南 - 让你的静态网站用react来高逼格的写
注意:Gatsby V2版本安装及使用问题请移步<Gastby V2安装过程中常见问题>,此文较旧,主要针对V1版Gatsby而介绍 前言 一直以来都是用之前比较流行的静态网站生成器Hex ...
随机推荐
- faker 函数支持哪些
3.2 常用函数 除了上述介绍的fake.name和fake.address生成姓名和地址两个函数外,常用的faker函数按类别划分有如下一些常用方法. 1.地理信息类 fake.city_suffi ...
- Golang 1.16新特性-embed包及其使用
embed 是什么 embed是在Go 1.16中新加入的包.它通过//go:embed指令,可以在编译阶段将静态资源文件打包进编译好的程序中,并提供访问这些文件的能力. 为什么需要 embed 包 ...
- go grpc的入门使用
简介 什么是grpc grpc是一个由google推出的.高性能.开源.通用的rpc框架.它是基于HTTP2协议标准设计开发,默认采用Protocol Buffers数据序列化协议,支持多种开发语言. ...
- centos安装JDK11
(一)建立目录 mkdir /home/jdk11 (二) 上传JDK的离线liunx包 cd /home/jdk11 示例:jdk-11.0.19_linux-x64_bin.tar.gz (三) ...
- 《机器人SLAM导航核心技术与实战》第1季:第5章_机器人主机
<机器人SLAM导航核心技术与实战>第1季:第5章_机器人主机 视频讲解 [第1季]5.第5章_机器人主机-视频讲解 [第1季]5.1.第5章_机器人主机_X86与ARM主机对比-视频讲解 ...
- Windows IntelliJ IDEA 快捷键终极大全
自动代码 常用的有fori/sout/psvm+Tab即可生成循环.System.out.main方法等boilerplate样板代码 . 例如要输入for(User user : users)只需输 ...
- AI浏览器自动化实战
只需一句话,AI 即可自动操作浏览器: 搜索商品: 下单支付: 甚至还能进行深度研究(Deep Research),自动生成完整的攻略报告: Browser use 是一个开源项目,使 AI 大模型能 ...
- 康谋分享 | aiSim5 物理相机传感器模型验证方法(一)
摘要: aiSim5可以实时模拟复杂的传感器配置,在多GPU分布式渲支持的支持下,aiSim可以渲染20多个摄像头.10多个雷达和10多个激光雷达在同一环境下运行.aiSim5独有的实时渲染引擎能够满 ...
- js判断iOS还是Android
/** * 运行设备引擎, 即iOS, Android还是H5 * 返回值注意大小写 * @return iOS, Android, H5 */ function engineType() { let ...
- 2025dsfz集训Day10:区间、树形DP
Day10:区间.树形DP 区间DP 区间类型动态规划是线性动态规划的拓展,它在分阶段划分问题时,与阶段中元素出现的顺序和由前一阶段的哪些元素合并而来有很大的关系.(例:\(f[i][j]=f[i][ ...