JPS61231632A - データ処理装置 - Google Patents
データ処理装置Info
- Publication number
- JPS61231632A JPS61231632A JP60072646A JP7264685A JPS61231632A JP S61231632 A JPS61231632 A JP S61231632A JP 60072646 A JP60072646 A JP 60072646A JP 7264685 A JP7264685 A JP 7264685A JP S61231632 A JPS61231632 A JP S61231632A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- memory
- information
- data processing
- register
- 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.)
- Granted
Links
- 238000012545 processing Methods 0.000 claims description 36
- 230000008707 rearrangement Effects 0.000 claims description 23
- 230000006870 function Effects 0.000 claims description 14
- 238000000034 method Methods 0.000 claims description 11
- 239000004065 semiconductor Substances 0.000 claims description 2
- 239000000758 substrate Substances 0.000 claims description 2
- 230000004044 response Effects 0.000 claims 3
- 230000002401 inhibitory effect Effects 0.000 claims 1
- 238000006243 chemical reaction Methods 0.000 abstract description 14
- 238000012546 transfer Methods 0.000 abstract description 7
- 230000005540 biological transmission Effects 0.000 abstract 1
- 230000010485 coping Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 16
- 229920000747 poly(lactic acid) Polymers 0.000 description 14
- 238000001514 detection method Methods 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
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/3017—Runtime instruction translation, e.g. macros
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- 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/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- 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/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
- G06F9/4484—Executing subprograms
- G06F9/4486—Formation of subprogram jump address
-
- 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/46—Multiprogramming arrangements
- G06F9/461—Saving or restoring of program or task context
- G06F9/462—Saving or restoring of program or task context with multiple register sets
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の利用分野〕
本発明はマイクロコンピュータの処理方式に係り、特に
マイクロプログラム制御方式のマイクロコンピュータに
好適な命令解読方式を具備するデータ処理装置に関する
。
マイクロプログラム制御方式のマイクロコンピュータに
好適な命令解読方式を具備するデータ処理装置に関する
。
マイクロコンピュータの分野では、高集積化に伴ない論
理の複雑さが生じるため、規則的な構造の論理回路によ
って集積回路を実現する方法が主流になりつつある。そ
の1つがマイクロプログラム制御方式である。マイクロ
プログラム・制御方式のデータ処理装置としては、命令
語からマイクロプログラムROMのアドレスを生成する
命令デコーダを用いて構成されているものが一般的であ
る。
理の複雑さが生じるため、規則的な構造の論理回路によ
って集積回路を実現する方法が主流になりつつある。そ
の1つがマイクロプログラム制御方式である。マイクロ
プログラム・制御方式のデータ処理装置としては、命令
語からマイクロプログラムROMのアドレスを生成する
命令デコーダを用いて構成されているものが一般的であ
る。
この命令デコーダを省略したマイクロプログラム制御方
式が特開昭57−203141号公報に記載されている
が、この方式は命令語を直接マイクロスログラムROM
のアドレス情報の一部に置数する為、命令語の語長が8
.16.32ビツトと増大するにつ、れてマイクロプロ
グラムROMのアドレス畏が命令語長と供に長くなり、
マイクロプログ2ムROMのアドレスデコーダが増大す
るが、この点については特に配慮がなされていなかった
。
式が特開昭57−203141号公報に記載されている
が、この方式は命令語を直接マイクロスログラムROM
のアドレス情報の一部に置数する為、命令語の語長が8
.16.32ビツトと増大するにつ、れてマイクロプロ
グラムROMのアドレス畏が命令語長と供に長くなり、
マイクロプログ2ムROMのアドレスデコーダが増大す
るが、この点については特に配慮がなされていなかった
。
(発明の目的〕
・本発明の目的は、主記憶装置に格納された命令語を゛
読み出し、解読して実行するデータ処理装置において、
種々の命令形式に対応できる命令解読方式を備えたデー
タ処理装置を提供することにある。
読み出し、解読して実行するデータ処理装置において、
種々の命令形式に対応できる命令解読方式を備えたデー
タ処理装置を提供することにある。
゛〔発明の概要〕
前記目的を達成する為、本発明では機械命令語をハード
ウェアの構成に適したオーソゴナルな中間機械語に再配
列し、これを実行するようにした命令解読方式を採る。
ウェアの構成に適したオーソゴナルな中間機械語に再配
列し、これを実行するようにした命令解読方式を採る。
□〔発明□の実、施例〕
以下に本発明の一実施例を図面に従って説明する。
第2図は本発明の一実施例を示すもので、一つの半導体
基板に構築されたシングルチップ・マイ′コン10の構
成図であり、データ処理装置となる中央処理袋・置10
1を核として、主記憶装置1102゜タイマ機能や入出
力機能を有する周辺装置103゜ダイレクト・メモリ・
アクセス・コントロー、う]04.アドレス変換装置]
05から成る。第2図中の破線で示したプロセッサ部分
20は、第1図及び第3図以降に詳細に説明する。
基板に構築されたシングルチップ・マイ′コン10の構
成図であり、データ処理装置となる中央処理袋・置10
1を核として、主記憶装置1102゜タイマ機能や入出
力機能を有する周辺装置103゜ダイレクト・メモリ・
アクセス・コントロー、う]04.アドレス変換装置]
05から成る。第2図中の破線で示したプロセッサ部分
20は、第1図及び第3図以降に詳細に説明する。
第1図は、本発明の一実施例を示すプロセッサ部分20
の構成図であり、命令語記憶・変換ユニット201.マ
イクロプログラムROM (ReadOnly Mem
ory )を主要素とするマイクロプロゲラ−、ム記憶
・制御ユニット202.デコーダユニット、I+!べ。
の構成図であり、命令語記憶・変換ユニット201.マ
イクロプログラムROM (ReadOnly Mem
ory )を主要素とするマイクロプロゲラ−、ム記憶
・制御ユニット202.デコーダユニット、I+!べ。
、、、、:2o a 、演算ユニット204.パスイン
タフェースユニット205.読み出しと書き込みが可能
な第1の主記憶装置206.読み出しが可能な第2の主
記憶装置207.アドレスの入出力バッファ2082、
データの人出力バッファ2083 、クロック供給及び
電源供給バッファ2084 、アドレス・データ・クロ
ック、電源以外の信号でプロセッサ部分20と第2図に
於ける他の装置103,104.。
タフェースユニット205.読み出しと書き込みが可能
な第1の主記憶装置206.読み出しが可能な第2の主
記憶装置207.アドレスの入出力バッファ2082、
データの人出力バッファ2083 、クロック供給及び
電源供給バッファ2084 、アドレス・データ・クロ
ック、電源以外の信号でプロセッサ部分20と第2図に
於ける他の装置103,104.。
105等とを結ぶ信号線の人出力バツファ2081から
成る。第2図により、命令フェッチから実行までの動作
を説明する。
成る。第2図により、命令フェッチから実行までの動作
を説明する。
(1)命令フェッチ
バスインタフェースユニット205内のプログラム(命
令)フェッチ用レジスタ(命令アドレスレジスタ)の内
容がバス212を介してプロセッサ20内の主記憶装置
206,207に印加される一方、アドレスの入出力バ
ッファ2082にも出力され、プロセッサ20外のバス
222へ供給される。このアドレスに対応した命令語が
第1の主起213に印加される。バス213の内容は命
令語記憶・変換ユニット201に供給される。
令)フェッチ用レジスタ(命令アドレスレジスタ)の内
容がバス212を介してプロセッサ20内の主記憶装置
206,207に印加される一方、アドレスの入出力バ
ッファ2082にも出力され、プロセッサ20外のバス
222へ供給される。このアドレスに対応した命令語が
第1の主起213に印加される。バス213の内容は命
令語記憶・変換ユニット201に供給される。
(2)命令語記憶及び変換
命令記憶・変換ユニット201に印加された命令語は一
時記憶されると共に解読され、マイクロプログラム記憶
・制御ユニット202の入力となる情報に変換される。
時記憶されると共に解読され、マイクロプログラム記憶
・制御ユニット202の入力となる情報に変換される。
(3)マイクロ命令読出し
マイクロプログラム記憶・制御ユニット202では、命
令語記憶・変換ユニット201で命令語から変換された
情報を必要に応じてバス231を介して入力し、マイク
ロ命令列としてバス232に出力する。
令語記憶・変換ユニット201で命令語から変換された
情報を必要に応じてバス231を介して入力し、マイク
ロ命令列としてバス232に出力する。
(4)マイクロ命令解読
マイクロプログラム記憶・制鮮ユニット202からバス
232を経由してマイクロ命令がデコースインタフェー
スユニット205を直接制御する信号群234が出力さ
れる。
232を経由してマイクロ命令がデコースインタフェー
スユニット205を直接制御する信号群234が出力さ
れる。
(5)演算実行
演算ユニット204では、信号群233に従って所望の
データ演算を行なう。又、バスインタフニー、スユニッ
トでは、プロセッサ20と他の装置間のデータ転送やプ
ロセッサ20内でのデータ転送のタイミングの制御をバ
ス2119人出力バッファ2081 、バス221及び
信号線235,236を介して行なう。
データ演算を行なう。又、バスインタフニー、スユニッ
トでは、プロセッサ20と他の装置間のデータ転送やプ
ロセッサ20内でのデータ転送のタイミングの制御をバ
ス2119人出力バッファ2081 、バス221及び
信号線235,236を介して行なう。
一方、バッファ2084に供給されたクロック及び電源
は信号線214を介して各ユニットへ供給さく17) れる。
は信号線214を介して各ユニットへ供給さく17) れる。
第3図は第1図の命令語記憶・変換ユニット201、マ
イクロプログラム記憶・制御ユニット202、デコーダ
ユニット203.演算ユニット204の構成の一例を示
したものである。バス213を経由して命令語記憶・変
換ユニット201302に転送される。
イクロプログラム記憶・制御ユニット202、デコーダ
ユニット203.演算ユニット204の構成の一例を示
したものである。バス213を経由して命令語記憶・変
換ユニット201302に転送される。
ここで、命令語記憶部301に読み込まれる命令語の代
表的な命令フォーマットの例を第4図に示す。
表的な命令フォーマットの例を第4図に示す。
(1)演算命令
第1のオペランドコードで指定した第1オペランドの内
容と第2のオペランドコードで指定した第2オペランド
の内容を演算し、結果を第2オペランドの位置に格納す
る。オペレーションコード内の演算のタイプは算術演算
や論理演算等の演算の種類を規定する。
容と第2のオペランドコードで指定した第2オペランド
の内容を演算し、結果を第2オペランドの位置に格納す
る。オペレーションコード内の演算のタイプは算術演算
や論理演算等の演算の種類を規定する。
(2)分岐命令
オペレーションコード内の分岐条件で指定されたコンデ
ィションが満足した場合は第1のオペランドコードで指
定するオペランドの内容が示すプログラムアドレスに分
岐する。コンディションが満足しない場合は次の命令語
を実行する。
ィションが満足した場合は第1のオペランドコードで指
定するオペランドの内容が示すプログラムアドレスに分
岐する。コンディションが満足しない場合は次の命令語
を実行する。
(3)ビット操作命令
第2のオペランドコードで指定する第2オペラを記憶す
る。テストの後、そのビットの内容をオペレーションコ
ード内のビット操作のタイプで示す動作(クリア、セッ
ト、チェンジ、テスト)を実行し、必要に応じて第2オ
ペランドの対応するビット位置に格納する。
る。テストの後、そのビットの内容をオペレーションコ
ード内のビット操作のタイプで示す動作(クリア、セッ
ト、チェンジ、テスト)を実行し、必要に応じて第2オ
ペランドの対応するビット位置に格納する。
上記命令語(1)、、(2)、(3)は本来盛り込みた
い機能をある一定の規則に基づき、限定されたビット内
におさめた結果、命令が一命゛令のビット長の制約から
オーソゴナリテイを犠牲にして体系化している。
い機能をある一定の規則に基づき、限定されたビット内
におさめた結果、命令が一命゛令のビット長の制約から
オーソゴナリテイを犠牲にして体系化している。
第3図に示す本実施例は、命令語記憶部301から読み
出した命令語を命令解読部302において解読し、命令
実行に必要な各種情報を完全なオーソゴナルコード体系
を有する命命令(以下中間機械語と呼ぶ)に変換する。
出した命令語を命令解読部302において解読し、命令
実行に必要な各種情報を完全なオーソゴナルコード体系
を有する命命令(以下中間機械語と呼ぶ)に変換する。
即ち、実行されるべきオペレーションを指定するオペレ
ーションコードと、オペランドを含む主記憶装置の位置
を識別するオペランド指定子を表現する情報ビットを独
ト2′02及び第2の命令解読手段となるデコーダユニ
ット203へ行く。中間機械語のあるものは少なくとも
1つのオペランド指定子を含んでおり、そのオペランド
指定子が示すオペランドがソースオペランドであるか、
デスティネーションオペランドであるかの情報は、全て
オペレーションコードに表現されている。又、オペレー
ションコード及びオペランド指定子を表現する情報にお
いて、マイクロプログラム記憶・制御ユニット202で
解読を必要とする情報3031以外の中間機械語の各情
報は、マイクロ命令232で制御できるデコーダニニッ
ト203内の各デコーダ2031.2032゜2033
、2034.2035の入力と1対1に対応している(
第3図)。デコーダユニット203内の各種デコーダで
生成された制御信号群233は演算ユニット204を制
御し、中間機械語が示す所望の演算処理を実行する。
ーションコードと、オペランドを含む主記憶装置の位置
を識別するオペランド指定子を表現する情報ビットを独
ト2′02及び第2の命令解読手段となるデコーダユニ
ット203へ行く。中間機械語のあるものは少なくとも
1つのオペランド指定子を含んでおり、そのオペランド
指定子が示すオペランドがソースオペランドであるか、
デスティネーションオペランドであるかの情報は、全て
オペレーションコードに表現されている。又、オペレー
ションコード及びオペランド指定子を表現する情報にお
いて、マイクロプログラム記憶・制御ユニット202で
解読を必要とする情報3031以外の中間機械語の各情
報は、マイクロ命令232で制御できるデコーダニニッ
ト203内の各デコーダ2031.2032゜2033
、2034.2035の入力と1対1に対応している(
第3図)。デコーダユニット203内の各種デコーダで
生成された制御信号群233は演算ユニット204を制
御し、中間機械語が示す所望の演算処理を実行する。
を示している。 ・・ 5ユーザプ
ログラムが格納されている主記憶装置に異なった2種類
の命令体系A、Bで表現した命令語が格納されている場
合、即ち2進の命令コードが同一であっても命令の処理
内容(命令機能)が異なっている時、命令体系Aの命令
語を解読する命令解読部302と、命令体系Bの命令語
を解読する命令解読部502とを備える。命、令解読、
部8.02で生成された情報は、バス3021を介し、
て、マルチプレクサ503に送られる。同様に命令解読
部502で生成された情報はバス5021を介しく21
) てマルチプレクサ503に送られる。マルチプレクサ5
03は一フリップ・フロップ504の内容に基づいてバ
ス3021の内容とバス5021の内容のいずれか一方
を選択し、記憶部303に格納する。
ログラムが格納されている主記憶装置に異なった2種類
の命令体系A、Bで表現した命令語が格納されている場
合、即ち2進の命令コードが同一であっても命令の処理
内容(命令機能)が異なっている時、命令体系Aの命令
語を解読する命令解読部302と、命令体系Bの命令語
を解読する命令解読部502とを備える。命、令解読、
部8.02で生成された情報は、バス3021を介し、
て、マルチプレクサ503に送られる。同様に命令解読
部502で生成された情報はバス5021を介しく21
) てマルチプレクサ503に送られる。マルチプレクサ5
03は一フリップ・フロップ504の内容に基づいてバ
ス3021の内容とバス5021の内容のいずれか一方
を選択し、記憶部303に格納する。
この時2つの命令解読m5o2,502は、命令体系A
の命令□コー゛・ドで表現された命令と命令体系じであ
れば、全く同一の中間機械語を生成する。
の命令□コー゛・ドで表現された命令と命令体系じであ
れば、全く同一の中間機械語を生成する。
即ち、命令体系が異なった命令語であっても命令機能が
同じであれば、記憶部303に格納される・情報が同じ
であることから、中間機械器で制御されるプロセッサ2
0内の大部分のパードウ王ア500(第′2図では、命
令語記憶・変換ユニット201を除くプロセッサ20内
のハードウェアを指す)は、命令体系が異なっていても
共通に制御できる。
同じであれば、記憶部303に格納される・情報が同じ
であることから、中間機械器で制御されるプロセッサ2
0内の大部分のパードウ王ア500(第′2図では、命
令語記憶・変換ユニット201を除くプロセッサ20内
のハードウェアを指す)は、命令体系が異なっていても
共通に制御できる。
一方、フリツ、ブ″−フロップ504は、プロセッサ2
0のリセット時にあらかじめ定めでオイた端子505に
入力きれた信号のレベルを制御−路50Gで検出し;結
果をセットできる構成となうている。端子505は、ア
ドレスバスの最下位ビットの端子と兼用している。
0のリセット時にあらかじめ定めでオイた端子505に
入力きれた信号のレベルを制御−路50Gで検出し;結
果をセットできる構成となうている。端子505は、ア
ドレスバスの最下位ビットの端子と兼用している。
第6図は他の実施例を示すもので、第5図で示すバス2
13を介して命令記憶部301に読み込む命令語と命令
解読部302及び命令解読部502で生成し記憶部30
3に格納する中間機械語を主記憶装置600に混在して
格納した場合の命令記憶・変換ユニット201の構成を
示している。主記憶装置には2つの命令体系を有する命
令コードが格納されており、一方は命令記憶部301を
経て命令解読部302で中間機械語に変換されバス30
21を経由してマルチプレクサ603で選択され記憶部
303に格納され、他方は命令記憶部601、バス60
11を経由してマルチプレクサ603で選択され記憶部
303に格納される。マルチプレクサ603は、フリッ
プ・フロップ604の内容に基づいてバス3021の内
容とバス6011の内容のいずれか一方を選択する。又
、主記憶装置600に格納する命令語には、マルチプレ
クサ603を互いにスイッチできる命令が定義されてお
り、該命令を実行すれば制御線6041を介してフリッ
プ・プロップ604を制御できる。一方、第7図に示す
様に、端子605に入力された信号のレベルを制御回路
606で検出することでフリップ・フロップ604を制
御しても良い。
13を介して命令記憶部301に読み込む命令語と命令
解読部302及び命令解読部502で生成し記憶部30
3に格納する中間機械語を主記憶装置600に混在して
格納した場合の命令記憶・変換ユニット201の構成を
示している。主記憶装置には2つの命令体系を有する命
令コードが格納されており、一方は命令記憶部301を
経て命令解読部302で中間機械語に変換されバス30
21を経由してマルチプレクサ603で選択され記憶部
303に格納され、他方は命令記憶部601、バス60
11を経由してマルチプレクサ603で選択され記憶部
303に格納される。マルチプレクサ603は、フリッ
プ・フロップ604の内容に基づいてバス3021の内
容とバス6011の内容のいずれか一方を選択する。又
、主記憶装置600に格納する命令語には、マルチプレ
クサ603を互いにスイッチできる命令が定義されてお
り、該命令を実行すれば制御線6041を介してフリッ
プ・プロップ604を制御できる。一方、第7図に示す
様に、端子605に入力された信号のレベルを制御回路
606で検出することでフリップ・フロップ604を制
御しても良い。
マルチプレクサ603及び記憶部303は、命令記憶部
601の内容をバイト(8ビツト)単位で制御できる構
造になっており、命令記憶部601を必要としない応用
例においては、バス213のビット幅でマルチプレクサ
603に入力できる構造となっている。
601の内容をバイト(8ビツト)単位で制御できる構
造になっており、命令記憶部601を必要としない応用
例においては、バス213のビット幅でマルチプレクサ
603に入力できる構造となっている。
第8図は、第3図における命令記憶・変換ユニット20
1の機能を細分化したブロック図である。
1の機能を細分化したブロック図である。
各ブロックの特徴を次に示す。
(1)命令記憶手段301
主記憶装置よりバス213を経由して読み出された命令
語を一時記憶するバッファ・メモリである。高速のパイ
プライン処理を可能とする為命令語の先読みがされる。
語を一時記憶するバッファ・メモリである。高速のパイ
プライン処理を可能とする為命令語の先読みがされる。
(2)コード照合手段802
命令語によってオペレージコンコードとオペランドコー
ドの配置が異なっている。この為、命令記憶手段301
よりバス3011に読み出した命令語をコード照合手段
802内にあらかじめ定義して置いたコードパターンと
照合しその一致を検出する。
ドの配置が異なっている。この為、命令記憶手段301
よりバス3011に読み出した命令語をコード照合手段
802内にあらかじめ定義して置いたコードパターンと
照合しその一致を検出する。
(3)コード再配列情報記憶手段803命令語をオーソ
ゴナルな命令フォーマットを有する中間機械語に変換す
るためのコードの再配列情報を定義し記憶する。定義し
た再配列情報は、コード照合手段802からの信号80
21に従って読み出されバス8031に送られる。
ゴナルな命令フォーマットを有する中間機械語に変換す
るためのコードの再配列情報を定義し記憶する。定義し
た再配列情報は、コード照合手段802からの信号80
21に従って読み出されバス8031に送られる。
(4)再配列手段804
バス3011を経由して入力された命令コードをオーソ
ゴナルな命令フォーマットを有する中間機械語に変換す
る為、バス8031の内容に従って命令コードの再配列
を行なう。変換後の中間機械語は、実行されるべきオペ
レーションを指定するオペレーションコードと、オペラ
ンドを含むメモリ位置を識別するオペランド指定子が各
々独立なビット位置に配列される。オペランドを必要と
しない命令を除くいくつかの命令は、少なくとも1つの
オペランド指定子を含んでいる。
ゴナルな命令フォーマットを有する中間機械語に変換す
る為、バス8031の内容に従って命令コードの再配列
を行なう。変換後の中間機械語は、実行されるべきオペ
レーションを指定するオペレーションコードと、オペラ
ンドを含むメモリ位置を識別するオペランド指定子が各
々独立なビット位置に配列される。オペランドを必要と
しない命令を除くいくつかの命令は、少なくとも1つの
オペランド指定子を含んでいる。
第9図は第8図で示す命令記憶・変換ユニットの一実施
例を示すもので、ファーストイン・ファーストアウ゛ト
(First−In First−Out) 型メ
モリ901(以下FIFOと略す)及びFIFO901
の制御回路911を主な構成要素とする命令記憶手段3
01と、プログラマブル・ロジックSアレイ(Prog
rammable Logic Array H以下P
LAと略す)を主な構成要素とするコード照合手段80
2及びコード再配列情報手段803と、例えば、Met
al−Oxide−3emiconductor (
以下MO8と略す)トランジスタを使用したスイッチア
レイを主要素とする再配列手段804で構成している。
例を示すもので、ファーストイン・ファーストアウ゛ト
(First−In First−Out) 型メ
モリ901(以下FIFOと略す)及びFIFO901
の制御回路911を主な構成要素とする命令記憶手段3
01と、プログラマブル・ロジックSアレイ(Prog
rammable Logic Array H以下P
LAと略す)を主な構成要素とするコード照合手段80
2及びコード再配列情報手段803と、例えば、Met
al−Oxide−3emiconductor (
以下MO8と略す)トランジスタを使用したスイッチア
レイを主要素とする再配列手段804で構成している。
第9図に於けるaからjまでの信号に関して、そのタイ
ミングを基本クロックφ1及びφ2と並置して第10図
に示す。
ミングを基本クロックφ1及びφ2と並置して第10図
に示す。
まず、主記憶装置より読み出された命令語はバスaを介
してデータバッファbにラッチされる。
してデータバッファbにラッチされる。
ラッチされたデータは、基本クロックφ2のタイミング
でバス213を介してFIFO901に転送される。こ
の時、制御回路911はバス213よりデータをFIF
Oに書き込む制御を信号線91!Oを介して行なってい
る。同時にバスCには実照合手段802及びコード再配
列情報記憶手段803は、プリチャージ回路及びドライ
バを除けば全てNM、O,Sトランジスタのみから構成
されるダイナミックPLA (902,903)で構成
している。従って入力ラッチ912及び出力ラッチ91
3.914が付加されている。信号dがラット912に
入力されてから、ラッチ913の出力り及びラッチ91
4の出力iが決定するまでのタイミングは第10図に示
す通りである。信号りは再配列前の命令コードであり、
信号iは再配列情報で、、ある。再配列手段804では
、信号iに従って信号りの内容を配列し直すことで信号
jを得る。
でバス213を介してFIFO901に転送される。こ
の時、制御回路911はバス213よりデータをFIF
Oに書き込む制御を信号線91!Oを介して行なってい
る。同時にバスCには実照合手段802及びコード再配
列情報記憶手段803は、プリチャージ回路及びドライ
バを除けば全てNM、O,Sトランジスタのみから構成
されるダイナミックPLA (902,903)で構成
している。従って入力ラッチ912及び出力ラッチ91
3.914が付加されている。信号dがラット912に
入力されてから、ラッチ913の出力り及びラッチ91
4の出力iが決定するまでのタイミングは第10図に示
す通りである。信号りは再配列前の命令コードであり、
信号iは再配列情報で、、ある。再配列手段804では
、信号iに従って信号りの内容を配列し直すことで信号
jを得る。
第11図は、第9図の命令、記憶手段3.01の詳軸回
である。
である。
FIFO901は1ポートのランダム アクセス メモ
リ(Random AccesSMemory) (
以下RAMと略す)〕で構成されている。データ線11
00は基本クロックφ□の期間にプリチャージ回路によ
って充電されており、基本クロックφ2の期間にデータ
のアクセスを行なう様になっている。センスアンプは、
アクセスされたデータの増幅を行なう為に付加されてい
る。制御回路911は、命令語をバス213よりFIF
O901に書き込む際に書き込み位置を指定するライト
ポインタ(第11図ではWPで示す) 、FIFO90
1に書き込まれた命令語を読み出す際に読み出し位置を
指定するリードポインタ(第11図ではR,Pで示す)
、及び前記各々のポインタの値を増加するインクリメン
タで構成されている。
リ(Random AccesSMemory) (
以下RAMと略す)〕で構成されている。データ線11
00は基本クロックφ□の期間にプリチャージ回路によ
って充電されており、基本クロックφ2の期間にデータ
のアクセスを行なう様になっている。センスアンプは、
アクセスされたデータの増幅を行なう為に付加されてい
る。制御回路911は、命令語をバス213よりFIF
O901に書き込む際に書き込み位置を指定するライト
ポインタ(第11図ではWPで示す) 、FIFO90
1に書き込まれた命令語を読み出す際に読み出し位置を
指定するリードポインタ(第11図ではR,Pで示す)
、及び前記各々のポインタの値を増加するインクリメン
タで構成されている。
第12図は第11図で示す制御回路911の詳細な論理
回路図であり、FIFO901が8ワード(1ワードは
バス213のビット長に相当する)の場合、即ち、ライ
トポインタ、リードポインタが共に3ビツトの場合の実
施例を示して、い、る、。バス9111はラインポイン
タ及び5リードポインタの、内容を読み出して転送する
バスである。、両者のポイン)りは好SET信号によっ
て内部状態をり1シアできる。■SET信号はプロセッ
サ20のリセ、2ト時にFIFO901をクリアする場
合や分岐台、令を実行しプログラムの分岐が行なわれた
時にP I F、0901に先読みした命令語が無効に
なった一合にアク5テイブになる信号である。各信号1
♀00は主記憶装置からP I F 0901i乎命令
語、を読み込むことのできやメモリ空間が存、在しない
事、即ちFIFO901が論理的に空きが無く先。読み
した命令語で満たされている事を示す信号である。又信
号1201は主記憶装置からFIFO901に命令語を
読み込むことのできるメモ、り空、間が、81、ワード
存在する!、即ち先読みし、た命令語がF 、I 、F
O901、に1つも存在しない事を示、す信号である
。信号1202はラインポインタのインクリメゼト、信
号。
回路図であり、FIFO901が8ワード(1ワードは
バス213のビット長に相当する)の場合、即ち、ライ
トポインタ、リードポインタが共に3ビツトの場合の実
施例を示して、い、る、。バス9111はラインポイン
タ及び5リードポインタの、内容を読み出して転送する
バスである。、両者のポイン)りは好SET信号によっ
て内部状態をり1シアできる。■SET信号はプロセッ
サ20のリセ、2ト時にFIFO901をクリアする場
合や分岐台、令を実行しプログラムの分岐が行なわれた
時にP I F、0901に先読みした命令語が無効に
なった一合にアク5テイブになる信号である。各信号1
♀00は主記憶装置からP I F 0901i乎命令
語、を読み込むことのできやメモリ空間が存、在しない
事、即ちFIFO901が論理的に空きが無く先。読み
した命令語で満たされている事を示す信号である。又信
号1201は主記憶装置からFIFO901に命令語を
読み込むことのできるメモ、り空、間が、81、ワード
存在する!、即ち先読みし、た命令語がF 、I 、F
O901、に1つも存在しない事を示、す信号である
。信号1202はラインポインタのインクリメゼト、信
号。
信1−1203はリードポインタのインクメント信1号
、信号1204はラインポインタの内容をバス911!
へ出力する信号、信号1205はリードポインタの内容
をバス9111へ出力する信号である。
、信号1204はラインポインタの内容をバス911!
へ出力する信号、信号1205はリードポインタの内容
をバス9111へ出力する信号である。
第1.3図は第9図の命令記憶手段301の他の実施例
、を示すもので、FIFO901をPLAでット長で転
送できる制御を同時に行なっている。
、を示すもので、FIFO901をPLAでット長で転
送できる制御を同時に行なっている。
FI・FOへのデータの入出力を制御しているPLAは
、:第1,14図に示すFIFO制御ステート・ダイア
グラム・を満足する。PLA1300の状態は第14図
に示す状態S、からSi、までの10通りの状態を遷移
するが、全ての状態においてFIFO・Ra5a、を信
号が入力すると81の状態になる。状態S、iL及、び
S、はF I F 01301が空の状態(Hnpty
:第14図、では・E、で示す)、即ち命令語がフェッ
チされて、、い:・ない、状態を・示している。又、状
11 s m −S、、S、−及、びS1g、は新たに
フェッチされる命令語・を格納す・る領域がF I F
01301内に存在しない事を示す状態’ (Ful
l =第14図ではFで示す)である。
、:第1,14図に示すFIFO制御ステート・ダイア
グラム・を満足する。PLA1300の状態は第14図
に示す状態S、からSi、までの10通りの状態を遷移
するが、全ての状態においてFIFO・Ra5a、を信
号が入力すると81の状態になる。状態S、iL及、び
S、はF I F 01301が空の状態(Hnpty
:第14図、では・E、で示す)、即ち命令語がフェッ
チされて、、い:・ない、状態を・示している。又、状
11 s m −S、、S、−及、びS1g、は新たに
フェッチされる命令語・を格納す・る領域がF I F
01301内に存在しない事を示す状態’ (Ful
l =第14図ではFで示す)である。
一方、各ステート(81〜51o)は状態記憶部130
2内に格納されており、新しい状態がPLA1300よ
り出力されると信号13002によってその状態を状゛
を入力するビット長(バス213のビット数)とFIF
O901に格納されたデータを読み出すビット長を2:
1なる読み出し及び書き込みの制御を行なった場合のF
IFO901の構成例を示したものである。メモリセル
1110の読み出し、書き込みを制御するワード線が2
つ(15001,15002)で構成されている。
2内に格納されており、新しい状態がPLA1300よ
り出力されると信号13002によってその状態を状゛
を入力するビット長(バス213のビット数)とFIF
O901に格納されたデータを読み出すビット長を2:
1なる読み出し及び書き込みの制御を行なった場合のF
IFO901の構成例を示したものである。メモリセル
1110の読み出し、書き込みを制御するワード線が2
つ(15001,15002)で構成されている。
第16図は第15図のF I F 01500の入出力
を制御する制御回路1510の詳細な論理回路図である
。
を制御する制御回路1510の詳細な論理回路図である
。
第12図に比較して、リードポインタが2つ存在してい
る(RP、、RPL)点が特徴であり、この2つのリー
ドポインタRPヨ、RPLによってFIFO内のデータ
を1/2ワード長としても1ワード長としでも取り扱う
ことができる。
る(RP、、RPL)点が特徴であり、この2つのリー
ドポインタRPヨ、RPLによってFIFO内のデータ
を1/2ワード長としても1ワード長としでも取り扱う
ことができる。
第17図はF I F 01500内のデータを1/2
ワード長で取り扱った場合にデータの先頭を常に上位側
のビットから定めるための制御回路の構成例を示したも
のである。先ずF I F 01500及び制御
□回路1510のリセットと同時にフリップ・プロッ
プ1700を信号17001によってリセットする(状
態O)。リセット後、フリップ・プロップ1700はラ
ッチ1702を選択する。F I F 01500内の
データを1/2ワード長で取り扱った場合は信号170
02によってフリップ・フロップ1700をセットする
(状態1)、この時フリップ・プロップの出力信号はラ
ッチ1701を選択する。更に、F I F 0150
0の内のデータを172ワード長で取り扱った場合は信
号17002によってフリップ・フロップ1700をリ
セットする(状態0)。以上の動作を繰り返す事でデー
タの先頭を知ることができる。
ワード長で取り扱った場合にデータの先頭を常に上位側
のビットから定めるための制御回路の構成例を示したも
のである。先ずF I F 01500及び制御
□回路1510のリセットと同時にフリップ・プロッ
プ1700を信号17001によってリセットする(状
態O)。リセット後、フリップ・プロップ1700はラ
ッチ1702を選択する。F I F 01500内の
データを1/2ワード長で取り扱った場合は信号170
02によってフリップ・フロップ1700をセットする
(状態1)、この時フリップ・プロップの出力信号はラ
ッチ1701を選択する。更に、F I F 0150
0の内のデータを172ワード長で取り扱った場合は信
号17002によってフリップ・フロップ1700をリ
セットする(状態0)。以上の動作を繰り返す事でデー
タの先頭を知ることができる。
第18図は第17図で示すフリップ・フロップの一部の
詳細図であり、第19図はそのタイミングチャートを示
している。
詳細図であり、第19図はそのタイミングチャートを示
している。
第20図は、第8図及び第9図で示すコード照合手段8
02、コード再配列情報記憶手段803、再配列手段8
04の構成の一実施例を示したものである。各信号線d
v e+ ft g* hp i及びjは第9図で示す
対応する信号と同じものであり、そのタイミングチャー
トは第10図で示す如くである。コード照合手段802
はAND型のダイナミックPLAで構成しており、コー
ド再配列情報記憶手段803はOR型のダイナミックP
LAで°−□構成している。再配列手段804はNチャ
ネル型MOSトランジスタを用いて図の如く構成してい
る。本構成の中で最も特徴とすべき事は、マイクロプロ
グラム記憶・制御ユニット202、デコーダユニット2
03の入力となるべき信号、即ち、記憶部303に格納
すべき情報jを生成する際に、命令語(信号線d)をデ
コードして命令語と全く異なる新たな2進コード(情報
jに相当)を生成するのでなく、命令語を表現している
2進コードの一部を使用するか或いは全てを再配列し直
して情報jを生成している点である。更に命令語の2進
コードを再配列する為に、命令語のコードが全く異なっ
ていても再配列の形式が全く同じ手順の命令語は同じ再
配列となる様な再配列情報を定義している点である。本
実施例によれば、従来命令語からマイクロプログラム記
憶・制御ユニットの入力であるマイクロプログラムアド
レスを生成していた命令デコーダの機能を実現でき、加
えて該デコーダに比べて約115〜1/10程度のハー
ドウェアで同機能を実現できる。
02、コード再配列情報記憶手段803、再配列手段8
04の構成の一実施例を示したものである。各信号線d
v e+ ft g* hp i及びjは第9図で示す
対応する信号と同じものであり、そのタイミングチャー
トは第10図で示す如くである。コード照合手段802
はAND型のダイナミックPLAで構成しており、コー
ド再配列情報記憶手段803はOR型のダイナミックP
LAで°−□構成している。再配列手段804はNチャ
ネル型MOSトランジスタを用いて図の如く構成してい
る。本構成の中で最も特徴とすべき事は、マイクロプロ
グラム記憶・制御ユニット202、デコーダユニット2
03の入力となるべき信号、即ち、記憶部303に格納
すべき情報jを生成する際に、命令語(信号線d)をデ
コードして命令語と全く異なる新たな2進コード(情報
jに相当)を生成するのでなく、命令語を表現している
2進コードの一部を使用するか或いは全てを再配列し直
して情報jを生成している点である。更に命令語の2進
コードを再配列する為に、命令語のコードが全く異なっ
ていても再配列の形式が全く同じ手順の命令語は同じ再
配列となる様な再配列情報を定義している点である。本
実施例によれば、従来命令語からマイクロプログラム記
憶・制御ユニットの入力であるマイクロプログラムアド
レスを生成していた命令デコーダの機能を実現でき、加
えて該デコーダに比べて約115〜1/10程度のハー
ドウェアで同機能を実現できる。
第21図は、第20図の再配列手段804の他の実施例
であり、第20図と異なる点はPLAのORアレイ(コ
ード再配列情報記憶手段803)の出力に従って情報j
を任意に指定できる点にある。第20図の実施例は、命
令コードの一部或は全てを並べ替えて情報jを得るが、
本実施例は命令コードと独立なコードを情報jとする事
ができる。即ち、コード再配列情報記憶手段803の内
容を変えるだけで、命令語を表現している2進コードが
いかなる場合でも任意のコードパターンを有する情報j
を得ることができる。
であり、第20図と異なる点はPLAのORアレイ(コ
ード再配列情報記憶手段803)の出力に従って情報j
を任意に指定できる点にある。第20図の実施例は、命
令コードの一部或は全てを並べ替えて情報jを得るが、
本実施例は命令コードと独立なコードを情報jとする事
ができる。即ち、コード再配列情報記憶手段803の内
容を変えるだけで、命令語を表現している2進コードが
いかなる場合でも任意のコードパターンを有する情報j
を得ることができる。
第22図は第8図のコード照合手段802の内容をダイ
ナミックに変換できる様に読み出し、書き込み可能なメ
モリセルで構、成した場合の例を示す。
ナミックに変換できる様に読み出し、書き込み可能なメ
モリセルで構、成した場合の例を示す。
後、照合したい命令語をバスdを介してデータ線221
01に入力する。メモリセル2210は定義し仝内容と
データ線22101の内容を比較し、一致していなかっ
た時信号線22102をLowレベルにドライブする。
01に入力する。メモリセル2210は定義し仝内容と
データ線22101の内容を比較し、一致していなかっ
た時信号線22102をLowレベルにドライブする。
1ワニド内の全ビットが一致した時、信号線22102
はHighレベルを維持する。一致検出された信号線2
2102 、の少なくとも1″′?の信号線は後段のコ
ード再配列情報記憶手段803を駆動する。
はHighレベルを維持する。一致検出された信号線2
2102 、の少なくとも1″′?の信号線は後段のコ
ード再配列情報記憶手段803を駆動する。
第23図は第22図のメモリセル2210の一例の詳細
!である。
!である。
メモリセル2210にデータを書き込む時は信号線Wに
よって制御する。またデータ線り及びDは極性が反転す
るが、プリチャージサイクル中はHighレベルにドラ
イブされる。この時信号線CはLowレベルにドライブ
される為、プリチャージの動作はコード再配列情報記憶
手段803にとって好まマイクロプログラムアドレスレ
ジスタ2403にセットすべきマイクロプログラムアド
レスの一部をセレクタ2402で選択し、選択された信
号2402 aとマイクロ命令レジスタ2406の出力
の一部である信号2406 eを合成して、前記マイク
ロプログラムアドレスレジスタ2403に格納する。マ
イクロプログラムアドレスレジスタ2403の出力はア
ドレスデコーダ2404に送られる一方、マイクロプロ
グラムインクリメン、り2408で1の増加をし信1号
2408 aとしてセレクタ2402に送られる。アド
レスデコーダ2404では、マイクロプログラムアドレ
スをデコードし、その結果をマイクロ命令記憶部240
5に送る。
よって制御する。またデータ線り及びDは極性が反転す
るが、プリチャージサイクル中はHighレベルにドラ
イブされる。この時信号線CはLowレベルにドライブ
される為、プリチャージの動作はコード再配列情報記憶
手段803にとって好まマイクロプログラムアドレスレ
ジスタ2403にセットすべきマイクロプログラムアド
レスの一部をセレクタ2402で選択し、選択された信
号2402 aとマイクロ命令レジスタ2406の出力
の一部である信号2406 eを合成して、前記マイク
ロプログラムアドレスレジスタ2403に格納する。マ
イクロプログラムアドレスレジスタ2403の出力はア
ドレスデコーダ2404に送られる一方、マイクロプロ
グラムインクリメン、り2408で1の増加をし信1号
2408 aとしてセレクタ2402に送られる。アド
レスデコーダ2404では、マイクロプログラムアドレ
スをデコードし、その結果をマイクロ命令記憶部240
5に送る。
マイ、クロ命、令、記憶部2405では指定されたマイ
クロ命令を読み出して、マイクロ命令し、ジスタ240
6に格、納見る。マイクロ命令レジスタ2406の出力
は、3つに大別、され、、伺、号2406a、はデ、巳
ニダユニット203、及び演算ユニット2.04を制御
す、る信号であり、信号2406 bはマイク、ロブロ
グ、ラムで分岐が、生じた場合に分岐先アドレスを指定
する信号であり、信号2406cltマイ、クロプログ
ラムの次のアドレ、スを制御!る信竺である。制御回路
?407は信号2406 cに従ってセレクタ2402
を制御、!る信号2407、a及びマイクロプログラム
アドレスを退避する、スタック2409を制御!る信号
2407bを生感す、る制御、回路である0、。
クロ命令を読み出して、マイクロ命令し、ジスタ240
6に格、納見る。マイクロ命令レジスタ2406の出力
は、3つに大別、され、、伺、号2406a、はデ、巳
ニダユニット203、及び演算ユニット2.04を制御
す、る信号であり、信号2406 bはマイク、ロブロ
グ、ラムで分岐が、生じた場合に分岐先アドレスを指定
する信号であり、信号2406cltマイ、クロプログ
ラムの次のアドレ、スを制御!る信竺である。制御回路
?407は信号2406 cに従ってセレクタ2402
を制御、!る信号2407、a及びマイクロプログラム
アドレスを退避する、スタック2409を制御!る信号
2407bを生感す、る制御、回路である0、。
第25図(a)は第24、図におけるマイクロプログラ
ムアドレスレジスタ2403、アドレスデコーダ240
4、マイクロ命令記憶部2405及びマイクロ命令レジ
ス、り2406の二寒施例を示すも省、である。 。
ムアドレスレジスタ2403、アドレスデコーダ240
4、マイクロ命令記憶部2405及びマイクロ命令レジ
ス、り2406の二寒施例を示すも省、である。 。
、ア、イクロプログ?ムアドレスレジスタ2403の1
ビ、ットは例えば、925図(b)に示す様にフリ。
ビ、ットは例えば、925図(b)に示す様にフリ。
ツブ・フロップ25037示す構成と4って、いる。ま
たアドレスデコーダ2404はAND型のダイナミツり
P、 L Aでありマイクロ命令記憶部はOR型のダイ
ナミック、PL、Aで構成されている。また、マイクロ
命令し、ジスタ2406はダイナミックラッチで構成さ
れている。
たアドレスデコーダ2404はAND型のダイナミツり
P、 L Aでありマイクロ命令記憶部はOR型のダイ
ナミック、PL、Aで構成されている。また、マイクロ
命令し、ジスタ2406はダイナミックラッチで構成さ
れている。
第26図に各信号のタイミングを、基本クロックの出4
力24(jl aが確定してからマイクロ命令レジスタ
2406.の出力を得るまで1クロツクサイクル必要と
する。 ・ 第27図は基本クロックφ1及びφ2を停止させること
なく、マイクロプログラム記憶・制御ユニット202を
停止させた場合の各信号のタイミングを示して、いる。
力24(jl aが確定してからマイクロ命令レジスタ
2406.の出力を得るまで1クロツクサイクル必要と
する。 ・ 第27図は基本クロックφ1及びφ2を停止させること
なく、マイクロプログラム記憶・制御ユニット202を
停止させた場合の各信号のタイミングを示して、いる。
信号24Aはマイクロプログラム記憶・制御□ユ・ニッ
ト202に停止を与える信号であり、該信号がHigh
レベルになると、マイクロプログラム記憶レ・スレジス
タ2403の更新を停止・すると共にマイクロ命令レジ
スタ2406の出力が全てLowレベルとな、る、この
時のマイクロ命令”レジスタ、の固有の値(全てLow
レベルである事)、(3B) を被制御系にとって見かけ上何もしない状態(いわゆる
No 0peratjon状態)とする事で、マイクロ
プログラム記憶・制御ユニット202を見かけ上停止さ
せることができる。第27図の例はマイクロ命令2(図
ではμIR2で表現)とマイクロ命令3(図ではμIR
3で表現)の各サイクルの間に1クロツクサイクル分の
停止を与えた場合(図ではN’!opと表示)のタイミ
ングを示している。
ト202に停止を与える信号であり、該信号がHigh
レベルになると、マイクロプログラム記憶レ・スレジス
タ2403の更新を停止・すると共にマイクロ命令レジ
スタ2406の出力が全てLowレベルとな、る、この
時のマイクロ命令”レジスタ、の固有の値(全てLow
レベルである事)、(3B) を被制御系にとって見かけ上何もしない状態(いわゆる
No 0peratjon状態)とする事で、マイクロ
プログラム記憶・制御ユニット202を見かけ上停止さ
せることができる。第27図の例はマイクロ命令2(図
ではμIR2で表現)とマイクロ命令3(図ではμIR
3で表現)の各サイクルの間に1クロツクサイクル分の
停止を与えた場合(図ではN’!opと表示)のタイミ
ングを示している。
第28図はデコーダユニット203内の演算制御デコー
ダ2030の構成を示したものであり、デコーダコント
ローララッチ2800、レジスタ制御第1デコーダ28
10、レジスタ制御第2デコーダ2820、演算回路制
御デコーダ2840及び遅延回路2830 。
ダ2030の構成を示したものであり、デコーダコント
ローララッチ2800、レジスタ制御第1デコーダ28
10、レジスタ制御第2デコーダ2820、演算回路制
御デコーダ2840及び遅延回路2830 。
2850から成る。レジスタ制御第1デコーダ2810
は演算すべきデータが格納されているソースレジスタを
指定する部分であり、レジスタ制御第2デコーダ282
0は演算結果を格納するデスティネーションレジスタを
指定する部分であり、演算回路制御デコーダ2840は
演算の種類(加算、減算、論理和。
は演算すべきデータが格納されているソースレジスタを
指定する部分であり、レジスタ制御第2デコーダ282
0は演算結果を格納するデスティネーションレジスタを
指定する部分であり、演算回路制御デコーダ2840は
演算の種類(加算、減算、論理和。
論理積、排他論理和)を指定する。演算すべきソ−スレ
ジスタを読み出して演算を行なってから結果が確定する
まで1クロツクサイクル必要とする為、遅延回路283
0で信号2801を1クロツクサイクル遅延させている
。演算回路制御デコーダ284oの出力信号2841及
び2842は使用するタイミングが異なるため、遅延回
路2850で信号2842を遅延させている。
ジスタを読み出して演算を行なってから結果が確定する
まで1クロツクサイクル必要とする為、遅延回路283
0で信号2801を1クロツクサイクル遅延させている
。演算回路制御デコーダ284oの出力信号2841及
び2842は使用するタイミングが異なるため、遅延回
路2850で信号2842を遅延させている。
第29図は第28図のデコーダコントロールランチ28
00、レジスタ制御第1デコーダ2810.レジスタ制
御第2デコーダ2820及び遅延回路283oの構成の
一実施例を示したものである。
00、レジスタ制御第1デコーダ2810.レジスタ制
御第2デコーダ2820及び遅延回路283oの構成の
一実施例を示したものである。
本実施例の最も特徴とする事は、レジスタ制御第1デコ
ーダ2810及びレジスタ制御第2デコーダをAND型
のダイナミックP LAで構成し、該PLAの出力線2
812をPチャネル型Mosトランジスタでプリチャー
ジし、プリチャージ期間に出力される信号2812の固
有のレベル(本実施例ではHighレベル)をレジスタ
の入出力に対し全て非選択の状態とし、プリチャージ期
間が終了後PLAの論理が成立した信号線2812のみ
ティチャージを行ないレジスタの入出力信号線2813
をレジスタの選択状態にしている点である。
ーダ2810及びレジスタ制御第2デコーダをAND型
のダイナミックP LAで構成し、該PLAの出力線2
812をPチャネル型Mosトランジスタでプリチャー
ジし、プリチャージ期間に出力される信号2812の固
有のレベル(本実施例ではHighレベル)をレジスタ
の入出力に対し全て非選択の状態とし、プリチャージ期
間が終了後PLAの論理が成立した信号線2812のみ
ティチャージを行ないレジスタの入出力信号線2813
をレジスタの選択状態にしている点である。
第30図はレジスタ制御第1デコーダ2810の各信号
のタイミングを基本クロックと並置して示しである。デ
コーダコントロールラット2800の出力2801が決
定してからレジスタの読み出し制御信号雀2811fJ
へ決定しレジスタの内容が読み出されるまでが1クロツ
クサイクルで行なわれている。即ち本実施例によれば、
スタティックPLAに比べて約1/3のハードウェア量
で実現でき、信号線2812の電荷の流出は選択された
信号線のみである為消費電力が小さくなり、従来のスタ
テイクデコーダと同等のレジスタアクセスのタイミング
で動作可能となる。
のタイミングを基本クロックと並置して示しである。デ
コーダコントロールラット2800の出力2801が決
定してからレジスタの読み出し制御信号雀2811fJ
へ決定しレジスタの内容が読み出されるまでが1クロツ
クサイクルで行なわれている。即ち本実施例によれば、
スタティックPLAに比べて約1/3のハードウェア量
で実現でき、信号線2812の電荷の流出は選択された
信号線のみである為消費電力が小さくなり、従来のスタ
テイクデコーダと同等のレジスタアクセスのタイミング
で動作可能となる。
また、前記PLAの出力線の論理和が必要とする場合は
、出力線同志を直結したワイアードオア構成とする事で
論理和が得られる。
、出力線同志を直結したワイアードオア構成とする事で
論理和が得られる。
第31図は演算ユニット204の構成の一例を示したも
ので、データを一時記憶するテンポラリレジスタ310
0、演算結果の状態を格納するステイタスレジスタ31
10、演算回路3120、演算すべきデータを一時記憶
するソースラッチ3130、演算結果を左1ビツト或は
右1ビツトシフトできるシフト回路3140、演算結果
を一時記憶するデスティネーションラッチ3150、バ
ス213から読み込んだデータを一時記憶するり一ドデ
ータレジスタ31601.7ト′データレジスタ317
0から成る。
ので、データを一時記憶するテンポラリレジスタ310
0、演算結果の状態を格納するステイタスレジスタ31
10、演算回路3120、演算すべきデータを一時記憶
するソースラッチ3130、演算結果を左1ビツト或は
右1ビツトシフトできるシフト回路3140、演算結果
を一時記憶するデスティネーションラッチ3150、バ
ス213から読み込んだデータを一時記憶するり一ドデ
ータレジスタ31601.7ト′データレジスタ317
0から成る。
先ず、演算すべきデータの一方をバス31Aを介してソ
ースラッチ3130へ送る。この時、ソースラッチ31
30の内容とリードデータレジスタ3160の内容が演
算回路へ入力され、信号線2823で指定した演算が行
なわれる。演算結果はデスティネーションラッチ315
0で一時記憶され、バス31Bを介して信号2813で
指定されたレジスタへ書込まれる。
ースラッチ3130へ送る。この時、ソースラッチ31
30の内容とリードデータレジスタ3160の内容が演
算回路へ入力され、信号線2823で指定した演算が行
なわれる。演算結果はデスティネーションラッチ315
0で一時記憶され、バス31Bを介して信号2813で
指定されたレジスタへ書込まれる。
一方、演算結果に従って該結果の符号を示す信号、該結
果がゼロであった事を示す信号、演算結果のキャリー(
ボロー)を示す信号、演算時のオーバーフローを示す信
号は全て信号線31Cを経てスティタス制御回路318
0に入力され、マイクロ命令の一部である信号2803
で指定された前記信号の状態をスティタスレジスタ31
10に格納する。
果がゼロであった事を示す信号、演算結果のキャリー(
ボロー)を示す信号、演算時のオーバーフローを示す信
号は全て信号線31Cを経てスティタス制御回路318
0に入力され、マイクロ命令の一部である信号2803
で指定された前記信号の状態をスティタスレジスタ31
10に格納する。
第32図、第33図及び第84図は第31図に示す演算
ユニット204の各構成要素の詳細回路図の一例を示し
たものである。
ユニット204の各構成要素の詳細回路図の一例を示し
たものである。
バス31A、31Bは基本クロックφ1がHigh(1
)テンポラリレジスタ3100の1ビツト構成テンポラ
リレジスタ3100の1ビツトの構成は。
)テンポラリレジスタ3100の1ビツト構成テンポラ
リレジスタ3100の1ビツトの構成は。
最下位ビットで示すと、バス31B−0に接続された書
き込み用ゲート3101−0.ドライブ用ゲート310
3−Q、帰還用ゲート3102−0、バス31A−〇に
接続された読み出し用ゲート3104−0から成る。テ
ンポラリレジスタの書き込み動作は制御信号3200
aをHighとすることにより、書き込みバス31B−
0の内容を書き込み用ゲート3101−0を通過して行
なわれる。一方、読み出し動作は制御信号3200bを
Highとすることにより、ドライブ用ゲート3103
−0の出力が読み出し用ゲート3104−0を介して読
み出しバス31A−0に印加される。
き込み用ゲート3101−0.ドライブ用ゲート310
3−Q、帰還用ゲート3102−0、バス31A−〇に
接続された読み出し用ゲート3104−0から成る。テ
ンポラリレジスタの書き込み動作は制御信号3200
aをHighとすることにより、書き込みバス31B−
0の内容を書き込み用ゲート3101−0を通過して行
なわれる。一方、読み出し動作は制御信号3200bを
Highとすることにより、ドライブ用ゲート3103
−0の出力が読み出し用ゲート3104−0を介して読
み出しバス31A−0に印加される。
(2)スティタス制御回路318o及びスティタスレジ
スタ3110 スティタス制御回路3180はマイクロ命令28o3及
び演算結果のスティタス情報31Cを入力とし、スティ
タスレジスタへ書き込むセット信号3281及び書き込
むべきデータ3282を出力とするPLAである。ステ
ィタスレジスタ3110は最下位ビットで示すと、テン
ポラリレジスタ3100の最下位ビットに比べて、入力
ゲート3110−0を付加した構成である。ここで注目
すべき点は、ゲート3110−0を通過してデータ32
82を書き込む動作が演算ユニット204内のバス31
A及び31Bのプリチャージ期間で行なわれている事に
ある。
スタ3110 スティタス制御回路3180はマイクロ命令28o3及
び演算結果のスティタス情報31Cを入力とし、スティ
タスレジスタへ書き込むセット信号3281及び書き込
むべきデータ3282を出力とするPLAである。ステ
ィタスレジスタ3110は最下位ビットで示すと、テン
ポラリレジスタ3100の最下位ビットに比べて、入力
ゲート3110−0を付加した構成である。ここで注目
すべき点は、ゲート3110−0を通過してデータ32
82を書き込む動作が演算ユニット204内のバス31
A及び31Bのプリチャージ期間で行なわれている事に
ある。
(3)ソースラッチ3130
演算データを一時記憶するダイナミックラッチであり、
制御信号2813に従ってデータを反転して入力できる
。
制御信号2813に従ってデータを反転して入力できる
。
(4)演算回路3120
3本の制御線3321に従って、加算、論理和、論理積
、排他的論理和を得ることができる。
、排他的論理和を得ることができる。
(5)シフト回路3140
信号線3341に従って左右1ビットのシフトができる
。信号線3341RをHighにすることで1ビツトの
右シフト、信号線3341LをHighにすることで1
ビツトの左シフトとなる。
。信号線3341RをHighにすることで1ビツトの
右シフト、信号線3341LをHighにすることで1
ビツトの左シフトとなる。
(6)デスティネーションラッチ3150シフト回路3
140の出力を一時記憶するダイナミックラッチである
。バス31Bへデータを出力できる唯一のソースである
。
140の出力を一時記憶するダイナミックラッチである
。バス31Bへデータを出力できる唯一のソースである
。
(7)リードデータレジスタ3160及びライトデータ
レジスタ3170 リードデータレジスタ3160はバス213の内容を一
時記憶するもので、その内容は演算回路3120の入力
の一方シこ成るか或いはバス31Aへ転送される。一方
、ライトデータレジスタ3170はバス213へ出力す
るデータを一時記憶するもので、その内容は演算結果を
経由するバス31Bより入力される。
レジスタ3170 リードデータレジスタ3160はバス213の内容を一
時記憶するもので、その内容は演算回路3120の入力
の一方シこ成るか或いはバス31Aへ転送される。一方
、ライトデータレジスタ3170はバス213へ出力す
るデータを一時記憶するもので、その内容は演算結果を
経由するバス31Bより入力される。
第34図はバス213が16ビツトであり、リードデー
タレジスタ3160及びライトデータレジスタ3170
が32ビツトの場合の構成を示したもので、バス213
への入出力を制御する信号236a。
タレジスタ3160及びライトデータレジスタ3170
が32ビツトの場合の構成を示したもので、バス213
への入出力を制御する信号236a。
28f3b’、286c、236dは、前記2つのレジ
スタの入出力を下位16ビツト、上位16ビツトと独立
に制御する。
スタの入出力を下位16ビツト、上位16ビツトと独立
に制御する。
例を示すものである。
プロセッサ20のリセット時、端子353oのレベルを
レベル検出、記憶回路3531で検出し、その内容を記
憶する。 ・ 動作例を次の2つの場合に分けて説明する。
レベル検出、記憶回路3531で検出し、その内容を記
憶する。 ・ 動作例を次の2つの場合に分けて説明する。
(1)レベル検出・記憶回路3531の出力3532が
Lowレベルであった時の動作 メモリアドレスレジスタ1(第35図ではMARIで表
示)の内容をバス212に転送し、バッファ3520を
介して端子3521に転送する。マルチプレクサ2(図
ではMPX2で表示) 3550はバス212の内容を
選択し主記憶装置3500に印加する。バス212の内
容がプロセッサ20外の主記憶装置のアドレスを示して
いる場合は、端子3511より入力されたバス213の
内容をバッファ3510で選択する。一方、バス212
の内容がプロセッサ20内の主記憶装置のアドレスを示
している場合は、バス3501の内容をバッファ351
0で選択する。バッフ否かをデコードするデコーダ35
60の出力3561で制御される。バッファ3510の
出力3512はマルチプレクサ1(図ではMPXIで表
示) 3540で選択され命令記憶手段301に転送さ
れる。
Lowレベルであった時の動作 メモリアドレスレジスタ1(第35図ではMARIで表
示)の内容をバス212に転送し、バッファ3520を
介して端子3521に転送する。マルチプレクサ2(図
ではMPX2で表示) 3550はバス212の内容を
選択し主記憶装置3500に印加する。バス212の内
容がプロセッサ20外の主記憶装置のアドレスを示して
いる場合は、端子3511より入力されたバス213の
内容をバッファ3510で選択する。一方、バス212
の内容がプロセッサ20内の主記憶装置のアドレスを示
している場合は、バス3501の内容をバッファ351
0で選択する。バッフ否かをデコードするデコーダ35
60の出力3561で制御される。バッファ3510の
出力3512はマルチプレクサ1(図ではMPXIで表
示) 3540で選択され命令記憶手段301に転送さ
れる。
(i)命令のフェッチ
命令のフェッチはメモリアドレスレジスタ1(MARL
)に命令アドレスレジスタ(MAR)の内容をセットし
、主記憶装置の読み出しを行なう。
)に命令アドレスレジスタ(MAR)の内容をセットし
、主記憶装置の読み出しを行なう。
(ii)データのリード及びライト
データのリード及びライトはデータアドレスレジスタ(
DAR)の内容をメモリアドレスレジスタ1 (MAR
L)にセットして、主記憶装置の読み出し及び書き込み
を行なう。この時のデータアドレスレジスタ(DAR)
には演算ユニット204で既に実効アドレス計算されて
おり、その内容がDARにセットされている。
DAR)の内容をメモリアドレスレジスタ1 (MAR
L)にセットして、主記憶装置の読み出し及び書き込み
を行なう。この時のデータアドレスレジスタ(DAR)
には演算ユニット204で既に実効アドレス計算されて
おり、その内容がDARにセットされている。
(i)命令のフェッチ
メモリアドレスレジスタ2 (IAR2)に命令アドレ
スレジスタ(IAR)の内容をセットし、バス3502
を介してマルチプレクサ2 (MPX2)3550に転
送する。マルチプレクサ2 (MPX2)ではバス35
02の内容を選択し、主記憶装置3500に印加する。
スレジスタ(IAR)の内容をセットし、バス3502
を介してマルチプレクサ2 (MPX2)3550に転
送する。マルチプレクサ2 (MPX2)ではバス35
02の内容を選択し、主記憶装置3500に印加する。
一方、主記憶装置3500の出力はバス3501を介し
てマルチプレクサ1 (MPXI)で選択され命令記憶
手段301に転送される。
てマルチプレクサ1 (MPXI)で選択され命令記憶
手段301に転送される。
(3i)データのリード及びライト
既に演算ユニット204で計算されたデータアドレスレ
ジスタ(DAR)内の実効アドレスをメモリアドレスレ
ジスタ1 (MARL)に転送し、バス212を介して
バッファ3520に転送する。バッファ3520の内容
は端子3521を介してプロセッサ20外の主記憶装置
に印加される。
ジスタ(DAR)内の実効アドレスをメモリアドレスレ
ジスタ1 (MARL)に転送し、バス212を介して
バッファ3520に転送する。バッファ3520の内容
は端子3521を介してプロセッサ20外の主記憶装置
に印加される。
一方、リード或いはライトすべきデータは端子3511
及びバス213を介してプロセッサ20内の演算ユニッ
ト204とプロセッサ20外の主記憶装置、或いはバス
213に接続されているプロセッサ20内の主記憶装置
との間で授受される。
及びバス213を介してプロセッサ20内の演算ユニッ
ト204とプロセッサ20外の主記憶装置、或いはバス
213に接続されているプロセッサ20内の主記憶装置
との間で授受される。
即ち、レベル検出・記憶回路3531の出力3522が
Highレベルの場合は、命令のフェッチはプロセッサ
20内に具備された主記憶装置3500から行ない、デ
ータのリード及びライトは主記憶装置3500以外の主
記憶装置と行ない、命令のフェッチとデータのリード及
びライトが同時に行なわれることを特徴としている。従
って本実施例によれば、命令のフェッチとデータのリー
ド及びライトが同時に行なう事が可能となるため、命令
語の処理時間が短縮される。
Highレベルの場合は、命令のフェッチはプロセッサ
20内に具備された主記憶装置3500から行ない、デ
ータのリード及びライトは主記憶装置3500以外の主
記憶装置と行ない、命令のフェッチとデータのリード及
びライトが同時に行なわれることを特徴としている。従
って本実施例によれば、命令のフェッチとデータのリー
ド及びライトが同時に行なう事が可能となるため、命令
語の処理時間が短縮される。
第36図はメモリをアクセスするサイクル(命令フェッ
チサイクル、データリードサイクル、データライトサイ
クルを指す)を可変とするプロセッサ20の一実施例を
示すものである。
チサイクル、データリードサイクル、データライトサイ
クルを指す)を可変とするプロセッサ20の一実施例を
示すものである。
命令で読み出し及び書き込み操作のできるレジの値に従
ってメモリのアクセスサイクルを変化させた例を示す。
ってメモリのアクセスサイクルを変化させた例を示す。
第37図の(a)で示すレジスタ、:9う。従ってこの
場合に適合したマイクロプログラム記憶・制御ユニット
202を構成することで、レジスタ値が1の場合はメモ
リアクセス制御回路より信号24Aにマイクロプログラ
ム記憶・制御ユニット202へ1クロックサイクル分の
停止を行ないメモリアクセスが3クロツクを実現できる
。
場合に適合したマイクロプログラム記憶・制御ユニット
202を構成することで、レジスタ値が1の場合はメモ
リアクセス制御回路より信号24Aにマイクロプログラ
ム記憶・制御ユニット202へ1クロックサイクル分の
停止を行ないメモリアクセスが3クロツクを実現できる
。
即ち、本実施例によればプロセッサ20と組み合わせて
使用される主記憶装置のアクセスのサイクルを、命令で
レジスタの値を指定することで変えることができ、使用
する主記憶装置が変わりそのアクセスサイクルが変わっ
ても、プロセッサ20外に余分な制御回路を付加するこ
となく適応できる。
使用される主記憶装置のアクセスのサイクルを、命令で
レジスタの値を指定することで変えることができ、使用
する主記憶装置が変わりそのアクセスサイクルが変わっ
ても、プロセッサ20外に余分な制御回路を付加するこ
となく適応できる。
本発明によれば、処理する命令語の命令形式が変わって
も、命令語記憶・変換ユニットを除く、プロセッサ内の
全てのハードウェアを変更、追加することなく対応でき
、命令語を解読するハードウェア規模が、従来の命令デ
コーダ方式の115ができる。
も、命令語記憶・変換ユニットを除く、プロセッサ内の
全てのハードウェアを変更、追加することなく対応でき
、命令語を解読するハードウェア規模が、従来の命令デ
コーダ方式の115ができる。
第1図員土本発明の一実施例を示すプロセッサの構成図
、第2図は本発明の一実施例を示すシングルチップマイ
コンの構成図、第3図から第23図は本発明の実施例を
示す命令語記憶・変換ユニットの構成図、第24図から
第27図はマイクロプログラム記憶・制御ユニットの構
成の一例を示す図、第28図から第30図はデコーダユ
ニットの構成の一例を示す図、第31図から第34図は
演算ユニットの構成の一例を示す図、第35図から第3
7図はメモリのアクセスに関する説明図である。 20・・・プロセッサ部分、201・・・命令語記憶・
変換ユニット、202・・・マイクロプログラム記憶・
制f14ユニット、203・・・デコーダユニット、2
04・・・演算ユニット、205・・・パスインタフェ
イスユニット。
、第2図は本発明の一実施例を示すシングルチップマイ
コンの構成図、第3図から第23図は本発明の実施例を
示す命令語記憶・変換ユニットの構成図、第24図から
第27図はマイクロプログラム記憶・制御ユニットの構
成の一例を示す図、第28図から第30図はデコーダユ
ニットの構成の一例を示す図、第31図から第34図は
演算ユニットの構成の一例を示す図、第35図から第3
7図はメモリのアクセスに関する説明図である。 20・・・プロセッサ部分、201・・・命令語記憶・
変換ユニット、202・・・マイクロプログラム記憶・
制f14ユニット、203・・・デコーダユニット、2
04・・・演算ユニット、205・・・パスインタフェ
イスユニット。
Claims (1)
- 【特許請求の範囲】 1、命令語に従ってデータを処理する装置において、 (A)1回の読み取り操作で与えられる命令語を少なく
とも1語以上記憶できる命令語記憶手段と、 (B)前記命令語記憶手段に接続され、命令語を中間機
械語に再編成する第1の命令解読手段と、(C)前記第
1の命令解読手段に接続された記憶部と、 (D)前記記憶部と接続された少なくとも1つ以上のマ
イクロプログラム記憶手段とマイクロ命令を解読する少
なくとも1つ以上の第2の命令解読手段で構成されてお
り、 前記第1の命令解読手段では前記命令語から前記第2の
命令解読手段の入力と1対1に対応する情報を前記記憶
部に格納し、 前記第2の命令解読手段では前記マイクロプログラム記
憶手段の出力であるマイクロ命令で前記第2の命令解読
手段の出力を無効にできる様に制御した事を特徴とする
データ処理装置。 2、実行されるべきオペレーションを指定するオペレー
ション情報を含む命令語の少なくとも一つはオペランド
を含む主記憶装置の位置を識別するオペランド指定情報
を少なくとも1つ含んでいる命令語であって、前記命令
語に応答してオペランドを処理するデータ処理装置にお
いて、 (A)相続き入力される命令語を通常順次検索して記憶
できる命令語記憶手段と、 (B)前記命令語記憶手段に接続されており、命令語に
含まれているオペレーション情報とオペランド指定情報
の位置を検出して、オペレーション情報及びオペランド
指定情報を独立に抽出できる命令解読手段と、 (C)前記命令語記憶手段に接続されており、オペレー
ション情報及びオペランド指定情報が格納されるビット
位置があらかじめ定められている記憶部とを備えており
、 前記命令語に含まれるオペレーション情報とオペランド
指定情報を抽出し、前記記憶部の定められたビット位置
に配列し直して格納して、該記憶部の内容に従って処理
を行なう事を特徴とするデータ処理装置。 3、実行されるべきオペレーションを指定するオペレー
ション情報を含む命令語を記憶する主記憶装置、前記命
令語の少なくとも一つはオペランドを含む主記憶装置の
位置を識別するオペランド指定情報を少なくとも1つ含
んでいる命令語であって、前記主記憶装置には、前記命
令語が命令の機能が同じでも命令を表現する2進コード
が異なる少なくとも2種類の命令形式を持つ命令語で表
現されており、前記少なくとも2種類の命令形式を持つ
命令語に応答してオペランドを処理するデータ処理装置
とを有するにおいて、 前記データ処理装置は、 (A)前記主記憶装置から相続く命令語を通常順次検索
して記憶できる命令語記憶手段と、 (B)前記命令語記憶手段に接続されており、命令語に
含まれているオペレーション情報とオペランド指定情報
の位置を検出して、オペレーション情報及びオペランド
指定情報を独立に抽出し、かつ前記主記憶装置内の命令
語の複数の命令形式に対応した複数個の前記命令解読手
段と、(C)前記複数個の命令解読手段のいずれか1つ
の出力を選択するマルチプレクサと、 (D)前記マルチプレクサを制御する制御手段と、(E
)前記マルチプレクサに接続され、オペレーションコー
ド情報及びオペランド指定情報が格納されるビット位置
があらかじめ定められている記憶部を備えており、 前記主記憶装置から読み出した命令語に含まれるオペレ
ーション情報とオペランド指定情報を抽出して、前記記
憶部の定められたビット位置に配列し直して格納して、
該記憶部の内容に従って処理を行なう事を特徴とするデ
ータ処理システム。 4、特許請求の範囲第3項記載において、マルチプレク
サを制御する制御手段は、主記憶装置内の命令あるいは
他から与えられた命令を実行することで、該制御手段を
制御できる事を特徴とするデータ処理システム。 5、実行されるべきオペレーションを指定するオペレー
ション情報を含む命令語の少なくとも一つはオペランド
を含む主記憶装置の位置を識別するオペランド指定情報
を少なくとも1つ含んでいる命令語であって、前記命令
に応答してオペランドを処理するデータ処理装置におい
て、 (A)相続き入力される命令語を通常順次検索して記憶
できる命令語記憶手段と、 (B)前記命令語記憶手段に接続されており、命令語に
含まれているオペレーション情報とオペランド指定情報
の位置を検出して、オペレーション情報及びオペランド
指定情報を独立に抽出できる命令解読手段と、 (C)オペレーション情報及びオペランド指定情報が格
納されるビット位置があらかじめ定められている記憶部
と、 (D)主記憶装置から読み出した命令語に含まれるオペ
レーション情報とオペランド指定情報を前記記憶部の定
められたビット位置に格納するため抽出し配列し直した
情報を転送する第1のパスと、 (E)前記記憶部と主記憶装置を結ぶ第2のパスと、 (F)前記第1のパスか前記第2のパスのいずれか一方
を選択できるマルチプレクサと、 (G)前記マルチプレクサを制御できる制御回路とを備
えており、 前記記憶部に格納された情報に従って処理を行なう事を
特徴とするデータ処理装置。 6、特許請求の範囲第5項記載において、マルチプレク
サを制御する制御手段は、主記憶装置内の命令あるいは
他から与えられた命令を実行することで、該制御手段を
制御できる事を特徴とするデータ処理装置。 7、特許請求の範囲第5項記載において、命令及びオペ
ランドを記憶する主記憶装置とデータ処理装置が1チッ
プの半導体基板上の構成されていることを特徴とするデ
ータ処理装置。 8、外部から与えられる命令語に従ってマイクロプログ
ラムメモリの該当するアドレスからマイクロ命令を読み
出して演算部の制御を行なうデータ処理装置において、 (A)外部から相続いて入力される命令語を通常順次検
索して少なくとも1語以上記憶できる命令語記憶手段と
、 (B)前記命令語記憶手段に接続され、前記命令語を解
読し前記マイクロプログラムメモリのアドレスを生成す
る命令解読手段とを備えており、前記命令解読手段は、 ・あらかじめ定めておいた情報と命令コードとを照合し
その一致を検出できるコード照合手段と、 ・前記コード照合手段の結果を受けて、命令コードの全
てあるいは一部の配列を変える為の配列情報が定義でき
るコード再配列情報記憶手段と、 ・前記コード再配列情報記憶手段に接続され、前記配列
情報に従って命令コードを配列し直す再配列手段から構
成され、 前記命令コードに対応した再配列手段の結果をマイクロ
プログラムメモリのアドレスとしたことを特徴とするデ
ータ処理装置。 9、特許請求の範囲第8項記載において、コード照合手
段かコード再配列情報記憶手段の少なくとも一方がプロ
グラム可能な記憶素子 (programmable Logic Array
)で構成されている事を特徴とするデータ処理装置 10、特許請求の範囲第8項記載において、コード照合
手段は、随時読み出し及び書き込みが可能な記憶素子(
Rardom Access Memory)で記憶素
子の内容とデータ線の内容の一致が検出できるメモリセ
ルで構成した事を特徴とするデータ処理装置。 11、主記憶装置から読み出した命令語あるいは他から
与えられた命令語を順次実行するデータ処理装置におい
て、 前記主記憶装置から相続く命令語を通常順次検索して少
なくとも1語以上記憶できる命令語記憶手段を備えてお
り、前記命令語記憶手段は命令語を記憶するメモリ部と
メモリ部に対するデータの読み出し及び書き込みを制御
する制御部から成り、1回の書き込み操作で取り扱うデ
ータ長の半分のデータ長を読み出す事ができることを特
徴としたデータ処理装置。 12、特許請求の範囲第11項記載において、メモリ部
を制御する制御部をプログラム可能な記憶素子(Pro
grammable Logic Array)で構成
した事を特徴とするデータ処理装置。 13、関連する複数のマイクロ命令から成るマイクロ命
令群が複数格納されているメモリから、メモリアドレス
レジスタに取り込まれた情報に従って対応するマイクロ
命令を読み出すと共に、該マイクロ命令をマイクロ命令
レジスタに格納し、該マイクロ命令レジスタの内容に基
づいて演算部を制御する様に形成されたマイクロプログ
ラム制御装置において、 マイクロプログラム制御装置の機能を停止させる信号が
発生すると、前記メモリアドレスレジスタの更新を禁止
する第1の手段と、 読み出されたマイクロ命令を無効にして見かけ上演算部
が何もしない様な固有の信号を発生させる第2の手段と
を設けることで、 マイクロ命令を格納する前記メモリへ供給する基本クロ
ックの供給を停止することなく、前記メモリの読み出し
動作を停止することなく、見かけ上マイクロプログラム
制御装置の機能を停止することを特徴とするマイクロプ
ログラム制御装置。 14、特許請求の範囲第13項記載において、メモリア
ドレスレジスタの更新を禁止する第1の手段は、前記メ
モリアドレスレジスタを更新する基本クロックとマイク
ロプログラム制御装置の機能を停止される信号を入力と
したノアゲートである事を特徴とするマイクロプログラ
ム制御装置。 15、特許請求の範囲第13項記載において、読み出さ
れたマイクロ命令を無効にして見かけ上演算部が何もし
ない様な固有の信号を発生させる第2の手段は、マイク
ロ命令レジスタの内容の更新を禁止すると共にマイクロ
命令レジスタの出力を全てLowレベルに固定する事を
特徴とするマイクロプログラム制御装置。 16、特許請求の範囲第13項記載において、読み出さ
れたマイクロ命令を無効にして見かけ上演算部が何もし
ない様な固有の信号を発生させる第2の手段は、マイク
ロ命令レジスタの出力に接続された論理回路であり、前
記マイクロプログラム制御装置の機能を停止させる信号
でマイクロ命令レジスタからの入力が無効となる様に、
マイクロ命令レジスタからの信号と前記マイクロプログ
ラム制御装置の機能を停止させる信号との論理積或は論
理和を必要に応じて設けた前記論理回路である事を特徴
とするマイクロプログラム制御装置。 17、主記憶装置から読み出した命令或いは他から与え
られた命令に従ってマイクロプログラムメモリの該当す
るアドレスからマイクロ命令を読み出しデコードして演
算部の制御信号を生成し演算部の制御をおこなうデータ
処理装置において、マイクロ命令に従って前記演算部内
のレジスタの読み出し及び書き込みを制御する制御信号
を生成するレジスタ制御デコーダをAND型のダイナミ
ック・プログラマブル・ロジック・アレイで構成し、該
プログラマブル・ロジック・アレイの出力線をPチャネ
ル型MOSトランジスタでプリチャージし、プリチャー
ジ期間に出力される信号の固有の第1のレベルをレジス
タの入出力に対し非選択の状態とし、プリチャージ期間
が終了後、前記プログラマブル・ロジック・アレイの論
理が成立している出力線のみをディスチャージし、この
時の第2の固有レベルをレジスタの入出力に対し選択状
態として前記レジスタの読み出し及び書き込みを制御し
ている事を特徴とするデータ処理装置。 18、特許請求の範囲第17項記載において、前記プロ
グラマブル・ロジック・アレイの出力線の論理和は、出
力線を直結して得る様に構成した事を特徴とするデータ
処理装置。
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60072646A JPH0658629B2 (ja) | 1985-04-08 | 1985-04-08 | データ処理装置 |
KR1019860002654A KR900003591B1 (ko) | 1985-04-08 | 1986-04-08 | 데이터 처리장치 |
EP91120043A EP0476722B1 (en) | 1985-04-08 | 1986-04-08 | Data processing system |
DE3650602T DE3650602T2 (de) | 1985-04-08 | 1986-04-08 | Datenverarbeitungssystem |
EP86104747A EP0199173B1 (en) | 1985-04-08 | 1986-04-08 | Data processing system |
DE3689595T DE3689595T2 (de) | 1985-04-08 | 1986-04-08 | Datenverarbeitungssystem. |
US07/951,772 US5455955A (en) | 1985-04-08 | 1992-09-28 | Data processing system with device for arranging instructions |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60072646A JPH0658629B2 (ja) | 1985-04-08 | 1985-04-08 | データ処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS61231632A true JPS61231632A (ja) | 1986-10-15 |
JPH0658629B2 JPH0658629B2 (ja) | 1994-08-03 |
Family
ID=13495356
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP60072646A Expired - Lifetime JPH0658629B2 (ja) | 1985-04-08 | 1985-04-08 | データ処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0658629B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100484247B1 (ko) * | 2000-12-28 | 2005-04-20 | 매그나칩 반도체 유한회사 | 재설정가능 인스트럭션 세트 마이크로 컨트롤러 유니트의인스트럭션 디코더 장치 |
-
1985
- 1985-04-08 JP JP60072646A patent/JPH0658629B2/ja not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100484247B1 (ko) * | 2000-12-28 | 2005-04-20 | 매그나칩 반도체 유한회사 | 재설정가능 인스트럭션 세트 마이크로 컨트롤러 유니트의인스트럭션 디코더 장치 |
Also Published As
Publication number | Publication date |
---|---|
JPH0658629B2 (ja) | 1994-08-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4112489A (en) | Data processing systems | |
KR900003591B1 (ko) | 데이터 처리장치 | |
US4587632A (en) | Lookahead stack oriented computer | |
KR100346515B1 (ko) | 수퍼파이프라인된수퍼스칼라프로세서를위한임시파이프라인레지스터파일 | |
US4631663A (en) | Macroinstruction execution in a microprogram-controlled processor | |
US3953833A (en) | Microprogrammable computer having a dual function secondary storage element | |
JPH0374434B2 (ja) | ||
JPS62249226A (ja) | プログラム可能論理装置およびその方法 | |
NZ201809A (en) | Microprocessor | |
US4388682A (en) | Microprogrammable instruction translator | |
US4348720A (en) | Microcomputer arranged for direct memory access | |
EP0378415A2 (en) | Multiple instruction dispatch mechanism | |
US5274777A (en) | Digital data processor executing a conditional instruction within a single machine cycle | |
US6012138A (en) | Dynamically variable length CPU pipeline for efficiently executing two instruction sets | |
US4791551A (en) | Microprogrammable devices using transparent latch | |
US6516410B1 (en) | Method and apparatus for manipulation of MMX registers for use during computer boot-up procedures | |
KR20010072491A (ko) | 산술 논리 유닛 및 스택을 가지는 데이터 프로세서,멀티미디어 장치 및 컴퓨터 프로그램 제품 | |
KR100374401B1 (ko) | 마이크로 명령을 기초로 프로그램 가능한 명령을 실행하는하드웨어 장치 | |
US5479620A (en) | Control unit modifying micro instructions for one cycle execution | |
JPS61157946A (ja) | マイクロコンピユ−タ | |
JPS61231632A (ja) | データ処理装置 | |
US6564312B1 (en) | Data processor comprising an arithmetic logic unit | |
JPH03204030A (ja) | コンピュータ用プロセツサ | |
EP0136699B1 (en) | Programmable controller | |
KR100278136B1 (ko) | 데이타처리장치 및 데이타처리방법 |