Design Compiler:布圖規劃探索(ICC)

相關閱讀

Design Compilerhttps://blog.csdn.net/weixin_45791458/category_12738116.html?spm=1001.2014.3001.5482


簡介

? ? ? ? 在Design Compiler Graphical中,可以用布圖規劃探索(Floorplan Exploration)功能,打開IC Compiler進行布圖規劃的創建、修改與分析。布圖規劃探索也是以二進制格式向IC Compiler傳遞物理信息的一種方法,另一種方法是在綜合時使用Synopsys Physical Guidance(SPG)技術。

? ? ? ? 在進行布圖規劃探索前,需要讀取設計,指定物理庫和邏輯庫,指定邏輯約束和物理約束(也可以使用默認物理約束),然后在中對設計進行物理綜合。綜合完成后,可以評估結果質量(QoR),并根據需要使用布圖規劃探索功能來創建新的布圖規劃或優化現有的布圖規劃,最后將其返回給Design Compiler。圖1展示了一個典型布圖規劃探索的流程。

圖1 布圖規劃探索的流程

?

設置布圖規劃探索

? ? ? ? 在使用布圖規劃探索時,需要滿足以下條件:

  • 設計必須是已映射(綜合)的,這是因為布圖規劃探索時,會創建臨時的Milkyway設計庫供IC Compiler使用,而這是Milkyway設計庫創建的前提。
  • 設計中的所有單元必須能夠鏈接到邏輯庫和物理庫。

????????在擁有一個已綜合完成并且已鏈接到邏輯庫和物理庫的設計之后,接下來需要進行以誒些設置,步驟如下:

1、在Design Compiler中使用gui_start命令打開用戶圖形界面(GUI)。

2、在用戶圖形界面中,選擇菜單項Window > New Layout Window打開布局窗口,如圖2所示。

圖2 打開布局視圖

3、選擇菜單項Floorplan > Set Design Planning Options打開設置對話框,如圖3所示。

圖3 設置選項框

4、在Work Directory輸入框中,輸入一個工作目錄的路徑。該目錄用于暫時存儲布圖規劃探索中的所需文件。如果沒有指定具體的目錄路徑,但指定了TMPDIR環境變量,系統會將這些文件存儲在$TMPDIR/dcg_unique_string目錄中,否則默認存儲在/tmp目錄下。

5、在ICC Executable輸入框中,輸入IC Compiler的可執行文件的路徑(可相對PATH環境變量)。

6、在File Name Prefix?輸入框中,輸入希望用于所有生成文件的文件名前綴。默認的文件命名前綴格式為%s_%d,其中%s表示設計名稱,%d表示進程ID。

7.(可選)如果希望保留在布圖規劃探索期間生成的文件,勾選Keep Files選項。該選項默認是未選中的,這意味著當布圖規劃探索退出時,所有生成的文件將被刪除。

8、點擊OK確認設置。

? ? ? ? 也可以使用set_icc_dp_options命令在dc_shell中完成上面的設置。

啟動布圖規劃探索

? ? ? ? 當完成了設置后,在用戶圖形界面中通過選擇菜單項Floorplan > Start Design Planning啟動布圖規劃探索會話,如圖4所示。

圖4 啟動布圖規劃探索會話

????????當進行此操作時,系統將自動完成以下任務:

  • Design Compiler啟動布圖規劃探索功能,并在IC Compiler布局窗口中啟用簡化的布圖規劃菜單。

  • Design Compiler會將所有邏輯約束和物理約束(部分不支持)傳送到IC Compiler,用于布圖規劃。

  • 在布圖規劃退出之前,Design Compiler的所有窗口和命令行都將被禁用。

????????也可以使用start_icc_dp命令在dc_shell中啟動布圖規劃探索。

使用布圖規劃探索

????????默認情況下,當啟用布圖規劃探索功能時,Design Compiler會將IC Compiler的布局窗口配置為僅包含執行布圖規劃所需的菜單,如圖5所示。

圖5?簡化版IC Compiler布局窗口

????????該布局窗口經過定制和簡化,以便RTL用戶使用,需要注意的是:簡化的只是菜單,而所有的布圖規劃命令依然可以在icc_shell中使用。

????????有些高級布圖規劃功能(例如plan groups)在簡化版菜單中是不可見的。如果是有經驗的IC Compiler用戶,或需要使用這些高級功能,可以切換到完整版菜單,如圖6所示,只需要選擇菜單項File > Task > Design Planning即可;如果用戶希望從完整版菜單切換回簡化版菜單,選擇菜單項File > Task > DCG-DP Link即可。

圖6?完整版IC Compiler布局窗口

????????當用戶在簡化版菜單與完整版菜單之間切換時,所有的布圖規劃更改都會被保留,也就是說:在完整菜單中所做的工作,在切換到簡化菜單后仍然可見;反之亦然。

創建與編輯布圖規劃

