vivado 手动布线

手动路由

手动路由允许您为网络选择特定的路由资源。这给了你对信号将要采用的路由路径的完全控制。手动路由不调用route_design。路线在路线数据库中直接更新。当您想精确控制网络的延迟时,可能需要使用手动路由。对于例如,假设有一个源同步接口,您希望在其中最小化路由延迟设备中捕获寄存器的变化。为此,您可以指定LOC和BEL对寄存器和I/O的约束,然后精确控制从IOB到通过手动路由网络来注册。手动路由需要设备互连体系结构的详细知识。这是最好的用于有限数量的信号和短连接。

手动路由规则

在手动布线过程中,请遵守以下规则:

•驾驶员和负载需要LOC约束和BEL约束。

•手动路由期间不允许分支,但您可以通过启动从分支点开始的新手动路线。

•LUT负载的引脚必须锁定。

•您必须路由到尚未连接到驱动程序的负载。

•只允许完整的连接。不允许使用天线。

•允许与现有的未固定路由网络重叠。手动后运行route_design路由以解决由于重叠网络而引起的任何冲突。

进入分配路由模式

要进入“分配路由”模式,请执行以下操作:

1.打开设备窗口。

2.确保已选中“设备”窗口中的“路由资源”。

3.在设备选项层中启用未路由网络和部分路由网络的层视图,如下图所示。

4.选择需要路由的网络。

•未布线的网由红色飞线表示。

•部分路由的网络以黄色突出显示。

5.右键单击并选择“输入指定路由模式”。

将打开“指定布管模式:目标称重传感器接点”对话框。

6.选择要布线到的测压元件接点(可选)。

7.单击“确定”。

注意:要在“设备”窗口中显示部分布线或未布线的网络,请确保这些层在设备选项菜单中选择,如下图所示。

您现在处于手动路由模式。路由分配窗口,如下所示图,显示在“设备”窗口旁边。

“路由分配”窗口分为“选项”、“已分配的节点”和“邻居”节点部分:

•选项部分,如下图所示,控制路由的设置分配窗口。

○ “跃点数”值允许您指定可以

分配给相邻节点。这也会影响显示的“邻居节点”。如果数字跃点数大于1,则只有路由的最后一个节点显示在邻居节点中部分

○ “邻居的最大数量”值允许您限制邻居的数量显示在“邻居节点”部分中的节点。只有路由的最后一个节点显示。

○ 允许与未固定网络重叠开关控制分配的路由是否重叠允许使用现有的未固定路由。任何重叠都需要通过运行固定路由分配后的route_design命令。默认情况下,“选项”区域处于隐藏状态。要显示“选项”部分,请单击“显示”。

•“已分配的节点”部分显示已分配路由的节点。每个分配的节点显示为单独的行项目。

在“设备”窗口中,具有指定路由的节点以橙色突出显示。任何间隙在分配的节点部分中显示为GAP行项目。到自动布线间隙:

○ 在“分配的节点”部分中右键单击网络间隙。

○ 从上下文相关菜单中选择“自动布线”。

要指定下一个管段,请在间隙之前或之后或最后一个间隙之前选择指定的节点已分配节点部分中的已分配节点。

•“邻居节点”部分(如以下部分所示)显示允许的邻居节点,高亮显示当前选定的节点(白色)。并突出显示允许的邻居设备窗口中的节点(白色虚线)。

分配路由节点

决定为下一个管段指定哪个邻居节点后,可以:

•右键单击“邻居节点”部分中的节点,然后选择“指定节点”。

•双击“邻居节点”部分中的节点。

•单击设备视图中的节点。

将路由指定给邻居节点后,该节点将显示在指定的节点中部分,并在设备视图中以橙色突出显示。分配节点,直到达到负载,或者直到准备好分配具有间隙的路由。

取消分配路由节点

要取消分配节点,请执行以下操作:

1.转到“路由分配”窗口的“已分配节点”窗格。

2.选择要取消分配的节点。

3.右键单击并选择“删除”。

节点将从分配中删除。

退出分配路由模式

要完成路由分配并退出“分配路由模式”,请单击“分配路由”按钮在“路由分配”窗口中。

