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

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

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

Linux 和 Windows 操作系統(tǒng)中 Vivado 結果是否可重復?

YCqV_FPGA_EETre ? 來源:未知 ? 作者:佚名 ? 2017-10-09 09:26 ? 次閱讀
問題描述

Vivado 結果是否可重復用于相同的工具輸入?

解決方案

大多數(shù)情況下是可以的,Vivado 應該可在涉及相同應用的運行之間生成相同的結果:

  • 設計源

  • 約束

  • Tcl 腳本及命令順序

  • 工具與命令選項

  • Vivado 軟件版本

  • 多線程設置

  • 操作系統(tǒng)

這適用于從 HDL 綜合到比特流生成的設計流程的各個環(huán)節(jié)。例如,構建腳本反復在同一系統(tǒng)或相似配置的機器上運行時,應該能生成相同的結果。

不同操作系統(tǒng)的結果通??芍貜停膊灰欢?,特別是在使用 Linux 和 Windows 操作系統(tǒng)的情況下。

注意確定性

術語“可重復性”和“確定性”通??山惶媸褂?,這種說法是不對的。Vivado 使用多線程來并行執(zhí)行,因此它在定義上是不確定的。然而,Vivado 中的多線程可通過編程實現(xiàn)同步,因而多線程執(zhí)行可重復。注意,除了多線程外,Vivado 也管理 OS 系統(tǒng)調(diào)用及內(nèi)存管理等可導致不確定性的其它因數(shù)。

確定重復性問題

有分歧的運行最常見的癥狀是布線后時序結果的不同。如果您懷疑某個不可重復性的情況,并驗證工具輸入是完全相同,就可使用校驗和來進一步驗證分歧。Vivado 在每個實現(xiàn)方案命令的各個中間階段,都會在日志中報告一個校驗和,這是一個基于設計網(wǎng)表及物理數(shù)據(jù)的簽名。校驗和可以在不同的運行之間比較,校驗和不匹配可幫助發(fā)現(xiàn)哪里的結果有分歧。

實例:以下校驗和開始出現(xiàn)分歧,因此永遠不會收斂。如果所有輸入都是完全相同的,那這很可能就是一個可重復性問題。

檢查點與內(nèi)存中的運行

與同等意義的內(nèi)存內(nèi)設計流程相比,檢查點應生成可重復性的結果。請考慮以下命令順序,一個運行內(nèi)存中的整個設計流程,另一個則使用放置的檢查點通過 phys_opt_design 命令再次從內(nèi)存中的流程進入該流程。

這兩個運行應該給出相同的結果。盡管在執(zhí)行 open_checkpoint 命令后,校驗和可能因為網(wǎng)表的排序差異而不同,但在第一次執(zhí)行 phys_opt_design 命令后,校驗和應該可以收斂:

在運行之前,每一個執(zhí)行命令都會自動排序,以確保網(wǎng)表的一致性,這樣結果就不會因網(wǎng)表差異而出現(xiàn)分歧。

最大限度提高可重復性

如果可重復性對于您的設計環(huán)境至關重要,下面的操作可幫助您最大限度地提高可重復性:

在單線程模式下運行。

在不同運行之間使用不同數(shù)量的 CPU 時,同步線程可能會按照不同的順序執(zhí)行運算并造成有分歧的結果,即便運行使用相同的機器或系統(tǒng)也是如此。

要在單線程模式下運行,請使用:

set_param general.maxThreads 1

這不僅可禁用多線程,而且還可消除相關可重復性問題。

在相同機器上運行或者在使用相同操作系統(tǒng)的機器上運行。

這不僅可降低遇到內(nèi)核運行方式所帶來的不可重復性的概率,而且還可從一個系統(tǒng)到另一個系統(tǒng)實現(xiàn)系統(tǒng)調(diào)用,特別是在使用 Windows 和 Linux 操作系統(tǒng)的情況下。

以下操作可進一步降低這一概率

1) 微調(diào)環(huán)境,消除下列情況:

  • 同一操作系統(tǒng)的不同版本

  • 不同的服務包級別 (Windows)

  • 不同分銷或不同補丁級別 (Linux)

2) 消除計算硬件差異:

  • 使用相同的通用物理及虛擬存儲器容量。

  • 使用相同的處理器架構和相同數(shù)量的內(nèi)核。

  • 如果使用的是虛擬機,則要保證配置完全相同。

報告不可重復性問題

如果您遇到了輸入完全相同的不可重復性問題(如解決方案說明中所述),請打開服務請求并提供一個可演示該問題的測試案例。

沒有測試案例,可能很難確定并修復任務問題,但它可幫助提供盡可能多的信息。

Linux 和 Windows 之間偶爾會出現(xiàn)不可重復性問題,我們建議限制 Vivado 只在 Linux 上運行或只在 Windows 上運行。


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

    關注

    87

    文章

    11161

    瀏覽量

    208462
  • WINDOWS
    +關注

    關注

    3

    文章

    3509

    瀏覽量

    88207
  • Vivado
    +關注

    關注

    19

    文章

    799

    瀏覽量

    66129

原文標題:【專家坐堂Q&A】Vivado 結果是否可重復用于相同的工具輸入?

