アポロ誘導コンピュータ


Apollo Guidance ComputerAGC/使16151AGCROM
アポロ誘導コンピュータ
Apollo Guidance Computer
アポロ誘導コンピュータとDSKY
開発者 MIT器械工学研究所
メーカー レイセオン
販売開始 1966年8月
販売終了 1975年7月
種類 アビオニクス
誘導コンピュータ
プロセッサー RTLベースのIC
周波数 2.048 MHz
メモリ 16ビットワード長、
2048ワードRAM磁気コアメモリ)、36,864ワードROMコアロープメモリ
ポート DSKY、IMU、ハンドコントローラ、ランデブーレーダー (CM)、着陸レーダー (LM)、テレメトリ受信機、エンジン・コマンド、姿勢制御システム
電源 55W[1]:120
重量 70 lb (32 kg)
寸法 24x12.5x6.5インチ (61x32x17 cm)

DSKYAGCAGCDSKYMITAGC1
アポロ指令船のコントロールパネルに実装されたDSKYインタフェース
アポロ誘導コンピュータのコマンドのVerbとNounの数値コードの一部を示したリスト。クイック・リファレンスとしてサイドパネルに印刷されていた。

アポロの中のAGC

編集

2AGC使使AGC/ (G&C) AGCPGNCSPrimary Guidance, Navigation and Control System//PGNCS

使

VS-IVBIBM(LDVC)

Abort Guidance System(AGS)TRWAGSPGNCS使使

設計

編集

MITC[1]J.H. Laning Jr.Albert HopkinsRamon Alonso[2][3]Hugh Blair-Smith[4]  Herb Thaler[2] 

(IC)使Block I 4,100IC使IC3NOR Block II 23NORIC2,800使[1]:34ICRTL (flat-pack) ICIC使IC使

RAM2048ROM36K11.72μ161 CPU1614111

DSKYユーザインタフェース

編集
 
DSKYユーザインタフェース・ユニット
 
着陸船に搭載されていたDSKY各部の名称

DSKY (display and keyboard) VerbNoun2Verb Noun  Verb 

7Block II使353姿使[nb 1]

DSKY調使 DSKYAGCDSKYAGC (FDAI) 

2009DSKY1 Heritage Auctions 50,788[5]

タイミング

編集

AGC2.048MHz41.024MHzAGC使512kHzAGC使

51102.4kHzF1(51.2kHz)F17(0.78125Hz)17F10(100Hz)AGCPINC使使F17AGC使

セントラルレジスタ

編集

AGCは4本の16ビットレジスタを汎用的に使用した。これらをセントラルレジスタと呼ぶ。

A : アキュムレータ、一般に計算に使用される。
Z : プログラムカウンタ、次に実行すべき命令のアドレスを保持する。
Q : DV命令の剰余を保持する。またTC命令後のリターンアドレスを保持する。
LP : MP命令後の積の下位ビット部分を格納する。

コアメモリには4つの場所があり(アドレス20-23)、ここに格納された値が自動的に1ビットシフトや1ビットローテートされるため "editing locations" と呼ばれた。なお、7ビット右シフトする場所はソフトウェアインタプリタが解釈する擬似命令コードを取り出すのに使われた。これはBlock I、Block IIに共通する。

その他のレジスタ

編集
 
DSKYAGCAGC
 
Block I AGC 
 
Block II IC
 
AGCNOR
 
AGCNOR

AGC使
S : 12ビットのメモリアドレスレジスタ。アドレスの下位ビットを保持
Bank/Fbank : 4ビットのROMバンクレジスタ。アドレッシングがfixed-switchableモードのときに1キロワードのROMバンク選択に使用
Ebank : 3ビットのRAMバンクレジスタ。アドレッシングがerasable-switchableモードのときに256ワードのRMバンク選択に使用
Sbank (super-bank) : Fbankを拡張する1ビットのレジスタ。ROMが全部で36キロワードであり、最後の4キロワード部分はFbank単独では指定できないため、その場合に使用する。
SQ : 4ビットのシーケンスレジスタ。現在の命令コード(オペコード)を保持
G : 16ビットのメモリバッファレジスタ。メモリに読み書きする(した)内容
X : 加算器への一方の入力。加算器は1の補数で計算。あるいはプログラムカウンタ(Z)をインクリメントする。
Y : 加算器へのもう一方の入力
U : 実際にはレジスタではなく、加算器の出力(X+Yの1の補数表現)
B : 汎用バッファ。命令プリフェッチにも使われる。命令を実行する際、Bレジスタの上位ビット(オペコード部分)をSQレジスタにコピーし、Sレジスタに下位ビット(オペランド=アドレス)をコピーする。
C : 独立したレジスタではなく、Bレジスタの1の補数表現である。
IN : 4つの16ビット入力レジスタ
OUT : 5つの16ビット出力レジスタ

