MCP-1600

MCP-1600は、1975年にウエスタンデジタルによって発売された複数チップ構成の16ビットマイクロプロセッサである。1980年代初頭まで製造された 。 Pascal MicroEngine（英語版）、Alpha Microsystems（英語版）AM-100のWD16（英語版）プロセッサ、そしてDEC LSI-11マイクロコンピューターで使用された。 DEC PDP-11のコストを削減し、小型化した実装である。 チップセットに3種類のチップが存在する。 CP1611 RALU - レジスタ・ALUチップ CP1621 CON - 制御チップ CP1631 MICROM - プログラムされたマイクロコードが入ったマスクROMチップ（512ワード。1ワードは22ビット） これらのチップは、3.3 MHzの4相クロックと3つの電源電圧 (+5V, +12V, -5V) を使用した。 当時、ウエスタンデジタルで利用可能だったNチャネルシリコンゲートプロセスによって製造された。 内部的にMCP-1600は、（比較的高速な）8ビットプロセッサである。その8ビットプロセッサは、16ビットCPUをエミュレートするためにマイクロコードでプログラムすることができた。 全てのバイト長命令は、1クロックで実行できる。ワード長命令と分岐命令は、2クロック必要だった。 4個までのMICROMがサポートされたが、1つのプロセッサに必要とされるのは、通常2個あるいは3個であった。 レジスタファイルは、26個の8ビットレジスタで構成されている。 10個のレジスタ（RX）は、マイクロ命令によって直接アドレスされる。 4個のレジスタ（Rx/Gx）は、直接あるいは間接のどちらでもアドレスされる。 そして、残りの12個のレジスタ（Gx）は、間接的にしかアドレスされない。 間接アドレッシングは、3ビットのGレジスタを使って行われた。Gレジスタは、PDP-11命令のレジスタフィールドの値が常にロードされている。 MCP-1600の最も重要な機能は、プログラマブル・トランスレーション・アレイ（PTA）である。 PTAは、数個のパラメーターを持つ機能に対応するマイクロ命令の読み出しアドレスを新しく生成するための機能である。 これらのパラメーターは、マクロ命令（エミュレートされるCPUの命令）のデコード時に通常考慮されるものである。 PTAは、マクロ命令の翻訳のオーバーヘッドのほとんどを削減するために特別に設計されたものであった。 本質的にマクロ命令のオペコードは、一つのアドレスに素早く翻訳される。そのアドレスは、Location Counter へロードされ、マクロ命令を処理するための適切なマイクロ命令への分岐アドレスを作る。 ジョン・ウォレス（John Wallace）は、プロジェクトマネージャーであり、CP1621を設計した。 マイク・ブリナー（Mike Briner）は、CP1611を設計し、後にSilicon Storage Technology（英語版）でシニア・バイスプレジデントになった。 ビル・ポールマン（Bill Pohlman）は、設計エンジニアリングマネージャーであり、後にIntel 8086プロセッサのプロジェクトマネージャーになった。 1976年にナショナル セミコンダクターがMCP-1600のセカンドソース品を製造・販売するだろうという発表がされた。 実際にナショナルセミコンダクターが製造したものが存在するのかどうかは不明である。 CP1611とCP1621のクローンが、KR581IK1とKR581IK2(ロシア語: КР581ИК1とКР581ИК2)という名称でソビエト連邦で製造されていた ソビエトの581シリーズは、MCP-1600ファミリーの他のチップも含んでいた。 cp16simは、オープンソースのMCP-1600のシミュレーターである。 C言語で書かれており、MCP-1600プロセッサをエミュレートする。そのPLAは、WD900 Pascal Microengine プロセッサのマイクロ命令を実行する。 2016年現在、未完成である。 「雑草に入る（苦境に陥る）前に ACD PDQ-3 boot ROM の最初の数ダースのPコード命令を実行する程度には動作する。」という評判である。 GNU General Public Licenseバージョン3の下でリリースされている。 LSI-11チップセットのダイの写真 CP1611 RALU CP1621 Control CP1631 MICROM ^ a b Bell, C. Gordon (1978). Computer Engineering: A DEC View of Hardware Systems Design (4th Printing ed.). Digital Equipment Corporation. ISBN 1-483207-67-6. http://gordonbell.azurewebsites.net/computer_engineering/contents.html 2022年7月29日閲覧。  ^ “Western Digital adds MCP-1600 Micro”. Computerworld. (26 November 1975). https://books.google.com/books?id=nMHHJQxdDHYC&pg=RA1-PA26.  ^ “Western Digital 1600”. AntiqueTech. 2017年1月3日時点のオリジナルよりアーカイブ。2017年1月5日閲覧。 ^ “Western & DEC have 3-Chip uC Mini”. Microcomputer Digest 1 (6): 7. (December 1974). http://www.bitsavers.org/magazines/Microcomputer_Digest/Microcomputer_Digest_v01n06_Dec74.pdf 2023年1月11日閲覧。.  ^ a b MCP-1600 Microprocessor Users Manual. Western Digital. (1975). http://bitsavers.trailing-edge.com/pdf/westernDigital/MCP-1600/MCP-1600_Users_Manual_Oct77.pdf 2022年4月28日閲覧。  ^ “MCP 1600 Second Sourced”. Modern Data 9 (3): 40. (March 1976). https://archive.decromancer.ca/bitsavers.org/magazines/Modern_Data/Modern_Data_1976_03.pdf 2022年11月7日閲覧。.  ^ “Soviet microprocessors, microcontrollers, FPU chips and their western analogs”. CPU-world. 2020年4月18日閲覧。 ^ Козак, Виктор Романович (2014年5月24日). “Номенклатура интегральных микросхем — Микропроцессоры: серии 580 - 589” [Nomenclature of integrated circuits — Microprocessors: Series 580 - 589] (Russian). 2016年3月24日閲覧。 ^ “Microcode-Level Simulator for Western Digital MCP1600”. Github. 2022年12月25日閲覧。