0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

不同操作系統(tǒng)間QoR性能存在差異

辛太勵 ? 來源:飛翔的貝殼 ? 作者:飛翔的貝殼 ? 2022-08-02 11:52 ? 次閱讀

本篇博文中的分析是根據(jù)真實(shí)客戶問題撰寫的,該客戶發(fā)現(xiàn)不同操作系統(tǒng)間 QoR 性能存在差異。雖然可以理解賽靈思無法保證不同操作系統(tǒng)間的可重復(fù)性,正如"賽靈思答復(fù)記錄 61599"中所述,但此處案例中出現(xiàn)的差異量級值得進(jìn)一步深入調(diào)查。

最初在 Windows 上的結(jié)果更好,但后續(xù)在 Linux 上結(jié)果更好, 最后發(fā)現(xiàn),此問題與設(shè)計(jì)中存在的某些極其嚴(yán)重的方法違例有關(guān)。

問題說明:

用戶發(fā)現(xiàn)相同設(shè)計(jì)在 Linux 與 Windows 上存在顯著的時序差異。

在每個操作系統(tǒng)上運(yùn)行完全相同的設(shè)計(jì)生成結(jié)果如下:在 Linux 上 WNS = -0.439ns,在 Windows 上 WNS = +26ps。

該用戶在不同機(jī)器上多次運(yùn)行構(gòu)建,但針對各操作系統(tǒng)得到的結(jié)果是相同的。

以下“設(shè)計(jì)時序匯總 (Design Timing Summary)”截屏中顯示了來自 Linux 的時序違例。在 Windows 上運(yùn)行時,時序未出現(xiàn)任何錯誤。

注:您可使用以下選項(xiàng)來檢查自己的設(shè)計(jì)的“時序匯總 (Timing Summary)”:

■ 在 Vivado GUI 中,轉(zhuǎn)至“報(bào)告 (Reports)”選項(xiàng)卡 ->“時序 (Timing)”->“時序匯總報(bào)告 (Report Timing Summary)”

■運(yùn)行以下 Tcl 命令:

report_timing_summary -file /timingreport.txt

Linux 運(yùn)行結(jié)果:
pYYBAGGYHZOAa6foAADEreAGVcs361.png

Windows 運(yùn)行結(jié)果:
poYBAGGYHZWAG2loAADLptfjzQc813.png

根本原因分析:

首先要驗(yàn)證的是,在 2 個平臺上運(yùn)行時,所有設(shè)計(jì)源代碼、約束集、綜合和實(shí)現(xiàn)指令以及 Vivado 工具設(shè)置都完全相同。另請確保不同操作系統(tǒng)上應(yīng)用的 Vivado 補(bǔ)丁不存在任何差異,并且在 Vivado_Init.tcl 文件中未設(shè)置任何工具參數(shù)。

進(jìn)一步深挖設(shè)計(jì)可以發(fā)現(xiàn),在布局布線后可以從 Tcl 控制臺 (Tcl Console) 執(zhí)行 write_xdc。這樣即可驗(yàn)證對兩個平臺上的構(gòu)建所應(yīng)用的約束是否相同。

要檢查與時鐘/架構(gòu)/CDC 等相關(guān)的警告/嚴(yán)重警告,請打開方法論報(bào)告。

要在 Vivado GUI 中打開方法論報(bào)告,請轉(zhuǎn)至“報(bào)告 (Report)”選項(xiàng)卡 ->“方法論報(bào)告 (Report Methodology)”,或者在 Tcl 控制臺 (Tcl console) 中,使用 report_methodology。

報(bào)告打開后,您可能會看到幾條與設(shè)計(jì)相關(guān)的警告和嚴(yán)重警告。

瀏覽此報(bào)告時,我們發(fā)現(xiàn)了幾項(xiàng)警告,這些警告與設(shè)計(jì)中的時鐘關(guān)系相關(guān)的錯誤實(shí)踐有關(guān)(這些警告的 ID 為 TIMING-6 和 TIMING-7),如下圖所示。

pYYBAGGYHZaAXgU3AACkQp3fpPk949.png

Timing-6 Critical Warning 顯示 Vivado 找到了 2 個時鐘,這 2 個時鐘一起定時,但并沒有公用的基準(zhǔn)時鐘。

默認(rèn)情況下,這 2 個報(bào)告的時鐘被視為相關(guān)聯(lián)時鐘,并以同步方式進(jìn)行定時,即使這 2 個時鐘并非衍生自公共的基準(zhǔn)時鐘,且不含有已知相位關(guān)系,也同樣如此。DRC 警告報(bào)告稱時序引擎無法保證這些時鐘處于同步狀態(tài)。