命令セット

編集

312Block I11TC, CCS, INDEX, XCH, CS, TS, AD, MASK SU, MP, DV833INDEXEXTEND

Block I AGC 

TC (transfer control)

使Q

CCS (count, compare, and skip)

AAGC1201DABS (diminished absolute value) A1DABS1; absolute value1DABS"diminished" AGCDABS4CCS4DABSAA0CCSACCS2ACCS3ACCS4CCSTC IBM 360 BCTCCS TC*+2, TC*+2, ADONE  CCS-holes 22

INDEX

INDEX使使使使

RESUME

INDEX (INDEX25)使

XCH (exchange)

AROMARAMATS

CS (clear and subtract)

1A

TS (transfer to storage)

AA22A+1-1TSTSTCTS CAF ZEROCAFROM XCH +10-113

AD (add)

AAA22

MASK

A (AND)A

MP (multiply)

AALP

DV (divide)

AAQBlock II AGC ALP使LP

SU (subtract)

AA

12TP1TP1212TC121 (MP) 8使 MP0  MP1 6MP3 Block II 3

5

メモリ

編集
 
AGC コアロープメモリ (ROM)
 
AGC 1024ビット磁気コアメモリモジュール(前面と裏面)

Block I AGC10240RAMROMAGC1210111200RAM01110211Bank12使"fixed-fixed"3"fixed-switchable"

Block I AGC12KROM24KBlock II 32KROM4KRAM

AGCG1211.72μTP1SSRAMTP6GROMTP7GTP7TP10G使TP10G

AGCAGCTP7TP10AGCGTP10G

15使使110 PARITY ALARM 

割り込みと強制的カウンタ

編集

AGC5

DSRUPT (DSKY) 

ERRUPT

KEYRUPT

T3RUPTAGC

UPRUPT16AGC

AGC

AGC20/(PINC)(MINC)(SHINC)

T3RUPTDSRUPTPINCUPRUPTSHINC16AGC16

スタンバイモード

編集

AGC STANDBY ALLOWED 使AGC2.048MHz1F171.28AGCAGC STANDBY ALLOWED F17

AGCPINC10F171.28

AGC使70W5W10WAGC使使

データバス

編集

AGC1616(AQZLP)

BS

(一)RBB

(二)B

(三)

(四)WSS

(五)S

(OR)使MASKAGCC

(一)(NOT)

(二)(OR)

(三)(NOT)

AND

ソフトウェア

編集

AGC

AGCAGC 8(EXEC)使EXECWAITLISTWAITLISTEXEC

EXECDSKY COMPUTER ACTIVITY AGCCOMPUTER ACTIVITY 

AGCMIT使8使 MXV AGC使使AGC使使24 Christmas Computer  YUL [6]

 PINBALL PINBALL810PINBALLUNIX

DSKY使14

Block II

編集

Block II AGC1966Block I RAM1K2KROM24K36K1134Block I AGC Block II Block I 461

Block II Block I 312使25INDEXINDEX17INHINT()INDEX16(RELINT)INDEXEXTEND使EXTEND使3BankEbankRAM使使3BankEbankBankROMSbank4K使fixed-fixed/

PGNCSの障害

編集

PGNCS11AGC1201 alarm - 1202 alarm - [7][8][9]CPU

AGC85%使640013%5DSKY1668DELTAH10%1202GO166812021668AGCAGC1668GO[10]

AGC5[11]使800HzAGC使800Hz2800Hz

アポロ以外での利用

編集
 
フライ・バイ・ワイヤ実証実験機。AGC DSKY がアビオニクス・ベイに見えている。

AGCF-8使使AGC使[12]

AGC使[13]

その他

編集
  1. 当時の地上用の制御用コンピュータよりも性能は劣るが、宇宙船に搭載するコンピュータは、最新鋭のものよりも信頼性重視で「枯れた技術」が好まれる。特に宇宙線による動作エラーや素子劣化を起こしにくい耐放射線性(Rad-Hard)の半導体は一般にプロセス・ルールの大きい、余り微細化しない半導体素子を用いる傾向がある。現在においても市販の最新コンピュータより「低性能」なものが搭載されるのが普通である。
  2. 日本のロケット工学博士の糸川英夫が『逆転の発想』(プレジデント社、1974年)で、アポロ11号の航法コンピュータ停止の危機に対応した様子を、機械の修理ではなく別の方法で危機を乗り切った「発想の転換」の例として、当時の様子を紹介している。

注釈

編集
  1. ^ ほぼ同時期に世界初の電卓が市場に現れている。科学技術演算ができるプログラム可能なポケット電卓が現れるのはもっと先のことであった。世界初の携帯可能なプログラム可能電卓はHP-65であり、この電卓はバックアップ用としてアポロ・ソユーズテスト計画 (1975) の際にアポロ司令船に搭載された。

