0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

多重驱动是什么?为什么需要解决

汽车玩家 来源:赛灵思 作者:赛灵思 2020-03-08 17:31 次阅读

多重驱动定义:

具有两个或更多个源的网络信号被称为多重驱动场景。

为何需要解决多重驱动场景?

多重驱动的存在属于设计错误,最终值可能难以确定。

因此综合工具会针对具有多重驱动的网络或信号发出错误或警告。在 Vivado 综合工具中将标记“严重警告 (Critical Warning)”。如果不加以解决,那么“opt_design”会标记“错误 (Error)”。

Vivado 报告多重驱动场景的方式如下:

Vivado 会在综合阶段识别具有多重驱动的网络或信号。

它会针对设计中具有多重驱动的网络标记 Critical Warning (SYNTH 8-6859)。

它还会打印一个表,其中包含设计中多重驱动网络的数量。

例如:

示例 1:多重驱动样本

此处 out1 是在顺序块 B1 和 B2 中驱动的,这就导致出现了多重驱动状况。

同样,由组合逻辑和/或顺序逻辑驱动的连线也会导致出现多重驱动场景。

对于总线,由多个源驱动的任意比特都会导致出现多重驱动场景。

注:对于具有不同源的专用比特,Vivado 不会标记多重驱动。

示例 2:多重驱动、三态和层级注意事项

具有三态多重驱动的网络不被视作为多重驱动状况。

通常,任意给定时间点只能有单一源处于活动状态。

子模块中存在的三态驱动将被提取出来并划归最高层级。

示例 3:其中一个驱动属于用户定义的常量的多重驱动场景

在此示例中,其中一个网络驱动为常量。

在此类情况下,该工具会遵循常量驱动运行而忽略另一个驱动。

该工具仍然会发出清晰的 Critical Warning。

示例 4:VIO/ILA 标记调试和多重驱动注意事项

在 Vivado 中,如果不同的总线比特由不同子模块驱动,则不会将其视为由多个源驱动。由于每个比特都有自己的专用驱动,因此不存在争用。

但在此示例中,如果应用以下任一层级限制或类似限制,Vivado 就会将其视作为多重驱动状况。

在子模块上应用“keep_hierarchy”

在子模块上应用“don’t_touch”属性

在子模块的任意端口上应用“mark_debug”属性

将子模块的任意端口连接到 ILA/VIO 调试核

多重驱动是什么?为什么需要解决

发生此状况的原因是用户未严格遵循相关准则来保持子模块例化的边界。

实例 U1 仅驱动 out1[0],out1[1] 连接到 GND。

实例 U2 仅驱动 out1[1],out1[0] 连接到 GND。

由于 out1 的每个比特都具有两个驱动,因此 Vivado 将此视作为多重驱动状况。

调试方法:

有时根据生成的消息难以确定多重驱动的准确名称。

当驱动适用于工具生成的网络而不是用户定义的网络时,就会发生此类状况。

您需要通过搜索具有多个驱动的网络来查找多重驱动网络的驱动。

您可以使用以下 Tcl 命令:

get_nets -hierarchical -top_net_of_hierarchical_group -filter { DRIVER_COUNT > 1 }

多重驱动是什么?为什么需要解决

并且有时最好运行 opt_design,因为只要综合中存在多重驱动,“opt_design”就会发出 Errors 标记。但由于设计经过进一步优化,并且当前所有块(DCP、调试模块)都可用,因此 opt 中的多重驱动错误可能更精确。

受篇幅所限,本文并未涵盖所有场景。以下列出部分其他场景,将来可根据需要进一步详细讲解。

非对称 3D RAM:在 TDP 3D RAM 中,不受支持的模板可能导致出现多重驱动场景。

接口 modport:接口中已定义信号但未将其定义为 modport,此类信号将被作为 inout 来处理。这可能会导致出现多重驱动场景。

总结:

至此,相信您应该已经了解了可能发生多重驱动的各种场景,并且已清楚认识到需要修改 RTL 才能继续运行流程。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Vivado
    +关注

    关注

    19

    文章

    812

    浏览量

    66462
