衡阳派盒市场营销有限公司

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

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

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

優(yōu)化編譯和仿真的VCS使用技巧

sanyue7758 ? 來源:處芯積律 ? 2024-03-08 14:02 ? 次閱讀

1簡介

冗長的編譯和仿真,對于稍大的工程,編譯加上仿真可能需要1個小時以上并且占用大量內(nèi)存,而跑回歸更是消耗大量的時間以及內(nèi)存資源,本文主要給大家?guī)鞻CS使用技巧,DPO,DPO全稱是Dynamic Performance Optimizer,主要用于優(yōu)化編譯和仿真(時間/內(nèi)存),減少資源的使用,屬于VCS的高級功能。僅需要很少的命令即可引入當(dāng)前工程,體驗來看,優(yōu)化基本都在30%以上(數(shù)據(jù)來自亦安自己的測試,具體以實(shí)際為準(zhǔn))。

2DPO的特性

接入工程簡單,只需要簡單的命令

深度優(yōu)化編譯和仿真,包含時間和內(nèi)存的優(yōu)化

3該怎么使用DPO

目前該功能可能需要較高版本VCS DPO才比較完善。

使用邏輯非常簡單:第一步,學(xué)習(xí)(learn)以及合并(merge)。第二步,應(yīng)用(apply)。例如有500個case,我們先在learn模式跑完case,然后merge,之后便可以在應(yīng)用(apply)模式下跑項目。最終會有比較好的編譯和仿真優(yōu)化,一般情況下,工程沒有巨大改變,不需要重新learn。

我們打開VCS_HOME目錄下,doc/examples/dpo/dpo_use_model,官方給了一個demo,Makefile如下(部分),主要涉及參考,學(xué)習(xí),合并,獲得建議,應(yīng)用,報告。涉及的命令非常的簡單,如果想更深入了解請參閱手冊。該目錄下執(zhí)行make即可跑demo。

dpo_reference:
vcs-sverilog-full64-ntb_optsuvm-1.2ubus_tb_top-debug_access+all-lca-lcomp_ref.log-dpo-dpo_optsapps=vcsgd+user_tag=reference
./simv+UVM_NO_RELNOTES+UVM_TESTNAME=test_2m_4s-lsimv_ref.log

dpo_learn:
rm-rfsimvsimv.daidircsrcvc_hdrs.h*.keyvcs.cfg
vcs-sverilog-full64-ntb_optsuvm-1.2ubus_tb_top-debug_access+all-lca-lcomp_learn.log-dpo-dpo_optsmode=learn+apps=default,lint,upfopt,pgates+user_tag=learn+dbdir=dpo_learndb-dpo_optscfg=cfg
./simv+UVM_NO_RELNOTES+UVM_TESTNAME=test_2m_4s-lsimv_learn.log

merge_db:
dporgmerge-ddpo_learndb

dump_reco:
dporgdump-ddpo_learndb
echo"#####EnablingallrecommendationsdumpedbyDPOfromdpo_reco.csv#####"
sed-i"s/^N,/Y,/g"dpo_reco.csv

dpo_apply:
rm-rfsimvsimv.daidircsrcvc_hdrs.h*.keyvcs.cfg
vcs-sverilog-full64-ntb_optsuvm-1.2ubus_tb_top-debug_access+all-lca-lcomp_apply.log-dpo-dpo_optsreco_file=dpo_reco.csv+apps=default,fgp,lint,upfopt,pgates+user_tag=apply+learn_dbdir=dpo_learndb+cfg=cfg
./simv+UVM_NO_RELNOTES+UVM_TESTNAME=test_2m_4s-lsimv_apply.log

dpo_report:
dporgreport-ddpo_dbdir

4查看DPO報告

dporgReport目錄下用瀏覽器打開即可,可以打開相關(guān)的報告。可以看到相關(guān)的優(yōu)化比率,CT(Compile Time),RT(Run Time),RM(Memory)。

