SDC命令詳解:使用set_timing_derate命令進行約束

相關閱讀

SDC命令詳解https://blog.csdn.net/weixin_45791458/category_12931432.html?spm=1001.2014.3001.5482


目錄

????????指定降額比例

????????指定降額對象列表/集合

????????指定沿

????????指定最大、最小條件

????????指定早、晚條件

????????指定路徑的類型

????????指定降額類型

????????指定約束

????????指定增量

????????寫在最后? ? ? ?


????????由于制造工藝的偏差,一塊晶圓(Wafer)上的各個裸片(Die)擁有不同的特征,甚至一個裸片上的不同部位也可能出現偏差。前者稱為全局工藝偏差(Global Process Variation),后者稱為局部工藝偏差(Local Process Variation),這個偏差比全局工藝偏差小很多。

????????除了工藝參數(Process),PVT中的電壓(Voltage)和溫度(Temperature)在芯片上的分布也不是恒定的,PVT偏差這可能由下面幾種因素導致:

  1. PMOS晶體管和NMOS晶體管的電壓閾值偏差。
  2. PMOS晶體管和NMOS晶體管的溝道長度(尺寸)差異
  3. 由于電壓降(IR Drop)導致的晶體管電壓偏差。
  4. 局部熱點造成的溫度偏差。
  5. 互連線的刻蝕不均造成互連線電阻和電容的偏差。

? ? ? ? 上面的因素可以統稱為OCV(On-Chip Variation),即片上變化。OCV會影響芯片上不同區域的單元延遲和互連延遲,在普通的STA分析中,我們只會選擇一種工作條件(operating condition),并在此條件下分析,而沒有考慮芯片上各區域的差異。因此,為了更好地模擬OCV效應的影響,set_timing_derate命令允許設計者設置時序降額,簡單來說,就是允許某些路徑快一些,允許某些路徑慢一些,STA時會考慮到這些因素,從而分析最難滿足的情況。

? ? ? ? 下面是set_timing_derate命令的BNF范式(有關BNF范式,可以參考以往文章)為:

set_timing_deratevalue object_list[-rise] [-fall][-min] [-max][-early] [-late][-clock] [-data][-net_delay] [-cell_delay][-cell_check] [-min_period] [-min_pulse_width][-increment]//注:該命令的object_list參數一定要放在value參數后 

指定降額比例

? ? ? ? value參數指定了降額后的比例(在0.1到2之間),比如可以指定value為0.9,表示計算值為初始值的90%,即降額了10%。

指定降額對象列表/集合

? ? ? ? object_list用于指定降額值用于哪些對象,可以是葉單元、層次單元、庫單元。當不指定降額對象列表/集合時,降額值用于整個設計,當整個設計的降額值和單元的降額值沖突時,以單元的降額值為準。

????????對于列表而言,如果有多于一個對象,需要使用引號或大括號包圍(對使用集合無效),關于列表和集合的區別,可以參考下面的博客。

SDC命令詳解:使用集合(Collection)而不是字符串(String)/列表(List)作為命令參數https://chenzhang.blog.csdn.net/article/details/147144571

指定沿

????????-rise選項用于指定降額值作用于尾部是上升沿的時序弧、-fall選項用于指定降額值作用于尾部是下降沿的時序弧。如果這兩個選項都沒有指定,降額值同時作用于所有時序弧(相當于它們同時指定)。

指定最大、最小條件

????????-max選項用于指定降額值作用于最大延遲分析(一般情況下,如果不開啟on_chip_variation,這指的是建立時間檢查),-min選項用于指定降額值作用于最小延遲分析(一般情況下,如果不開啟on_chip_variation,這指的是保持時間檢查)。如果這兩個選項都沒有指定,降額值同時作用于最大延遲和最小延遲分析(相當于它們同時指定)。

指定早、晚條件

? ? ? ? -early和-late選項在set_clock_latency命令中也有,如下面的博客所示。

SDC命令詳解:使用set_clock_latency命令進行約束https://blog.csdn.net/weixin_45791458/article/details/136130769?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522290c4b7d417404a42653da4af39c2fc8%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=290c4b7d417404a42653da4af39c2fc8&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-136130769-null-null.nonecase&utm_term=set_clock_latency&spm=1018.2226.3001.4450????????-early選項用于指定降額值用于最快的路徑,-late選項用于指定降額值用于最慢的路徑。在建立時間分析和保持時間分析中,會對發射路徑和捕獲路徑的這點進行考慮,給出最差情況下的分析結果。如果這兩個選項都沒有指定,降額值同時作用于發射路徑和捕獲路徑(相當于它們同時指定)。為了與實際情況吻合,-early指定的降額值應小于1,-late指定的降額值應大于1。

? ? ? ? 具體來說,對于建立時間分析,發射路徑上的時鐘路徑和數據路徑會使用-late選項指定的最慢降額值,而捕獲路徑上的時鐘路徑和數據路徑會使用-early選項指定的最快降額值,這是最壞的情況下的結果;對于保持時間分析,發射路徑上的時鐘路徑和數據路徑會使用-early選項指定的最快降額值,而捕獲路徑上的時鐘路徑和數據路徑會使用-late選項指定的最慢降額值,這是最壞的情況下的結果。

