vivado CDC约束-约束总线偏移

news2025/1/19 8:28:02

CDC限制

关于CDC约束

时钟域交叉(CDC)约束适用于具有不同启动和捕获时钟。根据发布和捕获时钟关系以及在CDC路径上设置的定时异常。例如同步时钟之间但被错误路径约束覆盖的CDC路径不定时,并且因此被视为异步CDN。异步CDC路径可以是安全的,也可以是不安全的。安全和不安全的术语异步CDC路径与用于时钟间时序分析的术语不同请参见report_clock_interaction)。异步CDC路径在使用同步电路,以防止捕获顺序单元的亚稳态。有关更多信息,请参阅Vivado Design Suite用户指南中的此链接:设计分析和闭合技术(UG906)。

使用set_false_pathset_clock_groups约束,或通过使用set_max_delay进行部分分析-仅数据路径。此外,多位CDC路径捕获时间分布可能受到限制使用set_bus_skew约束。

约束总线倾斜

关于母线倾斜约束总线偏斜约束用于设置几个之间的最大偏斜要求异步CDC路径。总线偏斜不是与定时相关联的传统时钟偏斜路径相反,它对应于所有路径上的最大捕获时间差由相同的set_bus_skew约束覆盖。总线偏斜要求适用于两个Fast和慢速拐角,但不会跨拐角进行分析。

总线偏斜约束的目的是限制可以启动的源时钟边沿的数量数据,并由单个目的地时钟边沿捕获。容忍度取决于疾病控制与预防中心用于受约束路径的同步方案。通常使用总线偏斜约束对于以下CDC拓扑结构:

•格雷码总线传输,如异步FIFO

•使用CE、MUX或MUX Hold电路实现的多位CDC

•配置寄存器

尽管set_bus_skew命令不会阻止在安全定时的同步CDC,不需要这样的约束。设置和保持检查已经确保了在两个安全定时的同步CDC路径之间的安全传输。总线偏斜约束的CDC场景为:

总线偏斜约束的CDC场景为:

•覆盖了set_clock_groups的异步CDC

•异步CDC完全覆盖了set_false_path和/或set_max_delay-仅数据路径

•覆盖有set_false_path和/或set_max_delay的同步CDC路径-仅数据路径

总线偏斜约束不是定时例外;相反,这是一个时间断言。因此,它不干扰定时异常(set_clock_group、set_false_path、set_clock_group),set_max_delay、set_max_delay-datapath_only和set_multipcycle_path)和他们的优先权。总线偏斜约束仅通过route_design命令进行优化。报告set_bus_skew约束,使用命令行中的report_bus_skew命令或报告 → 时间安排 → 从GUI报告总线倾斜。未报告总线偏斜约束在Timing Summary报告(report_Timing_Summary)中。

set_bus_skew命令的语法

带有基本选项的set_bus_skew命令的语法为:

set_bus_skew [-from <args>] [-to <args>] [-through <args>] <value>

-from选项的对象列表应该是有效起点的列表。的有效起点set_bus_skew是顺序元件的时钟引脚,如寄存器或RAM,或单元它本身set_bus_skew不支持输入(或inout)端口。-to选项的节点列表应该是有效端点的列表。的有效终结点set_bus_skew是顺序单元格或单元格本身的数据引脚。输出(或输入输出)端口不是由set_bus_skew支持。

through选项的节点列表应该是有效引脚或网络的列表。总线偏斜值必须现实合理。AMD建议使用更大的值超过源时钟和目标时钟的最小周期的一半。的建议值总线偏斜还取决于CDC拓扑结构,如以下示例所示。

set_bus_skew示例一

在本例中,CDC是握手机制的一部分。源时钟域生成当数据可用于采样时发送信号。目标时钟域使用4阶段用于发送信号的同步器。在4级同步器之后,信号驱动时钟启用CDC目标寄存器的引脚。在这种时钟使能控制CDC结构中总线偏斜必须根据CE路径上的级数进行调整,因为它代表数据有效的目标时钟周期数。

如果源时钟周期为5ns,而目标时钟周期为2.5ns,则总线在CDC路径应设置为10 ns(4×2.5 ns)。

set_bus_skew -from [get_cells src_hsdata_ff_reg*] -to [get_cells
dest_hsdata_ff_reg*] 10.000
set_max_delay -datapath_only -from [get_cells src_hsdata_ff_reg*] -to
[get_cells dest_hsdata_ff_reg*] 10.000

