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

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

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

FPGA設(shè)計:關(guān)于Report QoR Assessment 命令的使用

454398 ? 來源:XILINX技術(shù)社區(qū)微信公眾號 ? 作者:XILINX技術(shù)社區(qū)微信 ? 2020-09-29 13:49 ? 次閱讀

Report QoR Assessment (RQA) 用于詳述您的設(shè)計 QoR 目標(biāo)實現(xiàn)的可能性。如果此命令返回的結(jié)果與您的期望不符,那么本篇博文包含了有關(guān)您可采取的后續(xù)行動的附加信息。本篇博文不僅適合首次使用這些命令的新用戶,對于有經(jīng)驗的用戶應(yīng)該同樣很實用。

什么是 QoR 評估報告 ?

(Report QoR Assessment)

Report QoR Assessment (RQA) 詳述了您為了實現(xiàn)自己的設(shè)計 QoR 目標(biāo)而應(yīng)采用的方法。它通過分析方法論和設(shè)計的特性,為您提供如下詳細(xì)信息:

  • 按 1 到 5 評分,分值對應(yīng)滿足設(shè)計 QoR 目標(biāo)的可能性
  • 您是否需要更正影響 QoR 的方法論問題
  • 您是否應(yīng)使用 QoR 建議報告 (Report QoR Suggestions) 來增強(qiáng)設(shè)計
  • 流程指南,提供有關(guān)利用諸如 ML 策略或增量編譯等工具功能的適當(dāng)時機(jī)的建議

它是一條基于文本的命令,可于綜合后在 Tcl 控制臺 (Tcl console) 中或腳本里,在實現(xiàn)流程的任意階段運(yùn)行。

評估得分

評估得分用于預(yù)測設(shè)計滿足其 QoR 目標(biāo)的可能性高低。它可在實現(xiàn)的任意階段生成,但鑒于其前瞻性的本質(zhì),它適合在設(shè)計完全完成布線之前使用,并且在執(zhí)行 opt_design 后生成的評分值最高。

評估得分細(xì)分為 5 個等級:

下表詳列了 41 項設(shè)計的得分準(zhǔn)確性:

通過將 opt_design 得分與 route_design 得分進(jìn)行比對,即可看到:

  • 59% 的設(shè)計預(yù)測準(zhǔn)確
  • 98% 的設(shè)計預(yù)測偏差在 +/- 1 之間

這樣的準(zhǔn)確率使我們得以指導(dǎo)用戶在實現(xiàn)流程中是應(yīng)繼續(xù)運(yùn)行后續(xù)步驟,還是使用 Report QoR Suggestions 等工具來改進(jìn)設(shè)計并提升滿足時序的可能性,亦或是執(zhí)行其它操作。

執(zhí)行 place_design 后,評估得分準(zhǔn)確率更高:

  • 76% 的設(shè)計預(yù)測準(zhǔn)確
  • 98% 的設(shè)計預(yù)測偏差在 +/- 1 之間

如您所見,如需進(jìn)一步提升準(zhǔn)確率,可運(yùn)行額外的 place_design 步驟,但應(yīng)注意的是,在此階段運(yùn)行該命令的作用有限。

評估得分可用于判定您應(yīng)致力于改進(jìn)網(wǎng)表還是應(yīng)運(yùn)行實現(xiàn)工具。

下表概括了常見后續(xù)操作:

QoR 評估得分可使用 Report QoR Suggestions (RQS) 來加以改善,但這并不適用于所有設(shè)計。為了對得分 2(或低于 3)的設(shè)計進(jìn)行改進(jìn),可能需要大量工作,例如,對 HLS 模塊進(jìn)行最優(yōu)化、HDL 重新編碼、變更 IP 配置等。

如果我們僅關(guān)注實現(xiàn)工具流程,那么根據(jù) RQA 得分應(yīng)用自動 QoR 建議對于大部分設(shè)計都有效。運(yùn)行 Report QoR Suggestions 后,對 RQA 得分的影響如下圖所示。

設(shè)計得分改善與否取決于建議的類型、建議的數(shù)量以及受影響的路徑的數(shù)量。

