JPH04268925A - マイクロプロセッサ - Google Patents

マイクロプロセッサ

Info

Publication number
JPH04268925A
JPH04268925A JP3022691A JP3022691A JPH04268925A JP H04268925 A JPH04268925 A JP H04268925A JP 3022691 A JP3022691 A JP 3022691A JP 3022691 A JP3022691 A JP 3022691A JP H04268925 A JPH04268925 A JP H04268925A
Authority
JP
Japan
Prior art keywords
microinstruction
area
pattern
address
field
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.)
Withdrawn
Application number
JP3022691A
Other languages
English (en)
Inventor
Kazuhiro Ishitani
石谷 和弘
Makoto Mure
牟禮 誠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Microcomputer System Ltd
Hitachi Ltd
Renesas Technology America Inc
Original Assignee
Hitachi Microcomputer System Ltd
Hitachi Ltd
Hitachi Micro Systems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Microcomputer System Ltd, Hitachi Ltd, Hitachi Micro Systems Inc filed Critical Hitachi Microcomputer System Ltd
Priority to JP3022691A priority Critical patent/JPH04268925A/ja
Publication of JPH04268925A publication Critical patent/JPH04268925A/ja
Withdrawn legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、マイクロプログラミン
グ方式を採用するマイクロプロセッサの、マイクロプロ
グラム制御の技術に関するものである。
【0002】
【従来の技術】近年、計算機システムがより複雑化し、
マイクロプログラムにも多機能な処理が求められるよう
になった。
【0003】そこで、これに応えるために、命令長を増
やし、マイクロ命令種を増加する方式が採用される場合
がある。
【0004】しかし、この方式によれば、単純にマイク
ロプログラムを格納した場合、制御記憶の容量は増大す
る。
【0005】そこで、制御記憶の容量の削減のために、
1マイクロ命令の連続する“0”および“1”パターン
部分を短縮する方法でマイクロプログラムの容量を圧縮
するのが一般的であった。
【0006】また、このような容量削減の技術としては
、特開昭63−8938号公報記載の技術が知られてい
る。この技術によれば、マイクロプログラムを格納した
制御記憶と、マイクロ命令の変更情報を格納した拡張用
制御記憶を同時に読み出し、読みだしたマイクロ命令の
一部を、拡張用制御記憶からのマイクロ命令の変更情報
に置き換えることによってマイクロ命令を変更する。
【0007】これにより、一部のマイクロ命令パターン
のみが異なる複数のマイクロ命令の統合を可能として、
制御記憶容量の増加を押さえつつ、マイクロ命令種を拡
大し、制御記憶容量を削減している。
【0008】また、マイクロ命令種を増やさずに、マイ
クロ命令の通常の処理形式を変更させて機能を拡張する
方式が知られている。
【0009】また、特定のマイクロ命令に対して、拡張
フィールドを付加して、機能拡張を図る技術が知られて
いる。
【0010】この技術を、図7を用いて説明する。
【0011】図7は、マイクロプロセッサにおいてマイ
クロプログラムの制御を担うマイクロプログラム制御装
置の従来の構成を示したものである。
【0012】図中、1はマイクロプログラムを格納する
制御記憶、15は拡張マイクロ命令を格納する拡張用制
御記憶、1aは制御記憶1内のマイクロ命令領域、1f
は制御記憶1内のアドレス領域(ADR)、1hは拡張
用制御記憶内の拡張用マイクロ命令領域、2は制御記憶
1内をアクセスするためのセレクタ(SEL)、3は制
御記憶1内のマイクロ命令領域1a読み出しパス、4a
は制御記憶1内のアドレス領域読み出しパス、5は命令
レジスタのオペランドを基に示される先頭マイクロ命令
アドレス、6は制御記憶1及び拡張用制御記憶15にマ
イクロプログラムをロードするためのマイクロプログラ
ムロードパス、7は制御記憶1内のアドレス領域1fか
らアドレス領域読み出しパス4aを経由して読み出され
た情報より、次の制御記憶アドレスを生成するアドレス
生成回路(ADDR)、8は制御記憶1内のマイクロ命
令領域1aから読み出しパス3を経由して読み出された
マイクロ命令を処理するマイクロ命令処理回路、11は
拡張用制御記憶から拡張用マイクロ命令領域1hの内容
を読み出す拡張マイクロ命令パス、13はマイクロ命令
処理回路8に外部よりデータを取り込むための入力デー
タパス、14はマイクロ命令処理回路8より外部にデー
タを出力するための出力データパスである。
【0013】図7において、マイクロ命令領域とアドレ
ス領域と拡張マイクロ命令領域で構成されるマイクロプ
ログラムは、マイクロプログラムロードパス6を経由し
て制御記憶1と拡張用制御記憶15にそれぞれロードさ
れる。
【0014】その後、マイクロプログラム実行の第1の
ステップとして先頭マイクロ命令アドレス5によりセレ
クタ2を介して、最初のマイクロ命令が制御記憶1と拡
張用制御記憶15から選択される。
【0015】そして、制御記憶1内のマイクロ命令領域
1aから読み出しパス3を経由して読み出したマイクロ
命令をマイクロ命令処理回路8に送出する。
【0016】このマイクロ命令によりマイクロ命令処理
回路8は処理を行い、必要なデータを入力データパス1
3より取り込み、出力するデータを出力データパス14
より出力する。
【0017】一方、制御記憶1内のアドレス領域1fか
らアドレス領域読み出しパス4aを経由して読み出され
た次の制御記憶アドレスを示すアドレスは、アドレス生
成回路7に送出される。
【0018】これに基づきアドレス生成回路7は、次の
マイクロ命令アドレスをセレクタ2に送る。
【0019】そして、これにより、制御記憶1より、次
のマイクロ命令とアドレスを選択し、読みだしたマイク
ロ命令領域1aのマイクロ命令を、先程と同様に、マイ
クロ命令処理回路8に送出し、第2のマイクロステップ
を行う。また、アドレス領域1fの次の制御記憶アドレ
スを示すアドレスについても同様にしてアドレス生成回
路7に送出する。
【0020】第3マイクロステップ以降についても同様
の処理を行う。
【0021】ここで、拡張機能を処理する場合は、セレ
クタ2により選択されたアドレスと同じアドレスで拡張
用制御記憶15内の拡張用マイクロ命令領域1hをアク
セスし、拡張用マイクロ命令パターンを拡張マイクロ命
令パス11に読み出しマイクロ命令処理回路8に送出す
る。
【0022】マイクロ命令処理回路8は、拡張機能の拡
張用マイクロ命令パターンをも、マイクロ命令領域1a
から読みだしたマイクロ命令と同様に処理することによ
り機能拡張が実現される。
【0023】このようなマイクロプログラム制御装置に
おいて、制御記憶1内のマイクロ命令領域1aのマイク
ロ命令パターンは、マイクロ命令の一部のフィールドの
みが異なっていて、ほとんど同一の複数のマイクロ命令
で構成されている。
【0024】また、このような技術として、特開平1−
311324号公報に記載の技術では、標準マイクロ命
令を格納した第1の制御記憶と拡張マイクロ命令を格納
した第2の制御記憶を持ち、同一アドレスで双方の制御
記憶をアクセスして、特定のマイクロ命令にのみ、拡張
フィ−ルドを付加し、拡張マイクロ命令とすることによ
り機能拡張を実現するものも知られている。
【0025】また、特開昭62−143139号公報記
載の技術では、偶数のアドレスを納める第1の制御記憶
と奇数のアドレスを納める第2の制御記憶で構成し、第
1の制御記憶と第2の制御記憶から同時にマイクロ命令
の読みだしを行い、特定のマイクロ命令のマイクロ命令
長を2倍とすることによって機能の拡張を可能にしてい
る。
【0026】
【発明が解決しようとする課題】しかし、マイクロ命令
を圧縮して制御記憶に格納する技術によれば、圧縮した
マイクロ命令をマイクロ命令処理回路で伸長し処理しな
ければならない。
【0027】すなわち、圧縮した各々のマイクロ命令の
長さが異なるため、制御記憶へのロードや、読み出し処
理や、マイクロプログラムの更新が複雑となり、マイク
ロプログラムロードパスやマイクロ命令処理回路が複雑
化し、ハードウェア量の増加や保守性の低下等の問題が
生じる。
【0028】また、マイクロ命令の通常の処理形式を変
更させて機能を拡張する方式によれば、通常の処理と拡
張処理を並行して処理することができないため、マイク
ロプログラムに制約が加わりプログラムの製作が困難に
なるという問題やマイクロ命令の処理時間が長大化する
という問題があった。
【0029】また、通常の制御記憶の他に拡張用制御記
憶を追加する方式によれば、常に同一のアドレスで双方
の制御記憶をアクセスするため、変更や拡張用のマイク
ロ命令パターンが必要でないマイクロ命令に対しても拡
張用制御記憶が存在することになり、制御記憶の容量が
増大するという問題があった。
【0030】そこで、本発明は、さほど制御記憶の容量
を増加することなしに、単一の制御記憶によって、さほ
ど処理を複雑化することなしに多様な処理を実現するこ
とのできるマイクロプロセッサを提供することを目的と
する。
【0031】
【課題を解決するための手段】前記目的達成のために、
本発明は、複数のマイクロ命令よりなるマイクロプログ
ラムを格納する制御記憶と、制御記憶に格納されたマイ
クロ命令を順次処理し、実行する処理回路とを備えたマ
イクロプロセッサであって、前記制御記憶は、各マイク
ロ命令の次に処理すべきマイクロ命令を指定する第1指
定情報と、次に処理すべきマイクロ命令と組み合わせる
べきマイクロ命令を指定する第2指定情報と、次に処理
すべきマイクロ命令と、これと組み合わせるべきマイク
ロ命令との、組み合わせのパタ−ンを規定するパタ−ン
情報とを、各マイクロ命令に対応して記憶し、前記処理
回路は、順次、前記第1指定情報および第2指定情報に
従って、次に処理すべきマイクロ命令と、これと組み合
わせるべきマイクロ命令とを前記制御記憶より読み出し
、前記パタ−ン情報に従ったパタ−ンで組み合わせ、1
つのマイクロ命令を構成し、これを実行することを特徴
とする第1のマイクロプロセッサを提供する。
【0032】また、本発明は、前記目的達成のために、
複数のマイクロ命令よりなるマイクロプログラムを格納
する制御記憶と、制御記憶に格納されたマイクロ命令を
順次処理し、実行する処理回路とを備えたマイクロプロ
セッサであって、レジスタを備え、かつ、前記制御記憶
は、次に処理すべきマイクロ命令の前記レジスタへの登
録を指示する登録指示情報と、次に処理すべきマイクロ
命令と前記レジスタに格納されたマイクロ命令との組み
合わせのパタ−ンを規定するパタ−ン情報とを格納し、
前記処理回路は、順次、制御記憶よりマイクロ命令を読
み出し、前記登録指示に従って指示されたマイクロ命令
を前記レジスタに登録し、パタ−ン情報に従って、処理
するマイクロ命令と前記レジスタに登録されたマイクロ
命令を、規定されたパタ−ンで組み合わせ、1つのマイ
クロ命令を構成し、これを実行することを特徴とする第
2のマイクロプロセッサを提供する。
【0033】また、さらに、本発明は、前記目的達成の
ために、複数のマイクロ命令よりなるマイクロプログラ
ムを格納する制御記憶と、制御記憶に格納されたマイク
ロ命令を順次処理し、実行する処理回路とを備えたマイ
クロプロセッサであって、前記制御記憶は、次に処理す
べき命令の拡張を指示する拡張指示情報と、次に処理す
べき命令の拡張に用いるマイクロ命令を指定する指定情
報と、次に処理すべき命令の拡張のパタ−ンを規定する
パタ−ン情報とを、各マイクロ命令に対応して記憶し、
前記処理回路は、順次制御記憶よりマイクロ命令を読み
出し、指定情報によって指定されたマイクロ命令の一部
または全部を、前記パタ−ン情報に従って、拡張指示情
報によって指示されたマイクロ命令に付加し、マイクロ
命令を拡張し、これを実行することを特徴とする第3の
マイクロプロセッサを提供する。
【0034】
【作用】本発明に係る第1のマイクロプロセッサによれ
ば、前記処理回路は、順次、前記第1指定情報および第
2指定情報に従って、次に処理すべきマイクロ命令と、
これと組み合わせるべきマイクロ命令とを前記制御記憶
より読み出し、前記パタ−ン情報に従ったパタ−ンで組
み合わせ、1つのマイクロ命令を構成し、これを実行す
る。したがい、制御記憶内の各マイクロ命令の共通部分
を共用することができ、制御記憶の容量を有効に用いな
がら、単一の制御記憶によって多様な処理が実現できる
【0035】また、本発明に係る第2のマイクロプロセ
ッサによれば、前記処理回路は、順次、制御記憶よりマ
イクロ命令を読み出し、前記登録指示に従って指示され
たマイクロ命令を前記レジスタに登録し、パタ−ン情報
にしたがって、処理するマイクロ命令と前記レジスタに
登録されたマイクロ命令を、規定されたパタ−ンで組み
合わせ、1つのマイクロ命令を構成し、これを実行する
。したがい、制御記憶内の各マイクロ命令の共通部分を
共用することができ、制御記憶の容量を有効に用いなが
ら、単一の制御記憶によって多様な処理が実現できる。
【0036】また、本発明に係る第3のマイクロプロセ
ッサによれば、前記処理回路は、順次制御記憶よりマイ
クロ命令を読み出し、指定情報によって指定されたマイ
クロ命令の一部または全部を、前記パタ−ン情報に従っ
て、拡張指示情報によって指示されたマイクロ命令に付
加し、マイクロ命令を拡張し、これを実行する。すなわ
ち、制御記憶内の他マイクロ命令のパタ−ンを用いて、
マイクロ命令を拡張することができるので、制御記憶の
容量を有効に用いながら、単一の制御記憶によって多様
な処理が実現できる。
【0037】
【実施例】以下、本発明に係るマイクロプロセッサの一
実施例を説明する。
【0038】図1に、本実施例に係るマイクイロプロセ
ッサの構成を示す。
【0039】図中には、説明の明確化のために、本実施
例の特徴部分であるマイクロプログラム制御装置を中心
とした構成のみを示す。マイクロプログラム制御装置は
前述したようにマイクロプロセッサにおいてマイクロプ
ログラムの制御を担うものである。
【0040】図中、1はマイクロプログラムを格納する
制御記憶、5は命令レジスタのオペランドを基に与えら
れる先頭マイクロ命令アドレス、6は制御記憶1にマイ
クロプログラムをロードするためのマイクロプログラム
ロードパス、8は制御記憶1から読み出されたマイクロ
命令を処理するマイクロ命令処理回路、13はマイクロ
命令処理回路8に外部よりデータを取り込むための入力
データパス、14はマイクロ命令処理回路8より外部に
データを出力するための出力データパスである。  図
1において、マイクロ命令領域とアドレス領域と拡張マ
イクロ命令領域で構成されるマイクロプログラムは、マ
イクロプログラムロードパス6を経由して制御記憶1に
それぞれロードされる。
【0041】以上の各部は図7を用いて説明した従来の
マイクロプログラム制御装置の構成と同機能部であり、
図7と同一符号を用いて示している。
【0042】ただし、本実施例においては、制御記憶1
内のマイクロ命令領域1aのマイクロ命令パターンを共
通するパターン毎にグループ化したフィールドに分割す
る。
【0043】図中、1b、1c〜1dは、これらのフィ
ールド(CSF0、CSF1〜CSFn)であり、1e
は次に読み出すマイクロ命令の分割したフィールドの構
成を制御するフィールドフラッグ領域(F)、1gは複
数のマイクロ命令アドレスを生成するための追加アドレ
ス領域(A.ADR)である。
【0044】また、2aは生成した複数のマイクロ命令
アドレスをもとに制御記憶1内を同時にアクセスするた
めの複数セレクタ(SELn)、3b、3c〜3dは分
割したフィールド1b、1c〜1d毎の読み出しパス、
3eはフィールドフラッグ領域1eを読み出すフィール
ドフラッグ領域読み出しパス、4bは追加アドレス領域
1gを読み出す追加アドレス領域読み出しパスである。
【0045】また、7aは、制御記憶1内のアドレス領
域1fと追加アドレス領域1gから、アドレス領域読み
出しパス4aと追加アドレス領域読み出しパス4bを経
由して読み出された次の複数の制御記憶アドレスを生成
する複数アドレス生成回路(ADDRn)であり、9は
読みだされた複数のフィールド1b、1c〜1dのパタ
ーンをフィールドフラッグ領域1eに従って構成し1個
のマイクロ命令パターンにし、マイクロ命令処理回路8
に送るマイクロ命令制御回路(CTL)である。
【0046】また、10はフィールドフラッグ領域1e
内登録指示フラッグによるマスク処理のマスクを登録す
る1マイクロ命令長の容量を持つマスクレジスタ、11
はフィールドフラッグ領域1e内拡張指示フラッグによ
る拡張処理マイクロ命令パターンのための拡張マイクロ
命令パス、12はマイクロ命令制御回路9からマイクロ
命令処理回路8に送出するマイクロ命令パスである。
【0047】以下、その動作を説明する。
【0048】まず、共通するマイクロ命令パターン毎に
グループ化し、各フィールド1b、1c〜1d(CSF
0、CSF1〜CSFn)に分割したマイクロプログラ
ムをマイクロプログラムロードパス6より制御記憶1に
ロードする。
【0049】次に、先頭マイクロ命令アドレス5により
制御記憶1内の、いくつかのフィールド1b、1c〜1
d(CSF0、CSF1〜CSFn)に分割したマイク
ロ命令領域と、次のマイクロ命令領域のフィールドの有
無を示すフィールドフラッグ領域1eと、追加アドレス
領域1gと、次に実行するマイクロ命令アドレスを示す
アドレス領域1fを呼び出す。後述するように、追加ア
ドレス領域1gは、次のステップにおいて追加マイクロ
命令の同時読み出しと、次のマイクロ命令アドレスの選
択に用いられる。
【0050】さて、読み出された先頭のマイクロ命令領
域のマイクロ命令パターンは、マイクロ命令制御回路9
からマイクロ命令処理回路8に送出され、実行される。
【0051】一方、以降のステップは以下のように行わ
れる。
【0052】複数アドレス生成回路7aは、前ステップ
で読みだした、アドレス領域1fの内容と追加アドレス
領域1gの内容から、次に実行するマイクロ命令のマイ
クロ命令アドレスの生成を行い、また、これと同時に読
みだす追加マイクロ命令の追加マイクロ命令アドレスを
追加アドレス領域1gの内容から生成する。
【0053】そして、生成した複数のアドレスにより、
複数のマイクロ命令パターンを複数セレクタ2aを介し
て、制御記憶1より読み出し、これを、マイクロ命令制
御回路9に送出する。
【0054】マイクロ命令制御回路9は、読み出したマ
イクロ命令のフィールドフラッグ領域1eの制御に従っ
て、マイクロ命令パターンと、これと同時に読み出した
追加マイクロ命令パターンを1個のマイクロ命令パター
ンに構成し、1個のマイクロ命令としてマイクロ命令処
理回路8に送出する。
【0055】マイクロ命令処理回路8はこれを実行する
【0056】本実施例においては、このように、あらか
じめ、共通するマイクロ命令パターン毎にグループ化し
、各フィールド1b,1c〜1d(CSF0、CSF1
〜CSFn)に分割したマイクロプログラムを作成して
おき、複数のマイクロ命令アドレスから複数のマイクロ
命令パターンを呼び出し、マイクロ命令制御回路9にて
、フィールドフラッグ領域1eに基づき、組み合わせ、
所望のマイクロ命令を得るようにしたものである。
【0057】すなわち、これにより、一部のフィールド
のみが異なっている複数のマイクロ命令を、各々のフィ
ールドが、それぞれ異なるパターンの少数のマイクロ命
令に統合して制御記憶に格納することができ、制御記憶
の容量の効率的な利用を可能としている。
【0058】次に、以上の処理で用いたフィ−ルドトラ
ック領域1eについて説明する。
【0059】図2に、制御記憶内のマイクロ命令の1構
成を示す。
【0060】1eがフィ−ルドフラッグ領域である。
【0061】1e−1はマスクレジスタ10に、フィー
ルドフラッグ領域1eの各フィールド有効フラッグで示
す、次のマイクロ命令のフィールドのマイクロ命令パタ
ーンを登録指示する登録指示フラッグである。1e−2
は、マスクレジスタ10のマスクパターンと、フィール
ドフラッグ領域1eの各フィールド有効フラッグで示す
次のマイクロ命令のフィールドのマイクロ命令パターン
との、マスク処理を指示するマスク処理指示フラッグで
ある。1e−3は、フィールドフラッグ領域1eの各フ
ィールド有効フラッグで示す次のマイクロ命令のフィー
ルドのマイクロ命令パターンを、拡張マイクロ命令パタ
ーンとする拡張指示フラッグである。
【0062】1e−4は、各フィールド制御フラッグで
あり、前記各フィールド有効フラッグ等をその内に設け
る。
【0063】なお、図1に示したものと同符号のものは
、同一部であり、その説明は省略する。
【0064】図2において、フィールドフラッグ領域1
eの登録指示フラッグ1e−1は、マイクロ命令中の他
のマイクロ命令と共通するパターンを、マスクレジスタ
10に登録するために用い、マスク処理指示フラッグ1
e−2は、登録されたパタ−ンを、必要とする箇所で、
マスク処理により、他のマイクロ命令に挿入するために
用いるものである。
【0065】これにより、マイクロプログラム上で必要
に応じてマスク処理が可能になり、より効率的に制御記
憶を用いることができる。
【0066】この点については、図3を用いて後に詳述
する。
【0067】また、拡張指示フラッグ1e−3は、拡張
処理のマイクロ命令パターンの、マイクロプログラムの
必要とする箇所での拡張を可能にするためのものである
。これにより、特定のマイクロ命令を拡張することがで
きる。
【0068】なお、このマイクロ命令パタ−ンの拡張さ
れた部分は、拡張マイクロ命令パス11によりマイクロ
命令処理回路に送出される。
【0069】以上、マイクロプログラム上で必要に応じ
て拡張マイクロ命令処理が可能になり、拡張用制御記憶
を付加しないで拡張機能処理が実現できる。
【0070】さらに、前記分割したマイクロ命令フィー
ルドを同じ長さに構成し、フィールドフラッグ領域1e
の各フィールド制御フラッグ1e−4にて対象フィール
ド位置を示すポインタで制御することにより、異なるフ
ィールドのマイクロ命令パターンとの制御を可能にし、
フィールド間の移動を容易にしたものである。これによ
り、同じフィールドばかりでなく、異なるフィールドの
マイクロ命令フィールドパターンを使用することができ
、より一層の効率的マイクロプログラムを可能にしてい
る。
【0071】さらに、追加アドレス領域1gに呼び出す
マイクロ命令パターンと同じパターンを構成するアドレ
スを付加することにより、読み出しマイクロ命令パター
ンにパリティエラー等の障害に対して、交代のマイクロ
命令パターンの供給を可能にしている。以上の各点につ
いては、図5を用いて後に詳述する。
【0072】以下、具体的な例をあげ、制御記憶内のマ
イクロ命令と動作との関係を説明する。
【0073】図3は、制御記憶内のマイクロ命令の一具
体例を示したものである。
【0074】また、図4は、図3に示すマイクロ命令を
処理したときのマイクロ命令処理パターンを示すもので
ある。
【0075】図3に示した例では、マイクロ命令領域を
フィールドA、フィールドB、フィールドCで構成する
【0076】また、フィールドフラッグ領域1eをF1
〜F5の5ビットで構成する。
【0077】F1は登録指示フラッグビット、F2はマ
スク処理フラッグビット、F3はフィールドA有効ビッ
ト、F4はフィールドB有効ビット、F5はフィールド
C有効ビットを示す。本例では拡張指示フラグは用いな
い。
【0078】追加アドレス領域は、前記追加マイクロ命
令を読みだすための追加マイクロ命令アドレス(AD1
)と、元の処理に戻るマイクロ命令アドレスを指定する
ためのマイクロ命令アドレス(AD2)と、アドレス領
域1fに示すアドレス以外を次アドレスとする場合に用
いるマイクロ命令アドレス(AD3)との3アドレスで
構成する。
【0079】登録指示フラッグビットF1およびマスク
処理フラッグビットF2は値が“1”のときのみ有効で
あることを示す。
【0080】また、フィールドA有効ビットF3、フィ
ールドB有効ビットF4、フィールドC有効ビットF5
は、それぞれ、値が“1”のときは、アドレス領域で示
すマイクロ命令アドレスのマイクロ命令領域のフィール
ドが有効であることを、値が“0”のときは、追加アド
レス領域で示すマイクロ命令アドレスのマイクロ命令領
域のフィールドが有効であることを示す。
【0081】図示した例では、マイクロ命令アドレスは
ADR0〜ADR4存在し、各マイクロ命令の各フィー
ルドにはマイクロ命令パターンとしてパターンA0〜A
4、パターンB0〜B4、パターンC0〜C4を格納し
ている。また、AD1としてはADR0とADR1を、
AD2としては全て“0”が、AD3としてはADR1
Xが格納されている。
【0082】これにより、複数の処理においても、マイ
クロ命令を共用できることになり、制御記憶の効率的な
使用をすることができる。
【0083】図4は、このマイクロ命令(図3)を処理
した場合に、マイクロ命令処理回路に出力されるマイク
ロ命令パターンをマイクロ命令ステップ毎に示している
【0084】すなわち、まず、先頭マイクロ命令アドレ
スADR0が選択された場合、第1ステップとして、マ
イクロ命令アドレスADR0のマイクロ命令領域の各フ
ィールドパターン(パターンA0、パターンB0、パタ
ーンC0)をマイクロ命令処理回路に送出する。
【0085】次に、実行するマイクロ命令アドレスAD
R1と追加アドレス領域のアドレスADR0の示すマイ
クロ命令アドレスの内容(パターンA0、パターンA1
、パターンB0、パターンB1、パターンC0、パター
ンC1)を同時に読み出す。
【0086】そして、前マイクロ命令の(アドレスAD
R0)のフィールドフラッグ領域を参照し、フィールド
A有効ビットF3の値が“1”、フィールドB有効ビッ
トF4の値が“0”、フィールドC有効ビットF5の値
が“0”であることより、パターンA1、パターンB0
、パターンC0を選択し、第2ステップとしてマイクロ
命令処理回路に送出する。
【0087】第3ステップでは、同様にしてパターンA
0、パターンB2、パターンC0を選択しマイクロ命令
処理回路に送出する処理を行うと共に、登録指示フラッ
グビットF1が“1”であることにより、フィールド有
効ビットを参照し、フィールドB有効ビットF4が“1
”であるので、マスクレジスタ10にフィールドA領域
とフィールドC領域に“0”パターンを、フィールドB
領域にパターンB2を登録する。
【0088】第4ステップとしては、第2ステップと同
様にしてパターンA3、パターンB1、パターンC1を
選択しマイクロ命令処理回路に送出する。
【0089】第5ステップでは、やはり同様にしてパタ
ーンA1、パターンB4、パターンC4を選択した後、
マスク処理フラッグビットF2が“1”であることによ
り、マスクレジスタ10に登録してあるマイクロ命令を
、前記選択したパタ−ンでマスク処理を実施する。
【0090】この結果、第3ステップでマスクレジスタ
に登録したマイクロ命令のうち有意であるのは、フィー
ルドB領域のパターンのみであるので、選択されたパタ
ーンB4のみがマスクレジスタに登録されていたパター
ンB2に変更される。
【0091】そして、得られたパターンA1、パターン
B2、パターンC4のマイクロ命令がマイクロ命令処理
回路に送出される。
【0092】ところで、元の処理に戻るマイクロ命令ア
ドレスを指定するためのマイクロ命令アドレス(AD2
)と、アドレス領域1fに示すアドレス以外を次アドレ
スとする場合に用いるマイクロ命令アドレス(AD3)
は、実行中のマイクロプログラミング処理から、他のマ
イクロプログラミング処理内のマイクロ命令を実行して
、元の処理に戻るために用いる。
【0093】すなわち、たとえば、他の処理からADR
0に跳び、ADR0のマイクロ命令実行後に、もとの処
理に戻る場合には、AD2にADR0を指定する。複数
アドレス生成回路7aは、AD2の指定の有る場合は、
指定されたアドレスADR0を発生し、その次ステップ
には、ADR0内のAD3に指定されたアドレスADR
1Xを発生する。
【0094】図5は、制御記憶内のマイクロ命令の他の
具体例を示したものである。
【0095】そして、図6は、図5に示したマイクロ命
令を処理したときのマイクロ命令処理パターンを示した
ものである。
【0096】本例では、マイクロ命令領域を同じ長さの
フィールドD、フィールドE、フィールドFで構成し、
フィールドフラッグ領域1eをF1〜F4の8ビットで
構成する。
【0097】F1は拡張指示フラッグビット(2ビット
)、F2はフィールドDポインタ(2ビット)、F3は
フィールドEポインタ(2ビット)、F4はフィールド
Fポインタ(2ビット)を示す。
【0098】追加アドレス領域は第1〜第5の5個のア
ドレスで構成し、第1は前記追加マイクロ命令アドレス
を示し、第2〜第5のアドレスは各フィールドに対応す
る障害発生時の交代用アドレスを示している。
【0099】特に、第5のアドレスは交代用拡張マイク
ロ命令を示している。
【0100】ここで、フィールドフラッグ領域1e拡張
指示フラッグビットF1の値は、“00”のとき拡張機
能を処理しないことを示し、“00”以外のときアドレ
ス領域で示すマイクロ命令パターンの内、拡張指示フラ
ッグビットF1の値で示すフィールドが拡張マイクロ命
令として有効であることを示す。
【0101】フィールドDポインタF2、フィールドE
ポインタF3、および、フィールドFポインタF4の値
は、“00”のとき、アドレス領域のマイクロ命令アド
レスのマイクロ命令領域のフィールドが有効であること
を示し、“00”以外のとき、追加アドレス領域の第1
のアドレスで示すマイクロ命令アドレスのマイクロ命令
領域のポインタが示すフィールドが有効であることを示
す。
【0102】図示する例では、マイクロ命令アドレスは
ADR5〜ADR8あり、各マイクロ命令の各フィール
ドにはマイクロ命令パターンとしてパターンP0〜P5
を格納している。
【0103】図6は、図5に示したマイクロ命令を処理
した場合、マイクロ命令処理回路に出力されるマイクロ
命令パターンをマイクロ命令ステップ毎に示したもので
ある。  すなわち、第1ステップとして、マイクロ命
令アドレスADR5のマイクロ命令領域の各フィールド
パターン(パターンP0、パターンP1、パターンP2
)をマイクロ命令処理回路に送出する。マイクロ命令処
理回路はこれを処理する。
【0104】そして、次のステップのために、次に実行
するマイクロ命令アドレスADR6と追加アドレス領域
の第1のアドレスADR5の示すマイクロ命令アドレス
の内容(パターンP3、パターンP4、パターンP5、
パターンP0、パターンP1、パターンP2)と、追加
アドレス領域の第2〜第5のアドレスADR7、ADR
8の示すマイクロ命令アドレスの内容(パターンP1、
パターンP0、パターンP2、パターンP5)を同時に
読み出す。
【0105】そして、前マイクロ命令アドレスADR5
のフィールドフラッグ領域1eを参照し、拡張指示フラ
ッグビットF1の値が“11”、フィールドDポインタ
F2の値が“10”、フィールドEポインタF3の値が
“01”、フィールドFポインタF5の値が“11”で
あることより、パターンP1、パターンP0、パターン
P2、および、拡張マイクロ命令としてパターンP5を
選択し、第2ステップとしてマイクロ命令処理回路に送
出する。
【0106】また、もし、読み出したマイクロ命令パタ
ーンにパリティエラー等の不具合がある場合には、各フ
ィ−ルド毎に、追加アドレス領域の第2〜第5のアドレ
スADR7、ADR8のマイクロ命令パターンをマイク
ロ命令処理回路に送出するようにする。
【0107】なお、この図5に示した例では、本例の特
徴を明確にするため、前記AD2、AD3についての説
明を省略した。本例においても、AD2、AD3の処理
については先に第3図に示した例と同様であるが、拡張
指示フラグビットF1は、アドレス領域のアドレスによ
って実行される場合にのみ有効とし、AD2によって実
行される場合は無効とするよう制御するのが望ましい。
【0108】これにより、他の処理との、マイクロ命令
の共用を、より汎用的に行うことができる。
【0109】以上説明してきたように、本実施例によれ
ば、マイクロ命令の一部のフィールドのみが異なってい
る複数のマイクロ命令を少数のマイクロ命令に統合する
ことができ、制御記憶の効率的な使用が可能となり、そ
の容量を削減することができる。
【0110】また、制御記憶に格納されるマイクロ命令
自体のビット長は一定であるため、さほど処理が複雑化
することがなく、ハ−ドウェア量をさほど増加せること
もない。
【0111】また、登録指示フラッグとマスク処理指示
フラッグにより、必要に応じてマイクロ命令パターンを
マスクレジスタに登録し、必要なときマスク処理ができ
るため、効率的かつ簡易なマイクロプログラム制御を可
能にする効果もある。
【0112】さらに、マイクロ命令のビット長を変えず
、また、拡張用制御記憶を追加しないで、拡張指示フラ
ッグにより、必要に応じて特定のマイクロ命令のみ拡張
性を持たせ拡張マイクロ命令を処理できる。
【0113】さらに、分割したマイクロ命令フィールド
を同じ長さに構成し、フィールドフラッグ領域の各フィ
ールド制御フラッグにて対象フィールド位置を示すポイ
ンタで制御することにより、同じフィールドばかりでな
く、異なるフィールドのマイクロ命令フィールドパター
ンを使用することができ、より一層の制御記憶の効率的
な使用が可能となる。
【0114】さらに、追加アドレス領域に呼び出すマイ
クロ命令パターンと同じパターンを構成するアドレスを
付加することにより、読み出しマイクロ命令パターンに
パリティエラー等の障害に対して、交代のマイクロ命令
パターンの供給を可能にすることができ、信頼性を高め
ることができる。
【0115】
【発明の効果】以上のように、本発明によれば、さほど
制御記憶の容量を増加することなしに、単一の制御記憶
によって、さほど処理を複雑化することなしに多様な処
理を実現することのできるマイクロプロセッサを提供す
ることができる。
【図面の簡単な説明】
【図1】本発明の一実施例に係るマイクロプロセッサに
構成を示すブロック図である。
【図2】制御記憶内のマイクロ命令を示す説明図である
【図3】制御記憶内のマイクロ命令の第1の具体例を示
す説明図である。
【図4】マイクロ命令パターンの第1の具体例を示す説
明図である。
【図5】制御記憶内のマイクロ命令の第2の具体例を示
す説明図である。
【図6】マイクロ命令パターンの第2の具体例を示す説
明図である。
【図7】従来のマイクロプロセッサ構成を示す説明図で
ある。
【符号の説明】
1    制御記憶 1a    マイクロ命令領域 1b    フィールド0領域(CSF0)1c   
 フィールド1領域(CSF1)1d    フィール
