0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Quartus.II使用简介与第一个工程实例

工程师 来源:网络整理 作者:h1654155205.5246 2019-03-07 15:41 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

Quartus.II使用简介与第一个工程实例

基于QuartusII通过实验板上的KEY1按钮控制FPGA核心板上的第一个LED灯。本实验比较简单,使用本站FPGA开发板或者CPLD开发板以及其它FPGA开发板都可进行实验。下面实验目的:通过该实例学习,可以了解FPGA的基本开发流程,熟识quartusII软件基本功能的使用。

基本原理:利用一个常开按钮(实验板上的KEY1)作为输入(常开时输入1,闭合时输入0),经过一个反相器后输出到核心板的第一个LED。KEY1常开时,LED亮,按下(闭合)实验板上的KEY1,该LED熄灭。

1、建立工程

运行QuatrusII软件(以下简称Q2),建立工程,FileàNew Project Wizad如点击New Project Wizard 后弹出指定工程名的对话框,在Diectory, Name, Top-Level Entity中如下图填写:

Quartus.II使用简介与第一个工程实例

按Next按钮,出现添加工程文件的对话框:

在这里我们先不用管它,直接按Next进行下一步,选择FPGA器件的型号:

Quartus.II使用简介与第一个工程实例

在Family下拉筐中,我们选择Cyclone系列FPGA,然后在“Available devices:”中根据核心板的FPGA型号选择FPGA型号,注意在Filters一栏选上“Show Advanced Devices”以显示所有的器件型号。执行下一步出现对话框:

这里是选择其它EDA工具的对话框,我们用Q2的集成环境进行开发,因此这里不作任何改动。按Next进入工程的信息总概对话框:

按Finish按钮即建立一个空项目。

Quartus.II使用简介与第一个工程实例

2、建立顶层图

执行FileàNew,弹出新建文件对话框:

选择“Block Diagram Schematic File”按OK即建立一个空的顶层图,缺省名为“Block1.bdf”,我们把它另存为(FileàSave as),接受默认的文件名,并将“Add file to current project”选项选上,以使该文件添加到工程中去。如图所示:

Quartus.II使用简介与第一个工程实例

3、添加逻辑元件(Symbol)

双击顶层图图纸的空白处,弹出添加元件的对话筐:

在Libraries里寻找所需要的逻辑元件,如果知道逻辑元件的名称的话,也可以直接在Name一栏敲入名字,右边的预览图即可显示元件的外观,按OK后鼠标旁边即拖着一个元件符号,在图纸上点击左键,元件即安放在图纸上。在图纸上分别添加非门(not)、输入(input)、输出(output)三个symbol,如图所示:

Quartus.II使用简介与第一个工程实例

连线,将鼠标移到symbol连线端口的那里,鼠标变成图示模样:按下左键拖动鼠标到另一个symbol的连线端。本例中,这三个symbol的连线如下图所示:

分别双击input和output symbol的名字“pin_name”、“pin_name1”,将它们的名字改为Key1,LED1:

Quartus.II使用简介与第一个工程实例

4、 分配管脚

为芯片分配管脚可以用QuartusII软件里的“AssignmentsàPins”菜单,也可以用tcl脚本文件。用Tcl文件进行配置可重用性好,易于管理,因此本文介绍用tcl的方法。对于另一种方法,可以参考QuartusII软件的帮助文档。在工程目录下建立一个name为Setup.tcl的file。FileàNew,选择other files页面:

Quartus.II使用简介与第一个工程实例

有关tcl文件的更详尽内容可参考QuartusII的帮助文档,对于我们所选用的FPGA开发板SOPC开发板来说,由于不同型号的FPGA核心板的管脚与实验板上的引脚也不同,因此不同的核心板对应的.tcl文件也不同(关于核心板引脚与实验板引脚对应的详细情况可以参照相关电路原理图)。在实际项目中,该文件也可以根据具体管脚分配要求来改写。

对应于EP1C6FPGA开发板,EP1C12FPGA开发板:

#Setup.tcl

# Setup pin setting

set_global_assignment -name RESERVE_ALL_UNUSED_PINS “AS INPUT TRI-STATED”

set_global_assignment -name ENABLE_INIT_DONE_OUTPUT OFF

set_location_assignment PIN_1 -to led1

set_location_assignment PIN_122 -to key1

保存到工程目录下,并注意在保存对话框选上“Add file to current project”选项。然后打开Tools -》 Tcl Scripts,选中刚才编辑的Script文件:Setup,并点击Run,如下图:

注意:建立工程时如果路径名有中文字符或者路径名有空格字符,则tcl Script文件将运行不了。例如,本例建立的工程“FPGA_led_test”目录是: C:alteraquartus51myq2projectsFPGA_led_test

如果是:C:alteraquartus51my q2projectsFPGA_led_test

在该目录下运行工程里的setup.tcl就会出错。如果使用Tools -》 Tcl Scripts,后没有弹出“tcl Script”对话框可以试一下关了QII,再重新打开。使用TCL文件分配管脚是很方便的,用户可以直接从相关例子工程中复制需要管脚分配表到自己的工程中,省时又方便。

