vivado 定义板文件板

定义板文件板

<board>标记是板文件的根。它包括识别基本信息的属性关于董事会。

<board schema_version="2.1" vendor="xilinx.com" name="kc705"
display_name="Kintex-7
KC705 Evaluation Platform" url="www.xilinx.com/kc705"
preset_file="preset.xml"
image="kc705_board.jpeg">
<file_version>1.2</file_version>
<description>Kintex-7 KC705 Evaluation Platform</description>
<board>标签的属性及其用法如下:

定义<board>时,以下属性和标记是必需的:schema_version,vendor、name、display_name、<file_version>和<compatible_board_previsions>。

提示:“preset_file=”属性是可选的,但支持通用预设机制是必需的。看见有关详细信息,请了解预设文件。Board文件中的第一级标记下表列出了可以嵌套在schema的<board>标签下的一级标签2.1版Board文件:

兼容的董事会修订

此标记列出当前板文件所应用的板的兼容修订。更改到物理板也可能触发板文件的更改,因此会触发新的板<file_version>。但是,对董事会文件的修订可能不需要对物理板对物理板的修订可以包括不需要更新的板文件。因此,板文件可以支持对物理板。

提示:可以在不触发对板文件的修订的情况下对板进行修订。因此板文件可用于定义多个板修订。<compatible_board_previsions>标记包括一个或多个<revision>标记,这些标记列出支持的董事会修订:

<revision id="0”>1.1</revision>

<revision>标签包括中列出的每个修订的索引“id”<compatible_board_previsions>标记。在以下示例中,id为“0”,支持“1.1”董事会的修订。

<compatible_board_revisions>
<revision id="0">1.1</revision>
</compatible_board_revisions>

参数

<parameters>标签用于列出板的其他参数。它包括一个或更多嵌套的<parameter>标签,用于定义板的不同功能或属性。每个<parameter>都包括多个属性,如表4所定义:<parameter>属性。

<parameters>
<parameter name="heat_sink_type" value="medium" value_type="string"/>
<parameter name="heat_sink_temperature" value_type="range"
value_min="20.0"
value_max="30.0"/>
</parameters>

跳线

<跳线>部分列出了板上存在的所有跳线,这些跳线可能会影响板上的<components>或<interfaces>。<跳线>标记包括多个嵌套<跳线>标签。

提示:请注意,板上的开关也是使用<跳线>标签定义的。

<jumper name="SW13_M0" default_value="false">
<description>Impacts connection between flash_qspi and flash_bpi.If
value=true, flash_qspi will be enabled</description>
</jumper>
<jumper name="SW13_M1" default_value="true">
<description>Impacts connection between flash_qspi and flash_bpi.If
value=true, flash_bpi will be enabled</description>
</jumper>
</jumpers>
下面提供了<跳线>标记的属性和标记的简短描述。

组件

重要!<component>部分是板文件中非常重要的一部分,因为它定义了板上的组件,以及组件的不同操作模式,以及启用这些模式所需的设置。本节列出了板上的所有组件,以及零件等详细信息名称、组件类型和供应商。组件的一些示例包括AMD FPGA,DDR3、四SPI闪存、以太网Phy、LED和DIP开关。<components>部分包括一个或多个嵌套的<component>标记。

<components>
<component name="part0" display_name="Kintex-7 KC705 Evaluation Platform"
type="fpga" part_name="xc7k325tffg900-2" pin_map_file="part0_pins.xml"
vendor="xilinx" spec_url="www.xilinx.com/kc705">
<description>FPGA part on the board</description>
</component>
<component name="ddr3_sdram" display_name="DDR3 SDRAM" type="chip"
sub_type="ddr3"
major_group="External Memory" part_name="MT8JTF12864HZ-1G6G1"
vendor="Micron"
spec_url="www.micron.com/memory">
<description>1 GB DDR3 memory SODIMM </description>
</component>
</components>

在KC705板文件中,第一个声明的组件是“part0”,它是AMD FPGA设备。板上的AMD设备,列为“fpga”类型的组件,应命名为part0。附加的<component>元素定义了板上的其他组件,以及所需的任何接口从AMD设备连接到板组件。下表解释了<component>标记的不同属性和<tags>:

Board文件中定义的<components>列在Vivado IP的Board选项卡中集成商。组件根据的“major_group=”属性进行分组<component>元素,并显示“display_name=”。

双击“板”选项卡中的组件打开“连接板组件”对话框Vivado IP集成商。这使您可以选择要添加到的设计画布中的首选IP框图,实现必要的信号接口以连接到上的组件董事会。

参数

<component>的参数用于指定组件的附加细节,如时钟时钟组件的频率。<parameters>部分可以包括一个或多个嵌套在中的<parameter>标记。每个<parameter>都有一个“name”和“value”属性对。