将显示“分配路由”对话框,如下图所示,允许您在提交分配的节点之前对其进行验证。

取消分配路由模式

如果您还没有准备好提交路由分配,您可以取消分配使用以下方法之一的路由模式:

•单击路由分配窗口中的退出模式,或

•右键单击设备窗口,然后选择退出分配路由模式。

当路线被确定时,驾驶员和负载BEL和LOC也被固定。

验证分配的路线

•分配的路由在设备视图中显示为绿色虚线。

•部分分配的路线在设备视图中显示为黄色虚线。

下图显示了已分配和部分分配路线的示例。

分支

将路由分配给具有多个负载的网络时,必须按照以下方式路由网络步骤:

1.按照进入分配路由模式中提供的步骤,将路由分配给一个负载。

2.将路由分配给网络的所有分支。

下图显示了一个网络的示例,该网络已将路由分配给一个负载和需要路由到两个附加负载。

为分支指定路由

要将路由分配给分支,请执行以下操作:

1.转到设备窗口。

2.选择要路由的网络。

3.右键单击并选择“输入指定路由模式”。

将打开“指定布管模式:目标称重传感器接点”窗口,显示所有载荷。

注意:已分配路由的负载在的“已路由”列中有一个复选标记桌子

4.选择要路由到的负载。

5.单击〖确定〗按钮,弹出“指定路由模式:分支启动”对话框,如下图所示,打开。

6.选择要从中分支选定负载的路由的节点。

7.单击“确定”。

8.按照“分配路由节点”中所示的步骤进行操作。

锁定单元输入并在LUT上添加DONT_TOUCH约束荷载您必须确保路由到的LUT负载的输入不会被交换以及那些LUT上的其他输入。为此,请锁定LUT负载的单元格输入,如下所示:

1.打开设备窗口。

2.选择负载LUT。

3.单击鼠标右键,然后选择“锁定单元输入接点”。等效的Tcl命令是:

set_property LOCK_PINS {NAME:BEL_PIN} <cell object>

为了防止Placer中的物理合成中的引脚交换,DONT_TOUCH约束需要被应用于LUT单元。Tcl命令是:

set_property DONT_TOUCH TRUE<单元格对象>

对于具有固定路由和多个LUT负载的网络,可以使用以下Tcl脚本锁定所有LUT负载的单元输入。

set fixed_nets [get_nets -hierarchical -filter IS_ROUTE_FIXED] foreach
LUT_load_pin [get_pins -leaf -of [get_nets $fixed_nets] \
-filter DIRECTION==IN&&REF_NAME=~LUT*] {
set pin [get_property REF_PIN_NAME $LUT_load_pin]
set BEL_pin [file tail [get_bel_pins -of [get_pins $LUT_load_pin]]] set
LUT_name [get_property PARENT_CELL $LUT_load_pin]
# need to handle condition when LOCK_pins property already exists on LUT
set existing_LOCK_PIN [get_property LOCK_PINS [get_cells $LUT_name]]
if { $existing_LOCK_PIN ne "" } {
reset_property LOCK_PINS [get_cells $LUT_name]
}
set_property LOCK_PINS \
[lsort -unique [concat $existing_LOCK_PIN $pin:$BEL_pin]] [get_cells
$LUT_name]
}

定向路由约束

固定路由分配作为“定向路由字符串”存储在路由数据库中。在一个定向路由字符串,分支由嵌套的{大括号}表示。例如,考虑下图中描述的路线一个路由,各种元素如下表所示(定向路由限制)。

该路由的定向路由字符串的简化版本如下:

{A B { D E T } C { F G H I M N } {O P Q} R J K L S }
这条路线在B和C分支。这条路线的主干线是A B C R J K L S。

使用find_routing_path命令创建定向路由约束

find_routing_path Tcl命令可用于创建定向路由约束。你然后可以将创建的约束分配给网络的FIXED_ROUTE属性以锁定路由。对于部分路由的网络,可以找到与网络直接相关联的节点。请参阅Vivado Design Suite属性参考指南(UG912),了解有关关系的更多信息在这些对象之间。find_routing_path命令返回以下其中一个:

