算術論理単位 – 定義

導入

算術論理演算装置( UAL 、英語ではALU、Arithmetic Logic Unit ) と略され、計算の実行を担当するコンピューターの器官です。ほとんどの場合、ALU は中央処理装置またはマイクロプロセッサに含まれています。

さまざまなタイプの UAL

UAL は特化している場合とそうでない場合があります。基本的な UAL は整数に基づいて計算し、一般的な操作を実行できます。これらの操作は次の 4 つのグループに分類できます。

  1. 算術演算:加算減算、符号の変更など、
  2. 論理演算: 1 の補数、2 の補数、AND、OR、排他的 OR、NOT、NAND など、
  3. 比較: 同等性、優れている、劣っている、およびそれらの「または等しい」同等物のテスト、
  4. シフトやローテーションが行われる可能性があります(ただし、これらの作業が外部委託される場合もあります)。

一部の UAL は、単精度または倍精度 (浮動小数点ユニット(FPU) と呼びます) またはベクトル計算での浮動小数点数の操作に特化しています。通常、これらのユニットは次の操作を実行する方法を認識しています。

  • 加算、減算、符号の変更、
  • 掛け算、割り算、
  • 比較、
  • モジュール


特定の UAL (特にスーパーコンピューターの UAL など) は、ほとんどの場合 FPU クラスにあり、高度な機能を提供する可能性があります。

プロセッサは、少なくとも 2 つの複数の ALU を使用します。1 つはプログラム レジスタをインクリメントするために制御パスにあり (通常は 1、2、4、または 8 ずつ)、もう 1 つは情報を処理するためにデータパスにあります。パフォーマンスを向上させるために、ほとんどの場合パイプライン化されます。

4 ビット ALU 74181 (TTL)

たとえば、ここにあるのは、TTL 集積回路しか利用できなかった時代に広く使用されていた ALU、4 ビット AUAL の 74181 です。この回路は、他の回路とカスケード接続して 4 ビットより大きい整数を処理することを目的としています。これは、Alto UAL および多くのPDP-11モデル (16 ビット) の基礎です。

その真理値表は、M および S 入力の値に応じてどの操作が実行されるかを示します。

関数M = 1 M = 0
S3 S2 S1 S0論理演算Cn = 0 Cn = 1
0 0 0 0 F = A なしF = A F = A + 1
0 0 0 1 F = いいえ (A または B) F = A または B F = (A または B) + 1
0 0 1 0 F = (A ではない) および B F = A または (B ではない) F = (A または (B ではない)) + 1
0 0 1 1 F = 0 F = – 1 F = 0
0 1 0 0 F = いいえ (A および B) F = A + (A および (B ではない)) F = A + (A および (B ではない)) + 1
0 1 0 1 F = B なしF = (A または B) + (A および (B ではない)) F = (A または B) + (A および (B ではない)) + 1
0 1 1 0 F = A x または B F = A – B – 1 F = A – B
0 1 1 1 F = A および (B ではない) F = (A および (B ではない)) – 1 F = A および (B ではない)
1 0 0 0 F = (A ではない) または B F = A + (A および B) F = (A + (A および B)) + 1
1 0 0 1 F = いいえ (A xor B) F = A + B F = A + B + 1
1 0 1 0 F=B F = (A または (B ではない)) + (A および B) F = A または (B ではない) + (A および B) + 1
1 0 1 1 F = A および B F = (A および B) – 1 F = A および B
1 1 0 0 F = 1 F = A + (A << 1) F = A + A + 1
1 1 0 1 F = A または (B ではない) F = (A または B) + A F = (A または B) + A + 1
1 1 1 0 F = A または B F = (A または (B ではない)) + A F = A (B ではない) プラス A プラス 1
1 1 1 1 F = A F = A – 1 F = A

警告: この表にはエラーが含まれている可能性があります。

この回路図を以下に示します。

4 ビット UAL 74181 の回路図。

UAL などの 4 対 1 マルチプレクサの使用

この技術は、 IBM 7030「Stetch」(1961 年) の UAL で使用されています。この概念は、機能コード F の賢明な選択に基づいています。これは、目的の操作の結果にも対応します。たとえば、AND を実行するには、論理テーブル真理値表の結果列に対応するコード F = 0001 を選択します。同様に、 or の場合は F = 0111、排他的な orの場合は F = 0110 などとなります。

もっているB AとB
0 0 0
0 1 0
1 0 0
1 1 1

処理されるビットのペア( a ib i )ごとに、4 つの信号を構築します。

$$ {\neg a_i \vee \neg b_i} $$
$$ {\neg a_i \vee b_i} $$
$$ {a_i \vee \neg b_i} $$
そして
$$ {a_i \vee b_i} $$
。これらの信号は、入力が F であるマルチプレクサの入力に送信されます。したがって、これは問題の論理関数を適用することになります。

以下の例は、そのような 2 ビット マルチプレクサを示しています。最初のマルチプレクサは、A と B の 2 つの最下位ビットを入力として受け取ります。これらは、F のラインの 1 つを選択するために使用されます。00 で最初のラインが選択され、01 で2 番目のラインが選択されます。 2 番目のマルチプレクサは、A と B の 2 つの最上位ビットに対して同様に動作します。

00 AND 00 = 00
00 AND 11 = 00
01 AND 01 = 01
10 AND 01 = 00
11 AND 01 = 01
11 AND 11 = 11

上の 4 対 1 マルチプレクサの図は、完全に標準的な TTL 集積回路を使用して構築されており、そのリファレンスが表示されています。これらは、NOT、AND、NOR-OR ゲートです。

  1. وحدة الحساب والمنطق – arabe
  2. Аритметично-логическо устройство – bulgare
  3. অ্যারিথমেটিক লজিক ইউনিট – bengali
  4. Unitat aritmeticològica – catalan
  5. Aritmeticko-logická jednotka – tchèque
  6. Arithmetisch-logische Einheit – allemand

算術論理単位 – 定義・関連動画

サイエンス・ハブ

知識の扉を開け、世界を変える。