JPH05334074A - マイクロプロセッサ - Google Patents
マイクロプロセッサInfo
- Publication number
- JPH05334074A JPH05334074A JP13899492A JP13899492A JPH05334074A JP H05334074 A JPH05334074 A JP H05334074A JP 13899492 A JP13899492 A JP 13899492A JP 13899492 A JP13899492 A JP 13899492A JP H05334074 A JPH05334074 A JP H05334074A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- instruction memory
- bits
- memory
- microprocessor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Abstract
(57)【要約】
【目的】 水平型マイクロプログラムを採用するマイク
ロプロセッサにおいて、有効に使用されていない命令メ
モリを削減し、チップサイズやチップ数を削減する。 【構成】 例えば、命令メモリ2の1ワードを32ビッ
トと24ビットで構成し、プログラムカウンタ(PC)
1の値に従って発生される選択信号出力回路2aからの
選択信号11によりマルチプレクサ(MUX)8で、8
ビット(32ビット−24ビット)を命令メモリ2から
入力するか、ノーオペレーションデータ(図中「0」)
を入力するかを選択する。 【効果】 複数のビット長で命令メモリを構成すること
により、有効に使用されていなかった命令メモリを削減
できる。
ロプロセッサにおいて、有効に使用されていない命令メ
モリを削減し、チップサイズやチップ数を削減する。 【構成】 例えば、命令メモリ2の1ワードを32ビッ
トと24ビットで構成し、プログラムカウンタ(PC)
1の値に従って発生される選択信号出力回路2aからの
選択信号11によりマルチプレクサ(MUX)8で、8
ビット(32ビット−24ビット)を命令メモリ2から
入力するか、ノーオペレーションデータ(図中「0」)
を入力するかを選択する。 【効果】 複数のビット長で命令メモリを構成すること
により、有効に使用されていなかった命令メモリを削減
できる。
Description
【0001】
【産業上の利用分野】本発明は、マイクロプロセッサに
利用され、特に、複数の機能を1命令で同時に制御する
ことが可能な水平型マイクロプログラムを採用するマイ
クロプロセッサの、命令メモリの構成に関する。
利用され、特に、複数の機能を1命令で同時に制御する
ことが可能な水平型マイクロプログラムを採用するマイ
クロプロセッサの、命令メモリの構成に関する。
【0002】
【従来の技術】マイクロプロセッサの命令フォーマット
は垂直型と水平型に大別される。
は垂直型と水平型に大別される。
【0003】垂直型マイクロプログラムは、命令メモリ
の1ワードのビット長がmビット固定であり、1命令に
1〜複数ワードのメモリを要する。1命令を構成するワ
ード数を増やすことによって複雑な処理を実行できた
り、命令セットを増やすことができる。この命令フォー
マットは、1命令中の無効ビットを削減でき、命令メモ
リを有効に使用できる利点がある。しかし、ワード数を
増やすことは命令メモリの読み出し回数を増加させ、処
理速度を低下させるという問題がある。従って現実的な
1命令の最大ワード数は限定されてくる。例えば、μP
D70116(日本電気製)の場合、1バイト以上6バ
イト以下である。
の1ワードのビット長がmビット固定であり、1命令に
1〜複数ワードのメモリを要する。1命令を構成するワ
ード数を増やすことによって複雑な処理を実行できた
り、命令セットを増やすことができる。この命令フォー
マットは、1命令中の無効ビットを削減でき、命令メモ
リを有効に使用できる利点がある。しかし、ワード数を
増やすことは命令メモリの読み出し回数を増加させ、処
理速度を低下させるという問題がある。従って現実的な
1命令の最大ワード数は限定されてくる。例えば、μP
D70116(日本電気製)の場合、1バイト以上6バ
イト以下である。
【0004】水平型マイクロプログラムは、命令メモリ
の1ワードのビット長がnビット固定であり、通常1ワ
ードで1命令を完結する。1命令は、演算、転送、制御
フィールドなどで構成され、必然的に1ワードのビット
長は長くなっている。例えば、μPD77230A(日
本電気製)の場合1ワードは32ビットで構成されてい
る。1命令で複数動作の指定をするため、プログラムは
若干複雑になり、最適化されたプログラムを記述するた
めにはマイクロプロセッサ固有のハードウェアの知識が
必要な場合もある。しかし、プログラム開発に関わる支
障は開発ツールの高機能化にともない改善されてきてい
る。このような水平型マイクロプログラムは、複数のフ
ィールドを独立に操作でき、個々のフィールドに対する
命令の解読と制御が単純にできるため、高速化に適して
いる。しかし、操作しないフィールドが有る場合でも全
フィールドの情報で1命令を構成するため、1命令中に
無効ビットが発生する場合が多いという問題がある。
の1ワードのビット長がnビット固定であり、通常1ワ
ードで1命令を完結する。1命令は、演算、転送、制御
フィールドなどで構成され、必然的に1ワードのビット
長は長くなっている。例えば、μPD77230A(日
本電気製)の場合1ワードは32ビットで構成されてい
る。1命令で複数動作の指定をするため、プログラムは
若干複雑になり、最適化されたプログラムを記述するた
めにはマイクロプロセッサ固有のハードウェアの知識が
必要な場合もある。しかし、プログラム開発に関わる支
障は開発ツールの高機能化にともない改善されてきてい
る。このような水平型マイクロプログラムは、複数のフ
ィールドを独立に操作でき、個々のフィールドに対する
命令の解読と制御が単純にできるため、高速化に適して
いる。しかし、操作しないフィールドが有る場合でも全
フィールドの情報で1命令を構成するため、1命令中に
無効ビットが発生する場合が多いという問題がある。
【0005】
【発明が解決しようとする課題】前述した従来の水平型
マイクロプログラムを採用するマイクロプロセッサで、
アプリケーションプログラムを設計する場合、1命令メ
モリ中の演算、転送、制御フィールドなど全てのフィー
ルドは使用されず、1部のフィールドを操作するための
数ビットは有効に使用されない場合があり、命令メモリ
を有効に利用できない課題があった。
マイクロプログラムを採用するマイクロプロセッサで、
アプリケーションプログラムを設計する場合、1命令メ
モリ中の演算、転送、制御フィールドなど全てのフィー
ルドは使用されず、1部のフィールドを操作するための
数ビットは有効に使用されない場合があり、命令メモリ
を有効に利用できない課題があった。
【0006】本発明の目的は、複数のビット長で命令メ
モリを構成することにより、従来の水平型マイクロプロ
グラムを採用するマイクロプロセッサで有効に使用され
ていなかった命令メモリを削減できるマイクロプロセッ
サを提供することにある。
モリを構成することにより、従来の水平型マイクロプロ
グラムを採用するマイクロプロセッサで有効に使用され
ていなかった命令メモリを削減できるマイクロプロセッ
サを提供することにある。
【0007】
【課題を解決するための手段】本発明は、システムを制
御するための水平型マイクロプログラムを格納する命令
メモリと、前記命令メモリの読み出しアドレスを指定す
るプログラムカウンタと、前記命令メモリの内容を解読
しプロセッサの動作を制御する命令デコーダとを備えた
マイクロプロセッサにおいて、前記命令メモリは、1ワ
ードの命令メモリが少なくとも2種類以上のビット長の
メモリで構成され、前記プログラムカウンタの値に従っ
て、前記命令デコーダが前記命令メモリからのデータを
読み込むか、当該フィールドをノーオペレーションとす
るデータを読み込むかの選択を指示する選択手段を備え
たことを特徴とする。
御するための水平型マイクロプログラムを格納する命令
メモリと、前記命令メモリの読み出しアドレスを指定す
るプログラムカウンタと、前記命令メモリの内容を解読
しプロセッサの動作を制御する命令デコーダとを備えた
マイクロプロセッサにおいて、前記命令メモリは、1ワ
ードの命令メモリが少なくとも2種類以上のビット長の
メモリで構成され、前記プログラムカウンタの値に従っ
て、前記命令デコーダが前記命令メモリからのデータを
読み込むか、当該フィールドをノーオペレーションとす
るデータを読み込むかの選択を指示する選択手段を備え
たことを特徴とする。
【0008】
【作用】命令メモリは、1ワードの命令メモリが例えば
2種類のビット長のメモリで構成される。そして、命令
デコーダが、これら2種類のビット長の差のビットに対
するデータを命令メモリから入力するか、当該フィール
ドをノーオペレーションとするデータ「0」を入力する
かの選択を選択手段からの指示に従って行う。
2種類のビット長のメモリで構成される。そして、命令
デコーダが、これら2種類のビット長の差のビットに対
するデータを命令メモリから入力するか、当該フィール
ドをノーオペレーションとするデータ「0」を入力する
かの選択を選択手段からの指示に従って行う。
【0009】これにより、命令メモリは1ワードのビッ
ト長をデータに適合にさせて定めることができ、メモリ
容量の最適化を図ることができ、命令メモリを削減する
ことが可能となる。
ト長をデータに適合にさせて定めることができ、メモリ
容量の最適化を図ることができ、命令メモリを削減する
ことが可能となる。
【0010】
【実施例】以下、本発明の実施例について図面を参照し
て説明する。
て説明する。
【0011】図1は本発明の第一実施例を示すブロック
構成図、および図3(a)および(b)はその命令フォ
ーマット例を示す説明図である。
構成図、および図3(a)および(b)はその命令フォ
ーマット例を示す説明図である。
【0012】本第一実施例は、プログラムカウンタ(P
C)1と、命令メモリ2と、スタック3と、スタティッ
ク回路で構成された命令デコーダ4と、割込み検出回路
(INT)5と、スタックポインタ(SP)6と、マル
チプレクサ(MUX)7と、メインバス9とを備えたマ
イクロプロセッサにおいて、本発明の特徴とするところ
の、命令メモリ2は、図3(a)および(b)に示すよ
うに1ワードの命令メモリが2種類以上のビット長のメ
モリで構成され、プログラムカウンタ(PC)1の値に
従って、命令デコーダが命令メモリ2からのデータを読
み込むか、当該フィールドをノーオペレーションとする
データ(「0」)を読み込むかを指示する選択手段とし
ての、選択信号出力回路(SG)2aおよびマルチプレ
クサ(MUX)8を備えている。
C)1と、命令メモリ2と、スタック3と、スタティッ
ク回路で構成された命令デコーダ4と、割込み検出回路
(INT)5と、スタックポインタ(SP)6と、マル
チプレクサ(MUX)7と、メインバス9とを備えたマ
イクロプロセッサにおいて、本発明の特徴とするところ
の、命令メモリ2は、図3(a)および(b)に示すよ
うに1ワードの命令メモリが2種類以上のビット長のメ
モリで構成され、プログラムカウンタ(PC)1の値に
従って、命令デコーダが命令メモリ2からのデータを読
み込むか、当該フィールドをノーオペレーションとする
データ(「0」)を読み込むかを指示する選択手段とし
ての、選択信号出力回路(SG)2aおよびマルチプレ
クサ(MUX)8を備えている。
【0013】次に、本第一実施例の動作について説明す
る。
る。
【0014】プログラムカウンタ(PC)1は命令メモ
リ2のアドレスを示すレジスタであり、インクリメント
動作と、命令による書き換えやスタック3へのデータの
退避とスタック3からのデータの復帰ができる。命令メ
モリ2はマイクロプログラムを格納するメモリで、プロ
グラムカウンタ(PC)1で指定されたアドレスの内容
を命令デコーダ4へ出力する。スタック3はプログラム
カウンタ(PC)1の内容の退避や復帰とメインバス9
を介したデータの読み書きが可能なレジスタであり、書
き込みデータはマルチプレクサ(MUX)7で選択され
る。命令デコーダ4はマイクロプログラムを解読しマイ
クロプロセッサ内の各ユニットへの制御信号を出力す
る。割込み検出回路(INT)5は割込み要求信号10
を検出する回路で、割込み要求信号10を検出するとプ
ログラムカウンタ(PC)1の内容をスタック3へ退避
した後、割込みアドレスをプログラムカウンタ(PC)
1へ設定する。スタックポインタ6はスタック3のレベ
ルを指すインクリメントまたはデクリメントの可能なカ
ウンタである。
リ2のアドレスを示すレジスタであり、インクリメント
動作と、命令による書き換えやスタック3へのデータの
退避とスタック3からのデータの復帰ができる。命令メ
モリ2はマイクロプログラムを格納するメモリで、プロ
グラムカウンタ(PC)1で指定されたアドレスの内容
を命令デコーダ4へ出力する。スタック3はプログラム
カウンタ(PC)1の内容の退避や復帰とメインバス9
を介したデータの読み書きが可能なレジスタであり、書
き込みデータはマルチプレクサ(MUX)7で選択され
る。命令デコーダ4はマイクロプログラムを解読しマイ
クロプロセッサ内の各ユニットへの制御信号を出力す
る。割込み検出回路(INT)5は割込み要求信号10
を検出する回路で、割込み要求信号10を検出するとプ
ログラムカウンタ(PC)1の内容をスタック3へ退避
した後、割込みアドレスをプログラムカウンタ(PC)
1へ設定する。スタックポインタ6はスタック3のレベ
ルを指すインクリメントまたはデクリメントの可能なカ
ウンタである。
【0015】命令メモリ2の1ワードを32ビットと2
4ビットで構成し、命令デコーダ4をスタティック回路
で構成した場合は、8ビット(32ビット−24ビッ
ト)を命令メモリ2から入力するか、当該フィールドを
ノーオペレーションとするデータ(図中「0」)を入力
するかを、選択信号出力回路2aからのプログラムカウ
ンタ(PC)1の値を選択信号11とするマルチプレク
サ(MUX)8で選択する。
4ビットで構成し、命令デコーダ4をスタティック回路
で構成した場合は、8ビット(32ビット−24ビッ
ト)を命令メモリ2から入力するか、当該フィールドを
ノーオペレーションとするデータ(図中「0」)を入力
するかを、選択信号出力回路2aからのプログラムカウ
ンタ(PC)1の値を選択信号11とするマルチプレク
サ(MUX)8で選択する。
【0016】例えば、命令メモリ2の半数を32ビット
で、残りを24ビットで構成した場合のメモリ容量は、
命令メモリ2全体を32ビットで構成した場合に比べて
87.5%になる。
で、残りを24ビットで構成した場合のメモリ容量は、
命令メモリ2全体を32ビットで構成した場合に比べて
87.5%になる。
【0017】図2は本発明の第二実施例を示すブロック
構成図で、命令デコーダ4をダイナミック回路で構成し
た例である。命令デコーダ4の入力は一度全ビット
「1」にプリチャージされ、命令メモリ2の出力が
「0」のビットをディスチャージした後解読を開始す
る。本第二実施例の場合は、メモリセルの存在しないビ
ットは「1」を保持するため、当該フィールドをノーオ
ペレーションとするデータを「オール1」と設定するこ
とにより、命令メモリ2から入力するか、当該フィール
ドをノーオペレーションとするデータを入力するかを選
択する図1のマルチプレクサ(MUX)8が不要であ
る。
構成図で、命令デコーダ4をダイナミック回路で構成し
た例である。命令デコーダ4の入力は一度全ビット
「1」にプリチャージされ、命令メモリ2の出力が
「0」のビットをディスチャージした後解読を開始す
る。本第二実施例の場合は、メモリセルの存在しないビ
ットは「1」を保持するため、当該フィールドをノーオ
ペレーションとするデータを「オール1」と設定するこ
とにより、命令メモリ2から入力するか、当該フィール
ドをノーオペレーションとするデータを入力するかを選
択する図1のマルチプレクサ(MUX)8が不要であ
る。
【0018】図3(a)および(b)は本発明のマイク
ロプロセッサの命令フォーマット例である。この例で
は、演算フィールド21、制御フィールド22、転送フ
ィールド(1)23および転送フィールド(2)24か
らなる1ワードの命令(図3(a))と、演算フィール
ド21、制御フィールド22および転送フィールド25
からなる1ワードの命令(図3(b))との2種類の異
なるワード長の命令を含んでいる。
ロプロセッサの命令フォーマット例である。この例で
は、演算フィールド21、制御フィールド22、転送フ
ィールド(1)23および転送フィールド(2)24か
らなる1ワードの命令(図3(a))と、演算フィール
ド21、制御フィールド22および転送フィールド25
からなる1ワードの命令(図3(b))との2種類の異
なるワード長の命令を含んでいる。
【0019】複雑な処理を高速に実行する場合には二つ
の転送フィールドが有効に使用されるが、一つの転送フ
ィールドで十分な場合も多い。これら二つのフォーマッ
トの切り換えは分岐命令によりプログラムカウンタ(P
C)1の値を変更することで行う。二つの転送が可能な
領域で、二つの転送と一つの転送が混在する処理を高速
に行うことは可能である。
の転送フィールドが有効に使用されるが、一つの転送フ
ィールドで十分な場合も多い。これら二つのフォーマッ
トの切り換えは分岐命令によりプログラムカウンタ(P
C)1の値を変更することで行う。二つの転送が可能な
領域で、二つの転送と一つの転送が混在する処理を高速
に行うことは可能である。
【0020】
【発明の効果】以上説明したように、本発明は、複数の
ビット長で命令メモリを構成することにより、有効に使
用されていなかった命令メモリを削減できる効果があ
る。例えば、命令メモリを内蔵したマイクロプロセッサ
ではチップサイズを縮小でき、メモリセルの大きい読み
出し書き込みメモリ(RAM)で命令メモリを構成する
場合の効果は特に大きい。また、命令メモリを外部にも
つマイクロプロセッサではメモリチップの数を削減でき
る大きな効果が得られる。
ビット長で命令メモリを構成することにより、有効に使
用されていなかった命令メモリを削減できる効果があ
る。例えば、命令メモリを内蔵したマイクロプロセッサ
ではチップサイズを縮小でき、メモリセルの大きい読み
出し書き込みメモリ(RAM)で命令メモリを構成する
場合の効果は特に大きい。また、命令メモリを外部にも
つマイクロプロセッサではメモリチップの数を削減でき
る大きな効果が得られる。
【図1】本発明の第一実施例を示すブロック構成図。
【図2】本発明の第二実施例を示すブロック構成図。
【図3】本発明のマイクロプロセッサの命令フォーマッ
ト例を示す図。
ト例を示す図。
1 プログラムカウンタ(PC) 2 命令メモリ 2a 選択信号出力回路(SG) 3 スタック 4 命令デコーダ 5 割込み検出回路(INT) 6 スタックポインタ(SP) 7、8 マルチプレクサ(MUX) 9 メインバス 10 割込み要求信号 11 選択信号 21 演算フィールド 22 制御フィールド 23 転送フィールド(1) 24 転送フィールド(2) 25 転送フィールド
Claims (1)
- 【請求項1】 システムを制御するための水平型マイク
ロプログラムを格納する命令メモリと、 前記命令メモリの読み出しアドレスを指定するプログラ
ムカウンタと、 前記命令メモリの内容を解読しプロセッサの動作を制御
する命令デコーダとを備えたマイクロプロセッサにおい
て、 前記命令メモリは、1ワードの命令メモリが少なくとも
2種類以上のビット長のメモリで構成され、 前記プログラムカウンタの値に従って、前記命令デコー
ダが前記命令メモリからのデータを読み込むか、当該フ
ィールドをノーオペレーションとするデータを読み込む
かの選択を指示する選択手段を備えたことを特徴とする
マイクロプロセッサ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP13899492A JPH05334074A (ja) | 1992-05-29 | 1992-05-29 | マイクロプロセッサ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP13899492A JPH05334074A (ja) | 1992-05-29 | 1992-05-29 | マイクロプロセッサ |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05334074A true JPH05334074A (ja) | 1993-12-17 |
Family
ID=15235003
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP13899492A Pending JPH05334074A (ja) | 1992-05-29 | 1992-05-29 | マイクロプロセッサ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05334074A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009093662A (ja) * | 2002-12-27 | 2009-04-30 | Arm Ltd | 固定小数点表示と浮動小数点表示との間で数を変換するデータ処理装置および方法 |
US8122233B2 (en) | 2003-06-20 | 2012-02-21 | Renesas Electronics Corporation | Information processing device |
-
1992
- 1992-05-29 JP JP13899492A patent/JPH05334074A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009093662A (ja) * | 2002-12-27 | 2009-04-30 | Arm Ltd | 固定小数点表示と浮動小数点表示との間で数を変換するデータ処理装置および方法 |
US8122233B2 (en) | 2003-06-20 | 2012-02-21 | Renesas Electronics Corporation | Information processing device |
US8484448B2 (en) | 2003-06-20 | 2013-07-09 | Renesas Electronics Corporation | Information processing device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9032185B2 (en) | Active memory command engine and method | |
US4777588A (en) | General-purpose register file optimized for intraprocedural register allocation, procedure calls, and multitasking performance | |
US5455955A (en) | Data processing system with device for arranging instructions | |
JP2773471B2 (ja) | 情報処理装置 | |
US5274792A (en) | Information processing apparatus with parallel instruction decoding | |
JPH05334074A (ja) | マイクロプロセッサ | |
JP2553200B2 (ja) | 情報処理装置 | |
JPH03271829A (ja) | 情報処理装置 | |
JPH056281A (ja) | 情報処理装置 | |
US6321319B2 (en) | Computer system for allowing a two word jump instruction to be executed in the same number of cycles as a single word jump instruction | |
JPS6230455B2 (ja) | ||
JP3058524B2 (ja) | プログラム制御装置 | |
JPH0258648B2 (ja) | ||
JP3305967B2 (ja) | Dspのポインタ異常検出回路 | |
JPH0315770B2 (ja) | ||
JPS6362065A (ja) | デ−タ転送制御方式 | |
JPS628245A (ja) | 仮想記憶方式 | |
JPS63276126A (ja) | 命令デコ−ド回路 | |
JPH11134202A (ja) | タスク切替え装置 | |
JPH0962504A (ja) | 命令処理装置 | |
JPS62210541A (ja) | レジスタ選択方式 | |
JPS6351294B2 (ja) | ||
JPH01255037A (ja) | 電子計算機 | |
JPH01316826A (ja) | レジスタファイルアドレス回路 | |
JPH0282318A (ja) | 浮動小数点演算装置 |