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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

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

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

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

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

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

問題說明:

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

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

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

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

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

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

■運行以下 Tcl 命令:

report_timing_summary -file /timingreport.txt

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

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

根本原因分析:

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

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

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

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

報告打開后,您可能會看到幾條與設計相關的警告和嚴重警告。

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

pYYBAGGYHZaAXgU3AACkQp3fpPk949.png

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

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

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

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

■ TIMING-6

■ TIMING-7

■ TIMING-8

■ TIMING-14

■ TIMING-35

無論任何設計都不應存在上述任一違例,用戶應采取行動盡快解決這些違例,以免影響 QoR。

TIMING-6 和 TIMING-7 - 如何解決這些警告/嚴重警告:

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

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

分析設計后,發(fā)現(xiàn) set_false_path 是對應此 DRC 的正確約束。

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

report_timing -from [get_clocks ] -to [get_clocks ]

請參閱 UG906以獲取有關 TIMING-6、TIMING-7 以及來自 report_methodology 的所有其它嚴重警告的深層詳細信息

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

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

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

審核編輯:湯梓紅

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

    關注

    87

    文章

    11123

    瀏覽量

    207906
  • WINDOWS
    +關注

    關注

    3

    文章

    3503

    瀏覽量

    87883
  • 時序
    +關注

    關注

    5

    文章

    370

    瀏覽量

    37186
  • Qor
    Qor
    +關注

    關注

    0

    文章

    5

    瀏覽量

    7521
收藏 人收藏

    評論

    相關推薦

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

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

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

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

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

    操作系統(tǒng)構(gòu)成  一般來說,操作系統(tǒng)由以下幾個部分組成:  1)進程調(diào)度子系統(tǒng):進程調(diào)度子系統(tǒng)決定哪個進程使用CPU,對進程進行調(diào)度、管理?! ?)進程
    發(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)的主要功能進程管理
    發(fā)表于 11-07 08:44 ?0次下載
    <b class='flag-5'>操作系統(tǒng)</b> ppt

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

    Linux操作系統(tǒ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第六章 設備管理(部分).doc第二章 進程管理.doc第3章 并發(fā)控制——互斥與同步.doc操作系統(tǒng)---進程通信.ppt
    發(fā)表于 05-16 18:06 ?0次下載

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

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

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

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

    RTOS操作系統(tǒng)

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

    關于實時操作系統(tǒng)中任務通信的一種方法

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

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

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

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

    本文主要闡述了實時操作系統(tǒng)和非實時操作系統(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 ?1779次閱讀

    聊聊操作系統(tǒng)

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