Timing-7 Critical Warning 顯示 Vivado 找到了 2 個時鐘,這 2 個時鐘一起定時,但并沒有公用的節(jié)點(diǎn)。此 DRC 報(bào)告稱時序引擎無法保證這些時鐘在硬件中同步,因?yàn)樗鼰o法確定 2 個時鐘樹之間的公共節(jié)點(diǎn)。

某些方法論嚴(yán)重警告可能暗示設(shè)計(jì)上存在 QoR 問題,即存在此類任意嚴(yán)重警告有時可能導(dǎo)致不同運(yùn)行的結(jié)果出現(xiàn)不一致。下列方法論嚴(yán)重警告應(yīng)作為極其嚴(yán)重 (Super Critical) 警告來處理:

■ TIMING-6

■ TIMING-7

■ TIMING-8

■ TIMING-14

■ TIMING-35

無論任何設(shè)計(jì)都不應(yīng)存在上述任一違例,用戶應(yīng)采取行動盡快解決這些違例,以免影響 QoR。

TIMING-6 和 TIMING-7 - 如何解決這些警告/嚴(yán)重警告:

解決辦法取決于 2 個時鐘域處于異步還是同步狀態(tài)。

對于異步時鐘,時序例外(例如,set_max_delay -datapath_only、set_clock_groups 或 set_false_path)應(yīng)覆蓋 2 個域之間的路徑。

分析設(shè)計(jì)后,發(fā)現(xiàn) set_false_path 是對應(yīng)此 DRC 的正確約束。

要查找這些時鐘之間的路徑,請運(yùn)行以下命令:

report_timing -from [get_clocks ] -to [get_clocks ]

請參閱 UG906以獲取有關(guān) TIMING-6、TIMING-7 以及來自 report_methodology 的所有其它嚴(yán)重警告的深層詳細(xì)信息。

解決方案和結(jié)論:

當(dāng)糾正 TIMING-6 和 TIMING-7 違例后,設(shè)計(jì)在 Windows 和 Linux 上生成了一致的結(jié)果。

雖然賽靈思不保證不同操作系統(tǒng)間的可重復(fù)性,但設(shè)計(jì)中存在上述任何極其嚴(yán)重警告都可能導(dǎo)致 QoR 欠佳。在這個案例中,由于存在這些違例,導(dǎo)致在某一操作系統(tǒng)內(nèi)生成的結(jié)果較另一個操作系統(tǒng)內(nèi)生成的結(jié)果更差。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11161

    瀏覽量

    208461
  • WINDOWS
    +關(guān)注

    關(guān)注

    3

    文章

    3509

    瀏覽量

    88205
  • 時序
    +關(guān)注

    關(guān)注

    5

    文章

    380

    瀏覽量

    37230
  • Qor
    Qor
    +關(guān)注

    關(guān)注

    0

    文章

    5

    瀏覽量

    7524