收藏 人收藏

    评论

    相关推荐

    开发触摸屏驱动需要考虑哪些因素

    摸屏驱动板是现代电子设备中不可或缺的一部分,它负责将用户的触摸操作转化为设备可以理解的信号。触摸屏驱动需要通过多个关键步骤来实现其功能,以下是对这些步骤的详细介绍。
    的头像 发表于 10-29 14:05 321次阅读

    PCM2912A是否需要驱动

    各位高手,请帮忙回复一下下面的问题: 1.PCM2912A是否需要驱动,的应用介绍里面说明支持XP英文,IOS,VIsta系统,但没说支持WIN7,那么是否支持XP中文和WIN7系统呢? 2.目前在XP中文上显示无法识别,是否与手册上面没说支持中文版有关?
    发表于 10-29 06:59

    lvds接口需要驱动

    LVDS(Low-Voltage Differential Signaling,低电压差分信号)接口确实需要驱动,但其驱动方式与其他常见的接口有所不同。 一、LVDS接口概述 LVDS接口是一种
    的头像 发表于 10-06 15:06 799次阅读
    lvds接口<b class='flag-5'>需要</b><b class='flag-5'>驱动</b>吗

    超声波风速传感器的换能器需要多大电容驱动

    传感器的换能器。 关于换能器需要多大电容驱动的问题,这取决于换能器的具体参数和设计要求。以下是一些关键因素: 换能器的电容量 :换能器本身具有一定的电容量,这是由其材料和尺寸决定的。在设计驱动电路时,
    的头像 发表于 09-07 11:29 378次阅读

    一般继电器需要多少电流才能驱动

    一般继电器所需的驱动电流会根据其型号、规格和额定工作电压等因素有所不同。通常,继电器需要一定的电流来驱动其线圈产生磁场,从而使触点闭合或断开。以下是对继电器驱动电流的一般性说明: 一、
    的头像 发表于 09-05 15:18 2775次阅读

    基于多重化整流器的变频器系统设计

    为满足大功率试验系统的应用需求,开展基于多重化整流的变频器研制。在分析变频器总体原理的基础上,阐述了多重化整流器的原理,重点研究了三电平逆变器控制系统,最后通过半实物仿真试验验证了三电平控制算法和控制系统的可行性,变频器系统实现逆变输出,初步完成变频器的研制。
    的头像 发表于 08-13 17:18 163次阅读
    基于<b class='flag-5'>多重</b>化整流器的变频器系统设计

    NN325-Q1多重感应触摸管理器数据表

    电子发烧友网站提供《NN325-Q1多重感应触摸管理器数据表.pdf》资料免费下载
    发表于 08-06 09:42 0次下载
    NN325-Q1<b class='flag-5'>多重</b>感应触摸管理器数据表

    构造多重化整流电路的目的是什么

    提高效率 :多重化整流电路可以提高整流器的效率。通过将多个整流器并联,可以减少每个整流器的负载,从而降低损耗。 减少谐波 :在电力系统中,谐波会导致设备效率降低和热损失增加。多重化整流电路可以有效地
    的头像 发表于 07-22 17:23 1014次阅读

    伺服驱动需要设置哪些参数

    伺服驱动器是一种用于控制伺服电机的设备,它可以接收来自控制器的指令,并将指令转换为电机的转速、位置和扭矩等参数。为了使伺服驱动器正常工作,需要驱动器进行一些参数设置。以下是一些常见的
    的头像 发表于 07-13 09:52 3498次阅读

    逆变电路多重化的目的是什么?如何实现?

    问题严重影响了逆变电路的性能。为了解决这些问题,人们提出了逆变电路多重化技术。本文将介绍逆变电路多重化的目的、原理、实现方法以及应用领域。 逆变电路多重化的目的 2.1 提高输出波形质量 逆变电路的输出波形质量是衡量其性能
    的头像 发表于 07-05 11:21 1580次阅读

    直线电机需不需要驱动器以及驱动器的作用

    ,两类电机均由动子和定子组成的,直线电机本身是不会运动的,需要通过驱动器控制其运动。 驱动器的主要功能是将电源提供的电能转化为直线电机所需的电流和电压信号,从而控制直线电机的运动。直线电机驱动
    的头像 发表于 07-03 08:21 819次阅读
    直线电机需不<b class='flag-5'>需要</b>配<b class='flag-5'>驱动</b>器以及<b class='flag-5'>驱动</b>器的作用

    FX3的多重DMA可处理的最大带宽是多少?

    假设有 2 个插座,FX3 的多重 DMA 可处理的最大带宽是多少? 我正试图通过使用 2 个插座和 3 个 16KB 缓冲区的多 DMA 设置来流式传输未压缩的 1080p60 视频,但遇到
    发表于 07-03 07:17

    步进电机驱动器有哪些参数需要设置

    步进电机驱动器是一种将电脉冲信号转换为机械运动的装置,广泛应用于自动化设备、机器人、数控机床等领域。在使用步进电机驱动器时,需要对一些参数进行设置,以确保电机的正常运行和达到预期的性能。 电机类型
    的头像 发表于 06-12 09:43 1556次阅读

    pcb应变测试有多重要?一文了解!

    pcb应变测试有多重要?一文了解!
    的头像 发表于 02-24 16:26 1078次阅读

    选择电机驱动需要注意什么

    电机驱动器是用于控制电动机运行的设备,它可以调节电机的速度、转矩、位置等参数,以满足不同应用场景的需求。在选择和使用电机驱动器时,通常需要考虑以下四大要点: 匹配性:电机驱动器与电动机
    的头像 发表于 02-05 11:32 983次阅读