set_bus_skew示例二

在这个例子中,疾病控制与预防中心在一辆灰色编码的公交车上。系统必须确保只有一个目的时钟域同时捕获灰度编码总线的转变。如果源时钟周期为5ns,而目标时钟周期为2.5ns,则总线在CDC路径应设置为2.5 ns(目标时钟周期)。

set_bus_skew -from [get_cells src_gray_ff_reg*] -to [get_cells
{dest_graysync_ff_reg[0]*}] 2.500
set_max_delay -datapath_only -from [get_cells src_gray_ff_reg*] -to
[get_cells
{dest_graysync_ff_reg[0]*}] 5.000

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CentOS7安装部署Zookeeper

文章目录 CentOS7安装部署Zookeeper一、前言1.简介2.架构3.集群角色4.特点5.环境 二、正文1.部署服务器2.基础环境1&#xff09;主机名2&#xff09;Hosts文件3&#xff09;关闭防火墙4&#xff09;JDK 安装部署 3.单机部署1&#xff09;下载和解压2&#xff09;配置文件3&…

Vue: 事件修饰符, 键盘事件, 鼠标事件,计算属性

目录 事件修饰符 阻止默认事件 阻止冒泡 允许触发一次 捕获模式 self passive 键盘事件 keyup & keydown 按键别名 注意tab 注意系统按键 自定义按键 鼠标事件 简介 鼠标焦点事件 计算属性 差值语法实现 methods实现 computed实现 get() set() 总…

基于AM62x的ARM+FPGA+Codesys低成本软PLC解决方案

GPMC并口简介 GPMC(General Purpose Memory Controller)是TI处理器特有的通用存储器控制器接口&#xff0c;支持8/16bit数据位宽&#xff0c;支持128MB访问空间&#xff0c;最高时钟速率133MHz。GPMC是AM62x、AM64x、AM437x、AM335x、AM57x等处理器专用于与外部存储器设备的接口…

IP地理位置定位技术基本原理

IP地理位置定位技术的基本原理是基于IP地址的特性。每个IP地址在网络中都有一个与之对应的地理位置信息&#xff0c;这是通过IP地址数据库来确定的。这个数据库由ISP&#xff08;Internet Service Provider&#xff09;或其它一些机构维护&#xff0c;其中包含了每个IP地址的地…

openGauss学习笔记-179 openGauss 数据库运维-逻辑复制-发布订阅

文章目录 openGauss学习笔记-179 openGauss 数据库运维-逻辑复制-发布订阅179.1 发布179.2 订阅179.3 冲突处理179.4 限制179.5 架构179.6 监控179.7 安全性179.8 配置设置179.9 快速设置 openGauss学习笔记-179 openGauss 数据库运维-逻辑复制-发布订阅 发布和订阅基于逻辑复…

Java核心知识点1-java和c++区别、隐式和显示类型转换

java和c区别 java通过虚拟机实现跨平台特性&#xff0c;但c依赖于特定的平台。java没有指针&#xff0c;它的引用可以理解为安全指针&#xff0c;而c和c一样具有指针。java支持自动垃圾回收&#xff0c;而c需要手动回收。java不支持多重继承&#xff0c;只能通过实现多个接口来…

Java集合/泛型篇----第一篇

系列文章目录 文章目录 系列文章目录前言一、ArrayList和linkedList的区别二、HashMap和HashTable的区别三、Collection包结构,与Collections的区别四、泛型常用特点前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站…

swing快速入门(三十二)消息对话框

注释很详细&#xff0c;直接上代码 上一篇 新增内容 1.自定义对话框前列图标 2.消息对话框的若干种形式 package swing21_30;import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent;public class swing_test_30 {// 定义一个JFrameJFrame jFrame n…

自动驾驶学习笔记(二十三)——车辆控制模型

#Apollo开发者# 学习课程的传送门如下&#xff0c;当您也准备学习自动驾驶时&#xff0c;可以和我一同前往&#xff1a; 《自动驾驶新人之旅》免费课程—> 传送门 《Apollo开放平台9.0专项技术公开课》免费报名—>传送门 文章目录 前言 运动学模型 动力学模型 总结…

