KiCad:インバータの設計(回路図の作成)
メモ
使用したKiCadのバージョン:(5.1.8)-1
ここではインバータ(NOT回路)の回路図(スケマティック)を作り、ネットリストの出力までを行います。ネットリストは回路の素子の接続を表すファイルで、後に作るレイアウトがきちんとインバータの回路になっているかをチェックするLVS(Layout versus Schematic)の工程で使います。
新規プロジェクトの作成
KiCadを開き、"ファイル"→"新規"→"プロジェクト"を選択して、プロジェクトを作成します。
プロジェクトファイル名は例として、「InverterTutorial」としました。入力したら「保存」のボタンを押してください。
https://makelsi.github.io/images/docs/KiCad/inv_01.png
すると、プロジェクトウィンドウが表示されます。
https://makelsi.github.io/images/docs/KiCad/inv_02.png
シンボルライブラリのダウンロード
まずシンボルライブラリをダウンロードします。シンボルライブラリは下のGitHubのリンクからダウンロードしてください。OpenRule1um/KiCad/以下にあるOR1Symbols.libがシンボルライブラリです。
ZIPにしてダウロードするには緑のボタンの「Code」を押して、「Download ZIP」でダウンロード出来ます。
シンボルライブラリをKiCadへ登録
ダウンロードした「OR1Symbols.lib」の名前の先頭に「0_」を付けてください。これは後からわかりますが、KiCadには標準で多くのシンボルライブラリが入っていてそれらが名前順で並んでいるため、この変更により、追加したシンボルを開いた時に先頭に表示されて見つけやすくなります。
ここではプロジェクトフォルダにシンボルライブラリを置きます。
https://makelsi.github.io/images/docs/KiCad/inv_03.png
次に、プロジェクトウィンドウで"設定"→"シンボル ライブラリーを管理"をクリックします
https://makelsi.github.io/images/docs/KiCad/inv_04.png
「プロジェクト固有のライブラリ」のタブをクリックして、ウィンドウ下側にあるフォルダのボタンをクリックして、シンボルライブラリを選択します。
https://makelsi.github.io/images/docs/KiCad/inv_05.png
https://makelsi.github.io/images/docs/KiCad/inv_06.png
シンボルライブラリが読み込まれれば下のようになって、「OK」をクリックして下さい。
https://makelsi.github.io/images/docs/KiCad/inv_07.png
スケマティック作成
プロジェクトウィンドウに戻り、左側の「InverterTutorial.sch」をダブルクリックして回路図を開きます。
https://makelsi.github.io/images/docs/KiCad/inv_08.png
https://makelsi.github.io/images/docs/KiCad/inv_09.png
早速シンボルを配置していきましょう!
まずはMOSFETを置いてみます。右側のオペアンプのアイコンがある「シンボルを配置」をクリックします。
https://makelsi.github.io/images/docs/KiCad/inv_10.png
Pch MOSFETである「PMOS_OR1」を選択してOKをクリックします。
https://makelsi.github.io/images/docs/KiCad/inv_11.png
回路シートの真ん中あたりに置いてみました。
https://makelsi.github.io/images/docs/KiCad/inv_12.png
次の部品を配置するには、回路シートの適当の場所をクリックするとシンボルの選択のウィンドウが出てきます。同じようにNch MOSFETも下に並べて置きます。
https://makelsi.github.io/images/docs/KiCad/inv_13.png
ちなみに、PMOSとNMOSの赤文字の部分はSPICEモデル名を書くところで、デフォルトでMOSの設計パラメータであるゲート長L(l)と、ゲート幅W(w)が書かれています。これらのパラメータを変更して、作りたい回路が望んでいる特性を得られるように設計していきますが、今回はデフォルトのままにします。
次は階層ラベルを置きます。ラベルにはグローバルラベルと階層ラベルがありますが、階層ラベルを使うと名前の通り、回路シートを階層化して回路を再利用しやすくなります。ここで作る回路図を後でテストベンチ(シミュレーション用の回路)で呼び出すために、階層ラベルを使います。
https://makelsi.github.io/images/docs/KiCad/inv_14.png
PMOSの上あたりをクリックして出てきたウィンドウのラベルに「VDD」を入力します。
https://makelsi.github.io/images/docs/KiCad/inv_15.png
「OK」をクリックしてVDDの階層ラベルをPMOSの上あたりに置きます。
https://makelsi.github.io/images/docs/KiCad/inv_16.png
VSSも同じような手順でNMOSの下あたりに置きます。
https://makelsi.github.io/images/docs/KiCad/inv_17.png
次はインバータの入出力の階層ラベルを置きます。入力として「A」をインバータの左あたりに置きます。
https://makelsi.github.io/images/docs/KiCad/inv_18.png
出力として「X」をインバータの右あたりに置きます。ラベルを出力にするときは、角度を「右」、形状を「出力」にしてください。
https://makelsi.github.io/images/docs/KiCad/inv_19.png
ラベルを置いてみました。
https://makelsi.github.io/images/docs/KiCad/inv_20.png
これでシンボルの配置は終わりました。次は配線をします。ウィンドウ右側の「ワイヤーを配置」をクリックして、その下の画像のように配線をします。
https://makelsi.github.io/images/docs/KiCad/inv_21.png
https://makelsi.github.io/images/docs/KiCad/inv_22.png
シンボルのアノテーション
回路を描き終えたら、シンボルのアノテーションを行います。配置した各シンボルのIDのようなもの(リファレンス)を自動で振ってくれます。ウインドウ上側の「回路図シンボルをアノテーション」をクリックします。
https://makelsi.github.io/images/docs/KiCad/inv_23.png
すると下のようなウィンドウがでてきて、「アノテーション」をクリックします。
https://makelsi.github.io/images/docs/KiCad/inv_24.png
「アノテーション完了」が表示されればアノテーションは終わりです。このウィンドウは閉じてください。
https://makelsi.github.io/images/docs/KiCad/inv_25.png
最後に「保存(全てのシート)」をクリックして保存します。
https://makelsi.github.io/images/docs/KiCad/inv_30.png
ネットリストの出力
ネットリストを出力してみます。ウィンドウ上側の「ネットリストを生成」をクリックします。
https://makelsi.github.io/images/docs/KiCad/inv_26.png
「Spice」のタブを開き、「ネットリストを生成」をクリックします。
https://makelsi.github.io/images/docs/KiCad/inv_27.png
すると、保存先を選ぶウィンドウが出てきて、そのまま「保存」をクリックします。プロジェクトフォルダ内にネットリストファイル(.cir)が出力されます。
https://makelsi.github.io/images/docs/KiCad/inv_28.png
ちなみに...
出力されたネットリストをメモ帳で開いてみると下のようになります。
「リファレンス、MOSFETのD, G, S, Bのピンの配線名(今回は階層ラベルと接続されているためその名前がつく)、SPICEモデル名、MOSFETの設計パラメータL, W」の順で並んでいます。
https://makelsi.github.io/images/docs/KiCad/inv_29.png
次は...
History
2020/12/3~:Okawa作成。
2021/1/8:Ver. 1.0
2021/3/12 Okawa:回路を階層化した方法に変更。
2021/3/15 Okawa:若干の修正と追記。