<parameters>
<parameter name="frequency" value="200000000" /parameter>
</parameters>

重要!<board>对象的<parameters>与

<component>对象的<parameters>。

引脚

<pins>部分列出了定义的<component>上的所有引脚以及相关的属性用那些针。<pins>部分可以包括嵌套在其中的一个或多个<pin>标记。<component pin_map_file=“”>属性可以定义相同的属性。但是,<pins>部分中定义的属性值优先于属性值在“pin_map_file=”中定义。

提示:您可以使用<pins>部分定义<component>的所有引脚,并消除对“pin_map_file”。通过<pins>部分,可以使用覆盖在“pin_map_file”中定义的常规端号特性特定情况下的特定属性值。例如,当引脚具有不同属性,如IOSDARD,共享FPGA(或任何其他组件)的相同引脚通过开关或跳线,可以在中定义引脚属性<

<pins>
<pin index="0" name="rs232_uart_USB_TX" iostandard="LVCMOS25"/>
<pin index="1" name="rs232_uart_USB_RX" iostandard="LVCMOS25"/>
</pins>

组件模式

<component_modes>部分描述了组件可以习惯于<component_modes>部分可以包括一个或多个<component_mode>标记嵌套在其中。每个组件模式都包括相关接口、首选IP和启用依赖关系。

<component name="phy_onboard" display_name="Onboard PHY" type="chip"
sub_type="ethernet" major_group="Ethernet Configurations"
part_name="M88E1111_BAB1C000" vendor="Marvell" spec_url="www.marvell.com">
<description>PHY on the board</description>
<parameters>
<parameter name="devicetree_vendor" value="marvell"/>
</parameters>
<component_modes>
<component_mode name="mii" display_name="MII mode">
<description>To enable this mode jumpers need to be {J29_P1_P2 true}
{J30_P1_P2 true} {J64 false}</description>
<interfaces>
<interface name="mii" order="0"/>
<interface name="mdio_io" order="1" optional="true"/>
<interface name="phy_reset_out" order="2" optional="true"/>
</interfaces>
<preferred_ips>
<preferred_ip vendor="xilinx.com" library="ip" name="axi_ethernet"
order="0"/>
</preferred_ips>
</component_mode>
<component_mode name="gmii" display_name="GMII mode">
<description>To enable this mode jumpers need to be {J29_P1_P2 true}
{J30_P1_P2 true} {J64 false}</description>
<interfaces>
<interface name="gmii"/>
<interface name="mdio_io"/>
<interface name="phy_reset_out" optional="true"/>
</interfaces>
<preferred_ips>
<preferred_ip vendor="xilinx.com" library="ip" name="axi_ethernet"
order="0"/>
</preferred_ips>
</component_mode>
</component>

当在Board选项卡中选择组件的一种模式时,此中列出的所有接口模式自动添加到IP积分器中。模式中接口的顺序定义中的顺序接口应该连接到哪个。如果没有提到订单,接口将添加到IP中积分器,按列表中提到的顺序排列。对于<component_mode>下列出的<interfaces>,“optional=”属性有助于筛选当您连接Vivado IP集成器的Board选项卡中的接口时,IP的。默认值是“optional=false”,这意味着IP必须为所使用的模式列出此接口。如果“optional=true”指定模式不需要该接口。当“optional=true”时,任何IP它具有所需的接口,但没有可选的接口,也将列出用于所使用的组件模式。

<interfaces>
<interface name="mii" order="0"/>
<interface name="mdio_io" order="1" optional="true"/>
<interface name="phy_reset_out" order="2" optional="true"/>
</interfaces>

提示:<component_modes>中提到的首选IP的优先级高于中提到的IP单个<接口>。

<enablement_dependences>列出了启用特定跳线所需的跳线设置<component_mode>。有关要在板上使用的跳线设置的信息,基于在选定的组件模式下,在Vivado Design Suite中提供。

<enablement_dependencies>
<jumpers>
<jumper name="J29_P1_P2">true</jumper>
<jumper name="J30_P1_P2">true</jumper>
<jumper name="J64">false</jumper>
</jumpers>
</enablement_dependencies>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/418473.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据结构小项目----通讯录的实现(这里用链表实现) 超详细~~~~૮(˶ᵔ ᵕ ᵔ˶)ა

目录 Contact.h说明&#xff1a; 结构体与头文件的包含&#xff1a; ​编辑 函数在头文件的声明与定义&#xff1a; Contact.c中各个函数的实现&#xff1a; 1.检查链表中的数据是否满了&#xff0c;满了就扩容 2.链表的尾插 3.链表的删除 4.查找名字是否匹配 5.初始化通讯…

