字丑,禁止轉載!
這里將理論總結和實踐放在一起了。
布線的理論總結如下所示:
下面是使用ICC進行實踐的流程:
本次的布線實驗主要達成的目標是:
·對具有時鍾樹布局后的設計進行可布線性檢查
·完成布線
·完成初始布線和初始布線后的優化
·分析設計的 時序、邏輯和物理的DRC、LVS違規
·修復LVS錯誤
·使用顏色突出來分析設計的各個方面
具體流程為:
首先准備下面的文件:
·加載設計的設置和公共的設置
--->打開庫和相應的設計,啟動GUI
--->檢查max庫是否和min庫對應:list_libs
--->加載在設計在布局和CTS階段期間使用的公共設置,以及布線階段也
需要的公共設置(這里需要注意,有些命令在新的版本中):
source scripts/common_optimization_settings_icc.tcl
source scripts/common_placement_settings.tcl
source scripts/common_post_cts_timing_settings.tcl
source scripts/common_route_si_settings_zrt_icc.tcl
·進行布線前的檢查,確保已經准備好布線
--->查看是否有建立時間、保持時間以及邏輯上的設計規則違例:
report_constraint -all
--->沒有理想的網絡和沒有高扇出網絡:
all_ideal_nets
all_high_fanout -nets -threshold 501(扇出大於501pf的就列出)
--->首選布線方向是否符合預期,並加載TLUPlus文件:
report_preferred_routing_direction
report_tlu_plus_files
--->檢查所有布局位置是否合法:check_legality
--->檢查所有電源和接地引腳是否物理連接到P / G網絡(也就是查看是否有懸空):verify_pg_nets
--->如果有,進行移除並且再檢查:preroute_standard_cells -remove_floating_pieces
verify_pg_nets
·進行布線和優化設計
--->首先允許插入冗余通孔,使設計中的冗余通孔隨布線更改保持最新:
set_route_zrt_common_options -post_detail_route_redundant_via_insertion medium
set_route_zrt_detail_options -optimize_wire_via_effort_level medium
--->檢查非默認布線規則和布線設置:
report_routing_rules; # report routing rules
report_route_opt_strategy; # report route_opt_stretegy
report_route_zrt_common_options; # Reports zrt common route options
report_route_zrt_global_options; # Reports zrt global route options
report_route_zrt_track_options; # Reports zrt route track assignment options
report_route_zrt_detail_options; # Reports zrt detail route options
--->進行初始布線(初始布線包括:全局布線,路線分配和詳細布線):
route_opt -initial_route_only
--->初始布線完成后,生成相應的報告:
view report_clock_tree -summary(總結)
view report_clock_timing -type skew(偏移)
view report_qor(質量)
view report_constraint -all(違例報告)
--->進行優化布線,解決違規(同時優化功耗):
route_opt -skip_initial_route -power
--->確認布線之后,電源地的邏輯連接是最新的(即重新進行電源地的邏輯連接):
derive_pg_connection -power_net VDD -power_pin VDD -ground_net VSS -ground_pin VSS
derive_pg_connection -power_net VDD -ground_net VSS -tie
·進行DRC和LVS的檢查和修復
--->查看是否有物理上的DRC錯誤、以及LVS是否通過:
verify_zrt_route (DRC)
verify_lvs (LVS)
--->如果有錯誤,進行修復:
route_opt –incremental
不行的話,就進行:route_zrt_eco
--->查看冗余通孔插入后的版圖報告:report_design_physical -route
--->保存設計
·通過layout GUI窗口查看布線后的各種圖形情況,比如布線后的時鍾樹形狀、擁塞情況、slack的分布、層次模塊在版圖中的各個位置等等