????????無論你使用的是簡化的Design Compiler Graphical布圖規劃菜單,還是完整的IC Compiler設計規劃菜單,IC Compiler的布局窗口都提供了交互式工具和命令,可用于創建或修改布圖規劃:

  • 使用編輯工具對對象進行:移動、縮放、復制、拆分、變形、對齊、分布、拉開、刪除等操作

  • 使用編輯命令執行:旋轉對象、擴展對象、或更改單元的朝向

????????如需了解更多關于在IC Compiler布局窗口中使用編輯工具與命令的信息,請查閱IC Compiler手冊。

保存或放棄布圖規劃修改

? ? ? ? 當完成了布圖規劃的編修改后,可以將其保存,步驟如下:

1、選擇菜單項Floorplan > Update DC Floorplan,打開對話框,如圖7所示(需要注意的是,該菜單項只在簡化版菜單可見)。

圖7 更新對話框

2、選擇兩項之一:Save current floorplan for DC表示將當前布圖規劃以DEF文件和TCL文件的格式保存在之前指定的工作目錄中,如果之前已經保存過,則會覆蓋;Discard DC floorplan updates表示刪除之前保存的布圖規劃。

3、點擊OK確認保存或刪除。

????????也可以使用update_dc_floorplan命令在icc_shell中保存布圖規劃。

退出布圖規劃探索

? ? ? ? 需要注意的是,即使將布圖規劃保存了,但要將其返回Design Compiler還需要在退出時進行選擇,步驟如下:

1、選擇菜單項Floorplan > Update DC Floorplan,打開退出對話框,如圖8所示。

圖8 退出對話框

2、選擇三項之一:Update DC with current floorplan表示將當前的布圖規劃(即使尚未保存)返回Design Compiler;Discard DC floorplan updates表示放棄當前和已保存的布圖規劃;Update DC with previously saved floorplan表示將已保存的布圖規劃返回Design Compiler。

3、點擊OK確認退出。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/92029.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/92029.shtml
英文地址,請注明出處:http://en.pswp.cn/web/92029.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

《藍牙低功耗音頻技術架構解析》

《2025GAS聲學大講堂—音頻產業創新技術公益講座》低功耗藍牙音頻系列專題LE Audio & Auracast?專題講座第1講將于8月7日周四19點開講,本次邀請了藍牙技術聯盟 技術與市場經理 魯公羽 演講,講座主題:《藍牙低功耗音頻技術架構解析》。&…

ubuntu apt安裝與dpkg安裝相互之間的關系

0. 問題解釋 在linux系統中,使用neofetch命令可以看到現在系統中使用dpkg, flatpak, snap安裝的包的數量,那么使用apt安裝的包被統計在什么位置了呢,使用apt的安裝流程和使用flatpak的安裝流程有什么關系和區別呢?1. apt 安裝的包在哪里&…

YooAsset源碼閱讀-Downloader篇

YooAsset源碼閱讀-Downloader 繼續 YooAsset 的 Downloader ,本文將詳細介紹如何創建下載器相關代碼 CreateResourceDownloaderByAll 關鍵類 PlayModeImpl.csResourceDownloaderOperation.csDownloaderOperation.csBundleInfo.cs CreateResourceDownloaderByAll 方法…

豆包新模型與 PromptPilot 實操體驗測評,AI 輔助創作的新范式探索

摘要:在 AI 技術飛速發展的當下,各類大模型及輔助工具層出不窮,為開發者和創作者帶來了全新的體驗。2025 年 7 月 30 日廈門站的火山方舟線下 Meetup,為我們提供了近距離接觸豆包新模型與 PromptPilot 的機會。本次重點體驗了實驗…

深入探討AI在測試領域的三大核心應用:自動化測試框架、智能缺陷檢測和A/B測試優化,并通過代碼示例、流程圖和圖表詳細解析其實現原理和應用場景。

引言隨著人工智能技術的飛速發展,軟件測試領域正在經歷一場深刻的變革。AI技術不僅提高了測試效率,還增強了測試的準確性和覆蓋范圍。本文將深入探討AI在測試領域的三大核心應用:自動化測試框架、智能缺陷檢測和A/B測試優化,并通過…

音視頻學習筆記

0.vs應用其他庫配置1基礎 1.1視頻基礎 音視頻錄制原理音視頻播放原理圖像表示rgb圖像表示yuvhttps://blog.51cto.com/u_7335580/2059670 https://blog.51cto.com/cto521/1944224 https://blog.csdn.net/mandagod/article/details/78605586?locationNum7&fps1 視頻主要概念…

LLM隱藏層狀態: outputs.hidden_states 是 MLP Residual 還是 Layer Norm

outputs.hidden_states 是 MLP Residual 還是 Layer Norm outputs.hidden_states 既不是單純的 MLP Residual,也不是單純的 Layer Norm,而是每一層所有組件(包括 Layer Norm、注意力、MLP、殘差連接等)處理后的最終隱藏狀態。具體需結合 Transformer 層的結構理解: 1. T…

XML 用途

