# -----------------------------------------------------------------------------
# Vivado Non-Project Flow
# -----------------------------------------------------------------------------
set DESIGN [lindex $argv ] # -----------------------------------------------------------------------------
config_webtalk -user off # -----------------------------------------------------------------------------
create_project -in_memory # -----------------------------------------------------------------------------
proc read_filelist {filelist} {
global hdl_list
global incdir_list
set fp [open $filelist r]
while {[gets $fp fname] != -} {
if {[regexp {^//} $fname]} {
continue
} elseif {[regexp {^\S+\.v} $fname]} {
lappend hdl_list $fname
} elseif {[regexp {^-v} $fname]} {
regsub {^-v} $fname "" fname_sub
lappend hdl_list $fname_sub
} elseif {[regexp {^\+incdir\+} $fname]} {
regsub {^\+incdir\+} $fname "" fname_sub
lappend incdir_list $fname_sub
}
}
close $fp
} # -----------------------------------------------------------------------------
set hdl_list ""
set incdir_list ""
read_filelist "../../rtl/filelist.f" set_property verilog_define "SYNTHESIS" [current_fileset]
set_property include_dirs $incdir_list [current_fileset]
set_property top ${DESIGN} [current_fileset] read_verilog $hdl_list
#read_ip "../scr/ila_debug.xci"
read_xdc "../scr/${DESIGN}.xdc" # -----------------------------------------------------------------------------
synth_design -top ${DESIGN} -part xc7z020clg400-
write_checkpoint -force ../rpt/${DESIGN}_synth.dcp
report_utilization -file ../rpt/${DESIGN}_synth_utilization.rpt
report_timing_summary -file ../rpt/${DESIGN}_synth_timing_summary.rpt # -----------------------------------------------------------------------------
if {[llength [get_debug_cores -quiet]] > } {
implement_debug_core
} write_debug_probes ../rpt/${DESIGN}.ltx # -----------------------------------------------------------------------------
opt_design -directive Explore
place_design -directive Explore
phys_opt_design -directive Explore
write_checkpoint -force ../rpt/${DESIGN}_placed.dcp
report_utilization -file ../rpt/${DESIGN}_placed_utilization.rpt
report_timing_summary -file ../rpt/${DESIGN}_placed_timing_summary.rpt # -----------------------------------------------------------------------------
route_design -directive Explore -tns_cleanup
phys_opt_design -directive Explore
write_checkpoint -force ../rpt/${DESIGN}_routed.dcp
report_route_status -file ../rpt/${DESIGN}_routed_status.rpt
report_timing_summary -file ../rpt/${DESIGN}_routed_timing_summary.rpt # -----------------------------------------------------------------------------
write_bitstream -force ../rpt/${DESIGN}.bit
write_cfgmem -format bin -interface SPIx1 -size -loadbit "up 0 ../rpt/${DESIGN}.bit" ../rpt/${DESIGN}.bin

Vivado Non-Project Flow的更多相关文章

  1. Xilinx Vivado器件分配管脚:LVDS差分电平信号如何分配管脚?

    最近在把Quartus Prime 15.1的工程移植到Vivado 2019.1,需要改变的地方还是很多的,先记一下差分信号在FPGA中的收发管脚定义和配置.以LVDS信号为例吧. 在7 Serie ...

  2. (转) 使用vivado创建工程 3

    Create a Hello World application In this experiment we will use Xilinx SDK to create a simple Hello ...

  3. [转]UIPath进阶教程-6. Architecture & Publishing flow

    本文转自:https://blog.csdn.net/liaohenchen/article/details/88847597 版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议, ...

  4. vivado2015.4 simulator 存储所有信号到 .wdb 文件 并打开波形文件查看波形

    OS WIN7vivado 2015.4vivado自带的仿真器 vivado project 包含一个block design, block design 中包含AXIPCIE, MIG, INTE ...

  5. springboot集成调用Azkaban

    springboot集成调用Azkaban 一. 说明 1.Azkaban是由Linkedin公司推出的一个批量工作流任务调度器,主要用于在一个工作流内以一个特定的顺序运行一组工作和流程,它的配置是通 ...

  6. flowable流程启动时监听器

    一.核心配置类 package com.magus.project.flow.config; import com.google.common.collect.Maps; import com.mag ...

  7. Vivado的helloword计划(一个):硬件project部分

    硬件平台:ZedBoard 软件平台:vivado2013.3 本演示样例通过综合.实现,生成比特流,发送到SDK实现. 启动vivado而且创建一个项目 依据提示操作一步步创建新项目的时候记得选择R ...

  8. [转载]Vivado轻松实现IP封装

    Vivado轻松实现IP封装 1.新建一个测试工程 工程化的设计方法是离不开工程的,第一步往往都是新建工程,后面我会学习去工程化的开发方法,可能会更加高效. 2.利用向导完成IP封装 2.1.启动IP ...

  9. Vivado学习笔记_002

    经过几天的试用逐渐熟悉了vivado,和ISE相比vivado确实有了很多改良. 发现了以下几个特点:   1.数据格式统一了 在以往的设计中,保存数据的格式非常多.ISE有很多种格式的文件,在tra ...

随机推荐

  1. js中isNaN和Number.isNaN的区别

    isNaN 当我们向isNaN传递一个参数,它的本意是通过Number()方法尝试将这参数转换成Number类型,如果成功返回false,如果失败返回true. 所以isNaN只是判断传入的参数是否能 ...

  2. 工具系列 | VScode Remote 远程开发与调试(告别SSH)

    简介 最近VScode发布了远程编程与调试的插件Remote Development,使用这个插件可以在很多情况下代替vim直接远程修改与调试服务器上的代码,同时具备代码高亮与补全功能,就和在本地使用 ...

  3. pytorch torch.backends.cudnn设置作用

    cuDNN使用非确定性算法,并且可以使用torch.backends.cudnn.enabled = False来进行禁用 如果设置为torch.backends.cudnn.enabled =Tru ...

  4. [Design Patterns] 02. Structural Patterns - Facade Pattern

    前言 参考资源 史上最全设计模式导学目录(完整版) 只把常用的五星的掌握即可. 外观模式-Facade Pattern[学习难度:★☆☆☆☆,使用频率:★★★★★] 深入浅出外观模式(一):外观模式概 ...

  5. DevOps - DevOps精要 - 变革

    特别说明 本文是已读书籍的学习笔记和内容摘要,原文内容有少部分改动,并添加一些相关信息,但总体不影响原文表达. <DevOps入门与实践> :本书结合实例详细介绍了在开发现场引入DevOp ...

  6. SVN 本地文件锁/服务端文件锁清除步骤

    1.本地文件锁,直接cleanup,cleanup界面选择break locks即可 2.服务端文件锁,本地文件右击没有release lock或者break lock的选项时 方法1:右键,svn选 ...

  7. 【Python学习之九】模块

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 python3.6 一.模块的使用和安装模块和C语言中的头文件以及Ja ...

  8. 高级UI-高级渲染

    在使用了Panit画笔之后,可以对其进行渲染,从而达到更加人性化的方式 渲染分类 按常用渲染方式可以分为以下几种: BimapShader位图的图像渲染器 LinearGradient线性渲染 Rad ...

  9. [转帖]在 k8s 中自动为域名配置 https

    在 k8s 中自动为域名配置 https https://juejin.im/post/5db8d94be51d4529f73e2833 随着 web 的发展,https 对于现代网站来说是必不可少的 ...

  10. learning、trying、teaching

    在工作中学习和提升,学以致用,学习的效果是最好的:工作后学习不需要大段时间,而是要挤出时间,利用时间碎片来学习. 1,Learning 这是第一阶段,看书.google.看视频.看别人的博客,但要是“ ...