雖然并非所有設(shè)計的改善效果都足以使得分提升,但都能改善其設(shè)計性能特性(如,WNS 或擁塞),因此毋庸置疑,它朝著正確的方向邁出了一步?;?a href="http://srfitnesspt.com/tags/時鐘/" target="_blank">時鐘和擁塞的建議所實現(xiàn)的改進(jìn)效果最為明顯。

方法論報告

改進(jìn)設(shè)計時,如果 QoR 不升反降,那么您勢必將面臨如下選擇。是繼續(xù)修復(fù)?還是重新尋找新的解決方案?

這里有一個好辦法 - 解決方法論問題即可簡化這一任務(wù)。

如需了解這一觀點的更多詳情,請請進(jìn)入賽靈思中文論壇(閱解決方法論問題以簡化時序收斂文。

與 RQA 合并的方法論報告 (Report Methodology) 是一個精簡版本。RQA 報告僅詳列了影響 QoR 和工具變化的不合規(guī)的方法論檢查。要獲取完整報告,請運(yùn)行 report_methodology 命令。

將 QoR 評估報告與 QoR 建議搭配使用

QoR 評估得分是通過觀察多項底層級設(shè)計指標(biāo)并形成總體設(shè)計得分的方法來生成的。即使使用自動建議,如需提升設(shè)計得分,最好還是查看設(shè)計中的問題詳情,了解如何通過每次迭代來改進(jìn)結(jié)果。

詳情 (Details) 表細(xì)分為多個類別,這些類別與 Report QoR Suggestions (RQS) 命令的類別相同。將設(shè)計問題綜述集中于一處是非常有效的。此外,還有一個狀態(tài)列用于顯示需要復(fù)查的領(lǐng)域以及應(yīng)滿足的理想閾值。

下圖顯示了 QoR 評估詳情表示例:

對于超出閾值的任何項,都會在其旁邊添加 REVIEW 標(biāo)記。閾值并非硬性限制,但可作為指導(dǎo)。這些閾值可幫助您洞悉設(shè)計中出現(xiàn) QoR 下降的時機(jī)。如果只有某一個項略超閾值,那么您可以預(yù)判它對自己的設(shè)計影響有限。但如果有許多因子都略超閾值,或者如果某一個問題顯著超出閾值,那么您幾乎可以肯定設(shè)計中將出現(xiàn)問題。

QoR 評估詳情表還可提供實用概覽,以便您在使用 QoR 建議改進(jìn)設(shè)計之后檢驗資源變更情況。鑒于該表極為詳盡,因此非常便于與先前版本進(jìn)行并排對比。

在 QoR 建議報告中,您將可以看到,各項建議根據(jù)對于所涉 RQA 得分的影響,按從高到低排列。通過將該表與建議進(jìn)行比較,您即可看到各工具嘗試從哪些方面來對設(shè)計進(jìn)行改進(jìn)。

流程指南

流程指南由 RQA 提供,其中詳述了用戶應(yīng)采取的后續(xù)行動。它不僅十分便于新用戶上手,對于經(jīng)驗豐富的 FPGA 設(shè)計師也十分實用。

通常,它適合用于識別:

  • 尚未被解決的方法論違例
  • ML 策略或增量編譯,因為用戶不熟悉這些流程而可能將其忽略
  • 識別何時應(yīng)使用 report_qor_suggestions (RQS)

流程指南在“總體評估匯總 (Overall Assessment Summary)”表中提供。以下是報告示例:

流程指南將判定設(shè)計是否需要進(jìn)一步執(zhí)行方法論修復(fù)、是否需要應(yīng)用關(guān)鍵的實現(xiàn)建議,或者是否已經(jīng)準(zhǔn)備好執(zhí)行 ML 策略或增量編譯實現(xiàn)流程。設(shè)計的 QoR 指標(biāo)中并沒有任何一項屬于硬性要求或?qū)儆诒唤鬼棧绻环蠘?biāo)準(zhǔn),則很有可能無法滿足期望目標(biāo)。

