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

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

3天内不再提示

不同操作系统间QoR性能存在差异

辛太励 来源:飞翔的贝壳 作者:飞翔的贝壳 2022-08-02 11:52 次阅读

本篇博文中的分析是根据真实客户问题撰写的,该客户发现不同操作系统间 QoR 性能存在差异。虽然可以理解赛灵思无法保证不同操作系统间的可重复性,正如"赛灵思答复记录 61599"中所述,但此处案例中出现的差异量级值得进一步深入调查。

最初在 Windows 上的结果更好,但后续在 Linux 上结果更好, 最后发现,此问题与设计中存在的某些极其严重的方法违例有关。

问题说明:

用户发现相同设计在 Linux 与 Windows 上存在显著的时序差异。

在每个操作系统上运行完全相同的设计生成结果如下:在 Linux 上 WNS = -0.439ns,在 Windows 上 WNS = +26ps。

该用户在不同机器上多次运行构建,但针对各操作系统得到的结果是相同的。

以下“设计时序汇总 (Design Timing Summary)”截屏中显示了来自 Linux 的时序违例。在 Windows 上运行时,时序未出现任何错误。

注:您可使用以下选项来检查自己的设计的“时序汇总 (Timing Summary)”:

■ 在 Vivado GUI 中,转至“报告 (Reports)”选项卡 ->“时序 (Timing)”->“时序汇总报告 (Report Timing Summary)”

■运行以下 Tcl 命令:

report_timing_summary -file /timingreport.txt

Linux 运行结果:
pYYBAGGYHZOAa6foAADEreAGVcs361.png

Windows 运行结果:
poYBAGGYHZWAG2loAADLptfjzQc813.png

根本原因分析:

首先要验证的是,在 2 个平台上运行时,所有设计源代码、约束集、综合和实现指令以及 Vivado 工具设置都完全相同。另请确保不同操作系统上应用的 Vivado 补丁不存在任何差异,并且在 Vivado_Init.tcl 文件中未设置任何工具参数

进一步深挖设计可以发现,在布局布线后可以从 Tcl 控制台 (Tcl Console) 执行 write_xdc。这样即可验证对两个平台上的构建所应用的约束是否相同。

要检查与时钟/架构/CDC 等相关的警告/严重警告,请打开方法论报告。

要在 Vivado GUI 中打开方法论报告,请转至“报告 (Report)”选项卡 ->“方法论报告 (Report Methodology)”,或者在 Tcl 控制台 (Tcl console) 中,使用 report_methodology。

报告打开后,您可能会看到几条与设计相关的警告和严重警告。

浏览此报告时,我们发现了几项警告,这些警告与设计中的时钟关系相关的错误实践有关(这些警告的 ID 为 TIMING-6 和 TIMING-7),如下图所示。

pYYBAGGYHZaAXgU3AACkQp3fpPk949.png

Timing-6 Critical Warning 显示 Vivado 找到了 2 个时钟,这 2 个时钟一起定时,但并没有公用的基准时钟。

默认情况下,这 2 个报告的时钟被视为相关联时钟,并以同步方式进行定时,即使这 2 个时钟并非衍生自公共的基准时钟,且不含有已知相位关系,也同样如此。DRC 警告报告称时序引擎无法保证这些时钟处于同步状态。

Timing-7 Critical Warning 显示 Vivado 找到了 2 个时钟,这 2 个时钟一起定时,但并没有公用的节点。此 DRC 报告称时序引擎无法保证这些时钟在硬件中同步,因为它无法确定 2 个时钟树之间的公共节点。

某些方法论严重警告可能暗示设计上存在 QoR 问题,即存在此类任意严重警告有时可能导致不同运行的结果出现不一致。下列方法论严重警告应作为极其严重 (Super Critical) 警告来处理:

■ TIMING-6

■ TIMING-7

■ TIMING-8

■ TIMING-14

■ TIMING-35

无论任何设计都不应存在上述任一违例,用户应采取行动尽快解决这些违例,以免影响 QoR。

TIMING-6 和 TIMING-7 - 如何解决这些警告/严重警告:

解决办法取决于 2 个时钟域处于异步还是同步状态。

对于异步时钟,时序例外(例如,set_max_delay -datapath_only、set_clock_groups 或 set_false_path)应覆盖 2 个域之间的路径。

分析设计后,发现 set_false_path 是对应此 DRC 的正确约束。

要查找这些时钟之间的路径,请运行以下命令:

report_timing -from [get_clocks ] -to [get_clocks ]

请参阅 UG906以获取有关 TIMING-6、TIMING-7 以及来自 report_methodology 的所有其它严重警告的深层详细信息

解决方案和结论:

当纠正 TIMING-6 和 TIMING-7 违例后,设计在 Windows 和 Linux 上生成了一致的结果。