ドn領域(CSFn)1e    フィールドフラッグ
領域(F)1f    アドレス領域(ADR) 1g    追加アドレス領域(A.ADR)1h  
  拡張マイクロ命令領域 2    セレクタ(SEL) 2a    複数セレクタ(SELn)3a    マ
イクロ命令領域読み出しパス3b    フィールド0
領域読み出しパス3c    フィールド1領域読み出
しパス3d  フィールドn領域読み出しパス3e  
  フィールドフラッグ領域読み出しパス4a    
アドレス領域読み出しパス4b    追加アドレス領
域読み出しパス5    先頭マイクロ命令アドレス 6    マイクロプログラムロードパス7    ア
ドレス生成回路(ADDR)7a    複数アドレス
生成回路(ADDRn)8    マイクロ命令処理回
路 9    マイクロ命令制御回路(CTL)10   
 マスクレジスタ 11    拡張マイクロ命令パス 12    マイクロ命令パス 13    入力データパス 14    出力データパス 15    拡張用制御記憶

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】  複数のマイクロ命令よりなるマイクロ
    プログラムを格納する制御記憶と、制御記憶に格納され
    たマイクロ命令を順次処理し、実行する処理回路とを備
    えたマイクロプロセッサであって、前記制御記憶は、各
    マイクロ命令の次に処理すべきマイクロ命令を指定する
    第1指定情報と、次に処理すべきマイクロ命令と組み合
    わせるべきマイクロ命令を指定する第2指定情報と、次
    に処理すべきマイクロ命令と、これと組み合わせるべき
    マイクロ命令との、組み合わせのパタ−ンを規定するパ
    タ−ン情報とを、各マイクロ命令に対応して記憶し、前
    記処理回路は、順次、前記第1指定情報および第2指定
    情報に従って、次に処理すべきマイクロ命令と、これと
    組み合わせるべきマイクロ命令とを前記制御記憶より読
    み出し、前記パタ−ン情報に従ったパタ−ンで組み合わ
    せ、1つのマイクロ命令を構成し、これを実行すること
    を特徴とするマイクロプロセッサ。
