IC Compile rでは通常使用する配線長に制約はない.意図的に制約を設けたいときは,
set_max_length オプションを使用することができる.
> set_max_length integer design
このオプションは設計者がトップレベルで配線バッファを挿入することを想定しているので,バッファ挿入コマンド create_buffer_tree と併用することが想定されている.
> set_max_length integer design
> create_buffer_tree -on_route
create_buffer_tree コマンドを実行するとバッファの挿入と配線がされてしまうので,配線を後でしたい場合は -skip_detail_route オプションをつけるとよい.
2020年8月23日日曜日
2020年8月21日金曜日
Calibre で cell is referenced but not defined とエラーが出る
Calibre LVS で
ERROR: Cell cellname is referenced but not defined
と表示されて LVS が止まる場合,GDS 中で参照されているセルのレイアウトが空である可能性がある.例えば参照している Milkyway が参照している Milkyway (孫)の参照が切れた状態で GDS を出力すると,孫に格納されていた Cell View が読み取れず空のレイアウトができてしまい,LVS が実行できなくなる.
とりあえず動かしたい場合は,空の GDS を参照しているマクロを GDS とソースネットから削除すれば LVS が動くようになる.
ソースネットではなくて GDS に問題があるので注意.なお DRC でも同じ違反がでます.
ERROR: Cell cellname is referenced but not defined
と表示されて LVS が止まる場合,GDS 中で参照されているセルのレイアウトが空である可能性がある.例えば参照している Milkyway が参照している Milkyway (孫)の参照が切れた状態で GDS を出力すると,孫に格納されていた Cell View が読み取れず空のレイアウトができてしまい,LVS が実行できなくなる.
とりあえず動かしたい場合は,空の GDS を参照しているマクロを GDS とソースネットから削除すれば LVS が動くようになる.
ソースネットではなくて GDS に問題があるので注意.なお DRC でも同じ違反がでます.
2020年8月12日水曜日
Mi Max 3
寿司食って膨らんだ男が浅草で爆発するCMで有名なXaomiのMi Max 3を買った.4月1日に注文したのに届いたのは4月22日だった.Amazon.co.jpで買ったのに中国直送とは思ってなかった…(COVID-19で物流が混乱している中申し訳なかった).
デカイデカイ言われるけれど,XPERIAより一回りちいさい.片手で十分持てる.
なぜかマスク2枚入ってた.日本でCOVID-19流行っているからかな,ありがたや.
デカイデカイ言われるけれど,XPERIAより一回りちいさい.片手で十分持てる.
なぜかマスク2枚入ってた.日本でCOVID-19流行っているからかな,ありがたや.
2020年8月4日火曜日
Calibre xRC/xACT の出力ファイルを1つにまとめる
Calibre xRC/xACTの出力ファイルは,なぜか3つのファイルが出力される.手動でまとめてもよいが,Calibreのルールファイル中のネットリスト名指定時に SINGLEFILE オプションを与える事ではじめから1つのファイルに設定することができる.
PEX NETLIST "CELLNAME.spi" HSPICE 1 SOURCENAMES SINGLEFILE
PEX NETLIST "CELLNAME.spi" HSPICE 1 SOURCENAMES SINGLEFILE
2020年8月1日土曜日
BSIM-CMGでトランジスタ特性をばらつかせる
BSIM-CMGでトランジスタ特性をばらつかせるには,以下のモデルパラメータが利用できる.DELVTRAND,U0MULT,ISD0MULT以外はモデルパラメータとしてあらかじめ存在しているものである.
パラメータ:初期値:説明
DTEMP :0 K:デバイスの温度シフト量
DELVTRAND:0 V :閾値電圧シフト量
U0MULT:1.0 :移動度の係数
IDS0MULT:1.0 :ソースドレイン間チャネル電流の係数
TFIN:15e-9 m:Finの厚み
FPITCH:80e-9 m:Finピッチ
XL:0.0 m:マスク/エッチによるゲート長シフト量
NBODY:1e-22 m-3:チャネルドープ濃度
EOT:1e-9 m :実効ゲート酸化膜厚
TOXP:1.2e-9 m:実ゲート酸化膜厚
RSHS:0.0 Ω:ソースシート抵抗
RSHD:0.0 Ω:ドレインシート抵抗
RHOC:1e-12 Ω-m^2:シリコンシリサイド界面のコンタクト抵抗
RHORSD:計算される:ソースドレインの盛り上がり部の平均抵抗
Reference: BSIM-CMG 110.0.0 Multi-Gate MOSFET Compact Model Technical Manual, 2015
パラメータ:初期値:説明
DTEMP :0 K:デバイスの温度シフト量
DELVTRAND:0 V :閾値電圧シフト量
U0MULT:1.0 :移動度の係数
IDS0MULT:1.0 :ソースドレイン間チャネル電流の係数
TFIN:15e-9 m:Finの厚み
FPITCH:80e-9 m:Finピッチ
XL:0.0 m:マスク/エッチによるゲート長シフト量
NBODY:1e-22 m-3:チャネルドープ濃度
EOT:1e-9 m :実効ゲート酸化膜厚
TOXP:1.2e-9 m:実ゲート酸化膜厚
RSHS:0.0 Ω:ソースシート抵抗
RSHD:0.0 Ω:ドレインシート抵抗
RHOC:1e-12 Ω-m^2:シリコンシリサイド界面のコンタクト抵抗
RHORSD:計算される:ソースドレインの盛り上がり部の平均抵抗
Reference: BSIM-CMG 110.0.0 Multi-Gate MOSFET Compact Model Technical Manual, 2015
2020年7月25日土曜日
2020年6月26日金曜日
BSIM4 level 72におけるトランジスタ構造オプション
BSIM4 level 72 (BSIM-CMG)モデルは,一つのモデル式で様々な形状のトランジスタを表すことが可能である.近年のデバイス構造の進化によって様々なトランジスタ構造が提案されている.モデル式の中でトランジスタ構造を選択するオプションがあるので紹介する.
BULKMOD: default 1
BULK/SOIセレクターで,1だとBULK.
GEOMOD:default 1
ゲート構造セレクター.0はdouble gate, 1はtripple gate,2はquadruple gate,4はcylindrical gate
BULKMOD: default 1
BULK/SOIセレクターで,1だとBULK.
GEOMOD:default 1
ゲート構造セレクター.0はdouble gate, 1はtripple gate,2はquadruple gate,4はcylindrical gate
2020年6月19日金曜日
SiliconSmart のタイムステップ
SiliconSmart が呼び出すシミュレータのタイムステップは以下のパラメータで制御できる.
time_res_high
クリティカルな解析におけるシミュレーションタイムステップの最大値.高精度な過渡解析で必要となる最小の時間解像度となる.
デフォルト値:1e-12
レンジ:1e-15~1e-3
time_res_low
シミュレーションタイムステップの最大値.荒い時間分解の最大値となる.
デフォルト値:100e-12
レンジ:1e-15~1e-3
ちなみに,time_res_high のデフォルト値は 2016 はマニュアルの記載では 1e-10 なのだが,誤植です.Magma 発行の 2007 のマニュアルには 1e-12 が記載されていた.長年の疑問が解けた..
2020年6月16日火曜日
Libertyモデル(.lib)における,index_1とindex_2のxy軸対応
index_1がy軸,index_2が横軸.
fall_constraint(mpw){
index_1("0.1, 0.2, 0.3");
index_2("0.1, 0.2");
values( "1.10 1.11", \
"1.12 1.13" \
"1.14 1.15");
}
index_x,index_yとすればよかったのにね.開発当時多次元Matrixを想定していなかったのだろう.Liberty のフォーマットは結構レガシーなので,そういう問題が多々あったりする(エネルギーではなくPowerで計算していたり)
参考:Library Compiler User Guide, 2017
2020年6月15日月曜日
SiliconSmart で入力容量を評価するパラメータ:cin_bias_capacitance, set subtract_leakage
SiliconSmart で入力容量を評価する際,あまりに容量が小さいとシミュレーションが不正確になるので,SiliconSmart はドライバの出力に容量をつけてシミュレーションを行う.シミュレーション後入力容量の評価ができた後で,この容量は削除される.
pintype グループの cin_bias_capacitance パラメータで制御することができ,初期値は 10ff である.
set cin_bias_capacitance 10ff
SiliconSmart は入力容量を求めるために,入力ピンの電流を cin_low_threshold から cin_high_threshold の間で積分する.IO セルのようにリーク電流が大きいセルをキャラクタライズする場合,pintype パラメータの subtract_leakage 1に設定するとcin_low_threshold および cin_high_threshold のパラメータを無視するようになる.
set subtract_leakage 1
登録:
投稿 (Atom)