指定路徑的類型

? ? ? ? -clock選項用于指定降額值只用于時鐘路徑,-data選項用于指定降額值只用于數據路徑。如果這兩個選項都沒有指定,降額值同時用于時鐘路徑和數據路徑(相當于它們同時指定)。

指定降額類型

????????-net_delay選項用于指定降額值只用于互連延遲,-cell_delay選項用于指定降額值只用于單元延遲,需要注意的是,-net_delay選項不能與對象列表/集合一起使用,因為互連延遲的指定是全局性的。

指定約束

? ? ? ? 默認情況下,建立時間、保持時間之類的時序約束不會被降額。

????????-cell_check選項指定對單元的建立時間、保持時間約束應用降額,該選項不能與-clock、-data、-cell_delay、-net_delay選項一起使用。需要注意的是,set_input_delay命令設置的輸入延遲和set_output_delay命令輸出延遲不會被降額影響。

????????-min_period選項指定對單元的最小周期約束應用降額,該選項只能與-rise、-fall選項一起使用,此時-rise選項表示使用上升沿到上升沿計算周期,-fall選項表示使用下降沿到下降沿計算周期。

????????-min_pulse_width選項指定對單元的最小脈沖寬度約束應用降額,該選項只能與-rise、-fall選項一起使用,此時-rise選項表示高電平脈沖寬度,-fall選項表示低電平脈沖寬度。

指定增量

? ? ? ? -increment選項用于設置增量降額值,總降額值為基準降額值加增量降額值。

寫在最后? ? ? ?

? ? ? ? 隨著工藝尺寸的不斷縮小,靜態時序分析受到的制造過程變化影響日益顯著。傳統的解決方案是使用一個全局的固定系數(set_timing_derate命令)來為設計添加裕量,以應對片上變化(On Chip Variation, OCV),雖然在130nm和90nm工藝節點時仍屬合理,但在更先進的制程中已顯得過于保守,帶來了過度設計、性能下降和設計周期延長等問題。

? ? ? ? 為解決這一挑戰,PrimeTime在2008年左右引入了高級片上變化(AOCV)技術,這是對傳統OCV方法的自然擴展,它通過更細致和上下文相關的建模方式,為設計提供了更真實、低悲觀度的時序裕量控制。

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

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

相關文章

C++語言程序設計——03 進制ASCII碼

目錄一、進制表示與轉換(一)不同進制表示(二)進制轉換方法二、ASCII 碼(一)ASCII 碼表(二)ASCII 碼轉換(三)大小寫英文字母轉換【總結:如何記憶AS…

AtCoder Beginner Contest 420-Toggle Maze

題目描述 有一個 H行 W 列的網格。用 (i,j) 表示位于第 i 行(從上往下數)第 j 列(從左往右數)的格子。每個格子的狀態用字符 Ai,j表示,含義如下: . :空格子。 #’ :障礙格子。 S &am…

20、DMA----釋放CPU壓力,加快傳輸

1、DMA介紹DMA,全稱為:Direct Memory Access,即直接存儲器訪問。DMA傳輸方式無需CPU直接控制傳輸,也沒有中斷處理方式那樣保留現場和恢復現場的過程,通過硬件為RAM與I/O設備開辟一條直接傳送數據的通路,能使…

深入OpenHarmony OTA硬核升級

技術背景 OpenHarmony OTA(Over-The-Air)升級子系統為設備提供了遠程升級能力,通過統一的升級接口屏蔽底層芯片差異,支持輕量系統、小型系統和標準系統的全量升級、差分升級和變分區升級。 核心特性 跨系統支持:覆蓋輕量系統(Hi3861)、小型系統(Hi3516DV300)、標準系…

華為iVS1800接入SVMSPro平臺

華為iVS1800接入SVMSPro平臺 ** 華為好望Huawei HolosensIVS1800智能視頻云平臺采用首款昇騰310加持的嵌入式系統智能微邊緣,獨俱普惠AI鴻力。一臺融合存儲、計算、檢索功能,滿足小型園區、社區、銀行網點、超市等場景安防需求,小機大智。 …

《異形戰機2》v2.0.4數字豪華版,3D橫版射擊再臨,機體武器海量升級

[游戲名稱]: 《異形戰機2》v2.0.4數字豪華版 [軟件大小]: 17.7 GB [軟件大小]: 夸克網盤 | 百度網盤 游戲介紹 《異形戰機:最終版2》續作震撼登場!經典橫版射擊全面升級:3D 畫面炫目、關卡與機體海量擴充,只為帶來酣暢淋漓的滅…

Java 異常(Throwable)

1. Throwable Throwable: 所有異常和錯誤的根類。實現 Throwable 或其子類的對象才能被 throw 或 catch。 Error: 表示嚴重的系統級問題,通常不應該被捕獲或處理,程序通常無法從中恢復。 Exception: 表示程序可以處理的問題。分為 運行時異常、 受檢異常…

rocketmq常用命令

