一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

每次Vivado編譯的結(jié)果都一樣嗎

OpenFPGA ? 來源:OpenFPGA ? 2024-11-11 11:23 ? 次閱讀

很多FPGA工程師都有這種困惑,Vivado每次編譯的結(jié)果都一樣嗎?

AMD官網(wǎng)上,有這樣一個帖子:

Are Vivado results repeatable for identical tool inputs?

對大多數(shù)情況來說,Vivado編譯的結(jié)果是一樣的,但要保證下面的輸入是一樣的:

Design sources

Constraints

Tcl scripts and command sequences

Tool and command options

Vivado software version

Operating Systems

不同操作系統(tǒng)之間編譯結(jié)果不能保證是相同的,尤其是Linux和Windows。

但下面的這些選項不能保證編譯結(jié)果相同:

route_design -ultrathreads選項

plac_design -ultrathreads選項

使用一個routed design dcp,而且又重新跑了post-route和phys_opt_design

我們經(jīng)常會設(shè)置set_param general.maxThreads,這個也是在使用ultrathreads選項時才會影響編譯的repeatability。

其中place_design的ultrathreads只對UltraScale+ SSI 和vu440 有效:

a3433a42-9052-11ef-a511-92fbcf53809c.png

image-20240610145255204

route_design的ultrathreads解釋如下,沒有規(guī)定器件。

a35b7378-9052-11ef-a511-92fbcf53809c.png

image-20240610145242925

定位repeatablity的問題

最常見的問題就是post-route結(jié)果是不一樣的,我們可以通過下面的方式來確認哪一步出現(xiàn)是不一致。

Vivado在每個實現(xiàn)命令的中間階段都會在日志中報告一個checksum,這是基于設(shè)計網(wǎng)表和物理數(shù)據(jù)的簽名。

可以比較不同runs之間的校驗和,校驗和不匹配有助于確定結(jié)果在何處不一致。

a3673e56-9052-11ef-a511-92fbcf53809c.png

image-20240610145309593

Checkpoints vs in-memory runs

對比下圖中的兩個流程,在place_design后,先存成dcp,另一個flow中是直接打開當前的dcp并進行后續(xù)的編譯流程,這樣的話,在open_checkpoint后,這兩個網(wǎng)表的checksum可能會不同,但經(jīng)過Phys_opt_design后,他們網(wǎng)表的checksum還是會一樣的。

a3838f8e-9052-11ef-a511-92fbcf53809c.png

image-20240610145318561

總結(jié)一下,如果想讓vivado的結(jié)果repeatablity,我們就只使用單線程編譯:

set_paramgeneral.maxThreads1

而且保證輸入的源文件、腳本、約束都是相同的。同時硬件環(huán)境也要一樣,這樣才能最大程度的保證結(jié)果的repeatablity。

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

    關(guān)注

    0

    文章

    674

    瀏覽量

    33592
  • Vivado
    +關(guān)注

    關(guān)注

    19

    文章

    825

    瀏覽量

    67910

原文標題:Vivado每次的編譯結(jié)果是一樣的嗎?

