FPGA零基础学习:Intel FPGA 开发流程

本篇目录

  1. 设计前准备
  2. 建立工程
  3. 输入设计
  4. 综合和分析
  5. RTL仿真
  6. 锁定管脚
  7. 布局布线
  8. 时序仿真
  9. 生成配置文件并下载

本篇将设计一个简单的二输入与门,来讲解整个设计流程。至于设计语言就不在单独列出一个章节去做特殊说明,语法、操作、实验将同时讲解,这样更具有带入性,便于读者阅读和学习。

1、设计前准备

在设计之前我们需要在两个方面进行准备:硬件方面和软件方面。

硬件方面

开发FPGA设计,最终的产品是要落在使用FPGA芯片完成某种功能。所以我们首先需要一个带有Intel FPGA芯片的开发板。

本文中设计将采用CYCLONE系列FPGA进行讲解,如果读者有其他系列(必须是Intel FPGA,否则无法在Quartus上开发),也可以进行学习,不同系列的开发流程基本相同。

软件方面

我们需要综合工具-quartus 软件和仿真工具-modelsim软件。正确安装这两个软件是开发Intel FPGA的必要条件。

按照《quaruts prime 18.0标准版安装与破解》的方式安装,Modelsim软件的图标将不会出现在桌面上。并不是没有安装上,而是此时Quartus软件认为Modelsim软件只是它的一个小程序包而已,所以就没有体现单独的软件图标。

当准备好软件后,笔者向大家推荐一个工程管理的方式,也是本文中做工程管理的方式,这样会比较清楚。

做设计的话,会编写很多设计文件、仿真文件以及综合器会给我输出很多的过程文件等等,那么这些文件最好都能有自己的一个“归宿”,不要乱放。

路径和命名中不允许出现非法字符(合法字符包括:数字、字母、下划线。特别说明:空格是非法的),笔者建议以字母开头。

我们是做FPGA开发设计的,首先我们将建立一个文件夹,专门用来放FPGA开发设计。例如:E:/fpga_design。

在后续的开发设计中,我们会做各种各样的设计。每个设计都有自己的名字,在上述文件内,用实验的名字命名一个文件夹。名字的话一定要带有某种含义,不建议随便给个字母序列当做名字。例如:第一个要做的二输入与门的设计,命名为and_gate2_1。

在建立完某项设计的文件后,依次在其里面新建四个文件夹,分别为:rtl、qprj、msim、doc。

rtl文件夹用于存放设计的源文件。

doc文件夹用于存放设计的一些文档性的资料。

qprj文件夹用于存放quaruts 工程以及quartus生成的一些过程性文件。

msim文件夹用于存放仿真文件。

在 FPGA 设计时,主要是这四个文件的使用。某些时候我们也会新加一些文件,例如:FPGA板卡需要我们设计自己时,就会多一个文件夹PCB,用于存放PCB相关的工程或者源文件等。

2、建立工程

做好设计前准备后,就可以开始建立quartus 工程了。

在做设计时,都是以工程为主体的设计。在没有工程的情况下,利用quartus软件打开设计源文件等,也是不支持编译和综合的。

双击quartus 软件的图标(图4-1),打开quartus软件。在有的电脑上,软件启动的速度不是很快(在确保自己已经双击打开的前提下,可以等待1分钟),不要多次去双击图标,容易造成PC卡死或者启动了很多个quartus软件。

笔者这里不对每个界面进行单独介绍,后续用到那个功能或者界面时,会单独介绍说明。

点击左上角File,选择New Project Wizard…。打开新工程向导,首先出现一个工程向导介绍说明

在工程向导中,我们会指定工程名称和位置,顶层实体的名称,工程文件和库文件,目标器件,EDA工具。

在复杂设计时,会将电路分成各个小模块去做设计,最终还需要一个大模块将这些小模块包括进来,对外呈现都是大模块的接口。此时,这个大模块就是顶层实体(TOP level entity)。如果设计中只有一个模块,那么这个模块就是顶层实体。

点击Next。

工程的位置指定到之前我们准备好的文件夹(qprj)中。点击编辑框后面的三个小点,进行文件搜索指定。

工程的名称就是采用之前我们做的设计文件夹的名字,这个名字可以是任意的,笔者建议和文件夹保持一致,因为当初建立文件夹时,就是选择用工程的名字。直接输入工程名称and_gate2_1即可。

顶层实体的名字会自动出现,与工程的名字保持一致。我们也可以重新指定一个新名字,笔者建议与工程名字保持一致。

点击Next。选择空白工程(默认空白工程),点击Next。

建立工程时,我们可以直接向工程中添加已有的文件。一般我们选择什么都不添加,后续设计中,如果有提前做好的文件,也是选择什么都不添加。建立完工程后,依然可以向工程添加文件。

点击Next

FPGA设计最终是要落实到芯片内部,在这里要选择对应的芯片(自己手里开发板的FPGA芯片)。芯片的型号在FPAG的芯片上有描述,如果芯片上看不清楚,或者芯片在被其他东西挡住,可以查看开发板的资料,一般都有介绍。笔者手中开发板的FPGA的型号为EP4CE10F17C8N。后续所有的选择将按照笔者手中的型号进行设计和选择,读者不相同的,请自行改动。如果暂时还没有开发板的读者,可以跟着笔者选择继续下面的步骤(没有开发板的话,后面有一些步骤是做不了的)。

选择时,首先选择对应的系列。

选择对应的系列后,可以看到下面的器件列表(此列表的窗口是可以拉大的,可以直接扩大整个界面)中,就出现很多的器件。呈现的器件都是按照一定的规律进行排列的,可以很快的找到自己的芯片,然后单击选择芯片(先不考虑为什么没有EP4CE10F17C8N,而选择EP4CE10F17C8)。如果每次新建工程都是这样去寻找芯片的话,是有一定的累人。好在这个软件给我们提供了筛选面板,我们可以把筛选条件输入进去。

设置好筛选条件后,器件列表中就只有四个器件了,很容易就可以找到我们这款芯片。

筛选条件中有封装类型、管脚数目和速度等级。那么我们怎么知道自己手中的芯片的这些信息呢?

答案都隐藏在芯片的名字中。笔者手中的是CYCLONE IV系列的

  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值