2023年03月20日_对李开复3月20日线下媒体会的解读

最近这个AI大模型 因为GPT4.0 ChatGPT 文心一言等等这些事情呢 一下子就被推到了风口浪尖 我们也做了来介绍相关的进展 国内呢也不断有一些大佬开始下场 包括王慧文、张朝阳、李彦宏什么的 都开始说自己要搞AI大模型 就在昨天呢 创新工厂的董事长兼CEO李开复 也发朋友…

oracle-存储结构

文件包括 控制文件.ctl、数据文件.dbf、日志文件.log这三类放在存储上。 参数文件&#xff1a;空间的划分&#xff0c;进程的选用&#xff08;.ora&#xff09; oracle启动的时候需要读一下&#xff0c;数据库启动后&#xff0c;参数文件并不关闭&#xff0c;但即使文件丢了&a…

IntelliJ IDEA常用快捷键

【1】创建内容&#xff08;新建&#xff09;&#xff1a;altinsert 【2】main方法&#xff1a;psvm 【3】输出语句&#xff1a;sout 【4】复制行&#xff1a;ctrld 【5】删除行&#xff1a;ctrly&#xff08;很多编辑器ctrly是前进操作&#xff0c;如果选择 Delete Line&…

APP端网络测试与弱网模拟!

当前APP网络环境比较复杂&#xff0c;网络制式有2G、3G、4G网络&#xff0c;还有越来越多的公共Wi-Fi。不同的网络环境和网络制式的差异&#xff0c;都会对用户使用app造成一定影响。另外&#xff0c;当前app使用场景多变&#xff0c;如进地铁、上公交、进电梯等&#xff0c;使…

【Maven】报错合集

问题1&#xff1a;com.github.everit-org.json-schema:org.everit.json.schema:pom:1.12.1 failed to transfer from http://localhost:8081/repository/maven-public/ during a previous attempt 发现原来是maven的settings.xml文件配置出现了问题。首先是之前maven进阶学习时…

如何解决msvcp110.dll丢失问题,多种解决方法分享

在计算机使用过程中&#xff0c;我们经常会遇到一些错误提示&#xff0c;其中之一就是“msvcp110.dll丢失”&#xff0c;msvcp110.dll是Microsoft Visual C 2012 Redistributable的一个组件&#xff0c;它提供了许多用于运行程序的函数和类库。当这个文件丢失或损坏时&#xff…

大一c语言期末复习题

第11题&#xff1a; 答案&#xff1a; #include<stdio.h> #include<string.h> int main() {char a[100];char b[100];int n 0, i 0, j 0;fgets(a, sizeof(a), stdin); //输入一串字符存给asize_t len1 strlen(a); //一开始该字符串的长度if (len1 &g…

【Android12】Android Framework系列---tombstone墓碑生成机制

tombstone墓碑生成机制 Android中程序在运行时会遇到各种各样的问题&#xff0c;相应的就会产生各种异常信号&#xff0c;比如常见的异常信号 Singal 11&#xff1a;Segmentation fault表示无效的地址进行了操作&#xff0c;比如内存越界、空指针调用等。 Android中在进程(主要…

华为hcia之ipv6实验手册

R3: dhcp enable ipv6 dhcpv6 pool test address prefix 2000:23::/64 excluded-address 2000:23::2 dns-server 2000:23::2 interface GigabitEthernet0/0/0 ipv6 enable ipv6 address 2000:12::2/64 ipv6 address auto link-local undo ipv6 nd ra halt //无状态配置 inter…

基于Java网上点餐系统设计与实现

博主介绍&#xff1a; ✌至今服务客户已经1000、专注于Java技术领域、项目定制、技术答疑、开发工具、毕业项目实战 ✌ &#x1f345; 文末获取源码联系 &#x1f345; &#x1f447;&#x1f3fb; 精彩专栏 推荐订阅 &#x1f447;&#x1f3fb; 不然下次找不到 Java项目精品实…

Jmeter吞吐量控制器总结

吞吐量控制器(Throughput Controller) 场景&#xff1a; 在同一个线程组里, 有10个并发, 7个做A业务, 3个做B业务,要模拟这种场景,可以通过吞吐量模拟器来实现。 添加吞吐量控制器 用法1: Percent Executions 在一个线程组内分别建立两个吞吐量控制器, 分别放业务A和业务B …