虽然赛灵思不保证不同操作系统间的可重复性,但设计中存在上述任何极其严重警告都可能导致 QoR 欠佳。在这个案例中,由于存在这些违例,导致在某一操作系统内生成的结果较另一个操作系统内生成的结果更差。

审核编辑:汤梓红

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

    关注

    87

    文章

    10981

    浏览量

    206687
  • WINDOWS
    +关注

    关注

    3

    文章

    3435

    浏览量

    87124
  • 时序
    +关注

    关注

    5

    文章

    356

    浏览量

    36952
  • Qor
    Qor
    +关注

    关注

    0

    文章

    5

    浏览量

    7504
收藏 人收藏

    评论

    相关推荐

    实时操作系统和分时操作系统的区别

    操作系统能否满足实时性要求来区分,可把操作系统分成分时操作系统和实时操作系统,分时操作系统按照相等的时间片调度进程轮流运行,分时操作系统
    发表于 11-14 17:39 1.2w次阅读

    什么是QNX操作系统

    QNX是一个实时的、可扩充的操作系统;它部分遵循POSIX相关标准,如POSIX.1b 实时扩展;它提供了一个很小的微内核以及一些可选的配合进程。其内核仅提供4种服务:进程调度、进程通信、底层
    发表于 06-07 14:16

    什么是操作系统

    将打印输出送到磁盘上的缓冲区的方法就可以避免这种混乱。在一个程序结束后,操作系统可以将暂存在磁盘上的文件送到打印机输出。从这种角度来看,操作系统则是系统的资源管理者。
    发表于 09-13 10:10

    操作系统构成

    操作系统构成  一般来说,操作系统由以下几个部分组成:  1)进程调度子系统:进程调度子系统决定哪个进程使用CPU,对进程进行调度、管理。  2)进程
    发表于 09-13 10:10

    UNIX/Windows操作系统差异

    UNIX/Windows操作系统差异:“:”与“%”
    发表于 08-01 06:21

    操作系统的特点?

    操作系统操作系统的特点?– 共享:资源可被多个并发执行的进程使用– 并发:可以在同一时间隔处理多个进程,需要硬件支持– 虚拟:将物理实体映射成为多个虚拟设备– 异步:进程执行走走停停,每次进程执行
    发表于 07-22 09:18

    分享一款Linux操作系统

    摘要:在嵌入式技术迅速普及的今天,Linux操作系统,由于其开放源代码,高稳定性和低成本等特性,非常适合于嵌入式系统的开发,成为了嵌入式领域里发展最快的操作系统.改进通用Linux操作系统
    发表于 11-04 06:00

    有使用过RT-Thread操作系统的吗?性能怎么样?

    有使用过RT-Thread 操作系统的吗,性能怎么样?
    发表于 10-27 06:05

    操作系统 ppt

    操作系统课件为PPT电子教案,内容如下: 操作系统的基本概念操作系统的发展操作系统的主要特征操作系统的主要功能进程管理
    发表于 11-07 08:44 0次下载
    <b class='flag-5'>操作系统</b> ppt

    Linux操作系统原理及应用

    Linux操作系统原理及应用 1.1  操作系统的地位 1.2  操作系统的功能 1.3  操作系统的发展过程 1.4 
    发表于 04-28 14:53 0次下载

    移动操作系统带来差异化设计

    移动操作系统带来差异化设计   移动设备市场一直以来都非常火爆,特别是具有苹果的iPhone和Verizon Wireless公司的Droid的智能手机市场。这些平台上的硬件
    发表于 04-24 12:02 1063次阅读

    RTOS操作系统

    RTOS操作系统RTOS操作系统RTOS操作系统RTOS操作系统RTOS操作系统
    发表于 12-28 15:30 0次下载

    操作系统的结构及原型设计

    提出了一个操作系统模型,介绍了该模型的结构及其实现原型,并对其性能进行了评价,最后讨论了该操作系统具有的优点及其存在的问题。
    发表于 09-21 08:44 5次下载
    <b class='flag-5'>操作系统</b>的结构及原型设计

    欧拉操作系统是个啥东西 欧拉操作系统上市公司有哪些

     欧拉操作系统是华为公司自主研发的服务器操作系统,具有高性能、高可靠性、安全性高等特点,可以改善软硬件的多核弱点,对于持续推进鲲鹏处理器的生态建设意义重大。  
    的头像 发表于 09-24 16:09 1.3w次阅读

    聊聊操作系统

    说到操作系统,大家都不会陌生。我们天天都在接触操作系统——用台式机或笔记本电脑,使用的是windows和macOS系统;用手机、平板电脑,则是android(安卓)和iOS系统
    的头像 发表于 05-12 11:13 1018次阅读
    聊聊<b class='flag-5'>操作系统</b>