やっぱ最初のお約束はLチカ、それには発振回路が!というわけで、 リングオシレータと呼ばれる回路を設計してみた例です。 ※リングオシレータについては、例えば https://www.youtube.com/watch?v=A188CYfuKQ0 などが参考になると思います。(2015/1/15:akita)

設計データ(*.gex)もいっしょに置いておきますので、ぜひ試したり確認したりしてください。

コメントはありません。 コメント/WGexの使い方/リングオシレータ?

お名前:

インバータの設計

インバータの設計は、WGexの使い方でも紹介しましたが、 先のことを考えて、使いやすいようなレイアウトをつくってみましょう。 よく使われるのは、上にpMOS、下にnMOSを置き、横にずずっと並べられるように 設計するやり方です。

インバータ1個は、こんな感じです。

inv.png

並べる

こいつにちょっと付け加えて、こんな感じにしてみます。

RO5_inv.png

どこが違うかわかりましたか? ここで追加した部分は、次で効いてきます。

次に、こいつを2個並べてみましょう。 こいつを"RO5_inv.gex"というファイルで保存しておいて、 こいつを「セル呼び出し」で2個、呼び出して並べてみます。

RO5_inv2.png

1個ずつ、ぴったりくっつくように並べてください。 この方法だと、作った回路をライブラリのように他の回路でも使えて便利ですね。 で、さっきの追加した部分がどんな意味だったか、わかるでしょうか?

ぴったり並べて配置すると、インバータの出力が、隣のインバータの入力に つながって、しかも上下のVDD/GNDも、くっつくように、サイズをあわせてあるんですね。こりゃ便利。

というわけで、調子に乗って5個(あるいはもっと多く、ただし奇数個) 並べちゃいましょう。

RO5.png

リングオシレータにするためには、最後のインバータの出力を、最初のインバータの入力につなげば、完成です。 この例では、ML2を使って、つないでいます。

シミュレーション

回路シミュレーションのやり方も、WGexの使い方に書きましたが、 実はリングオシレータなどの発振回路のシミュレーションには、ちょっとしたコツがいります。

まず、配布ファイルの中にあるcex.mdlというファイルを、このファイルと置き換えてください。 これは、回路抽出時に、配線などがもつ容量を(値はけっこう適当ですが)求めるように修正したものです。

回路抽出したRO5.cexに、電源vsを加えて、100nsくらいまでシミュレーションするために こんな感じの*.spをつくります。

こいつをシミュレーションしてみると、発振していますね! ※ただし配線容量の計算モデルがけっこう適当なので、 実際に作った回路の発振周波数が、このシミュレーションの通りになるかは、 保証できません・・・ ぜひ実際に作って測定して、計算モデルを求めてみたいですね!

testRO_sim.png

添付ファイル: filecex.mdl 737件 [詳細] filetestRO_sim.png 823件 [詳細] filetestRO.sp 692件 [詳細] fileRO5_inv.gex 655件 [詳細] fileRO5.png 764件 [詳細] fileRO5.gex 603件 [詳細] fileRO5.CEX 283件 [詳細] fileRO5_inv2.png 771件 [詳細] fileRO5_inv2.gex 602件 [詳細] fileRO5_inv.png 740件 [詳細] fileinv.gex 655件 [詳細] fileinv.png 865件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-01-21 (水) 10:34:28 (2940d)