出典

編集


(一)^ abcHall, Eldon C. (1996), Journey to the Moon: The History of the Apollo Guidance Computer, Reston, Virginia, USA: AIAA, p. 196, ISBN 156347185X 

(二)^ abRamon Alonso's introduction, AGC History Project (Caltech archive, original site closed) (MIT), (July 27, 2001), http://authors.library.caltech.edu/5456/1/hrst.mit.edu/hrs/apollo/public/conference1/alonso-intro.htm 2009830 

(三)^ Ramon Alonso's interview (Spanish), Ramón Alonso, el argentino que llevó a la Apollo 11 a la Luna (Diario La Nacion), (March 7, 2010), http://www.lanacion.com.ar/nota.asp?nota_id=1240769 

(四)^ Hugh Blair-Smith biography, AGC History Project (Caltech archive, original site closed) (MIT), (January, 2002), http://authors.library.caltech.edu/5456/1/hrst.mit.edu/hrs/apollo/public/people/hblairsmith.htm 2009830 

(五)^ Apollo Guidance Computer: Original Display and Keyboard (DSKY) Unit.... (Total: 1 Items) Heritage Auctions

(六)^ Hugh Blair-Smith's Introduction, AGC History Project (Caltech archive, original site closed) (MIT), (30-November-2001), http://authors.library.caltech.edu/5456/1/hrst.mit.edu/hrs/apollo/public/conference3/blairsmith.htm 2010321 

(七)^ Collins, Michael; Aldrin, Edwin (1975), Cortright, Edgar M., ed., A Yellow Caution Light, "NASA SP-350, Apollo Expeditions to the Moon" (Washington, DC: NASA): pp. "Chapter 11.4", ISBN 978-9997398277, http://history.nasa.gov/SP-350/ch-11-4.html 2009830 

(八)^ Adler, Peter (1998), Jones, Eric M., ed., Apollo 11 Program Alarms, Apollo 11 Lunar Surface Journal (NASA), http://www.hq.nasa.gov/office/pao/History/alsj/a11/a11.1201-pa.html 200991 

(九)^ Martin, Fred H. (July, 1994), Jones, Eric M., ed., Apollo 11 : 25 Years Later, Apollo 11 Lunar Surface Journal (NASA), http://www.hq.nasa.gov/alsj/a11/a11.1201-fm.html 200991 

(十)^ Cortright, Edgar M., ed. (1975), The Lunar Module Computer, Apollo 11 Lunar Surface Journal (NASA), http://www.abc.net.au/science/moon/computer.htm 201024 

(11)^ Eyles, Don (February 6, 2004), Tales From The Lunar Module Guidance Computer, 27th annual Guidance and Control Conference (Breckenridge, Colorado: American Astronautical Society), http://klabs.org/history/apollo_11_alarms/eyles_2004/eyles_2004.htm 

(12)^ Tomayko, James E. (2000), NASA SP-2000-4224  Computers Take Flight: A History of NASA's Pioneering Digital Fly-By-Wire Project, The NASA History Series (Washington, D.C.: NASA), http://www.klabs.org/history/history_docs/reports/dfbw_tomayko.pdf 200991 

(13)^ The Silent War: The Cold War Battle Beneath the Sea, John Pina Craven, Simon and Schuster, 2002, p.120

資料・外部リンク

編集

AGC:

AGC4 Memo #9, Block II Instructions  

Computers in Spaceflight: The NASA Experience  By James Tomayko (Chapter 2, Part 5, "The Apollo guidance computer: Hardware")

Computers Take Flight  By James Tomayko

The Apollo Guidance Computer - A Users View (PDF)  By David Scott, 1

Lunar Module Attitude Controller Assembly Input Processing (PDF)  By José Portillo Lugo, History of Technology

The MIT AGC Project  
Luminary software source code listing - AGC:622MB

Colossus software source code listing - AGC:83MB

Annotations to Eldon Hall's Journey to the Moon  AGCAGC

AGC :

Apollo Guidance Computer Schematics

AGC Integrated Circuit Packages

Integrated Circuits in the Apollo Guidance Computer

AGC :

Delco Electronics, Apollo 15 - 15使500150MB

Stengel, R., Manual Attitude Control of the Lunar Module, J. Spacecraft and Rockets, Vol. 7, No. 8, Aug 1970, pp. 941948.

Source code for Command Module code (Comanche054) and Lunar Module code (Luminary099) as text.

AGC:

AGC Replica  John Pultorak  Block I AGC  AGC Replica 

Virtual AGC Home Page  Ronald Burkey  AGC 

Project Apollo for Orbiter   Orbiter AGC

Eagle Lander 3D 12Windows

: