CMOS電路中的功耗分為兩部分:靜態功耗和動態功耗;
靜態功耗是由漏電流引起的功耗;動態功耗分為翻轉功耗和短路功耗,翻轉功耗也就是0與1翻轉所引發的功耗,而短路功耗則是由于PMOS和NMOS都導通時所引起的功耗。
最行之有效的低功耗手段:關斷電源。前面小編也介紹了SoC的低功耗設計—isolation,今天介紹power switch cell。
不論采用多低的電壓、多低的時鐘頻率、多小的leakage庫,都不如徹底關掉某些功能模塊的電壓來的徹底。當然,power-gating的加入明顯增加了設計復雜度,從架構設計、RTL、驗證、DFT、后端實現到signoff都需要一套完整的流程體系/方法學支撐。
Powerswitch cell分為HEAD型、FOOT型兩種:
HEAD型:
SLEEP為1時,VDD被關斷。
SLEEP為0時,VDD打開。
FOOT型:
HEAD型是關斷VDD,FOOT型是關斷VSS的,很少用。
上圖可知,Power switch cell是由PMOS/NMOS管子構成,不同于強電電路中的接觸開關,強電開關一個器件能提供非常大的電流來開關電路,但是一個MOS管的驅動能力是非常有限的,因此,一顆SoC芯片會使用大量的power switch cell,需要根據設計的電流、power switch cell的驅動電流等參數計算所需要的power switch cell的數目。
一般power switch cell和standard cell一樣放進row中,電源上層金屬連接到power switch cell的輸入端VDDG(VDD Global),輸出端則連接到power rail,SLEEP信號作為使能,控制rail與上層金屬的斷開/連接來實現電源關斷。
具體是如何連接的呢,具體是如何連接的呢,移步知識星球。
景芯SoC全流程培訓,有同學遇到power switch的問題如下:
power switch的secondaryPowerPin是下圖的VDD(連接電源VDDS),power switch的VDDG pin接power switch的輸入電壓VDD。景芯SOC后端實現時,發現secondaryPowerPin和power stripe(M5)連接時候總是連接的M1,而不是紅色的M2金屬。
如下:secondaryPowerPin和power stripe(M5)連接時候總是連接的M1,而不是紅色的M2金屬。
打開CELL visibility,看到中間的stripe是VDD且接的M1(藍色),為何接M1而不是M2(紅色)?
具體原因參見知識星球。
一鍵式完成C代碼編譯、仿真、綜合、DFT插入、形式驗證、布局布線、寄生參數抽取、STA分析、DRC/LVS、后仿真、形式驗證、功耗分析等全流程。升級后的芯片設計工程V2.0 flow如下:
SoC一鍵式執行flow
MIPI DPHY+CSI2解碼
數字電路中經典設計:多條通信數據Lane Merging設計實現
數字電路中經典設計:多條通信數據Lane Distribution實現
UPF低功耗設計
全芯片UPF低功耗設計(含DFT設計)
景芯SoC訓練營培訓項目,低功耗設計前,功耗為27.9mW。
低功耗設計后,功耗為0.285mW,功耗降低98.9%!
電壓降檢查:
低功耗檢查:
芯片的版圖設計V1.0
芯片的版圖設計V2.0
低功耗設計的DRC/LVS,芯片頂層的LVS實踐價值極高,具有挑戰性!業界獨一無二的經驗分享。
ISP圖像處理
dpc - 壞點校正
blc - 黑電平校正
bnr - 拜耳降噪
dgain - 數字增益
demosaic - 去馬賽克
wb - 白平衡增益
ccm - 色彩校正矩陣
csc - 色彩空間轉換 (基于整數優化的RGB2YUV轉換公式)
gamma - Gamma校正 (對亮度基于查表的Gamma校正)
ee - 邊緣增強
stat_ae - 自動曝光統計
stat_awb - 自動白平衡統計
CNN圖像識別
支持手寫數字的AI識別:
仿真結果:仿真識別上圖7、2、1、0、4、1、4、9
7天沖刺PR訓練營有同學問如何給IO添加PAD?請思考景芯SoC的IO和PAD如何實現最佳?
7天沖刺PR訓練營有同學問,同樣的floorplan,有些同學很快跑完,有些同學則遇到大量DRC問題(EDA工具不停iteration)導致工具始終無法跑完,具體什么問題呢?
首先,小編發現該同學的stripe把TM2定義為了horizontal,而熟悉景芯工藝的同學知道,TM2的preference direction是VERTICAL。
查詢景芯的lef庫文件也可以確認:
用錯方向有多大影響呢?大家上景芯SoC的后端flow實踐一下吧,實踐出真知。
7天沖刺PR訓練營有同學問,為啥PR花了一天一夜24個小時完成布線還大量DRC錯誤?小編已經將設計規模盡可能減小以加速PR設計,實際上2小時就可以跑完routing,為何這么慢?原因就是低功耗單元的走線。具體原因及解決辦法歡迎加入景芯訓練營討論。
其錯誤主要集中在M4上,請思考如何解決。
7天沖刺PR訓練營有同學問,power switch cell的secondPG pin(VDDG)從M1接出的,而不是M2, 請思考有什么問題?如何解決?
7天沖刺PR訓練營有同學問,景芯SoC培訓營同學遇到Corner Pad LVS不過怎么處理?
完成景芯SoC培訓的前端設計仿真、DFT后,我們來到后端flow,本教程教你一鍵式跑完數字后端flow。
生成腳本命令如下:
tclsh ./SCRIPTS/gen_flow.tcl -m flat all
生成flow腳本之前需要配置setup.tcl等相關參數,具體參見【全網唯一】【全棧芯片工程師】提供自研的景芯SoC前端工程、DFT工程、后端工程,帶你從算法、前端、DFT到后端全流程參與SoC項目設計。
景芯SoC訓練營的同學問,為何innovus讀取做好的floorplandef文件報Error?首先看log:
Reading floorplan file - ./data_in/DIGITAL_TOP.def (mem = 1595.0M).
#% Begin Load floorplan data ... (date=10/23 2201, mem=1579.3M)
**ERROR: (IMPFP-710): File version unknown is too old.
以前EDI的時期,我們可以通過定義fp_file的方式來加載floorplan:
set vars(fp_file) "./data_in/DIGITAL_TOP.def"
但是現在innovus升級并放棄了fp_file的加載方式,當然也可以用老版本的EDI9.1及以前版本來加入fp_file,然后轉存為新版本,這方式明顯沒有必要。正如下log提示所說,檢查log是非常好的工程師習慣。
Input floorplan file is too old and is not supported in EDI 10.1 and newer.
You can use EDI 9.1 and before to read it in, then save again to create new version.
小編的直覺告訴我,先去看看同學保存的def文件是哪個def版本?
同學保存方式如下:
那么請問如何解決?請大家加入景芯訓練營實踐。
景芯SoC用了很多異步FIFO,關注異步RTL實現的同學,可以抓取異步FIFO出來看一下版圖連線:
查看下所有異步FIFO cell的面積;
dbget [dbget top.insts.pstatus unplaced -p].area
查下所有異步FIFO的cell的名字:
dbget [dbget top.insts.pstatus unplaced -p].name
那么怎么抓出異步路徑來觀察版圖走線呢?如何讓report_timing呢?更多內容參見知識星球和SoC訓練營。
審核編輯:湯梓紅
-
動態功耗
+關注
關注
0文章
12瀏覽量
11553 -
靜態功耗
+關注
關注
0文章
17瀏覽量
8965 -
低功耗設計
+關注
關注
0文章
80瀏覽量
16199 -
CMOS電路
+關注
關注
0文章
49瀏覽量
11591
原文標題:低功耗設計之Power Switch Cell
文章出處:【微信號:全棧芯片工程師,微信公眾號:全棧芯片工程師】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論