官方文檔 https://rocketmq.apache.org/zh/docs/ https://rocketmq.apache.org/zh/docs/domainModel/02topic/ https://rocketmq.apache.org/zh/docs/4.x/deployment/02admintool 集群配置管理 https://mp.weixin.qq.com/s/688wNSwZPraGvAnr0K7hRw RocketMQ運維管理命令mqadm…

【C++詳解】哈希表概念與實現 開放定址法和鏈地址法、處理哈希沖突、哈希函數介紹

文章目錄一、unordered系列的使用unordered_set類的介紹unordered_set和set的使?差異unordered_map和map的使?差異unordered_xxx的哈希相關接?二、哈希表實現哈希概念直接定址法哈希沖突負載因?將關鍵字轉為整數哈希函數除法散列法/除留余數法乘法散列法處理哈希沖突開放定…

電影感人文街拍擺攤紀實攝影后期Lr調色教程,手機濾鏡PS+Lightroom預設下載!

調色介紹電影感人文街拍擺攤紀實攝影后期 Lr 調色是一種專注于捕捉街頭生活煙火氣的攝影風格,通過 Lightroom 后期調色賦予畫面電影般的敘事感和情感深度。這種風格以擺攤小販、市井行人、街頭場景為主體,強調真實、自然的生活瞬間。調色核心在于低飽和暖…

【數據分享】298個地級市人工智能企業數量(1990-2023)

數據介紹引言人工智能產業作為數字經濟的核心驅動力,其發展規模與分布格局深刻反映區域科技創新活力與產業升級潛力。為助力相關研究,本文分享一份涵蓋全國 298 個地級市 1990-2023 年的人工智能企業核心數據,包含人工智能企業存量和人工智能…

LeetCode 面試經典 150_雙指針_驗證回文串(25_125_C++_簡單)(雙指針)

LeetCode 面試經典 150_數組/字符串_驗證回文串(25_125_C_簡單)題目描述:輸入輸出樣例:題解:解題思路:思路一(雙指針):代碼實現代碼實現(思路一(雙…

無障礙輔助模塊|Highcharts引領可訪問數據可視化的交流

在現代數據可視化中,無障礙輔助技術已成為必不可少的一部分。對于視障人士或使用屏幕閱讀器的用戶來說,傳統圖表往往難以獲取有效信息,而 Highcharts 在設計之初便充分考慮了無障礙體驗。 Highcharts作為可訪問數據可視化的倡導者&#xff0…

從0到1:數據庫進階之路,解鎖SQL與架構的奧秘

目錄一、SQL 基礎啟航1.1 SQL 基礎語法1.2 SQL 進階查詢1.3 SQL 實戰案例分析二、分庫分表實戰2.1 分庫分表的背景與原理2.2 分庫分表策略設計2.3 分布式 ID 生成2.4 數據遷移方案三、中間件實戰3.1 中間件概述3.2 DBLE 中間件實戰3.3 MyCat 中間件實戰四、高可用架構搭建4.1 高…

【數據結構入門】排序算法(2):直接選擇排序->堆排序

目錄 1.直接選擇排序 1.1 思想 1.2 代碼 2.堆排序 2.1 向下調整算法 2.1.1 代碼 2.2 建堆 2.2.1 代碼 2.3 正式排序 2.3.1 代碼 3. 冒泡排序 3.1 思路 3.1.1 單趟排序 3.1.2 多趟排序 3.1.3優化 3.2 代碼 1.直接選擇排序 1.1 思想 每次從未排序區中選擇一個最小…

Fluent Bit系列:字符集轉碼測試(下)

#作者:程宏斌 文章目錄fluent-bit 1.9.4 轉換測試結論接上篇:《Fluent Bit系列:字符集轉碼測試(上)》https://blog.csdn.net/qq_40477248/article/details/150776142?spm1001.2014.3001.5501fluent-bit 1.9.4 轉換測試…

redis-緩存-持久化

redis-緩存-持久化一、來因宮1、啥叫持久化?為何需要持久化?2、redis持久化方案2.1、RDB - 快照持久化A、定義原理B、快照生成流程:Copy-on-Write(寫時復制)C、dump.rdb文件說明D、RDB 數據恢復流程E、RDB的優缺點2.2、…

C++11(Linux/GCC)字節序工具

#pragma once #include <cstdint> #include <climits> #include <type_traits> // 用于類型檢查// 端序宏獲取&#xff08;保持原有邏輯&#xff09; #if __has_include(<endian.h>)#include <endian.h> #elif __has_include(<bits/endian.h…

【MTCNN網絡結構記憶卡片】--003nets.py

&#x1f9e0; MTCNN網絡結構記憶卡片 &#xfffd;&#xfffd; 基礎概念速查 &#x1f524; 庫引入&#xff1a;import torch 和 import torch.nn as nn import torch # PyTorch深度學習框架 import torch.nn as nn # nn Neural Networks (神經網絡)&#x1f3d7;?…

可視化-模塊1-HTML-03

1.發現問題<p>大數據可視化技術及應用課程</p> <img src"pic/圖片2.png" width"300" height"300"/><p></p><img />HTML 標簽按閉合方式只分兩類&#xff1a;雙標簽&#xff08;paired / container&#xff…