- 1、本文档共31页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
FPGA入门教程-Spartan-3A
FPGA入门教程
这里要注意,我们的实验板是Spartan3AN-XC3S200AN-FTG256,以前我们并没有把程序烧进板子里,所以可以乱选,但这次一定要根据这个图选。
一直装不Modelsim或者装上了又用不了的同学,如果你的ISE版本比较高的话,展开这栏选择Isim,是ISE自带的仿真工具,这个也可以的。
如图右键点击xc3s500e-4fg320,选择New Source。
选择VHDL Module,右侧输入文件名(文件名不能由数字开头),点Next进入下一步。
本次实验是点亮实验板上的LED灯,我们这里可以用一个std_logic_vector
来表示led的输出端口。实验板上有8个LED灯,所以位宽为8。
当你想点亮一个LED灯,只需给该led灯赋值‘1’高电平而其他位为‘0’;
例如点亮第一个led灯,则:led = ; 这样的可以了,方法有很多种,
仅供示范。
由于我们做的实验是流水灯,灯的闪烁是流动的,所以led的状态变换应该由时钟
Clk来决定,而Spartan3E的时钟频率为50Mhz,所以我们应该适当的对时钟分频,
才能看得清楚led的流动。
写完led的代码后点击左边的Synthesize – XST,进行对代码的综合。
双击Design Summary/Reports
可以看到各种报告。
例如在红框内我们可以看到我们设计的流水灯用了多少个Flip Flops(触发器),多少个
LUT(查找表)等。
综合完电路后,如图右键点击工程New Source。
选择Implementation Constraints File,命名后点击NEXT然后Finish。
UCF文件就生成好了,如图。
提醒一下还是找不到UCF文件的人,请注意你们选的是不是红色框框里Implementation
选择图中选的Simulation是用来仿真的,平时想Modelsim上观察波形的时候才点这里。
什么是UCF?
UCF全称为User Constraints File,即用户约束文件。
ISE中有多种用户约束,如管脚位置约束,区域约
束,时序约束以及电平约束。
我们这个实验只需要用到管脚位置约束。
那什么又是管脚位置约束呢?
我们写的代码中有各种端口。
你在Port声明里有时钟CLK,有复位RST,有流水灯
输出LED,由于我们要把程序烧进板子里,那么我
们就要通过UCF文件告诉板子,我这个CLK对应你板
子上的哪个管脚。
这个是实验板的芯片,可以看到有很多I/O口,即可编程输入/输出口单元(IOB)。是芯
片与外界电路的接口部分,提供输入缓冲,输出驱动,接口电平转换等功能。为了便于
管理和适应各种电气标准,图中我们可以看到IO Bank被分成4组,不同Bank的接口标准
由其接口电压Vcco决定,一个Bank只有一种Vcco。
这是FPGA芯片内部的结构,我们可以看到IOB与芯片内的CLB,BRAM相连。
我们实验是点亮LED灯,我们要点亮的
第一个LED灯相对应的ucf的代码是
NET LED0 LOC = M14 ;
对LOC = “M14”,说明我们的第一个LED灯对应的管脚是M14管脚。其实我们也可以LOC=“J13”
或者”K14”,但是我们的实验板上已经把M14这个管脚连接到对应实验板上的第一个LED灯了。所以我们应该通过编写ucf告诉综合器,我的端(PORT)里的输出LED实际上是对应着你芯片的M14管脚。
从上图中我们可以看到M14管脚连线到A2_IO1这个地方。A2_IO1的线最后会连接到左图蓝色方框
位置。说明了M14管脚连接的是第一个LED灯。
原理图请在WEBCC里下载
有的人会疑惑为什么
LED0 = ‘1’;
而不是LED0 = ‘0’;
的时候灯才会亮。
左图是LED的原理图。
图中我们可以看到,当LED1来了一个高
电平‘1’的时候,二极管被导通,当
是低电平的时候,左边和右边接地都为
0,没有电流通过,所以LED不会被点亮。
在编辑UCF文件里输入如图的代码。
UCF文件的语法格式为
NET “端口名(必须与vhd文件里的端口名大小写一致)” LOC = “location”
例如NET “clk” LOC = “P9”;
由于我的vhd代码中时钟是clk小写,所以这里必须也是小写。我的LED是大写,所以也必
须大写,板子上有16个led灯,第一个灯用0代表,以此类推。
约束对象的名字大小写敏感,而NET,LOC这些关键字大小写不敏感。
LOC = “P9”的意思是把clk信号分配到FPGA板子上的P9管脚上,而Spartan3A板子
上P9管脚就是40Mhz的时钟晶振。输入完之后点击保存。
NET LED0 LOC = M14 ;
NET LED
您可能关注的文档
- C4专用装置.doc
- c8051f040中can控制器的应用2.doc
- CAD中级考试必过试卷库.doc.doc
- CAD常用快捷健.ppt
- CAD报告-尺寸标注报告.doc
- CAD╱CAM技术及应用(2010-12).doc
- cad文字与填充.doc
- CAD第6次课.doc
- CAD第一讲黑白打印教程.doc
- cad第4次课.ppt
- 第十一章 电流和电路专题特训二 实物图与电路图的互画 教学设计 2024-2025学年鲁科版物理九年级上册.docx
- 人教版七年级上册信息技术6.3加工音频素材 教学设计.docx
- 5.1自然地理环境的整体性 说课教案 (1).docx
- 4.1 夯实法治基础 教学设计-2023-2024学年统编版九年级道德与法治上册.docx
- 3.1 光的色彩 颜色 电子教案 2023-2024学年苏科版为了八年级上学期.docx
- 小学体育与健康 四年级下册健康教育 教案.docx
- 2024-2025学年初中数学九年级下册北京课改版(2024)教学设计合集.docx
- 2024-2025学年初中科学七年级下册浙教版(2024)教学设计合集.docx
- 2024-2025学年小学信息技术(信息科技)六年级下册浙摄影版(2013)教学设计合集.docx
- 2024-2025学年小学美术二年级下册人美版(常锐伦、欧京海)教学设计合集.docx
文档评论(0)