基于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中如下图填写:
按next按钮,出现添加工程文件的对话框:
在这里我们先不用管它,直接按next进行下一步,选择fpga器件的型号:
在family下拉筐中,我们选择cyclone系列fpga,然后在“available devices:”中根据核心板的fpga型号选择fpga型号,注意在filters一栏选上“show advanced devices”以显示所有的器件型号。执行下一步出现对话框:
这里是选择其它eda工具的对话框,我们用q2的集成环境进行开发,因此这里不作任何改动。按next进入工程的信息总概对话框:
按finish按钮即建立一个空项目。
2. 建立顶层图
执行fileànew,弹出新建文件对话框:
选择“block diagram schematic file”按ok即建立一个空的顶层图,缺省名为“block1.bdf”,我们把它另存为(fileàsave as),接受默认的文件名,并将“add file to current project”选项选上,以使该文件添加到工程中去。如图所示:
3. 添加逻辑元件(symbol)
双击顶层图图纸的空白处,弹出添加元件的对话筐:
在libraries里寻找所需要的逻辑元件,如果知道逻辑元件的名称的话,也可以直接在name一栏敲入名字,右边的预览图即可显示元件的外观,按ok后鼠标旁边即拖着一个元件符号,在图纸上点击左键,元件即安放在图纸上。
在图纸上分别添加非门(not)、输入(input)、输出(output)三个symbol,如图所示:
连线,将鼠标移到symbol连线端口的那里,鼠标变成图示模样:按下左键拖动鼠标到另一个symbol的连线端。本例中,这三个symbol的连线如下图所示:
分别双击input和output symbol的名字“pin_name”、“pin_name1”,将它们的名字改为key1,led1:
4. 分配管脚
为芯片分配管脚可以用quartusii软件里的“assignmentsàpins”菜单,也可以用tcl脚本文件。用tcl文件进行配置可重用性好,易于管理,因此本文介绍用tcl的方法。对于另一种方法,可以参考quartusii软件的帮助文档。
在工程目录下建立一个name为setup.tcl的file。fileànew,选择other files页面:
有关tcl文件的更详尽内容可参考quartusii的帮助文档,对于我们所选用的fpga开发板sopc开发板来说,由于不同型号的fpga核心板的管脚与实验板上的引脚也不同,因此不同的核心板对应的.tcl文件也不同(关于核心板引脚与实验板引脚对应的详细情况请参照“ct-sopcx学习套件用户手册”或相关电路原理图)。在实际项目中,该文件也可以根据具体管脚分配要求来改写。
对应于ep1c6 fpga开发板,ep1c12 fpga开发板:
#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文件分配管脚是很方便的,用户可以直接从相关例子工程中复制需要管脚分配表到自己的工程中,省时又方便。
简要分析AI芯片的性能分析和应用介绍
MAX17106 Step-Up Regulator and
FCA正寻求重新获得市场出口 计划在6月底前推出无人出租车
LCD TV视频解码器的主要功能及应用技术分析
高通领先地位不再,5G市场已被超越
基于QuartusII的实例展示
中国开源社区健康案例——NebulaGraph社区
马歇尔稳定度仪的使用注意事项
提速数字基础设施建设,浪潮云洲创新实践
基于MM32F0140的UDS Bootloader学习笔记
好书分享之一:通信仿真经典《Simulation and Software Radio...》
2018世界机器人大会:预见机器人,感知未来!
氧气传感器在配电室氧气浓度监测中的应用
农业物联网上关键的应用是什么
移远通信率先推出支持3GPP R16协议的第二代5G模组
一种微型化超精密光谱芯片新方案
【佑菲斯电子学生证】平安校园添利器,安全便捷两不误!
宽电压蓄电池放电测试仪的功能和特点是什么
研究人员开发出一种创新的光电化学(PEC)蚀刻技术
无人送货的未来或可期