スペースシャトルのI/Oプロセッサーから回路基板を調査する
スペースシャトルの汎用コンピュータを構成するI/Oプロセッサ(IOP)の回路基板2枚を詳細に解説。ネットワークインターフェース基板(MIA)とマイクロコードを格納したPROM基板の構造や役割を紹介し、マンチェスター符号化やバレルプロセッサ方式など、初期のマルチスレッドアーキテクチャの技術的革新に迫る。
背景メモ
- スペースシャトルには5台の汎用コンピュータが搭載されており、各機はCPUボックスとI/Oプロセッサ(IOP)ボックスの2筐体で構成されていた。CPUは32ビット、毎秒42万命令という現代の基準では極めて低性能だが、信頼性最優先で設計された。
- IOPはCPUとシャトル各部を結ぶネットワーク(24系統、毎秒1メガビット)を制御する専用プロセッサで、CPUより回路が複雑。特筆すべきは「バレルプロセッサ」方式:1つの物理プロセッサ上で25の仮想プロセッサ(2種類の完全に異なる命令セットを持つ)を1クロックずつ切り替えながら並行動作させる、初期のマルチスレッド設計だった。
- 著者はIOPから2枚の回路カード(IBM用語で「ページ」)を入手。1枚はネットワークインターフェース(MIA)で、アナログ回路とカスタムMotorola ICによるマンチェスター符号化/復号を行う。もう1枚はPROMページで、ヒューズを物理的に焼き切ってプログラムするPROMチップ36個にIOPのマイクロコード(72ビット幅のマイクロ命令)を格納している。
- マンチェスター符号化は1940年代マンチェスター大学で開発された方式で、各ビットに必ず信号の遷移を含むためDC成分がなく、クロック同期が容易。イーサネットやフロッピーディスクにも使われている。
- IBM System/4Piシリーズは航空宇宙向けコンピュータで、シャトルのCPUとIOPはその派生。ページと呼ばれる基板は金属板を挟んだ2枚基板構造で、筐体側面の熱交換器に熱を伝導する独自冷却方式を採用。