IUS


后端提取的sdf中可能是有negative timing 在interconnect上的,可能的原因是crosstalk之類的問題導致。

                                negative timing在FF,clock的delay超過data的delay。

這時,需要sdf和lib中的specify模型都支持negative timing才不會報錯。

$setuphold支持negative timing,$setup不支持negative timing。

 

用IUS進行gate-level的仿真時,可以加option -noneg_tchk來將所有的負值都變為0,來進行仿真。

                                                             -nontcglitch,關閉glitch supression的信息顯示。

IUS在跑simulation之前,snapshot編譯好之后,會調用random的task,命令:ncsim -svseed {n|random}

                                                                                                        ncsim -svseed 1234

                                                                                                                  -svseed  random

 

option -tfile+timing_file:指定一個timing file,關閉某個instance或者portion的timing check。

            

          -top:用irun跑的時候,來指定top-level unit。

          -access +rw:提供讀寫權限。

          -compile/-c  只進行compile。

          -run 進行simulation

          -pulse_r/-pulse_e:設置path delay的limit。-pulse_r reject_percent -pulse_e error_percent

          -pulse_int_r/-pulse_int_e:設置interconnect的limit。

                         reject_limit = (reject_percent/100) *delay   error_limit = (error_percent/100)*delay

                         Reject 0 <=pulse< reject limit  (輸出pulse寬度太小,直接忽略)

                         Set to error reject limit<= pulse < error limit

                         Pass pulse >= error limit

          -sdf_cmd_file +filename:指定sdf文件,控制sdf annotation。

                         filename文件總,使用COMPILED_SDF_FILE來分別知名不同block的sdf文件以及相應的scope

          

          

          -input+file:指定一個tcl命令文件,用在simulation中。

        

          -ncvlogargs "list_of_options"

          -ncvhdlargs "list_of_options"

          -ncelabargs "list_of_options"

          -ncsimargs "list_of_options"

 

timing check的很多options集中在ncelab過程中:

ncelab   -nonotifier              Disable notifier register

ncelab   -notimingchecks           Disable timing checks

ncelab   -noneg_tchk                     Set negative valus in timing check to zero

ncelab   -no_tchk_msg         Do not display timing check violation messages

ncelab   -delay_mode    distributed          ignore specify block delays

 

如果需要在simulator中設置breakpoint,那字啊compile的過程中,必須設置-linedebug option

irun中可以直接設置 -nclibdirpath來制定snapshot的路徑,進行仿真。

 

ncsdfc可以編譯和解壓縮sdf文件。

對於VHDL文件,必須手工用ncsdfc來編譯文件。

對於verilog文件,如果使用$sdf_annotate來進行annotation,如果annotator檢測到SDF文件是沒有編譯過的,elaborate會自動的編譯sdf文件。

如果使用SDF command文件,必須用ncsdfc事先編譯。

ncsdfc [-options] sdf_filename

ncsdfc  dcache.sdf  -output  mysdf.sdf.X   (-output重命名)

           -COmpile  (default option) 

ncprotect scale.sdf      (產生protected file)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM