1 浅析Vivado在非工程模式下的FPGA设计流程-德赢Vwin官网 网
0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

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

3天内不再提示

浅析Vivado在非工程模式下的FPGA设计流程

OpenFPGA 来源:OpenFPGA 作者:OpenFPGA 2021-06-19 10:52 次阅读

参考:UG892 UG835

Vivado集成开发工具为设计者提供了非工程模式下的FPGA设计流程。在Vivado非工程模式下,FPGA开发人员可以更加灵活地对设计过程的每个阶段进行控制,从而进一步提高FPGA的设计效率。

非工程模式下基本命令列表


c6f62a6c-d048-11eb-9e57-12bb97331649.png

c72e82cc-d048-11eb-9e57-12bb97331649.png

命令 功能
read_edif 将EDIF或者NGC网表导入当前工程的设计源文件集合中
read_verilog 读入用于非工程模式会话的Verilog(.v)和SystemVerilog(.sv)源文件
read_vhdl 读入用于非工程模式会话的VHDL(.vhd或vhdl)源文件
read_ip 读入用于非工程模式会话的已经存在的IP(.xco或者.xci)工程文件。使用来自.xco IP工程的.ngc网表。对于.xci IP,使用RTL用于编译;或者如果存在网表,则使用网表
read_xdc 读入用于非工程模式会话的.sdc或者.xdc文件
set_param set_property 用于多个目的。例如,它可以定义设计配置和工具设置等
link_design 如果会话中使用网表文件,则对设计进行编译,用于综合目的
synth_design 启动Vivado综合,包含设计的顶层模块名字和目标器件参数
opt_design 执行高层次设计优化
power_opt_design 执行智能时钟门控,用于降低系统的整体功耗(可选)
place_design 对设计进行布局
phys_opt_design 执行物理逻辑优化,以改善时序和布线能力(可选)
route_design 对设计进行布线
report* 运行多个标准的报告,可以在设计过程的任何一个阶段运行它
write_bitstream 生成一个比特流文件,并且运行DRC
write_checkpoint read_checkpoint 在设计流程的任何点保存设计。一个设计检査点由网表和约束构成,它们在设计流程的该点进行了优化,以及包含实现的结果
start_gui stop_gui 调用在存储器中当前设计的Vivado集成开发环境

典型TCL脚本

为了方便读者从整体上了解在Vivado非工程模式下的基本命令的功能,下面将给出用于Vivado设计套件示例的非工程模式TCL脚本,该脚本可以说明使用设计检查点、用于保存设计流程中各个阶段的数据库状态和手工生成各种报告的方法。 通过下面的命令运行该Tcl脚本文件: vivado -mode tcl –source create_bft_batch.tcl

Following is an example of a Non-Project Mode script, which reads in various source files: # create_bft_batch.tcl # bft sample design # A Vivado script that demonstrates a very simple RTL-to-bitstream batch flow # # NOTE: typical usage would be "vivado -mode tcl -source create_bft_batch.tcl" # # STEP#0: define output directory area. # set outputDir ./Tutorial_Created_Data/bft_output file mkdir $outputDir # # STEP#1: setup design sources and constraints # read_vhdl -library bftLib [ glob ./Sources/hdl/bftLib/*.vhdl ] read_vhdl ./Sources/hdl/bft.vhdl read_verilog [ glob ./Sources/hdl/*.v ] read_xdc ./Sources/bft_full.xdc # # STEP#2: run synthesis, report utilization and timing estimates, write checkpoint design # synth_design -top bft -part xc7k70tfbg484-2 -flatten rebuilt

write_checkpoint -force $outputDir/post_synth report_timing_summary -file $outputDir/post_synth_timing_summary.rpt report_power -file $outputDir/post_synth_power.rpt # # STEP#3: run placement and logic optimzation, report utilization and timing estimates, write checkpoint design # opt_design place_design phys_opt_design write_checkpoint -force $outputDir/post_place report_timing_summary -file $outputDir/post_place_timing_summary.rpt # # STEP#4: run router, report actual utilization and timing,