XML 用途 引言 XML(可擴展標記語言)是一種用于存儲和傳輸數據的標記語言。自1998年推出以來,XML因其靈活性和可擴展性,在眾多領域得到了廣泛應用。本文將詳細介紹XML的用途,幫助讀者全面了解這一重要技術。 一、數據存…

亞馬遜撤離Google購物廣告:重構流量生態的戰略博弈

戰略突變:從漸進收縮到全面退潮的背后邏輯亞馬遜在2025年7月突然全面停止Google Shopping廣告投放,這場看似 abrupt 的決策實則經歷了一年多的戰略鋪墊,從2024年Q1開始的預算削減,到2025年Q2美國市場支出減半,直至核心…

【QT】常?控件詳解(三)常用按鈕控件PushButton RadioButton CheckButton Tool Button

文章目錄前言一、PushButton1.1 QAbstractButton1.2 添加圖標的按鈕1.3 給按鈕添加快捷鍵1.4 代碼?例:按鈕的重復觸發二、 RadioButtion2.1簡介2.2 幾個槽函數 click,press,release, toggled 的區別2.2 模擬分組點餐三、 CheckBox四、Tool Button🚩總結前言 一、P…

數據結構:反轉鏈表(reverse the linked list)

目錄 通過交換元素值實現反轉(reverse by swapping elements) 滑動指針(sliding pointers) 使用滑動指針反轉鏈表(Reversing a Linked List using Sliding Pointers) 對比分析 如何用遞歸(R…

【C#】基于SharpCompress實現壓縮包解壓功能

1.SharpCompress安裝 在vs的nuget下搜索安裝SharpCompress&#xff0c;如圖所示2.解壓縮包功能實現 /// <summary> /// 解壓壓縮包 /// </summary> /// <param name"filePath">壓縮包文件路徑</param> /// <param name"directoryPat…

mybatis連接PGSQL中對于json和jsonb的處理方法

pgsql數據庫表字段設置了jsonb格式&#xff1b;在java的實體里使用String或者對象轉換會一直提示一個錯誤&#xff1a; Caused by: org.postgresql.util.PSQLException: ERROR: column “xx” is of type jsonb but expression is of type character varying 需要加一個轉換方法…

Spring AI Alibaba Graph 深度解析:原理、架構與應用實踐

1. 引言概述 1.1 什么是 Spring AI Alibaba Graph Spring AI Alibaba Graph 是阿里云團隊基于 Spring AI 生態開發的一個強大的工作流編排框架&#xff0c;專門用于構建復雜的 AI 應用。它采用聲明式編程模型&#xff0c;通過圖結構來定義和管理 AI 工作流&#xff0c;讓開發…

C++少兒編程(二十一)—軟件執行流程

讓我們將以下程序視為用C編寫的示例程序。步驟1&#xff1a;預處理器將源代碼轉換為擴展代碼。當您運行程序時&#xff0c;源代碼首先被發送到稱為預處理器的工具。預處理器主要做兩件事&#xff1a;它會從程序中刪除注釋。它擴展了預處理器指令&#xff0c;如宏或文件包含。它…

精通Webpack搭建Vue2.0項目腳手架指南

本文還有配套的精品資源&#xff0c;點擊獲取 簡介&#xff1a;在Web應用程序開發中&#xff0c;Vue 2.0因其虛擬DOM、單文件組件、增強的生命周期鉤子和Vuex及Vue Router狀態管理與路由解決方案&#xff0c;成為了提高開發效率和代碼組織性的關鍵。Webpack作為必不可少的模…

無償分享120套開源數據可視化大屏H5模板

數據可視化跨越了語言、技術和專業的邊界&#xff0c;是能夠推動實現跨界溝通&#xff0c;實現國際間跨行業的創新的工具。正如畫家用顏料表達自我&#xff0c;作者用文字講述故事&#xff0c;而統計人員用數字溝通 ...... 同樣&#xff0c;數據可視化的核心還是傳達信息。而設…

Qt按鍵響應

信號與槽機制是一個非常強大的事件通信機制&#xff0c;是 Qt 最核心的機制之一&#xff0c;初學者掌握它之后&#xff0c;幾乎可以做任何交互操作。信號&#xff08;Signal&#xff09; 是一種“事件”或“通知”&#xff0c;比如按鈕被點擊、文本改變、窗口關閉等。 槽&#…

【Git】常見命令整理

Git分區與操作關系&#xff1a;Working Directory&#xff08;工作區&#xff0c;對于本地的編輯和修改在此進行&#xff09;->Staging Area&#xff08;暫存區/Index&#xff0c;在工作區進行git add操作后的位置&#xff09;->Git Repository&#xff08;本地倉庫&…

Linux-Shell腳本基礎用法

1.變量定義變量命名規則&#xff1a;可以包含字母&#xff0c;數字&#xff0c;下劃線&#xff0c;首字母不能用數字開頭&#xff0c;中間不能又空格&#xff1b;為變量賦值等號之間不能為空格&#xff1b;變量命名不能使用標點符號&#xff0c;不能使用bash的關鍵字&#xff1…