要使設(shè)計符合 ML 策略要求,必須滿足以下條件:

  • 實現(xiàn)已完成且其運(yùn)行經(jīng)歷了下列階段:opt_design、place_design、phys_opt_design 和 route_design
  • 設(shè)計運(yùn)行時所采用的所有Directive 均設(shè)置為“Default”或“Explore”。
  • 已完成關(guān)鍵設(shè)計修改。如果設(shè)計不符合 ML 策略要求并且上述條件已得到滿足,那么您應(yīng)該運(yùn)行 RQS 來找出這些設(shè)計修改。
  • 受支持的系列為 UltraScale 和 UltraScale+

要使設(shè)計符合增量編譯要求,設(shè)計應(yīng)滿足下列條件:

  • 在時序收斂的合理范圍內(nèi)。WNS > -0.500 ns
  • RQA 得分為 4 或 5
  • 包含一些適合增量編譯的 RQS 建議

受支持的系列為 UltraScale 和UltraScale+

注釋:有部分關(guān)鍵路徑無法通過增量流程來解決,例如,DSP/BRAM 中的固定級聯(lián)路徑。

下一個建議的流程階段會查看所有信息并判斷最適合用戶采取的行動方案。當(dāng)設(shè)計符合增量和 ML 策略時,工具將為您提供最佳選擇建議。

總結(jié)

在本篇博文中,我們向您展示了如何使用 Report QoR Assessment 來明確自己的設(shè)計滿足時序的可能性以及哪些領(lǐng)域需要改進(jìn)。

我們演示了“詳情 (Details)”表提供的詳盡且實用的設(shè)計概述,最后還演示了如何使用“流程指南 (Flow Guidance)”功能來充分利用 Vivado 的工具流程。

編輯:hfy


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

    關(guān)注

    1624

    文章

    21539

    瀏覽量

    600530
  • 命令
    +關(guān)注

    關(guān)注

    5

    文章

    669

    瀏覽量

    21956
  • ML
    ML
    +關(guān)注

    關(guān)注

    0

    文章

    144

    瀏覽量

    34527
