vivado的目录结构:

1、*.xpc : 项目管理文件,里面记录了该工程的文件索引

2、*.src : 项目源文件目录,ip目录下是ip核生成的文件

3、*.runs : 内部有许多名为(name)_synth_n和(name)_imp_n形式的文件夹,里面是综合和布局布线生成的一些临时文件,对于主模块,其(name)为空,里面生成的文件中包含报告文件和bit流。

VIVADO 提供两种代码封装方法:DCP文件和edf文件。

1、write_checkpoint -force /x/xxx.dcp,其中xxx为模块名称,这样就可以生成完整的dcp文件。

2、rite_verilog -mode synth_stub  /x/xxx_stub.edf生成黑盒接口文件。edf文件不像DCP文件,可以单独被调用,edf文件必须配合.v的黑盒接口才能被调用

xci文件是一个xml格式的文件,它能够搜集ip所有的配置信息,更重要的是包括Vivado指向的ip所生成的大量文件,比如上下文综合、约束和模拟文件等。根据xci文件Vivado可以确定IP是否已经“完全生成”或者缺少哪些文件。

当读取xci文件时,Vivado会读取生成的dcp(design checkpoint)文件,跳过嵌入的约束信息,采用的是原始IP的约束文件。

foreach 语法结构提供了遍历数组的简单方式。foreach 仅能够应用于数组和对象。

catch命令

用于阻止因错误而导致的中断执行,类似python中的异常,执行成功返回0,否则返回1

IP Output Products:

<ip_name>.xci:

包含IP定制信息。您可以从该文件生成输出产品。如果目录中存在IP的升级路径,则可以从此文件升级到最新版本

<ip_name>.xcix:

IP核封装文件,它列出了设计中IP之间的所有通用元素。

<ip_name>.xml:

IP物料清单(BOM)文件,用于跟踪IP的当前状态,包括生成的文件,计算的参数和接口信息

<ip_name>.veo | vho:

Verilog(VEO)或VHDL(VHO)实例化模板。您可以使用这些文件中的一个在您的设计中实例化IP。

<ip_name>.dcp:

合成设计检查点文件包含综合后网表和处理过的XDC约束。
建议:赛灵思建议您不要直接引用IP DCP文件;而是使用XCI文件,在需要时引入DCP。

<ip_name>.stub:

与第三方综合工具一起使用的模块(Verilog)和组件(VHDL)来推断IP的黑盒子。

<ip_name>.funcsim:

Vivado 2015.3版之前的综合后结构仿真网表文件。

<ip_name>.xdc:

时序/物理约束文件,这些文件并不是对于所有IP都存在,并且它们的位置因IP而异。

<ip_name>_in_context.xdc:

有关更多信息,请参阅确定时钟约束和解释时钟消息。

<ip_name>_clocks.xdc:

具有时钟依赖性的约束。这些文件对于所有IP都不存在,并且它们的位置因IP而异。

<ip_name>_board.xdc:

平台板流程中使用的约束条件。这些文件对于所有IP都不存在,并且它们的位置因IP而异。

<ip_name>_ooc.xdc:

默认的时钟定义,用于合成IP的上下文。

好了,查了这么多,也分别看了每个文档的代码,发现这些对我没啥help。

想利用tcl文件,直接生成带有想要的ip的vivado gui。

1、首先,打开vivado gui界面。按照你想要的东西一步步操作。操作完成之后,在Tcl Console选项这边,可以找到你所有的tcl命令。

2、把所有蓝色显示的命令加到你新建的tcl文件中。在文件中,修改参数。

3、在文件最底端加上 start_gui 命令。

4、运行 vivado -mode tcl -source  xx.tcl 命令,就可以直接打开你想要的gui了。

注:在json文件中有你想要的ram各种参数。所以在写tcl文件时,需要注意到用set_property来设置参数。

vivado利用tcl文件一键生成ram ip相关推荐

  1. vivado使用tcl脚本一键生成mcs文件

    1.以前习惯使用bin文件,bin文件在工程编译完以后可以自动生成,现在喜欢使用mcs文件固话FPGA,但是每次需要手工将bit文件转成mcs文件,而且配置过程比较繁琐,如下图所示,需要配置的选项很多 ...

  2. 使用Protobuf文件一键生成Java类

    使用Protobuf文件生成Java类 .proto 文件生成 .java 参考 看了一篇文章:主题是 proto 先生成 desc,然后在用 FreeMarker 模板引擎来做代码自动生成了: .p ...

  3. 利用java代码一键生成数据库文档

    1 screw(螺丝钉)介绍 1.2 特点 简洁.轻量.设计良好 多数据库支持 多种格式文档 灵活扩展 支持自定义模板 1.2 文档生成支持 html word markdown 1.3 文档截图 1 ...

  4. 在Vivado下利用Tcl实现IP的高效管理

    在Vivado下,有两种方式管理IP.一种是创建FPGA工程之后,在当前工程中选中IP Catalog,生成所需IP,这时相应的IP会被自动添加到当前工程中:另一种是利用Manage IP,创建独立的 ...

  5. 如何在zynq中调用并驱动vivado HLS生成的ip core

    vivado HLS 为赛灵思开发的高层次综合工具,可实现直接使用 C,C++ 以及 System C 语言对Xilinx的FPGA器件进行编程.赛灵思官方给出了ug902文档,很详细的介绍了官方提供 ...

  6. matlab问题利用M文件比较两个数大小,Matlab中写M文件及调用

    1题.自然数n的阶乘 function y=lilu_fact(n) n=floor(n);%如果是小数,向下取整至整数 y=1; if n>1  %这里负数,0的阶乘都将得到1 for i=1 ...

  7. 【Latex】Latex小白入门(2)——如何用.bib文件自动生成论文Reference

    写在前面: 在研究生阶段搞学术的童鞋们很有可能会接触到Latex这种论文格式编辑工具,一般在论文投稿的时候,大多数期刊和会议会给一个Latex模板,要求将你的论文用Latex编辑成.pdf版本.这里的 ...

  8. vivado中bit文件怎么没有生成_「干货」FPGA设计中深度约束技巧及调试经验总结...

    今天跟大家分享的内容很重要,也是我们调试FPGA经验的总结.随着FPGA对时序和性能的要求越来越高,高频率.大位宽的设计越来越多.在调试这些FPGA样机时,需要从写代码时就要小心谨慎,否则写出来的代码 ...

  9. vivado中bit文件怎么没有生成_「超实用」一分钟学会用最小存储空间保存Vivado工程...

    在平常调试FPGA的过程中,大家会发现Vivado工程动辄数百兆大小,甚至几个G都很常见.如果调试的版本过多,就连几个T的硬盘也不够用.怎么办呢?其实,Vivado自带了一种使用tcl命令保存viva ...

最新文章

  1. 关于node.js的误会
  2. linux centos 安装配置tftp服务器
  3. angular 数字逗号分隔_angular 实现的输入框数字千分位及保留几位小数点功能示例...
  4. 什么是Springmvc以及如果编写第一个入门程序
  5. 【7005】二叉树的遍历问题2
  6. html提交表单原理,HTML5之Form 表单理论
  7. 关于ESP8266WIFI模块的介绍
  8. 计算机在室内设计的应用,计算机辅助设计软件在室内设计教学中的应用
  9. 《领导力与沟通艺术》
  10. 苹果台式电脑怎么使用计算机,MAC电脑连接台式电脑显示器怎么操作
  11. (66)-- 多进程爬取腾讯招聘信息
  12. Java抓包分析四(基于jnetpcap进行抓包)——分析Http请求数据包
  13. mysql使得df和du不一致_df和du显示的磁盘空间使用情况不一致的原因及处理
  14. 宝塔面板怎么实名认证_云服务器安装宝塔面板完整教程
  15. c++ 的vector、array和数组的比较
  16. 深圳市海平线科技有限公司
  17. redhat7磁盘扩容详细步骤
  18. Python开源指南
  19. 百度apollo源码学习(二)apollo中的工厂模式
  20. 人工智能算法:卷1基础算法+卷2受大自然启发的算法+卷3深度学习和神经网络电子书

热门文章

  1. 简单shell批量文件转换gbk转为utf8编码
  2. Liferay好文收集
  3. 数据存储与备份管理解决方案
  4. SNS社区推广几个主要方法
  5. Java操作Excel的两种方式(详细)
  6. 显示器3d测试软件,3D画面究竟如何开启_AOC D2357PH_液晶显示器评测-中关村在线
  7. redis 发布订阅以及使用场景
  8. “啄木鸟社区”的奋起宣言,
  9. Android换肤:从外存中读取皮肤包资源实现换肤
  10. 利用micro:bit开发板工具写一个小游戏