Logisimは、真理値表(Truth Table)と入力ピン、出力ピン、数式(Expresson)、カルノー図を入力することで、回路を自動生成したり、またはすでに作った回路を上記の情報でも見ることのできる「Combinational Analysis」という機能があります。
新規に真理値表から回路を作成
メニューから[Project]->[Analyze Circuit]
入力ピンと出力ピンの追加
Inputsタブで、下側の入力フィールドに入力ピンの名前を書いて、[Add]ボタンで追加です。追加されると中央の一覧表示に加わります。以下の例は、既にAピンを追加して、これからBピンを追加しようとしているところです。
同様に[Output]タブを選択して、出力ピンも設定します。以下画像では、とりあえずQ1ピン、Q2ピンを作成しました。
真理値表の修正
入力ピン、出力ピンが追加されたら、自動で真理値表が作成されています。この時点では、出力ピンが何を出力するかが未定のままなので修正します。真理値表の出力ピンの項目をクリックすると修正できます。入力ピンはできません。
ここまで行うと、自動で数式(Expresson)とカルノー図も作成してくれます。もちろん数式をA+Bなどのように修正することで、真理値表にも同期して反映してくれます。エンコーダーなどの場合は、真理値表を書くよりも数式を書いたほうが簡単だと思います。
回路の生成
ダイアログ下の[BUild Circuit]ボタンを押すと、回路名を付けるダイアログが表示されるので回路名を入力して[OK]で回路が生成されます。
回路が作成されると、以下のようにHello回路のように回路が生成され一覧に追加されますがダイアログは終了しません。自分で×ボタンで閉じます。
既存の回路を解析する
Analysisなので、既に作ってある回路から真理値表、式、カルノー図の生成も可能です。適当な回路を作って[Project]->[Analysis Circuit]をクリック。
真理値表、式などを見れてここから修正も可能。
複雑な回路を自動生成するのは難しいと思いますが、ちょっとしたエンコーダーやデコーダーを作成する際は、同じ作業をひたすら繰り返すので、真理値表から作成したほうが良いかもしれません。
注意点
http://home.a00.itscom.net/hatada/dc2/chap15/decoder.html
実際に作ればすぐわかりますが、上記サイトにあるような、8入力3出力エンコーダーなど、入門レベルのエンコーダーなどを作る場合、Logisimは、ピンすべてを満たす真理値表を自動生成します。そんため上記サイトの真理値表とLogisimの真理値表にづれが出ている感じがしますが、Logisimは式に書かれている回路を生成します。デジタル回路の入門者だと同じ真理値表が作れなくて戸惑うかもしれませんが問題ありません。
まとめ
Logisimで、マウスでデジタル回路を作成する方法ではなく、入出力ピンと真理値表から回路を生成する方法を学びました。