JPS6379134A - 補助記憶装置を有するマイクロプロセッサ装置 - Google Patents

補助記憶装置を有するマイクロプロセッサ装置

Info

Publication number
JPS6379134A
JPS6379134A JP62121474A JP12147487A JPS6379134A JP S6379134 A JPS6379134 A JP S6379134A JP 62121474 A JP62121474 A JP 62121474A JP 12147487 A JP12147487 A JP 12147487A JP S6379134 A JPS6379134 A JP S6379134A
Authority
JP
Japan
Prior art keywords
register
line
address
bus
instruction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP62121474A
Other languages
English (en)
Inventor
ケビン シー.マックドナウ
カール エム.グターグ
ジェラルド イー.ロウズ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Texas Instruments Inc filed Critical Texas Instruments Inc
Publication of JPS6379134A publication Critical patent/JPS6379134A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3802Instruction prefetching
    • G06F9/3814Implementation provisions of instruction buffers, e.g. prefetch buffer; banks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7839Architectures of general purpose stored program computers comprising a single central processing unit with memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/223Execution means for microinstructions irrespective of the microinstruction function, e.g. decoding of microinstructions and nanoinstructions; timing of microinstructions; programmable logic arrays; delays and fan-out problems
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C17/00Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards
    • G11C17/08Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards using semiconductor devices, e.g. bipolar elements
    • G11C17/10Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards using semiconductor devices, e.g. bipolar elements in which contents are determined during manufacturing by a predetermined arrangement of coupling elements, e.g. mask-programmable ROM
    • G11C17/12Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards using semiconductor devices, e.g. bipolar elements in which contents are determined during manufacturing by a predetermined arrangement of coupling elements, e.g. mask-programmable ROM using field-effect devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Microcomputers (AREA)
  • Internal Circuitry In Semiconductor Integrated Circuit Devices (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 この発明は、補助記憶装置をイJするマイクロブ0セツ
サす装置に関し、特に単チップ・マイクロプロセッサま
たはマイクロコンピュータ・デバイスを使用する電子デ
ィジタル処理装置に用いられる機構に関するものである
マイクロプロセッサ・デバイスは、GaryW、 Bo
oneに対して発行されかつテキサス・インスツルメン
ツに譲渡された米国特許第3,757゜306号に示さ
れlζようなrMO3/LS I J技術によって通常
組み立てられる単〜半導体集積回路に含まれるディジタ
ル・ブロゼツサ用の中央処理ユニットすなわらCPUで
ある。Booneの特許は、ずべて両方向性の平行母線
を用いて相互接続された並列△LU、レジスタ・スタッ
ク、命令レジスタ、および制御デコーダを含むブツブ上
の8ビツトCPUを示す。マイクロプロセッサという語
は通常、プログラムおよびデータを記憶するための外部
記憶装置を使用するデバイスを表わし、マイクロコンピ
ュータという語はプログラムおよびデータを記憶するオ
ン・ブツブROMならびにRAMを備えたデバイスを表
わすが、その用語は交互にも使用される。Gary W
、BooncおよびHichael J、Cochra
nに対して発行されかつテキサス・インスツルメンツに
譲渡された米国特許第4゜074.351号は、4ごツ
ト並列ALUおよびその制御回路ならびにプログラムと
データを記憶するROMおよびRAMを備えた回路を含
む単チップ「マイクロコンピュータ」形デバイスを示す
特許第3.757,306号および第4,074.35
1号が当初提出された時から、これらのデバイスの速度
と能力を向上するとともに製作費を減少する多くの改良
がマイクロプロセッサおよびマイクロコンピュータに施
されてぎた。一般に、半導体工業の傾向は小さなスペー
スに多くの回路、すなわちチップの小形化を目射してい
る。光食刻法が改良されるにつれて、ライン幅および分
解能が改良され、密度は増加するが、回路および装置の
改良もチップの小形化による性能向上の目標に貢献する
。マイクロプロセッサにおけるこれらの改良のあるもの
は、すべてテキサス・インスツルメンツに譲渡された下
記の米国特許に開示されている: Edward R,
CaudelおよびJoscph Il、 Raymo
ndJr、に対して発行された第3,991,305号
;David J、HcElroyおよびGraham
 S、Tubbsに対して発行された第4.156.9
27号; Rj、 FisherおよびG、 D、 R
OQerSに対して発行された第3,934.233号
; J、 D、 Bryantおよび6.八、tlar
tsellに対して発行された第3,921.142号
:H,J。
cochranおよびC,P、 Grantに対して発
行された第3.900,722号: C,W、Br1X
Oyらに対して発行された第3.932,846号: G、L、Brantingham 、 L、H,Ph1
llipsおよびり、T、Novakに対して発行され
た第3,939.335号;S、P、lIamilto
n、 L、L、Hilesらに対して発行された第4.
125.901号、H,G、 VanBave 1に対
して発行された第4,158.432号:第3.757
,308号ならびに第3.984.816号。
しかし、マイクロプロセッサ・デバイスのより安価で能
力向上に対する需要は、近年におけるこれらの技術に見
られた進歩にかかわらず続いている。もちろん、部品の
費用だけが関心事ではなく、主な関心事はソフトウェア
の費用およびプログラムを記憶するのに要する記憶装置
の椙、ならびに複合プログラムの実行時間を少なくする
ことにある。
この技術的に進歩したいろいろなマイクロブ0セツサお
よびマイクロコンピュータ・デバイスの若干の例は、出
版物ならびに上述の特許に記載されている。エレク]・
ロニクス誌の1972年9月25号の第31頁〜第32
頁にわたって、オン・チップROMおよびRA Mを持
つ4ビットPチVンネルMOSマイクロコンピュータが
示されているが、これは特許第3.991,305号に
似ている。特許第3.757.306号のものに似た最
ら広く使用される8ビツト・マイクロプロセッサは、エ
レクトロニクス誌の1974年4月18日号第88頁〜
第95頁(モトローラ6800)および、第95頁〜第
100頁(インテル8080)に記載されている。68
00のマイクロコンピュータ型が、エレクトロニクス誌
の1978年2月2日号の第95頁〜第103頁に記載
されている。同様に、8080の単チップ・マイクロコ
ンピュータ型が、エレクトロニクス誌の1976年11
月25日号第99頁〜第105頁に示されており、80
80から派生ずる16ビツト・マイク1]プロセツサが
、エレクl−0ニクス誌の1978年2月16日号の第
99負〜第104頁に記載されている。もう1つの単チ
ップ・マイクロコンビコータすなわちモスチック387
2が、エレクトロニクス誌の1978年5月11日号の
第105頁〜第110頁に示されている。リアル・タイ
ム・アナログ信号のディジタル処理に特に適合されるマ
イクロプロセラυ、すなわちインテル2920が、エレ
クトロニクス誌の1979年3月1日号の第105頁〜
第110頁に示されている。
6800の改良型がエレクトロニクス誌の1979年9
月17日号の第122頁〜第125頁に記載されている
が、6800から派生した6800Oと称する16ビツ
1−・マイクロプロセッサはエレクトロニック・デヂイ
ン誌の1978年9月1日号の第100頁〜第107頁
に記載されている。
浮動小数点滴わは、エレクトロニクス誌の1980年5
月8日号の第114頁〜第121頁に記載されたとおり
、8086を副プロセツサとして使用した8087と称
する16ビツト・プロセッサにおいて行われる。
したがって本発明の主な目的は、改良されたマイクロプ
ロセッサのデバイスおよび装置dを提供するとともに、
かかる装置を作りかつ作動さゼる改良された方法を提供
することである。もう1つの目的は、マイク0プロセツ
サまたはマイクロコンピュータの改良された性能あるい
は能力を提供すると同時に、所望の機能を果たすのに必
要な半導体デバイスの大きさくしたがって費用)を減少
さゼることである。その他の目的は、普通(nativ
e)の命令から区別できない複合命令をエミュレートす
るためにマイク0プロセツサにおいて命令シーケンスを
実行する方法;マイクロコード・プログラミングを使用
ぜずに慣用されるマイクロプロセッサ;複合命令を実行
するために、主記憶装置マツプに含まれない、オン・チ
ップ記憶装置を備えるマイクロプロセッサ:およびマイ
クロコンピュータにおける改良されたエミュレータ能力
、を提供することである。
その他の目的は、単チップ・プロセッサのΔL U 、
レジスタおよび母線に圓する改良された高密度レイアウ
ト、ならびにこれらの素子のために組み合わされ、それ
によってマイクロプログラミングを容易にする制御命令
;ワイド語または圧縮側υllROMと、単チップ・マ
イクロプロしツサのためのへしUルジスタ、および母線
を含むストリップまたは規則正しいアレイとの両方に関
して組み合わされかつ相関された設計、を提供すること
である。
もう1つの目的は、制60 ROMによって占められる
とともに、他の命令デコードおよびマイクロコード発生
回路によって占められるチップ上の面積を減少させるこ
とである。
もう1つの目的は、単チップのマイクロプロセッサまた
はマイク[1コンピユータにあるA L tJ 。
レジスタおよび母線の高密度構造を提供することである
。もう1つの目的は、規則正しい模様すなわちアレイの
ALU、レジスタおよび母線を持つ単デツプCPUを提
供することである。
本発明の実施例により、MO8/LS I形の改10さ
れたJJIデツプ・マイクロプロセッサ・デバイスは、
ALUと、数個の内部母線と、多数のアドレス/データ
・レジスタと、関連制御デ=1−ドまたはマイクロ制御
発生回路を持つ命令レジスタとを含む。デバイスは両方
向性の多重アドレス/データ母線および多数の制御ライ
ンによって、外部紀1fI装置ならびに周辺装置に通じ
る。A L U、レジスタおよび母線ならびにa、II
 III ROMは相関されたレイアウトに作られ、そ
れによってチップ上の所要スペースは最小である。すべ
てのレジスタおよび△[U内の同様なビットは整列され
た規則正しい模様になる。、母線は、ALtJ/レジス
タ・ビットの各ストリップの上にかぶさる金属ラインで
ある、t、l1tilラインは母線に垂直でかつ制*+
l ROMの列と共に整列されたポリシリコン・ライン
である。制御ROMはポテンシャルMOSトランジスタ
の行と列のアレイであり、トランジスタを含まない列ラ
インを除去することによって圧縮される。
列当たりのビット数は、信号を使用すべきALU/レジ
スタのストリップの部分と制御信号用の列を整列させる
広い構造(良い行ライン)を作る圧縮性を増すために最
小数である。
本発明に従えば、オフ・チップ主記憶装置のほかに、命
令シーケンスの実行が複合命令すなわちインタープリタ
(マクロ命令)をエミュレートし得る小形オン・チップ
記憶装置(ROMおよびRAMの両方を含む)が堤供さ
れる。マクロ命令が[普通の(natiVe) J命令
と区別できないのは、すべての記憶取出しなどが全く同
じように行われ、かつ長い命令シーケンスがυJ込み可
能だからである。このオン・チップ記憶装置はオフ・チ
ップ記憶装置マツプに影響しない。こうしてマイクロプ
ロセッサは一段と多能となり、わす、かな設計努力で慣
用される。また、主記憶装置から−1れだ別のオフデツ
プ記憶装置にアクeスできれば、エミュレータ機能また
は特殊命令が可能となる。組合せa能が示されたが、J
li独でも使用される。
本発明の新しい機能と思われる特徴は特許請求の範囲に
示されている。しかし、発明自体は、その他の機能およ
び利点と共に、付図に関する以下の詳細な説明を読むこ
とによって最も良く理解されると思う。
マイクロプロセッサ装置 ここに説明するマイクロプロセッサ・デバイスはいろい
ろな形をとることができ、1つの実施例ではマイクロプ
ロセッサ・デバイスは第1図に一般化された形で示され
る装置に使用される。例えば、本装置は単一ボード汎用
マイクロコンピュータ、語処理装置、表示猪首およびタ
イプライタ鍵盤を備えるコンピュータ・ターミナル、通
信切換または通信処J!!装置、あるいはこの種の任意
な多くの応用であることができる。本装置は、後で詳し
く説明される単一チップMO8/LST中央処理ユニッ
トすなわちマイクロプロセッサ1、および記憶装置2な
らびに入出力デバイスずなわら、I10デバイス3を含
む。マイクロプロセッサ、記憶装置およびI10デバイ
スは16ビツト、並列、両方向性、多重アドレス/デー
タ母線4、および制御ライン5によって相互に接続され
ている。
適当な供給電圧およびクロック端子が含まれており、例
えばデバイスは1個の+5VVccli源と接地すなわ
ちVssとを使用することができ、また5A置のタイミ
ングを形成するオン・ブツプ発振器の周波数を制御づる
水晶がデバイス1の端子に接続される。言うまでもなく
、本発明の概念はオフ・チップ記憶装置2の代わりにオ
ン・チップ記憶装置を備える単チップ・マイクロコンピ
ュータに用いら九るとともに、両方向母線4の代わりに
別別のアドレス母線とデータ母線とを持つマイクロプロ
セッサにも用いられよう。
もちろん一般的に古って、第1図の装置は従来の方法で
作動する。マイクロプロセッサ1は、母線4のアドレス
を記憶装置2に送り出し、次に配憶M置2のアドレス指
定場所から母線4を介して命令を受Gノることによって
、命令を取り出す。マイクロプロセッサはそのときこの
命令を実行するが、それには記憶装置2に記憶されたオ
ペランド用のアドレスを母線4を介して送り出すこと、
およびPfi14に戻ってくるこのデータを受けるとと
もに、母線4上のデータを伴ったアドレスによって記憶
装置2に結果を書き込むことを含むいくつかの機械サイ
クル(クロックまたは水晶によって定められる)を通常
必要とする。(10デバイス3は記憶装置2と同様にア
ドレス指定される。外部デバイスに対するこのインター
フェースがアドレス/データff1Fi14および制御
ライン5を用いて達成されるのは、I10デバイス3が
記憶アドレス・スペース内の場所を占めるからである。
これはメモリーマツプ■/○として知られている。
詳しく説明する例において、15ビツト・アドレスはマ
イクロプロセッサ1から母線4に加えられ(第16番目
のビットはアドレス指定のためにハードワイ4.yされ
たOである)、それは記憶装置の215すなわち32に
語を直接アドレス指定する。
記憶装置内の各16ビツト語は2個の8ビツト・バイト
を含むので、マイクロプロセッサは64にバイトをアド
レス指定することができる。マイクロプロセッサ1の命
令の組は、詔またはバイトのいずれかのオペレーション
を可能にする。第2a図は、ここに説明される第1図の
装置のためのデータ語およびバイト形式ならびにビット
定義を示す。語は、記憶装置2の中で偶数番号のアドレ
スを指定されている。16ビツト・バイト・アドレスは
、内部ですべてのアドレス指定モードによって明確に操
作されるが、15ビツト語アドレスのみが母線4を介し
て記憶装置2に供給され、32に語の記憶スペースの直
接アドレス指定を与える。
CPUデバイス1は、ベージング、機能分離、マツピン
グなどを含んでアドレス指定できるような構造的記憶ス
ペースの量を増加するためのいくつかの方法を援助する
。ベージングは、第16アドレス・ビットとして、制御
ライン5の1つに現れる状態ビットを使用することによ
つ“で達成される。
機能分離は、命令またはデータ用の記憶スペースを分離
させるBSTライン6の「母線状態符号」を用いて達成
される。マツピングは、マツピング命令によって制御さ
れる外部マツプ論理デバイスを用いて達成される。これ
は構造的なアドレス範囲を、1E3Mバイトずなわち2
4ビツト・アドレスに相当する224まで拡大すること
ができる。
第1図の装置は記憶装置対記憶装置構造を使用するが、
この場合CPUによって用いられるレジスタ・ファイル
すなわち作業レジスタは、マイクロプロセッサ・チップ
1の中ではなく外部記憶装gf 2の中にある。この種
の構造では、大部分のオペランドおよび戻りアドレスが
チップ1のレジスタに記憶された従来の方法に比べて、
割込み応答速度が速くかつプログラミングの融通性が向
上する。記憶装置2の大吉Ud、特にアドレス0080
からFFF△まで(すべてのアドレスはこの説明におい
て16進tなわち基数16で与えられている)は、第2
図に見られるとおり、プログラム記憶用または「作業ス
ペース」用に+1用できる。作業スペースの第1語は作
業スペース・ポインタ(常に偶数アドレス)によってア
ドレス指定され残りの15語は作業スペース・ポインタ
足す02から1Eまで(4ビツト2進アドレス)によっ
てアドレス指定される。記憶装置2の中に作業レジスタ
を有することによって、文脈スイッチずなわら割込みは
マイクロプロセッサ1と記憶装置2との間のデータ転送
を最小限に押えて実行されるが、その理由は′A!!す
べきデータの大部分が既に記憶!!1fi2の中にある
からである。
並列l103のほかに、本装置はコミュニケーション・
レジスタ・ユニツ]〜づなわらrcRUJ7を用いるピ
ッ1−・アドレス可能入出力能力を備え、このCRL1
7は入力としてアドレス/データ母線4の端子の1つ(
ピッ1−O)を、出力としてもう1つの端子(ビット1
5)を、また制御用としてライン5を使用する。
割込み要求ライン(3木の割込み制御ライン9の中の1
本)が働いて割込みマスクと内部で比較されるとき、C
P LJ 1によりサンプリングされる、16個の割込
み符号を形成する4本の入力ライン8により、割込が発
生する。
ライン8に現れる符号の優先度がマスクと同等よ/=は
それより高い場合は、割込みシーケンスが開始される。
比較の結果が割込不可ならば、プロセッサは要求を無視
する。制御ライン9のもう1つは非マスク割込みである
が、この場合ライン8に現れる優先度符号1よ重要では
ない。
本装置ではダイレクト・メモリ・アクビス(DMA)が
可能であるが、この場合記憶語の大ぎなブロックは母線
4を介して記憶装置2とディスク・メモリのようなI1
0デバイス3との間で転送される。制御ライン5の1つ
に現れる「ホールド」命令は、外部制御機器が母線4を
使用したい旨をプロセッサ1に示すので、プロセッサは
母線4に行っている端子を高インピーダンス状態にする
ボールド状態に入いる。
制御ライン5、母線状態ライン6、および割込み制御ラ
イン9の各機能の定義は第A表に記載されている。16
ビツトの状態レジスタSTに対する状態ビットは第8表
に示されているが、ここで命令の組のなかのある命令に
対して各ビットをゼットする条件が定められている。割
込みレベルの定義は第0表に記載されている。もらろん
、この特定の装置は、本発明の特徴が使用される現代の
マイクロブ[1セラ勺またはマイクロコンピュータ装置
の説明例にツざない。
第1図のCPUチップ1は第2C図の命令の組を実行す
るが、言うまでもなく、説明される特定の命令に加えま
たはそれに代わって実行づる他の命令が定められてもよ
い。第2C図の命令の組は主として、部品番号TMS9
900としてテキサス・インスツルメンツによって販売
され、かつテキサス州77001.ヒユーストン、M/
S 6404、郵便私書箱1443、テキサス・インス
ツルメンツ社によって1978年に出版された国会図出
館カタログ番号第78−058005号のr9900系
列システム設計」という件名の図書に記載されているも
のと同じであり、このような図書は参考として水用is
に包含されている。
TMS9900によって実行されなかった第2C図の命
令は、符号付き乗除算;長語の加減停、左シフトおよび
右シフト;間接ブランチ;ブランチJ3よびブツシュ・
リンク;長距Mi:ステータスー〇−ドおよび作業スペ
ース・ポインタ・ロード:マツプ・ファイル・ロード;
ならびにマルチブロセツリ′補助命令テスト、テストア
ンドクリア、ならびにテストアンドセットなどである。
この命令の組を実行するに当たって利用し得るソース・
アドレスおよび行先アドレス指定モードが以下に説明さ
れる。一般的に述べれば、2ビツトのTフィールドTd
およびTS  (ビット4−5ならびにIC)−11>
は加算、減算、移動、比較などのような命令のアドレス
指定モードを形成する。
命令用の16ビツトのオペレーション・コードが第2C
図で3枚にわたって示されている。第2C図はエントリ
ーポイント発生回路に用いられる群(一番左のすなわち
最上位の「1」に基づく)を示すように降順に配列され
ている。
CPUチップ CPUチップ1内のブロセツリ構造は第3図でブロック
図の形に、第4図でチップ・レイアウトの形に、また第
5図と第6図で論理図の形に示されている。一般的に述
べれば、プロセッサはA L LJずなわち演算論理コ
ニット10およびそれと組み合わされるレジスタ、制御
機器、データ通路ならびに関連論理回路を含む。このΔ
LLJは第1図の装置に用いるようにされているが、こ
のCPU構造の特徴は伯の同様な装置に使用される。
ALUIOは、プロセッサの計算要素として鋤く16個
の並列2進加算器/論理状態から成る。
ALIJ 10G、!16ヒツト17) rAJ入力1
0Aj5J:び16ビツトのrBJ入力10Bを受けて
、16ビツトの並列出力10Cを作る。ALUの八人力
10Aは16ビツトの並列A母線から入る。Affl線
に現れるデータはアクディプ・ローである。表示子A、
A−またはNAを、この母線に関し技術的に正確である
ように用いるものとし、同じことが他の母線についても
言える。A母線は説明するようにいくつかの出所(SO
llRCE )の任意な1つからのデータを受Gノるこ
とができ、その入力の選択は制御人力11によって行わ
れる。同様に、B入力10Bは、2111 w人力11
によって定められたいくつかの出所の任意な1つからデ
ータを受ける16ビツトの並列13母線から入る。AL
UIOからの出力100は、入力11の制御によりPf
ll線またはEffi線のいずれかに進む。A L U
 G、を第2C図の命令に必要な加、減、アンド、オア
、排他的オア、補助などの機能のようなマイクロ命令を
ブロヒツサで実行するのに要する寸へての演尊および論
理線面を果たす。
プロレツ勺はA L U 10と組み合わされる多数の
レジスタを備えているが、プログラマがアクセスし得る
のはその中の3個だけである。これらの3個は゛プログ
ラム・力fリンク・レジスタすなわちPCレジスタと、
作業スペース・ポインタ・レジスタすなわちWPレジス
タと、状態レジスタすなわちSTレジスタとである。命
令の取1qまたは実行の際に用いられる他の内部レジス
タ番よ、10グラマーにとって呼び出すくアクセスする
)ことはできない。
プログラム・カウンタPCは、現在実行中の命令に続く
次の命令の語アドレスを右する15ビツト・カウンタで
ある。15段(stages>はh゛を崩えられ、第1
6ビツトはOにハードワイヤされる。
記憶5A置2の中にある命令は語の境界に制限されるの
で、1バイトを呼び出ずことはできず、偶数のアドレス
(語)のみが使用される。マイクロプロセッサは記憶装
置2から次の命令を取り出すためにこのアドレスを参照
し、プログラム・カウンタPCは新しい命令の実行中に
アドレスを増分くインクリメント)する。マイクロプロ
セッサ1の現命令がプログラム・カウンタPCの内容を
泰更する場合は、プログラム・カウンタの変更された内
容によって規定された記憶装置2の中の場所に対してプ
ログラム・ブランチが生じる。割込み、プラス・ジンプ
ルーブ、ランチおよび飛越しくジψンプ)の諸命令のよ
うなすべての文脈切換えオペレーションは、プログラム
・カラン、りの内容に影響する。ブ1」グラム・カウン
タはラインEPCによってF母線からロードされ、また
はその内容はラインPCBを介して[3fH線に加えら
れたり、別法としてラインPCPを介してP母線に加え
られる。プログラム・力1クンタに出入するこのような
ずべての転送は、もちろlυ、制御人力11によって形
成される。内部で、プログラム・カウンタPCは2進加
算回路を含み、この場合もまた入力11の制御を受けて
、適当な時点で15ビツト・レジスタに含まれるカウン
トに1を加算する。
状態レジスタSTは、プログラム比較の結果を含み、プ
ログラム状態の条件を表示し、かつ割込み優先度回路に
割込みマスク・レベルを供給する16ビツト・レジスタ
である。状態レジスタ内にある16ビツトの各位置は、
マイクロプロセッサ゛1に存在する特定の機能または条
件を表し、これらのビット位置割当ては第8表に示され
ている。
ある命令は事前必要(orequisite)条件をチ
ェックするために状態レジスタSTを使用し、他の命令
はレジスタ内のビットの値に影響を及ぼし、また他の命
令は全(entire)状態レジスタに新しい1紺のパ
ラメータをロードする。割込みも状態レジスタを変える
。各命令は状態レジスタに影響を及ぼすことがある。状
態レジスタSTの全16ビツトは、♂り御ライン11の
指令により、EcJ線からラインESTを介してロード
されたり、ラインS T Eを介してE母線にロードさ
れたりする。
プロセッサ1は、内部ハードウェア・レジスタの代わり
に命令オペランドを操作するため、作業スペースと呼ば
れる記憶装置2の中の語のブロックを使用する。作業ス
ペースは、他の使用のために保留されていない記憶装置
2の任意な部分で、第2b図のような16個の相接する
記W語を占める。個々の作業スペース・レジスタは、デ
ータまたはアドレスを含み、オペランド・レジスタ、ア
キュームレータ、アドレス・レジスタ、またはインデッ
クス・レジスタとして働くことがある。いくつかの作業
スペース・レジスタは、ある命令の実行中に特殊な意味
に使われる。
多数のこれらの16語作業スペースは、高度のプログラ
ム融通性を与えながら、記憶装置2の32に語にひ在ザ
ることがある。記憶装置2の中の作業スペースをさがす
ために、ハードCフェア・レジスタずなわら作業スペー
ス・ポインタWPが使用される。作業スペース・ポイン
タWPは、第2t)図の作業スペースにある第1語の記
憶アドレスを含む15ビツト・レジスタである。(左側
に揃えて、第16ビツトすなわちLSBをOにハードワ
イアする。) 作業スペース・ポインタの内容にレジスタ内の数の2倍
を加えてその語のメモリ要求を開始することによって、
ブロセツ丈は第2b図の作業スペースにあるどのレジス
タをも呼び出す。第16ビツトは0であるので、これは
レジスタ内の数の2倍をWPに加えることに等しい。第
2b図は作業スペース・ポインタと記憶Hffl内のそ
れに対応する作業スペースとの関係を示す。WPレジス
タは制御ライン11の指令により、ラインWPBを介し
てB母線にロードされたり、ラインDIWPを介してD
I81−線からロードされる。
この作業スペース構想は、サブルーチンや割込みの場合
のように、1つのプログラムから別のプログラムに変更
される文脈スイッチを要求するオペレーションの際に特
に有利である。在来の多重レジスタ方式を用いる、かか
るオペレーションでは、各語を記憶したり取り出す記憶
サイクルを用いて、レジスタ・ファイルの内容の少、な
くとも−部を記憶し、再ロードすることが必要である。
プロセッサ1は、作業スペース・ポインタWPを変更す
ることによってこのオペレーションを達成する。完全な
文脈スイッチは、プログラム・カウンタPC1状態レジ
スタST、および作業スペース・ポインタWPを変換す
る3ストア・サイクルと3取出しサイクルだけで済む。
スイッチ後、作業スペース・ポインタWPは新しいルー
チンに用いる記憶装置2の中にある新しい16語の作業
スペース(第2b図)の開始アドレスを含む。元の文脈
が回復されるとき、相当する時間節約が生じる。
文脈スイッチを起こす、プロセッサ1の中の命令は、ブ
ランチおよびロード作業スペース・ポインタ(BLWP
>、リブルーチンからの戻り(RTWP)、ならびに拡
張オペレーション(XOP)命令を含み;デバイス割込
み、演暉オーバーフ[1−割込み、違法オペレーション
・コード検出トラップなどもプロセッサをサービス・サ
ブルーチンにトラップさせることによって文脈スイッチ
を生じる。
ブロヒツザ1の使用者(プログラマ−)にとって呼び出
し不可能な内部レジスタは、記憶アドレス・レジスタす
なわちMAレジスタ、データ・レジスタすなわちDレジ
スタ、およびにレジスタを含む。Dレジスタは、入力と
して並列ラインDSを介してスワップ母線S1.:接続
され、またラインSKに現れるスワップ母線出力はにレ
ジスタに加えられるが、ずべてライン11の指令の制御
を受t′Jる。Dレジスタは主としてデータ出カラツブ
として触ぎ、E母線からラインEDを介してロードされ
る。Dレジスタは16本の並列ラインDDIによってD
I母線に加えられる。ALUの出力1oCからE母線し
たがってラインEDを介してDレジスタに至り、次にラ
インDDIを介してDI母線に、そしてAl1線を介し
てALUのへ入力に至るデータ通路は、例えば除算ルー
チンに役立つ。
しかし、主として出力データはEtk[からDレジスタ
に、次にラインDSを介してスワップ母線Sに、さらに
ライン13を介して16個のアドレス/データ・バッフ
ァ12に[1−ドされる。データは、バイト・オペレー
ションのような敢木の実行次第で、スワップ母線Sによ
りまっすぐ転送されたり、交換される。これらの転送は
もちろんライン11に現れる指令の制御を受ける。
アドレス/データ・バッファ12は、おのおの外部母線
4の中の1つに接続される入出力端子を備える、在来形
の161[!ilの両方向性、3状態バツフアである。
これらのバッファは通常、PI線からライン14を介し
てアドレスを受けたり、ライン13を介してデータを受
け、母線4に出力する。
マイクロプロセッサ・デツプ1の入力として、プログラ
ムまたはデータ後はうイン13を介してスワップ母FA
Sに加えられ、したかつ、てラインSKを介してにレジ
スタに加えられるっライン11の指令の下に、Kレジス
タからラインPKを介して1〕母線をロードすることが
可能であり、したがってP ffl線を介してにレジス
タを出力することができる。
記憶装置2に対するアドレスは通常、マイクロプロセッ
サ1からP母線を介して送り出され、それはMAレジス
タからの16本のラインMARによってロードされる。
このレジスタ内のビットも並列ラインMARを介してB
母線に転送され、したがってALLJのB入力10Bに
転送される。別法としてMAレジスタはE母線からライ
ンEMAを介し、またはにラッチからラインKMAを介
してロードされるが、すべては制御ライン11によって
定められるとおりである。
使用者が見ることのできるもう1つの内部レジスタは一
時レジスタすなわち1−レジスタである。
このレジスタはALLJloから16ビツトの並列出ノ
〕10Fを受けて、その出力を3通りの方法すなわちラ
インTBを介して直接、通路TLBを介して左シフト、
または通路TRBを介して右シフトのいずれかによって
、その出力をBffl12に加える。またTレジスタは
、通路E3Tによるクロック・サイクルの /4だけ遅
延されるALUに対する8入力10Bをも受ける。■レ
ジスタは以下に説明されるような乗除σに重要な働きを
する。
乗除算にも使用されるレジスタは、MQ(積/商)シフ
トレジスタと呼ばれる。このレジスタはライン11の指
令によって右シフトまたは左シフトの能力を備えている
。レジスタは16ビツト並列ラインAMQおよびDIM
QによってA母線またはDI母線からロードされたり、
ラインMQEまたはMQBを介してE母線あるいはB母
線に出力される。CIIJ7を含むビット操作または直
列CRU操作の場合、MQレジスタの「0」ビットは、
ラインCMQでrOJ A/Dバッファ12h1らロー
ドされる。このための出力は、1ビツトしか使用されて
いなくても、並列にDレジスタを経由する。
命令レジスターRは、与えられたマイクロコード状態時
間(機械り°イクル)に実行されている現命令を含む通
常機能を提供する。命令レジスタIRはライン11の制
御下で、DIlnlからラインDIiRを介してロード
されたり、ライン1]5Fを介して[母線にロードされ
る。IRに進む命令のいろいろなフィールドは、2ビツ
トおよび4ビツト接続、IR2ならびにI F< 4に
よってAI線にも進むことができる。しかし、各サイク
ルの間、命令レジスタIRの内容は16本の並列ライン
IRO〜lR15を介して、入口点およびマイクロ制御
発生回路ならびに各種制御回路に転送される。
制御信号11は制御lROM15に発生されるが、この
場合はALUおよびレジスタのハイ側で1514、ロー
側で151の両半分に分けられる。
ビットのほんの一部の、すなわち16g全部のではなく
、ハイまたはローで多くの制御信号11が使用されるの
で、制6tlROM15をこのように分番)ることによ
ってスペースが節約される。υ制御ROMの各半分は、
Xアレイ15XおよびYセレクト・アレイ15Yを持っ
ている。各ライン11用のバッファ15Bは、Yアレイ
15Yからの選択出力を受けて、ライン11に制御信号
を作るために必要に応じてクロックその他の論理を導く
マイクロ制御ライン11の数は実行すべき命令次第で約
142であるが、これは両側15Hと151−に進むラ
イン16に現れる8ビツト・アドレスのアドレス指定範
[111(256)の中に十分おさまる。この8ビット
制tllROMアドレスは、入口点くエントリーポイン
ト)論理またはマイクロジャンプ回路によって作られる
。制御2IlROMから出力11を受ける8木のライン
17に作られるマイクロジャンプ・アドレスは、次の状
態のためのジャンプ・アドレスを作ることができる。ラ
イン17のマイクロジャンプ・アドレスは、実行入口点
くエントリーポイント)アレイ19Eまたは出所/行先
アドレス入口点アレイ19八から受けた入力により入口
点をも作ることができる論理アレイ18に送り戻される
。グループ検出回路20はIRから16ヒツト命令語を
受けるとともに、STおよび伯の制御回路から状fフビ
ツl〜を受けて、入口点アレイ19Aおよび19Eの2
つの入力を作るが、その1つはグループ識別入力であり
、もう1つはフィールドである。グループは第2C図に
見られるとおりオブコードの一番左の1によって定めら
れ、フィールドは一番左の1に始まる3ビツトまたは4
ビツトである。ライン16に現れる制御ROM15に対
するアドレスも8ピツ1〜のラッチ21で保持されるの
で、乗除算命令の場合と同じ状態が再実行される。この
目的で、最大16までの状態回数をカウントする4ビツ
ト状態カウンタSCが提供され、状態カウンタの溢れ出
力は保持ラッチ21の解除を制御づ”ることかできる。
こうして、プロセッサの作りJはグループ検出回路20
および論理アレイ18.19A、19Eを介して入口点
を作るIRレジスタにロードされる命令によって制御さ
れる。入口点は、アドレス・ライン16に記入される制
御211ROM15の開始アドレスである。このアドレ
スは制御ライン11に特定な1組の指令を生じ、あるラ
イン11は活動するが大部分は活動しない。アドレスは
次の状態のための制mROMアドレスを定めるジャンプ
・アドレスをもライン17に作ることができ、すなわち
次の状態は別の入口点であったり、保持ラッチ21によ
り同じ状態であることができる。命令に必要な最終状態
に達すると、次の命令はレジスタIRにロードされて、
別の入口点が得られる。
制御ROMは「圧縮ROMJi造である。
制御ROM15からの制御出力11は、発生回路22に
よってライン6の母線状態コードをも作る。第り表の母
線状態コードはおのおの規定条件に応じて作られ、外部
デバイスはライン6の88丁1〜BST3およびライン
5の1つに現れるMEM−をデコードすることによって
、母線4でどんな活動がいま行われているかを正丸に決
定することができる。
ライン8および制御ライン9の割込みコードはチップ1
の内部にある割込み制御回路23に加えられる。状態レ
ジスタSTからのビット12〜156回路23に加えら
れ、外部からの割込みコードと比較するための割込みマ
スクを提供する。ブロセツ4J1に・よって割込みが処
理される方法を定める論理流れ図が第2e図(4枚)に
示されている。
外部制御ライン5は、制60 ROMからのライン11
に応動するとともにチップ内の他の条件、およびライン
5に応動する制御発生回路24に接続され、所要の内部
制t7Ilならびに他の外部制御5を作る。
オン・デツプ記憶アレイ25が、本発明の特徴とする補
助記憶装置で、この実施例に於てこの記憶アレイ25は
プロセッサ・チップ1の上に含まれ、第2C図の命令の
組にない追加の機能を提供する。この記憶アレイ25は
ROMの一部25Δ、例えば512詔、およびRAMの
一部25B、例えば16語すなわち1つの作業スペース
を含む。
ROM 25 Aは16進アドレス0800−OBFE
にあり、RAM25Bは16進アドレス0000−00
1Eにあるが、これらは第2b図のメモリマツプの中に
ない。これらの場所は例にすぎない。記憶アドレス・デ
コード回路25CはP母線からのライン25Dに現れる
記憶アドレスを受けるとともに、ROM25AまたはR
AM25Bから1つの語を選択するが、これはデータ1
10回路25Eを介して16本の並列ライン25Fにあ
るライン13に至る入力または出力である。
オン・デツプ記憶制御回路2 S G GctM I 
Dすなわちマイクロ命令検出と呼ばれる規定のオブコー
ドを検出するくこの例では状態レジスタSTのビット1
1が1にセラ1〜されている間、違法オブヨードまたは
XOPのいずれかが実行される)。制御回路25Gはオ
ン・チップ記憶アレイ25に実行を転送する働きをする
。この操作に入るとき、文脈スイッチはRAM25Bに
ある16語作業スペースのレジスタR13、R14およ
びR15にお番ノるWP、PCならびにSTレジスタの
内容をセーブする。次にCPLJはROM25Aからの
アセンブリ言語命令(第2C図)を実行し、これらのマ
イクロ命令の実行中にいろいろなマイク[1命令は間接
モード、間接自動増分(インクリメント)モード−3よ
び指4m(=f(インデックス)アドレス指定モードを
用いて通常の方法で外部記憶装置2を呼び出すことがで
きる。使用者の外部記憶スペース(第2b図の記憶割当
て図)から離れたこのオン・チップ記憶スペース25を
提供することによって、プログラマ−にとって全く明ら
かな方法で新しい命令がエミュレートされる。これらの
新しい命令は第2C図の組および特殊の命令を用いて構
成され、プロセッサ・チップ1の嘩用考はオ゛ン・チッ
プ記憶アレイ25を介して実行すべぎある追加の命令を
規定することができ、しかも専用省は第2C図の命令の
組を用いてこれらの命令を実行するためにROM25A
に記憶すべきプログラムを古くことができる。記憶アレ
イ25の詳細な作動は以下に説明される。(特に89頁
オン・チブ記憶装置以下。) 1つの重要な特徴は、上述のALUIOおよびそれと組
み合わされるレジスタに、D、MA。
))C,WP、T、MQ、STならびにIRが第4a図
に見られるとおり規則正しいストリップ・バターンでM
O8/LSIチップの上に配置されていることである。
これらの各レジスタおよびALUは、第4図に見られる
とおり水平に配列されたビットを記憶セルのようなパタ
ーンに配列される16のピッ]・または段階を含む。第
3図のA。
B、Dl、EおよまびPffl線はおのおのALLIな
らびにレジスタ(むしろ第3図に示されるレジスタ以外
のもの)のセルの上部にある16個の並列金属ストリッ
プであり、制御ライン11の12個全部はALUloお
よびそのレジスタにあるトランジスタ用の制御ゲートと
して用いられる水平ポリシリコンのラインである。AL
LJloに必要な制御ライン11の数は例えばWPレジ
スタのような単一レジスタの場合よりも多く、ALU段
を配置するのに要するスペースが単一レジスタの場合よ
りも大ぎいことは幸運な場合であり、消費スペースは最
小にされる。すなわち、制御を作る制御ROM15に必
要なスペースは、1.制御される回路に必要なスペース
と同じである。このレイアラ1〜配列は実際に、以下で
説明される圧縮「ワイド語」制tall ROMまたは
デコーダと共に使用した場合有利であり、この理由はそ
れが制’till ROMのそばにぴったり適合して、
在来のマイクロプロセッサ構造における導線配置専用の
無駄なスペースが事実上ないからである。すなわち、す
べての母線A。
B、Dl、E、Pなどおよびすべての制御ライン11は
使用されないシリコンの上ではなくチップの機能領域す
なわちセルの上または下を通され、かつS線配置におい
てではなく機能セルに固有にほぼ90”の折返しが作ら
れる。先行技術のデバイスでは、制御I ROM 、レ
ジスタ、A L tJなどは母線や導線によって接続さ
れた回路の島となっていた。第4a図の拡大図はALU
IOおよびレジスタの小部分を示し、テキサス・インス
ツルメンツに譲渡された米国特許第4.055./14
4号に仝休としてしたがって作られたNチャンネル・シ
リコン・ゲートMOSデバイス用の金属母線ならびにポ
リシリコンa、II御プライン11示されている。
上述のKD I、ED、EMA、M’AB。
DINPなどのような接続ラインの大部分は物理的なラ
インであったりm長い導線ではなく、その代わり第4a
図の金属母線に沿う単に金属・シリコン接触区域である
のに注目することが大切である。すなわち、16ビツ1
〜並列導線の配置はストリップ特徴によって最小にされ
る。
ALUおよびレジスタ回 A L LJおよびそれと組み合わされるレジスタに使
用される細部回路は、第5a図から第5q図までについ
て説明される。これらの回路は第3図に見られるとおり
共に適合する。一般に、16ビツトの中の1ピツ1〜だ
けが線で示されている。大部分の場合、残りの15ビツ
トはある例外のほか、詳細に示される1ビツトと同じで
ある。
 L tJ 第5e図から、ALUloのビットの1つはA母線に接
続される八人力10AおよびBffl線に接続される8
入力10B、ならびにトランジスタ10aと10bとに
よってそれぞれE母線とP母線に接続される出力1oC
を備える複合論理回路から成る。トランジスタ10 a
および10bは、それぞれH1A L T Eならびに
HI A L 1’ Pで表されるゲート制御ライン1
1に接続されている。
この説明を通じ、指令またはυI御ウライン11表すの
に用いられるしきたりは、(a)Hlすなわち「ハーフ
1」のようなりロック・フェーズ、(b)rALJ  
(ALU)のような出所、(c)rTJ(ツー)または
rFJ  (フロム)、J3よびそれに続<rPJ母線
あるいはrEJ Ffi線のような行先、などである。
 /2および /4り[1ツクは第2d図のタイミング
図に示されている。このしきたりを用いると、HIAL
TPはこの制御ライン11がHlすなわちハーフ1クロ
ツクの間に生じ、かつA L UからPln線への接続
を形成することを表す。ラインDIAおよびトランジス
タ10CによってDlln線からのA fJ I’、i
!の入力は、ライン11のH1D I T△指令によっ
てυl 12+1され、rH1クロックでのDIから△
へ」と翻訳される。このビットのキャリ・インおよびキ
ャリ・アウトは、それぞれALUの隣接段に)り続され
ているラインCou tおよびCinに現れる。キA7
す・アウト・°ラインはトランジスタ10dによって0
1で1すなわちVccまで予め充電され、次にトランジ
スタ10eによって01が[1−になってから条件付き
で放電される。ノア・ゲート10fは制御ライン11の
1つに現れる5ISTOPG (81に現れるストップ
発生を表す)、および接続点1C1の電圧に基づいてト
ランジスタ10eのゲートを駆動する。ゲート10fの
出力はキャリ発生条件であり、S T、 OP Gが活
性の場合は無条例で0にされる。
Qlで1まで予め充電された接続点10oは、ゲートに
反転六入力を持つトランジスタ10iによって接続点1
0hに接続されている。同様に、キャリ伝搬回路におい
て接続点10jG、tQlで1まで予め充電され、かつ
1〜ランジスタ10k(これも反転六入力を持つ)によ
って接続点10mに接続される。Qlで1まで予め充電
される接続点10hおよび10nは、B(反転)ならび
にB(二度反転)入力によって駆動されるトランジスタ
10Cと、H2ALL11〜H2ALU4で表わされる
4本の制御ライン11によって駆θ」されるトランジス
タ10pとを含む複合ナンド/ノア論理回路により条件
付で放電される。4本の制御ラインΔL tJ 1〜A
LU4は表に示されるようなALLJ内で行われる操作
を定める。ライン11の「1(3論理」制御ラインは演
算/論理制御ラインであり、このラインがハイであると
きALUはトランジスタ10QによってCinラインを
無条件で接地することにより論理機能を果たすが、ロー
のCinが1)]他内的ア回路10pの入力に加えられ
ると、反転されている他の入力は接続点10jから信号
を伝搬する。伝搬信号は在来の方法でトランジスタ10
Sのゲートをも駆動する。ALIJloの1つの重要な
特徴はノア・ゲート10fおよびそのストップ発生制御
回路であり、これt12の補数Aの機能で「バスA」と
同じコードであるが、H3論即=0のコードを作らせる
。これは負のAおよびへの絶対値によって作られる。
ΔLU10のLSBに対するキャリ入力はマイクロコー
ドυ制御ライン11によって作られる。
CI FCOTなりち[キャリ・アウトからのキャリ・
インJfillnは、前の状態のMSBからのキャリ・
アウトを現状態のLSBにおけるキャリ・インに加える
。5TCIN制御ラインはキャリ・インに状態ビット3
を加える。CI N fi制御ラインはLSBに対する
無条件キャリ・インを作る。
作業スペース・ポインタ・レジスタ 作業スペース・ポインタ・レジスタWPの詳細な回路図
は、第5C図の下部に示されている。このレジスタは、
H2の間に出力に接続される入力接続点WPbをトrつ
2個の静インバータ段WPaを含む。入力接続点は、ゲ
ートにH4WPFDI(IH4に現れるDrからのWP
)指令を持つトランジスタWPcによってDI母線から
ロードされる。中間接続点WPdは、インバータWPe
およびゲートに指令HIWPTB()(1に現れるBへ
のW]〕)を持つトランジスタWPfを介してB母線に
接続されている。15のビットは全く同じであり、第1
6ビツトはハードワイヤのOすなわらVssである。
作業スペース・ポインタ・レジスタWPは、第2C図の
標準命令の出所アドレスおよび行先アドレスを作るとぎ
、ALUloのB入力として用いられる。文脈スイッチ
において、WPは記憶装置2に書き込むことによって節
約され、この操作のための通路はA L U 10のB
入力およびP母線である。WPはO1母線によってオフ
・チップからロードされる。
プログラム・カウンタおよび増分器(インクリメンタ) 第5C図にも見られるプログラム・カウンタPCは、ト
ランジスタPCdによって入力接続点PCCおよびQ2
に接続された出力接続点PCbを持つ1対の静インバー
タPCaから成る。入力接続点1)Ccは、ゲートに1
−1/1PCFE(ト14に現れるEからのPC)を持
つトランジスタPCeによって垂直E母線からロードさ
れる。この信号はレジスタ・マトリックスを水平に走る
制御ライン11の1つに現れる。中間接続点PCfにお
けるプログラム・カウンタの、′」1力は、トランジス
タPCaのゲートに接続され、それによりプログラム・
カウンタの内容はトランジスタPChまたはPetおよ
びラインPCPまたはPCBによって垂直Pm線あるい
はPm線に読み出される。これらの転送を制御する信号
は、別の水平制御ライン11に現れるHlPCTP(8
1に現れるPへのPC)およびl−11PC1’B (
+−11に現れるBへのPC)である。プログラム・カ
ウンタはH3PCrNC信号が制御ライン11の1つに
現れるとき増分され、トランジスタPCjをターン・オ
ンさせる。HlでトランジスタPCkはターン・Aンし
、プログラム・カウンタのこのビットの内容を、前のビ
ットからのキャリ・ラインPCnと直列にトランジスタ
PCmのゲートにロードする。キャリ通路の各ビットは
トランジスタPCpによって01で1まで予め充電され
る。ラインPCnに現れる各ビットのキャリ・インは、
ノア・ゲートによってトランジスタPCqのゲートに接
続され、ノア・ゲートも1つの入力としてH4PCFE
信号を持つ。この回路に、よって、ヒツトが1でありか
つキA7す・インが1である場合にキA7りは伝搬され
、またはキャリ・インが1である場合にビットはOから
1に進む。L S 8段15ピツi−語アドレスのみが
E&124に送り出されるので188段はハードワイX
7の0であり、第16ピツトは呼出しに用いられないバ
イト・アドレスである。奇数番号のバイトを用いるバイ
ト操作では、次に低い偶数番号はアドレスであり、その
ときバイト・スワップ回路5が活性化される。すなわち
、アドレスの第16ビツトは必ずOである。
他の15ビツトはすべて第5C図に示されるものと伺じ
である。最終ビット・からのキャリ・アウトは、それが
アドレスFFFF(16進)を表すので切り捨てられる
記憶アドレス・レジスタ(M△レジスタMAレジスタの
1つのビットは第5C図の上部に詳しく示されている。
このレジスタは、H2でり[lツクされるトランジスタ
MACによる帰還を持つ16ビツトのおのおのにある1
対の標準インバータMAaおよびMAbを備えている。
レジスタは16木の別々なラインEMAおよび各ライン
にあるトランジスタMA(jを介してPm線からロード
される。161t々のトランジスタMAdのゲートは、
水平tll II+ライン11の1つに現れる信号H4
MAFE(1−14に現れるEからのMA)によって駆
動される。同様に、各MAレジスタ・ビットは、ライン
KMAと、ゲートにH4MAFKを持つトランジスタM
Aeとによってにラッチからa−ドされる。MAレジス
タからの出力は、トランジスタMArによって2個の出
力トランジスタMAQおよびMAhに接続される2四の
インバータの間の中間接続点でうけ取られる。制ねりラ
イン11の1つに現れるHIMATP指令はトランジス
タMAGをターン・オンするとともに、その出力をライ
ンMAPを介してPm線に接vc″Ijる。
111 M A T B指令はトランジスタMAhをタ
ーン・オンするとともに、その出力をラインMABを介
してPm線に接続する。もちろん、他のレジスタについ
ても言えるが、母線に出入する入力ラインと出力ライン
はおのおの16本あることは3゛うまでもない。
MAレジスタは通常、大部分の命令シーケンスの基本部
分としてPm線を介してA / l)バッファにロード
される。それが通常ALU出力10CからPm線を介し
てロードされるのは、アドレスが例えば大部分の命令で
通常行われるWP+28を加口することによって作られ
るときである。
データ・レジスタ Dレジスタすなわちデータ・レジスタは、第5b図に詳
しく示されるように構成された16ビツトを含む。この
レジスタ段は、ト)2でクロックされたトランジスタD
Cを通る帰還通路を持つ1対のインバータ[)aおよび
Dbから成る。このレジスタの入力はトランジスタDb
およびラインED(16木のラインEDの中の1つ)を
介してE ffi線から来るが、トランジスタDbはう
イン11の1つに現れる指令H4DFE (EからのD
)によってa、11611される。出力の1つは、中間
接続点と、トランジスタD gJ3よび16木のライン
CDIの1つににってPm線に接続するトランジスタ[
)fとから出る。この出力は、全部で16個のトランジ
スタDgのゲートに接続される制御ライン11に現れる
l旨令HIOTDI (DIへのD)によって制御され
る。Dレジスタからの他の出力は、おのおのスワップ回
路SにあるトランジスタSaのゲートに進む16本のラ
インDSによる。このトランジスタ・インバータの出力
は、ゲートに現われる指令「ストレート」を持つトラン
ジスタScまたはゲートに現れる指令「スワップ」を持
つトランジスタSdによって、スワップ母線sbに接続
される。16個の1〜ランジスタScの各ケートに接続
されるライン11は)−12DTss (スワップ−ス
トレートへのD)指令を運ぶが、H2DTSW(スワッ
プ・スワツプドへのD)を運ぶライン11はトランジス
タSdのゲートに接続される。E母線はDhおよびD(
jを介してVccに接続する。
Dレジスタは極めて頻繁に、ALUloからE母線を介
してデータ出力を受ける働きをする。また、それはDI
母線およびA母線を介してA側のA L Uオペランド
人力源としても働く。Dレジスタは主としてデータ出力
用であるが、例えば準備完了条件(レディ)および保持
(ホールド)条件でもまた除算時でも使用される。
Kラッチ にレジスタすなわちにラッチには同等の16段があり、
その1つが第5b図に示されている。Kレジスタは、ト
ランジスタKcによってト11に現れる帰還を持つ2個
の標準インバータKaおよび Kbを使用する。出力は
、出力トランジスタKfおよびKQに接続されているイ
ンバータ・トランジスタKeのゲートに接続される。ラ
イン11の1つに現れる指令QIKTP(+)へのK)
はトランジスタKfをターン・オンし、Kレジスタの出
力をラインKPを介して1〕母線に接続する。指令QI
KTDI(DIへのK)は16個の各1−ランジスタK
Oをターン・オンし、出力を16本のラインKDIによ
ってDI[線に接続する。Kレジスタは、トランジスタ
KiおよびKjによりストレートまたはスワップドのい
ずれかの条件でスワップ母線Sからロードされる。制御
ライン11の1つに現れる指令H3K F S Sはス
ワップ母線を16個のトランジスタKiを介してにレジ
スタの人ツノに接続する一方、指令H3KFSWはスワ
ップ母線をスワップ操作またはバイト操作のための16
個のトランジスタKjを介してにレジスタの入力に接続
する。
スワップ回路 第5a図に示されるスワップ回路は、ストレー1〜また
はハイおよびロー・バイト・スワツブドのいずれかによ
り、16ピツトDレジスタをライン13を介してA/D
バッファ12に接続したり、KレジスタをA/Dバッフ
ァからライン13に接続する馳きをする。アドレス番、
1バイト操作においてデータと辺い、交換される必要が
ないので、アドレスはスワップ母線を通らずにA/Dバ
ッファに接続されるP母線を介して通常入力されたり出
)〕される。すなわら、データ(4にレジスタを介して
入り、Dレジスタを介して出るが、いずれもスワップ母
線Sを使用する。
一時レジスタ 第5d図には、■レジスタすなわち一時レジスタの16
段の中の1段が詳しく示されている。このレジスタは、
トランジスタTcを介してト12に現れる帰還を待つ2
つの標準インバータ段1”aおよびTbから成る。■レ
ジスタからの出力は、インバータの出力における接続点
Tdから、反転トランジスタ■eを介して、トランジス
タTgによりQ3に現われるvCCまで予め充電される
接続点Tfに至る。ライン11の1つに現れるH 1 
N L D 1指令は、トランジスタTeと直列に接続
されるトランジスタThを制t111する。接続点Tf
から直接B母線への出力は、ラインT8と、水平ライン
11に現れる指令H1TSB(BへのT)によって制御
されるトランジスタTiとによる。左送りのために、接
続点TfはトランジスタTjによって次の高位ビットで
ライン]“LBを介して左にB母線に接続される。右送
りのために、接続点T1″はl・ランジスタTkによっ
て次の低位ビットでラインT RBを介して右にB母線
に接続される。トランジスタTjおよびTkは、水平ラ
イン11の2本に現れる指令1−11TSLB、ttよ
びHlTSRBによって制御される。■レジスタはライ
ンBTと、インバータTnと共に03でクロックされる
トランジスタTmと、ゲートにHrTFBが現れるトラ
ンジスタ下pとによって8母線からロードされる。この
入力はクロック・サイクルの3/4だけ遅延される。イ
ンバータ出力におけるトランジスタTpは、Tレジスタ
を[1−ドするために出力が入力接続点TQに接続され
ている。インバータ出力にJ3けるトランジスタ下rお
よびゲートに111丁FBが現れるトランジスタTsは
、遅延後にB母線に現れるB母線情報を交換する通路と
して接続点Tfに進む。すなわち、HITTBを伴うH
lTFBは、■レジスタをロードし次にぞれを次のサイ
クルでBfn線に読み出すよりも速い通路である。AL
UloからのrFJ出力はトランジスタTtを通して入
力TQに、またトランジスタTuのゲートに接続される
トランジスタTUはトランジスタTvと直列に接続され
、TuおよびTVはいずれもト11TFFによって制御
される。トランジスタTVの出力はEm線から[3ff
l線への出力として接続点Tf’に進むが、それはスト
レート、左送り、または右送りのいずれでもよい。■レ
ジスタのこの配列は除算において大いに有利である。
MQシフトレジスタ MQレジスタは16ビツトから成り、その1つが第5f
図に示されている。このレジスタは制御ライン11によ
って左右に送られ、したがってCRUVi作などにおい
て乗除惇命令に使用される。
また、レジスタは汎用作業レジスタとしても使用される
。この目的で入力接続点MQaは制御指令H/IMQF
EによってEm線からトランジスタMQbおよびライン
EMQを介してロードされたり、制御指令H1MQFD
IによってDI母線から1〜ランジスタMQcおよびラ
インDIMQを介してロードされる。Q3に視れる帰還
はトランジスタMQdによって供給され、第1段の出力
はトランジスタMQeによってト12の間に第2の入力
に接続される。左送りi能はレジスタの次の低位ビット
において入力接続点MQaを接続点MQQに接続する1
〜ランジスタMQfによって供給されるが、これが生じ
るのは指令1−t D 4 M Q S Lがライン1
1の1つに現れるときである。この制御指令に冠せられ
るHD4は、次の状態時間に、またはこのマイクロコー
ドがi、lJtIIIROM15に作られるとぎから1
クロツク・サイクル遅延されたときに、ト14に生じる
ことを表す。右送り機能は、制御指令HD 4 M Q
 S Rがライン11に生じてトランジスタMQhをタ
ーン・オンし、接続部MQaをレジスタの次の高位ビッ
トの入力接続点MQaに接続するときに作られる。CR
UのI10操作では、MQレジスタにある16ビツトの
最初と最後のビットはDI母線またはlI)線4に結合
する他のff1lを介して入力および出力として用いら
れる。
MQレジスタの内容は、インバータMQiと、入力接続
点MQa (二度反転)を出力接続点MQkに接続する
インバータ・トランジスタMQjとから成る回路によっ
てE、PまたはBl線に加えられる。出力接続点MQk
は、l−111−1l。
HIMQTPまたはトID1MQTE指令が生じるとき
トランジスタMQmによってB、PMよび[FJ線に接
続される。第1インバータMQpの出力MQnは、MQ
btfi活性化されるとぎ、84 M Q F Eでト
ランジスタMQqによって第2段の入力に接続される。
状態レジスタ 16ビツトの状態のレジスタSTの1つのピッ]へが第
5q図に示されている。この段は、トランジスタSTC
によって04に現れる帰還を持つ1対のインバータST
aとSTbとから成る。入力接続点STdは、指令H8
TFEが生じるとぎ、Em線から1〜ランジスタST′
eを通ってロードされる。いくつかの伯の入力トランジ
スタSTfは、制tlllROM15などからの他の制
御指令11のような、伯の出所から入力接続点をセット
したりロードすることができる。状態レジスタの出力は
、ライン11に現れる指令HDISTTEのυ制御下で
、E母線に進む転送トランジスタSTiと共に反転トラ
ンジスタSThによって中間接続点STgで受は取られ
る。
CROM15からの制御指令11の中には12個の状態
制御信号O81〜C812J3よび2紺の状態信号SS
OとSS2がある。これらはいろいろなトランジスタS
Tfを制御して、第2C図の命令の組J5よび第8表の
状態ビット定義により状態ビットをヒツトしたり条件付
きでセットする。
主立旦乏スl 命令レジスタIRは16ビツト・レジスタであり、その
1つのビットが第5g図に示されており、トランジスタ
TRcによりR2に現れる帰還を持つ2つのインバータ
段IRaとrRbが含まれている。命令レジスタは、l
」41RLD指令により入力接続点IRdにおけるDt
線からトランジスタIRcを経てロードされる。また、
命令レジスタは、指令H11RCL’Rにより入力接続
点IRdをVccに接続するトランジスタIRfによっ
てクリアされる。命令レジスタI Rからの真、および
補数(コンブリメント)出力は接続点1RgならびにI
Rhで受は取られ、これらの出力はIRO〜lR15(
およびIRQ−IR15)としてグループ検出回路20
に進み、もちろん入口点アドレスなどを作るのに用いら
れる。次に、作業スペースにあるレジスタのアドレスを
定めるビットは、lRk:達する前に指令11の制御の
下で、出所および行先アドレス発生のために八L tJ
のΔ入力に直接供給される。
IR高出力よびST出力のあるものは、第2C図の命令
の組によって定められるジャンプ命令または条件もしく
はその両方のどれでもを検出するために、ジャンプ検出
回路26(第3図)に使用される。ジャンプ検出回路に
よって受信されるビットは、S T O−S T 3、
ST5、STO〜S −1−4、TR4〜[R7、J3
よび11く4へ−[R7などである。
グループ検出回路20は、全部で15個のIRビットJ
3よび補数を受けて、第2C図に定められるとおり命令
語が11グループGo〜GIOのどれに入るかを決定す
る。これは進む「1」の位置に基づく。次に、第2C図
で同じく定められる4ビツト〈またはある場合には3ビ
ツトから2ビツト)のフィールドは、P L Aにおい
て入口点アドレスを作るのに使用される。
凰紋五見且旦y ブロレツサの作動を定めるライン11に現れるaIl+
御信号は、第6図に見られるとおり制御211 ROM
において作られる。このプロセラυの1つの重要な特徴
により、制御ROMは先行技術の制御デコーダよりもは
るかに少ないチップ上のスペースを用いるように圧縮さ
れる。制御ROM15は8木の入力アドレス・ライン1
6に加えられる各個のアドレス用のライン11に現れる
1紺のマイクロ制御信号を発生させる。入力はライン1
6aの4ビツトXアドレスと、ライン16bの4ビツト
Yアドレスとに分けられる。256個の可能な各アドレ
ス入力については、出力の独特な組合じが作られるが、
代表的実施例では命令の組が実行される状態は256通
り未満であるので、要求される組合せ数は256未満で
ある。例えば、第り表の命令の紺を実行するブロセツリ
では、239個のアドレスリなわらマイクロコード状態
を用いて142個の制御信号11(ライン17用の8個
のマイクロジ−7ンブ・アドレスを含む)を選択的に活
性化させる。第6図は例として8個の制御ライン11の
みを示ずが、これらはMΔFD I、MATB、PCI
 NO,PCTB。
WPT13.All”ρ、CI FCOおよびl) E
 T△倍信号ある。他も命令の組により同様にコード化
される。
制御ROM15はX選択部分15XとY選択部分15Y
とに分けられている。X選択部分は説明Jるとおり、圧
縮度により、16個のXライン15aと可9数のYライ
ン15bとを含む。ライン16aのXアドレスは、標準
デコーダ15Cを用いてライン15aの15個の中の1
個を選択する。
Xライン15 a J3よびYライン15bの交点に円
15dが現れるところで、Yライン15bをソース・ド
レイン通路にJ:り接地に接続するトランジスタが構成
される。Xライン158Gよトランジスタのゲートを構
成する多重ラインである。Yライン15bのすべては結
合(popu 1ate )される。
すなわち、1′べては円すなわちトランジスタ15dを
持つことに注目されたい。これは、ROMの大部分が結
合されない(または反対極性のROMが使用されると、
はとんど全部が結合される)先行技術のマイクロプロセ
ッサにおける制御ROMと対照的である。第6図の制御
ROM15は、トランジスタ15dを含まないYライン
15bのすべてを除去することによって圧縮される。
第6図の制御ROMのY選択部分15Yには16個のラ
イン15eが含まれ、その中の1周だけがデコーダ15
「によって選択される。ライン15bと直列に接続され
ているトランジスタ15gは、4個のライン161)の
2進コードによって定められる各グループにおける16
個の可能なYライン15bの1つだけを選択させ(それ
によってライン15aはハイである)、各グループにあ
る他のずべてのYライン15bはトランジスタ150を
介して制御ライン11から隔離される。
第6図のYm択の代わりに、第6a図に見られるような
Ym択を使用することができる。この場合は8個のライ
ン15eが使用され、唯一のYライン15bはライン1
6bからの4個のYアドレス・ビットおよびそれらの4
個の補数に応動する16個の中の1個を選択するデコー
ダによって選択される。トランジスタ15hは円が示さ
れている各場所で、Yライン15bと並列に接続されて
いる。第6図のY3ff!択はライン150を多く使用
するが、第6a図のトランジスタ15hよりも少27い
トランジスタ15gを使用する。いずれの場合でも、Y
選択15Yの機能はYアドレス16bによって定められ
るように、各グループにあるいくつかのYライン15b
の中の1つだけを制御することである。第6a図の実施
例は第6図の場合に比べて、x選択15X用に反対の論
理を使用する。1つの論理の形が第6a図に使用されて
いるが、その場合非選択ラインには円すなわちトランジ
スタ15dがあるので、ライン15bから制御ライン1
1に至る出力にはクロッ、りおよび反転バッファ151
と共に各グループ用の反転のノア・ゲートが含まれてい
る。第6図において、すべてのライン15bは唯一のイ
ンバータ15iと共に各グループのライン11に対する
出力においてハードワイVのアンドとして一緒に接続さ
れている。
第6図の圧縮ROMは、ライン15bが駆動する制御ラ
イン11が一般にハイになると°思われるとぎ、ライン
15bがローになる点で、誤り論理を使用する。各ライ
ン15bには予め充電されたトランジスタ15pが接続
されているので、各04クロツクでライン15bl、t
Vccまで−P/)充?iされる。インバータ15iは
、その対応するYライン15bがOであるとき、ライン
11に1を作る。各状態時間の01で、ライン15aお
よび150は有効となり、各グループにある1つのライ
ン15bを条件付きで放電しかつ他のすべてをVCCす
なわち1に保つ。選択された反転ラインは、各グループ
についてライン11に現れる正の制御ラインとなる。説
明される加σ用のALU制御のようなある場合には、出
力は再び反転されてROM圧縮を容易にする。
第6b図において、第6図のグループの2つが圧縮特徴
を持たずに示されており、これら2つのグループはMA
FDrおよびM A −r B指令を作るライン15b
である。各グループは潜在的に、16個のライン15b
と64個のトランジスタ15fとを含む。トランジスタ
15dが存在しない各グループ(点線で図示)にある使
用されないライン15bを除き、またこれらのライン用
のY選択トランジスタ15dを除くことによって、スペ
ースと複雑さを大きく減少することができる。
MAFr)Iグループでは、4個のライン15bだ()
が必要であり、12個のYラインと48個のトランジス
タ15fを節約する。MATBグループは9個だけのY
ラインを必要どし、5個のライン15bと20個のトラ
ンジスタ15「を節約する。
第6図の残りの各6グループは次のとおり16個未満の
ライン15bを要求する:PCINCグループは9個の
ライン15bを持ち、PCTBは6個、WP王8は9舒
1)、ΔLTBは12個、CI FCOは1個、そして
DITAは15個をそれぞれ持つ。第6図のために−・
例として選択されたこれら8個の制御ラインでは、12
8個の可能なYライン15bの中の63個、および51
2個の可能なトランジスタ15fの中の252個、ずな
わら全体の49%が節約される。考えられる別の方法と
して、完全供給のROMが使用された場合は、X選択部
分15XLlt16X16X8=2゜048個の可能な
トランジスタを含む。第6図の圧縮ROMは16X(/
l→−9+9+6+9+12+1.+15>すなわち1
6X65−1.040個の可能なトランジスタすなわち
交点を含む。この場合もまた、節約は49%である。
1つの実施例で使用される命令の組については142個
のライン11が必要とされるので、完全供給の制御RO
Mは142X16X16=36゜252ビツトを含む。
圧縮によって、これは10゜000個未満まで減少され
、節約は72%になる。
マイクロプロセッサ用の1lN11II ROMでは、
可能なROMビット位置の大部分はトランジスタを含ま
ないようにコード化される。与えられた制御出力11に
f3tl 7する最す共通の作用はオフ(論理のO)と
なることである。142個の主副υ11信号11を持つ
代表的な16ビツト・マイクロプロセッサでは、任意の
与えられた状態で動くのは通常30個未満(ときにはわ
ずか数個)である。これには多くのり【ノがある。例え
ば、数個のレジスタ(MA。
PC,WP、TまたはMQ)がALUの1つの入力(B
)に進む間、−度に1つだけが単・−人力に進むことが
でき、したがって伯の可能な通路用のtel Oil信
号は働かない。また、わずか二、三の状態に多数の特殊
制御信号が使用される。このことは、二次デコーダを使
用することによってマイクロプロセッサ用の先行技術の
制御デコーダに用いられた。ある制御信号は、−数制御
を作るためにより小さなROM tなわちランダム論理
でデコードされた二次制御として主fli制御ROMか
ら来た。普通、−次信号は与えられた状態で数個の中の
1周だtづが必要とされる場合にはコード化された。こ
のような方式では制611 ROMはその外部にランダ
ム論理をふやす費用の点で節約されるが、これがマイク
ロプログラミングを一段と困難にするのは、マイクロコ
ードが最後の制御信号から除かれた1つのレベルである
とともに、デコード状態に進む時1nが要求されてから
デバイスを遅延させるからである。
第6図の圧縮制御ROMは基本的に、コード化されない
制御出力11を使用する。あるルリ御出力にはその通路
内に論理回路を含むが、これは先行技術の装置に比べて
極めて小である。制御信号の大部分は?!準のクロック
されたゲートr:H1、Qlなどによってクロックされ
るので、信号は選択された社、1間中のみ妥当である。
制御ROMの深さは圧縮能力を増すように選択される。
it、II御信号の分布が全体にランダムに生じるもの
とすれば、列を除去し得る機会は(超幾何確率の誘導に
より)はぼ下記の式で示される。
ただし#S=状態数、#P=制御信号の発生数、J3よ
び#B/C−列当りの可能なビット数、ずなわち第6図
のライン15、aの数。例えば、制御ROMに256個
の状態があり、制御信号が10回生じ、そして64個の
Xライン、ずなわち64個のピッ]〜深さを持つ列があ
るとすれば、列を除去する確率は5%である。明らかに
、圧縮法はこの減少の機会では実用にならない。これこ
そ、このROM圧縮がいままで考慮されなかった↑な理
由である。しかし、列すなわちYラインを除去する機会
を増すいくつかの方法が使用される。
圧縮の合口を増す1つの方法は、数B/Cずなわら列当
たりのビット数を減らすことによって上記の確率の式を
直接攻撃づ“ることひある。前項の例において、列当た
りのビット数(Xラインの数)が64個から16個まで
減少されると、減少の確率は5%から52%になる。こ
の変更が従来実施されなかったのは、集積回路のROM
が比較的方形に作られ(XラインとYラインが同数)で
、ROM用に組み合わされる制御回路の面積を減少する
傾向rあるからである。カラム当たりのビット数(Xラ
インの数)を減らすことによって、ROM内のビット数
を同じにすると、列(Yライン)の数はそれに対応して
増加される。しかし、第6図による圧縮ROM法は、列
の数したがってビット数を減らずことによって増加を相
殺する。
列を除去できるように、さらに多くの列が作られる(列
当りのビットを減らすことによって)。結合されない(
unpopulated )列を除去する場合でも、列
当たりのビット数を減らすことによって作られるカラム
数は完全には吸収されないので、alltllROMは
ROM出力ライン(−段と長いライン15a)の方向に
広くなる傾向があるが、列のライン15bの良さは短く
なる。列のライン15bの数の増加はY選択トランジス
タ15fの数を増加させ、ある点ではこの増加は列当た
りのビット数減少によるI”<0Mアレイ15Xの減少
によって相殺されない。したがって、既定のレジスタお
よびALLJllならびに命令の組を持つ与えられたC
 P tJでは、列の長さすなりらXライン数による減
少が最適であるピーク点が存在する。
別の形の圧縮は状態のアドレスを変更することにJ二つ
て達成される。上記の確率式は信号のランダムな発生を
想定している。X JjよびYアドレスを(主として分
析によって)四方に動かすことによって、さらに多くの
「ブランク」の列が作られ、したがって除去される。ま
ず、この目的で注目すべきことは、列の減少が同じY選
択(同じYアドレス)を持つピッl”15dll!づい
て行われることである。同じY選択を持つような状態は
、同じ区分にあると言われる。第6図に示される例では
、16個の可能なXアドレス0−F(16進)はOのY
アドレスを持ち(あるものは使用されない)、したがっ
て同じ区分内にあり、すなわら区分当たり16の状態が
ある。状態アドレスを配列替えすることによって、すべ
て0を持つピッl−の列15b(すなわら除去しくqる
列)の数が増加される。
例えば、I)ITAを無視すると、r8JのYアドレス
は第6図に示される例におい゛C二度だけ使用され、そ
の都度それはXアレイ15Xにある列のラインにわずか
2個のトランジスタを含むので、これは考慮に値する。
Yアドレスを「8」の代りりに「5」に変えることによ
って、「5」はこれらの出力グループで既に実行されて
おり、またトランジスタを「5」の列に移すと、もう2
個のラインおよび4個のY選択トランジスタが除去され
る。うちろん、この例が現実には不可能であるのは、Y
=5列のX位置がDITAと共に第6間に見られないあ
る他の制御ライン・グループで既に占められているから
である。
状態アドレスを変えると若干の実際的問題があり、これ
らの問題の最大はマイクロルーチンの開始アドレスを発
生さけることである。開始アドレスすなわち入口点が論
理アレイすなわらROMによるよりもむしろランダム論
理に作られるとき、開始アドレスをランダム論理によっ
て具合よく固定させ、次にこれらの固定アドレスのまわ
りで圧縮させるのが最良であることが判明した。
状態アドレス(ライン16に現れる8ピツ1〜・アドレ
ス〉の変更がマイクロ・コードに閉ループ効果を持つの
は、マイクロLt:出力11のジA7ンブ・フィールド
17が変更されたアドレスまで飛び8AVように変化す
るからである。ジャンプ・フィールド17を作るIJl
lはアドレスを変えることによって減少されるが、それ
を最適にするのはむづかしい問題である。Yアドレスが
変更される場合に特にこのことが言えるのは、これが他
の減少に影ITるからrある。すなわち、ジャンプ・フ
ィールド17を減少する試みにおいて、×アドレスのみ
を変更するのが最良であり、こうすると他の減少に影響
を及ぼさない。
制tllROMを圧縮するもう1つの方法は、制御信>
号の極性を変えることである。制御信号の省略間の条デ
1を正しく選択することによって、有効な制i!I+<
 OMの列の減少が達成される。省略時の条1/1によ
って、トランジスタ15dがコード化されない(ずなわ
も存在しない)ときライン11に現れる信号の条件が大
きな意味を持つ。これまで説明されたような第6図の例
では、1〜ランジスタ15dが存在しない場合に省略時
の条件はライン11(1金理の0を出力する)に現れる
不活性出力であると想定された。しかし、これはあらゆ
る場合について必ずしも最良の省略ではない。ライン1
1に現れる指令が不活性よりも一段と活性の状態であれ
ば、バッファ15Bにインバータを追加して制御2+1
 ROM 15 Xに逆をコード化するのが有利となる
ことがある。
最適の省略を選択して有利に働かせる方法の最も良い例
は、ALUloのための制御信号11によって!jえら
れる。ALtJl0のための制御信号11は8個であり
、これらはALtJl、ALIJ2、A i U 3、
ALU4.5TPG (ストップ発生、キ翫7り発生防
止)、論理ではi、PAiではOの113論狸、CI 
FCO,および第1ピツトにのみ影響するCINである
。在来り式でコード化された場合、第5d図のALU回
路は0110でALU1〜ALLI4、Oで5TPG、
OでH3論理、0でCI FCO,およびOでGINと
なるADD機能を作る。これは代表的な命令の組で最も
共通に使用される条件であり、したがって、ALU1〜
△LU4制御信号にある2個の1が除去されるならば、
制O1I ROMを圧縮する可能性は増大される。
こうして、インバータ10iはA L LJ 2 LJ
3よび△L U 3信号用のライン11と直列に加えら
れる(第5d図)、こうして、A D Dはl−ランジ
スタがROM15Xにないときコード化される省略時の
条件であり、最大の圧縮を与える。この場合、通路A用
の0011または通路B用の0101として(非反転)
83論理=1でコード化されるPASSの△LU機能を
使用ぼず、ADD+OとしてΔLLJにおけるΔ入力ま
たはB入力のいずれかのPASSをコード化することが
望ましくなる。
トランジスタくすべてO出力)は制御ROM15に不要
ひあるから、A L tJ操作をコード化する際にPA
SSの代わりにADD十〇を用いることによって、ずっ
と多くの圧縮が可能になる。1つの実施例では、△LU
2およびΔしU3の反転は可能な64回の中かられずか
24回だけALIJ1〜ΔL U 4制御カラム15b
を使用することになり、づ”なりら列はトランジスタ1
5dを持ち、したがって特定な命令の組で2/Iの場合
にあって、40の場合にはない。
ここに説明されたような制御ROM圧縮を使用すると、
制t11ROMは利用スペースの点で極めて安価となる
ので、マイクロプロセッサ・チップに用いられる全設計
方法は大幅に変更される。例えば、1つの特定な命令が
実行の1つの状態で特殊な制御信号11を必要とするも
のと想定する。いままでは、これは、使用の時点を示す
汎用制御ROM出力信号と組み合わされる命令デコード
信号を必要とづる。圧縮されたんII 611 ROM
の特徴によると、唯一の列15bが加えられ、また列は
短いのでこれは一段と簡潔になり、したがってランダム
論理が使用されるとコスト低下につながる。
したがって、−様な特殊用信号はコストを最小にする圧
縮特徴によって、ランダム論理ではなく制御ROMで最
も良く作られる。制御ROMに対するほとんどすべての
υJtll信号を追放するこの能力(よ、マイクロプロ
セッサ1の設計を簡潔化すると同時に微小デツプ面積を
与える(チップのコスト引下げにつながる)。
圧縮ROMを使用する追加利点の1つは、制御信号11
がいった/υ作られてチップ上のある場所から他の場所
へ導線で送られるのではなく、第4図のブツブの2つの
異なる区It内にあることを要求される場合、ライン1
5bを重複ざU゛ることができるような小ざなスペース
を用いて組み合わされるカラム・ライン15bによって
制御信号11が作られることである。すなわら、制御信
号がビットOおよびビット15にのみ要求される場合、
ストリップを始終横切るライン11の代わりに、カラム
15bによって両側にそれを作ることが一段とスペース
上イi効である。すなわち、制御信号11がストリップ
の下部におりる命令レジスタI Rの区域で要求されか
つまたストリップの上部にU3 ’=)るスワップ母U
Sの区域で要求される場合、制御信6ば1つの区域から
他の区域へ@届うインまたは4巾ラインを通るのではな
く、両方の場所でυ制御ROM15に作られる。
レジスタからレジスタへのハ(′I算操作irmなブロ
セツリ“にお(〕る最ら共通な命令の1つは「加算」で
ある。ここに説明されるブロヒツサでは、加算命令は作
業スペースアドレス指定を用いる。2fi!1のオペラ
ンドは主記憶装置2のレジスタから母線4を介して得ら
れ、結果は記憶装置2のレジスタに記憶される。直接、
間接、自動バク分、指標付、即時または相対などを含む
いろいろなアドレス指定モードが使用される。本例は作
業スペース内にある1個のオペランドを直接アドレス指
定するレジスタと、作業スペース内にあるアドレスを持
つレジスタ内の他のオペランドを間接アドレス指定する
レジスタとを使用する。結果はオペランドについて直接
呼び出される同一レジスタ内に記憶される。この命令は
プログラミングの[]的で[ΔDr)” R,RJと呼
ばれる。
本例の加算命令の実行は、7つの「状態」時間すなわち
クロック・ザイクルの部分を使用する。
マイクロプロセッサ1に用いられるクロックのタイミン
グ順序は第2d図に示されており、4個の重複する半り
゛イクル・り[1ツクHI H2、H3および(−14
を含む。もちろん、クロックH4は問題の状態時間の後
の状態時間の部分を占める。また、状態時間は4個の1
/4サイクル・クロックQ1、Q2、Q 343 J:
びQ4を含む。NチA7ンネル技(4を用いてデバイス
が作られるので、りL]フッタ正方向である。標2(q
として、状m1時間は200nsであり、すなわち繰返
し率は5〜N−1zである。
デツプすなわら水晶のクロック人力Oの周波数は状態周
波数の4倍すなわち約20 M Hzである。
記憶装置2はマイクロプロセッサ1の状態時間内に呼び
出されるので、与えられた状態時間の02の間にアドレ
スが母線4に送り出されると、アドレス指定された場所
の内容は同じ状態時間の04またはH4の間にマイクロ
プロセッサ・チップ1の入力用母線4に現われる。本例
の加鈴命令は5つの記憶呼出し操作、ダなわら命令を取
り出り1つの操作、「出所」オペランドのアドレスを取
り出づ1つの操作、[出所1および「行先Jオペランド
用の2つの操作、ならびに「行先」場所で記憶装置2に
結果を記憶する1つの操作を要求する。
本例の加算操作用の命令は、前の命令が実行を終える前
に取り出される。この事前取出し機能は操作速度の面で
大ぎな利点をもたらづ。事前取出しく Pre−fet
ch )機能および操作の重複を説明するために、前の
操作も加算操作であったし、本例の命令に続く次の命令
も加算操作であると想定する。本例の加算操作によって
一部占められる7つの状態時間の中の、最初の2つは前
の命令によって占められ、最後の2つは次の命令実行で
占められる。Jなわち中火の3つだけがこの加0操作に
よって専ら使用される。
いま第7図で、AD+)”R,R命令を実行するだめの
タイミング表が示されている。検討すべき7つの状態時
間は81〜S7で表わされる。簡単に述べれば、81(
前の加算命令と重複)の際に問題の命令語は、PCレジ
スタ内にあるアドレスをfXJ!!I14に送り出して
記憶装置2(作業スペースに用いられるRAM部分で1
よ/2 (プログラムを含むROM部分)の中の場所を
呼び出すことによって事前に取り出され、次にこの場所
の内容は母線4に戻って受信されかつ命令レジスタIR
にロードされる。$2の間、前の操作の結果は記憶アド
レス・レジスタM△にある記憶装置2の場所に書き込ま
れ、MAレジスタの内容は前の加点操負の結果を伴って
母線4に送り出される。やがて、S2の間に、MPレジ
スタの内容はSlの間に事前取出しされた命令語から得
られる数までALUloで加nされる。この数は出所レ
ジスタ数の2イ8、すなわら2Sである。そこで、出所
レジスタのアドレスはS2の間に計口されて、MAレジ
スタに記憶され、次に83の間にこのアドレスtまは線
4に送り出されて、作業スペースの選択されたレジスタ
に含まれる出所アドレスを呼び出lノ、この出所アドレ
スは記憶装置2から読み出されてマイクロブロセツ)す
1のMAおよびにレジスタに5己憶されるように母線4
に戻る。状態t+、NI間S4の間、出所オペランドの
アドレスはにレジスタから母線4に送り出され、記憶装
置2にあるこのアドレスの内容は、母線4を介してにレ
ジスタに返送される。
またS/Iの間、先行(destination ) 
7ドt/、7゜は命令9:Rの「I〕」フィールドの2
倍にWPレジメタの内容を加えてその結果をMAレジス
タに記憶づることによって、ALtJloで計算される
。次に85の間、この計算されたDアドレス(作業スペ
ース内にあり、したがって「直接」)はMAレジスタか
ら母線4に送り出される一方、Kレジスタ内のオペラン
ドはレジスタに移される。そのとき、記憶装置2にある
アドレス指定されたレジスタの内容はなおもS5の間に
、fnFi14を介してチップ1のにレジスタに記憶さ
れるように返送される。すると加算操作を実行1゛る用
意が整い、SオペランドはTレジスタ内に、0オペラン
ドはにレジスタ内にある。すなわら、状態S6の間に、
加算操作はKおよびTの内容を加算しかつCレジスタ内
にその結果を入れることによって実行される。
しかし、そのうちS6の際に次の操作の命令は、プログ
ラム・カウンタPC内にあるアドレス(増分済)を母線
4に送り出すとともにチップ1の命令レジスタIRにお
いて87の間にロードされるように母線4を介して記憶
装置2にあるこのアドレスの内容を再び受けることによ
って、事前に取り出される。また、状態時間S7の間に
、本例の加紳操作の結果は、まずMΔレジスタ内のアド
レス(S4の間に計律されたDずなわら行先アドレス)
を、次にCレジスタの内容を母線4に送り出づことによ
って記憶装置2に書き込まれ、ADD”R,R命令の実
行を完成さUる。次に87の間、次の命令の出所アドレ
スはS6で呼び出された命令語のSフィールドの2倍に
作業スペース・ポインタWPの内容を加ΩするΔLUI
Oでfft t’Jされるが、そのような別の加算操作
は既にその実行シーケンスに入る2つの状態時間である
したがって、第7図の状態S6と87は状態$1と82
に相当する。
rADD  R“、R」用の命令語は第7a図に示され
ている。これは17図の状態時間S1の際に読まれる1
6ビツト語であり、すなわち本例ではPCレジスタによ
ってアドレス指定された場所の内容である。最初の3ビ
ツト・フィールド010は「加σ」フィールドと言われ
る。rBJフィールド、すなわちビット3は、これがバ
イト操作であるか語操作であるかを定める。本例ではそ
れは詔操作である。B=1ならび、オペランドはバイト
でありオペランド・アドレスはバイ1−・アドレスであ
る。B=Oであると、オペランドは語である。T’ D
 J3よびTSフィールド、すなわちビット4,5なら
びにビット10.11は当該オペランドのアドレス指定
モードを決定する。本例では、TStよOOであるので
、Sフィールド(ビット12〜15)は出所オペランド
を持つレジスタ番号を作業スペース内に含む。TDは間
接作業スペース・レジスタのアドレス指定モードを表す
01であるので、Dフィールド(ビット6〜9)番は行
先オペランドのアドレスを内に持つレジスタ番号をV「
業スペース内に含む。
ADD” R,It命令の実行例をもつと訂しく考える
と、第7図はいろいろな、レジスタJ5よび」線の内容
を11.5間の関数として示Jとともに、他の特徴をも
示づことが認められると思う。各レジスタJ3 にびf
Ti線の操作は、これらの操作を作るライン11に作ら
れる制御2II信号と共に、各マイクロコードの状態時
間のあいだ調査される。
第7図の状態車間S1において、l1IPCTp(第5
C図参照)用の制御ライン11は1(1の間ハイであり
、トランジスタP (C+をターン・オンしてl) C
レジスタの内容をP母線に置く。次にDEN指令はHl
でハイになるので、P母線)ま出力バッファ12に[1
−ドされ、したがって母線4にロードされる。プログラ
ム・カーンンタPCはライン11のH3PCING指令
によって時間1(3のあいだに増分され、第5C図のト
ランジスタPCjおにびPCmをターン・オンし、その
結果S6で後で、次の命令が順に呼び出される。ライン
5q)1つに1」3で[)EN指令を作る制御ライン1
1に(」2でDEN信号が生じ、記+?、装置2に04
で始まる母線4にデータを置かUる。ここで取り出され
る命令語は04で始まるtu線4で妥当であり、かつブ
ランクされるときを除き1」3ごとに作られる1ill
 611信号1−13  K F S Sによってライ
ンSKを介してにレジスタにロードさ゛れる。この制御
211イn@は第5 b図の16個の1〜ランジスタに
1をターン・オンする。この状態時間S1の間、前の命
令のための加算操作はS6について説明されるのと同じ
ように生じ、この結果をE tU線に向ける。
ライン11の1つに現れる制御信号 SAMP Iによって、割込みライン8は、割込みが存
在する場合に文脈スイッチが生じるようにサンプルされ
る。
いま第7図の状態時間S2から、Kレジスタにある命令
はQIKTDI指令がハイになりかつ、16個のトラン
ジスタK(Jをターン・オンするどきQlでDI母線に
接続される。この指令は、制御ライン11によってブラ
ンクされる場合のはかQlごとに生じる。Hlにおりる
指令2 S T Aによって、DII線に現れる命令語
のSフィールドは左送りされて、第5e図に見られると
おり4個のトランジスタCaによってA母線のビット1
4を介してビット11に接続される。作業スペース・ポ
インタ・レジスタWPの内容は、第5C図のトランジス
タWPfをターン・オンづるライン11に現れる信号に
よって、ト11でBfIJ線に転送される。1なわち、
B母線にWP1Δ母線に28が現れると、A L t)
10が(+−12およびト13で)作動するとぎ、和(
WP+28)である出力が]]3の間接読点10Cで作
られる。ライン11に現れる指令ALTEは、趙延され
た1つの状!l!旧間を表す遅延11時間で生じ、した
がって次のサイクルの111でALLJ出力は1−ラン
ジスタ10aによりE母線に接続される。状態$7につ
いて以下に説明するとおり、前の操作結果はH4でE母
線からロードされたDレジスタから記憶装置2に書き込
まれ、A L Ll 10はS2、Hl (Slの場合
のHolに同じ)でE母線からロードされる。
第7図の状態時I?11S3の間、出所アドレスを含む
レジスタのアドレスはALtJ操作によって作られる。
この操作において、作業スペース・ポインタ・レジスタ
WPの内容は、トランジスタWPfをターン・オンする
H I W P T B指令と、命令レジスタrRのビ
ット6〜ビツト9を第5g図の1−ランジスタIRe’
を介してDI母線のピッ1−11〜ピッl−14に加え
るHlでのlR2O指令と、によって8母線に加えられ
る。lR2O指令は実際に、2進の2を掛けるために1
ビツトだけ命令語のDフィールドを左送りしく第7a図
参照)、次にそれをDI母線を介して加粋器のへ入力に
加える。ALU1〜A I−U 4指令のどれも存在し
な番ノれば、ALLIIOは省略にする加粋条件にあり
、入力10cはトランジスタ10a(第5d図)のゲー
トに至るライン11に現れるH D I A L T 
E指令によって次の状態時間のHlでalaに加えられ
る。
オン・チップ記憶装置 補助オン・チップ記憶装置25には、「請通(nati
ve) J命令が記憶され、これが別の命令で命令レジ
スタに移送されるようにされているから、本発明では、
第り表にない新しい機能を加えるとともにソフトウェア
の特定の中心部の性能を高め、それによって第1図の装
置の全能力を向上させる方法を与える。記憶(メモリ)
スペース25は第2b図の使用者ニーデースペースから
離れており、マイクロプロセッサ1の中に含まれている
。このスペース25に置かれるアンセンブリF5 ER
プログラム・セグメントは、記憶呼出しのための持ち状
態を必要としないのでプロセッサ1の全作動能力により
利益を得る。オン・チップ記憶装置25で実行している
間、酋通のプログラムでは1qられないある制御能力が
利用できる。補助オン・チップ記憶装置25により、プ
ログラマ−にとって全く明らかな方法で新しい命令をエ
ミュレートしく!する。
記憶装置25は、ROM25Aにある512個(7)1
6ビツt”maとRAM25Bにある1 6語と’b’
ら成る。ROMはアドレス(16進)0800−OBF
Eにあり、RAMはアドレスoooo−。
01Eにあり、記憶装置25において実行中に作業スペ
ース記憶装置として役立つ。
プロセッサ1がMrDオIコード(違法オブ]−ドすな
わら状態ピッ1〜11が1にセットされる間に実行され
るX0P)を受けるときは必ず、関連プロセッサがMI
Dオブコードに応答するW−備を整えているかどうかを
決定するチェックが行われる。もし準備が整っていなI
フれば、プログラムυ制御信号は記憶装u25に転送さ
れる。
記憶装置25は、ROM25Aの最初の10語を占める
入口点の表を介して入力される。表の各入口は、特定の
MIDオブコードまたはオアコード群用のエミュレーシ
ョン径路指定のROM25ΔにあるII;1始アドレス
を合む。違法tH−語オブコードは8群に分けられ、各
群の入口アドレスは第1表に示されるとJ3っである。
違法(illeaal )2語オブコードは第1表に示
されるとおり第9群として、またxOPは第10群とし
て処理される。
違法オフコードずなわらXOPを受けると、命令の実行
は当該オフコードに相当する入口点表のROM25Aア
ドレスに移る。
文脈スイッチは入口点アドレスが表から読まれた後で生
じる。作業スペース・ポインタは0000にセットされ
、プログラム・カウンタは入口点アドレスにセットされ
る。古いwp、pcおよびS王はそれぞれR13、R1
4ならびにR15に相当する作業スペース内の場所でR
AM25Bに入れられる。R15でセーブされたPCの
値は、MID、4ブコードに続く語を指す。もしM I
 +)オブコードが多年語命令ならば、セーブされたP
Cは命令の第1 iif!に続く場所を指す。
記憶装2725を出るために、文脈スイッチは、RT 
W P fii’l令(16進のオブコード0380)
を実行することによって要請される。割込みは次の命令
の実行前にチェックされる。割込み(マスク式または非
マスク式)が次の命令の実行前にチェックされてはなら
ない場合には、記憶装置25から出ることはオフコード
0381、すなわちRTWP命令の特殊な形を用いて要
請される。いずれの場合も、WP、PCおよびSTレジ
スタはRAM25BからのR13、R14ならびにR1
5と共に更新される。記憶装置25によって支持されな
いIVIID;4ブコードの検出と同時にメモリーへ入
力される場合は、レベル2のトラップが行われて不定の
オブコードを実行する試みが行われていることを示さな
ければならない。オブコード0382はこれらの条伯の
下で記憶装置25から出るために与えられる。このオフ
コード°が記憶装置25で実行されると、RTWPはレ
ベル2のトラップを伴って生じる。オブコード0380
.0381#J:び0382 (16進)は記憶装ff
125を出る唯一の妥当な手段を与える。
記憶装置25におけるMIDオブコードのエミュレーシ
ョンの間、エミュレーション・ルーチンはエミュレート
されたオブコードの結采にしたがってR15で節約され
た状態レジスタを変えることができる。記憶装置25か
らの復帰と同時に、更新された状態は主命令の流れに送
られる。状態が更新されない場合は、それは元の形に復
帰される。
記憶装置25での実行中、いくつかのブロヒツサ機能は
制御211機能を増加凸゛せるために変形される。
これらは割込み、外部記憶呼出し、エミュレ−ト・アド
レス命令E V A I)、d3よび条f’iイj飛越
しくジャンプ)などであり、これから説明する。
リセットを除くすべての割込みは、記v1装置25から
の実行中抑止される。しかし、未決(pendina 
)の割込みは下記の条件付飛越しを用いて検出すること
ができる。
記憶装置25からの実行中、外部(オフ・チップ)記憶
装置2のデータは直接、間接自動増分(インクリメント
)モードおよび指標付(インデックス)アドレス指定モ
ードを用いて呼び出される。RAM25Bにある作業ス
ペース・レジスタR2、R6、R7、R8、R9、RI
O1R13およびR14は外部呼出し中に基準レジスタ
として使用される。これらのレジスタの1つを用いる外
部呼出しは特定な形の記憶サイクルを示す母線状態コー
ドを伴い、MEM−は活性ロー(ローアクティブ)であ
る。各レジスタの使用に相当する母線状態コードは第1
表に示されている。外部呼出しは行われている呼出しの
形に適した母線状態コードを伴って使用される基準(b
ase)レジスタを利用しなければならない。プログラ
マ−はそれによって第1表からレジスタを選択する。
2つの例は、外部呼出し能力の使用を表わす。
まず、RA M 25 Bの1く13は使用者の作業ス
ペース・ポインタを含む。RAM25Bの作業スベ−ス
にあるレジスタR1に、記憶装置25に入いる直前に実
行している主命令の流れから記憶装置2の作業スペース
(すなわち使用者の作業スペース)にあるレジスタR4
の内容を読み取るために、命令 MOVC8(R13)、R1 が記憶装置25から実行される。この命令は、R13に
おけるアドレスの場所の内容に2X4=8を加えたもの
をR1に移すことを命じる。AW母線の状態コードは、
この操作中(M E M−= 01BS’r=110)
に出力される。次に、即値(immediate )デ
ータまたは記号アドレス(symbolic addr
ess)  (使用者のプログラムにあるMIDオプオ
フドに続く)をRAM25BのR4に読み取るために、
命令 MOV” R14+、R1 は記憶装置25にある間実行される。これによってRA
M25BのR14にある使用者のPCは2カウントだけ
増分され、l0PfU線の状態コードが出力する(ME
M−=O188−T=010>。
間接、間接自動増分、または指標付きアドレス指定用の
ItF¥レジスタとしてレジスタRO,R1,1で3、
R4、R5、R11およびR15を使用1)ると、記憶
装置25の内部呼出しが生じる。内部呼出しの間、プロ
セッサ1からのMEM−1WE=およびDEN−の各信
号出力は不活性のハイに保たれる。記憶装置25からの
実行中、NOP母線の状態コードは、前述のとおり外部
呼出しが進められている時を除き、各機械サイクルの間
出力する。
EVAD (エミュレ−ト、アドレス)命令は、MID
オブコード用の有効な出所および行先アドレスを具合よ
く計算できるように、記憶装置25からの実行中に与え
られる。EVADは、Mlr)オブコードが4ビツトの
オブコードと、6ビツトの出所フィールドと、6ビツト
の行先フィールドとを含むと仮定する。アドレス計算は
、RAM25BのR13でセーブされた使用者の原WP
に基づく、使用者の作業スペースにあるレジスタの内容
がアドレス計痒の一部として取り出される場合、WS」
線の状態コードは外部呼出しが行われている間プロセッ
サ1によって出力される。セーブされたPC(RAM2
5BのR14にある)は、記号アドレスまたは指標付ア
ドレスの指定が使用される場合、適当に増分される。R
50を除くRAM25B内の任意な作業スペース・レジ
スタの内容は、EVADを用いて評価することができる
。EVADが実行されると、計算された有効出所アドレ
スはRAM25BのR8に入れられ、計・0された行先
アドレスはR7に入れられる。出所または行先フィール
ドが自動増分モードを規定する場合は、使用者のレジス
タのアドレスはそれぞれR9またはR10に入れられる
。状態ビットOおよび2に及ばず影響を含むEVAD命
令のR要は第2C−3図に示されている。
EVAD命令については、MIDオブコードの出所フィ
ールドのみが評価される場合行先フィールドは払われて
、不要の外部呼出しまたは使用者のID Cの8図しな
い変形を防止しなければならない。例えば、MIDオブ
コードがRAM25BのR5にある場合、命令順序 ANDI  R5,003F EVAD  R5 は有効な出所アドレスを計算するために記憶装置25に
ある間実行される。すべてOである行先フィールドは、
レジスタ直接アドレス指定モードと解釈される(そして
ST2がクリアされる)。
TB(テスト・ピッl−)、5BO(ピッ]〜を1にセ
ット)およびSBZ (ピッ(・を0にヒラ1−)命令
は、記憶装置24からの実行中利用できない。
これらの操作に代わって同じオブコードを用いるのは、
未決の割込みを検出するのに用いられる条件付飛越命令
である。これらの命令によって、割込みは記憶装置25
から実行されるルーチンの割込み可能点でテストされる
。ミニコンピユータ用のブロック移動命令のような長い
実行時間を要ηる命令は、それらを割込み可能にしかつ
割込みυ−ビスを終ってから元に戻すようにエミュレー
トされる。
割込みザービス・ルーチン内のM I Dオプコードの
使用について1つの制限がある。NM!すなわちレベル
1の割込み用の割込みルーチン、または完全なシステム
の再初期設定を生じないリセット・ルーチンで出会うM
IDオプオンドは、オブコード0382、すなわちレベ
ル2のトラップを生じるRTWPの特殊な形によって、
記憶装置25からの出しくexit)ではならない。そ
の理由は、レベル2のルーチンがNMrにより、レベル
−1割込みにより、またはリセットにより割り込まれ、
おそらく竹に設定された戻りリンケージを破壊すること
である。一般に、この制限はレベル2よりも侵先度の高
い割込みのサービス−ルーチンにあるMIDオプオンド
が拡張された命令セット・プロセッサによって認識され
たり、記憶装置25のエミュレーション・ルーチンによ
って定められなければならないことを意味するものと解
釈される。
ROM25Aの最後の16詔は、ROM25AJ5よび
RAM25Bの動作を確認するのに用いられる自己テス
ト・ソフトウェア用に取っておかれる。ミニコンピユー
タのマイクロ診所命令実行用のオブコードと定着される
M T I)オンコード0O2Dは、自己テスト・ルー
チンを呼出す使用者ブ1」グラムにおいて実行される。
このオブコードに出会うと、プロセッサ1は第1表に示
される方法で、入口点の表位置0804に含まれるアド
レスによって指示されるROM25A位置(テスト・ル
ーチンの開始アドレス)に制御を移す。
オン・チップ記憶装置のエミュレーションオン・デツプ
記憶装置25を備えるプロセッサ1のエミュレーション
を許すために、プロセッサはオン・デツプ記憶装置を、
あたかもそれがROM記憶装′?125 Aであるかの
ように呼び出すように作られる。これはシステム開発ま
たはプロトタイプ作成の目的で重要である。ROM25
Δ用に内かれた「ソフトウェア」すなわちファームウェ
アは特定カスタム用の容積内にチップ1を作るためにマ
スクが施される前に検査されかつ手直しされなければな
らない。この目的で制御回路24はRESET−および
XlPP−をローにし、またそれらを同時に解除する形
の特殊表示に応答する。これは外部ビンで両者を共に接
続する事によって達成される。こうしてこのエミュレー
タ・モードに入ると、第1a図を参照してROM25へ
はもはや使用されずアドレス088−OBFEは外部記
憶装置25A′を呼び出す(だが記憶割当て図2bの中
にはない)。オン・チップRAM25BはなJ3も活性
であり使用されるのぐアドレス0000−001 Eは
記憶装置25によって通常の方法で応答される。このモ
ードではROM25Aに対する呼出しは代わって記憶装
置25A′のオフ・チップに向けられ、この記憶装置2
5A ’ はROM、EPROMまたGtRAMのいf
hでしよい。これらの呼出しはうイン5の活性WE−お
よびDEN−信丹ならびにBSTライン6のNOPまた
は001]−ドを伴う。このモードで作動しているとぎ
記憶装r/ 2はBSTライン6を受【プるように接続
されるので、記憶装置25の呼出しと第2b図の使用者
記憶装置2のアドレス・スペースの呼出しとを区別づる
バス状態コードがNOPであるとき記憶装置2は応答し
ない。
このエミュレータ・モードは、システム開発のほかに他
の利点を備えている。ROM25Aにある使用不能コー
ドで作られた部品、すなわち非機能(non−func
tional) ROM 25 Aは捨てる必要はなく
、代わってエミュレータ・デバイスとして用いられる。
また、小容積のカスタム応用はプロセッサ1をエミュレ
ータ・モードでのみ使用することができ、この場合は記
憶装置25Aに対する呼出しはすべてオフ・チップ記憶
装ff25Aに向けられる。このような認識で生産品が
上るにつれて、ファームウェアはシステム部品の数を減
少するためにオン・チップに移動される。これは、オン
・ブツブROM25A用の完全カスタム内部ファームウ
ェアの初期コストが正当化されない場合の応用に有利で
ある。
オン・チップ記憶装置用の拡張(A)・デツプ)吐出し 上述のとおり、正常モードにおける記憶装置25に対す
るづべての呼出しは、内部サイクルが進行中であること
を示すために、ライン6のNOP母線状態コードを伴う
。記憶装置ff125に対するアドレスは実際にはバッ
ファ12およびは線4を介して出力され、また記憶装置
25からのデータは同様に出力される。これが手直しお
よび試験を容易にするだけにすぎないのは、f、Q m
回路24からのライン5に現れるWE−およびDEN−
出力が不活性であるので記憶装置2が応答しないからで
ある。有効な別法は、第2b図の記憶割嘉て図とは別に
、記憶装置25を拡張する追加のオフ・デツプ補助記憶
装置に対する呼出しを与えることである。
この目的で、定められたアドレス0800〜08FEお
よび0000−001 Eの中にない記憶装置25のス
ペースに対する呼出しは、特殊な方法で応答される。M
IDモードにあり、すなわち上述のとおり記憶装置25
を呼出しているとき、記憶装置25の範囲外のアドレス
により制御回路24はライン5に現れるNE−およびD
EN−出力を活性化し、NOP (およびMEM−ハイ
)は依然としてBSTライン6に現れる。これが生じる
と、記憶装置2′は第1a図に示されるとおり呼び出さ
れる。システム記憶装置2はB S Tラインに接続さ
れるのでそれはNOPが含まれないとき応答しない。
この作動モードは、システムの融通性を増す利点を持つ
。オフ・チップまたはAン・チップの記憶装置25は使
用者の記憶装置のスペースから完全に離れているので、
使用者(プログラマ−)のアドレス・スペースの単純性
をそこなわずに、完全なシステム機能(追加された命令
セット)が実行される。別にソフトウェア内に作られた
速度クリディカル#M能は、効率を増すために拡張記憶
装置2′で実行される。オフ・チップ記憶装置2′の一
部またはすべては、待ち状態が不要であるのでROMが
使用されない場合よりも速く実行する高速RAMである
ことができる。RA Mは作業記憶装置として使用され
たり、更新されたエミコレーション・ソフトウェアを持
つ指令によってロードされる。もちろん、記憶装置25
用の拡張オフ・チップ記憶装置2′は、オン・チップ記
憶装置のみの場合よりも多くの機能用余地を与えるので
、−段と複雑なシステムがブロヒッサ1を利用すること
ができる。実際に、取付式プ0セッザ(attache
d−processor)形の機能は拡張記憶装d2′
を用いて実行され、記憶装置構成部品J′3よび標準ア
センブリ言語で四かれたソフトウェア以外は何も必要な
い。オン・チップ記憶装「ツ25を持つ場合と同様、記
憶装置25のオフ・チップ拡張2′は、使用者−プログ
ラマ−にとって全く明白であり(すべてのソフトウェア
はシステム設計において作られる)、かつ使用者の記憶
装置2がら完全に離れたアドレス・スペースにある。
アドレス指定モーζ 第2C図の命令は、ランダム記憶データ(例えG、にプ
ログラム・パラメータおよびフラグ)または内式付き(
formatted )記憶データ(文字列、データ・
リスj−など)をアドレス指定7るために利用できるい
ろいろなモードと共に使用される。これらのアドレス指
定モードは下記のとおりである:a) 作業スペース・
レジスタの7ドレス指定b)作業スペース・レジスタの
間接アドレス指定C)作業スペース・レジスタの間接自
動増分アドレス指定 d)記号(直接)アドレス指定 C)指標付きアドレス指定 r)[11値アドレス指定 g)プログラム・カウンタの相対アドレス指定h)CR
(、J相対アドレス指定下 記は各アドレス指定モード用の実効アドレスの誘導を説
明する。それぞれの命令に対するアドレス指定モードの
適用性は、命令によって実行される操作の説明と共に第
2C図に示されている。アドレス指定モー1名に続く記
M(R,”R4N+、@LABELまたは@TABI−
E (R))は、レジスタR用のアドレス指定モードを
選択Jるのに用いられる一般形である。
作業スペース・レジスタのアドレス指定、[〈作業スペ
ース・レジスタ1ではオペランドを含むので、作業スペ
ース・ポインタWPと2Rとの和はオペランドのアドレ
スを与える。作業スペース・レジスタのアドレス指定モ
ードは、命令語の2ビツトTフイールド(TSまたはT
O>をOOに等しくヒツトすることにJ:って規定され
る。
作業スペース・レジスタの間接アドレス指定、*R 作業スペース・レジスタRはオペランドのアドレスを含
むので、作業スペース・ポインタW Pと2Rとの和は
オペランドのアドレスを含むレジスタRのアドレスを与
える。作業スペース・レジスタの間接アドレス指定モー
ドは、命令訂1の2ピッ]〜Tフィールド(丁Sまたは
TD)を01に等しくセットすることによって規定され
る。
作業スペース・レジスタの間接自動増分アドレス指定、
HR+ 作業スペース・レジスタRはWR間接アドレス指定のよ
うにオペランドのアドレスを含むが、オペランドのアド
レスを取得してから、作業スペース・レジスタRの内容
が増分される。作業スペース・レジスタの間接自動増分
アドレス指定モードは、命令語の2ビット丁フィールド
(TSまたはTO)を11に等しくセットすることによ
って規定される。
記号(直接)アドレス指定、@L八へ E Lこのモー
ドでは、命令に続く語【よオペランドのアドレスを含む
。プログラム・カウンタPCは命令のアドレスを含み、
N〕C)+2はオペランドのアドレスである。記号アド
レス・モードtよ命令の2ビット丁フィールド(T’ 
SまたはTD)を10に等しくセットするとともに、対
応するSまたはDフィールドをOに等しくセットするこ
とによって規定される。
指標付きアドレス指定、@TA81E(R)指標付きア
ドレス指定では、命令に続く語は基準アドレスを含み、
作業スペース・レジスタRは指標値を含み、基準アドレ
スと指標値との和はオペランドの実効アドレスを生じる
。指標付きアドレス指定モードは命令語の2ビツトTフ
イールド(TSまたはTD)を10に等しくセットする
とともに、対応するSまたはDフィールドを0に等しく
ないようにセットすることによつC規定される。Sまた
はDフィールドの値は指標値を含むレジスタである。
即値アドレス指定 この場合、命令語に続く語(すなわちPCと2との和)
はオペランドを含む。l!II ll(Iアドレス命令
のみがこのモードを使用するので、この場合1°フイー
ルドは無関係である。
プログラム・カウンタの相対アドレス指定このモードで
は、命令の右バイト(ピッ1へ8〜15)にある1ビッ
ト符号付ぎ変位 (displacement)は2を掛りられて、プロ
グラム・カウンタPCの更新された内容に加えられる。
結果はPCの中に入れられる。
マクロ命令検出(MID)t”ラップ マクロ命令オブコードの取得および企てられた実行は、
次の命令の実行前にM I D トラップを生ぜしめる
。トラップを生ぎしめるマクロ命令オブコードは第1表
に列記されている。MIDトラップは基本的に2つの応
用を持っている。MIDオブコードは違法オブコードと
考えられ4、またMIDトラップはそのときこの性質の
誤りを検出するのに用いられる。M I D l−ラッ
プの第2のかつ主たる応用は、プロセッサ用の追加命令
の実行をエミュレートするためにオン・チップ記憶装置
25を用いたり、MIDトラップ・サービス・ルーチン
のソフト1クエアを用いて、これらの命令の定義を与え
ることである。MIDオプオンドは、これらの「マクロ
」命令用のオブコードとして用いられる。マクロ命令の
この実行の利点は、マクロ命令が記憶装置25て、他の
ブロセツ→ノーのマイク[1コードで、またはサービス
・ルーチンによるソフトウェアで実行することができ、
そのときソフトウェアはこれらのプロセッサの間で直接
送られることである。
命令エミュレーションが実行されるとき、1ノブルーチ
ンはエミュレートされた命令の結果にしたがって作業ス
ペース・レジスタR15にあるセーブされた状態レジス
タSTを変えることができる。
更新された状態は次に主命令の流れに送られる。
ざ6なりれば、未変更状態が戻って再ストアされる。
本発明は特定の実施例について説明されたが、この説明
は制限を意味するものではない。開示された実施例およ
び本発明の他の実施例のいろいろな変形は、発明の説明
を読むことによって当業者にとって明らかになると思う
。したがって、特許請求の範囲は発明の真の範囲内にあ
るすべての変形または実施例を包含するようにされてい
る。
A L A T CH アドレス・ラッチ。活性(bイ)のとき、ALΔTCH
はアドレス情報が母線にあることを示す。不活性(ロー
)のとき、△しΔTCHは記憶データまたはCRUデー
タのいずれかが母線4にあること、または母1i14が
BLISSTAT(JSビットおよびMEM−の値次第
で、別の状態にあることを示す。〈ΔL A T CH
= 0はこの条件のとき安定するMEM−およびB S
 T1〜BST3をデコードするためのストローブであ
る。) 八[ΔT CHは各母線サイクルの初めにローからハイ
へ遷移しそのあとハイからローへ遷移をする。
ト10 L D状態の際、ΔLΔT CHは、READ
YおよびWΔ1丁GEN信号が持ら状態を示すときロー
に保たれる。
MEM− 記憶υイクル。ローのとき、MEM−は母線4が記憶サ
イクル内にあることを示し、ハイのとき、MEM−は母
線4がB5Tl−3により他の形のサイクルまたは状態
にあることを示す。MEM−は)(OL D Aが活性
のとき高インピーダンス状態となる。内部抵抗プル・ア
ップはハイ・レベル状態に保つ。
WE− 書込みイネーブル(反転CRLIクロック)。ローであ
るとき、WE−は記憶書込みデータが母線4に得られる
(MEM−=Oのとき)ことを示したり、CRUデータ
・アラ1−が母224のピッ1−15に得られる(CR
U母ね状態)ことを示す。
WE−は3状態信号であり、HOL OAが活性である
とぎ高インピーダンス状態をとる。内部抵抗プル・アッ
プはハイ・レベルを保つ。
EN− データ・ドライバ・イネーブル。活性〈ロー)のとき、
DEN−は読出しく記憶装置またばCRU)サイクルが
母1114に生じていること、および記憶装置2または
CRU7にあるような外部デバイスが母線4にデータを
出力する3状態ドライバを活性にりる(enable)
ことを示1゜DEN−は3状態信号であり、HOL D
Δが活性であるとき高インピーダンス状態をとる。内部
抵抗プル・アップはハイ・レベルを保つ。
READY レディ。活Jf1<ハイ)のとき、READYは記憶装
置2またはCRU 7が現母線サイクルを完成するレデ
ィ状態にあることを示す。非レディが示されると、持ち
状態(現母線サイクルを2クロック−サイクルだけ延長
することをいう)が入力される。各待ち状態の終りに、
READYは別の持ち状態が作られるべきか、または母
線サイクルが完成されるべきかを決めるために調査され
る。
WAITGEN 持ち状態発生。記憶サイクルまたはCRtJ母線サイク
ルにJ3けるR E A D Yの第1サンプル時間で
活性(bイ)のとき、WAITGENはREADYの論
理レベルにかかわらず第1待も状態を作る。この第1ザ
ンブル時間後、 WAITGENの論理レベルは無視されて、母線サイク
ルの延長または完成はREADYのみによって決定され
る。WA f TGENは1つの持ち状態を作る簡X1
1な手段を与えるためにハイを結合され、かつ大形マル
チボード装置のプロセッサ1にレディ/持らの指示を伝
えることに付随する問題を最小にすることができる。
RESFT− リセット。活性(ロー)のとき、RESFT−はプロセ
ット1が状態レジスタSTにあるすべての状態ピットを
0にセットするようにさせ、かつWE−1D B I 
N−およびMEM−を抑止する。
RE S E T−が解放されると、ブロセツナ1は記
憶装置2の中の場所ooooおよび0002からWPと
PCを取得するレベルOの割込みシーケンスを開始し、
ずべての状態レジスタ・ビットをOにセラ1〜して、実
行を開始する。RESET−は遊び(1dle)状態を
も終らせる。RESET−は最低1つのCL K OU
 Tサイクル中活性に保れなiノればならない。RES
ET−はシュミット・トリガ入力である。
0LD− ホールド。DMAすなわち直接記憶呼出し要求として用
いられる。活性(ロー)のとぎ、HOLD−は外部制御
器3が母線4の使用を希望することをプロセッサ1に示
す。ブロセツナ1はその現ffJ線υイクルを完成した
ときホールド信号に続くホールド状態を入力する。それ
から10セツザ1は母線4を高インピーダンス状態に置
き(MEM−1ALATCI−41BST1−3、DE
N−1およびWE−と共に)、B5Tl〜BST3に現
れるl−1OLDAエンコ・−ディングによって応答す
る。HOl−D−が取り除かれると、プロセッサ1は正
常の作動に戻る。
B5T1〜BST3 母線状態コード。MEM−と其にデコードされると、B
 S T 1〜BST3は現在進行中の母線サイクルま
たは状態の形にPjJする情報(例えば記憶装置、内部
△L(J、HOLr)△、割込み両足、命令取(!? 
、 if5よびマルチ・プロセッサ・インターロック)
を与える。A l−A T CI−1はこのデコードを
ストローブする適当なタイミングを与える(MEM−お
よびB5T1〜BST3&よへLA丁CHがローである
とき妥当である)。
B5T1〜3は)IOLDAが活性のとき高インピーダ
ンス状態をとる。内部抵抗プル・アップ【ユハイ・レベ
ル(1−1OL OA母線コード)を保つ。
lPP− 外部命令プロセッサ・プレゼント。プロセッサ1が違法
オブ=1−ド(すなわちX0P)を取り出づ゛とぎ、X
lPP−信号はMID母ね状態が終ってからサンプルさ
れる。XlPP−・が真であるならば、プロセッサ1は
レベル2の一、ll込みベクトル(XOP用のxOPベ
クトル)までトラップを実行する。それは新しいWPを
取り出して、古いWP、PCおよびSTを新しい作業ス
ペース(それぞれレジスタ13.14、および15)に
記憶覆る。この点で、プロセッサ1はホールド状態を入
力して、B5Tl〜3をエンコードしてHOL D A
を応答する。命令が終ってから、外部プロセッサ3はX
[PPを解放する(命令によって要求されたようなWP
lPC,J3よびSTをまず更新してから)。XlPP
−の解放は、トラップ・レジスタ13.14、おJ:び
15から更新されたwp、p、c、ならびにSTを取り
出しかつ正常な実行を継続することをプロセラIJ″1
に知らせる。(外部プロセッサ3がない場合は、プロセ
ッサ1は1〜ラツプを完成して、ソフトウェアの命令を
実行する。) NTP− υJ込み保留。TNTP−は、マスクされない割込みす
なわち非マスク式割込み(N、MI−)が検出されると
き必ず真である。この信号は3状態ではなく、1組の命
令を実行する外部命令ブ[1t?ツサ3を割り込むのに
使用される。
INTREQ− ?、11込み要求。活性(ロー)であるとき、INTR
EQ−外部割込みが要求されていることを示寸。INT
REQ−が活性である場合は、プ[11!ツ蚤す1tま
割込みコード入力ライン8(ICO〜IC3)のデータ
を内部割込みコード記憶レジスタ23にロードする。コ
ードは状態レジスタ8丁の割込みマスク・ビットと比較
される。優先瓜が、可能(enable)にされた割込
みレベルに等しいかまたはそれより高い場合(割込みコ
ードが状態レジスタのピッi・12からビット15まで
に等しいかそれより小である場合)、割込みシーケンス
が開始される。比較が割込不可を示すならば、プロセッ
サ1は要求を無視する。INTREQ−は活性に保たれ
るはずであり、プロセッサ(,1プログラムが要求の割
込みを受は入れるだi/の低い優先瓜をiiJ能にする
までライン8(r’CO−IC3)をサンプルし続ける
ICO〜IC3 ?111込みコード。ライン8に加えられる。■COは
、I N T’ RE Q−が活性であるとさ゛にサン
プルされる割込みコードのM S Bである。IC3は
LS[3である。IC0−IC3がL L L l−1
であるとき、最高の外部優先割込みが要求されて−3つ
、HHHI−1であるとき、最低の優先度の割込みが要
求されている。割込みレベルは第0表に示されている。
NMI− 非マスク割込み。活性(ロー)のとき、NMr−はトラ
ップ・ベクトル(WPおよびPC)を含む記憶アドレス
FFFCと共にプロセッサ1に非マスク割込みを実行さ
せる。NMIシーケンスは実行中の命令が完了してから
始まる。NMI−は遊び状態をも終らせる。時間RES
ET−が解放されている間にNMI−が活性である場合
は、NMI−トラップはRESET−機能が終ってから
生じる。NMI−は最低1つのクロ・ツク・Vイクルが
認められる間活性でなければならず、ハイからローへの
各;@移について−・度だけ、■められる。
イクロプロセッサ装置のブロック形電気接続図、第2a
図は第1図の装置に用いられる詔、バイトおよび16ビ
ツト・データ語のビット定義を示す図、第2b図は第1
図の主記憶装置2の記憶装置tマツプおよび「作業スペ
ース」と呼ばれる一般記憶区域における多数の隣接記憶
場所を示す図、第2C−1図から第2C−5図までは第
1図の装置においてマイクロプロセッサによって実行さ
れる命令のオフコードのマツプおよび一覧表の図、第2
d図は第1図の装置の電圧と時間との関係を示すタイミ
ング図、第20−1図から第20−4図つ本発明の特徴
を利用するCPUすなわち中央処理ユニットを含むMO
3/LS Iマイクロプロセッサ・チップのブロック形
の電気接続図、第3a図はプロセッサに含まれるALU
すなわち演算論理ユニットおよびそれと組み合わされる
レジスタ、制御器、データ通路ならびに関連論理回路の
ブロック図、第4図はデバイスのいろいろな部品の構造
レイアウトを示す第3図のマイクロプロセッサを含む半
導体チップの拡大平面図、第4a図はレジスタ・ストリ
ップを示す第4図のレイアウトの一部の拡大詳細図、第
5a図から第5g図までは第3図および第4図のマイク
ロプロセッサ内のの実施例による第6図の圧縮制御RO
M用のYデコードの詳細な電気接続図、第6b図は圧縮
の特徴を示す第6図の制御ROMの一部を拡大した間、
17図は加算操作のための第1図および′f、3図の装
置における条件を示すタイミング図、第7a図は第7図
の加算操作のための16ビツト命令語を表す図である。
符号の説明 1−マイクロプロセッサ;2−記憶装置;3−人出力デ
バイス: 7−CRU : 1O−ALU :15B−
バッファおよび論理回路:15X−υitltlROM
 : 15Y−制御ROM用のY選択回路;22−母線
状態コード発生回路:24−記憶制御回路: 25A−
ROM ; 25E3−RAM ; 25C−ROMお
よびRAMのXならびにYデコード回路:25E−RO
M、15よびRAMの人出ツノ制御回路。

Claims (3)

    【特許請求の範囲】
  1. (1)単一半導体上のマイクロプロセッサ・デバイスを
    含み、 (a)上記デバイスの外にあり、データ及び第1と第2
    のタイプのプログラム命令を含む情報を有する記憶装置
    、 (b)上記デバイスの外にあり、情報を送受するための
    入出力回路、 より構成され、かつ (c)上記マイクロプロセッサ・デバイスは(i)演算
    論理ユニット (ii)複数の情報レジスタ (iii)上記記憶装置から プログラム命令を、実行のために、受けとる命令レジス
    タ (iv)上記命令レジスタに接続されていて、上記第1
    のタイプのプログラム命令に応答し て、上記演算論理ユニットと上記情報レジ スタの作動を決めるための複数の制御信号 を発生し、かつ上記第2のタイプのプログ ラム命令に応答して、補助制御信号を発生 する制御回路 を含むマイクロプロセッサであり、更に、 (d)補助記憶装置であり、この補助記憶装置は、上記
    補助制御信号に応答してこの補助記憶装置に記憶されて
    いる上記第1のタイプのプログラム命令シーケンスを、
    作動のために、上記命令レジスタへ移送するようにされ
    ている上記補助記憶装置、 より構成されることを特徴とする マイクロプロセッサ装置。
  2. (2)上記補助記憶装置が、上記マイクロプロセッサ・
    デバイスの一部である特許請求の範囲第1項記載のマイ
    クロプロセッサ装置。
  3. (3)上記補助記憶装置がリード・オンリ・メモリとラ
    ンダム・アクセス・メモリを有する特許請求の範囲第1
    項記載のマイクロプロセッサ装置。
JP62121474A 1980-11-24 1987-05-20 補助記憶装置を有するマイクロプロセッサ装置 Pending JPS6379134A (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US210106 1980-11-24
US06/209,915 US4402043A (en) 1980-11-24 1980-11-24 Microprocessor with compressed control ROM
US210109 1980-11-24
US209915 1980-11-24

Publications (1)

Publication Number Publication Date
JPS6379134A true JPS6379134A (ja) 1988-04-09

Family

ID=22780851

Family Applications (3)

Application Number Title Priority Date Filing Date
JP56188261A Granted JPS57155657A (en) 1980-11-24 1981-11-24 Microprocessor and associated devices
JP62121475A Pending JPS63100538A (ja) 1980-11-24 1987-05-20 複数の制御信号を発生するための論理アレイ
JP62121474A Pending JPS6379134A (ja) 1980-11-24 1987-05-20 補助記憶装置を有するマイクロプロセッサ装置

Family Applications Before (2)

Application Number Title Priority Date Filing Date
JP56188261A Granted JPS57155657A (en) 1980-11-24 1981-11-24 Microprocessor and associated devices
JP62121475A Pending JPS63100538A (ja) 1980-11-24 1987-05-20 複数の制御信号を発生するための論理アレイ

Country Status (2)

Country Link
US (1) US4402043A (ja)
JP (3) JPS57155657A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6343357B1 (en) 1991-06-24 2002-01-29 Hitachi, Ltd. Microcomputer and dividing circuit

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4577282A (en) * 1982-02-22 1986-03-18 Texas Instruments Incorporated Microcomputer system for digital signal processing
US5854907A (en) * 1982-02-22 1998-12-29 Texas Instruments Incorporated Microcomputer for digital signal processing having on-chip memory and external memory access
US4494187A (en) * 1982-02-22 1985-01-15 Texas Instruments Incorporated Microcomputer with high speed program memory
US4559611A (en) * 1983-06-30 1985-12-17 International Business Machines Corporation Mapping and memory hardware for writing horizontal and vertical lines
US4739475A (en) * 1983-09-20 1988-04-19 Mensch Jr William D Topography for sixteen bit CMOS microprocessor with eight bit emulation and abort capability
US4562537A (en) * 1984-04-13 1985-12-31 Texas Instruments Incorporated High speed processor
JPS61170828A (ja) * 1985-01-24 1986-08-01 Hitachi Ltd マイクロプログラム制御装置
JPH0816882B2 (ja) * 1985-06-17 1996-02-21 株式会社日立製作所 半導体記憶装置
US5226122A (en) * 1987-08-21 1993-07-06 Compaq Computer Corp. Programmable logic system for filtering commands to a microprocessor
US5079742A (en) * 1989-07-28 1992-01-07 Texas Instruments Incorporated Read-only-memory having sectional output lines with related memory elements responsive to early and late-occurring input signals
JPH0976683A (ja) * 1995-09-11 1997-03-25 Ado & Risuponsu:Kk 保険証カバー
US6092229A (en) * 1996-10-09 2000-07-18 Lsi Logic Corporation Single chip systems using general purpose processors
US7577011B2 (en) * 2006-10-13 2009-08-18 Agere Systems Inc. Optimization of ROM structure by splitting
US7623367B2 (en) * 2006-10-13 2009-11-24 Agere Systems Inc. Read-only memory device and related method of design
US9779784B2 (en) * 2014-10-29 2017-10-03 Micron Technology, Inc. Apparatuses and methods for performing logical operations using sensing circuitry

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5376722A (en) * 1976-12-20 1978-07-07 Nec Corp Data processing unit
JPS5475253A (en) * 1977-11-29 1979-06-15 Fujitsu Ltd Information process system
JPS54155744A (en) * 1978-05-29 1979-12-08 Nec Corp Microprogram control system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3654610A (en) * 1970-09-28 1972-04-04 Fairchild Camera Instr Co Use of faulty storage circuits by position coding
JPS5751195B2 (ja) * 1974-07-03 1982-10-30
US4106090A (en) * 1977-01-17 1978-08-08 Fairchild Camera And Instrument Corporation Monolithic microcomputer central processor
US4139907A (en) * 1977-08-31 1979-02-13 Bell Telephone Laboratories, Incorporated Integrated read only memory

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5376722A (en) * 1976-12-20 1978-07-07 Nec Corp Data processing unit
JPS5475253A (en) * 1977-11-29 1979-06-15 Fujitsu Ltd Information process system
JPS54155744A (en) * 1978-05-29 1979-12-08 Nec Corp Microprogram control system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6343357B1 (en) 1991-06-24 2002-01-29 Hitachi, Ltd. Microcomputer and dividing circuit
US6996700B2 (en) 1991-06-24 2006-02-07 Renesas Technology Corp. Microcomputer and dividing circuit

Also Published As

Publication number Publication date
JPS6343778B2 (ja) 1988-09-01
JPS63100538A (ja) 1988-05-02
JPS57155657A (en) 1982-09-25
US4402043A (en) 1983-08-30

Similar Documents

Publication Publication Date Title
US4403284A (en) Microprocessor which detects leading 1 bit of instruction to obtain microcode entry point address
US4463421A (en) Serial/parallel input/output bus for microprocessor system
US4402042A (en) Microprocessor system with instruction pre-fetch
US4402044A (en) Microprocessor with strip layout of busses, ALU and registers
US4694391A (en) Compressed control decoder for microprocessor system
US4450519A (en) Psuedo-microprogramming in microprocessor in single-chip microprocessor with alternate IR loading from internal or external program memories
US4577282A (en) Microcomputer system for digital signal processing
JPS6379134A (ja) 補助記憶装置を有するマイクロプロセッサ装置
US4491910A (en) Microcomputer having data shift within memory
US4514805A (en) Interrupt operation in systems emulator mode for microcomputer
US4677586A (en) Microcomputer device having test mode substituting external RAM for internal RAM
US4538239A (en) High-speed multiplier for microcomputer used in digital signal processing system
US4434462A (en) Off-chip access for psuedo-microprogramming in microprocessor
US20050198471A1 (en) Micro-controller for reading out compressed instruction code and program memory for compressing instruction code and storing therein
US4498135A (en) Microcomputer with accumulator addressing
JPS58191044A (ja) 汎用計算機のエミユレ−シヨン方式
US4422143A (en) Microprocessor ALU with absolute value function
US4087854A (en) Minicomputer system with an arithmetic control unit integrated on a one-chip semiconductor device
US4130869A (en) Microprogram controlled system
US4608634A (en) Microcomputer with offset in store-accumulator operations
US4507727A (en) Microcomputer with ROM test mode of operation
US4503500A (en) Microcomputer with bus interchange module
JPH0124655Y2 (ja)
US4533992A (en) Microcomputer having shifter in ALU input
US4494187A (en) Microcomputer with high speed program memory