常用EDA軟件安裝,操作方法,常見錯誤和警告(synopsys cadence AD)

Synopsys

DC

安裝:基於centos7 / 虛擬機

1. license太舊,LicGen生成synopsys.dat失敗
編輯synopsys.src文件,將第一行的時間改後一點

2. syn.log顯示failed to open the tcp port number in the license
原因是lmgrd已經在運行,佔用了同一端口。解決方法:要麼更換端口(太麻煩),要麼輸入ps查看lmgrd的ID號,然後kill掉它。

3.license打開之後,syn.log裏顯示無有效hostid,如

應該是網卡名不一致,虛擬機配置文件裏如果ethernet0.generatedAddress = "00:0c:29:c8:3d:11"(舉例),centos7裏同樣MAC地址的網卡名應是eth0。解決方法是打開ifconfig查看哪個網卡MAC一樣,修改該網卡名爲eth0。修改後可通過lmhostid查看MAC地址是否爲00:0c:29:c8:3d:11。

4. 終端中輸入dc,no such file or directory

缺少庫,直接安裝就好了 yum install libncurses.so.5;後面可能還會出現類似錯誤,那就缺啥裝啥就好了。

5. intaller中打開安裝軟件路徑一直顯示 is not valid.(即使存在..._linux.tar和..._common.tar)
intaller版本太老,換個新的試試

操作(dc_shell):

  • 一些重要命令:

list_designs    #顯示verilog設計文件
remove_design -hierarchy      #移除工作區的verilog文件
analyse -format verilog [ list top.v file1.v file2.v ]       #讀取並編譯三個設計文件
elaborate -architecture verilog top                             #指定top文件並netlist

check_design                      #綜合前檢查設計文件的語法錯誤;若返回0,則要檢查設計文件

reset_design                       #清楚以前所有的約束

create_clock -period 2 [ get_ports CLK ]     #創建時鐘線端口CLK,輸入週期爲2ns,佔空比默認爲0.5
set_input_delya -max 0.8 -clock CLK [ get_ports C ]     #設置輸入端口C相對於時鐘線CLK端口輸入延遲最大爲0.8ns
remove _input_delay [ get_ports CLK ]   #移除CLK端口的輸入延遲
set_output_delay -max 0.5 -clock CLK  [ all_outputs ]     #設置所有輸出端口相對於時鐘線CLK端口輸出延遲0.5ns
remove_from_collection [ all_port ] [ get_ports CLK ]     #設置排除掉CLK端口的所有其他端口

compile   -map_effort high  -area_effort high  -boundary_optimization   #綜合

report_constraint -all_violators         #檢查有無違規

set_false_path -from [get_clocks CLK1] -to [gets_clocks CLK2]         #告訴DC不要在這條路徑進行約束
set_clock_groups -logically_exclusive -group CLK1 -group CLK2      #邏輯互斥,作用上同

set_clock_groups -asynchronous -group CLK1 -group CLK2                #異步時鐘,無需做優化

  • timing

check_timing                   #檢查設計中有無port沒有約束
report_timing                   #報告時序問題,設計中的最差路徑。寄存器間的時間差要小於路徑時間
report_timing   -max_path 2         #報告slack最長的分別指向兩個寄存器的路徑
report_timing   -nworst_path 2     #報告slack最長的兩個路徑

report_timing_requirements -ignored       #報告set_false_path等異常約束

  • retiming優化
    修復時序違規

非pipline結構的時序優化可使用adaptive retiming;
pipline結構時序優化可採用register retiming 

VCS:

ERROR:

  1. error-[SFCOR]
    打開terminal的位置和放code的位置不對應,將terminal的運行目錄轉至file_list.f的位置即可

 

Cadence

virtuoso

操作:

1. 仿真後器件顯示的參數疊加在一起,可在CIW窗口中輸入aelPushSignifDigits(x),調整參數有效位數爲x。

ERROR:

  1. error SFE-23 xx is an instance of undefined model

這是因爲ADE仿真模型找不到,解決:在setup裏的model library裏添加相應的.scs文件或者.lib文件,注意section添加相應的屬性。有的時候仍然會存在有些元件找不到的情況,只要添加該元件相應的庫即可,例如

 

 

Altium Designer

error:

1.Net TDO has only one pin (Pin U3-39)

   解決:放置網絡標號的時候需要在導線上出現紅色的X字,纔算成功添加,不然的話就是沒有連上

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章