代码随想录二刷 |二叉树 | 将有序数组转换为二叉搜索树

代码随想录二刷 |二叉树 | 将有序数组转换为二叉搜索树 题目描述解题思路代码实现 题目描述 109.将有序数组转换为二叉搜索树 将一个按照升序排列的有序数组&#xff0c;转换为一棵高度平衡二叉搜索树。 本题中&#xff0c;一个高度平衡二叉树是指一个二叉树每个节点 的左右…

Zabbix 系统监控详解

1 介绍 1.1 摘要 本文深入浅出&#xff0c;切近实际运维应用&#xff0c;由 zabbix 3.4 版本入手&#xff0c;学习 zabbix 监控告警实现方式&#xff0c;由 zabbix 5.0 浅出实现快速部署、快速应用。本人从业多年&#xff0c;关注 zabbix 开源社区&#xff0c;以及 zabbix 官…

企业邮箱:定义、功能与优势一览

本文将为大家讲解&#xff1a;1、企业邮箱的定义&#xff1b;2、企业邮箱的主要功能特点&#xff1b;3、企业邮箱如何选择和部署&#xff1b;4、企业邮箱的运营与维护&#xff1b;5、企业邮箱在实际工作中的应用与挑战&#xff1b;6、2024年最新五大企业邮箱盘点 下面提到的功能…

【kali后续配置】Kali Linux 换源更新及配置SSH服务一文通(一键换源脚本)

在前面&#xff0c;我们已经下载并安装了Kali Linux 2023版本&#xff0c;因为一些事情的耽误&#xff0c;后面的一些操作教程没有发出来&#xff0c;今天给大家补上。 Kali Linux安装 前置准备&#xff1a; VMware安装kali Linux 镜像下载 kali源 官方源 deb http://htt…

基于JavaWeb+SSM+Vue基于微信小程序的网上商城系统的设计和实现

基于JavaWebSSMVue基于微信小程序的网上商城系统的设计和实现 滑到文末获取源码Lun文目录前言主要技术系统设计功能截图订阅经典源码专栏Java项目精品实战案例《500套》 源码获取 滑到文末获取源码 Lun文目录 目录 1系统概述 1 1.1 研究背景 1 1.2研究目的 1 1.3系统设计思想…

UE5 蓝图编辑美化学习

虚幻引擎中干净整洁蓝图的15个提示_哔哩哔哩_bilibili 1.双击线段成节点。 好用&#xff0c;爱用 2.用序列节点 好用&#xff0c;爱用 3.用枚举。 好用&#xff0c;能避免一些的拼写错误 4.对齐节点 两点一水平线 5.节点上下贴节点 &#xff08;以前不懂&#xff0c;现在经常…

Java 内存模型深度解析

优质博文&#xff1a;IT-BLOG-CN 一、并发编程模型的两个关键问题 【1】并发中常见的两个问题&#xff1a;线程之间如何通信及线程之间如何同步。通信是指线程之间以何种机制来交换信息。在命令式编程中&#xff0c;线程之间的通信机制有两种&#xff1a;内存共享和消息传递&…

Python利用Excel读取和存储测试数据完成接口自动化教程

http_request2.py用于发起http请求 #读取多条测试用例#1、导入requests模块import requests#从 class_12_19.do_excel1导入read_data函数from do_excel2 import read_datafrom do_excel2 import write_datafrom do_excel2 import count_case#定义http请求函数COOKIENonedef ht…

深入理解Redis数据结构

目录 Redis的单线程 Redis单线程快的原因 Redis 单线程处理高并发客户端连接 Redis数据结构 字符串&#xff08;String&#xff09; 常用方法 数据结构 哈希表&#xff08;Hash&#xff09; 常用方法 数据结构 列表&#xff08;List&#xff09; 常用方法 数据结构…

微信小程序之WXML 模板语法之数据绑定、事件绑定、wx:if和列表渲染

学习的最大理由是想摆脱平庸&#xff0c;早一天就多一份人生的精彩&#xff1b;迟一天就多一天平庸的困扰。各位小伙伴&#xff0c;如果您&#xff1a; 想系统/深入学习某技术知识点… 一个人摸索学习很难坚持&#xff0c;想组团高效学习… 想写博客但无从下手&#xff0c;急需…

Java深度解析:类的生命周期与类加载过程

文章目录 加载阶段连接阶段-验证连接阶段-准备连接阶段-解析初始化阶段使用卸载 最近在学习Java 虚拟机&#xff0c;学到了类的声明周期&#xff0c;有些比较难理解的点&#xff0c;特地来总结一下。 类的生命周期从大体上来看的话&#xff0c;有五个阶段&#xff0c;分别是加载…