write checkpoint design, run drc, write verilog and xdc out # route_design write_checkpoint -force $outputDir/post_route report_timing_summary -file $outputDir/post_route_timing_summary.rpt report_timing -sort_by group -max_paths 100 -path_type summary -file $outputDir/post_route_timing.rpt report_clock_utilization -file $outputDir/clock_util.rpt report_utilization -file $outputDir/post_route_util.rpt report_power -file $outputDir/post_route_power.rpt report_drc -file $outputDir/post_imp_drc.rpt write_verilog -force $outputDir/bft_impl_netlist.v write_xdc -no_fixed_only -force $outputDir/bft_impl.xdc # # STEP#5: generate a bitstream # write_bitstream -force $outputDir/bft.bit

Vivado集成开发环境分析

3.1 启 动 Vivado集 成 开 发 环 境 当工作在非工程模式时,对于存储器中活动的设计来说,使用下面的命令打开/关闭Vivado集成开发环境。

(l)start_gui,打开Vivado集成开发环境,用于存储器中活动的设计。

(2)stop_gui,关闭Vivado集成开发环境,并且返回“Vivado Design Suite Tcl shell”界面。 在设计过程的每个阶段,设计者均可以打开Vivado集成开发环境,对存储器中保存的当前设计进行分析和操作。

在非工程模式下,在Vivado集成开发环境中,一些工程的特性是不可用的,如Flow Navigator、Project Summary,以及源文件的访问、管理和运行。

然而,通过Vivado集成开发环境的Tools菜单,可以使用分析及修改约束等很多特性。 需要知道的是,在Vivado集成开发环境中,对存储器中的设计所做的任何变化都会自动应用到下游工具中,这里没有保存的功能。如果设计者想要将约束的变化用于后续的运行,则在Vivado集成幵发的环境的主菜单下,执行菜单命令【File】—【Export】—【Export Constraints】,写到一个新的包含所有XDC文件的文件中。

3.2 打开设计检查点的方法 通过Vivado集成设计环境,设计者可以在保存的设计点上对设计进行分析。

通过使用Tcl命令(synth_design、opt_design、power_opt_design、place_design、phys_opt_design和route_deSign),设计者可以在非工程模式下运行一个设计,并且可以在任何阶段保存一个设计。这样,就可以在Vivado集成设计环境中读取设计。

设计者可以从一个布线后的设计开始,分析时序,仅通过布局来解决时序问题。然后保存刚才的工作,甚至设计中还没有进行的布线操作。Vivado集成设计环境显示打开设计点的名字。 设计者可以打开、分析和保存设计检查点,也可以将变化保存到新的设计点。

(1)在Vivado集成开发环境下,执行菜单命令【File】->【Save Checkpoint】,保存对当前设计检查点的修改。

(2)在Vivado集成开发环境下,执行菜单命令【File】—【Write Checkpoint】,将设计检查点的当前状态保存到一个新的设计检查点中。

关于具体的每个命令的使用下一节将细致分析。

编辑:jq

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

    关注

    1629

    文章

    21729

    浏览量

    602958
  • vhdl
    +关注

    关注

    30

    文章

    817

    浏览量

    128118
  • DRC
    DRC
    +关注

    关注

    2

    文章

    148

    浏览量

    36156
  • Vivado
    +关注

    关注

    19

    文章

    812

    浏览量

    66470

原文标题:无招胜有招-Vivado非工程模式下的FPGA设计流程