Quartus.II使用简介与第一个工程实例

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • quartus
    +关注

    关注

    18

    文章

    175

    浏览量

    76174
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Linux 下交叉编译实战:跑起来你的第一个 STM32 程序

    跑起来你的第一个STM32程序。、准备工作在开始之前,需要准备:1、Linux开发环境Ubuntu、Debian或其他主流发行版都可以。2、ARMGCC交叉编译工具
    的头像 发表于 11-24 19:04 236次阅读
    Linux 下交叉编译实战:跑起来你的<b class='flag-5'>第一个</b> STM32 程序

    **CW32L012****开发评估板的第一个程序**

    CW32L012****开发评估板的第一个程序 最近以15.99在CW32生态社区入手了这块CW32L012开发评估板,我迫不及待的烧录进电灯程序,看看这块板子是否是正常的,能否满足我后面的学习
    发表于 11-22 00:09

    Quartus Prime Pro 25.1版本的安装和使用

    如果用户开发板是基于Agilex 3、Agilex 5等高阶器件,则需要安装高版本的Quartus软件比如Quartus Prime Pro 25.1版本,这个版本在安装包和license获取(免费)等方面跟以往的Quartus
    的头像 发表于 10-07 13:06 2041次阅读
    <b class='flag-5'>Quartus</b> Prime Pro 25.1版本的安装和使用

    DIY 流体模拟吊坠():理论与第一个吊坠的制作

    件能够实时运行 FLIP 流体模拟的手工珠宝。外壳镀金,显示屏由片表镜保护。 观看以下视频,您可以了解整个设计与制作过程: 简介直想实现
    的头像 发表于 09-07 17:49 2231次阅读
    DIY 流体模拟吊坠(<b class='flag-5'>一</b>):理论与<b class='flag-5'>第一个</b>吊坠的制作

    Quartus II原理图输入法教程

    电子发烧友网站提供《Quartus II原理图输入法教程.ppt》资料免费下载
    发表于 06-18 17:58 0次下载

    HRTIM变频控制输出的第一个周期频率异常的原因?

    在使用STM32G474CBT6的HRTIM_Mater、HRTIM_TIMER_B和HRTIM_TIMER_D输出同步互补的四路输出时,关闭4路输出和三定时器的计数后,再次开启时第一个周期的频率
    发表于 04-25 06:17

    文教你构建第一个应用程序

    构建第一个应用程序 创建工程 步骤 1通过如下两种方式,打开工程创建向导界面。 如果当前未打开任何
    发表于 04-24 06:41

    HRTIM变频控制输出的第一个周期频率异常的原因?

    在使用STM32G474CBT6的HRTIM_Mater、HRTIM_TIMER_B和HRTIM_TIMER_D输出同步互补的四路输出时,关闭4路输出和三定时器的计数后,再次开启时第一个周期的频率
    发表于 04-22 12:08

    STM32H750使用定时器比较通道触发DMA操作GPIO,偶尔会发生第一个脉冲宽度过短怎么解决?

    RCC配置: DMA设置: 定时器设置: 生成的协议是dshot600 期望产生的效果是电平至少为560ns的高低电平 但是在实际测试的过程发现周期性的出现第一个脉冲会非常小的问题,不知道怎么排查 恳请各位能不能
    发表于 03-11 06:11

    DLP2010evm-lc混合internal pattern set显示,只会播放第一个pattern set里面的8pattern,之后就直黑屏了怎么解决?

    比如当我添加包含81D的vertical pattern和包含81D的horizo
    发表于 02-26 07:48

    原生鸿蒙第一个出圈的,为什么是安全?

    属于更加安全、可信、便捷的数字未来,也属于今天的你我
    的头像 发表于 01-11 15:53 4728次阅读
    原生鸿蒙<b class='flag-5'>第一个</b>出圈的,为什么是安全?

    ADS1274用DRDY+TDM输出模式下,读到的第一个字节是无效的,为什么?

    今天调试中发现问题,1274在用DRDY+TDM输出模式下,读到的第一个字节是无效的! 配置是4通道,在DRDY下降沿产生后,等待5us(采样率25K,即间隔40us)给出SPI的SCLK
    发表于 01-08 08:17

    蓝桥杯的第一个项目,点亮LED

    第一节IO简介GPIO是通用输入/输出端口的简称,是STM32可控制的引脚。GPIO的引脚与外部硬件设备连接,可实现与外部通讯、控制外部硬件或者采集外部硬件数据的功能。每个GPIO内部都有这样的
    的头像 发表于 01-02 21:02 1067次阅读
    蓝桥杯的<b class='flag-5'>第一个</b>项目,点亮<b class='flag-5'>一</b><b class='flag-5'>个</b>LED

    ADS1299在DAISY-CHAIN模式下只能配置第一个AD吗,那后面几个都是要怎么配置寄存器,都和第一个样吗?

    大家: 1ADS1299在DAISY-CHAIN 模式下只能配置第一个AD么,那后面几个都是要怎么配置寄存器,都和第一个样么? 2 手册上写了有关时钟配置的问题,ADS1299在
    发表于 12-20 06:47

    DAC8734只能把第一个接收到的数字数据输出,有哪些原因导致的呢?

    一个发送的数据时序没问题。但DAC8734只能把第一个接收到的数字数据输出,我用的是TI公司自己的DAC8734EVM。可能有哪些原因导致的呢?是上电顺序的原因吗?
    发表于 12-19 09:17