帰らざるMOS回路(30) Icarus VerilogでCD4007をモデリング

CD4007_verilog
Joseph Halfmoon

注文してあったCD4007が到着。急遽こちらのシリーズをお休みしてCD4007の動作試験をやってました。CD4007は古いICですがMOSFETのソース、ドレイン、ゲートを個別に接続可能で変幻自在、まさにMOS回路を体現しています。そこでVerilogでもCD4007のモデリングを試みました。普通はやらんと思うケド。

“帰らざるMOS回路(30) Icarus VerilogでCD4007をモデリング” の続きを読む

帰らざるMOS回路(29) Icarus Verilog、検証用テキストファイル出力

Fout
Joseph Halfmoon

前回はモジュールをパラメータ化して再利用しやすくしてみました。今回は、シミュレーション結果をテキストファイルに落として機械的な照合や回帰テストをしやすくしたいと思います。作成した回路を最初観察するときは波形ビューワー使っても、シミュレーションは何度も行うものなので結果確認は自動化しておかないと後が大変。 “帰らざるMOS回路(29) Icarus Verilog、検証用テキストファイル出力” の続きを読む

お手軽ツールで今更学ぶアナログ(110) アナログスイッチ消化不良のままA/Dへ進む

FlashADC_OP07_sch
Joseph Halfmoon

前回、手元のパーツ在庫で実験をやっつけるべく検討しましたが、結局挫折してしまいました。実験に必要なCD4007の代打に入れるようなデバイスが手元に無かったです。CD4007入手して仕切り直し。そういうわけで消化不良のまま、次月に突入と相成りました。アナデバ様2022年2月の記事とな。これがまたもたれる重さです。 “お手軽ツールで今更学ぶアナログ(110) アナログスイッチ消化不良のままA/Dへ進む” の続きを読む

帰らざるMOS回路(28) Icarus Verilog、ライブラリのパラメータ化

gtkwave
Joseph Halfmoon

前回、モジュールファイルの置き場所を決めたりして、作成済の部品を呼び出して使うのが便利になりました。すると即座に不満な点が出てきました。部品が「8ビット用」とかキメウチで応用が効かないことです。今回はシフトレジスタを題材にパラメタライズ、呼び出し時にビット幅を決められるようにしてみます。 “帰らざるMOS回路(28) Icarus Verilog、ライブラリのパラメータ化” の続きを読む

お手軽ツールで今更学ぶアナログ(108) CMOSインバータでアナログスイッチの実験 その1

CMOS_RON_Schematic
Joseph Halfmoon

「アナデバ社(ADI社)のWeb記事『StudentZone』を初回からすべて読む」ついに2022年に突入しました。ようやく周回遅れ状態を解消。とはいえ今は8月、読んでいるのは1月号です。前回はデジタルなCMOSインバータをつかってアナログな反転アンプでした。今回はさらにCMOSインバータをつかってアナログスイッチの実験です。

“お手軽ツールで今更学ぶアナログ(108) CMOSインバータでアナログスイッチの実験 その1” の続きを読む

帰らざるMOS回路(26) ROMファイルをVerilogHDLとLogisimで共用する

ROM_LOGIC_LOADED
Joseph Halfmoon

前回はバイナリカウンタでしたが、今回はROMです。ROMは複数の用途に使うことを想定。ROMに記録すべきビットパターンは外部の「ROMファイル」に書いておいて必要に応じてファイルを切り替えて「ロード」するようにしたいです。またそのファイルはゲートレベルのLogisimとVerilogHDLで共用できるのが望ましいです。

“帰らざるMOS回路(26) ROMファイルをVerilogHDLとLogisimで共用する” の続きを読む

帰らざるMOS回路(25)今時ゲートレベルでもあるまいに。カウンタをVerilogしてみる

VerilogCounterEC
Joseph Halfmoon

前回はLogisimのライブラリから符号無整数の比較器「組み合わせ回路」をVerilogしてみました。今回はバイナリカウンタ「順序回路」をVerilogしてみます。端から部品を練習すれば、そのうち色々できるだろ~という勝手な思い込みです。記述のお作法もいろいろあるのだけれど、今のところ成り行き。徐々に修正する予定。

“帰らざるMOS回路(25)今時ゲートレベルでもあるまいに。カウンタをVerilogしてみる” の続きを読む

帰らざるMOS回路(24)今時ゲートレベルでもあるまいに。ライブラリをVerilogしてみる