收藏 人收藏

    評論

    相關(guān)推薦

    實(shí)時操作系統(tǒng)和分時操作系統(tǒng)的區(qū)別

    操作系統(tǒng)能否滿足實(shí)時性要求來區(qū)分,可把操作系統(tǒng)分成分時操作系統(tǒng)和實(shí)時操作系統(tǒng),分時操作系統(tǒng)按照相等的時間片調(diào)度進(jìn)程輪流運(yùn)行,分時操作系統(tǒng)
    發(fā)表于 11-14 17:39 ?1.3w次閱讀

    中國電子百億級資金投入,打造桌面與服務(wù)器操作系統(tǒng)、云操作系統(tǒng)、嵌入式操作系統(tǒng)三大產(chǎn)品

    操作系統(tǒng)被認(rèn)為是計(jì)算機(jī)的大腦。隨著信息技術(shù)的高速發(fā)展,操作系統(tǒng)的重要性和地位日益凸顯。但令人遺憾的是,我國操作系統(tǒng)企業(yè)普遍呈現(xiàn)小、散、弱局面,配套軟硬件生態(tài)分散,無法形成合力,業(yè)界急需打造具有統(tǒng)一技術(shù)體系和生態(tài)環(huán)境的國產(chǎn)自主
    的頭像 發(fā)表于 03-24 09:13 ?4402次閱讀

    操作系統(tǒng)構(gòu)成

    操作系統(tǒng)構(gòu)成  一般來說,操作系統(tǒng)由以下幾個部分組成:  1)進(jìn)程調(diào)度子系統(tǒng):進(jìn)程調(diào)度子系統(tǒng)決定哪個進(jìn)程使用CPU,對進(jìn)程進(jìn)行調(diào)度、管理?! ?)進(jìn)程
    發(fā)表于 09-13 10:10

    UNIX/Windows操作系統(tǒng)差異

    UNIX/Windows操作系統(tǒng)差異:“:”與“%”
    發(fā)表于 08-01 06:21

    操作系統(tǒng) ppt

    操作系統(tǒng)課件為PPT電子教案,內(nèi)容如下: 操作系統(tǒng)的基本概念操作系統(tǒng)的發(fā)展操作系統(tǒng)的主要特征操作系統(tǒng)的主要功能進(jìn)程管理
    發(fā)表于 11-07 08:44 ?0次下載
    <b class='flag-5'>操作系統(tǒng)</b> ppt

    Linux操作系統(tǒng)原理及應(yīng)用

    Linux操作系統(tǒng)原理及應(yīng)用 1.1  操作系統(tǒng)的地位 1.2  操作系統(tǒng)的功能 1.3  操作系統(tǒng)的發(fā)展過程 1.4 
    發(fā)表于 04-28 14:53 ?0次下載

    操作系統(tǒng)講解(操作系統(tǒng)課件)

    操作系統(tǒng)講解(操作系統(tǒng)課件) 第五章 文件管理.doc第六章 設(shè)備管理(部分).doc第二章 進(jìn)程管理.doc第3章 并發(fā)控制——互斥與同步.doc操作系統(tǒng)---進(jìn)程通信.ppt
    發(fā)表于 05-16 18:06 ?0次下載

    什么是VxWorks操作系統(tǒng)

    VxWorksVxWorks操作系統(tǒng)是美國WindRiver公司于1983年設(shè)計(jì)開發(fā)的一種實(shí)時操作系統(tǒng)。VxWorks擁有良好的持續(xù)發(fā)展能力、高性能的內(nèi)核以及良好的用戶開發(fā)環(huán)境,在實(shí)
    發(fā)表于 06-17 00:33 ?4026次閱讀

    移動操作系統(tǒng)帶來差異化設(shè)計(jì)

    移動操作系統(tǒng)帶來差異化設(shè)計(jì)   移動設(shè)備市場一直以來都非常火爆,特別是具有蘋果的iPhone和Verizon Wireless公司的Droid的智能手機(jī)市場。這些平臺上的硬件
    發(fā)表于 04-24 12:02 ?1185次閱讀

    RTOS操作系統(tǒng)

    RTOS操作系統(tǒng)RTOS操作系統(tǒng)RTOS操作系統(tǒng)RTOS操作系統(tǒng)RTOS操作系統(tǒng)
    發(fā)表于 12-28 15:30 ?0次下載

    關(guān)于實(shí)時操作系統(tǒng)中任務(wù)通信的一種方法

    關(guān)于實(shí)時操作系統(tǒng)中任務(wù)通信的一種方法
    發(fā)表于 09-03 11:45 ?3次下載
    關(guān)于實(shí)時<b class='flag-5'>操作系統(tǒng)</b>中任務(wù)<b class='flag-5'>間</b>通信的一種方法

    操作系統(tǒng)的結(jié)構(gòu)及原型設(shè)計(jì)

    提出了一個操作系統(tǒng)模型,介紹了該模型的結(jié)構(gòu)及其實(shí)現(xiàn)原型,并對其性能進(jìn)行了評價(jià),最后討論了該操作系統(tǒng)具有的優(yōu)點(diǎn)及其存在的問題。
    發(fā)表于 09-21 08:44 ?5次下載
    <b class='flag-5'>操作系統(tǒng)</b>的結(jié)構(gòu)及原型設(shè)計(jì)

    實(shí)時操作系統(tǒng)和非實(shí)時操作系統(tǒng)的區(qū)別

    本文主要闡述了實(shí)時操作系統(tǒng)和非實(shí)時操作系統(tǒng)的區(qū)別。
    發(fā)表于 09-02 15:58 ?1.1w次閱讀

    淺談鴻蒙系統(tǒng)與現(xiàn)有移動操作系統(tǒng)差異?

    “鴻蒙的推廣真正難的事情,是光有一個底層的操作系統(tǒng)(不夠)。比如,咱們在國內(nèi),人們常用微信,比如微信要是沒有鴻蒙版,也可能沒人用鴻蒙。所以,鴻蒙系統(tǒng)雖然也很難做,但更難的事情是讓很多軟件也用鴻蒙
    的頭像 發(fā)表于 02-01 12:01 ?1817次閱讀

    聊聊操作系統(tǒng)

    說到操作系統(tǒng),大家都不會陌生。我們天天都在接觸操作系統(tǒng)——用臺式機(jī)或筆記本電腦,使用的是windows和macOS系統(tǒng);用手機(jī)、平板電腦,則是android(安卓)和iOS系統(tǒng)。
    的頭像 發(fā)表于 05-12 11:13 ?1272次閱讀
    聊聊<b class='flag-5'>操作系統(tǒng)</b>