•表示从起点到终点的路线路径的节点列表。

•如果命令运行但没有结果,则找不到路径。

•如果命令无法运行,则会出现错误。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

面试题--3.18

1. http与https的区别&#xff0c;以及https的认证过程及加密算法 &#xff1f; 区别&#xff1a; https协议需要到CA申请证书&#xff0c;一般免费证书较少&#xff0c;因而需要一定费用。 http是超文本传输协议&#xff0c;信息是明文传输&#xff0c;https则是具有安全性…

大型语言模型:技术回顾

公众号&#xff1a;Halo 咯咯&#xff0c;欢迎关注~ 简介 很难说自然语言处理&#xff08;NLP&#xff09;的旅程是什么时候开始的。根据维基百科的文章《自然语言处理的历史》[1]&#xff0c;它可能始于 17 世纪&#xff0c;当时莱布尼茨和笛卡尔试图理解不同语言中单词之间的…

让人担心的软件生态

shigen坚持更新文章的博客写手&#xff0c;擅长Java、python、vue、shell等编程语言和各种应用程序、脚本的开发。记录成长&#xff0c;分享认知&#xff0c;留住感动。 个人IP&#xff1a;shigen 其实很久之前shigen就想写这样的一篇文章&#xff0c;思考现在的软件生态和我们…

c语言数据结构(9)——插入排序、希尔排序

欢迎来到博主的专栏——C语言数据结构 博主ID&#xff1a;代码小豪 文章目录 排序插入排序希尔排序 排序 现在有N个数据的序列&#xff0c;其对应的序列号为[r1 ,r2 ……rn];将该序列对应的数据[k1 ,k2 ……kn]排成满足递减或递减的序列的操作称为排序 插入排序 玩过斗地主…

tomcat配置静态资源后无法正常访问

目录 一、场景二、配置三、访问异常四、排查五、原因六、解决 一、场景 1、将前端文件存在到指定目录 2、在tomcat配置静态资源 3、配置后无法正常访问到前端文件 二、配置 1、tomcat配置 2、静态资源 三、访问异常 四、排查 可以ping通&#xff0c;但是访问不了3080端口 …

探究WordPress受欢迎的原因及其org和com的区别

在当今互联网时代&#xff0c;WordPress已经成为了建立网站的首选工具之一&#xff0c;其受欢迎程度远远超出了其他竞争对手。那么&#xff0c;为什么WordPress如此受欢迎呢&#xff1f;让我们一起探究一下。 首先&#xff0c;WordPress是一个开源项目&#xff0c;这意味着任何…

【UEditorPlus】后端配置项没有正常加载,上传插件不能正常使用

解决办法&#xff1a; 1、找到UEditorPlus的根目录&#xff0c;修改 ueditor.all.js 文件 搜索&#xff1a;isJsonp utils.isCrossDomainUrl(configUrl); 更改为&#xff1a;isJsonp false; 2、重新运行前端即可正常使用 如果出现依旧不行&#xff0c;请关闭服务&#xff…

如何选择适合自己的办公空间

说到办公地点的选择&#xff0c;其实就跟挑衣服似的&#xff0c;得看场合、看需求&#xff0c;还得看个人喜好。有的人喜欢自由自在&#xff0c;有的人则需要稳定和私密。所以&#xff0c;咱们来看看哪些朋友更适合哪种办公环境。 适合共享办公室的&#xff1a; 刚起步的小公司…

教师的晋升通道:走向专业成长的阶梯

教师是一项需要不断学习、不断进步的职业。随着教育改革的不断深入&#xff0c;教师的晋升通道也越来越受到关注。本文将从教师的晋升通道、晋升标准和未来发展方向等方面进行探讨&#xff0c;旨在帮助广大教师了解自己的职业成长路径&#xff0c;促进个人发展。 一、教师的晋升…

rtph264depay插件分析笔记

1、rtp协议头 2、rtp可以基于TCP或者UDP 其中基于TCP需要加4个字节的RTP标志 3、rtph264depay定义解析函数gst_rtp_h264_depay_process&#xff0c;通过RFC 3984文档实现。 static void gst_rtp_h264_depay_class_init (GstRtpH264DepayClass * klass) {GObjectClass *gobject…