45aa2f7c-d8af-11ee-a297-92fbcf53809c.png

5DPO設(shè)置的權(quán)衡

任何事情的選擇很難是各個方面都會帶來優(yōu)勢,所以需要結(jié)合自己的項目去權(quán)衡應(yīng)該優(yōu)化那些方面,哪里是關(guān)鍵的設(shè)計,那么選擇優(yōu)化該方向。相關(guān)建議可以在文件dpo_reco.csv打開查看。

45bdee40-d8af-11ee-a297-92fbcf53809c.png

審核編輯:黃飛

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

    關(guān)注

    8

    文章

    3055

    瀏覽量

    74331
  • VCS
    VCS
    +關(guān)注

    關(guān)注

    0

    文章

    80

    瀏覽量

    9647

原文標(biāo)題:如何讓你的仿真編譯性能優(yōu)化?(VCS 高級特性)

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

收藏 人收藏

    評論

    相關(guān)推薦

    vcs實(shí)用技巧

    VCS編譯型verilog仿真器,VCS先將verilog/systemverilog文件轉(zhuǎn)化為C文件,在linux下編譯生成的可執(zhí)行文.
    的頭像 發(fā)表于 10-25 17:22 ?1228次閱讀
    <b class='flag-5'>vcs</b>實(shí)用技巧

    VCS仿真的注意事項

    VCS
    皮特派
    發(fā)布于 :2022年12月07日 11:38:35

    VCS仿真指南(第二版).pdf

    VCS-verilog compiled simulator是synopsys公司的產(chǎn)品.其仿真速度相當(dāng)快,而且支持多種調(diào)用方式;使用的步驟和modelsim類似,都要先做編譯,再調(diào)用仿真
    發(fā)表于 12-15 10:27

    nanosim和vcs混合仿真的過程是怎樣的?

    nanosim和vcs為什么可以聯(lián)合起來進(jìn)行數(shù)字模擬混合仿真?nanosim和vcs混合仿真的過程是怎樣的?
    發(fā)表于 06-18 08:28

    基于linux系統(tǒng)的VCS使用及仿真說明

    代碼如下:頂層模塊代碼:波特率產(chǎn)生模塊接收模塊代碼:發(fā)送數(shù)據(jù)模塊一、VCS仿真下面開始進(jìn)行VCS仿真VCS要使用圖形化界面,必須得先
    發(fā)表于 07-18 16:18

    基于linux系統(tǒng)實(shí)現(xiàn)的vivado調(diào)用VCS仿真教程

    VCS-MX的版本,可以混合編譯Verilog和VHDL語言 由于在linux系統(tǒng)中個人用戶各種權(quán)限被限制,導(dǎo)致很多地方無法正常使用軟件之間的協(xié)調(diào)工作。 為了以防萬一,在此以個人用戶去實(shí)現(xiàn)vivado調(diào)用VCS
    的頭像 發(fā)表于 07-05 03:30 ?1.2w次閱讀
    基于linux系統(tǒng)實(shí)現(xiàn)的vivado調(diào)用<b class='flag-5'>VCS</b><b class='flag-5'>仿真</b>教程

    如何使用Synopsys VCS仿真器進(jìn)行ZYNQ BFM IPI設(shè)計仿真

    了解如何使用Vivado中的Synopsys VCS仿真器使用ZYNQ BFM IPI設(shè)計運(yùn)行仿真。 我們將演示如何編譯仿真庫,為IP或整
    的頭像 發(fā)表于 11-29 06:59 ?5003次閱讀

    如何使用Vivado中的Synopsys VCS仿真器進(jìn)行仿真

    了解如何使用Vivado中的Synopsys VCS仿真器使用MicrBlaze IPI設(shè)計運(yùn)行仿真。 我們將演示如何編譯仿真庫,為IP或
    的頭像 發(fā)表于 11-29 06:57 ?7507次閱讀

    vcs學(xué)習(xí)筆記(常用選項/仿真流程/代碼覆蓋率/綜合后仿真/圖一樂技巧)

    VCS編譯型verilog仿真器,VCS先將verilog/systemverilog文件轉(zhuǎn)化為C文件,在linux下編譯生成的可執(zhí)行文.
    的頭像 發(fā)表于 05-23 16:04 ?1w次閱讀

    淺談VCS的兩種仿真flow

    幾乎所有的芯片設(shè)計、芯片驗證工程師,每天都在和VCS打交道,但是由于驗證環(huán)境的統(tǒng)一化管理,一般將不同的編譯仿真選項集成在一個文件里,只需要一兩個人維護(hù)即可。所以大部分人比較少有機(jī)會去深入地學(xué)習(xí)
    的頭像 發(fā)表于 01-10 11:20 ?3996次閱讀

    EDA仿真VCS編譯Xilinx仿真步驟

    選擇VCS,再指定庫文件存放的路徑;如果VCS的環(huán)境變量設(shè)置好了,那么會自動跳出Simulator executable path的路徑的。
    發(fā)表于 03-31 10:21 ?2315次閱讀

    VCS編譯選項:-y及+libext+

    VCS是一款常見的Verilog編譯工具,它提供很多編譯選項來控制編譯過程及其輸出。本文主要介紹以下兩個編譯選項。
    的頭像 發(fā)表于 05-29 14:46 ?1.3w次閱讀

    VCS實(shí)用技巧分享

    VCS編譯型verilog仿真器,VCS先將verilog/systemverilog文件轉(zhuǎn)化為C文件,在linux下編譯生成的可執(zhí)行文.
    的頭像 發(fā)表于 05-30 09:26 ?1468次閱讀
    <b class='flag-5'>VCS</b>實(shí)用技巧分享

    記錄VCS仿真的IP核只有VHDL文件的解決方法

    使用VCS仿真Vivado里面的IP核時,如果Vivado的IP核的仿真文件只有VHDL時,仿真將變得有些困難,VCS不能直接
    的頭像 發(fā)表于 06-06 11:15 ?2332次閱讀
    記錄<b class='flag-5'>VCS</b><b class='flag-5'>仿真的</b>IP核只有VHDL文件的解決方法

    VCS 仿真option 解析

    VCS仿真選項分編譯(compile-time)選項和運(yùn)行(run-time)選項。編譯選項用于RTL/TB的編譯,一遍是
    的頭像 發(fā)表于 01-06 10:19 ?3196次閱讀
    大发888网站是多少呢| 百家乐庄家抽水的秘密| 真人百家乐官网好不好玩| 曼哈顿百家乐的玩法技巧和规则 | 欢乐谷百家乐官网的玩法技巧和规则| 百家乐官网二代理解| 射洪县| 金钱豹百家乐的玩法技巧和规则| 百家乐官网14克粘土筹码| 百家乐官网园小区户型图| 六合彩开奖公告| 蓝盾百家乐的玩法技巧和规则| 百家乐官网代理合作| 百家乐官网ag厅投注限额| 瑞丰国际娱乐城| 太阳城地址| 在线百家乐博彩网| 百家乐官网槛| 百家乐官网怎么赢9| 大发888 asia| 百家乐15人桌子| 百家乐官网赌场群| 百家乐官网波浪法则| 亲朋棋牌手机版下载| 南京百家乐电| 百家乐赌博千术| 手机百家乐官网游戏| 怎样看百家乐官网路纸| 乌兰察布市| 竞彩足球推荐| 大发888官网 df888ylcxz46 | 百家乐黏土筹码| 澳门百家乐秘积| 实战百家乐官网十大取胜原因百分百战胜百家乐官网不买币不吹牛只你能做到按我说的.百家乐官网基本规则 | 新濠百家乐现金网| 齐河县| 太阳城百家乐游戏| 威尼斯人娱乐的微博| A8百家乐娱乐网| 临汾玩百家乐的人在那里找| 24山吉凶段|