JP3022691A 1991-02-25 1991-02-25 マイクロプロセッサ Withdrawn JPH04268925A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3022691A JPH04268925A (ja) 1991-02-25 1991-02-25 マイクロプロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3022691A JPH04268925A (ja) 1991-02-25 1991-02-25 マイクロプロセッサ

Publications (1)

Publication Number Publication Date
JPH04268925A true JPH04268925A (ja) 1992-09-24

Family

ID=12297804

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3022691A Withdrawn JPH04268925A (ja) 1991-02-25 1991-02-25 マイクロプロセッサ

Country Status (1)

Country Link
JP (1) JPH04268925A (ja)

Similar Documents

Publication Publication Date Title
JPH08106375A (ja) 信号処理演算器
JPH06332792A (ja) データ処理装置及びそのデータ読み出し制御回路,データ書き込み制御回路
JPS61170828A (ja) マイクロプログラム制御装置
JPH04268925A (ja) マイクロプロセッサ
JPH113229A (ja) プログラムロード方法およびそれを実現するシステム
JP5835498B2 (ja) Lsi及びlsi製造方法
JPS62145326A (ja) マイクロプログラム制御回路
JPS6158042A (ja) マイクロプログラム制御方式
KR100369480B1 (ko) Dsp 코어를 기반으로 하는 다중 프로그램 실장 아키텍쳐
JPH08194614A (ja) マイクロコンピュータ
JPH03652B2 (ja)
JPS63141131A (ja) パイプライン制御方式
JPS58221444A (ja) マイクロプログラム制御装置
JP2601055B2 (ja) マイクロプログラム・シーケンサ
JPS5999551A (ja) アドレス生成回路
JPS62197827A (ja) デ−タ処理装置
JPS59189407A (ja) シ−ケンス制御装置
JPH0895781A (ja) プロセッサの算術論理装置
JPH02143328A (ja) マイクロプログラム制御装置
JPH058451B2 (ja)
JPH0531170B2 (ja)
JPH0855477A (ja) メモリ装置
JPH0682321B2 (ja) マイクロ制御装置
JPS638938A (ja) マイクロプログラム制御装置
JPH01142940A (ja) マイクロプログラム制御装置

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19980514