LogicSim
Joseph Halfmoon

前回は、論理圧縮ツール Espresso を使うことができる LogicFriday を試してみました。今回は再びLogicsimへ戻ります。しかし後々のこと(なんだそれ)を考えるとライブラリがVerilogでも書けた方が安心。ということでVerilog化始めました。まずは組み合わせ回路、コンパレータから。 “帰らざるMOS回路(24)今時ゲートレベルでもあるまいに。ライブラリをVerilogしてみる” の続きを読む

SPICEの小瓶(11) アクティブ・フィルタが作れる気がする(たぶん錯覚)ウイザード

ActiveGain
Joseph Halfmoon

別件で入力信号にLPFかけたくなりました。RCパッシブフィルタであれば自分でも何とかなりそう。でもそれでは進歩がない、と。そういえばアナデバ様のWebツールでフィルタをつくれるものがあった筈。今回はWebツールで「所望の」アクティブフィルタを構成した上で、ダウンロードしたSPICEモデルをシミュレーションしてみました。

“SPICEの小瓶(11) アクティブ・フィルタが作れる気がする(たぶん錯覚)ウイザード” の続きを読む

帰らざるMOS回路(22)今時ゲートレベルでもあるまいに。ということでVerilogも?

VScodeSample
Joseph Halfmoon

ノスタルジックなゲートレベルのシミュレーションを楽しむ筈が、前回テストベンチもどきを取り付けたことで歯止めが効かなくなりました。やっぱりね~今時だからHDLも出来た方が良いよね~ ゲートレベルとHDLの橋渡しをどうするか、という問題は棚上げにして、今回はHDL環境を追加。

“帰らざるMOS回路(22)今時ゲートレベルでもあるまいに。ということでVerilogも?” の続きを読む

お手軽ツールで今更学ぶアナログ(101) ディスクリート・トランジスタでオペアンプ

OpAmpDUT
Joseph Halfmoon

「アナデバ社(ADI社)のWeb記事『StudentZone』を初回からすべて読む」の今回はいよいよ2021年10月号です。遂にたどり着きました。今まで実験してきた回路部品を組み合わせて「オペアンプ」を作ってみるぞ、と。プリミティブなものでたった4個のディスクリート・トランジスタ構成ですが、それでもオペアンプだ、と。

“お手軽ツールで今更学ぶアナログ(101) ディスクリート・トランジスタでオペアンプ” の続きを読む

SPICEの小瓶(10) 電圧制御Switch、.model文が必要なのね。

voltageControlledSwitch
Joseph Halfmoon

そういえばSPICEには電圧制御スイッチがあった筈、使ってみるべしと思い立って、プチはまりましたです。「スイッチだろ~ON/OFFするだけじゃん」などと思って回路図に挿入したら動きませぬ。まあLTspiceのHELPファイルを読んで、教育用サンプル回路を開いたら疑問は氷解しましたです。先に読めよ。自分。 “SPICEの小瓶(10) 電圧制御Switch、.model文が必要なのね。” の続きを読む

帰らざるMOS回路(21)今時ゲートレベルでもあるまいに。やっぱりTEST Benchはいる

TESTBENCH_MAIN
Joseph Halfmoon

今時ノスタルジックなゲートレベルのシミュレーションにハマりつつあります。前回はPWM回路を動かしてみましたが、素のSIM環境には不満が残りました。最低限の「テストベンチみたいなもの」がないと「シミュレーションやった感」が無いよな~と。あくまで「やった感」自己満足の世界ですが、そこが大事じゃないかと。

“帰らざるMOS回路(21)今時ゲートレベルでもあるまいに。やっぱりTEST Benchはいる” の続きを読む

お手軽ツールで今更学ぶアナログ(99)ペアBJT+Opampで三角波を正弦波に変換する回路

ORG_CIRCUIT
Joseph Halfmoon

「アナデバ社(ADI社)のWeb記事『StudentZone』を初回からすべて読む」の今回は2021年9月号です。メインは三角波を正弦波に変換する回路です。今回「も」ペアトランジスタが活躍。後半登場の三角波を作る回路は次回に先送り。例によってLTspiceかけて回路の動作を予習してから実デバイスで実験っと。
“お手軽ツールで今更学ぶアナログ(99)ペアBJT+Opampで三角波を正弦波に変換する回路” の続きを読む