[問題] VCS Nanosim cosimulation

看板Electronics作者 (豆)時間9年前 (2016/07/16 22:27), 9年前編輯推噓4(401)
留言5則, 3人參與, 最新討論串1/2 (看更多)
之前在版上有問過相關問題 在修正一些BUG後,重新跑整個流程確定可以模擬 但是現在依然有些新問題產生,想要請教比較熟悉這部分的版友們 Q1. http://i.imgur.com/Mk0UwQG.png
如這張圖中所示,淡藍色的波形為我的類比電路輸出 而對應最下面則是該類比訊號轉為邏輯值後由數位電路所吃到輸入 可以看到類比訊號輸出時應該是一個方波,但是轉為數位電路吃到的邏輯值後 卻出現像是step的波形,我觀察結果猜測可能是VCS內將電壓值分為4種準位(0 1 L H) 而圖中在0和1之間的那個穩定狀態就是L或H這個情況所導致 請問這是不是可以藉由在VCS的設定方面來解決呢? (比如說Voh Vol Vih Vil的設定) Q2. 另一個問題是關於類比電路模擬,我想這部分應該是偏向Nanosim設定的問題 目前因為我的類比電路中有一個SRAM的model,在模擬前期要觀察其電氣訊號 之後則要看它的behavior是否正確,由於verilog model無法模擬電氣訊號 所以這部分只能使用spice model來執行,而問題就在這個model實在過於龐大 整個模擬使用的testbench根本無法執行完畢(主要是時間太久且波形檔過大) 網路上查詢之後,看到相關問題好像都是說降低精準度之類的解法 我的想法是想請問有沒有辦法可能前期模擬時精準度較高,之後驗證behavior時再降低精 準度?或是有沒有方法可以將nanosim的輸出波形(.out)容量有效壓縮?(EX:轉換成fsdb之類 的格式) P.S.我看nanosim模擬時中間還會出現波形的暫存檔之類 以上兩個是目前遇到的問題,在網路上查詢解法後並提出我的看法,想與版友們討論實際 可行的辦法 ------------------------------------------------------------------------------ 我使用nanosim內的HAR指令看起來是可以有效加速memory的模擬沒錯(單獨跑nanosim) 但是將它應用到VCS+nanosim的混訊模擬時會出現ERROR(在vcsAD.init裡面加入-har) 終端機上顯示"VCS runtime internal error (core dumped)" 網路上查詢的結果說這個是VCS crash了,似乎無解0.0 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.134.38.56 ※ 文章網址: https://www.ptt.cc/bbs/Electronics/M.1468679272.A.365.html ※ 編輯: hkrist (220.134.38.56), 07/16/2016 22:28:54

07/17 01:06, , 1F
nanosim有專門用在SRAM的設定,據說能大幅減少模擬時間
07/17 01:06, 1F
請問一下B大所指的設定是?我在網路上搜尋到的相關資訊裡面 主要應該是hierarchical array reduction(HAR)這個nanosim的feature 請問您有沒有使用過這個指令的經驗呢?(看完user和reference guide還是有點不懂) ※ 編輯: hkrist (220.134.38.56), 07/17/2016 14:28:54 ※ 編輯: hkrist (220.134.38.56), 07/17/2016 16:49:16

07/19 09:08, , 2F
set_print_format for= fsdb
07/19 09:08, 2F
感謝wait大的回覆,產生fsdb確實可以跑更長的模擬時間 另外想請問Q1中的那個問題是否有版友知道如何解決?或是此問題無法解決? ※ 編輯: hkrist (220.134.38.56), 07/19/2016 23:00:50

07/20 01:53, , 3F
Q1應該可以在VCSAD.INIT裡下command去調a2d threshold
07/20 01:53, 3F
想請問在nanosim吃的cfg檔中是否有辦法設定說某個訊號的波形只要截取其中某段時間 而不用整個模擬時間都存下來? 甚至是否能夠只要儲存某些訊號的邏輯值而不用連電壓值的變化都一併儲存? 是否有類似的指令或設定可以使用? ※ 編輯: hkrist (1.160.18.112), 07/20/2016 07:06:13

07/20 09:35, , 4F
print_node_logic level=? *; print_node_v level=? *
07/20 09:35, 4F

07/20 10:12, , 5F
set_node_thresh low_thresh high_thresh node_name
07/20 10:12, 5F
文章代碼(AID): #1NYaHeDb (Electronics)
文章代碼(AID): #1NYaHeDb (Electronics)