Xilinx Vivado的使用详细介绍(2):综合、实现、管脚分配、时钟设置、烧写

26人阅读 评论(0) 收藏 举报

修改器件型号

新建工程时选择过器件型号,如果新建好工程后需要修改型号,可以选择菜单Tools - Project Settings

wpid-a03c64c1b427e8cd2642c4460cb3c753_4a962f9d-145d-4a4a-8cb4-6ca8d3bbd03c.png

弹出窗口中,点击Project Device右侧的按钮,即可选择器件型号。

wpid-a03c64c1b427e8cd2642c4460cb3c753_37bd5bd5-a92e-4764-b7e4-45834adfbc95.png

综合(Synthesis)

综合类似于编程中的编译。

Flow NavigatorFlow菜单中,选择Synthesis - Run Synthesis;或点击工具栏中的三角形按钮如图,即可开始对设计文件进行综合。

wpid-a03c64c1b427e8cd2642c4460cb3c753_b8ee90d7-87f9-417a-9cb5-20c526302a03.png

wpid-a03c64c1b427e8cd2642c4460cb3c753_e83c6909-6aec-45a4-92ae-6ceda16eae37.png

综合以及后面的实现等操作,耗时较长,可以在底部的Design Runs窗口查看进度。

如果没有找到这个窗口,在菜单中选择Window - Design Runs即可打开。

wpid-a03c64c1b427e8cd2642c4460cb3c753_6d18385c-8093-4cc2-8a2a-98fd969481f8.png

综合完成后,会弹出如下窗口。如果选择第一项并点击OK,就会启动下一步的实现。为了方便学习,这里我们直接点击Cancel

wpid-a03c64c1b427e8cd2642c4460cb3c753_fe09d87a-2a3c-4581-a017-444c592fcf13.jpg

实现(Implementation)

综合完成后,需要进行实现,操作如图。

wpid-a03c64c1b427e8cd2642c4460cb3c753_7fa747c1-e640-420a-82f1-74066da10c90.png

wpid-a03c64c1b427e8cd2642c4460cb3c753_80a509eb-6d73-43f4-bf18-10deb2724d62.png

实现完成后,同样会出现一个窗口如下。选择第一项可以打开下一步的IO口设置界面,选择第一项可以启动后面要说的生成比特流操作。同样,这里还是点击Cancel关闭。

wpid-a03c64c1b427e8cd2642c4460cb3c753_3c034dd1-40c4-4b33-a406-9ab242673101.jpg

IO口配置(I/O Planning)/编辑约束文件(Edit Constraints Sets)

做好的模块,在烧写进板子之前,需要设置输入输出信号与板子上IO口的对应关系。

IO口设置有两种方法,第一种是直接创建并编辑约束文件,第二种是在图形界面进行设置。

编辑约束文件

如果对约束文件的格式有了解,IO口的配置,可以直接通过手动编辑约束文件实现。右击文件夹或空白处,选择Edit Constraints Sets

wpid-a03c64c1b427e8cd2642c4460cb3c753_5784d392-379e-41e7-88fc-8eed7dc2d203.png

在弹出窗口中添加约束文件,点击OK

wpid-a03c64c1b427e8cd2642c4460cb3c753_03d5f566-a99d-4b40-8a09-e3270bf39281.jpg

打开文件按格式进行编辑即可。

wpid-a03c64c1b427e8cd2642c4460cb3c753_a2706e68-385c-427f-ac07-37e1dd71c86b.png

图形界面配置管脚

在实现完成后,Open Implemented Design选项从灰色变成可点击状态。

wpid-a03c64c1b427e8cd2642c4460cb3c753_7bc77b5a-84ce-42e9-bec7-3e5c5079b88d.png

点击Open Implemented Design,即可打开Implemented Design窗口。

wpid-a03c64c1b427e8cd2642c4460cb3c753_dfc05227-7178-49c8-b18b-0c11e90451b0.png

I/O Ports窗口展开管脚,对于每个输入输出信号,在Site栏选择对应的管脚,注意确保Fixed栏处于勾选状态,I/O Std常选择LVCMOS33

wpid-a03c64c1b427e8cd2642c4460cb3c753_f90c36c3-ab70-4541-9b89-ebd4c2f54250.png

设置好后,Implemented Design窗口标题栏会显示一个*号,表示设置发生了更改。

wpid-a03c64c1b427e8cd2642c4460cb3c753_35675a24-b0b2-4093-b6ad-2b7e9813410e.png

Ctrl+S快捷键保存设置,会弹出窗口如图,提示保存constraints文件会导致综合与实现过期。也就是说,修改了管脚分配设置后,需要重新进行综合、实现操作。这里点击OK

wpid-a03c64c1b427e8cd2642c4460cb3c753_fc92f519-33b2-455c-b77e-edc30c8e50af.jpg

弹出窗口,选择Create a new file并输入文件名,点击OK。

wpid-a03c64c1b427e8cd2642c4460cb3c753_12e4a679-1913-4418-97f4-8f0afaede23d.jpg

此时test.xdc约束文件已经自动被创建并编辑,可以打开查看。

wpid-a03c64c1b427e8cd2642c4460cb3c753_a9c5ced7-13bf-4024-b3a7-448e8f5121e4.png

时钟信号

很多电路需要有时钟信号进行驱动,通常在开发板上都有一个外部时钟信号输入。例如在Basys3开发板中,从电路图可以看出,W5管脚外接了一个100MHz的时钟。因此可以设置100MHz时钟输入信号clk对应管脚W5。

