JPS6044699B2 - 特殊アドレス発生装置 - Google Patents
特殊アドレス発生装置Info
- Publication number
- JPS6044699B2 JPS6044699B2 JP55502140A JP50214080A JPS6044699B2 JP S6044699 B2 JPS6044699 B2 JP S6044699B2 JP 55502140 A JP55502140 A JP 55502140A JP 50214080 A JP50214080 A JP 50214080A JP S6044699 B2 JPS6044699 B2 JP S6044699B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- register
- instruction
- data
- addresses
- 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.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/34—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
- G06F9/345—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes of multiple operands or results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/04—Addressing variable-length words or parts of words
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Executing Machine-Instructions (AREA)
Description
【発明の詳細な説明】
以上の問題は、初期アドレス及びクロツク信号一に応
動して一連のアドレスを自動的に発生し、予め定めた数
のアドレスの発生の終了時に初期アドレスから作られる
制御信号に応動して一連のアドレス発生を停止させ、該
予め定めた数が該初期アドレスの一部からデコードされ
る本発明の一実施例によつて解決された。
動して一連のアドレスを自動的に発生し、予め定めた数
のアドレスの発生の終了時に初期アドレスから作られる
制御信号に応動して一連のアドレス発生を停止させ、該
予め定めた数が該初期アドレスの一部からデコードされ
る本発明の一実施例によつて解決された。
本発明は、一実施例に関する以下の詳細な説明を以下
に説明する図面とともに読むことによつて完全に理解さ
れるであろう。 第1, 2及び3図は、第4図のように接続した時、マ
イクロコンピユータのブロツク図を示し、第5図はデー
タバス回路の論理回路図を示し、第6図は命令レジスl
夕・レコーダ・ラツチの論理回路図を示し、第7図は第
8図及び第9図の接続を示し、これらは第 1, 2及
び3図のマイクロコンピユータで実行される命令の動作
シーケンスを示す状態図を形成し、第10図は状態カウ
ンタ及びマルチプレクサの論理回路図を示し、第11図
はデコーダの論理回路図を示し、第12図は伝送ゲート
マルチプレクサの論理回路図を示し、第13図及び第1
4図は第15図のようにつながれてラツチ、バス及びゲ
ートを含むアドレス演算装置の論理回路図を示゛し、第
16図は第1乃至3図のマイクロコンピユ−夕のタイミ
ング図を示し、第17図及び第18図は第19図のよう
に接続されて特殊アドレス回路及び特殊ラツチ装置の論
理回路を示し、第20図は比較器の論理回路図を示す。
詳細な説明 第1, 2及び3図において、単一の相補形金属酸化
物半導体/大規模集積回路(CMOS/LSI)チツプ
上に製造されたマイクロコンピユータのブロツク図が示
されている。 チツプ上には、読出し専用メモリ20とランダムアクセ
スメモリ22が含まれ、これらは4ビツトのチツプ内デ
ータバス24及び一連の一時レジスタ(TA..TB及
びAB)26,27及び28を介して4ビツトの並列演
算論理装置(ALU)30に接続されている。いくつか
の他のチツプ内レジスタがチツプ内データバス24に接
続されており、これらは使用者によつてアドレス可能で
ある。マイクロコンピユータの融通性及び効率を上げる
ために、多くの入出力回路及び直接メモリアクセス回路
がチツプ上に含まれている。メモリとレジスタについて
はより詳しく後述する。 主として第2図に示した制御
部は、読出し専用メモリ20又はランダムアクセスメモ
リ22から供給される命令の機能に従つて要求されるマ
イクロコンピユータの一連の動作を実行する。 条件レジスタ(CR)31の内容は演算論理装置30で
行われる動作の結果に応じて変えられる。 演算論理装
置30は4ビツトの並列演算方式を取つているが、単一
の命令に対して、単一又は複数のニブルオペランドに対
する演算又は論理操作を行うことができる。 命令レジスタ(IR)32及び処理装置制御レジスタ(
PSR)に蓄えられた情報に応じて、第2図の制御部は
単一又は複数のニブルオペランドに対する操作のモード
及び形を決定する。基本的には命令レジスタに蓄えられ
た0Pコード語が、指定されたデータに対する処理シー
ケンスを決定する。 このシーケンスは、処理装置制御
レジスタ33に蓄えられている情報に応じて変えられる
。 特に複数ニブルオペランドに対する操作は、処理シーケ
ンスのこのような変更の結果として行われる。この処理
シーケンスの変更と、処理中に出合う特別のアドレスに
応じて得られる復号された制御信号とにより、制御部は
命令レジスタに蓄えられている命令によつて処理される
データのニブル数を変えることができる。このような特
別のアドレスの生成と、そこから得られる制御信号の復
号については後で詳しく述べる。メモリ メモリは、主としてプログラムの蓄積に用いられる読
出し専用メモリ20と、主としてデータの蓄積に用いら
れるランダムアクセスメモリ22とから成る。 読出し専用メモリ20は、制御部とともに第2図に示
されているが、これは、このメモリが主として機械の動
作の実行を制御するための命令を与えるものであるため
である。 読出し専用メモリのプログラム作成はマスクレベルで行
われ、その後変えることはできない。 ランダムアクセ
スメモリ22は、入出力回路とともに第1図に示されて
いるが、これはランダムアクセスメモリが、入出力回路
に接続され第1図の左側に示されている複数個の周辺装
置A,B,C,D及びEとの間でしばしばデータの転送
を行うためである。 アドレス可能レジスタ マイクロコンピユータは異つた構成のレジスタを多数
含み、種々の機能を実行するのに用いられる。 これらのレジスタのいくつかについてはすでに述べたが
、まだ述べていないレジスタもある。すべてのレジスタ
について後で詳しく述べる。第 1, 2及び3図に示
したマイクロコンピユータは、10ケのユーザアドレス
可能レジスタを含んでいるが、多くのマイクロコンピユ
ータと異り、予め割当てたアキユムレータは無い。ユー
ザアドレス可能レジスタ ユーザアドレス可能レジスタには、次のものがある。 条件レジスタ31は、条件レジスタ自体が行先きとな
つている時を除き、演算又は論理動作の結果得られるデ
ータの状態、又は条件、を示す信号を蓄えるための4ビ
ツトの双安定ラツチ回路である。条件レジスタと条件ス
テアリング回路54とが、演算論理装置30と内部デー
タバス24との間に挿入されている。演算論理装置及び
内部データバスはともに4ビツトデータを並列に処理す
るように構成されている。条件レジスタはアドレス可能
であり、データバスから置数又は読出しのためにアクセ
スできる。′6フラグ5′と呼ぶ状態信号は、ゼロ、パ
リテイ、桁上げ、及びオーバフローの各フラグから成る
。算術演算動作は、この4つのフラグのすべてに影響を
与えるデータを発生するが、論理動作ではゼロ及びパリ
テイフラグのみに影響するデータを発生し、また条件命
令はどのフラグにも影響を与えない。このマイクロコン
ピユータは種々のニブル数のオペランドに対して動作す
るため、フラグ信号を発生して蓄える時に扉は、誤りの
ある中間のフラグ信号はすてられる。一群のフラグ制御
回路すなわち条件ステアリング回路54が、マイクロコ
ンピユータで実行されるすべての演算論理動作に対して
、この正しい状態情報を発生する。この状態情報あるい
はプログラム制御によつてデータバス24から置数され
る情報のいずれかが条件レジスタ31に蓄えられる。
条件レジスタ内で、ゼロフラグ回路構成は全ゼ 口論理
回路を含み、これは複数ニブルデータを正 しく扱うた
めの帰還路を持つている。ある論理及ノびタイミング信
号が蓄えられた全ゼロ信号をラツチ回路へ印加して蓄積
とデータバス24への読出 しを可能とするが、他のラ
ツチは後の処理条件によつて状態を変えることができる
。 さらに条件レジスタにおいて、パリテイフラツグ
回路も複数ニブルを扱うための帰還構成を持つている。 ラツチ回路は、保持と、プログラム制御によつてデータ
バス24へ読み出すためにパリテイ信号を蓄える。 さ
らに条件レジスタにおいて、桁上げフラグ回路は、演算
論理装置30の算術演算の結果発生する桁上げ信号を受
信して蓄えるためのマスタスレーブラツチ回路を含んで
いる。 プログラム制御に応動して、スレーブラツチに蓄えられ
た桁上げフラグがデータバス24へ読出される。 さら
に条件レジスタにおいて、オーバフローフラツグ回路は
、演算論理装置30で発生するオーバーフロー信号によ
つて制御されるラツチ回路である。 前述のように、条件レジスタはマドレス可能であり、
内部データバス24上の情報を書込むことも可能である
。 逆に、情報が条件レジスタ31に一担蓄えられると、こ
の情報はプログラム制御の下に内部データバス24に読
出すことができる。 12ビツト長のプログラムカウン
タ(PC)60は、次に実行すべき命令のアドレスを蓄
える。このカウンタは通常の方法で動作し、その内容は
処理の開始時において托進アドレスX(000)にセツ
トされる。その後、たとえばジヤンプ命令等の命令によ
つてその内容が変えられない限り、アドレス演算装置(
AAU)62によつて各命令ごとにある値だけ増分され
る。この増分は所定のプログラムシーケンスが完了する
まで続けられる。 メモリポインタレジスタ(PO及び
P1)64及び66は8ビツトのレジスタであり、メモ
リ位置を間接アドレスするのに用いられる。ポインタと
して用いられる時、これらは指されているアドレスの下
位の2ニブルを蓄える。 第2図及び第5図に示したよ
うに、処理装置制御レジスタ(PCR)33は数ビツト
のレジスタであり、その2ビツトGB1とGB2により
プログラマはオペランド長を4、8、12、又は16ビ
ツトのいずれかにセツトすることができる。 処理装置制御レジスタ33はデータバスに接続され、ア
ドレス可能なメモリスペースのアドレスが与えられてい
る。プログラマの要求に従つて時々レジスタ33に情報
が蓄えられる。典型的なプログラムでは、処理装置制御
レジスタ33に一度しか数値を入れない。゜“移動゛命
令(MOV)がレジスタ33に置数するのに用いられる
。置数すべきデータは特定のアドレスからレジスタ33
のアドレスヘ移動される。このデータは、後で別の“゜
移動゛命令によつて変えられるまで、レジスタ33に蓄
えられている。プログラムによつては、同一のルーチン
内でレジスタ33を何度も書き変える。 処理装置制御
レジスタに蓄えられた情報は、マイクロコンピユータに
おけるデータ処理の制御を助ける働きをする。 オペランド長を制御するため・に処理装置制御レジスタ
に蓄えられている2ビツトGB1とGB2は、伝送ゲー
トマルチプレクサ68を介して制御用プログラム論理配
列(PLA)・ランダム論理回路70の入力に印加され
、ここでマイクロコンピユータで実行される動.作シー
ケンスを決定するための助けとして用いられる。 処理装置制御レジスタに蓄えられている2ビツ トの
データは、各命令の実行時にオペランドに含まれるニブ
ル数を決定する。 前述のように、チツ゛プ内データバス24及び演算論理
装置30は一度に4ビツトしか扱わないが、このマイク
ロコンピユータは4、8、12又は16ビツトのいずれ
かのオペランドを処理できるように構成されている。こ
れは4ビツトを同時に扱う直列方式によつて達成される
。 第3図において、演算論理装置30は制御部からの
信号に応動して適当な回数のステツプ動作を行つて種々
の長さのオペランドに対処する。 演算処理装置が任意のフラツグの更新を必要とする動“
作を実行する度に、結果としてできる正確な条件情報が
条件レジスタ31に蓄えられるとともに、動作が制御用
PLA・ランダム論理回路70からの信号によつてカウ
ンタ69で計数される。制御部では、比較器71がカウ
ンタ69の状態を、処理装置制御レジスタ33に蓄えら
れ特殊アドレスデコーダ45によつて比較器71に印加
される2ビツトと比較する。カウンタの状態が処理装置
制御レジスタに蓄えられた数と等しくないと、制御部は
演算処理装置30を含む処理装置の動作を繰返えさせて
、必要に応じて桁上げを伝搬させると ともにパリテイ
、ゼロ及びオーバーフロー情報を更新させる。カウンタ
69の状態が処理装置制御レジスタ33に蓄えられてい
る数と等しくなる と、複数ニブルオペランドに対する
動作が完了したことになり、制御部は命令実行の次のフ
エーズに進む。この時、条件レジスタ31は、上記の複
数ニブルオペランドに対する処理の結果得られるフラグ
に関する正しい情報を含んでいる。 前述のように、処
理装置制御レジスタ33の書き替えはひんぱんではなく
、1つのプログラムで1回しか書込まれないことも多い
。 一度書込まれると、その制御データは処理装置制御レジ
スタ内に維持され、処理装置の論理処理の一部を決定す
るのに用いられる。この、処理装置制御レジスタに蓄え
られた制御データは、処理装置制御レジス夕に異つた制
御データが書込まれるまでの間、処理の制御に貢献する
。プログラマは処理問題を解くための必要性に応じて処
理装置制御レジスタヘの制御データの書込みと書替えを
行う。このようにしてマイクロコンピユータの論理は時
々再構成され、その命令セツトの機能が拡張される。
第3図の直接メモリアクセスポインタ(DP)78は、
アドレス可能な12ビツトレジスタであり、これは直接
メモリアクセス動作と、外部事象を計数するための有効
なカウンタとしての動作の両方を行う。直接メモリアク
セス動作に対しては、そこに蓄えられた12ビツトのデ
ータが、直接メモリアクセス転送における情報の発生源
又は行き先きとなる任意のメモリ位置を指すのに用いら
れる。繰返す外部動作のためのカウンタとして用いられ
る時には、レジスタ78に12ビツトのデー夕が置数さ
れ、このデータは外部で発生するクロツクサイクルごと
にアドレス演算装置62によつて増分される。この外部
動作はアドレス演算装置62からのオーバーフロー信号
に応動して終了する。 4ビツトのページポインタレジ
スタ(PG)80は、アドレス可能レジスタであり、ラ
ンダムアクセスメモリ22、他の9ケのアドレス可能レ
ジスタ、及び入出力回路36, 37及ひ38をアドレ
スする時に用いられる12ビツトのアドレスの中間のニ
ブルを供給する。 このページポインタレジスタ80に置数し、後でメモリ
の16ニブルのブロツクを識別するためにこの内容を用
いることにより、メモリのそのブロツク内の任意の位置
が単一の命令によつて極めて効率良くアドレスされる。
下位二ブルは、読出し専用メモリ20からの命令によつ
て供給される。アドレスの上位二ブルは、 托進のFで
あり、アドレス演算装置62のハード ウエア番こよつ
て供給される。 12ビツトのスタツクポインタレジ
スタ(SP) 82はアドレス可能レジスタであり、通
常のプツ シユダウンスクツク動作のために用いられる
。 ス タツクポインタに入れられたデータは、スタツク
に最後に入れられたデータをアドレスするのに用 いる
ことができる。プログラム制御のもとで、ス タツクポ
インタ内のデータは、情報項目がスタツ クに積まれる
か、あるいはスタツクから読み出さ れる度にアドレス
演算装置62によつて増加ある いは減少させられる。
第1図の入出力制御レジスタ(IOCR)35 は
、アドレス可能な6ビツトレジスタであり、プ ログラ
ム制御の下で、マイクロコンピユータに対 して入出力
するデータの流れを制御するための情報を蓄える。 制御レジスタ35に蓄えられた情報 のうち、3ビツト
は入カゲート37に印加され、 1ビツトはマルチプレ
クサ(MUX)52に印加 されて、ゲート37及びM
UX52を流れるデー 夕を制御する。制御レジスタ3
5に蓄えられた情報の残りの2ビツトは、直接メモリア
クセス制御回路(DMA)85に印加され、この回路が
直列又は並列動作のいすれか、及び入力又は出力動作
のいずれかを制御するかを決定する。 アドレス可能ア
キユムレータレジスタ 前述のように、予め割当てられたアキムレータ は存
在しない。 その代り、アドレスモードによつ て、ランダムアクセ
スメモリ22内のレジスタがノ種々の命令に対してアキ
ユムレータの機能を果す。ランダムアクセスメモリ内の
このようなレジ スタを用いることにより、マイクロコ
ンピユータ は、永久的に割当てられたアキユムレータ
を通る という中間ステツプを用いることなくメモリか
らテメモリへのデータ転送を行うことができる。これ
らのレジスタは多くの算術及び論理機能におい て、デ
ータ源及び行き先きレジスタとしても機能する。 アド
レス方式 フ 読出し専用メモリ20、ランダムアクセスメモ リ
22、入出力回路及び前述のアドレス可能レジ スタの
すべての蓄積位置は、アドレス可能なメモ リ空間の位
置に割当てられている。 各アドレスは 1ニブル(4ビツト長)を蓄える。アド
レス空間はw進アドレスでO乃至409\又はxで托進
数を表わすとき、X(000)乃至X(FFF)となる
よう構成されている。読出し専用メモリはアドレスX(
000)で始まる下部アドレスを用い、ランダムアクセ
スメモリは、アドレスX(FFF)で終る上部アドレス
を用いる。10ケのアドレス可能レジスタ及び入出力回
路には、ランダムアクセスメモリに割当てられた最低ア
ドレスよりも下位のアドレスが割当てられており、これ
らはランダムアクセスメモリと同じようにアクセスする
ことができる。 レジスタとして用いられる各ランダムアクセスメモリロ
ケーシヨンのアドレスは、最上位桁ニブルが托進のFに
なつている。 オペランドの有効なアドレスを形成する
のに種々のアドレスモードがある。 データの行き先きアドレスを形成するのに4つのモード
があり、またデータ源のアドレスを形成するのにも4つ
のモ−ドがある。 行き先きアドレスモードは次の通り
である。 モード0−アドレスは16進数Fの4ビツト数値
と、ページポインタレジスタ80から 取
り出される4ビツトのページポイン タと、命
令により与えられる1ニブル とを連結するこ
とによつて作られる。モード1一直接アドレスモード2
−アドレスはメモリポインタレジスタ6 4の
内容である。 モード3−アドレスはメモリポインタレジスタ6
6の内容である。 データ源アドレスモードは次の通りである。 モードO−アドレスは16進数Fの4ビツト数値
と、ページポインタレジスタ80から 取
り出される4ビツトのページポイン タと、命
令により与えられる1ニブル とを連結するこ
とによつて作られる。モード1一直接アドレスモード2
−アドレスはメモリポインタレジスタ6 4の
内容モード3一即値デー夕 特殊アドレスデコーダ45はアドレスラツチ99から
アドレスバス40を介して印加されるアドレスを受信す
る。 このデコーダは、プログラムの実行中に、条件レジスタ
31、処理装置制御レジスタ33、入出力制御レジスタ
35、入出力ラツチ36、両方向性入出力部37、入力
部38、プ ログラムカウンタ60、メモリポインタレ
ジスタ 64及び66、直接メモリアクセスポインタレ
ジ スタ78、ページポインタレジスタ80及びスタ
ツクポインタレジスタ82のために、特殊アドレ スを
、レジスタを識別しまた駆動する信号に変換する。他の
レジスタ マイクロコンピユータの他のレジスタは命
令レつジスタ(IR)32と、デスチネーシヨン/ソー
スレジスタ(DS)86を含んでいる。 第2図及び第5図において、命令レジスタ32 は、
4ビツトラツチ回路であり、チツプ内データバス24に
接続されて、各命令が実行される時に70Pコードの1
ニブルを受信して蓄える。 各命令 の最初のニブルが常に命令レジスタに蓄えられ
る。このOPコードのニブルが蓄えられると、命令レ
ジスタ32はこのコードを制御部内の命令レ ジスタデ
コーダ・ラツチ90に印加して、現在のノ命令の実行に
おける動作シーケンスの一部を制御 させる。 次に
、第2図及び第6図において、OPコード の第1ニブ
ルの選択されたものに応じて第6図の 回路で作られる
情報が、この命令の間、命令レジ スタデコーダ・ラツ
チ90内のラツチELAT67 0及びMDLAT61
0に蓄えられ、0Pコードの他のニブルも用いられるこ
とが示される。 各命令 の第2のニブルは、常に第2図及び第5図のデ
ス チネーシヨン/ソースレジスタ86に蓄えられ る
。良く使われる命令群では、この第1及び第2 のニブ
ルによつて、所定の実行シーケンスを記述 するのに十
分の情報が与えられる。 命令レジスタデコーダラツ
チ90内のラツチELAT及びMDLATに蓄えられた
情報に応動し、 ある命令では命令の第3のニブル(O
Pコードの第2のニブル)がメモリから取り出され、O
Pコ ードの第1のニブルの代りに命令レジスタ32に
蓄えられる。 このOPコードの第2のニブルは、 この命令の間動作
シーケンスの部分的制御を続行 する。このように、第
1のOPコードをラツチELAr及びMDLATに蓄え
、続いて命令レジスタ 内の第1のOPコードを第2の
0Pコードて置きか えて動作シーケンスの部分制御を
続行することを 2重0Pコード動作と呼ぶ。2重0P
コード動作を行う任意の命令では、命令の第3のニブル
が第2のOPコードであり、これが第1のOPコードの
代りに命令レジスタ32に蓄えられる。 第6図において、命令レジスタデコーダラツチ90は
2つのラツチ(ELAT及びMDLAT)630及び6
10を含んでおり、これらは命令レジスタ32に蓄えら
れている第1のニブルの特定のコ−ドに応動してナンド
ゲート群で作られる情報を蓄える。 ラツチELAT及びMDLATの各々は、2重0Pコー
ド動作を示す異つたOPコードの組合せに応動してセツ
トされる。これら2つのラツチのいずれかに割当てられ
たOPコードが命令の第1ニブルにおいて命令レジスタ
に蓄えられていないと、このラツチは命令終了までリセ
ツトされたままとなる。一方、これらのラツチの1つに
割当てられたOPコードが第1ニブルにおいて命令レジ
スタに蓄えられていると、そのラツチは命令の期間中セ
ツトされたままとなる。ラツチELAT又はMDLAT
が一度セツトされると、これによつて制御部はOPコー
ドの第2のニブルを読出し専用メモリから取り出して第
1のニブルの代りに命令レジスタ32に書込む。ラツチ
ELAT又はMDLATのセツト状態は、命令レジスタ
32に蓄えられているOPコードの第2のニブルととも
に、任意のアドレス可能蓄積位置から取り出される任意
のデータ語に対するその後の処理を制御する。命令レジ
スタデコーダラツチ90内のいずれかのラツチがセツト
されると、制御部は処理装置を特別のステツプへと進ま
せる。 第2図及び第5図に示したように、デスチネー
シヨン/ソースレジスタ86は4ビツトラツチ回路であ
り、チツプ内データバス24に接続されて、各命令の実
行時に、アドレスモードデータである1ニブルを受信し
て蓄える。 前述のように、各命令の第2のニブルはデスチネーシヨ
ン/ソースレジスタ86に蓄えられ、その命令の実行中
伝送ゲートマルチプレクサ68に印加される。このデー
タのうちの2ビツトはページポインタレジス夕80に蓄
えられた情報とともに用いられる時に、マルチプレクサ
68を介して制御用プログラム論理配列70に印加され
、命令の実行中にブロツク内の16ケのアドレスのどれ
をデータの行き先きとして用いるかを決定するのに用い
られる。デスチネーシヨン/ソースレジスタ86からの
デー夕の他の2ビツトは、ページポインタレジスタ8
0からの情報とともに用いられる時にマルチプレクサを
介してプログラム論理配列70に印加され、命令が2項
演算命令である時にブロツク内の16ケのアドレスのど
れをデータ源レジスタとして用いるかを決定するのに用
いられる。命令が2項演算形でない時には、後者の2ビ
ツトは制御部のための他の制御情報を与える。 命令レ
ジスタデコーダ・ラツチ90は2つのフ リツプフロツ
プ610及び630を含み、命令レジスタ32に蓄えら
れている特定のコードに応動して論理回路603, 6
23で作られる情報を蓄える。 これらのフリツプフロツプの各々は異つたOPコードの
組合せに応じてセツトされる。一方のフリツプフロツプ
610はセツトされると、命令が単項形又は2項形のい
ずれかであることを示す。他のフリツプフロツプ630
は命令が条件付ぎ飛越し命令であることを示す。制御部 第2図に示すように、このマイクロコンピユー夕の制
御部は、読出し専用メモリ20及びレジス夕32,33
、及び86を含み、これらはチツプ内データバス24に
接続されている。 制御部はさらに、制御用プログラム論理配列・ランダム
論理 70、状態カウンタ96、第6図に示されている
ような命令レジスタデコーダラツチ回路90、及び種々
の他の論理回路を含んでいる。1つの命令に対して実行
される事象のシーケンスは、この制御部によつて制御さ
れる。 制御用プログラム論理・配列の出力は、マスター/スレ
ーブ構成によつてラツチされる。マイクロコンピユータ
は、第7図のように接続される第8図及び第9図に示し
た記号を含む四角によつて表わされる一連の状態ステッ
プを実行する。 第8図及び第9図において、各状態は
、例えば最上部の2つの四角内に“゜0−3゛及び0−
C゛とあるように、四角形内の上部に記されているコー
ドによつて識別する。 各状態は第2図及び第1 0図に示した状態カウンタ9
6の出力によつて順ノに決定される。 動作の取り込み
シーケンスにおいて、2つのニブルがメモリから取り出
され、それぞれ状態0ー 3において命令レジスタ32
に、また状態0−4においてデスチネーシヨン/ソース
レジスタ86に書込まれる。 第1のニブルはOPコードであり、次に続く事象シーケ
ンスの基本的な制御のために用いられる。第2のニブル
は、命令を実行する時に用いられるオペランドの行き先
き及びデー夕源に関するアドレス情報を含んでいる。デ
スチネーシヨン/ソースレジスタ86が制御信号LDD
Sによつて置数される度に、レジスタ28にも置数され
る。一部の動作について前述したように、第3のニブル
が取り出され、状態0−5において同じ命令レジスタに
書込まれ、この後の事象シーケンスの制御のために用い
られる。 取り込みシーケンスが終了すると、命令レジ
スタデコーダ・ラツチ回路90によつて作られる実行べ
クトルが状態カウンタ96に入れられ、この後の正しい
処理シーケンスが開始される。第2図及び第10図のマ
ルチプレクサ(MUX)97は、命令レジスタデコーダ
・ラツチ回路90からの情報、あるいは制御用プログラ
ム論理配列70からの情報のいずれを状態カウンタ96
に印加するかを決定する。 第2図及び第10図に示し
たように、状態カウンタは6ビツトのマスタースレーブ
ラツチであり、主として制御用プログラム論理配列70
で作られる状態情報を一時的に保持するが、場合によつ
ては実行べクトル情報が配列70からの情報の代りに状
態カウンタに入れられる。 この後者の事象は、状態カウンタ96の状態に応動する
デコーダ98によつて決定される。状態0−6が生じる
と、デコーダ98は信号をマルチプレクサ(MUX)9
7に印加して、制御用配列70の通常の4つの出力の代
りに、実行べクトルを状態カウンタに印加させる。 命令が単項又は2項演算形の命令であると、1つ又は
それ以上のアドレスが形成されて、第3図の1対の一時
アドレスレジスタ(TO及びT1)92及び93の一方
又は両方に入れられる。 一度アドレスが形成されると、制御部は指定されたオペ
ランドを蓄積装置から取り出し、これらを演算論理装置
レジスタ26及び27の一方又は両方に書込む。次に演
算論理装置30が駆動されて適した機能を実行し、結果
を発生する。演算理論装置の動作の結果に従い、条件ス
テアリング回路54によつて処理された条件フラグが条
件レジスタ31にセツトされる。制御部の比較器71は
演算論理装置30がオペランドの他のニブルに対して処
理をすべきか否かを決定する。これは、カウンタ69の
状態を処理装置制御装置33に蓄えられているオペラン
ド長と比較することによつて行われる。オペランドの他
のニブルの処理を行うべき時には、制御部は別のニブル
を取りこみ、演算論理装置を必要な回数だけ駆動する。
命令の実行中、このような動作が続けられ、処理された
ニブル数が、処理装置制御レジスタ33に蓄えられたオ
ぺランド長を示す値に等しくなると終了する。制御用プ
ログラム論理配列 第2図の制御用プログラム論理配列
70は、たとえば197詳7月のSigneticIn
c.社のSigI1etiCSApp11cation
sNotesREPLAsの4乃至22頁に記されてい
るような公知のプログラマブル論理配列の論理機能を実
行する論理回路である。 第2図及び第10図に示したように、制御用プログラム
論理配列70は、状態カウンタ96をループして該配例
の入力に戻つている2つの出力と、マルチプレクサ97
及び状態カウンタ96をループして配列の入力に戻つて
いる4つの出力を持つており、マイクロコンピユータの
動作中配列の状態シーケンスを進めさせる。 第2図及
び第9図に示したように、マルチプレクサ97は8対4
のマルチプレクサである。 このようなマルチプレクサの構成と動作は公知であり、
例えばTexasInstruments.sInc.
社のSupp1ement to the ′ITL
Data Book forDesigr1Engin
eers1の初版のS−296頁及びSー29頂に示さ
れている。 第2図及び第10図に示されたように、状
態カウンタ96は6ケの入力と6ケの出力とを持つたマ
スタースレーブラツチである。 2つの入力SCOUT1及びSCOUT2は制御用プロ
グラム論理配列の出力から直接印加される。 他の4つの入力はMUX97から印加される。通常、M
UX97からの4つの入力は、制御用プログラム論理配
列の他の4っの出力SCOUT3−SCOUT6である
。状態0−6においてのみ、これら4つの入力は命令レ
ジスタデコーダ●ラツチ90からの実行べクトル出力E
■1−E■4に切り換えられる。 チツプ端子からの別
の入カリードは、外部リセツト信号EXRSTであり、
ユーザがマイクロコンピユータをリセツトする時に印加
される。このリセツト信号が印加されると、状態カウン
タの出力はすべてゼロになる。この出力によりリセツト
ルーチンが開始される。 第2図及び第11図に示した
ように、マルチプレクサ制御デコーダ回路77は2組み
の論理ゲー卜を含んでおり、これらは第2図及び第12
図のマルチプレクサ68内の2組みの伝送ゲートマルチ
プレクサのための制御信号を発生する。 これら各組のマルチプレクサは、制御信号の状態によつ
て開閉される3つの伝送ゲートを含んでいる。各組の3
つのゲートの1つのみが任意の時刻において情報を伝送
するよう付勢される。マルチプレクサ68の動作につい
ては後でより詳しく述べるが、以下では簡単にその動作
について述べる。マルチプレクサ68内の第1の組の伝
送ゲートA0,A1及びA2の各ゲートは、2ケの情報
をマルチプレクサ68内の第2の組のゲートの中の1つ
の伝送ゲートAの1対の入カヘ伝送することを制御する
。第2の組の伝送ゲートA,F1及びE2の各々は、3
ケ又は4ケの情報を制御用プログラム論理配列70の4
つの入カリードヘ伝送することを制御する。実行べクト
ル論理 第2図及び第6図に示したように、命令レジスタデコ
ーダラツチ90は制御部の命令レジスタ32と状態カウ
ンタ96との間に置かれている。 入力は、命令レジスタ、制御用プログラム論理配列及び
実行べクトル状態デコーダ98から印加される。命令レ
ジスタデコーダラツチ90から得られる出力の一部を実
行べクトルと呼ぶ。命令べクトルは4ビツトE■1−E
V4から成り、現在の命令をいかに実行し、現在のオペ
ランドをいかに処理するかを決定する。実行べクトルは
制御用プログラム論理配列70の出力の一部と合せられ
、命令実行の状態0−6における予め定めた時刻に状態
カウンタに書込まれる。 実行ベクトルは状態カウンタ
に入れられると、第8図及び第9図に定義されている状
態のうちのどれを次に実行すべきかを決定する。 実行べクトルによつて選択される各状態は、第8及び9
図では状態の上部に記号Xを付けて示されている。この
ような実行べクトルの動作により、第2図の制御部のた
めに不当に大きいチツプ面積を必要とすることなく、シ
ーケンス図の分岐における大きなフアンアウトを可能と
している。実行ベクトルを状態カウンタに入れることに
より、そうでないと制御用プログラム論理配列70に多
数必要な入力及び語線を除去することができる。 前述
のように、実行べクトルは制御用プログラム論理配列7
0の出力の一部の代りに状態カウン夕に入れられる。 実行べクトル状態デコーダ98は、状態カウンタ96の
状態に応動して、実行べクトルを制御用プログラム論理
配列からの出力の代りに状態カウンタに入れるべき正し
い時刻(状態0−6)を識別する。適当な付勢信号がデ
コーダ98からマルチプレクサ97へ印加される。この
ようにして状態カウンタに入れられた状態により、現在
の命令の残りの部分においてシーケンス図のどの分岐を
実行すべきかが決定される。アドレス演算装置、アドレ
スラツチ及びアドレスノくス 第3, 13及び14図
に示したように、アドレス演算装置62は12ビツトの
並列演算装置であり、メモリ位置のアドレス及び特殊ア
ドレスの形式を行うとともに、アドレスラツチ回路99
からこの入力に印加される任意の情報に1を加算したり
減算したりする。 装置62はアドレス機能のための組合せ論理回路である
。 基本的な増分及び減算機能の他に、アドレス演算装
置62は他の3つの機能を達成するよう構成されている
。 これら5つの機能は、制御用PLA・ランダム論理回路
70からの3つの制御信号F0B,F1B1及びF4B
に応動して制御される。 まず最初に、NOPコードに応動した時、装置62は何
もしない。さらに、トラツプ及び割込みコードに応動し
て、それぞれトラツプアドレス又は割込みアドレスが作
られる。これらのトラツプ及び割込みアドレスは、まず
アドレスラツチ99内のアドレスデータをすべてゼロに
リセツトし、次いで伝送ゲート111を消勢したままマ
スタを出力し、次に選択されたビツト位置にビットを挿
入しながらアドレス演算装置を介して全ゼロを通すこと
によつて作られる。このようなビツトの挿入は、リード
F0B,F1B及びF4Bに信号を印加することによつ
て行われる。これにより、割込みルーチンに対してアド
レスx(020)が、またトラツプに対してアドレスX
(010)が作られる。 第3, 13及び14図に示すように、アドレスラツ
チ99は、12ケの並列になつたマスタースレーブフリ
ツプフロツプから成り、アドレス演算バス100に現れ
るアドレスデータを受信して一時的にマスターに蓄える
よう構成されている。 このようなアドレスはメモリのためのものと、特殊レジ
スタのためのものがある。バス100上のデー夕は、(
a)データバス24からマルチプレクサ102を介して
、あるいは(b)レジスタ60, 64, 66,78
,80,82,92、及び93から、又は(c)アドレ
ス演算装置62から印加される。アドレスラッチのマス
ターに蓄えられたアドレスは、そのスレーブに転送され
て、アドレスバス40に印加される。マスタからスレー
ブへのアドレスの転送は各マシンサイクル毎に行われる
。 アドレスバス40は、12ビツトの並列バスであり
、アドレスラツチ99に蓄えられたアドレスを、特殊ア
ドレスデコーダ45及びアドレス演算装置62へ印加す
る。 このアドレスは、さらに読出し専用メモリ20及ランダ
ムアクセスメモリ22のアドレス入力及び入出力ラツチ
36に付随した1諸択1デコーダ106の12入力にも
印加される。アドレス演算バスの構造 第3図に示したように、アドレス演算バス100は1
鉢のリード線から成るバスであり、アドレス演算装置(
AAU)62、アドレスラツチ99、内部ランダムアク
セスメモリ(IRAM)61内のレジスタ、一時ランダ
ムアクセスメモリ(TRAM)73内のレジスタ、及び
マルチプレクサ102を相互に接続している。 あるアドレスは、データバス24からのデータの3つ
のニブルを連接することによつてマイクロコンピユータ
で作られる。 これらのニブルは、読出し専用メモリ20又はランダム
アクセスメモリ22から読み出されたものである。これ
らはニブル毎に直列にデータバス24に現れ、これらを
メモリ61又は73のレジスタの1つの対応する二ブル
位置に書込むことによつて連接される。 アドレス演算
バス100及びこれによつて接続されている回路は、マ
イクロコンピユータでデー夕を処理するのに用いられる
メモリアドレスを発生するために用いられる。一群の伝
送ゲート、111, 112, 113がバスリード中
に挿入されており、これによつてバスはセグメントに分
離することができる。伝送ゲート111,112及び1
13、及びマルチプレクサ102に印加される制御信号
に応じてバスセグメント115, 116, 117及
び118は相互に分離され、別のデータ源からの転送を
異つたセグメント毎に同時に行うことができる。このよ
うなデータの同時転送により、処理機能を行う際の動作
時間を短縮できる。特殊アドレスレジスタ 第3図の特殊アドレスレジスタ45は、アドレス可能
なメモリ空間と連続したアドレスを持つレジスタ31,
33,35, 60,64, 66, 78, 80
及び82のアドレスデコードを行う。 これらのレジスタは異つた長さを持ち、その長さはアド
レスバスより長い。特殊アドレスのすべては、データの
長さを示す情報を含んでいる。これらのアドレスはデコ
ード論理を簡単にするために割当てられている。直接ア
ドレスモードにおいて、レジスタがデータの行き先きと
してアドレスされると、特殊アドレスデコーダ45は、
アドレスをオペランドのニブル数に変換する。 これら
のレジスタのすべては、メモリ参照命令のすべてを使用
する。 もし特殊アドレスデコード機能がないと、余分のOPコ
ードをこのような命令のために用意しなければならない
。 次に第17図及び第18図において、特殊アドレス
デコーダ45の論理回路図が示されている。 アドレスラツチ99の出力はアドレスバス40を”介し
て特殊アドレスデコーダ45の入力に印加されており、
またアドレスの一部は特殊ラツチ45 1の入力にも印
加されている。アドレス情報は各マシンサイクル毎にク
ロツク信号P1Bによつて特殊ラツチ451に取り込ま
れる。アドレス情報の・一部は、このマシンサイクルの
残りの時間これらの特殊ラツチに保持され、このサイク
ル中にアドレスラツチ99に蓄えられたアドレスが変え
られても、特殊アドレスデコーダは、古い情報に応動し
続けることができる。ノ 特殊アドレスの割当てに従い
、これらのアドレスの上位6ビツトはすべて11110
0になつている。 印加されたアドレスがこのビツトパターンを持つている
と、フリツプフロツプ450がセツトされて、このマシ
ンサイクル中に特殊アドレス信号SPADを発生する。
この特殊アドレスが内部ランダムアクセスメモリ内の
レジスタのアドレスであると、このことがアドレスバス
リードADR5上の上位から7ビツ卜目のビツトによつ
て示される。 アドレスリードADR5上の情報は、ゲート452にお
いて信号SPADと結合されて1対のマルチプレクサM
UXA及びrViuxBを制御するための信号1SPA
Dとなる。 マルチプレクサMUXAは、デコード論理
453に対して、3つのアドレスリードADR2,.A
DR3及びADR4上の信号か、あるいは制御用プログ
ラム論理配列70からの3つのリードCRAM0,CR
AM1、及びCRAM2上の信号のいすれを印加するか
を選択する。 デコード論理453に印加された信号は、そこでデコー
ドされて、内部ランダムアクセスメモリ内に位置する特
殊レジスタの1つを選択する信号となる。通常の信号源
は、リードCRAM0,CRAM1、及びCRAM2上
の信号である。 マルチプレクサMUXBは、マルチプ
レクサ102の制御リードヘ印加する信号DAI.,D
AM1及びDAHとして、アドレスの下位2ビツトをデ
コードして得られる信号か、あるいは制御用プ口グラム
論理配列70からの信号のいずれかを選択する。 通常の信号源は配列70からの信号である。信号1SP
ADは、特殊ラツチ451に蓄えられたアドレスが内部
ランダムアクセスメモリ内の6ケの特殊レジスタの1つ
を直接選択するようにマルチプレクサMUXA及びMU
XBを切り換える。このような選択は、デコーダ453
内の3対6コード変換器によつて行われる。特殊ラツチ
に蓄えられているアドレスの他の部分は、第3図のマル
チプレクサ102の3組の伝送ゲートの1つを直接選択
するために用いられる。この3組の伝送ゲートの選択は
2対3コード変換器454によつて制御される。 マル
チプレクサMUXA及びMUXBはその出力を常時発生
している。 その入力信号は制御信号ISPAD及びISPADBに
よつて2群のうちの一方に切り変えられる。 第18図
で、任意の時刻において現在のオペランドの正確なニブ
ル数を決定するためのニブル重畳回路が存在する。 ニブルの正しい数を示す信号はマルチプレクサMUXC
の出力リードNIB1及びNIB2に現われ、これは比
較器71の入力に接続されている。マルチプレクサMU
XCへの入力は、処理装置制御レジスタ33からリード
GB1及びGB2へ、またフリツプフロツプ455から
リードRN1及びRN2へ印加されている。ラツチ4
56は、これら2つの入力のいずれをマルチプレクサM
UXCの伝送ゲートを介してリードNIB 1及びNI
B2へ印加するかを決定する。優先論理A回路457は
ラツチ456をセツトすべきか否かを決定する。このラ
ツチは特殊アドレス信号SPADと、信号LDTAと、
信号ADR5又はDSレジスタからの情報のいずれかと
によつてセツトされる。ラツチ456は状態0−6にお
いて信号CLRO−6によつてクリアされる。 ニブル
形成論理回路458は、2つのフリツプフロツプ455
のいずれを特殊アドレス情報によつてセツトするかを決
定する。 特殊アドレスを持つたレジスタは、この論理回路を最少
とするとと“もに、必要なニブル数がアドレスの一部か
らデコードできるようにアドレスが割当てられている。
各特殊レジスタは、レジスタ内の各ニブルの各々のアド
レスを含むのに十分の長さを持つたアドレスの一連の群
を持つている。上記のようなデコードと論理の最小化を
行うために、すべてのレジス夕について連続したアドレ
スが割当てられていない。アドレスの下位から数えて第
2、第4、第5及び第6のビツトがレジスタに割当てら
れており、各レジスタに対する正しいニブル数がデコー
ドされて2進コードの形でフリツプフロツプ455に蓄
えられる。これらのフリツプフロツプは信号LDTAが
生じる度にセツトされる。リードRN1及びRN2上の
ニブル信号は、命令の実行中に特殊レジスタが使われる
時にラツチ456からの信号SPRによつて選択される
。 命令によつて与えられる初期特殊アドレスが特殊ラ
ツチ450及び451にラツチされた後、デコードされ
て信号SPADを発生すべき特殊アドレスであることが
決定される。 この後における演算論理装置の動作において、アドレス
ラツチ99に蓄えられている特殊アドレスはアドレス演
算装置によつて増分される。増分されたアドレスは、同
じ特殊レジスタの次のニブルをアクセスするためのアド
レスラツチに戻される。このような特殊アドレスの増分
は、カウンタ69が増分されて比較器71で一致が取ら
れるまで続けられる。カウンタ69の増分は演算論理回
路の動作に応動して行われる。 初期特殊アドレスから
ニブル形成論理458によつてデコードされてフリツプ
フロツプ455に蓄えられたニブル数が演算論理装置に
よつて処理されたニブル数と等しくなつた時に比較器7
1が満足される。 次に第2図及び第20図において、比較器71は、リ
ードNIB1及びNIB2と、カウンタ69とから入力
を受信する。 このカウンタは、制御部が演算論理装置をオンにしてデ
ータの1つのニブルに対する動作を行わせる度にクロツ
クを受ける。2進値としてのカウンタ69の状態がリー
ドNIB1及びNIB2に現れている2進値と等しいと
、比較器は満足される。 特殊アドレスの場合には、論理演算装置は初期特殊アド
レスからデコードされた、レジスタ長に等しい数のニブ
ルに対して動作する。比較器71が一度満足されると、
これは特殊アドレス消去信号LASTNIBを発生し、
この信号により制御部は、特殊アドレスの発生と命令の
残りの部分の実行とを停止させる。 特殊アドレスがそ
の初期特殊アドレスから増分されるとき、レジスタの下
位、中間及び上位二ブルは、第17図の回路において論
理回路454によつて特殊アドレスの最下位2ビツトか
らデコードされる。 これにより、最下位2ビツトが00、01又は10であ
ることに応動してそれぞれ信号DAL,DAM及びDA
Hの1っが作られる。 第18図で、入出力論理回路4
59は初期特殊アドレスによつてどの入出力回路がアド
レスされているかを決定する。回路459からの出力は
第1図の直接メモリアクセス(DMA)制御回路85へ
印加される。入出力回路のアドレスが検出されると、特
殊アドレスデコーダは信号10−CO,10−C1及び
10−C2を付勢し、これによつて直接メモリアクセス
制御回路85を介しての入出カレジスタの読出し/書込
み動作が制御される。このような構成により、第3,1
7及び18図のデコーダ45は第1図の入出力ラツチ3
6、両方向性入出力バス伝送ゲート37、入力部伝送ゲ
ート38及びプログラム論理配列39のアドレスデコー
ドを行うことができる。 特殊アドレスデコーダ45で
デコードが行われ ると、レジスタ60,64,66,
78, 80及び82はデコーダ45からの他の信号
によつてア ドレスされる。 第3図及び第17図の制御線12 2上の信号は、任意
の時刻においてマルチプレク サ102内の12ケのゲ
ートのうちのどの4つを付勢するかを決定する。これら
は、データバス24からのデータをニブルごとに直列に
、アドレス演算バス100の4本のリード3組のうちの
1組ヘ転送するとともに、その逆の転送を行う。 レ
ジスタ31,33,35,60, 64,6 6, 7
8, 80及び82が直接アドレスモードにおいてデー
タの行き先きとしてアドレスされ、ラ ツチ36及び伝
送ゲート37及び38が行き先き としてアドレスされ
ると、特殊アドレスレジスタ 45は処理装置制御レジ
スタ33とともに、転送すべきニブル数を制御する。 特殊アドレスデコーダ45、制御用プログラム論理配
列70、アドレス演算装置62、アドレス ラツチ99
及び中央制御装置の各部が単一の特殊アドレスから引き
出される情報に応動してアドレスシーケンスを作り出す
。 このアドレスシーケンスは、単項及び2項形命令に対し
て複数のデータ行先きを持つ。 次に第16図のタイミ
ング図は第1, 2及び3図のマイクロコンピユータの
動作中に生じる種々の信号の間の関係を示している。 信号CLKは外部信号源から第1, 2及び3図の回
路に印加され、このマイクロコンピユータに゛よつて実
行される動作の相対的なタイミングを決定する。 信号CLKOUTは制御部で作られて、マイクロコン
ピユータ内の種々の回路及びマイクロコンピユータに接
続されたチツプ外の周辺回路を付勢するのに用いられる
。 命令終了信号百有は、制御部で作られる制御信号であ
り、1つの命令に伴う事象シーケンスの終了を示す。 ADDRと記した信号は、命令の実行中にアドレスバス
40上のアドレスが有効であるこ“とを示す。付随する
読出し及び書込み信号RD及びWRもアドレスが有効で
ある適切な時刻に示される。 信号RDは第2図の制御
部で作られ、読出し専用メモリ20、ランダムアクセス
メモリ22、入出力ラツチ36又はIRAM61のいず
れかからの読出し動作を付勢する。 信号WRも制御部で作られ、ランダムアクセスメモリ
22、入出力ラツチ36又はIRAM61のいずれかへ
の書込みを付勢する。 信号DATAINは、周辺装置からマイクロコンピユ
ータに読込まれたデータを表わす。 このデータは図示した時間において有効でなければなら
ない。 信号DATAOUTは、マイクロコンピユータ
から周辺装置へ読み出されたデータを表わす。 このデータは波形DATAOUTで示した時間において
有効である。 以上で機械の回路とタイミングについて
述べたが、その有利な動作は以下に述べる動作例から理
解されよう。 これらの動作においては、読出し専用メモリ20及びラ
ンダムアクセスメモリ22は、機械に対して適切なプロ
グラムを含む有効な情報を蓄えているものと仮定してい
る。読出し専用メモリ20は、初期化プログラムシーケ
ンスを16進アドレスX(000)からはじまるメモリ
のブロツク内に蓄えている。レジスタへの情報の蓄積に
ついては、必要に応じて説明する。また、機械は、アド
レスX(000)をプログラムカウンタ(PC)及びア
ドレスラツチに入れることによつてリセツトされている
ものと仮定している。動作例 第8図及ひ第9図において、この機械の動作例に対す
るシーケンス図、すなわち状態図が示されている。 シーケンス図の各ブロツクは、主制御論理配列の状態を
示すとともに、図の特定の機械サイクルで生じる機能を
示している。読者は以下に述べる動作例を見ながらシー
ケンス図を参照することにより、処理装置の動作がより
良く理解できるであろう。 最初の動作例として、デー
タを直接メモリアクセスポインタレジスタ78へ移動さ
せるものを考える。 情報は命令MO■によつて直接メモリアクセスポインタ
レジスタ78に蓄えられる。この命令の結果、アドレス
位置X(111)、X(112)及びX(113)から
のデータがアドレスX(FO8)から始まる直接メモリ
アクセスポインタレジスタに入れられる。後者のアドレ
スはレジスタ78の下位二ブルのアドレスである。これ
は特殊アドレ スデコーダ45によつてデコードされる
特殊アド レスであり、このデコーダは即値データの3
ニブルをレジスタ78へ伝送することを制御する。
このデータは読出し専用メモリ20から取り出 され、
データバスを介して一時レジスタ27へ転送される。さ
らに、変更を受けずに演算論理装置 30を通過して、
再びデータバスからアドレス演算バス100に印加され
、ここからレジスタ78に書込まれる。このデータは直
接メモリアクセス動作が開始するまでこのレジスタに蓄
えられる。詳しい動作シーケンスでは、制御用PLAが
次の動作に関する正しい情報をデコードするためのい
くつかの待ち状態が入る。 処理装置制御レジスタ33
に蓄えられた情報は、各命令が2ニブルオペランドの処
理を行うと判断するものと仮定する。 従つて、特殊レジスタアドレスを伴わないすべての命令
は2ニブルのデータの処理をし、データバスは2回使用
される。 初期化プログラムの終了後、マイクロコンピ
ユータは例に上げた命令MOVを処理できるようになる
。 処理装置の動作の最初の状態は、状態0−3である
。 アドレスラツチのスレーブに保持されているアドレスX
(10D)からの命令の最初のニブルが読出し専用メモ
リ20から取り出され、データバス24を介して命令レ
ジスタ32へ転送される。命令レジスタに蓄えられた情
報の第1ニブルは命令MO■のOPコードを表わしてお
り、この命令は直接メモリアクセスのための初期アドレ
スを・レジスタ78へ入れるものである。この状態にお
いて、処理装置はアドレスラツチに蓄えられているアド
レスを増分し、その結果X(10E)をプ口グラムカウ
ンタレジスタ60及びアドレスラツチ 99のマスター
へ蓄える。処理装置は次に状態0・−Cへ進む。 状態
0−Cは待ち状態である。 アドレスラツチのスレーブの情報が単にそのマスターへ
転送され、処理装置は状態0−4へ進む。 状態0−4
において、アドレスラツチのスレーlブ内のアドレスX
(10E)からの、命令の第2ニブルが読出し専用メモ
リ20から取り出され、データバスを介してデスチネー
シヨン/ソースレジスタ86へ転送される。 同時にOPコードがデコードされ、ラツチMDLAT及
びELATが動作する。特殊2項命令である命令MOV
に対しては、MDLAT及びELATはリセツトされた
ままである。ラッチMDLAT及びELATの状態に基
づいて第2のOPコードを読み出して来るべきか否かが
決定される。この命令に対しては、第2のOPコードは
読み出されない。2ビツトの行き先き・データ源コード
はそれぞれ直接アドレスで、即値データであることを示
している。 アドレスラツチのスレーブ内のアドレスが再び増分され
る。増分されたアドレスはプログラムカウンタレジスタ
60及びアドレスラツチのマスターに蓄えられる。命令
MOVでは第2のOPコードは不要であるため、処理装
置は状態0−6へ進む。 状態0−6は待ち状態であり
、アドレスラツチのスレーブ内のアドレスがそのマスタ
ーに転送され、処理装置は状態1−Fへ進む。 命令実行のこの時点において、0Pコードは完全にデ
コードされ、命令は識別されている。 ここでアドレス形成が開始する。2項命令に対しては、
データ行き先きアドレスが先に作られる。 状態1−Fにおいて、処理装置は内部ランダムアクセ
スメモリ61から、直接メモリアクセスポインタレジス
タ78のアドレスX(FO8)の上位ニブルを読み出す
。このニブルは、一時レジスタ93の上位二ブルに蓄え
られるが、このレジスタはデスチネーシヨン/ソースレ
ジスタ86に蓄えらたデータによつて指定されている。
処理装置は次に状態1−Bへ進む。 状態1−Bにおい
て、プログラムカウンタ60内のアドレスがアドレスラ
ツチのマスタに入れられて、プログラムの次のニブルを
指すが、これは行き先き、すなわちレジスタ78のアド
レスx(F08)の下部二ブルである。 ステツプは次に状態1−7へ進む。 状態1−7におい
て、命令の第3のニブル、すなわちアドレスX(FO8
)の下位二ブルが読出し専用メモリから読出され、デー
タバス24及びアドレス演算バスのセグメント118を
介して一時レジスタ93の下位二ブルヘ入れられる。 アドレスラツチのスレーブ内のアドレスがアドレス演算
装置62で増分され、増分されたアドレスはプログラム
カウンタ及びアドレスラツチのマスタに蓄えられる。処
理ステツプは状態1−9へ進む。 状態1−9では、命
令の第4ニブル、すなわちアドレスX(F08)の中位
二ブルが読み出され、レジスタ93の中位二ブルに蓄え
られる。これで行き先きアドレスの形成が終了する。す
なわち、直接メモリアクセスポインタレジスタ78のア
ドレスが一時レジスタ93に入れられる。アドレスラツ
チのスレーブのアドレスがアドレス演算装置で増分され
、その結果がプログラムカウンタとアドレスラツチのマ
スターへ蓄えられる。処理装置は状態1−Aへ進む。
状態1−Aでは、一時レジスタ92の内容がアドレスラ
ツチのマスターへ転送される。 このアドレスは現在実行しているプログラムでは無意味
である。命令レジスタが、この命令が2項命令であるこ
とを示す情報を含んでおり、フリツプフロツプD(第6
図)がリセツトされてゼロになつているために、処理装
置は状態1−Dへ進み、一時レジスタ92内にデータ源
アドレスを形成することを開始する。このデータ源アド
レスは、読出し専用メモリ内の即値データの直接アドレ
スである。 状態1−Dでは、一時レジスタ92内のア
ドレスがアドレスラツチのマスタヘ転送されるとともに
、フリツプフロツプD(第6図)がセツトされる。従つ
て処理装置が次に状態1−Aを通る時に状態1−Dを介
してループすることはない。状態1−Dは待ち状態であ
り、処理装置は状態1−Fヘ進む。 データ源アドレス
のモードが即値モードであるため、プログラムカウンタ
に蓄えられているアドレスが一時レジスタ92へ転送さ
れる。 このアドレスは、命令の第5ニブルを指しており、これ
はデータ源オペランドの第1ニブルである。この源オペ
ランドは直接メモリアクセスポインタレジス夕78に蓄
えるべきアドレスであり、このアドレスは直接メモリア
クセス動作における最初のメモリ位置を示すものである
。これは即値データに対するデータ源アドレスの形成で
あるため、処理装置は状態1−Aへ進む。 この時点で
処理装置はデータ源オペランドの読出しを開始すること
が可能となる。 状態1−Aで一時レジスタ92に蓄えられていたアドレ
スがアドレスラツチのマスターに転送される。これは命
令の第5ニブルのアドレス、すなわち即値データの第1
ニブルのアドレスである。このアドレスX(111)は
、直接メモリアクセスのための初期アドレスがここから
取り出されるアドレスである。0Pコードは2項命令で
あることを示しており、またフリツプフロツプD(第6
図)がセツトされているため、このデータを得ることが
できる。 処理装置は状態3−9へ進む。 状態3−9では、アド
レスX(111)の内容が読出し専用メモリから取り出
され、データバスを介して一時データレジスタ27へ転
送される。 データ源アドレスは特殊アドレスではないために、第1
7図及び第18図の特殊アドレス回路及びニブル重畳回
路は動作していない。レジスタ33内のデータは処理す
べきニブル数を決定する。アドレスラツチのスレーブ内
のアドレスはアドレス演算装置を介してマスタヘ転送さ
れる。処理装置は状態3−0へ進む。 状態3−0では
、アドレス演算装置62が付勢されてスレーブ内のアド
レスを増分し、その結果を一時レジスタ92及びマスタ
ーに蓄える。 この増分は、複数ニブルオペランドを予想して行われる
。処理装置は状態2−2へ進む。 状態2−2では、増
分されてアドレスラツチのスレーブに蓄えられていたア
ドレスが、ブログラムカウンタ60とマスターへ転送さ
れる。 これは、現在の命令に対する演算論理装置の動作が完了
したかも知れないことに対する準備である。この時には
プログラムカウンタ内のアドレスは、次に続く命令の第
1ニブルを指すことになる。処理装置は状態2−3へ進
む。 状態2−3では、直接メモリアクセスポインタレ
ジスタ78の下位二ブルアドレスであり、一時レジスタ
93に蓄えられていた12ビツトアドレスX(F08)
がバス100を介して一度にアドレスラツチ99のマス
タヘ転送される。 このアドレスはレジスタ78の下位二ブルのアドレスで
あるため特殊アドレスであり、第17図のフリツプフロ
ツプ450がセツトされて第17図及び第18図の特殊
アドレス回路が駆動される。レジスタ78の下位二ブル
は制御線DP及びDALによつてアドレスされる。制御
線SPADは高レベルであり、デスチネーシヨン/ソー
スレジスタ86からの信号はデータ行き先きモードは直
接アドレスであることを示している。この時点で第18
図のニブル重畳回路は、リードGB1及びGB2から印
加されるレジスタ33のニブル設定値の用意を開始する
が、制御線LDTA上の付勢信号を必要とする。制御器
70からの信号が制御器カウンタ69を増分させて、オ
ペランドの1つのニブルに対する演算論理装置の動作が
ほぼ終了したことが示される。処理装置は状態2−4へ
進む。 状態2−4では、行き先きオペランドがレジス
夕78の下位二ブルから取り出され、バス100及びデ
ータバス24を介して一時データレジスタに転送されて
信号LDTAを付勢する。 これによつて第18図のニブル重畳回路が駆動される。
マルチプレクサMUXCは、その入力GB1及びGB2
から、特殊アドレス入力RN1及びRN2へ切換えられ
る。この特殊アドレスはレジスタ78であり、これは3
ニブルから成るため、ニブル重畳マルチプレクサMUX
Cはこの命令の実行終了まで上記のように切り換えられ
たままとなつている。終了すると制御用PLAからの信
号CLRO−6によつてラツチ回路456がクリアされ
る。アドレスラツチのスレーブにあるレジスタ78の下
位ニブルのアドレスは、そのマスタヘ転送され、処理装
置は状態2−0へ進む。 状態2−0では、アドレスラ
ツチのスレーブに蓄えられている行き先きアドレスが増
分されてX(FO9)になり、複数ニブル操作の場合に
備えて一時アドレスレジスタ93に蓄えられる。 演算論理装置がオンになつて、一時レジスタ27内のデ
ータが変更を受けずに演算論理装置に現れるように制御
する。この命令の例におけるこの状態では、レジスタ2
6内のオペランドは演算論理装置ノの出力には影響を与
えない。処理装置は状態2ー 1へ進む。 状態2−1
では、演算論理装置はオンに保たれ、その出力はデータ
バス、マルチプレクサ10 2及びバス100を介して
、アドレスラツチのスjレーブによつてアドレスされる
位置へ転送される。 これは、直接メモリアクセスポインタレジス 夕78の
下位二ブルのアドレスX(FO8)である。アドレスラ
ツチのスレーブ内のアドレスx(F08)はそのマスタ
ーへ転送される。フ 上で述べた演算論理動作の終了時
において、第 2図及び第20図の比較器は制御カウン
タ69の状態を、第18図のニブル重畳回路で与えられ
るニブル数と比較する。 データの行き先きは3ニブルレジスタであるため、ニブ
ル重畳回路は3ニブル動作を要求しているが、1ニブル
動作しか終了していない。処理装置は状態1−Aへ戻る
。 この後オペランド取出し及び演算論理装置の動作が
、状態1−Aから状態3−9、3−0、2ー2、2−3
、2−4、2−0、及び2−1を介して2回繰り返えさ
れる。しかし多少の違いがある。 最初に状態1−Aが
繰返えされた時に、一時レジスタ92から読み出される
アドレスはx(112)である。 読出し専用メモリのこのアドレスから取り出されたオペ
ランドは、信号DAMの制御の下でバス100の中位リ
ードを介してレジス夕78の中位二ブルに入れられる。
このレジスタ78の中位二ブルのアドレスは、状態2−
0において、特殊アドレスデコーダ45、制御カウンタ
69、比較器71及び制御用プログラム論理配列70で
作られる信号に応動してアドレス演算装置で自動的に作
られる。 2回目の繰返しの時に一時レジスタ92から
読出されるアドレスはX(113)である。 このアドレス位置から取り出されたオペランドは、信号
DAFIの制御のもとでバス100の上位リードを介し
てレジスタ78の上位二ブルに書込まれる。直接メモリ
アクセスポインタレジスタ78の上位ニブルのアドレス
も、同じ回路の組合せによつて自動的に作られる。 直
接メモリアクセスポインタレジスタの中位及び上位二ブ
ルにオペランドを書込むための上記の2回のループにお
いて、第18図のニブル重畳回路が駆動されて、3ニブ
ル動作を要求する。 第2図及び第20図の比較器71は、ニブル重畳回路か
らの入力と、カウンタ69で数えられた動作数とをチエ
ツクする。3回目のループの終了時において、比較器は
満足され、特殊アドレス消勢信号LASTNIBを発生
し、処理装置は状態2−1から状態0−1へ進む。 状態0−1は最初の命令の最後の状態である。 プログラムカウンタレジスタ60内のアドレスは、次の
命令の第1ニブルをアドレスする準備のため、バス10
0からアドレスラツチのマスタヘ転送される。次いで処
理装置は、次の命令の最初の状態である状態0−3へ進
む。 以上は、本発明の一実施例について説明したもの
である。
に説明する図面とともに読むことによつて完全に理解さ
れるであろう。 第1, 2及び3図は、第4図のように接続した時、マ
イクロコンピユータのブロツク図を示し、第5図はデー
タバス回路の論理回路図を示し、第6図は命令レジスl
夕・レコーダ・ラツチの論理回路図を示し、第7図は第
8図及び第9図の接続を示し、これらは第 1, 2及
び3図のマイクロコンピユータで実行される命令の動作
シーケンスを示す状態図を形成し、第10図は状態カウ
ンタ及びマルチプレクサの論理回路図を示し、第11図
はデコーダの論理回路図を示し、第12図は伝送ゲート
マルチプレクサの論理回路図を示し、第13図及び第1
4図は第15図のようにつながれてラツチ、バス及びゲ
ートを含むアドレス演算装置の論理回路図を示゛し、第
16図は第1乃至3図のマイクロコンピユ−夕のタイミ
ング図を示し、第17図及び第18図は第19図のよう
に接続されて特殊アドレス回路及び特殊ラツチ装置の論
理回路を示し、第20図は比較器の論理回路図を示す。
詳細な説明 第1, 2及び3図において、単一の相補形金属酸化
物半導体/大規模集積回路(CMOS/LSI)チツプ
上に製造されたマイクロコンピユータのブロツク図が示
されている。 チツプ上には、読出し専用メモリ20とランダムアクセ
スメモリ22が含まれ、これらは4ビツトのチツプ内デ
ータバス24及び一連の一時レジスタ(TA..TB及
びAB)26,27及び28を介して4ビツトの並列演
算論理装置(ALU)30に接続されている。いくつか
の他のチツプ内レジスタがチツプ内データバス24に接
続されており、これらは使用者によつてアドレス可能で
ある。マイクロコンピユータの融通性及び効率を上げる
ために、多くの入出力回路及び直接メモリアクセス回路
がチツプ上に含まれている。メモリとレジスタについて
はより詳しく後述する。 主として第2図に示した制御
部は、読出し専用メモリ20又はランダムアクセスメモ
リ22から供給される命令の機能に従つて要求されるマ
イクロコンピユータの一連の動作を実行する。 条件レジスタ(CR)31の内容は演算論理装置30で
行われる動作の結果に応じて変えられる。 演算論理装
置30は4ビツトの並列演算方式を取つているが、単一
の命令に対して、単一又は複数のニブルオペランドに対
する演算又は論理操作を行うことができる。 命令レジスタ(IR)32及び処理装置制御レジスタ(
PSR)に蓄えられた情報に応じて、第2図の制御部は
単一又は複数のニブルオペランドに対する操作のモード
及び形を決定する。基本的には命令レジスタに蓄えられ
た0Pコード語が、指定されたデータに対する処理シー
ケンスを決定する。 このシーケンスは、処理装置制御
レジスタ33に蓄えられている情報に応じて変えられる
。 特に複数ニブルオペランドに対する操作は、処理シーケ
ンスのこのような変更の結果として行われる。この処理
シーケンスの変更と、処理中に出合う特別のアドレスに
応じて得られる復号された制御信号とにより、制御部は
命令レジスタに蓄えられている命令によつて処理される
データのニブル数を変えることができる。このような特
別のアドレスの生成と、そこから得られる制御信号の復
号については後で詳しく述べる。メモリ メモリは、主としてプログラムの蓄積に用いられる読
出し専用メモリ20と、主としてデータの蓄積に用いら
れるランダムアクセスメモリ22とから成る。 読出し専用メモリ20は、制御部とともに第2図に示
されているが、これは、このメモリが主として機械の動
作の実行を制御するための命令を与えるものであるため
である。 読出し専用メモリのプログラム作成はマスクレベルで行
われ、その後変えることはできない。 ランダムアクセ
スメモリ22は、入出力回路とともに第1図に示されて
いるが、これはランダムアクセスメモリが、入出力回路
に接続され第1図の左側に示されている複数個の周辺装
置A,B,C,D及びEとの間でしばしばデータの転送
を行うためである。 アドレス可能レジスタ マイクロコンピユータは異つた構成のレジスタを多数
含み、種々の機能を実行するのに用いられる。 これらのレジスタのいくつかについてはすでに述べたが
、まだ述べていないレジスタもある。すべてのレジスタ
について後で詳しく述べる。第 1, 2及び3図に示
したマイクロコンピユータは、10ケのユーザアドレス
可能レジスタを含んでいるが、多くのマイクロコンピユ
ータと異り、予め割当てたアキユムレータは無い。ユー
ザアドレス可能レジスタ ユーザアドレス可能レジスタには、次のものがある。 条件レジスタ31は、条件レジスタ自体が行先きとな
つている時を除き、演算又は論理動作の結果得られるデ
ータの状態、又は条件、を示す信号を蓄えるための4ビ
ツトの双安定ラツチ回路である。条件レジスタと条件ス
テアリング回路54とが、演算論理装置30と内部デー
タバス24との間に挿入されている。演算論理装置及び
内部データバスはともに4ビツトデータを並列に処理す
るように構成されている。条件レジスタはアドレス可能
であり、データバスから置数又は読出しのためにアクセ
スできる。′6フラグ5′と呼ぶ状態信号は、ゼロ、パ
リテイ、桁上げ、及びオーバフローの各フラグから成る
。算術演算動作は、この4つのフラグのすべてに影響を
与えるデータを発生するが、論理動作ではゼロ及びパリ
テイフラグのみに影響するデータを発生し、また条件命
令はどのフラグにも影響を与えない。このマイクロコン
ピユータは種々のニブル数のオペランドに対して動作す
るため、フラグ信号を発生して蓄える時に扉は、誤りの
ある中間のフラグ信号はすてられる。一群のフラグ制御
回路すなわち条件ステアリング回路54が、マイクロコ
ンピユータで実行されるすべての演算論理動作に対して
、この正しい状態情報を発生する。この状態情報あるい
はプログラム制御によつてデータバス24から置数され
る情報のいずれかが条件レジスタ31に蓄えられる。
条件レジスタ内で、ゼロフラグ回路構成は全ゼ 口論理
回路を含み、これは複数ニブルデータを正 しく扱うた
めの帰還路を持つている。ある論理及ノびタイミング信
号が蓄えられた全ゼロ信号をラツチ回路へ印加して蓄積
とデータバス24への読出 しを可能とするが、他のラ
ツチは後の処理条件によつて状態を変えることができる
。 さらに条件レジスタにおいて、パリテイフラツグ
回路も複数ニブルを扱うための帰還構成を持つている。 ラツチ回路は、保持と、プログラム制御によつてデータ
バス24へ読み出すためにパリテイ信号を蓄える。 さ
らに条件レジスタにおいて、桁上げフラグ回路は、演算
論理装置30の算術演算の結果発生する桁上げ信号を受
信して蓄えるためのマスタスレーブラツチ回路を含んで
いる。 プログラム制御に応動して、スレーブラツチに蓄えられ
た桁上げフラグがデータバス24へ読出される。 さら
に条件レジスタにおいて、オーバフローフラツグ回路は
、演算論理装置30で発生するオーバーフロー信号によ
つて制御されるラツチ回路である。 前述のように、条件レジスタはマドレス可能であり、
内部データバス24上の情報を書込むことも可能である
。 逆に、情報が条件レジスタ31に一担蓄えられると、こ
の情報はプログラム制御の下に内部データバス24に読
出すことができる。 12ビツト長のプログラムカウン
タ(PC)60は、次に実行すべき命令のアドレスを蓄
える。このカウンタは通常の方法で動作し、その内容は
処理の開始時において托進アドレスX(000)にセツ
トされる。その後、たとえばジヤンプ命令等の命令によ
つてその内容が変えられない限り、アドレス演算装置(
AAU)62によつて各命令ごとにある値だけ増分され
る。この増分は所定のプログラムシーケンスが完了する
まで続けられる。 メモリポインタレジスタ(PO及び
P1)64及び66は8ビツトのレジスタであり、メモ
リ位置を間接アドレスするのに用いられる。ポインタと
して用いられる時、これらは指されているアドレスの下
位の2ニブルを蓄える。 第2図及び第5図に示したよ
うに、処理装置制御レジスタ(PCR)33は数ビツト
のレジスタであり、その2ビツトGB1とGB2により
プログラマはオペランド長を4、8、12、又は16ビ
ツトのいずれかにセツトすることができる。 処理装置制御レジスタ33はデータバスに接続され、ア
ドレス可能なメモリスペースのアドレスが与えられてい
る。プログラマの要求に従つて時々レジスタ33に情報
が蓄えられる。典型的なプログラムでは、処理装置制御
レジスタ33に一度しか数値を入れない。゜“移動゛命
令(MOV)がレジスタ33に置数するのに用いられる
。置数すべきデータは特定のアドレスからレジスタ33
のアドレスヘ移動される。このデータは、後で別の“゜
移動゛命令によつて変えられるまで、レジスタ33に蓄
えられている。プログラムによつては、同一のルーチン
内でレジスタ33を何度も書き変える。 処理装置制御
レジスタに蓄えられた情報は、マイクロコンピユータに
おけるデータ処理の制御を助ける働きをする。 オペランド長を制御するため・に処理装置制御レジスタ
に蓄えられている2ビツトGB1とGB2は、伝送ゲー
トマルチプレクサ68を介して制御用プログラム論理配
列(PLA)・ランダム論理回路70の入力に印加され
、ここでマイクロコンピユータで実行される動.作シー
ケンスを決定するための助けとして用いられる。 処理装置制御レジスタに蓄えられている2ビツ トの
データは、各命令の実行時にオペランドに含まれるニブ
ル数を決定する。 前述のように、チツ゛プ内データバス24及び演算論理
装置30は一度に4ビツトしか扱わないが、このマイク
ロコンピユータは4、8、12又は16ビツトのいずれ
かのオペランドを処理できるように構成されている。こ
れは4ビツトを同時に扱う直列方式によつて達成される
。 第3図において、演算論理装置30は制御部からの
信号に応動して適当な回数のステツプ動作を行つて種々
の長さのオペランドに対処する。 演算処理装置が任意のフラツグの更新を必要とする動“
作を実行する度に、結果としてできる正確な条件情報が
条件レジスタ31に蓄えられるとともに、動作が制御用
PLA・ランダム論理回路70からの信号によつてカウ
ンタ69で計数される。制御部では、比較器71がカウ
ンタ69の状態を、処理装置制御レジスタ33に蓄えら
れ特殊アドレスデコーダ45によつて比較器71に印加
される2ビツトと比較する。カウンタの状態が処理装置
制御レジスタに蓄えられた数と等しくないと、制御部は
演算処理装置30を含む処理装置の動作を繰返えさせて
、必要に応じて桁上げを伝搬させると ともにパリテイ
、ゼロ及びオーバーフロー情報を更新させる。カウンタ
69の状態が処理装置制御レジスタ33に蓄えられてい
る数と等しくなる と、複数ニブルオペランドに対する
動作が完了したことになり、制御部は命令実行の次のフ
エーズに進む。この時、条件レジスタ31は、上記の複
数ニブルオペランドに対する処理の結果得られるフラグ
に関する正しい情報を含んでいる。 前述のように、処
理装置制御レジスタ33の書き替えはひんぱんではなく
、1つのプログラムで1回しか書込まれないことも多い
。 一度書込まれると、その制御データは処理装置制御レジ
スタ内に維持され、処理装置の論理処理の一部を決定す
るのに用いられる。この、処理装置制御レジスタに蓄え
られた制御データは、処理装置制御レジス夕に異つた制
御データが書込まれるまでの間、処理の制御に貢献する
。プログラマは処理問題を解くための必要性に応じて処
理装置制御レジスタヘの制御データの書込みと書替えを
行う。このようにしてマイクロコンピユータの論理は時
々再構成され、その命令セツトの機能が拡張される。
第3図の直接メモリアクセスポインタ(DP)78は、
アドレス可能な12ビツトレジスタであり、これは直接
メモリアクセス動作と、外部事象を計数するための有効
なカウンタとしての動作の両方を行う。直接メモリアク
セス動作に対しては、そこに蓄えられた12ビツトのデ
ータが、直接メモリアクセス転送における情報の発生源
又は行き先きとなる任意のメモリ位置を指すのに用いら
れる。繰返す外部動作のためのカウンタとして用いられ
る時には、レジスタ78に12ビツトのデー夕が置数さ
れ、このデータは外部で発生するクロツクサイクルごと
にアドレス演算装置62によつて増分される。この外部
動作はアドレス演算装置62からのオーバーフロー信号
に応動して終了する。 4ビツトのページポインタレジ
スタ(PG)80は、アドレス可能レジスタであり、ラ
ンダムアクセスメモリ22、他の9ケのアドレス可能レ
ジスタ、及び入出力回路36, 37及ひ38をアドレ
スする時に用いられる12ビツトのアドレスの中間のニ
ブルを供給する。 このページポインタレジスタ80に置数し、後でメモリ
の16ニブルのブロツクを識別するためにこの内容を用
いることにより、メモリのそのブロツク内の任意の位置
が単一の命令によつて極めて効率良くアドレスされる。
下位二ブルは、読出し専用メモリ20からの命令によつ
て供給される。アドレスの上位二ブルは、 托進のFで
あり、アドレス演算装置62のハード ウエア番こよつ
て供給される。 12ビツトのスタツクポインタレジ
スタ(SP) 82はアドレス可能レジスタであり、通
常のプツ シユダウンスクツク動作のために用いられる
。 ス タツクポインタに入れられたデータは、スタツク
に最後に入れられたデータをアドレスするのに用 いる
ことができる。プログラム制御のもとで、ス タツクポ
インタ内のデータは、情報項目がスタツ クに積まれる
か、あるいはスタツクから読み出さ れる度にアドレス
演算装置62によつて増加ある いは減少させられる。
第1図の入出力制御レジスタ(IOCR)35 は
、アドレス可能な6ビツトレジスタであり、プ ログラ
ム制御の下で、マイクロコンピユータに対 して入出力
するデータの流れを制御するための情報を蓄える。 制御レジスタ35に蓄えられた情報 のうち、3ビツト
は入カゲート37に印加され、 1ビツトはマルチプレ
クサ(MUX)52に印加 されて、ゲート37及びM
UX52を流れるデー 夕を制御する。制御レジスタ3
5に蓄えられた情報の残りの2ビツトは、直接メモリア
クセス制御回路(DMA)85に印加され、この回路が
直列又は並列動作のいすれか、及び入力又は出力動作
のいずれかを制御するかを決定する。 アドレス可能ア
キユムレータレジスタ 前述のように、予め割当てられたアキムレータ は存
在しない。 その代り、アドレスモードによつ て、ランダムアクセ
スメモリ22内のレジスタがノ種々の命令に対してアキ
ユムレータの機能を果す。ランダムアクセスメモリ内の
このようなレジ スタを用いることにより、マイクロコ
ンピユータ は、永久的に割当てられたアキユムレータ
を通る という中間ステツプを用いることなくメモリか
らテメモリへのデータ転送を行うことができる。これ
らのレジスタは多くの算術及び論理機能におい て、デ
ータ源及び行き先きレジスタとしても機能する。 アド
レス方式 フ 読出し専用メモリ20、ランダムアクセスメモ リ
22、入出力回路及び前述のアドレス可能レジ スタの
すべての蓄積位置は、アドレス可能なメモ リ空間の位
置に割当てられている。 各アドレスは 1ニブル(4ビツト長)を蓄える。アド
レス空間はw進アドレスでO乃至409\又はxで托進
数を表わすとき、X(000)乃至X(FFF)となる
よう構成されている。読出し専用メモリはアドレスX(
000)で始まる下部アドレスを用い、ランダムアクセ
スメモリは、アドレスX(FFF)で終る上部アドレス
を用いる。10ケのアドレス可能レジスタ及び入出力回
路には、ランダムアクセスメモリに割当てられた最低ア
ドレスよりも下位のアドレスが割当てられており、これ
らはランダムアクセスメモリと同じようにアクセスする
ことができる。 レジスタとして用いられる各ランダムアクセスメモリロ
ケーシヨンのアドレスは、最上位桁ニブルが托進のFに
なつている。 オペランドの有効なアドレスを形成する
のに種々のアドレスモードがある。 データの行き先きアドレスを形成するのに4つのモード
があり、またデータ源のアドレスを形成するのにも4つ
のモ−ドがある。 行き先きアドレスモードは次の通り
である。 モード0−アドレスは16進数Fの4ビツト数値
と、ページポインタレジスタ80から 取
り出される4ビツトのページポイン タと、命
令により与えられる1ニブル とを連結するこ
とによつて作られる。モード1一直接アドレスモード2
−アドレスはメモリポインタレジスタ6 4の
内容である。 モード3−アドレスはメモリポインタレジスタ6
6の内容である。 データ源アドレスモードは次の通りである。 モードO−アドレスは16進数Fの4ビツト数値
と、ページポインタレジスタ80から 取
り出される4ビツトのページポイン タと、命
令により与えられる1ニブル とを連結するこ
とによつて作られる。モード1一直接アドレスモード2
−アドレスはメモリポインタレジスタ6 4の
内容モード3一即値デー夕 特殊アドレスデコーダ45はアドレスラツチ99から
アドレスバス40を介して印加されるアドレスを受信す
る。 このデコーダは、プログラムの実行中に、条件レジスタ
31、処理装置制御レジスタ33、入出力制御レジスタ
35、入出力ラツチ36、両方向性入出力部37、入力
部38、プ ログラムカウンタ60、メモリポインタレ
ジスタ 64及び66、直接メモリアクセスポインタレ
ジ スタ78、ページポインタレジスタ80及びスタ
ツクポインタレジスタ82のために、特殊アドレ スを
、レジスタを識別しまた駆動する信号に変換する。他の
レジスタ マイクロコンピユータの他のレジスタは命
令レつジスタ(IR)32と、デスチネーシヨン/ソー
スレジスタ(DS)86を含んでいる。 第2図及び第5図において、命令レジスタ32 は、
4ビツトラツチ回路であり、チツプ内データバス24に
接続されて、各命令が実行される時に70Pコードの1
ニブルを受信して蓄える。 各命令 の最初のニブルが常に命令レジスタに蓄えられ
る。このOPコードのニブルが蓄えられると、命令レ
ジスタ32はこのコードを制御部内の命令レ ジスタデ
コーダ・ラツチ90に印加して、現在のノ命令の実行に
おける動作シーケンスの一部を制御 させる。 次に
、第2図及び第6図において、OPコード の第1ニブ
ルの選択されたものに応じて第6図の 回路で作られる
情報が、この命令の間、命令レジ スタデコーダ・ラツ
チ90内のラツチELAT67 0及びMDLAT61
0に蓄えられ、0Pコードの他のニブルも用いられるこ
とが示される。 各命令 の第2のニブルは、常に第2図及び第5図のデ
ス チネーシヨン/ソースレジスタ86に蓄えられ る
。良く使われる命令群では、この第1及び第2 のニブ
ルによつて、所定の実行シーケンスを記述 するのに十
分の情報が与えられる。 命令レジスタデコーダラツ
チ90内のラツチELAT及びMDLATに蓄えられた
情報に応動し、 ある命令では命令の第3のニブル(O
Pコードの第2のニブル)がメモリから取り出され、O
Pコ ードの第1のニブルの代りに命令レジスタ32に
蓄えられる。 このOPコードの第2のニブルは、 この命令の間動作
シーケンスの部分的制御を続行 する。このように、第
1のOPコードをラツチELAr及びMDLATに蓄え
、続いて命令レジスタ 内の第1のOPコードを第2の
0Pコードて置きか えて動作シーケンスの部分制御を
続行することを 2重0Pコード動作と呼ぶ。2重0P
コード動作を行う任意の命令では、命令の第3のニブル
が第2のOPコードであり、これが第1のOPコードの
代りに命令レジスタ32に蓄えられる。 第6図において、命令レジスタデコーダラツチ90は
2つのラツチ(ELAT及びMDLAT)630及び6
10を含んでおり、これらは命令レジスタ32に蓄えら
れている第1のニブルの特定のコ−ドに応動してナンド
ゲート群で作られる情報を蓄える。 ラツチELAT及びMDLATの各々は、2重0Pコー
ド動作を示す異つたOPコードの組合せに応動してセツ
トされる。これら2つのラツチのいずれかに割当てられ
たOPコードが命令の第1ニブルにおいて命令レジスタ
に蓄えられていないと、このラツチは命令終了までリセ
ツトされたままとなる。一方、これらのラツチの1つに
割当てられたOPコードが第1ニブルにおいて命令レジ
スタに蓄えられていると、そのラツチは命令の期間中セ
ツトされたままとなる。ラツチELAT又はMDLAT
が一度セツトされると、これによつて制御部はOPコー
ドの第2のニブルを読出し専用メモリから取り出して第
1のニブルの代りに命令レジスタ32に書込む。ラツチ
ELAT又はMDLATのセツト状態は、命令レジスタ
32に蓄えられているOPコードの第2のニブルととも
に、任意のアドレス可能蓄積位置から取り出される任意
のデータ語に対するその後の処理を制御する。命令レジ
スタデコーダラツチ90内のいずれかのラツチがセツト
されると、制御部は処理装置を特別のステツプへと進ま
せる。 第2図及び第5図に示したように、デスチネー
シヨン/ソースレジスタ86は4ビツトラツチ回路であ
り、チツプ内データバス24に接続されて、各命令の実
行時に、アドレスモードデータである1ニブルを受信し
て蓄える。 前述のように、各命令の第2のニブルはデスチネーシヨ
ン/ソースレジスタ86に蓄えられ、その命令の実行中
伝送ゲートマルチプレクサ68に印加される。このデー
タのうちの2ビツトはページポインタレジス夕80に蓄
えられた情報とともに用いられる時に、マルチプレクサ
68を介して制御用プログラム論理配列70に印加され
、命令の実行中にブロツク内の16ケのアドレスのどれ
をデータの行き先きとして用いるかを決定するのに用い
られる。デスチネーシヨン/ソースレジスタ86からの
デー夕の他の2ビツトは、ページポインタレジスタ8
0からの情報とともに用いられる時にマルチプレクサを
介してプログラム論理配列70に印加され、命令が2項
演算命令である時にブロツク内の16ケのアドレスのど
れをデータ源レジスタとして用いるかを決定するのに用
いられる。命令が2項演算形でない時には、後者の2ビ
ツトは制御部のための他の制御情報を与える。 命令レ
ジスタデコーダ・ラツチ90は2つのフ リツプフロツ
プ610及び630を含み、命令レジスタ32に蓄えら
れている特定のコードに応動して論理回路603, 6
23で作られる情報を蓄える。 これらのフリツプフロツプの各々は異つたOPコードの
組合せに応じてセツトされる。一方のフリツプフロツプ
610はセツトされると、命令が単項形又は2項形のい
ずれかであることを示す。他のフリツプフロツプ630
は命令が条件付ぎ飛越し命令であることを示す。制御部 第2図に示すように、このマイクロコンピユー夕の制
御部は、読出し専用メモリ20及びレジス夕32,33
、及び86を含み、これらはチツプ内データバス24に
接続されている。 制御部はさらに、制御用プログラム論理配列・ランダム
論理 70、状態カウンタ96、第6図に示されている
ような命令レジスタデコーダラツチ回路90、及び種々
の他の論理回路を含んでいる。1つの命令に対して実行
される事象のシーケンスは、この制御部によつて制御さ
れる。 制御用プログラム論理・配列の出力は、マスター/スレ
ーブ構成によつてラツチされる。マイクロコンピユータ
は、第7図のように接続される第8図及び第9図に示し
た記号を含む四角によつて表わされる一連の状態ステッ
プを実行する。 第8図及び第9図において、各状態は
、例えば最上部の2つの四角内に“゜0−3゛及び0−
C゛とあるように、四角形内の上部に記されているコー
ドによつて識別する。 各状態は第2図及び第1 0図に示した状態カウンタ9
6の出力によつて順ノに決定される。 動作の取り込み
シーケンスにおいて、2つのニブルがメモリから取り出
され、それぞれ状態0ー 3において命令レジスタ32
に、また状態0−4においてデスチネーシヨン/ソース
レジスタ86に書込まれる。 第1のニブルはOPコードであり、次に続く事象シーケ
ンスの基本的な制御のために用いられる。第2のニブル
は、命令を実行する時に用いられるオペランドの行き先
き及びデー夕源に関するアドレス情報を含んでいる。デ
スチネーシヨン/ソースレジスタ86が制御信号LDD
Sによつて置数される度に、レジスタ28にも置数され
る。一部の動作について前述したように、第3のニブル
が取り出され、状態0−5において同じ命令レジスタに
書込まれ、この後の事象シーケンスの制御のために用い
られる。 取り込みシーケンスが終了すると、命令レジ
スタデコーダ・ラツチ回路90によつて作られる実行べ
クトルが状態カウンタ96に入れられ、この後の正しい
処理シーケンスが開始される。第2図及び第10図のマ
ルチプレクサ(MUX)97は、命令レジスタデコーダ
・ラツチ回路90からの情報、あるいは制御用プログラ
ム論理配列70からの情報のいずれを状態カウンタ96
に印加するかを決定する。 第2図及び第10図に示し
たように、状態カウンタは6ビツトのマスタースレーブ
ラツチであり、主として制御用プログラム論理配列70
で作られる状態情報を一時的に保持するが、場合によつ
ては実行べクトル情報が配列70からの情報の代りに状
態カウンタに入れられる。 この後者の事象は、状態カウンタ96の状態に応動する
デコーダ98によつて決定される。状態0−6が生じる
と、デコーダ98は信号をマルチプレクサ(MUX)9
7に印加して、制御用配列70の通常の4つの出力の代
りに、実行べクトルを状態カウンタに印加させる。 命令が単項又は2項演算形の命令であると、1つ又は
それ以上のアドレスが形成されて、第3図の1対の一時
アドレスレジスタ(TO及びT1)92及び93の一方
又は両方に入れられる。 一度アドレスが形成されると、制御部は指定されたオペ
ランドを蓄積装置から取り出し、これらを演算論理装置
レジスタ26及び27の一方又は両方に書込む。次に演
算論理装置30が駆動されて適した機能を実行し、結果
を発生する。演算理論装置の動作の結果に従い、条件ス
テアリング回路54によつて処理された条件フラグが条
件レジスタ31にセツトされる。制御部の比較器71は
演算論理装置30がオペランドの他のニブルに対して処
理をすべきか否かを決定する。これは、カウンタ69の
状態を処理装置制御装置33に蓄えられているオペラン
ド長と比較することによつて行われる。オペランドの他
のニブルの処理を行うべき時には、制御部は別のニブル
を取りこみ、演算論理装置を必要な回数だけ駆動する。
命令の実行中、このような動作が続けられ、処理された
ニブル数が、処理装置制御レジスタ33に蓄えられたオ
ぺランド長を示す値に等しくなると終了する。制御用プ
ログラム論理配列 第2図の制御用プログラム論理配列
70は、たとえば197詳7月のSigneticIn
c.社のSigI1etiCSApp11cation
sNotesREPLAsの4乃至22頁に記されてい
るような公知のプログラマブル論理配列の論理機能を実
行する論理回路である。 第2図及び第10図に示したように、制御用プログラム
論理配列70は、状態カウンタ96をループして該配例
の入力に戻つている2つの出力と、マルチプレクサ97
及び状態カウンタ96をループして配列の入力に戻つて
いる4つの出力を持つており、マイクロコンピユータの
動作中配列の状態シーケンスを進めさせる。 第2図及
び第9図に示したように、マルチプレクサ97は8対4
のマルチプレクサである。 このようなマルチプレクサの構成と動作は公知であり、
例えばTexasInstruments.sInc.
社のSupp1ement to the ′ITL
Data Book forDesigr1Engin
eers1の初版のS−296頁及びSー29頂に示さ
れている。 第2図及び第10図に示されたように、状
態カウンタ96は6ケの入力と6ケの出力とを持つたマ
スタースレーブラツチである。 2つの入力SCOUT1及びSCOUT2は制御用プロ
グラム論理配列の出力から直接印加される。 他の4つの入力はMUX97から印加される。通常、M
UX97からの4つの入力は、制御用プログラム論理配
列の他の4っの出力SCOUT3−SCOUT6である
。状態0−6においてのみ、これら4つの入力は命令レ
ジスタデコーダ●ラツチ90からの実行べクトル出力E
■1−E■4に切り換えられる。 チツプ端子からの別
の入カリードは、外部リセツト信号EXRSTであり、
ユーザがマイクロコンピユータをリセツトする時に印加
される。このリセツト信号が印加されると、状態カウン
タの出力はすべてゼロになる。この出力によりリセツト
ルーチンが開始される。 第2図及び第11図に示した
ように、マルチプレクサ制御デコーダ回路77は2組み
の論理ゲー卜を含んでおり、これらは第2図及び第12
図のマルチプレクサ68内の2組みの伝送ゲートマルチ
プレクサのための制御信号を発生する。 これら各組のマルチプレクサは、制御信号の状態によつ
て開閉される3つの伝送ゲートを含んでいる。各組の3
つのゲートの1つのみが任意の時刻において情報を伝送
するよう付勢される。マルチプレクサ68の動作につい
ては後でより詳しく述べるが、以下では簡単にその動作
について述べる。マルチプレクサ68内の第1の組の伝
送ゲートA0,A1及びA2の各ゲートは、2ケの情報
をマルチプレクサ68内の第2の組のゲートの中の1つ
の伝送ゲートAの1対の入カヘ伝送することを制御する
。第2の組の伝送ゲートA,F1及びE2の各々は、3
ケ又は4ケの情報を制御用プログラム論理配列70の4
つの入カリードヘ伝送することを制御する。実行べクト
ル論理 第2図及び第6図に示したように、命令レジスタデコ
ーダラツチ90は制御部の命令レジスタ32と状態カウ
ンタ96との間に置かれている。 入力は、命令レジスタ、制御用プログラム論理配列及び
実行べクトル状態デコーダ98から印加される。命令レ
ジスタデコーダラツチ90から得られる出力の一部を実
行べクトルと呼ぶ。命令べクトルは4ビツトE■1−E
V4から成り、現在の命令をいかに実行し、現在のオペ
ランドをいかに処理するかを決定する。実行べクトルは
制御用プログラム論理配列70の出力の一部と合せられ
、命令実行の状態0−6における予め定めた時刻に状態
カウンタに書込まれる。 実行ベクトルは状態カウンタ
に入れられると、第8図及び第9図に定義されている状
態のうちのどれを次に実行すべきかを決定する。 実行べクトルによつて選択される各状態は、第8及び9
図では状態の上部に記号Xを付けて示されている。この
ような実行べクトルの動作により、第2図の制御部のた
めに不当に大きいチツプ面積を必要とすることなく、シ
ーケンス図の分岐における大きなフアンアウトを可能と
している。実行ベクトルを状態カウンタに入れることに
より、そうでないと制御用プログラム論理配列70に多
数必要な入力及び語線を除去することができる。 前述
のように、実行べクトルは制御用プログラム論理配列7
0の出力の一部の代りに状態カウン夕に入れられる。 実行べクトル状態デコーダ98は、状態カウンタ96の
状態に応動して、実行べクトルを制御用プログラム論理
配列からの出力の代りに状態カウンタに入れるべき正し
い時刻(状態0−6)を識別する。適当な付勢信号がデ
コーダ98からマルチプレクサ97へ印加される。この
ようにして状態カウンタに入れられた状態により、現在
の命令の残りの部分においてシーケンス図のどの分岐を
実行すべきかが決定される。アドレス演算装置、アドレ
スラツチ及びアドレスノくス 第3, 13及び14図
に示したように、アドレス演算装置62は12ビツトの
並列演算装置であり、メモリ位置のアドレス及び特殊ア
ドレスの形式を行うとともに、アドレスラツチ回路99
からこの入力に印加される任意の情報に1を加算したり
減算したりする。 装置62はアドレス機能のための組合せ論理回路である
。 基本的な増分及び減算機能の他に、アドレス演算装
置62は他の3つの機能を達成するよう構成されている
。 これら5つの機能は、制御用PLA・ランダム論理回路
70からの3つの制御信号F0B,F1B1及びF4B
に応動して制御される。 まず最初に、NOPコードに応動した時、装置62は何
もしない。さらに、トラツプ及び割込みコードに応動し
て、それぞれトラツプアドレス又は割込みアドレスが作
られる。これらのトラツプ及び割込みアドレスは、まず
アドレスラツチ99内のアドレスデータをすべてゼロに
リセツトし、次いで伝送ゲート111を消勢したままマ
スタを出力し、次に選択されたビツト位置にビットを挿
入しながらアドレス演算装置を介して全ゼロを通すこと
によつて作られる。このようなビツトの挿入は、リード
F0B,F1B及びF4Bに信号を印加することによつ
て行われる。これにより、割込みルーチンに対してアド
レスx(020)が、またトラツプに対してアドレスX
(010)が作られる。 第3, 13及び14図に示すように、アドレスラツ
チ99は、12ケの並列になつたマスタースレーブフリ
ツプフロツプから成り、アドレス演算バス100に現れ
るアドレスデータを受信して一時的にマスターに蓄える
よう構成されている。 このようなアドレスはメモリのためのものと、特殊レジ
スタのためのものがある。バス100上のデー夕は、(
a)データバス24からマルチプレクサ102を介して
、あるいは(b)レジスタ60, 64, 66,78
,80,82,92、及び93から、又は(c)アドレ
ス演算装置62から印加される。アドレスラッチのマス
ターに蓄えられたアドレスは、そのスレーブに転送され
て、アドレスバス40に印加される。マスタからスレー
ブへのアドレスの転送は各マシンサイクル毎に行われる
。 アドレスバス40は、12ビツトの並列バスであり
、アドレスラツチ99に蓄えられたアドレスを、特殊ア
ドレスデコーダ45及びアドレス演算装置62へ印加す
る。 このアドレスは、さらに読出し専用メモリ20及ランダ
ムアクセスメモリ22のアドレス入力及び入出力ラツチ
36に付随した1諸択1デコーダ106の12入力にも
印加される。アドレス演算バスの構造 第3図に示したように、アドレス演算バス100は1
鉢のリード線から成るバスであり、アドレス演算装置(
AAU)62、アドレスラツチ99、内部ランダムアク
セスメモリ(IRAM)61内のレジスタ、一時ランダ
ムアクセスメモリ(TRAM)73内のレジスタ、及び
マルチプレクサ102を相互に接続している。 あるアドレスは、データバス24からのデータの3つ
のニブルを連接することによつてマイクロコンピユータ
で作られる。 これらのニブルは、読出し専用メモリ20又はランダム
アクセスメモリ22から読み出されたものである。これ
らはニブル毎に直列にデータバス24に現れ、これらを
メモリ61又は73のレジスタの1つの対応する二ブル
位置に書込むことによつて連接される。 アドレス演算
バス100及びこれによつて接続されている回路は、マ
イクロコンピユータでデー夕を処理するのに用いられる
メモリアドレスを発生するために用いられる。一群の伝
送ゲート、111, 112, 113がバスリード中
に挿入されており、これによつてバスはセグメントに分
離することができる。伝送ゲート111,112及び1
13、及びマルチプレクサ102に印加される制御信号
に応じてバスセグメント115, 116, 117及
び118は相互に分離され、別のデータ源からの転送を
異つたセグメント毎に同時に行うことができる。このよ
うなデータの同時転送により、処理機能を行う際の動作
時間を短縮できる。特殊アドレスレジスタ 第3図の特殊アドレスレジスタ45は、アドレス可能
なメモリ空間と連続したアドレスを持つレジスタ31,
33,35, 60,64, 66, 78, 80
及び82のアドレスデコードを行う。 これらのレジスタは異つた長さを持ち、その長さはアド
レスバスより長い。特殊アドレスのすべては、データの
長さを示す情報を含んでいる。これらのアドレスはデコ
ード論理を簡単にするために割当てられている。直接ア
ドレスモードにおいて、レジスタがデータの行き先きと
してアドレスされると、特殊アドレスデコーダ45は、
アドレスをオペランドのニブル数に変換する。 これら
のレジスタのすべては、メモリ参照命令のすべてを使用
する。 もし特殊アドレスデコード機能がないと、余分のOPコ
ードをこのような命令のために用意しなければならない
。 次に第17図及び第18図において、特殊アドレス
デコーダ45の論理回路図が示されている。 アドレスラツチ99の出力はアドレスバス40を”介し
て特殊アドレスデコーダ45の入力に印加されており、
またアドレスの一部は特殊ラツチ45 1の入力にも印
加されている。アドレス情報は各マシンサイクル毎にク
ロツク信号P1Bによつて特殊ラツチ451に取り込ま
れる。アドレス情報の・一部は、このマシンサイクルの
残りの時間これらの特殊ラツチに保持され、このサイク
ル中にアドレスラツチ99に蓄えられたアドレスが変え
られても、特殊アドレスデコーダは、古い情報に応動し
続けることができる。ノ 特殊アドレスの割当てに従い
、これらのアドレスの上位6ビツトはすべて11110
0になつている。 印加されたアドレスがこのビツトパターンを持つている
と、フリツプフロツプ450がセツトされて、このマシ
ンサイクル中に特殊アドレス信号SPADを発生する。
この特殊アドレスが内部ランダムアクセスメモリ内の
レジスタのアドレスであると、このことがアドレスバス
リードADR5上の上位から7ビツ卜目のビツトによつ
て示される。 アドレスリードADR5上の情報は、ゲート452にお
いて信号SPADと結合されて1対のマルチプレクサM
UXA及びrViuxBを制御するための信号1SPA
Dとなる。 マルチプレクサMUXAは、デコード論理
453に対して、3つのアドレスリードADR2,.A
DR3及びADR4上の信号か、あるいは制御用プログ
ラム論理配列70からの3つのリードCRAM0,CR
AM1、及びCRAM2上の信号のいすれを印加するか
を選択する。 デコード論理453に印加された信号は、そこでデコー
ドされて、内部ランダムアクセスメモリ内に位置する特
殊レジスタの1つを選択する信号となる。通常の信号源
は、リードCRAM0,CRAM1、及びCRAM2上
の信号である。 マルチプレクサMUXBは、マルチプ
レクサ102の制御リードヘ印加する信号DAI.,D
AM1及びDAHとして、アドレスの下位2ビツトをデ
コードして得られる信号か、あるいは制御用プ口グラム
論理配列70からの信号のいずれかを選択する。 通常の信号源は配列70からの信号である。信号1SP
ADは、特殊ラツチ451に蓄えられたアドレスが内部
ランダムアクセスメモリ内の6ケの特殊レジスタの1つ
を直接選択するようにマルチプレクサMUXA及びMU
XBを切り換える。このような選択は、デコーダ453
内の3対6コード変換器によつて行われる。特殊ラツチ
に蓄えられているアドレスの他の部分は、第3図のマル
チプレクサ102の3組の伝送ゲートの1つを直接選択
するために用いられる。この3組の伝送ゲートの選択は
2対3コード変換器454によつて制御される。 マル
チプレクサMUXA及びMUXBはその出力を常時発生
している。 その入力信号は制御信号ISPAD及びISPADBに
よつて2群のうちの一方に切り変えられる。 第18図
で、任意の時刻において現在のオペランドの正確なニブ
ル数を決定するためのニブル重畳回路が存在する。 ニブルの正しい数を示す信号はマルチプレクサMUXC
の出力リードNIB1及びNIB2に現われ、これは比
較器71の入力に接続されている。マルチプレクサMU
XCへの入力は、処理装置制御レジスタ33からリード
GB1及びGB2へ、またフリツプフロツプ455から
リードRN1及びRN2へ印加されている。ラツチ4
56は、これら2つの入力のいずれをマルチプレクサM
UXCの伝送ゲートを介してリードNIB 1及びNI
B2へ印加するかを決定する。優先論理A回路457は
ラツチ456をセツトすべきか否かを決定する。このラ
ツチは特殊アドレス信号SPADと、信号LDTAと、
信号ADR5又はDSレジスタからの情報のいずれかと
によつてセツトされる。ラツチ456は状態0−6にお
いて信号CLRO−6によつてクリアされる。 ニブル
形成論理回路458は、2つのフリツプフロツプ455
のいずれを特殊アドレス情報によつてセツトするかを決
定する。 特殊アドレスを持つたレジスタは、この論理回路を最少
とするとと“もに、必要なニブル数がアドレスの一部か
らデコードできるようにアドレスが割当てられている。
各特殊レジスタは、レジスタ内の各ニブルの各々のアド
レスを含むのに十分の長さを持つたアドレスの一連の群
を持つている。上記のようなデコードと論理の最小化を
行うために、すべてのレジス夕について連続したアドレ
スが割当てられていない。アドレスの下位から数えて第
2、第4、第5及び第6のビツトがレジスタに割当てら
れており、各レジスタに対する正しいニブル数がデコー
ドされて2進コードの形でフリツプフロツプ455に蓄
えられる。これらのフリツプフロツプは信号LDTAが
生じる度にセツトされる。リードRN1及びRN2上の
ニブル信号は、命令の実行中に特殊レジスタが使われる
時にラツチ456からの信号SPRによつて選択される
。 命令によつて与えられる初期特殊アドレスが特殊ラ
ツチ450及び451にラツチされた後、デコードされ
て信号SPADを発生すべき特殊アドレスであることが
決定される。 この後における演算論理装置の動作において、アドレス
ラツチ99に蓄えられている特殊アドレスはアドレス演
算装置によつて増分される。増分されたアドレスは、同
じ特殊レジスタの次のニブルをアクセスするためのアド
レスラツチに戻される。このような特殊アドレスの増分
は、カウンタ69が増分されて比較器71で一致が取ら
れるまで続けられる。カウンタ69の増分は演算論理回
路の動作に応動して行われる。 初期特殊アドレスから
ニブル形成論理458によつてデコードされてフリツプ
フロツプ455に蓄えられたニブル数が演算論理装置に
よつて処理されたニブル数と等しくなつた時に比較器7
1が満足される。 次に第2図及び第20図において、比較器71は、リ
ードNIB1及びNIB2と、カウンタ69とから入力
を受信する。 このカウンタは、制御部が演算論理装置をオンにしてデ
ータの1つのニブルに対する動作を行わせる度にクロツ
クを受ける。2進値としてのカウンタ69の状態がリー
ドNIB1及びNIB2に現れている2進値と等しいと
、比較器は満足される。 特殊アドレスの場合には、論理演算装置は初期特殊アド
レスからデコードされた、レジスタ長に等しい数のニブ
ルに対して動作する。比較器71が一度満足されると、
これは特殊アドレス消去信号LASTNIBを発生し、
この信号により制御部は、特殊アドレスの発生と命令の
残りの部分の実行とを停止させる。 特殊アドレスがそ
の初期特殊アドレスから増分されるとき、レジスタの下
位、中間及び上位二ブルは、第17図の回路において論
理回路454によつて特殊アドレスの最下位2ビツトか
らデコードされる。 これにより、最下位2ビツトが00、01又は10であ
ることに応動してそれぞれ信号DAL,DAM及びDA
Hの1っが作られる。 第18図で、入出力論理回路4
59は初期特殊アドレスによつてどの入出力回路がアド
レスされているかを決定する。回路459からの出力は
第1図の直接メモリアクセス(DMA)制御回路85へ
印加される。入出力回路のアドレスが検出されると、特
殊アドレスデコーダは信号10−CO,10−C1及び
10−C2を付勢し、これによつて直接メモリアクセス
制御回路85を介しての入出カレジスタの読出し/書込
み動作が制御される。このような構成により、第3,1
7及び18図のデコーダ45は第1図の入出力ラツチ3
6、両方向性入出力バス伝送ゲート37、入力部伝送ゲ
ート38及びプログラム論理配列39のアドレスデコー
ドを行うことができる。 特殊アドレスデコーダ45で
デコードが行われ ると、レジスタ60,64,66,
78, 80及び82はデコーダ45からの他の信号
によつてア ドレスされる。 第3図及び第17図の制御線12 2上の信号は、任意
の時刻においてマルチプレク サ102内の12ケのゲ
ートのうちのどの4つを付勢するかを決定する。これら
は、データバス24からのデータをニブルごとに直列に
、アドレス演算バス100の4本のリード3組のうちの
1組ヘ転送するとともに、その逆の転送を行う。 レ
ジスタ31,33,35,60, 64,6 6, 7
8, 80及び82が直接アドレスモードにおいてデー
タの行き先きとしてアドレスされ、ラ ツチ36及び伝
送ゲート37及び38が行き先き としてアドレスされ
ると、特殊アドレスレジスタ 45は処理装置制御レジ
スタ33とともに、転送すべきニブル数を制御する。 特殊アドレスデコーダ45、制御用プログラム論理配
列70、アドレス演算装置62、アドレス ラツチ99
及び中央制御装置の各部が単一の特殊アドレスから引き
出される情報に応動してアドレスシーケンスを作り出す
。 このアドレスシーケンスは、単項及び2項形命令に対し
て複数のデータ行先きを持つ。 次に第16図のタイミ
ング図は第1, 2及び3図のマイクロコンピユータの
動作中に生じる種々の信号の間の関係を示している。 信号CLKは外部信号源から第1, 2及び3図の回
路に印加され、このマイクロコンピユータに゛よつて実
行される動作の相対的なタイミングを決定する。 信号CLKOUTは制御部で作られて、マイクロコン
ピユータ内の種々の回路及びマイクロコンピユータに接
続されたチツプ外の周辺回路を付勢するのに用いられる
。 命令終了信号百有は、制御部で作られる制御信号であ
り、1つの命令に伴う事象シーケンスの終了を示す。 ADDRと記した信号は、命令の実行中にアドレスバス
40上のアドレスが有効であるこ“とを示す。付随する
読出し及び書込み信号RD及びWRもアドレスが有効で
ある適切な時刻に示される。 信号RDは第2図の制御
部で作られ、読出し専用メモリ20、ランダムアクセス
メモリ22、入出力ラツチ36又はIRAM61のいず
れかからの読出し動作を付勢する。 信号WRも制御部で作られ、ランダムアクセスメモリ
22、入出力ラツチ36又はIRAM61のいずれかへ
の書込みを付勢する。 信号DATAINは、周辺装置からマイクロコンピユ
ータに読込まれたデータを表わす。 このデータは図示した時間において有効でなければなら
ない。 信号DATAOUTは、マイクロコンピユータ
から周辺装置へ読み出されたデータを表わす。 このデータは波形DATAOUTで示した時間において
有効である。 以上で機械の回路とタイミングについて
述べたが、その有利な動作は以下に述べる動作例から理
解されよう。 これらの動作においては、読出し専用メモリ20及びラ
ンダムアクセスメモリ22は、機械に対して適切なプロ
グラムを含む有効な情報を蓄えているものと仮定してい
る。読出し専用メモリ20は、初期化プログラムシーケ
ンスを16進アドレスX(000)からはじまるメモリ
のブロツク内に蓄えている。レジスタへの情報の蓄積に
ついては、必要に応じて説明する。また、機械は、アド
レスX(000)をプログラムカウンタ(PC)及びア
ドレスラツチに入れることによつてリセツトされている
ものと仮定している。動作例 第8図及ひ第9図において、この機械の動作例に対す
るシーケンス図、すなわち状態図が示されている。 シーケンス図の各ブロツクは、主制御論理配列の状態を
示すとともに、図の特定の機械サイクルで生じる機能を
示している。読者は以下に述べる動作例を見ながらシー
ケンス図を参照することにより、処理装置の動作がより
良く理解できるであろう。 最初の動作例として、デー
タを直接メモリアクセスポインタレジスタ78へ移動さ
せるものを考える。 情報は命令MO■によつて直接メモリアクセスポインタ
レジスタ78に蓄えられる。この命令の結果、アドレス
位置X(111)、X(112)及びX(113)から
のデータがアドレスX(FO8)から始まる直接メモリ
アクセスポインタレジスタに入れられる。後者のアドレ
スはレジスタ78の下位二ブルのアドレスである。これ
は特殊アドレ スデコーダ45によつてデコードされる
特殊アド レスであり、このデコーダは即値データの3
ニブルをレジスタ78へ伝送することを制御する。
このデータは読出し専用メモリ20から取り出 され、
データバスを介して一時レジスタ27へ転送される。さ
らに、変更を受けずに演算論理装置 30を通過して、
再びデータバスからアドレス演算バス100に印加され
、ここからレジスタ78に書込まれる。このデータは直
接メモリアクセス動作が開始するまでこのレジスタに蓄
えられる。詳しい動作シーケンスでは、制御用PLAが
次の動作に関する正しい情報をデコードするためのい
くつかの待ち状態が入る。 処理装置制御レジスタ33
に蓄えられた情報は、各命令が2ニブルオペランドの処
理を行うと判断するものと仮定する。 従つて、特殊レジスタアドレスを伴わないすべての命令
は2ニブルのデータの処理をし、データバスは2回使用
される。 初期化プログラムの終了後、マイクロコンピ
ユータは例に上げた命令MOVを処理できるようになる
。 処理装置の動作の最初の状態は、状態0−3である
。 アドレスラツチのスレーブに保持されているアドレスX
(10D)からの命令の最初のニブルが読出し専用メモ
リ20から取り出され、データバス24を介して命令レ
ジスタ32へ転送される。命令レジスタに蓄えられた情
報の第1ニブルは命令MO■のOPコードを表わしてお
り、この命令は直接メモリアクセスのための初期アドレ
スを・レジスタ78へ入れるものである。この状態にお
いて、処理装置はアドレスラツチに蓄えられているアド
レスを増分し、その結果X(10E)をプ口グラムカウ
ンタレジスタ60及びアドレスラツチ 99のマスター
へ蓄える。処理装置は次に状態0・−Cへ進む。 状態
0−Cは待ち状態である。 アドレスラツチのスレーブの情報が単にそのマスターへ
転送され、処理装置は状態0−4へ進む。 状態0−4
において、アドレスラツチのスレーlブ内のアドレスX
(10E)からの、命令の第2ニブルが読出し専用メモ
リ20から取り出され、データバスを介してデスチネー
シヨン/ソースレジスタ86へ転送される。 同時にOPコードがデコードされ、ラツチMDLAT及
びELATが動作する。特殊2項命令である命令MOV
に対しては、MDLAT及びELATはリセツトされた
ままである。ラッチMDLAT及びELATの状態に基
づいて第2のOPコードを読み出して来るべきか否かが
決定される。この命令に対しては、第2のOPコードは
読み出されない。2ビツトの行き先き・データ源コード
はそれぞれ直接アドレスで、即値データであることを示
している。 アドレスラツチのスレーブ内のアドレスが再び増分され
る。増分されたアドレスはプログラムカウンタレジスタ
60及びアドレスラツチのマスターに蓄えられる。命令
MOVでは第2のOPコードは不要であるため、処理装
置は状態0−6へ進む。 状態0−6は待ち状態であり
、アドレスラツチのスレーブ内のアドレスがそのマスタ
ーに転送され、処理装置は状態1−Fへ進む。 命令実行のこの時点において、0Pコードは完全にデ
コードされ、命令は識別されている。 ここでアドレス形成が開始する。2項命令に対しては、
データ行き先きアドレスが先に作られる。 状態1−Fにおいて、処理装置は内部ランダムアクセ
スメモリ61から、直接メモリアクセスポインタレジス
タ78のアドレスX(FO8)の上位ニブルを読み出す
。このニブルは、一時レジスタ93の上位二ブルに蓄え
られるが、このレジスタはデスチネーシヨン/ソースレ
ジスタ86に蓄えらたデータによつて指定されている。
処理装置は次に状態1−Bへ進む。 状態1−Bにおい
て、プログラムカウンタ60内のアドレスがアドレスラ
ツチのマスタに入れられて、プログラムの次のニブルを
指すが、これは行き先き、すなわちレジスタ78のアド
レスx(F08)の下部二ブルである。 ステツプは次に状態1−7へ進む。 状態1−7におい
て、命令の第3のニブル、すなわちアドレスX(FO8
)の下位二ブルが読出し専用メモリから読出され、デー
タバス24及びアドレス演算バスのセグメント118を
介して一時レジスタ93の下位二ブルヘ入れられる。 アドレスラツチのスレーブ内のアドレスがアドレス演算
装置62で増分され、増分されたアドレスはプログラム
カウンタ及びアドレスラツチのマスタに蓄えられる。処
理ステツプは状態1−9へ進む。 状態1−9では、命
令の第4ニブル、すなわちアドレスX(F08)の中位
二ブルが読み出され、レジスタ93の中位二ブルに蓄え
られる。これで行き先きアドレスの形成が終了する。す
なわち、直接メモリアクセスポインタレジスタ78のア
ドレスが一時レジスタ93に入れられる。アドレスラツ
チのスレーブのアドレスがアドレス演算装置で増分され
、その結果がプログラムカウンタとアドレスラツチのマ
スターへ蓄えられる。処理装置は状態1−Aへ進む。
状態1−Aでは、一時レジスタ92の内容がアドレスラ
ツチのマスターへ転送される。 このアドレスは現在実行しているプログラムでは無意味
である。命令レジスタが、この命令が2項命令であるこ
とを示す情報を含んでおり、フリツプフロツプD(第6
図)がリセツトされてゼロになつているために、処理装
置は状態1−Dへ進み、一時レジスタ92内にデータ源
アドレスを形成することを開始する。このデータ源アド
レスは、読出し専用メモリ内の即値データの直接アドレ
スである。 状態1−Dでは、一時レジスタ92内のア
ドレスがアドレスラツチのマスタヘ転送されるとともに
、フリツプフロツプD(第6図)がセツトされる。従つ
て処理装置が次に状態1−Aを通る時に状態1−Dを介
してループすることはない。状態1−Dは待ち状態であ
り、処理装置は状態1−Fヘ進む。 データ源アドレス
のモードが即値モードであるため、プログラムカウンタ
に蓄えられているアドレスが一時レジスタ92へ転送さ
れる。 このアドレスは、命令の第5ニブルを指しており、これ
はデータ源オペランドの第1ニブルである。この源オペ
ランドは直接メモリアクセスポインタレジス夕78に蓄
えるべきアドレスであり、このアドレスは直接メモリア
クセス動作における最初のメモリ位置を示すものである
。これは即値データに対するデータ源アドレスの形成で
あるため、処理装置は状態1−Aへ進む。 この時点で
処理装置はデータ源オペランドの読出しを開始すること
が可能となる。 状態1−Aで一時レジスタ92に蓄えられていたアドレ
スがアドレスラツチのマスターに転送される。これは命
令の第5ニブルのアドレス、すなわち即値データの第1
ニブルのアドレスである。このアドレスX(111)は
、直接メモリアクセスのための初期アドレスがここから
取り出されるアドレスである。0Pコードは2項命令で
あることを示しており、またフリツプフロツプD(第6
図)がセツトされているため、このデータを得ることが
できる。 処理装置は状態3−9へ進む。 状態3−9では、アド
レスX(111)の内容が読出し専用メモリから取り出
され、データバスを介して一時データレジスタ27へ転
送される。 データ源アドレスは特殊アドレスではないために、第1
7図及び第18図の特殊アドレス回路及びニブル重畳回
路は動作していない。レジスタ33内のデータは処理す
べきニブル数を決定する。アドレスラツチのスレーブ内
のアドレスはアドレス演算装置を介してマスタヘ転送さ
れる。処理装置は状態3−0へ進む。 状態3−0では
、アドレス演算装置62が付勢されてスレーブ内のアド
レスを増分し、その結果を一時レジスタ92及びマスタ
ーに蓄える。 この増分は、複数ニブルオペランドを予想して行われる
。処理装置は状態2−2へ進む。 状態2−2では、増
分されてアドレスラツチのスレーブに蓄えられていたア
ドレスが、ブログラムカウンタ60とマスターへ転送さ
れる。 これは、現在の命令に対する演算論理装置の動作が完了
したかも知れないことに対する準備である。この時には
プログラムカウンタ内のアドレスは、次に続く命令の第
1ニブルを指すことになる。処理装置は状態2−3へ進
む。 状態2−3では、直接メモリアクセスポインタレ
ジスタ78の下位二ブルアドレスであり、一時レジスタ
93に蓄えられていた12ビツトアドレスX(F08)
がバス100を介して一度にアドレスラツチ99のマス
タヘ転送される。 このアドレスはレジスタ78の下位二ブルのアドレスで
あるため特殊アドレスであり、第17図のフリツプフロ
ツプ450がセツトされて第17図及び第18図の特殊
アドレス回路が駆動される。レジスタ78の下位二ブル
は制御線DP及びDALによつてアドレスされる。制御
線SPADは高レベルであり、デスチネーシヨン/ソー
スレジスタ86からの信号はデータ行き先きモードは直
接アドレスであることを示している。この時点で第18
図のニブル重畳回路は、リードGB1及びGB2から印
加されるレジスタ33のニブル設定値の用意を開始する
が、制御線LDTA上の付勢信号を必要とする。制御器
70からの信号が制御器カウンタ69を増分させて、オ
ペランドの1つのニブルに対する演算論理装置の動作が
ほぼ終了したことが示される。処理装置は状態2−4へ
進む。 状態2−4では、行き先きオペランドがレジス
夕78の下位二ブルから取り出され、バス100及びデ
ータバス24を介して一時データレジスタに転送されて
信号LDTAを付勢する。 これによつて第18図のニブル重畳回路が駆動される。
マルチプレクサMUXCは、その入力GB1及びGB2
から、特殊アドレス入力RN1及びRN2へ切換えられ
る。この特殊アドレスはレジスタ78であり、これは3
ニブルから成るため、ニブル重畳マルチプレクサMUX
Cはこの命令の実行終了まで上記のように切り換えられ
たままとなつている。終了すると制御用PLAからの信
号CLRO−6によつてラツチ回路456がクリアされ
る。アドレスラツチのスレーブにあるレジスタ78の下
位ニブルのアドレスは、そのマスタヘ転送され、処理装
置は状態2−0へ進む。 状態2−0では、アドレスラ
ツチのスレーブに蓄えられている行き先きアドレスが増
分されてX(FO9)になり、複数ニブル操作の場合に
備えて一時アドレスレジスタ93に蓄えられる。 演算論理装置がオンになつて、一時レジスタ27内のデ
ータが変更を受けずに演算論理装置に現れるように制御
する。この命令の例におけるこの状態では、レジスタ2
6内のオペランドは演算論理装置ノの出力には影響を与
えない。処理装置は状態2ー 1へ進む。 状態2−1
では、演算論理装置はオンに保たれ、その出力はデータ
バス、マルチプレクサ10 2及びバス100を介して
、アドレスラツチのスjレーブによつてアドレスされる
位置へ転送される。 これは、直接メモリアクセスポインタレジス 夕78の
下位二ブルのアドレスX(FO8)である。アドレスラ
ツチのスレーブ内のアドレスx(F08)はそのマスタ
ーへ転送される。フ 上で述べた演算論理動作の終了時
において、第 2図及び第20図の比較器は制御カウン
タ69の状態を、第18図のニブル重畳回路で与えられ
るニブル数と比較する。 データの行き先きは3ニブルレジスタであるため、ニブ
ル重畳回路は3ニブル動作を要求しているが、1ニブル
動作しか終了していない。処理装置は状態1−Aへ戻る
。 この後オペランド取出し及び演算論理装置の動作が
、状態1−Aから状態3−9、3−0、2ー2、2−3
、2−4、2−0、及び2−1を介して2回繰り返えさ
れる。しかし多少の違いがある。 最初に状態1−Aが
繰返えされた時に、一時レジスタ92から読み出される
アドレスはx(112)である。 読出し専用メモリのこのアドレスから取り出されたオペ
ランドは、信号DAMの制御の下でバス100の中位リ
ードを介してレジス夕78の中位二ブルに入れられる。
このレジスタ78の中位二ブルのアドレスは、状態2−
0において、特殊アドレスデコーダ45、制御カウンタ
69、比較器71及び制御用プログラム論理配列70で
作られる信号に応動してアドレス演算装置で自動的に作
られる。 2回目の繰返しの時に一時レジスタ92から
読出されるアドレスはX(113)である。 このアドレス位置から取り出されたオペランドは、信号
DAFIの制御のもとでバス100の上位リードを介し
てレジスタ78の上位二ブルに書込まれる。直接メモリ
アクセスポインタレジスタ78の上位ニブルのアドレス
も、同じ回路の組合せによつて自動的に作られる。 直
接メモリアクセスポインタレジスタの中位及び上位二ブ
ルにオペランドを書込むための上記の2回のループにお
いて、第18図のニブル重畳回路が駆動されて、3ニブ
ル動作を要求する。 第2図及び第20図の比較器71は、ニブル重畳回路か
らの入力と、カウンタ69で数えられた動作数とをチエ
ツクする。3回目のループの終了時において、比較器は
満足され、特殊アドレス消勢信号LASTNIBを発生
し、処理装置は状態2−1から状態0−1へ進む。 状態0−1は最初の命令の最後の状態である。 プログラムカウンタレジスタ60内のアドレスは、次の
命令の第1ニブルをアドレスする準備のため、バス10
0からアドレスラツチのマスタヘ転送される。次いで処
理装置は、次の命令の最初の状態である状態0−3へ進
む。 以上は、本発明の一実施例について説明したもの
である。
Claims (1)
- 【特許請求の範囲】 1 演算論理装置30の動作によつて処理されるべきオ
ペランドをアクセスするアドレス可能メモリ空間で一連
の順次アドレスをアドレスレジスタ99内に発生するた
めのアドレス発生装置であつて、該順次アドレスが該ア
ドレスレジスタに蓄えられた初期アドレスに応動し該ア
ドレスレジスタに蓄えられたアドレスを周期的に増分す
るよう構成された手段62によつて発生され、該一連の
アドレスが該アドレスレジスタに蓄えられたアドレスの
該周期的増分を消勢する手段69,71,LSTNIB
によつて終了されているアドレス発生装置において;該
演算論理装置の動作を計数する制御カウンタ69を含み
、前記消勢手段69,71,LISTNIB,458,
455が、該初期アドレス455及び458の少くとも
一部と該制御カウンタ内における該演算論理装置30の
動作の計数値とに応動して該順次アドレスの予め定めた
数だけの発生の終了時に該アドレスレジスタに蓄えられ
たアドレスの該周期的増分を終了させるための信号LI
STNIBを発生しており、該予め定めた数は該消勢手
段により初期アドレスの一部から復号されていることと
を特徴とするアドレス発生装置。 2 請求の範囲第1項に従つたアドレス発生装置におい
て、前記消勢手段が、該初期アドレスの一部を一連の順
次アドレスにおけるアドレスの該予め定めた数を表わす
2進表示に復号するためのデコーダ458を含んでいる
ことを特徴とするアドレス発生装置。 3 請求の範囲第1項又は第2項に従つたアドレス発生
装置において、前記制御カウンタ69が該演算論理装置
の各動作中に発生される信号によつて増分されており、
そして前記消勢手段が比較器71を含み、該比較器は該
予め定めた数及び該カウンタの状態に応動し該カウンタ
の状態が該予め定めた数に等しい時に消勢信号を発生し
ていることを特徴とするアドレス発生装置。 技術分野 本発明はアドレス発生装置に関し、特に初期アドレス
に応動して一連のアドレスを発生する装置に関する。 発明の背景 従来技術において、アドレス可能な特殊レジスタを持
つマイクロプロセツサ、マイクロコンピユータ及び他の
データ処理装置及び計算機が存在する。 典型的には、このようなレジスタは、そのシステム内に
含まれるデータバスと同じ一定の長さを持つ。たとえば
このような特殊レジスタに含まれるアドレス情報の取扱
い機能を増すため等の理由により、一定の長さという条
件を除去できることが望ましい。このようにすれば、ア
ドレス情報の算術的及び論理的処理がデータバスの幅よ
り長いデータ語に対して行うことができる。このような
長いデータ語の処理を行うためには、複数個の相続くア
ドレスが特殊レジスタの位置を特定するのに用いられる
。 従来技術において、例えば直接メモリアクセス回路
のように、初期アドレスから複数の相つづくアドレスを
発生する装置が存在する。 直接メモリアクセス装置の一般的説明は、1976年の
入0sborne著のAnIntroductinto
Micromputers■01.1の5−34乃至5
−41頁に記されている。初期アドレスはアドレスレジ
スタに入れられ、自動的に多数回増分される。増分され
る度にデータの別の部分をアクセスするために用いられ
る。アドレスが増分される回数は、この数を示す他の情
報によつて決定される。この数はアドレスが増分される
度に1だけ減算される。この数がゼロまで減算すると、
一連のアドレス発生処理は終了する。 以上の方法では
、プログラマは、特殊レジスタのアドレスが現れる度に
アドレスを増分される回数をプログラム中に入れなけれ
ばならない。 このような特殊レジスタへのアクセスが
プログラム中でひん繁に現れる応用5ではプログラマを
このような仕事から解放するのが望ましい。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US06/071,717 US4306287A (en) | 1979-08-31 | 1979-08-31 | Special address generation arrangement |
US71717 | 1979-08-31 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS56501219A JPS56501219A (ja) | 1981-08-27 |
JPS6044699B2 true JPS6044699B2 (ja) | 1985-10-04 |
Family
ID=22103122
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP55502140A Expired JPS6044699B2 (ja) | 1979-08-31 | 1980-08-11 | 特殊アドレス発生装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US4306287A (ja) |
EP (1) | EP0034180B1 (ja) |
JP (1) | JPS6044699B2 (ja) |
DE (1) | DE3069554D1 (ja) |
WO (1) | WO1981000633A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01159794U (ja) * | 1988-04-25 | 1989-11-06 |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4521858A (en) * | 1980-05-20 | 1985-06-04 | Technology Marketing, Inc. | Flexible addressing and sequencing system for operand memory and control store using dedicated micro-address registers loaded solely from alu |
US4511960A (en) * | 1982-01-15 | 1985-04-16 | Honeywell Information Systems Inc. | Data processing system auto address development logic for multiword fetch |
US4603384A (en) * | 1983-11-25 | 1986-07-29 | Texas Instruments Incorporated | Data processing system with multiple memories and program counter |
US4707694A (en) * | 1984-03-02 | 1987-11-17 | American Telephone And Telegraph Company | Telephone system port communication method and apparatus |
US4809156A (en) * | 1984-03-19 | 1989-02-28 | Trw Inc. | Address generator circuit |
US4727483A (en) * | 1984-08-15 | 1988-02-23 | Tektronix, Inc. | Loop control system for digital processing apparatus |
US4896264A (en) * | 1986-09-08 | 1990-01-23 | American Telephone And Telegraph Company | Microprocess with selective cache memory |
JP2675779B2 (ja) * | 1987-01-12 | 1997-11-12 | 沖電気工業株式会社 | 命令解読装置 |
US5261113A (en) * | 1988-01-25 | 1993-11-09 | Digital Equipment Corporation | Apparatus and method for single operand register array for vector and scalar data processing operations |
KR0152979B1 (ko) * | 1988-07-15 | 1998-11-16 | 가시오 가즈오 | 가변길이 데이터 처리장치 |
US5155826A (en) * | 1988-12-05 | 1992-10-13 | Fadem Richard J | Memory paging method and apparatus |
US5255378A (en) * | 1989-04-05 | 1993-10-19 | Intel Corporation | Method of transferring burst data in a microprocessor |
US5131083A (en) * | 1989-04-05 | 1992-07-14 | Intel Corporation | Method of transferring burst data in a microprocessor |
US5265225A (en) * | 1990-02-21 | 1993-11-23 | Harris Corporation | Digital signal processing address sequencer |
US6052801A (en) * | 1995-05-10 | 2000-04-18 | Intel Corporation | Method and apparatus for providing breakpoints on a selectable address range |
US5659679A (en) * | 1995-05-30 | 1997-08-19 | Intel Corporation | Method and apparatus for providing breakpoints on taken jumps and for providing software profiling in a computer system |
US5740413A (en) * | 1995-06-19 | 1998-04-14 | Intel Corporation | Method and apparatus for providing address breakpoints, branch breakpoints, and single stepping |
US5621886A (en) * | 1995-06-19 | 1997-04-15 | Intel Corporation | Method and apparatus for providing efficient software debugging |
JP3739797B2 (ja) * | 1995-10-06 | 2006-01-25 | パトリオット サイエンティフィック コーポレイション | 縮小命令セット・コンピューター・マイクロプロセッサーの構造 |
DE10122309A1 (de) * | 2001-05-08 | 2002-11-21 | Systemonic Ag | Adressgeneriereinheit |
US8180053B1 (en) | 2007-02-07 | 2012-05-15 | Bae Systems Information And Electronic Systems Integration Inc. | Secure communications system with assured synchronization for data exchanged among system ports |
JP5124237B2 (ja) * | 2007-11-02 | 2013-01-23 | 株式会社日立製作所 | ストレージシステムおよびストレージサブシステム |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3297998A (en) * | 1963-06-10 | 1967-01-10 | Beckman Instruments Inc | List control |
US3343134A (en) * | 1964-06-26 | 1967-09-19 | Ibm | Multiple section retrieval system |
US3394350A (en) * | 1965-01-14 | 1968-07-23 | Burroughs Corp | Digital processor implementation of transfer and translate operation |
GB1186414A (en) * | 1966-05-25 | 1970-04-02 | Gen Electric | Input/Output Control Apparatus in a Computer System |
US3533076A (en) * | 1967-10-30 | 1970-10-06 | Burroughs Corp | Electronic accounting apparatus |
US3593313A (en) * | 1969-12-15 | 1971-07-13 | Computer Design Corp | Calculator apparatus |
NL7007615A (ja) * | 1970-05-27 | 1971-11-30 | ||
US4080650A (en) * | 1976-07-28 | 1978-03-21 | Bell Telephone Laboratories, Incorporated | Facilitating return from an on-line debugging program to a target program breakpoint |
US4065810A (en) * | 1977-01-26 | 1977-12-27 | International Business Machines Corporation | Data transfer system |
-
1979
- 1979-08-31 US US06/071,717 patent/US4306287A/en not_active Expired - Lifetime
-
1980
- 1980-08-11 JP JP55502140A patent/JPS6044699B2/ja not_active Expired
- 1980-08-11 WO PCT/US1980/001017 patent/WO1981000633A1/en active IP Right Grant
- 1980-08-11 DE DE8080901823T patent/DE3069554D1/de not_active Expired
-
1981
- 1981-03-09 EP EP80901823A patent/EP0034180B1/en not_active Expired
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01159794U (ja) * | 1988-04-25 | 1989-11-06 |
Also Published As
Publication number | Publication date |
---|---|
EP0034180B1 (en) | 1984-10-31 |
EP0034180A4 (en) | 1982-06-18 |
DE3069554D1 (en) | 1984-12-06 |
EP0034180A1 (en) | 1981-08-26 |
JPS56501219A (ja) | 1981-08-27 |
US4306287A (en) | 1981-12-15 |
WO1981000633A1 (en) | 1981-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS6044699B2 (ja) | 特殊アドレス発生装置 | |
JP3592230B2 (ja) | データ処理装置 | |
US5381360A (en) | Modulo arithmetic addressing circuit | |
JPS59117666A (ja) | ベクトル処理装置 | |
US4346437A (en) | Microcomputer using a double opcode instruction | |
US4348720A (en) | Microcomputer arranged for direct memory access | |
KR20000076310A (ko) | 리스크 구조를 갖는 8 비트 마이크로콘트롤러 | |
JPH0248931B2 (ja) | ||
JPS58501560A (ja) | マイクロプロセツサ | |
JPS589454B2 (ja) | プログラマブル制御ラツチ機構 | |
JPH0346850B2 (ja) | ||
JPH0124655Y2 (ja) | ||
KR100210205B1 (ko) | 스톨캐쉬를 제공하기 위한 장치 및 방법 | |
US20030033503A1 (en) | Single instruction having opcode and stack control field | |
JPH0520068A (ja) | 並列演算処理装置 | |
US4812970A (en) | Microprogram control system | |
US6230238B1 (en) | Method and apparatus for accessing misaligned data from memory in an efficient manner | |
JP2690406B2 (ja) | プロセッサおよびデータ処理システム | |
US8200943B2 (en) | Microprocessor | |
US5001629A (en) | Central processing unit with improved stack register operation | |
JPS594049B2 (ja) | コンピュ−タ装置 | |
US6564312B1 (en) | Data processor comprising an arithmetic logic unit | |
JPH0685147B2 (ja) | 半導体回路装置 | |
JPS61214029A (ja) | 命令先取りバツフア | |
US6282632B1 (en) | Information processor having duplicate operation flags |