RTSP应用:实现视频流的实时推送

在实现实时视频流推送的项目中&#xff0c;RTSP&#xff08;Real Time Streaming Protocol&#xff09;协议扮演着核心角色。本文将指导你通过安装FFmpeg软件&#xff0c;下载并编译live555&#xff0c;以及配置ffmpeg进行视频流推送&#xff0c;来实现一个基本的RTSP流媒体服务…

WIN使用LPD协议来共享打印机含统信UOS

打开“控制面板”&#xff0c;“程序和功能”&#xff0c;“启动或关闭Windows功能”&#xff0c;下拉找到“打印和文件服务”&#xff0c;勾选“LPD打印服务”和“LPR端口监视器”。确定之后重启电脑&#xff0c;共享主机和其它需要添加共享打印机的都开启功能和重启。 一、启…

SpringMVC设置全局异常处理器

文章目录 背景分析使用ControllerAdvice&#xff08;RestControllerAdvice&#xff09;ExceptionHandler实现全局异常全局异常处理-多个处理器匹配顺序存在一个类中存在不同的类中 对于过滤器和拦截器中的异常&#xff0c;有两种思路可以考虑 背景 在项目中我们有需求做一个全…

定时器的原理和应用

#include<reg51.h> unsigned char s[]{0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F}; unsigned char count0,num0; void inittimer() {TMOD0x01;//0000 0001TH0(65536-50000)/256; //定时50ms50000us 2562^8 初值向右边移动8位TL0(65536-50000)%256;ET01;//开启定…

TouchGFX之Button

TouchGFX中的按钮是一种感应触控事件的控件&#xff0c;能够在按钮被按下/释放时发送回调 代码 #ifndef TOUCHGFX_ABSTRACTBUTTON_HPP #define TOUCHGFX_ABSTRACTBUTTON_HPP #include <touchgfx/Callback.hpp> #include <touchgfx/events/ClickEvent.hpp> #includ…

面试题目--3.19

1.foo()和foo()之间有什么区别&#xff1f; 代表所有的warning忽略 2.什么是csrf攻击&#xff1f;如何防范&#xff1f; csrf&#xff0c;跨站请求伪造&#xff0c;攻击方伪装用户身份发送请求从而窃取信息或者破坏系统。 基本原理&#xff1a;用户访问a网站登录并生成了coo…

opencv 十九 python下实现多线程间rtsp直播流的复用

在多线程拉流的任务场景中&#xff0c;有时需要将一个rtsp拉取多次&#xff0c;每重新打开一次rtsp视频流就要多消耗一次带宽&#xff0c;为此基于类的静态对象实现rtsp视频流的复用。 1、实现代码 import threading import cv2,time #接收摄影机串流影像&#xff0c;采用多线…

论文《Exploring to Prompt for Vision-Language Models》阅读

论文《Exploring to Prompt for Vision-Language Models》阅读 论文概况论文动机&#xff08;Intro&#xff09;MethodologyPreliminaryCoOp[CLASS]位置Context 是否跨 class 共享表示和训练 ExperimentsOverall ComparisonDomain GeneralizationContext Length (M) 和 backbon…

如何配置本地ssh连接远程Linux服务器

1.条件 本地操作系统Ubuntu远程服务器&#xff08;Linux都可以&#xff09; 本地如果是Window,其实也一样&#xff0c;但是需要先下载ssh和putty工具&#xff0c;然后操作步骤是一样的 2.生成ssh公私钥对 # 在本地重新生成SSH公私钥对非常简单&#xff0c;在你的命令行终端&a…

vscode从安装到卸载

&#x1f308;个人主页&#xff1a;Rookie Maker &#x1f3c6;&#x1f3c6;关注博主&#xff0c;随时获取更多关于IT的优质内容&#xff01;&#x1f3c6;&#x1f3c6; &#x1f600;欢迎来到小田代码世界~ &#x1f601; 喜欢的小伙伴记得一键三连哦 ૮(˶ᵔ ᵕ ᵔ˶)ა …
最新文章