文章出處:【微信號:Open_FPGA,微信公眾號:OpenFPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    FPGA Verilog HDL語法之編譯預(yù)處理

    Verilog HDL語言和C語言一樣也提供了編譯預(yù)處理的功能?!?b class='flag-5'>編譯預(yù)處理”是Verilog HDL編譯系統(tǒng)的個組成部分。Verilog
    的頭像 發(fā)表于 03-27 13:30 ?339次閱讀
    FPGA Verilog HDL語法之<b class='flag-5'>編譯</b>預(yù)處理

    STM32CubeIDE編譯設(shè)置是否有像keil一樣編譯后執(zhí)行Bat腳本的功能和設(shè)置?

    STM32CubeIDE編譯設(shè)置問題,是否有像keil一樣編譯后執(zhí)行Bat腳本的功能和設(shè)置?或者有相關(guān)的腳本和插件?
    發(fā)表于 03-14 15:59

    ADS1100每次復(fù)位ADS采集到數(shù)據(jù)都不一樣,是時序問題嗎?

    為什么我每次復(fù)位ADS采集到數(shù)據(jù)都不一樣啊 是時序問題嗎?
    發(fā)表于 02-12 07:06

    用單片機的SPI控制ADS1191,發(fā)送命令寫寄存器后讀取相應(yīng)寄存器的值就不一樣,而且每次讀出來的都不一樣,為什么?

    現(xiàn)用單片機的SPI控制ADS1191,使用內(nèi)置晶振時鐘,發(fā)送命令寫寄存器后,再讀取相應(yīng)寄存器的值就不一樣,而且每次讀出來的都不一樣,設(shè)置讓CLK腳在起振后輸出時鐘信號,示波器也測不到相應(yīng)的時鐘信號,請給予提示,已經(jīng)停在這2天了
    發(fā)表于 01-23 08:38

    ldc1000的spi通信,為什么在這種情況下寫不進數(shù)據(jù),讀數(shù)據(jù)也每次一樣?

    ldc上電后,即數(shù)字和模擬端供電后,只連接spi的四根線到mcu,而其他腳懸空,這種情況下能否讀寫ldc1000的寄存器。 為什么我在這種情況下寫不進數(shù)據(jù),讀數(shù)據(jù)也每次
    發(fā)表于 01-13 08:21

    每次配置DAC5682Z寄存器的參數(shù)一樣,但是頻譜測得輸出信號卻不同,為什么?

    現(xiàn)在遇到個奇怪的現(xiàn)象,每次配置DAC5682Z寄存器的參數(shù)一樣,但是頻譜測得輸出信號卻不同。 配置的目標是輸出個56MHz單頻點信號
    發(fā)表于 12-25 07:30

    AFE4400讀取6個寄存器值,每次讀取的值都是一樣的怎么解決?

    最近在開發(fā)AFE4400時,讀取6個寄存器值,LED2VAL和LED1VAL寄存器值一樣,ALED2VAL和ALED1VAL寄存器值一樣,LED2-ALED2VAL和LED1-ALED1VAL寄存器值一樣,且
    發(fā)表于 12-25 07:18

    ads1243每次重新上電ad采集值不一樣是怎么回事?

    本人利用ads1243采集壓力傳感器,發(fā)現(xiàn)每次上電,外界條件一樣的情況下,ad值取16位波動,上電之后就按照剛上電時候的值平穩(wěn)下去,求高手解答,是否有例程或是硬件接法,另外,想咨詢pdwn引腳
    發(fā)表于 12-18 06:08

    ADS1247模擬SPI讀取寄存器數(shù)據(jù),讀取的數(shù)據(jù)每次都不一樣,為什么?

    ADS1247模擬SPI 讀取寄存器數(shù)據(jù),讀取的數(shù)據(jù)每次都不一樣。比對過時序,程序沒有問題。示波器抓取的波形顯示命令已經(jīng)發(fā)出,試了好幾塊板子都是這樣。 PS:START 引腳已經(jīng)拉高
    發(fā)表于 12-13 08:44

    做個數(shù)字示波器,結(jié)果自激了,為什么?

    想做個數(shù)字示波器,帶寬20M的,為了使輸入阻抗>1Mohm 采用最簡單的電壓跟隨器,結(jié)果自激了。 使用了OPA656,換別低噪聲高速運放一樣,頻率40M~120M不等,求解決
    發(fā)表于 09-20 07:49

    淺談Vivado編譯時間

    隨著FPGA規(guī)模的增大,設(shè)計復(fù)雜度的增加,Vivado編譯時間成為個不可回避的話題。尤其是些基于SSI芯片的設(shè)計,如VU9P/VU13P/VU19P等,布局布線時間更是顯著增加。當
    的頭像 發(fā)表于 09-18 10:43 ?1813次閱讀
    淺談<b class='flag-5'>Vivado</b><b class='flag-5'>編譯</b>時間

    采用同向輸入使用TPA6120時,為什么插拔耳機接頭后,左右聲道分離度會改變,而且每次都不一樣 ?

    客戶在使用TPA6120時,采用同向輸入。在測試左右聲道分離度時,發(fā)現(xiàn)每次插拔耳機接頭時,分離度的參數(shù)都不一樣。范圍在-50~-80dB. 而如果不插拔耳機接頭,追只是反復(fù)斷電,上電,或者反復(fù)加載
    發(fā)表于 08-16 06:07

    Stem32CubeIDE能像Keil一樣指定不同文件下的代碼編譯嗎?

    Stem32CubeIDE能像Keil一樣指定不同文件下的代碼編譯
    發(fā)表于 07-23 06:22

    錳芯磁環(huán)電感尺寸一樣性能也一樣

    電子發(fā)燒友網(wǎng)站提供《錳芯磁環(huán)電感尺寸一樣性能也一樣嗎.docx》資料免費下載
    發(fā)表于 06-03 14:52 ?0次下載

    請問怎么去編譯不同型號的單片機?

    怎么去編譯不同型號的單片機,像官方的demo一樣? 這樣我的個項目配置就可以用在很多的應(yīng)用中了,不然每次配置項目很累的
    發(fā)表于 05-14 06:24