74181
74181は、汎用ロジックICのひとつで、テンプレート:仮リンクのTTL集積回路として実装された4ビット・スライス演算装置(Arithmetic Logic Unit; ALU)である。 1チップ上の最初の完全なALUであり[1]、歴史的に重要なミニコンピュータやその他のデバイスのCPUの演算/論理コアとして使用されていた。
74181は、ディスクリート・ロジック・ゲートを使用して構築された1960年代のCPUと、今日のシングルチップCPUやマイクロプロセッサとの間の進化のステップを表している。74181は、もはや商用製品では使用されていないものの、今日でもコンピュータ関連組織の教科書や技術論文で参照されている。また、将来のコンピュータアーキテクトを養成するために、大学の「実践的な」コースで使用されることもある。
仕様

74181は、テンプレート:仮リンクの中規模集積(MSI)TTL集積回路で、75個のロジックゲートに相当し[2]、最も一般的には24ピンテンプレート:仮リンクとしてパッケージ化されている。 4ビット幅のALUは、(M=0)のときキャリーを利用して加算/減算/インクリメント/デクリメント等、(M=1)のときAND/NAND、OR/NOR、XOR等、そして、左シフト[3]を実行できる。 これらの基本関数の多くのバリエーションが利用可能で、2つの4ビットのワードに対して合計16の論理演算と合計16の演算が可能である。乗算・除算関数はないが、シフトと加算・減算関数を使用して複数ステップで実行できる。 シフトは明示的な関数ではないが、利用可能な複数の関数から導き出すことができる。例えば(M=0)(Cn=0)で関数 "A plus A" を選択すると、A入力の左シフトが得られる。
74181は、2つの4ビット・オペランドに対してこれらの演算を実行し、22ナノ秒(45 MHz)でキャリー付きの4ビット結果を生成する。 74S181は、11ナノ秒(90 MHz)で同じ演算を実行し、74F181は7ナノ秒(143 MHz)で演算を実行する(代表値)。
複数の「スライス」を組み合わせて、任意に大きなワードサイズにすることができる。 たとえば、16個の74S181と5個の74S182ルック・アヘッド・キャリー・ジェネレータ(look ahead carry generator)を組み合わせることで、28ナノ秒(36MHz)で64ビット・オペランドに対して同じ演算を実行することができる。 今日のマルチ・ギガヘルツの64ビット・マイクロプロセッサの性能には見劣りするが、初期の4ビットおよび8ビット・マイクロプロセッサのサブ・メガヘルツのクロック速度と比較すると、これは非常に印象的であった。
関数表
| Selection | Active-low inputs & outputs | Active-high inputs & outputs | |||||
| S3 | S2 | S1 | S0 | Logic (M = 1) | Arithmetic (M = 0) (Cn = 0) | Logic (M = 1) | Arithmetic (M = 0) (Cn = 1) |
| 0 | 0 | 0 | 0 | minus | |||
| 0 | 0 | 0 | 1 | minus | |||
| 0 | 0 | 1 | 0 | minus | |||
| 0 | 0 | 1 | 1 | Logical 1 | Logical 0 | ||
| 0 | 1 | 0 | 0 | plus | plus | ||
| 0 | 1 | 0 | 1 | plus | plus | ||
| 0 | 1 | 1 | 0 | minus minus | minus | ||
| 0 | 1 | 1 | 1 | minus | |||
| 1 | 0 | 0 | 0 | plus | plus | ||
| 1 | 0 | 0 | 1 | plus | plus plus 1 | ||
| 1 | 0 | 1 | 0 | plus | plus | ||
| 1 | 0 | 1 | 1 | minus | |||
| 1 | 1 | 0 | 0 | Logical 0 | plus | Logical 1 | plus |
| 1 | 1 | 0 | 1 | plus | plus | ||
| 1 | 1 | 1 | 0 | plus | plus | ||
| 1 | 1 | 1 | 1 | minus | |||
意義
74181は、1960年代後半から1980年代前半にかけて、高速計算を必要とするコンピュータやその他の機器の開発と製造を大幅に簡素化し、今でも「古典的な」ALU設計として参照されている[5]。
74181が登場するまでは、コンピュータのCPUは複数の回路基板を占有しており、非常に単純なコンピュータでも複数のキャビネットを埋め尽くすことがあった。74181はCPU全体、場合によってはコンピュータ全体を1枚の大型プリント基板上に構築することを可能にした。74181は、複数の回路基板に分散した個別のロジック機能に基づいた古いCPUと、単一のチップにすべてのCPU機能を組み込んだ最新のマイクロプロセッサとの間で、歴史的に重要な段階を占めている。74181は、1970年代から様々なミニコンピュータやその他のデバイスで使用されていたが、マイクロプロセッサがより強力になるにつれ、ディスクリート部品からCPUを構築するという習慣はなくなり、74181は新しい設計では使用されなくなった。
今日
74181をベースにしたCPU設計は、マイクロプロセッサが比較的低価格で高性能になったため、商業的には成立しなくなった。しかし74181は、学生がほとんど利用できない設計や実験を体験できる機会を提供してくれるため、今でもコンピュータ組織やCPU設計の教育の観点から関心を寄せられている[6]。
- Digital Electronics with VHDL (Quartus II Version) review in Journal of Modern Engineering, Volume 7, Number 2, Spring 2007.
- A Minimal TTL Processor for Architecture Exploration 74181をCPUアーキテクチャを教えるためにどのように使用できるかを説明した論文。
- A Hardware Lab for the Computer Organization Course at Small Collegesテンプレート:Snd 74181が今日の教育環境でどのように使用されているかを示すもう1つの例。
- 74181 + 74182 demonstration Javaベースのシミュレータ
- APOLLO181 (by Gianluca.G, Italy 2012): TTLロジックとバイポーラメモリで作られた自作の教育用プロセッサで、Bugbook® IおよびIIチップ、特に74181をベースにしている。
- Build Your Computer using LOGIC & MEMORY, before the advent of microprocessor a マイクロプロセッサが登場する前に74181 ALUの歴史と教育用としての使用方法を紹介するビデオ。
コンピュータ
多くのコンピュータ CPU とサブシステムは 74181 をベースにしており、その中には歴史的に重要なモデルも含まれている。
- NOVAテンプレート:SndData General社が製造した最初の広く利用可能な16ビットミニコンピュータ。NOVA 1200は、事実上、1970年に74181を使用した最初の商用ミニコンピュータであった[7]。
- PDP-11の数機種[8]テンプレート:Sndディジタル・イクイップメント社製の最も人気のあるミニコンピュータ[9]。
- Xerox Altoテンプレート:Sndデスクトップ・メタファーとグラフィカル・ユーザー・インターフェース(GUI)を使用した最初のコンピュータ[10][11]。
- VAX-11/780(en:VAX-11)テンプレート:Snd 最初のVAX、ディジタル・イクイップメント社製の1980年代の最も普及した[9]32ビットコンピュータ[12]。
- [[PERQ|Three Rivers PERQテンプレート:Snd]]Xerox Altoの影響を受けた業務用コンピュータワークステーションで、1979年に初版が発売された[13]。
- テンプレート:仮リンクNaked Mini LSI[[PERQ|テンプレート:Snd]]LSI ICの試験装置やプロセス制御に使用されたコンピュータ。
- KMC11テンプレート:Snd ディジタル・イクイップメント社製PDP-11用ペリフェラル・プロセッサ[14]。
- FPP-12テンプレート:Snd ディジタル・イクイップメント社製浮動小数点ユニット。PDP-12[15]。
- テンプレート:仮リンク[[PERQ|テンプレート:Snd]]CPU(1CPUにつき74181を1台)[16]、ディスクコントローラ(1コントローラにつき74181を2台)[17]。
- テンプレート:仮リンクテンプレート:SndTexas Instruments の16ビットミニコンピュータシリーズ。
- Honeywell option 1100テンプレート:Sndハネウェル H200/H2000 シリーズのメインフレーム用のいわゆる「科学ユニット」オプション。
- Datapoint 2200 Version II[18] と後継機であるDatapoint 5500, 6600, 800/3800テンプレート:SndIntel 8008のアーキテクチャを定義したコンピュータ。
- テンプレート:仮リンクSystem 4 / Singer (en:International Computers Limited#Singer Business Machines) 1501 / テンプレート:仮リンク 1501[[PERQ|テンプレート:Snd]]インテリジェントターミナル[19]。
- テンプレート:仮リンクテンプレート:SndV70シリーズ16ビットミニコンピュータ。
その他の用途
- テンプレート:仮リンクテンプレート:SndCinematronics社がSpace Wars, Starhawk, Warrior, Star Castleスペースウォーズ、スターホーク、ウォリアー、スターキャッスルなど様々なアーケードゲームで使用しているアーケードゲームのプラットフォームでは、12ビットプロセッサに25LS181チップを3個使用している[20]。
関連項目
- 演算装置 (Arithmetic Logic Unit; ALU)
- マイクロシーケンサ
- 7400-series integrated circuits
- List of 7400-series integrated circuits
脚注
外部リンク
メーカーのデータシート:
- ↑ テンプレート:Cite book
- ↑ Miles Murdocca, Apostolos Gerasoulis, and Saul Levy. "Novel Optical Computer Architecture Utilizing Reconfigurable Interconnects". 1991. p. 23. quote: "Logic diagram for the 74181 ... There are 63 logic gates."
- ↑ シフタは持っておらず、後述するように片方の入力Aに対し A plus A を計算した結果としてのシフトなので、左シフトだけで右シフトは無い。
- ↑ テンプレート:Cite web
- ↑ テンプレート:Cite conference
- ↑ テンプレート:Cite proceedings
- ↑ History of the 74181 in commercial minicomputers
- ↑ テンプレート:Cite book
- ↑ 9.0 9.1 テンプレート:Cite journal
- ↑ テンプレート:Cite web
- ↑ The ANALYTICAL ENGINE, Page 23, Volume 2, Number 2, October 1994 archive
- ↑ テンプレート:Cite web
- ↑ The ANALYTICAL ENGINE, Page 46, Volume 2, Number 3, May 1995 archive
- ↑ Early PDP-11 peripherals
- ↑ FPP-12 -- The PDP-12 Floating Point Unit
- ↑ Wang 2200 CPU Microarchitecture
- ↑ Wang 2200 Disk Channel Description
- ↑ Datapoint 2200 Drawing Package p36
- ↑ テンプレート:Cite web
- ↑ テンプレート:Cite book