FPGA教程贴之 ISE中的实例仿真及复杂的程序烧录
![](https://img.haomeiwen.com/i7445362/f61349d9be737bff.png)
上一篇教程分享了一些64 位操作系统中的bug问题解决方法,这一篇教程将把这周Alex老师讲的内容以总结的形式分享给大家,期望能给各位在本节课的学习中提供一些帮(zao)助(ri)(tuo)(keng)。
新建工程
-
打开Xilinx PlanAhead 14.7 后在桌面点击 Create New Project 新建工程项目
-
next 后 填写 project name And project location 注意 这两项不要包含有中文或特殊符号
-
next 选择项目类型,我们选第一个RTL Project
-
next 创建一个Sources项目文件用于编写VHDL程序,最下角选择编程语言,我们选择VHDL,然后点击Create File 创建 Source文件;创建好后如下图所示,之后继续next
![](https://img.haomeiwen.com/i7445362/6219bc208fc8ef85.png)
-
接下来的添加 Existing Ip 暂时跳过,constraints 如第四步一样创建一个文件,这个文件用于physical and timing constraints,本章节用于IO管脚的定义。
-
next 选择芯片型号,我买的是Xc6slx9ftg256-2 ,直接搜索框输入FPGA芯片型号后选定他,然后点击finish;
![](https://img.haomeiwen.com/i7445362/6e88b8cdd233d554.png)
- 最后是Module的IO管脚定义,这里提前定义好的IO管脚在后面会直接生成写好的port管脚配置代码,比较方便。管脚定义好后点击ok,一个project就搭好了 !
![](https://img.haomeiwen.com/i7445362/547055f219199b7c.png)
代码编写及PC端仿真
- 你的工程搭好后会是这个样子:
![](https://img.haomeiwen.com/i7445362/044daaf167b31ab5.png)
我们首先在project manager 中点击刚刚创建的source文件,然后你就能看到程序帮你写好框架和Port项的source文件,我们在43行begin 后面添加自己的代码:
![](https://img.haomeiwen.com/i7445362/6eab6f92b39d02bd.png)
![](https://img.haomeiwen.com/i7445362/7dd0e1c68f6b5c2e.png)
- 在project manager 中点击刚刚创建的第二个文件:constraints文件
![](https://img.haomeiwen.com/i7445362/190dc52d9341288e.png)
这个文件中我们需要把在source文件中写的 a,b,put1,put2 Port端口和外界相连,输入端口a,b 连接开关key,输出端口put1,2 连接Led;我们参考商家为我们这块板子写好的一个ucf文件:ax309.ucf,其中可以看到这个FPGA芯片的引脚都连接了哪些东西:
![](https://img.haomeiwen.com/i7445362/4635d9d95ba3d9dc.png)
- 我们查找到key 和led连接到这些端口后,复制选中的端口到工程中我们自己的constraints文件中:修改成符合我们要求的代码;
![](https://img.haomeiwen.com/i7445362/1a7e98e143a03b63.png)
- 点击下图中的保存按钮(或者如图中的快捷键所示),然后会弹出下图的reload框,点击进行reload 养成定时保存项目是一个好习惯(微笑)
![](https://img.haomeiwen.com/i7445362/66d1949c98135323.png)
![](https://img.haomeiwen.com/i7445362/a3645ad7867499bb.png)
- 点击左侧 RTL Analysis 中的 Schematic,创建原理图(代码有错误时会一下几步都编译不通过)预览框中会出现硬件原理图;
![](https://img.haomeiwen.com/i7445362/f650b63f7efb2795.png)
- 点击左侧的 Run Synthesis,等待一段时间编译过后会在底部出现io配置,检查是否如你ucf文件中配置的那样;
![](https://img.haomeiwen.com/i7445362/0a8f892d9c25a0d3.png)
![](https://img.haomeiwen.com/i7445362/e7204007ba837a60.png)
- 点击左侧的 Run Implementation 等待一段时间
- 点击左侧的Generate Bit Stream 生成FPGA核 文件代码
- 最后点击 lanch chipscope analyz 进行分析器仿真
- 接下来连接FPGA板到电脑后按照截图一步步走,最后烧录成功!
![](https://img.haomeiwen.com/i7445362/243294da15efe01c.png)
![](https://img.haomeiwen.com/i7445362/e25126e925973dc2.png)
![](https://img.haomeiwen.com/i7445362/2212fec2da98afce.png)
![](https://img.haomeiwen.com/i7445362/3bcdbe9ffa839643.png)
OTHER
小吐槽----FPGA开发 属于EDA(electronic design automation)类型的开发方式,
对于以前一直接触单片机和altium的我yyming来讲是自动化程度最高的一种开发方
式了。。还是有点小期待的,但同时跟着教程一路走来的大家也可以发现,FPGA
开发最大的缺点就是繁琐和慢,下载编译一个程序都要搞这么复杂也是没谁了。
网友评论