JPH07146791A - 命令デコード装置 - Google Patents

命令デコード装置

Info

Publication number
JPH07146791A
JPH07146791A JP17803894A JP17803894A JPH07146791A JP H07146791 A JPH07146791 A JP H07146791A JP 17803894 A JP17803894 A JP 17803894A JP 17803894 A JP17803894 A JP 17803894A JP H07146791 A JPH07146791 A JP H07146791A
Authority
JP
Japan
Prior art keywords
instruction
decoding
code
register
bits
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP17803894A
Other languages
English (en)
Inventor
Toshihiro Ishikawa
川 利 広 石
Jiyunji Soumon
門 淳 二 惣
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP17803894A priority Critical patent/JPH07146791A/ja
Publication of JPH07146791A publication Critical patent/JPH07146791A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】 【目的】 より小さい命令メモリ長で、より多くのコー
ド指定を可能とし、複雑な構成のプロセッサを制御する
際の消費電力を低減し、小型化を容易にする。 【構成】 命令メモリ11からの命令情報が一次デコー
ド用メモリ12a〜12nへ送出される。この場合、一
次デコード用メモリ12a〜12nに送られたコード
は、一次デコーダ用メモリ12a〜12nのアドレスと
して入力され、メインデコード回路13が処理に必要な
予め設定したコードをメインデコード回路13に出力す
る。メインデコード回路13では、命令メモリ11およ
び一次デコード用メモリ12a〜12nの出力情報から
プロセッサの各部へ送る各種の制御信号を送出する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、マイクロプロセッサ、
ディジタルシグナルプロセッサ(DSP)などに利用
し、より小さい命令メモリ長で、より多くのコード指定
を行なう命令デコード装置に関するものである。
【0002】
【従来の技術】近年、プロセッサはその情報処理の多様
化および高速化が進展している。この進展に伴ってプロ
セッサの処理と構成が複雑化し、プロセッサの命令メモ
リ長が大きくなる傾向にある。
【0003】図7は従来の命令デコード装置を示すブロ
ック図である。図7において、この装置は、命令メモリ
1と、この命令メモリ1から受け取った信号をもとに各
ブロックへの各種の制御信号を生成する論理回路である
デコード回路2とを有している。さらに、この装置に
は、デコード回路2で生成された制御信号を各ブロック
へ送出する信号線3と、命令メモリ1からのデータをデ
コード回路2へ送出するための信号線4とが設けられて
いる。
【0004】次に、この従来例の構成における動作につ
いて説明する。命令メモリ1から信号線4を通じてデコ
ード回路2へ命令情報が転送される。デコード回路2で
は、その情報をもとに予め定義された論理により一意的
に各種制御の信号を生成し、信号線3を通じて各ブロッ
クへ伝える。これによってプロセッサ全体の制御が行な
われる。
【0005】
【発明が解決しようとする課題】しかしながら、上記の
従来の命令デコード装置では、プロセッサの全体構成の
複雑化に伴う演算命令コード、データ転送のレジスタコ
ード、メモリポインタ修飾コード等のビット数増加によ
り命令メモリ長が大きくなり、低消費電力化・小型化の
妨げとなるという問題点を有していた。
【0006】本発明は、このような従来の問題を解決す
るものであり、より小さい命令メモリ長で、より多くの
コード指定が可能となり、複雑な構成のプロセッサを制
御する際の消費電力が低減し、かつ、小型化が容易にな
る優れた命令デコード装置の提供を目的とする。
【0007】
【課題を解決するための手段】上記目的を達成するため
に、本発明の命令デコード装置では、命令コードが記憶
される命令記憶手段と、この命令記憶手段から出力され
る命令コード中の一部と第二の命令コードをデコードし
て制御信号を生成するデコード手段と、このデコード手
段と命令記憶手段との間に、命令記憶手段からのコード
の一部を第二の命令コードに変換してデコード手段に出
力するプログラマブルな複数の一次デコード用記憶手段
とを備えたものである。
【0008】本発明はまた、命令コードが記憶される命
令記憶手段と、命令記憶手段から出力される命令コード
中の一部と第二の命令コードをデコードして制御信号を
生成するデコード手段と、第二の命令コードを記憶して
デコード手段に出力する第二の命令記憶手段とを備えた
ものである。
【0009】
【作用】上記構成により、本発明の命令デコード装置で
は、一次デコード用記憶手段または第二の命令記憶手段
に、頻繁に指定するコードを設定し、命令記憶手段は指
定するコードが設定してある一次デコード用記憶手段ま
たは第二の命令記憶手段のアドレスを指定することによ
り、また、頻繁に指定されないコードは、一次デコード
用記憶手段または第二の命令記憶手段にコードを設定し
て指定することにより、より小さい命令メモリ長で、よ
り多くのコード指定が可能となり、複雑な構成のプロセ
ッサを制御できるようになる。
【0010】
【実施例】
(実施例1)以下、本発明の命令デコード装置の第1の
実施例を図面を参照して詳細に説明する。図1は本発明
の第1の実施例における命令デコード装置の構成を示す
ブロック図である。11は命令コードが記憶される命令
記憶手段である命令メモリ、12a〜12nはプログラ
マブルな一次デコード用メモリ、13はメインデコード
回路であり、命令メモリ11および一次デコード用メモ
リ12a〜12nの出力情報から図示しないプロセッサ
の各部へ送る各種の制御信号を生成する論理回路であ
る。
【0011】この装置はまた、命令メモリ11とメイン
デコード回路13を接続する信号線14と、命令メモリ
11と一次デコード用メモリ12a〜12nを接続する
信号線15a〜15nと、一次デコード用メモリ12a
〜12nとメインデコード回路13とを接続する信号線
16a〜16nと、メインデコード回路13で生成され
た制御信号を各ブロックへ送出するための信号線17と
を有している。
【0012】次に、上記実施例における動作について説
明する。命令メモリ11からの命令情報が一次デコード
用メモリ12a〜12nへ送出される。この場合、一次
デコード用メモリ12a〜12nに送られたコードは、
この一次デコーダ用メモリ12a〜12nのアドレスと
して入力され、メインデコード回路13が処理に必要な
予め設定したコードをメインデコード回路13に出力す
る。メインデコード回路13では、命令メモリ11およ
び一次デコード用メモリ12a〜12nの出力情報か
ら、図示しないプロセッサの各部へ送る各種の制御信号
を送出する。
【0013】この場合、より小さい命令メモリ長で、よ
り多くのコード指定が可能となる。すなわち、一次デコ
ード用メモリ12a〜12nのアドレスビット数に対し
て出力ビット数が大きいほど、利点がある。
【0014】(実施例2)次に、本発明の第2の実施例
について、図面を用いて説明する。図2は本発明の第2
の実施例における命令デコード装置の概略ブロック図で
ある。図2において、21は命令記憶手段としての8ビ
ット幅の命令メモリであり、図3に示すような8ビット
幅の命令体系で記述されたプログラムを記憶しており、
命令体系は、オペレーションコードOPが2ビット、ソ
ースASaが2ビット、ソースBSbが4ビットのビッ
ト幅の命令体系からなる。22は一次デコード用記憶手
段としての4ビット幅、4ワードの書き換え可能なRA
Mであり、0番地から3番地のアドレスに表1に示すよ
うな4ビットの命令操作コードのデータを記憶してい
る。23はデコード手段としての命令デコード回路であ
り、RAM32の出力の4ビットとレジスタ24の出力
を6ビットを入力として、図示しないプロセッサの各部
へ送る各種の制御信号26を出力する。24はレジスタ
であり、命令メモリ21の出力の下位の6ビット、すな
わち図3に示すSaとSbのビットを記憶して、その6
ビットを命令デコード回路23に出力するとともに、そ
の6ビットのうち、上位2ビットすなわち図3における
Saの2ビットをセレクタ25に出力し、下位4ビット
すなわち図4におけるSbの4ビットをRAM22に出
力する。25はセレクタであり、命令メモリ21の出力
の上位2ビットすなわち図3におけるOPの2ビット
と、レジスタ24の出力の上位2ビットすなわち図3に
おけるSaの2ビットのいずれかを選択して、RAM2
2のアドレスとして出力する。27はセレクタ25とR
AM22を制御する制御信号である。
【0015】次に、上記実施例の動作について説明す
る。本実施例の命令デコード装置においては、表2に示
すグループ1と2に属する8種類の命令操作コードで表
される命令をデコードするものとする。そして命令メモ
リ21に格納されているプログラムは、表2の中のグル
ープ1に含まれる命令を非常に多く含んでおり、頻繁に
実行されるものとする。そこでRAM22には、表1に
示すように表2のグループ1の命令操作コードがあらか
じめ格納されているものとする。
【0016】はじめに、命令メモリ21に格納されてい
る加算命令をデコードする場合の動作について述べる。
まず、セレクタ25は、命令メモリ21から読み出され
る8ビットの加算命令のコードの上位2ビットを選択
し、値01をRAM22のアドレスとして出力する。R
AM22は、01番地の値0001を加算命令の命令操
作コードとして、命令デコード回路23に出力する。命
令デコード回路23は、表2に基づいて、図示しない演
算回路に対して加算動作を指示する制御信号26を出力
する。また、レジスタ24は、命令メモリ21の出力の
下位6ビットを保持すると同時に、加算のソースオぺラ
ンドコードとして、命令デコード回路23に出力する。
命令デコード回路23は,図示しない演算回路に図3に
おけるSaとSbのコードで表されるソースオペランド
を演算回路に供給するための制御信号26を出力する。
以上の動作により、加算命令がデコードされる。命令メ
モリ21には、表2に示されるグループ1に属する命令
が非常に多く含まれるので、ほとんどの場合、上記のよ
うな動作を行なうことにより命令がデコードされる。
【0017】次に、表2においてグループ2に属する論
理和命令をデコードする場合の動作について説明する。
この場合、RAM22には、論理和命令の命令操作コー
ドが記憶されていないので、まず表2におけるロード命
令を実行することにより、RAM22に論理和命令の命
令コードをロードする。このロード命令のコードは、図
3におけるOPの値が00であり、Saの値が11、S
bの値が0101になっている。命令メモリ21からこ
のロード命令を読み出すと、レジスタ24が、SaとS
bの値6ビットを記憶すると同時に、セレクタ25か
ら、RAM22において表1に示すようにロード命令の
命令操作コードが格納されているアドレス値00が出力
される。RAM22は、ロード命令の命令操作コード0
000を、命令デコード回路23に出力する。命令デコ
ード回路23は、制御信号27を出力する。この制御信
号27は、セレクタ25には、レジスタ24に格納され
ているSaの値11を選択して出力するように指示し、
RAM22には、そのセレクタ25出力で示される11
番地に、レジスタ24の出力のSbの値0101を格納
するように指示する。したがって、RAM22の11番
地には、転送命令の命令操作コード0011に替わっ
て、論理和命令の命令操作コード0101が格納される
ことになる。この状態で、次にOPの値が11となって
いる論理和命令のコードを、命令メモリ21から読み出
せば、セレクタ25が、値11を選択してRAM22の
アドレスとして出力し、RAM22が論理和命令の命令
操作コード0101を出力するので、命令デコード回路
23は、表2に従ってデコードして、図示しない演算回
路に対して論理和動作を指示する制御信号26を出力す
る。上記のように、頻繁には実行しないため、あらかじ
めRAM22には格納されていない表2におけるグルー
プ2に属する命令に関しても、ロード命令に続いて命令
メモリ21から読み出すことにより、デコードすること
ができる。
【0018】以上のように、本実施例における命令デコ
ード装置では、RAM22が、図3に示される命令メモ
リ21の命令体系のオペレーションコードのビット幅2
ビットよりも大きいビット幅の命令操作コードを記憶
し、かつRAM22の内容をロード命令によって書き換
えることにより、通常4種類の命令しか表すことができ
ない2ビット幅のオペレーションコードで、表2に示し
たグループ1と2に属する8種類の命令を区別してデコ
ードすることができる。RAM22が出力する命令操作
コードは4ビットであるので、さらにグループ3と4に
属する命令を定義すれば、16種類の命令をデコードす
ることも可能である。すなわち、従来なら4種類しかデ
コードできないオペレーションコードのビット幅2ビッ
トで、4倍の16種類の命令をデコードすることがで
き、命令メモリの容量を大幅に削減することができるの
で、本実施例の命令デコード装置を搭載すれば、プロセ
ッサをLSIで実現する場合に、そのチップ面積を削減
してコストを低減できるという効果を有する。
【0019】(実施例3)次に、本発明の第3の実施例
について、図面を用いて説明する。図4は本発明の第3
の実施例における命令デコード装置の概略ブロック図で
ある。図4において、31は命令記憶手段としての命令
メモリ、32は一次デコード用記憶手段としてのRA
M、34はレジスタ、35はセレクタであり、これらは
上記した第2の実施例における21、22、24、25
と同じである。33は、一次デコード用記憶手段として
の4ビット幅、4ワードの書き換え可能なRAMであ
り、レジスタ34の上位2ビットをアドレスとして入力
し、0番地から3番地のアドレスに表1に示すような4
ビットのオペランドコードのデータを記憶している。3
6はデコード手段としての命令デコード回路であり、R
AM32の出力の4ビットと、RAM33の出力4ビッ
トおよびレジスタ34の出力の下位4ビットを入力とし
て、図示しないプロセッサの各部へ送る各種の制御信号
37を出力する。38はセレクタ35とRAM32を制
御する制御信号、39はRAM33にレジスタ34の出
力4ビットの値を書き込むように指示する制御信号であ
る。
【0020】次に、上記実施例の動作について説明す
る。本実施例の命令デコード装置において、命令操作コ
ードのデコード動作については、前述の第2の実施例と
同様である。本実施例では、図3に示した命令体系にお
けるSbの2ビットのフィールド、すなわちソースAの
オペランドコードをデコードする動作について詳細に説
明する。本実施例の命令デコード装置は、表3に示すよ
うな16種類のオペランドコードをデコードするものと
する。このオペランドコードは、それぞれ図示しないレ
ジスタ0から15までの16個のレジスタを選択する動
作に対応している。そして命令メモリ31に格納されて
いるプログラムは、表3の中のグループ1に含まれるオ
ペランド、すなわちレジスタ0〜3を頻繁に選択して実
行するものとする。そこでRAM33には、表1に示す
ように表3のグループ1のオペランドコードがあらかじ
め格納されているものとする。RAM32には、第2の
実施例と同様に表1に示す命令操作コードがあらかじめ
格納されているものとする。
【0021】はじめに、命令メモリ31に格納されてい
る加算命令のソースAのオペランドに、レジスタ0が選
択されている場合のデコード動作について述べる。命令
メモリ31から読み出される8ビットの加算命令のコー
ドの上位2ビットのOPフィールドをデコードする動作
については、前述の第2の実施例の場合と同様である。
Saフィールドをデコードする動作については、まずレ
ジスタ34は、命令メモリ31の出力の下位6ビットを
保持すると同時に、その上位2ビットの値00をRAM
33にアドレスとして出力する。RAM33は、00番
地の値0000をレジスタ0のオペランドコードとし
て、命令デコード回路36に出力する。命令デコード回
路36は、表3に基づいて、図示しない演算回路に対し
てレジスタ0を選択して加算するように指示する制御信
号37を出力する。またレジスタ34の下位4ビットか
ら入力するSbのコードで表されるソースオペランドを
演算回路に供給するための制御信号を出力する。以上の
動作により、レジスタ0をソースAのオペランドとして
選択した加算命令がデコードされる。表3に示されるグ
ループ1に属するレジスタ1〜3が選択される場合も、
上記のような動作を行なうことによりデコードされる。
【0022】次に、表3においてグループ2に属するレ
ジスタ5が、ソースAのオペランドに、選択されている
命令をデコードする場合の動作について説明する。この
場合、RAM33には、レジスタ5のオペランドコード
が記憶されていないので、まず、表2におけるロードS
命令を実行することにより、RAM33にレジスタ5の
オペランドコードをロードする。このロードS命令のコ
ードは、図3におけるOPの値が10であり、Saの値
が01、Sbの値が0101になっている。命令メモリ
31からこのロードS命令を読み出すと、レジスタ34
が、SaとSbの値6ビットを記憶すると同時に、その
上位2ビットの値01を、RAM33にアドレスとして
出力する。RAM32は、セレクタ35からOPの値1
0がアドレスとして供給されて、ロードS命令の命令操
作コード0010を、命令デコード回路36に出力す
る。命令デコード回路36は、制御信号39を出力す
る。この制御信号39は、RAM33に、レジスタ34
の出力で示される01番地に、レジスタ34の出力のS
bの値0101を格納するように指示する。したがっ
て、RAM33の01番地には、レジスタ1のオペラン
ドコード0001に替わって、論理和命令の命令操作コ
ード0101が格納されることになる。この状態で、次
にSaフィールドの値が01となっている命令のコード
を、命令メモリ31から読み出せば、レジスタ34の上
位2ビットから、値01がRAM33のアドレスとして
出力され、RAM33がレジスタ5のオペランドコード
0101を出力するので、命令デコード回路36は、表
3に従ってデコードし、図示しない演算回路に対してレ
ジスタ5を選択するように指示する制御信号37を出力
する。以上のように、頻繁には選択しないため、あらか
じめRAM33には格納されていない表3におけるグル
ープ2に属するオペランドに関しても、ロードS命令に
続いて命令メモリ31から読み出すことにより、デコー
ドすることができる。
【0023】以上のように、本実施例における命令デコ
ード装置では、RAM32が、図3に示される命令メモ
リ31の命令体系のオペレーションコードのビット幅2
ビットよりも大きいビット幅の命令操作コードを記憶
し、かつRAM32の内容をロード命令によって書き換
えることにより、従来なら4種類しかデコードできない
オペレーションコードのビット幅2ビットで、4倍の1
6種類の命令をデコードすることができる。さらに、R
AM33が、図3に示される命令メモリ31の命令体系
のソースAのフィールドのビット幅2ビットよりも大き
いビット幅のオペランドコードを記憶し、かつRAM3
3の内容をロードS命令によって書き換えることによ
り、通常4種類のオペランドしか表すことができない2
ビット幅のソースAフィールドで、表3に示した16種
類のオペランドを区別してデコードすることができ、命
令メモリ31のビット幅を増やすことなく、従来より4
倍の種類の命令とオペランドをデコードできる。逆にデ
コードする命令とオペランドの種類が同じなら、命令メ
モリの容量を大幅に削減することができるので、本実施
例の命令デコード装置を搭載すれば、プロセッサをLS
Iで実現する場合に、そのチップ面積を削減してコスト
を低減できるとともに、命令メモリの読み出しに伴う消
費電力を低減できるという効果を有する。
【0024】なお上記第2および第3の実施例では、命
令操作コード(オペコード)とオペランドコード(アド
レッシングモード)とが独立に符号化した命令体系にお
ける実施例を示しているが、命令操作コードとオペラン
ドコードを組にして符号化した命令体系や、データ転送
フィールドやメモリポインタ選択、修飾フィールドを持
つ命令体系においても、そのフィールドに対応する一次
デコード用記憶手段を備えるようにすれば、同様の効果
を得ることができる。
【0025】(実施例4)次に、本発明の第4の実施例
について、図面を用いて説明する。図5は本発明の第4
の実施例における命令デコード装置の概略ブロック図で
ある。図5において、41は命令記憶手段としての8ビ
ット幅の命令メモリであり、図3に示すような8ビット
幅の命令体系で記述されたプログラムを記憶しており、
命令体系は、オペレーションコードOPが2ビット、ソ
ースASaが2ビット、ソースBSbが4ビットのビッ
ト幅の命令体系からなる。42は第二の命令記憶手段と
しての2ビット幅のレジスタであり、データバス45に
接続され、表2に示した命令操作コードの上位2ビット
を記憶して、命令デコード回路43に出力する。43は
デコード手段としての命令デコード回路であり、レジス
タ42の出力の2ビットと命令メモリ41の出力の8ビ
ットを入力として、図示しないプロセッサの各部へ送る
各種の制御信号44を出力する。
【0026】次に、上記実施例において、命令操作コー
ドをデコードする動作について説明する。本実施例の命
令デコード装置においては、表2に示すグループ1と2
に属する8種類の命令操作コードで表される命令をデコ
ードするものとする。そして命令メモリ41に格納され
ているプログラムは、表2の中のグループ1に含まれる
命令を非常に多く含んでおり、頻繁に実行されるものと
する。そこでレジスタ42には、表2のグループ1の命
令操作コードの上位2ビットの値00が、データバス4
5を介してあらかじめ格納されているものとする。
【0027】はじめに、命令メモリ41に格納されてい
る加算命令をデコードする場合の動作について述べる。
まず、命令メモリ41から読み出される8ビットの加算
命令のコードが、命令デコード回路43に出力される。
レジスタ42は値00を命令操作コードの上位2ビット
の値として命令デコード回路43に出力する。命令デコ
ード回路43には、レジスタ42の出力と命令メモリ4
1の出力の上位2ビットのOPフィールドの値を合わせ
た値0001が命令操作コードとして入力される。命令
デコード回路43は、表2に基づいて、図示しない演算
回路に対して加算動作を指示する制御信号44を出力す
る。以上の動作により、加算命令がデコードされる。命
令メモリ41には、表2に示されるグループ1に属する
命令が非常に多く含まれるので、ほとんどの場合、上記
のような動作を行なうことにより命令がデコードされ
る。
【0028】次に、表2においてグループ2に属する論
理和命令をデコードする場合の動作について説明する。
この場合、データバス45を介してレジスタ42に、グ
ループ2を表す値01を格納する。この状態で、次にO
Pの値が11となっている論理和命令のコードを、命令
メモリ41から読み出せば、レジスタ42の出力と命令
メモリ41の出力の上位2ビットから、論理和命令の命
令操作コード0101が命令デコード回路43に入力さ
れるので、命令デコード回路43は、表2に従ってデコ
ードして、図示しない演算回路に対して論理和動作を指
示する制御信号44を出力する。上記のように、頻繁に
は実行しない表2におけるグループ2に属する命令に関
しても、レジスタ42にデータバス45を介してグルー
プ2を表す値01を格納した後、命令メモリ41から読
み出すことにより、デコードすることができる。
【0029】以上のように、本実施例における命令デコ
ード装置では、レジスタ42が、表2に示す命令操作コ
ードの上位2ビットを記憶し、レジスタ42の内容を書
き換えることにより、通常4種類の命令しか表すことが
できない2ビット幅のオペレーションコードで、表2に
示したグループ1と2に属する8種類の命令を区別して
デコードすることができる。2ビット幅のレジスタ42
の値により、4つのグループの命令操作コードを区別で
きるので、さらにグループ3と4に属する命令を定義す
れば、16種類の命令をデコードすることも可能であ
る。すなわち、従来なら4種類しかデコードできないオ
ペレーションコードのビット幅2ビットで、4倍の16
種類の命令をデコードすることができるので、命令メモ
リの容量を大幅に削減することができるとともに、上記
第2の実施例と同様の効果をより少ないハードウェアの
追加のみで実現できるので、本実施例の命令デコード装
置を搭載すれば、プロセッサをLSIで実現する場合
に、そのチップ面積を削減してコストを低減でき、命令
メモリの読み出しに伴う消費電力を低減できるという効
果を有する。
【0030】なお、本実施例においては、レジスタ42
にはデータバス45から値を書き込むように構成してい
るが、命令メモリ41の出力や命令デコード回路43の
出力の値を書き込むように構成してもよい。
【0031】(実施例5)次に、本発明の第5の実施例
について、図面を用いて説明する。図6は本発明の第5
の実施例における命令デコード装置の概略ブロック図で
ある。図6において、51は命令メモリ、52はレジス
タであり、これらは上記第4の実施例における命令メモ
リ41とレジスタ42と同じである。53は、第二の命
令記憶手段としての2ビット幅のレジスタであり、デー
タバス56に接続され、表3に示したオペランドコード
の上位2ビットを記憶して、命令デコード回路54に出
力する。54はデコード手段としての命令デコード回路
であり、レジスタ52の出力の2ビットとレジスタ53
の出力の2ビットと命令メモリ51の出力の8ビットを
入力として、図示しないプロセッサの各部へ送る各種の
制御信号55を出力する。
【0032】次に、上記実施例の動作について説明す
る。本実施例の命令デコード装置において、命令操作コ
ードのデコード動作については、前述の第4の実施例と
同様である。本実施例では、図3に示した命令体系にお
けるSbの2ビットのフィールド、すなわちソースAの
オペランドコードをデコードする動作について詳細に説
明する。本実施例の命令デコード装置は、表3に示すよ
うな16種類のオペランドコードをデコードするものと
する。このオペランドコードは、それぞれ図示しないレ
ジスタ0から15までの16個のレジスタを選択する動
作に対応している。そして命令メモリ51に格納されて
いるプログラムは、表3の中のグループ1に含まれるオ
ペランド、すなわちレジスタ0〜3を頻繁に選択して実
行するものとする。そこでレジスタ53には、グループ
1のオペランドコードの上位2ビットの値00があらか
じめデータバス56を介して格納されているものとす
る。レジスタ42には、第4の実施例と同様にグループ
1の命令操作コードの上位2ビットの値00があらかじ
め格納されているものとする。
【0033】はじめに、命令メモリ51に格納されてい
る加算命令のソースAのオペランドに、レジスタ0が選
択されている場合のデコード動作について述べる。命令
メモリ51から読み出される8ビットの加算命令のコー
ドの上位2ビットのOPフィールドをデコードする動作
については、前述の第4の実施例の場合と同様である。
Saフィールドをデコードする動作については、まず、
命令メモリ51から読み出される8ビットの加算命令の
コードが、命令デコード回路54に出力される。レジス
タ53は値00をオペランドコードの上位2ビットの値
として命令デコード回路54に出力する。命令デコード
回路54には、レジスタ53の出力と命令メモリ51の
出力の2ビットのSbフィールドの値を合わせた値00
00がオペランドコードとして入力される。また、レジ
スタ52出力と命令メモリ51の出力の上位2ビットの
OPフィールドの値を合わせた値0001が命令操作コ
ードとして入力される。命令デコード回路54は、表2
と表3に基づいて、図示しない演算回路に対してレジス
タ0を選択して加算するように指示する制御信号55を
出力する。以上の動作により、レジスタ0をソースAの
オペランドとして選択した加算命令がデコードされる。
表3に示されるグループ1に属するレジスタ1〜3が選
択される場合も、上記のような動作を行なうことにより
デコードされる。
【0034】次に、表3においてグループ2に属するレ
ジスタ53が、ソースAのオペランドに、選択されてい
る命令をデコードする場合の動作について説明する。こ
の場合、レジスタ53にデータバス56を介して、グル
ープ2のオペランドコードの上位2ビットの値01を格
納する。この状態で、次にSaフィールドの値が01と
なっている命令のコードを、命令メモリ51から読み出
せば、レジスタ53の出力の値01と合わせてオペラン
ドコード0101が命令デコード回路54に入力される
ので、命令デコード回路54は、表3に従ってデコード
し、図示しない演算回路に対してレジスタ53を選択す
るように指示する制御信号を出力する。以上のように、
頻繁には選択しない表3におけるグループ2に属するオ
ペランドに関しても、レジスタ53にグループ2のオペ
ランドコードの上位2ビットの値を格納することによ
り、デコードすることができる。
【0035】以上のように、本実施例における命令デコ
ード装置では、レジスタ52が、表2に示す命令操作コ
ードの上位2ビットを記憶し、レジスタ52の内容を書
き換えることにより、通常4種類の命令しか表すことが
できない2ビット幅のオペレーションコードで、4倍の
16種類の命令をデコードすることができる。さらに、
レジスタ53が、表3に示したオペランドコードの上位
2ビットを記憶し、レジスタ53の内容を書き換えるこ
とにより、従来4種類のオペランドしか表すことができ
ない2ビット幅のソースAフィールドで、表3に示した
16種類のオペランドを区別してデコードすることがで
きるので、命令メモリ51のビット幅を増やすことな
く、従来より4倍の種類の命令とオペランドをデコード
できる。逆にデコードする命令とオペランドの種類が同
じなら、命令メモリ51の容量を大幅に削減することが
できるとともに、前述の第3の実施例と同様の効果をよ
り少ないハードウェアの追加のみで実現できるので、本
実施例の命令デコード装置を搭載すれば、プロセッサを
LSIで実現する場合に、そのチップ面積を削減してコ
ストを低減でき、命令メモリの読み出しに伴う消費電力
を低減できるという効果を有する。
【0036】なお、本実施例においては、レジスタ52
にはデータバス56から値を書き込むように構成してい
るが、命令メモリ51の出力や命令デコード回路54の
出力の値を書き込むように構成してもよい。
【0037】また上記第4および第5の実施例では、命
令操作コード(オペコード)とオペランドコード(アド
レッシングモード)とが独立に符号化した命令体系にお
ける実施例を示しているが、命令操作コードとオペラン
ドコードを組にして符号化した命令体系や、データ転送
フィールドやメモリポインタ選択、修飾フィールドを持
つ命令体系においても、そのフィールドに対応する第二
の命令用記憶手段を備えるようにすれば、同様の効果を
得ることができる。
【0038】
【発明の効果】以上の説明から明らかなように、本発明
の命令デコード装置は、一次デコード用記憶手段または
第二の命令記憶手段には、頻繁に指定するコードを設定
し、命令記憶手段は、指定するコードが設定してある一
次デコード用記憶手段または第二の命令記憶手段のアド
レスを指定することにより、また、頻繁に指定されない
コードは、一次デコード用記憶手段または第二の命令記
憶手段にコードを設定して指定することにより、より小
さい命令メモリ長で、より多くのコードの指定が可能と
なり、複雑な構成のプロセッサが制御できる。
【0039】また、命令メモリの容量を大幅に削減する
ことができるので、本発明の命令デコード装置を搭載す
れば、プロセッサをLSIで実現する場合に、そのチッ
プ面積を削減してコストを低減できるとともに、命令メ
モリの読み出しに伴う消費電力を低減できるという効果
を有する。
【図面の簡単な説明】
【図1】本発明の第1の実施例における命令デコード装
置の構成を示すブロック図
【図2】本発明の第2の実施例における命令デコード装
置の構成を示すブロック図
【図3】各実施例における命令メモリのデータ構成図
【図4】本発明の第3の実施例における命令デコード装
置の構成を示すブロック図
【図5】本発明の第4の実施例における命令デコード装
置の構成を示すブロック図
【図6】本発明の第5の実施例における命令デコード装
置の構成を示すブロック図
【図7】従来の命令デコード装置の構成を示すブロック
【符号の説明】
11 命令メモリ(命令記憶手段) 12a〜12n 一次デコード用メモリ(一次デコード
用記憶手段) 13 メインデコード回路(デコード手段) 21 命令メモリ(命令記憶手段) 22 RAM(一次デコード用記憶手段) 23 命令デコード回路(デコード手段) 24 レジスタ 25 セレクタ 31 命令メモリ(命令記憶手段) 32、33 RAM(一次デコード用記憶手段) 34 レジスタ 35 セレクタ 36 命令デコード回路(デコード手段) 41 命令メモリ(命令記憶手段) 42 レジスタ(第二の命令記憶手段) 43 命令デコード回路(デコード手段) 51 命令メモリ(命令記憶手段) 52、53 レジスタ(第二の命令記憶手段) 54 命令デコード回路(デコード手段)
【表1】
【表2】
【表3】

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 命令コードが記憶される命令記憶手段
    と、前記命令記憶手段から出力される命令コード中の一
    部と第二の命令コードをデコードして制御信号を生成す
    るデコード手段と、前記デコード手段と前記命令記憶手
    段との間に、前記命令記憶手段からのコードの一部を第
    二の命令コードに変換して前記デコード手段に出力する
    プログラマブルな複数の一次デコード用記憶手段とを備
    えた命令デコード装置。
  2. 【請求項2】 一次デコード用記憶手段として、命令操
    作コードを記憶する手段を備えた請求項1記載の命令デ
    コード装置。
  3. 【請求項3】 一次デコード用記憶手段として、オペラ
    ンド選択コードを記憶する手段を備えた請求項1記載の
    命令デコード装置。
  4. 【請求項4】 命令コードが記憶される命令記憶手段
    と、前記命令記憶手段から出力される命令コード中の一
    部と第二の命令コードをデコードして制御信号を生成す
    るデコード手段と、第二の命令コードを記憶して前記デ
    コード手段に出力する第二の命令記憶手段とを備えた命
    令デコード装置。
  5. 【請求項5】 第二の命令記憶手段として、命令操作コ
    ードの一部を記憶する手段を備えた請求項4記載の命令
    デコード装置。
  6. 【請求項6】 第二の命令記憶手段として、オペランド
    選択コードの一部を記憶する手段を備えた請求項4記載
    の命令デコード装置。
