全加算器テキスト補足

LabVIEW による全加算器テキスト
(
「全加算器製作実験の注意(2006 年版)」および「LabVIEW 再履修課題 1ビット全
加算器」への補足)
最終修正 2014 年 5 月 9 日
本課題は、ブレッドボード上に TTL IC を用いて1ビット全加算器を製作する旧情報工学
実験の課題(内容は「全加算器製作実験の注意(2006 年版)
」)を LabVIEW で代替するも
の(課題内容は「LabVIEW 再履修課題 1ビット全加算器」
)です。演習室での PC 上の
作業の基本は「LabVIEW 再履修課題 1ビット全加算器」を参照し、TTL IC を組み合わ
せる論理設計(IC 内部のゲート配置など必要な情報も)については「全加算器製作実験の
注意(2006 年版)
」を参照してください。14 ピン IC の場合には 14 番ピンと 7 番ピンをそ
れぞれ Vcc と GND に接続して電流を供給しなければ動きませんが、LabVIEW でもそれぞ
れ相当する端子にブール定数の T と F を接続する様にしています。
旧情報工学実験の「LabVIEW 再履修課題 1ビット全加算器」は、実 IC での製作課題
と重複しない様に LabVIEW での TTL IC 部品(サブ VI)作成に重きを置いていましたが、
本課題は IC を使用した全加算器の論理設計(どの IC のどのゲートを使用するのが適切か)
を LabVIEW で模倣するもので、サブ VI を各自で作成する必要はなく、また複数の全加算
器をつなげて多ビットの演算を行う課題はありません(時間に余裕のある人は発展課題で
取り組んでください)
。その他の変更点は次の通りです。
1.サブ VI は、田中久弥先生の情報学実験の頁で提供される subVI.zip を解凍して使用し
ます。したがって、
「VI を保存したフロッピーディスクを併せて提出すること。フロッピ
ーディスクは採点のためのバックアップを取った後に返却する。
」は不要です。
2.LabVIEW2013 では自動フィードバックがサポートされ、メイン VI で、
「全体を While
ループで(While ループについては LabVIEW 画像処理テキストを参照のこと)囲んで
おく。
」は不要です。たとえば、
「LabVIEW 再履修課題 1ビット全加算器」2 頁図3の
ブロックダイアグラム(図 1 左)は図 1 右の様になります。
図 1 1 ビット全加算器メイン VI の例(左:ver.7.1 右:ver.2013)
発展課題
時間に余裕のある人は、以下の手順で 4 ビットの演算を行ってください。
1.ブロックダイアグラムウィンドウで 1 ビット全加算器全体を囲み、「コピー」
「貼り付
け」で 4 ビット分に増殖させる。
2.フロントパネルで(制御器、表示器の配置を調整後)最下位桁以外の桁上げ入力の制
御器を「切り取り」で削除し、
(このままでは当然配線エラーになる)ブロックダイアグ
ラムで下位桁からの桁上げ出力を結線する。
図 2 は 2 の補数表現での加減算を想定して(4 ビットで表現可能な数は-8~+7)あふ
れ判定の表示を追加したブロックダイアグラムの例です。
図 2 4 ビット全加算器のブロックダイアグラム(あふれ判定付)
2 の補数表現での減算は(ALU の実験で実機に使用している 74382 も)1 の補数を加算
し(2 の補数とするための補正に必要な 1 として)最下位桁への桁上げ入力を 1 にセットし
ます。表現可能な数であるかは最上位桁から上への桁上げ出力だけでは判定できず、最上
位桁への桁上げ入力との排他的論理和(これが 1 の場合に本当にあふれている)で判定し
ます。図 3 は 7-3(最上位桁から上への桁上げが 1 であるが正しく 4 が得られる)と 7+4
(符号無し整数ならば 11 として正しいが 2 の補数表現ならばあふれている)
の実行例です。
図 3 4 ビット全加算器実行例 (左:7-3
右:7+4)