目錄
EDA 工具
Design Ware
Synopsys CoreTools 套件
VCS
verdi
Design Compiler
EDA 工具
常用的EDA工具主要來自三家公司:Synopsys、Cadence和Mentor(已被Siemens收購)。EDA,全稱電子設計自動化(Electronics Design Automation),在數字、模擬和混合集成電路的各個開發階段都發揮著重要作用。
🌟 RTL功能仿真:VCS+Verdi套裝或ModelSim是常用的功能仿真工具。VCS用于仿真,Verdi用于波形debug,在Linux下非常好用;ModelSim則兼具仿真和波形debug功能,在Windows下常用。功能仿真階段不區分FPGA或ASIC,工具通用;這些工具也可以進行后仿,即動態時序仿真。
形式驗證: Conformal ,??邏輯等效性檢查(Logic Equivalence Checking, LEC)工具??,屬于形式驗證的核心工具。常用的sign-off工具 :Primetime,
🌟 邏輯綜合:Synopsys的Design Compiler(DC)是常用的邏輯綜合工具。通常使用TCL腳本(工具命令語言),網上有豐富的相關資料。綜合階段還可以在工具內進行timing等分析,但結果不如PT準確。(RTL 轉成網表)
可測性設計:Tessent,
布局布線:Synopsys的ICC/ICC2是常用的布局布線工具,功能強大,可以根據用戶的floorplan自動完成布局優化和布線優化。工具還支持timing、DRC、LVS檢查等功能,但不是sign-off工具。
額外需要會的:
1、Tcl,Perl腳本開發
2、SOC頂層模塊 (時鐘/復位/電源管理/低功耗/管腳復用)的設計
3、一些隱藏的前端流程:
Lint(代碼規范性檢查,工具?Synopsys Spyglass, RTL編碼完成后立即運行)、
CDC (跨時鐘域檢查,??工具?Synopsys Spyglass CDC。功能與目的??
- ??同步性驗證??:確保跨時鐘域信號傳輸通過同步器(如兩級觸發器)處理,避免亞穩態。
- ??收斂性檢查??:檢測多信號跨時鐘域匯合時的時序沖突(如glitch)。
- ??復位同步??:驗證復位信號在不同時鐘域的同步邏輯。)、
?功耗分析 (??常用工具??:Synopsys PrimeTime PX(邏輯綜合后)Cadence Voltus(布局布線后)。??輸入文件??:門級網表、工藝庫(.db)、寄生參數文件、開關行為文件(SAIF/VCD))?
SDC 是 ??時序約束的行業標準格式??,用于定義設計的時序、面積和功耗目標,指導綜合(如Design Compiler)、布局布線(如IC Compiler)等工具優化電路。核心功能??:?約束時鐘(頻率、不確定性、延遲)。定義輸入/輸出時序(setup/hold)。指定設計規則(最大電容、轉換時間)。支持多電壓域和低功耗設計?
Design Ware
Synopsys公司提供的集成電路設計IP核庫和驗證工具集合,廣泛應用于SoC/ASIC開發中,涵蓋邏輯、算術、存儲等模塊,可優化綜合結果并縮短設計周期?。
?DesignWare的核心功能與特點?
- ?IP核庫多樣性?:包含超過140個獨立于工藝的已驗證模塊,如邏輯單元、算術運算器、存儲器及專用元件(如8051微控制器、PCI-X、USB2.0等)。??1
- ?與Design Compiler集成?:通過Synopsys綜合工具優化設計,顯著提升性能并減少開發時間。??1
- ?仿真模型支持?:提供17萬種器件功能級仿真模型,覆蓋FPGA、CPU(ARM/MIPS/PowerPC)及各類總線協議(PCI-X/AMBA/Ethernet等)。??
Synopsys CoreTools 套件
是一組專注于 ??IP核封裝、集成與驗證?? 的工具集,旨在提升基于IP的SoC設計效率與可靠性。以下是其核心組件及功能詳解:
coreConsultant??? √?
指導單個IP核的配置、驗證與實現,生成IP-XACT XML文件,支持圖形/命令行操作。
??典型場景??:配置AMBA AHB/AXI總線IP參數,生成定制化RTL和測試環境。
coreBuilder???:用于IP核的標準化封裝,支持多抽象層次(RTL、事務級模型等)的IP描述,并生成符合 ??IP-XACT?? 標準的元數據文件。
特點??:提供圖形化或命令行配置界面,支持設計意圖捕獲與質量流控制。生成?coreKit
?數據庫,便于后續工具調用。
??coreAssembler???:用不上。自動化IP子系統集成,生成互連邏輯、配置RTL及驗證環境(如測試平臺)。
??優勢??:支持混合語言設計(Verilog/VHDL),通過TCL接口實現流程定制。與Galaxy平臺集成,自動生成物理實現腳本,減少時序收斂時間。
VCS
vcs 的兩步流程將仿真分為 ??編譯(Compilation)?? 和 ??仿真(Simulation)?? 兩個獨立階段,適用于純Verilog/SystemVerilog設計:
?編譯階段??:?vcs [compile options] Verilog_files
VCS構建實例層次結構并生成二進制可執行文件? simv.??該二進制可執行文件隨后將用于模擬。(使用simv 跑 這個仿真)
舉例:vcs -v?lib_file.v -y ./lib_dir +libext+.v +incdir+./include design.v
-v filename?指定庫文件;
-y directory?庫目錄;
+incdir+目錄+:頭文件搜索路徑
+libext:包含+libext編譯時選項,以指定VCS在這些目錄中查找 文件的擴展名。
??其他選項??:
-full64
; 使能64位模式下的編譯和仿真;
-file filename; 指定一個包含文件列表和編譯時選項的文件
-verdi; 開啟Verdi
-R
;? 編譯后立即仿真;在VCS鏈接后立即運行可執行文件。
-parameters filename ;? 將文件中指定的參數值更改為文件中指定的值
-q ; 靜音模式;會抑制一些消息,例如關于C編譯器VCS正在使用的、VCS正在解析的源文件、頂級模塊或指定的時間尺度相關的消息。
-V ; 詳細模式;編譯器驅動程序在運行C編譯器、匯編器和鏈接器時打印它執行的命令。
-l compile.log
:編譯的日志記錄
+define+USETHIS ;? 宏在源文件中使用'ifdef 指令。如果未使用+define/則代碼中的else部分優先。
??仿真階段??:運行?simv
?
執行功能驗證或時序分析,支持Interactive Mode (調試)或Batch Mode(回歸)模式。
交互模式?Interactive Mode?
交互方式在設計周期的初始階段應用,主要是使用GUI或通過命令行調試。要使用GUI調試,可以使用Verdi,而要通過命令行界面調試,則可以使用統一命令行界面(UCLI)。使用交互模式,在編譯時要使用?-debug_access(+<option>)?
回歸模式 batch mode
設計后階段,僅需進行最低限度的調試,使用 此模式可以實現更好的性能。
命令??simv (對的!就這一個 simv 就夠了 )
模式?? | ??啟動方式?? | ??用途?? |
---|---|---|
??交互模式?? | simv -ucli ?或?simv -verdi | 動態調試(UCLI命令行/Verdi圖形界面) |
回歸模式? | simv | 自動化回歸測試,性能最優 |
verdi
交互模式下使用Verdi??
?simv -gui
后 處理模式下使用verdi?
verdi -ssf xxxx.fsdb?
Design Compiler
一種由Synopsys公司開發的電子設計自動化(EDA)工具,主要用于將硬件描述語言(如Verilog或VHDL)編寫的高層次電路設計轉換為優化的門級網表。
主要功能: 該工具能夠進行邏輯綜合、設計約束設置、時序分析等操作,以滿足設計的性能和面積要求。
Design Compiler (二)——DC綜合與Tcl語法結構概述_Design Compiler-CSDN專欄
dc_shell:?DC以命令行的格式啟動:$dc_shel,需要知道一些tcl的簡單語法。
.tcl 是個腳本
綜合后需要查看timing、area 符不符合需要;
綜合后的多個文件需要寫到一個ddc 文件里,或者一個netlist