文章出处:【微信号:Open_FPGA,微信公众号:OpenFPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Vivado之实现布局布线流程介绍

    一、前言 本文将介绍Vivado进行综合,以及布局布线的内部流程,熟悉该流程后结合Settings中对应的配置选项,对于时序收敛调试将更具有针对性。 二、Implementation(实现) 实现
    的头像 发表于 12-06 09:08 296次阅读
    <b class='flag-5'>Vivado</b>之实现布局布线<b class='flag-5'>流程</b>介绍

    每次Vivado编译的结果都一样吗

    很多FPGA工程师都有这种困惑,Vivado每次编译的结果都一样吗? AMD官网上,有这样一个帖子: Are Vivado results
    的头像 发表于 11-11 11:23 304次阅读
    每次<b class='flag-5'>Vivado</b>编译的结果都一样吗

    解决睡眠模式进入系统速度命令模式的问题

    德赢Vwin官网 网站提供《解决睡眠模式进入系统速度命令模式的问题.pdf》资料免费下载
    发表于 09-24 10:34 0次下载
    解决睡眠<b class='flag-5'>模式</b>进入系统<b class='flag-5'>在</b>速度命令<b class='flag-5'>模式</b><b class='flag-5'>下</b>的问题

    FPGA无芯片HDMI接入方案及源码

    FPGA 无外部PHY芯片情况输出HDMI,目前是比较成熟的方案(外部电路需要转换成TMDS电平)。无PHY芯片情况怎么进行H
    发表于 07-16 19:25

    一个更适合工程师和研究僧的FPGA提升课程

    各位编程精英er~ F学社打造的FPGA工程师培训班上线后,有不少同学后台私信询问:“能不能出个那种专门针对某个知识点的课程呢?我想针对自己的薄弱点深入学习。” 贴心如我,当然会满足大家的学习
    发表于 06-05 10:09

    不重新安装Vivado的情况,是否能够安装线缆驱动器?

    如果 Xilinx USB/Digilent 线缆驱动器安装 Vivado 设计套件时还没有安装,或者 Xilinx USB/Digilent 线缆驱动器被禁用,不全面重新安装 Vivad
    的头像 发表于 05-16 11:21 647次阅读

    AMD FPGA中MicroBlaze的固化流程详解

    AMD FPGA配置了适当的启动模式后,上电即会按该模式去加载配置文件。以7系列FPGA为例,假设设置
    发表于 04-25 12:49 506次阅读
    AMD <b class='flag-5'>FPGA</b>中MicroBlaze的固化<b class='flag-5'>流程</b>详解

    如何利用Tcl脚本Manage IP方式实现对IP的高效管理

    Vivado,有两种方式管理IP。一种是创建FPGA工程之后,在当前工程中选中IP Cata
    的头像 发表于 04-22 12:22 796次阅读
    如何利用Tcl脚本<b class='flag-5'>在</b>Manage IP方式<b class='flag-5'>下</b>实现对IP的高效管理

    如何在AMD Vivado™ Design Tool中用工程模式使用DFX流程

    本文介绍了 AMD Vivado™ Design Tool 中用工程模式使用 DFX 流程以及需要注意的地方。使用 DFX
    的头像 发表于 04-17 09:28 832次阅读
    如何在AMD <b class='flag-5'>Vivado</b>™ Design Tool中用<b class='flag-5'>工程模式</b>使用DFX<b class='flag-5'>流程</b>?

    深入探索Vivado非工程模式FPGA设计流程

    设计过程的每个阶段,设计者均可以打开Vivado集成开发环境,对存储器中保存的当前设计进行分析和操作。
    发表于 04-03 09:36 1008次阅读
    深入探索<b class='flag-5'>Vivado</b><b class='flag-5'>非工程模式</b><b class='flag-5'>FPGA</b>设计<b class='flag-5'>流程</b>

    详解Vivado非工程模式的精细设计过程

    将设置设计的输出路径,设置设计输出路径的步骤如下所示。 第一步:如图4.3所示,Vivado%”提示符后输入命令“set outputDir ./gate_Created_Data/top_output”。
    发表于 04-03 09:34 1640次阅读
    详解<b class='flag-5'>Vivado</b><b class='flag-5'>非工程模式</b>的精细设计过程

    fpga原型验证流程

    FPGA原型验证流程是确保FPGA(现场可编程门阵列)设计正确性和功能性的关键步骤。它涵盖了从设计实现到功能验证的整个过程,是FPGA开发流程
    的头像 发表于 03-15 15:05 1556次阅读

    FPGA的PL端固化流程

    德赢Vwin官网 网站提供《FPGA的PL端固化流程.pdf》资料免费下载
    发表于 03-07 14:48 8次下载

    浅析电子负载常见的的四种工作模式

    。下面将详细介绍每种工作模式的原理和特点。 第一种工作模式是恒阻模式恒阻模式,电子负载的电
    的头像 发表于 01-22 13:43 2666次阅读

    如何禁止vivado自动生成 bufg

    Vivado中禁止自动生成BUFG(Buffered Clock Gate)可以通过以下步骤实现。 首先,让我们简要了解一什么是BUFG。BUFG是一个时钟缓冲器,用于缓冲输入时钟信号,使其更稳
    的头像 发表于 01-05 14:31 2151次阅读