如果需要的时钟频率不是100MHz,可以自行编写分频器取得需要的频率,或者配置IP核中的时钟Clocking Wizard来实现。IP核的具体使用方法将在后面再进行介绍。

wpid-a03c64c1b427e8cd2642c4460cb3c753_1b700078-762c-4fc5-8af0-dadeaef80cc9.png

重新进行综合与实现

IO口设置进行了修改,需要重新综合与实现。

生成比特流

生成比特流文件,这个文件会被直接烧写进板子。类似于编程中的二进制可执行文件。

wpid-a03c64c1b427e8cd2642c4460cb3c753_fb0ce2da-83dc-4940-9a93-d40ceb0e1b90.png

wpid-a03c64c1b427e8cd2642c4460cb3c753_95d687fc-0935-4b6a-9120-0075120ba02e.png

错误处理

由于程序编写问题、管脚分配问题,生成比特流文件容易发生错误。

wpid-a03c64c1b427e8cd2642c4460cb3c753_202ce390-3aa7-4ac6-af20-b1c6a11dc2ae.jpg

Message窗口可以看到发生错误的原因。

右击选择Search for Answer Record可以在论坛搜索这个问题,寻找解决方法。

烧写程序

选择Program and Debug - Open Hardware Manager

Hardware Manager窗口即被打开。

用USB连接开发板。如果之前连接过开发板,直接点击上方绿色栏的Open recent target即可打开;如果是第一次连接开发板,则点击Open a new hardware target

点击Next

还是点击Next

显示下面窗口,稍后即可打开硬件设备。

wpid-a03c64c1b427e8cd2642c4460cb3c753_bb9fdbc7-f7aa-4205-9c25-fc094fa3bf73.png

快照3.jpg

快照4.jpg

打开设备后,就会在Hardware窗口显示。右击设备并选择Program Device,或者直接点击绿色栏的Program Device

快照5.jpg

快照6.jpg

弹出比特流文件选择窗口,一般直接按默认值点击确认,即可烧写程序到板子中。

快照7.jpg

快照8.jpg

查看评论

WordPress网站使用和设置(学会网站应用)

本课程学习网站搭建之后的操作,例如如何发布文章更新、如何设置标题优化设置等操作,如果你已经学习了之前零基础网站搭建教程并已经完成了网站的搭建,那么马上开始学习本课程吧。
  • 2017年01月16日 09:19

Vivado 未使用的管脚如何约束

set_property BITSTREAM.CONFIG.UNUSEDPIN Pulldown [current_design] set_property BITSTREAM.CONFIG.UNU...
  • u011997919
  • u011997919
  • 2017-12-27 10:36:48
  • 575

Xilinx 中时钟的使用

没有PLL的时钟:输入时钟在没有连接到PLL中,那么一定在输入端链接BUFG, IBUFG #( .IOSTANDARD("DEFAULT") // Specify the inpu...
  • Augus_Per
  • Augus_Per
  • 2016-10-06 15:23:11
  • 1701

Vivado常用综合选项的设置

-flatten_hierarchy full:综合时将原始设计打平,只保留顶层层次,执行边界优化 none:综合时完全保留原始设计层次,不执行边界优化 rebuilt:综合时将原始设计打平,执...
  • youngming123
  • youngming123
  • 2018-03-19 21:08:47
  • 163

Xilinx FPGA的默认管脚设置

今天我了解了在ISE中所有未使用的管脚默认为下拉,用户可以在BitGen的选项中更改这个默认值。...
  • christne1225i
  • christne1225i
  • 2012-08-09 19:09:16
  • 2772

赛灵思(XILINX) FPGA中VRP/VRN管脚的使用心得

XILINX公司的Virtex系列FPGA芯片上,每个BANK都有一对VRP/VRN管脚。VRP/VRN管脚是一对多功能管脚,当一个BANK使用到某些DCI(Digitally Controlled ...
  • pengwangguo
  • pengwangguo
  • 2017-03-03 09:59:38
  • 538

【Vivado使用误区与进阶】XDC约束技巧——时钟篇

转自http://www.globalicnet.com/bbs/question/detail_3102.html Xilinx 的新一代设计套件Vivado中引入了全新的约束文件XDC,...
  • avrmcu1
  • avrmcu1
  • 2015-01-09 17:20:42
  • 4517

Vivado+FPGA学习之第一次上电

背景:我本人没有怎么接触过FPGA,但是这次一上来就被要求做FPGA的工作,实在是让我感到无从下手,前前后后忙活了好几天才第一次上电成功,所以把整个经过整理了一下,以便方面后来人。开发平台:Vivad...
  • u013564276
  • u013564276
  • 2015-09-25 10:46:13
  • 8347

vivado约束使用说明

  • 2017年09月27日 09:27
  • 4.24MB
  • 下载

Xilinx Spartan 6 管脚分配

1. Spartan-6系列封装概述   Spartan-6系列具有低成本、省空间的封装形式,能使用户引脚密度最大化。所有Spartan-6 LX器件之间的引脚分配是兼容的,所有Spartan-6 ...
  • blackcater
  • blackcater
  • 2017-02-06 10:27:59
  • 2490
    个人资料
    等级:
    访问量: 3395
    积分: 73
    排名: 160万+
    文章分类
    文章存档