收藏 人收藏

    評論

    相關(guān)推薦

    SD的命令和響應(yīng)

    一個完整的?SD?卡操作過程是:主機(jī)(單片機(jī)等)發(fā)起“命令”,SD?卡根據(jù)命令的內(nèi)容決定是 否發(fā)送響應(yīng)信息及數(shù)據(jù)等,如果是數(shù)據(jù)讀/寫操作,主機(jī)還需要發(fā)送停止讀/寫數(shù)據(jù)的命令來結(jié)束 本次操作,這意味著主機(jī)發(fā)起
    的頭像 發(fā)表于 10-08 15:49 ?148次閱讀
    SD的<b class='flag-5'>命令</b>和響應(yīng)

    常見的shell命令之其他命令

    :elf@ubuntu:~$ man ls3、su/sudo用戶切換命令sudo:暫時切換到超級用戶以執(zhí)行超級用戶權(quán)限su:切換到某某用戶4、who命令:who功能:顯示關(guān)于當(dāng)前在本地系統(tǒng)上的所有
    發(fā)表于 08-21 09:49

    關(guān)于Docker 的清理命令集錦

    這篇文章主要介紹了Docker 清理命令集錦,需要的朋友可以參考下 復(fù)制代碼代碼如下: docker kill $(docker ps -a -q) ?刪除所有已經(jīng)停止的容器 復(fù)制代碼代碼如下
    的頭像 發(fā)表于 06-13 15:56 ?272次閱讀

    STM32 USB如何把\"input report byte length 2\" 修改為多個字節(jié)?

    數(shù)據(jù)位數(shù),但是抓包發(fā)現(xiàn)數(shù)據(jù) 被拆分成多個 2 byte 的包。 我上位機(jī)顯示HID 是 2 byte。 第二行 input report byte length 2 /** @defgroup
    發(fā)表于 05-09 08:09

    lscpu命令使用注意事項

    請注意,lscpu命令在不同的操作系統(tǒng)上可能會有一些差異,某些選項可能不可用。可以通過man lscpu命令或lscpu --help命令查看該命令的幫助文檔和更多選項。
    發(fā)表于 03-14 11:39 ?698次閱讀

    Kubectl核心命令總結(jié):如何快速掌握K8s

    設(shè)置 kubectl 命令交互的 kubernetes 集群并修改配置信息。參閱 使用 kubeconfig 文件進(jìn)行跨集群驗證 獲取關(guān)于配置文件的詳細(xì)信息。
    的頭像 發(fā)表于 02-23 14:43 ?407次閱讀
    Kubectl核心<b class='flag-5'>命令</b>總結(jié):如何快速掌握K8s

    關(guān)于FPGA的開源項目介紹

    Hello,大家好,之前給大家分享了大約一百多個關(guān)于FPGA的開源項目,涉及PCIe、網(wǎng)絡(luò)、RISC-V、視頻編碼等等,這次給大家?guī)淼氖遣豢菰锏膴蕵讽椖?,主要偏向老的游戲?nèi)核使用FPGA進(jìn)行硬解,涉及的內(nèi)核數(shù)不勝數(shù),主要目標(biāo)是
    的頭像 發(fā)表于 01-10 10:54 ?1273次閱讀
    <b class='flag-5'>關(guān)于</b><b class='flag-5'>FPGA</b>的開源項目介紹

    uboot命令的執(zhí)行過程是什么

    U-boot是通過執(zhí)行u-boot提供的命令來加載Linux內(nèi)核的,其中 命令bootm的功能 即為從memory啟動Linux內(nèi)核映像文件。 在講解bootm加載內(nèi)核之前,先來看看u-boot中
    的頭像 發(fā)表于 12-04 17:31 ?665次閱讀

    python調(diào)用windows命令

    Python是一種強(qiáng)大的編程語言,可以用于開發(fā)各種不同類型的應(yīng)用程序。其中一個常見的用途是使用Python調(diào)用Windows命令來執(zhí)行特定的任務(wù)。在本文中,我們將詳細(xì)討論如何使用Python調(diào)用
    的頭像 發(fā)表于 11-29 14:34 ?909次閱讀

    關(guān)于FPGA的誤區(qū),你知道嗎?

    總覺得FPGA特別高大上,自己的能力無可企及,那些會FPGA的都是大神一樣的存在,要學(xué)習(xí)FPGA也必須用xxxx的板子才是正宗。
    發(fā)表于 11-24 10:17 ?455次閱讀

    linux重啟命令有哪些

    Linux是一種自由和開放源代碼的操作系統(tǒng),被廣泛應(yīng)用于服務(wù)器和嵌入式設(shè)備。在Linux中,有多種命令用于重啟系統(tǒng)。在本文中,我們將詳細(xì)介紹常用的Linux重啟命令并解釋每個命令的用途
    的頭像 發(fā)表于 11-17 09:49 ?1898次閱讀

    DFX設(shè)計如何分析

    針對DFX設(shè)計,Vivado提供了命令report_pr_configuration_analysis,該命令會從設(shè)計復(fù)雜度、時鐘和時序等方面對其進(jìn)行分析。使用該命令時,我們主要會用到
    的頭像 發(fā)表于 11-09 11:23 ?772次閱讀
    DFX設(shè)計如何分析

    linux中創(chuàng)建group的命令

    用戶。 如果你想要查看當(dāng)前存在的組,可以使用命令 groupshow : groupshow groupName 此命令將顯示關(guān)于特定組的信息,包括其名稱,GID,以及隸屬
    的頭像 發(fā)表于 11-08 11:35 ?1310次閱讀

    linux free命令原理

    和分析系統(tǒng)內(nèi)核的內(nèi)存信息來顯示內(nèi)存使用情況。在Linux系統(tǒng)中,內(nèi)核維護(hù)了一個內(nèi)存統(tǒng)計信息表(或稱為"proc"文件),其中包含了關(guān)于系統(tǒng)內(nèi)存使用的詳細(xì)信息。 free 命令通過讀取這個表來獲取并顯示內(nèi)存使用情況。 具體來說, free
    的頭像 發(fā)表于 11-08 11:23 ?510次閱讀

    shell命令和linux命令一樣嗎

    Shell命令和Linux命令并不完全一樣。 首先,Shell是一種命令行解釋器,它是用來解釋和執(zhí)行用戶輸入的命令的。Shell既是一種命令
    的頭像 發(fā)表于 11-08 10:51 ?2594次閱讀