2022年10月12日水曜日

DesignCompilerの電力解析結果

 ボスが面白いデータをくれた.DesignCompiler の電力解析結果である.乗算器を遅延制約を変えて合成している.

Period Intl     Switch Leak         Total
1 ns 636.4446 uW 523.31 uW 2.20E+04 nW 1.18E+03 uW
10 ns 63.6445 uW 52.331 uW 2.20E+04 nW 137.9381 uW
100 ns 6.3645 uW 5.2331 uW 2.20E+04 nW 33.5603 uW

すべて電力(ワット)で書かれているが,単なる和では Total は求まらない.

変換するにはエネルギーに変える.回路が同じだから処理あたりのエネルギーは同じ.
Intl+Sw (Power)        Intl+Sw (Energy)
1159.7546    nW 1159.76 fJ
115.9755     nW 1159.76 fJ
11.5976     nW 1159.76 fJ

リークもエネルギーに変える.単位時間に応じてリークは増える.
Leak (Energy)
2.20E+04 aJ
2.20E+05 aJ
2.20E+06 aJ

和を取ってエネルギーを求め,それをクロック時間で割って時間あたりのエネルギーである電力を計算する.結局,DesignCompilerの電力解析結果は,サイクルあたりの電力の総和を計算している事になる.
Total (Energy) Total (Power)
1.18E+03 fJ 1.18E+03 uW
1.38E+03 fJ 1.38E+02 uW
3.36E+03 fJ 3.36E+01 uW

[内部電力] = [内部エネルギー] / [時間]
[外部電力] = [外部エネルギー] / [時間]
[処理あたりのエネルギー] = [内部電力 + 外部電力 + リーク電力] * [時間] 
ということですね.