JP17803894A 1993-08-02 1994-07-29 命令デコード装置 Pending JPH07146791A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17803894A JPH07146791A (ja) 1993-08-02 1994-07-29 命令デコード装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP5-191100 1993-08-02
JP19110093 1993-08-02
JP17803894A JPH07146791A (ja) 1993-08-02 1994-07-29 命令デコード装置

Publications (1)

Publication Number Publication Date
JPH07146791A true JPH07146791A (ja) 1995-06-06

Family

ID=26498350

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17803894A Pending JPH07146791A (ja) 1993-08-02 1994-07-29 命令デコード装置

Country Status (1)

Country Link
JP (1) JPH07146791A (ja)

Similar Documents

Publication Publication Date Title
US5794067A (en) Digital signal processing device
US4891754A (en) Microinstruction sequencer for instructing arithmetic, logical and data move operations in a conditional manner
US5117488A (en) Microprogram controlled microprocessor having a selectively expandable instruction code length including independent description of operand addressing and a type of operation for an operand by single instruction in a common coding scheme
EP0159699A2 (en) A data processor executing microprograms according to a plurality of system architectures
CA2266259A1 (en) Variable length register device
US4674063A (en) Information processing apparatus having a sequence control function
US5077659A (en) Data processor employing the same microprograms for data having different bit lengths
US4336602A (en) Network for generating modified microcode addresses
JPH07146791A (ja) 命令デコード装置
US20040024992A1 (en) Decoding method for a multi-length-mode instruction set
JP3454393B2 (ja) データ処理装置
US5463747A (en) Microprogram data processor processing operand address calculation and instruction execution with common hardware
JPH0527970A (ja) 演算装置
JPS6033644A (ja) メモリバンク切換方法および装置
JPS586970B2 (ja) Romアドレスのシ−ケンス制御方式
JPS61249139A (ja) マイクロプログラム制御装置
JPH11163736A (ja) プロセッサ
JPS6288031A (ja) レジスタフアイル方式
JPH1185463A (ja) 演算ネットワーク装置
JP3392413B2 (ja) 2レベルマイクロ制御方式及び方法
JPH03288228A (ja) 情報処理装置
JPH09305398A (ja) 演算処理装置および命令変換装置
JP3088956B2 (ja) 演算装置
JPH03164849A (ja) マイクロプロセッサおよびマイクロプロセッサシステム
JPS61267873A (ja) デ−タ処理装置