文章出處:【微信號:FPGA-EETrend,微信公眾號:FPGA開發(fā)圈】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    CYAT81658是否支持Windows操作系統(tǒng)?

    我們的一位客戶要求將觸摸集成電路用于他們自己的產(chǎn)品。 他們使用的是 Windows 10 操作系統(tǒng)。 我想知道我們的產(chǎn)品觸摸 IC(CYAT81658)是否支持 Windows
    發(fā)表于 07-05 07:36

    Vivado 2017.4和2018.2不同的LinuxWindows之間的實現(xiàn)結果

    嗨,我有一個越來越難以在Vivado 2017.4路由的設計。我的大多數(shù)運行都是在Linux上完成的。我也嘗試過使用Windows機器,它可以產(chǎn)生更好的效果。我切換到
    發(fā)表于 11-14 10:04

    我應該使用什么操作系統(tǒng)?

    操作系統(tǒng))不適合我。我也不是專家linux用戶,我對命令提示符并不熟悉。我即將在我的電腦上安裝一個linux版本,所以我想聽聽你對我最好的看法。我主要擔心的是所有vivado工具
    發(fā)表于 12-07 11:10

    (良哥獨創(chuàng))linux操作系統(tǒng)裝回windows操作系統(tǒng)

    絕對成功,一步一步教你將LINUX 操作系統(tǒng)裝回windows操作系統(tǒng)的詳細方法,這上網(wǎng)上最簡單的方法了,希望對大家有用。
    發(fā)表于 08-12 10:50

    Windows XP操作系統(tǒng) ppt課件

    Windows XP操作系統(tǒng)2.1 操作系統(tǒng)概念2.1.1 操作系統(tǒng)的地位2.1.2 操作系統(tǒng)的定義和功能2.1.3
    發(fā)表于 11-07 09:50 ?0次下載

    Linux與其他操作系統(tǒng)的區(qū)別

    Linux與其他操作系統(tǒng)的區(qū)別 Linux與其他操作系統(tǒng)的區(qū)別  Linux可以與MS-DOS、OS/2、
    發(fā)表于 01-18 12:42 ?1647次閱讀

    Linux是什么?這種操作系統(tǒng)為何如此流行?

    Linux是什么?這種操作系統(tǒng)為何如此流行? 眾所周知,每臺桌面計算機都要使用操作系統(tǒng)?,F(xiàn)在最流行的操作系統(tǒng)有: Windows
    發(fā)表于 07-30 14:00 ?1020次閱讀

    LinuxWindows操作系統(tǒng)你更希望用哪個?

    兩個操作系統(tǒng)其實各有優(yōu)勢。你想用到的軟件都有windows版本。而linux系統(tǒng)下卻不一定,。linux對硬件要求低,
    發(fā)表于 01-10 14:52 ?1592次閱讀

    Windows 10操作系統(tǒng)會有專門的Linux系統(tǒng)

    曾經(jīng)有一段時間,微軟對 Linux 的態(tài)度并不友好。但隨著企業(yè)戰(zhàn)略的全面轉型,該公司已經(jīng)積極投身相關應用與服務的開發(fā)。甚至在 Windows 10 操作系統(tǒng)層面,都有專門的 Linux
    的頭像 發(fā)表于 03-14 09:45 ?3078次閱讀

    怎樣實現(xiàn)在linux系統(tǒng)windows系統(tǒng)的遠程操作?

    Windows,我們經(jīng)常使用ssh,vnc等工具對Linux操作系統(tǒng)進行遠程控制,但是在linux
    的頭像 發(fā)表于 04-17 09:52 ?3135次閱讀

    Linux操作系統(tǒng)Windows操作系統(tǒng)的五大區(qū)別

    Linux操作系統(tǒng)Windows操作系統(tǒng)身為三大操作系統(tǒng)巨頭里面的兩大巨頭,他們有什么區(qū)別呢?首先,先要聲明一點,所有以
    發(fā)表于 07-10 16:28 ?7826次閱讀

    WindowsLinux操作系統(tǒng)的流式處理API

    在本文中,我們分析了 WindowsLinux 操作系統(tǒng)的流式處理 API;提出了基于事件的線程創(chuàng)建和同步接口;討論了使用共享資源的功能;以及詳細的線程終止方式。
    的頭像 發(fā)表于 06-30 10:52 ?960次閱讀
    <b class='flag-5'>Windows</b>和<b class='flag-5'>Linux</b><b class='flag-5'>操作系統(tǒng)</b>的流式處理API

    WindowsLinux操作系統(tǒng)的流式處理API

    Windows操作系統(tǒng),TerminateThread在成功終止的情況下返回TRUE。從這個邏輯開始,讓我們嘗試在 Linux 組織類
    的頭像 發(fā)表于 11-30 15:04 ?737次閱讀
    <b class='flag-5'>Windows</b>和<b class='flag-5'>Linux</b><b class='flag-5'>操作系統(tǒng)</b>的流式處理API

    Linux操作系統(tǒng)還是內(nèi)核?

    內(nèi)核是每個操作系統(tǒng)的中心。這不僅僅是 Linux 的事情。Windows 和 macOS 也有內(nèi)核。
    發(fā)表于 03-15 10:05 ?1034次閱讀

    LinuxWindows服務器操作系統(tǒng)有什么區(qū)別?

    服務器管理員經(jīng)常接觸兩種主要的操作系統(tǒng),即LinuxWindows,那么,我們?nèi)绾芜x擇適合我們服務器的操作系統(tǒng)呢?當然,首先這兩個操作系統(tǒng)
    的頭像 發(fā)表于 06-01 15:52 ?1218次閱讀