図面 (/)

技術 拡張命令語縮約装置

出願人 アドヴァンストディジタルチップスインコーポレーティド
発明者 チョ,キュンヨンリン,ジョンユンリー,ギュンテクオウ,ヘオンチョルキム,ヒュンギュミン,ビュングォンリー,ヒュイ
出願日 2000年8月30日 (20年3ヶ月経過) 出願番号 2000-260447
公開日 2002年2月8日 (18年9ヶ月経過) 公開番号 2002-041284
状態 特許登録済
技術分野 先行制御 機械語命令の実行
主要キーワード ハイ論理値 実行器 被演算子 一般命令 臨時保存 CISC 拡張命令 演算コード
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2002年2月8日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (5)

課題

一般命令語のフェッチ及びデコード遂行すると同時に拡張命令語を処理することができ、これにより、中央処理装置の効率及びプログラムの効率を増大させる拡張命令語縮約装置を提供する。

解決手段

拡張命令語縮約装置は、多数の一般命令語及び拡張命令語から構成された命令語が保存された命令語保存部、命令語保存部から多数の命令語をプリフェッチして保存する臨時保存部、一般命令語の位置と連続した拡張命令語の位置とを示す位置信号を出力する命令語検索部、位置信号によって一般命令語が保存されたバッファーを選択して一般命令語を順次に出力する命令語選択部、一般命令語を実行するための一般命令語解析部、連続した拡張命令語の被演算子演算処理を遂行して拡張データを出力する拡張データ解析部、及び拡張データを受信してこれを保存する拡張データ保存部から構成される。

概要

背景

一般的に、中央処理装置(Micro-Processor)はメモリに保存された多数の命令語集合からなっているプログラム読み取りこれを命令語解析器によって解析し、実行器によって各命令語に該当する動作を実行する。

命令語は命令語の長さにより、即ち、一つの命令語のビット数の大きさが多様であれば可変長さ命令語とし、全ての命令語のビット数の大きさが同一であれば固定長さ命令語という。

従来の中央処理装置は、CISC(Complex InstructionSet Computer)とRISC(Reduced Instruction Set Computer)に分けられており、CISCは可変長さ命令語を用い、RISCは固定長さ命令語を用いる。

可変長さ命令語方式は、命令語によってその長さが多様で、多くの種類の命令語を有しているが、命令語の長さが可変であるので、命令語を解析する命令語解析器は複雑な構成を有し、実行速度が遅いという短所を有している。

他方、固定長さ命令語方式は、全ての命令語の長さが一定である固定長さ命令語を使用するもので、命令語解析器の構成は単純で、高速動作が可能であるが、命令語の長さが固定されるので、表現され得る被演算子の範囲が制限されるという問題点を有する。即ち、被演算子の長さはレジスタ(Register)の大きさや保存装置アドレスの範囲の大きさより小さいために、命令語の大きさより大きい定数値や保存装置のアドレスは一つの命令語で作成することができない。

従来の可変長さ命令語と固定長さ命令語方式における上記の問題点を解決するためのものが拡張命令語方式であって、全ての命令語の長さが一定である固定長さ命令語でありながら、拡張データ保存部を備えて全ての長さの命令語を表現することができる方式である。

図1は拡張命令語方式の動作図である。図1に示すように、図1は命令語の大きさより大きい定数値や保存装置のアドレスを表現するために2つの拡張命令語を使用したものであり、保存装置から読み取った命令語の演算コードOPを解析して、その演算コードOPが一般命令語であれば、当該演算コードに応じて実行器によって実行され、読み取った命令語の演算コードOPが拡張命令語であれば、命令語の第1被演算子OPER1を拡張データ保存部ERに保存する。この時、拡張命令語が、拡張データ保存部ERに保存された拡張データを用いる一般命令語の以後に初めて用いられる拡張命令語であれば、拡張データ保存部ERのうち、拡張命令語の第1被演算子OPER1より上位ビットは拡張命令語の第1被演算子OPER1の最上位ビットMSBの値で満たし、拡張命令語の第1被演算子OPER1と同一のビットの位置は拡張命令語の第1被演算子OPER1で満たす。

その後の命令語が拡張命令語であれば、拡張データ保存部ERに保存された第1被演算子OPER1を演算処理して生成した拡張データを第2被演算子OPER2のビット数だけ上位ビットにシフト(Shift)させ、第2被演算子OPER2を拡張データ保存部ERの空いている下位ビットに置く。従って、拡張データ保存部ERは最下位ビットから上位ビットに第2被演算子OPER2と第1被演算子OPER1とが位置する。即ち、2つの拡張命令語によって拡張データ保存部ERには第1被演算子OPER1と第2被演算子OPER2とが結合した値が保存される。

従って、上記の方法によって固定長さ命令語方式において拡張命令語を用いることによって、命令語の大きさより大きい定数値や保存装置のアドレスを作ることができる。

概要

一般命令語のフェッチ及びデコード遂行すると同時に拡張命令語を処理することができ、これにより、中央処理装置の効率及びプログラムの効率を増大させる拡張命令語縮約装置を提供する。

拡張命令語縮約装置は、多数の一般命令語及び拡張命令語から構成された命令語が保存された命令語保存部、命令語保存部から多数の命令語をプリフェッチして保存する臨時保存部、一般命令語の位置と連続した拡張命令語の位置とを示す位置信号を出力する命令語検索部、位置信号によって一般命令語が保存されたバッファーを選択して一般命令語を順次に出力する命令語選択部、一般命令語を実行するための一般命令語解析部、連続した拡張命令語の被演算子の演算処理を遂行して拡張データを出力する拡張データ解析部、及び拡張データを受信してこれを保存する拡張データ保存部から構成される。

目的

本発明の目的は、拡張命令語によって拡張データ保存部に保存された一般命令語の大きさより大きい定数値や保存装置のアドレスであるデータを用いるために、一般命令語を読み取り、実行する間後続する拡張命令語を処理することによって、後続する拡張命令語の後の一般命令語を直ちに処理することができ、これにより、央処理装置の効率及びプログラムの効率を極大化させることができる拡張命令語縮約装置を提供することにある。

効果

実績

技術文献被引用数
0件
牽制数
1件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

命令語の大きさより大きい定数値保存装置アドレスであるデータを用いるための拡張命令語を遂行する中央処理装置において、多数の一般命令語及び拡張命令語から構成された命令語が保存された命令語保存手段と、上記命令語保存手段から多数の命令語をプリフェッチして保存する多数個バッファーから構成された臨時保存手段と、上記命令語保存手段から上記臨時保存手段へプリフェッチされる多数の命令語を受信し、受信された命令語をデコードして上記臨時保存手段に保存された命令語のうち、一般命令語の位置と1以上の連続した拡張命令語の位置とを示す位置信号を出力する命令語検索手段と、上記命令語検索手段の出力である位置信号を受信して位置信号によって上記臨時保存手段の各バッファーに保存された命令語のうち、一般命令語が保存されたバッファーを選択して一般命令語を順次に出力する命令語選択手段と、上記命令語選択手段から出力される一般命令語を受信して一般命令語を実行するための多数の制御信号を出力する一般命令語解析手段と、上記命令語検索手段の出力である位置信号を受信して上記臨時保存手段の各バッファーに保存された命令語のうち、1以上の連続した拡張命令語の被演算子を受信し、受信された被演算子の演算処理を遂行して拡張データを出力する拡張データ解析手段と、上記拡張データ解析手段の出力である拡張データを受信してこれを保存する拡張データ保存手段と、を備えたことを特徴とする拡張命令語縮約装置。

請求項2

上記命令語検索手段は、前記命令語保存手段から上記臨時保存手段へプリフェッチされる命令語を受信し、上記臨時保存手段へプリフェッチされる各命令語が一般命令語であるか、拡張命令語であるかを判断してフラグ信号を出力する拡張命令検索手段と、上記拡張命令検索手段の出力であるフラグ信号を受信し、上記臨時保存手段の多数のバッファーに保存されたそれぞれの命令語に対して、拡張命令語であるか、一般命令語であるかを示す多数のフラグビットから構成されたフラグレジスタと、上記フラグレジスタの多数のフラグビットを判断して上記臨時保存手段の多数のバッファーのうち、一般命令語が保存されたバッファーの位置、及び少なくとも1以上の連続した拡張命令語が保存されたバッファーの位置を示す位置信号を出力する拡張デコーダーと、を備えたことを特徴とする請求項1に記載の拡張命令語縮約装置。

請求項3

上記拡張データ解析手段は、上記臨時保存手段の多数のバッファーに保存された1以上の連続した拡張命令語を出現順序の順に検査し、それぞれの拡張命令語に対して、拡張命令語が拡張データを用いる一般命令語の以後の一番目の拡張命令語であって、以前の拡張命令語によって連続する拡張命令語であれば、拡張データの下位ビットには拡張命令語の被演算子を満たし、拡張命令語の被演算子のビット数より上位ビットの拡張データには拡張命令語の被演算子の最上位ビットと同一の値で満たして、拡張命令語が以前の拡張命令語によって連続する拡張命令語であれば、以前に生成された拡張データを拡張命令語の被演算子のビット数だけ上位のビットに移動させ、空いている下位ビットに拡張命令語の被演算子を満たすことを特徴とする請求項1に記載の拡張命令語縮約装置。

請求項4

上記拡張データ解析手段は、上記臨時保存手段の多数のバッファーに保存された1以上の連続した拡張命令語を出現順序の順に検査し、それぞれの拡張命令語に対して、拡張データを拡張命令語の被演算子のビット数だけ上位のビットに移動させ、空いている下位ビットに拡張命令語の被演算子を満たすことを特徴とする請求項1に記載の拡張命令語縮約装置。

請求項5

上記拡張データ解析手段の出力である拡張データは、1以上の連続する拡張命令語の被演算子を合算したデータであることを特徴とする請求項1に記載の拡張命令語縮約装置。

請求項6

上記拡張データ解析手段の出力である拡張データは、1以上の連続する拡張命令語の被演算子を右側へシフトさせたデータであることを特徴とする請求項1に記載の拡張命令語縮約装置。

請求項7

上記拡張データ解析手段は、上記命令語検索手段の出力である位置信号を受信して上記臨時保存手段から上記命令語選択手段へ一般命令語が出力される時に、上記臨時保存手段の各バッファーに保存された命令語のうち、1以上の連続した拡張命令語が保存されたバッファーから、当該バッファーに保存された拡張命令語の被演算子を受信して被演算子の演算処理を遂行することを特徴とする請求項1に記載の拡張命令語縮約装置。

請求項8

上記命令語選択手段は、上記臨時保存手段の各バッファーに保存された命令語のうち、一般命令語がなければ何らの演算も遂行しない命令語を上記一般命令語解析手段へ出力することを特徴とする請求項1に記載の拡張命令語縮約装置。

請求項9

上記臨時保存手段は、多数のバッファーに保存された全ての命令語が命令語選択手段及び拡張データ解析手段によって処理されると、同時に上記命令語保存手段から新たな命令語をプリフェッチして更新することを特徴とする請求項1に記載の拡張命令語縮約装置。

請求項10

上記拡張データ解析手段は、上記臨時保存手段のバッファーに一般命令語があれば、当該一般命令語が上記命令語選択手段から上記一般命令語解析手段へ出力される時に、拡張データを上記拡張データ保存手段へ出力し、上記臨時保存手段のバッファーに一般命令語がなければ、上記命令語選択手段から何らの演算も遂行しない命令語が上記一般命令語解析手段へ出力される時に、拡張データを上記拡張データ保存手段へ出力することを特徴とする請求項1に記載の拡張命令語縮約装置。

技術分野

0001

本発明は、拡張命令縮約装置(Extended instructionfolding system)に関し、特に固定長命令語を用いる中央処理装置において一般命令語の遂行時に拡張命令語を処理する拡張命令語縮約装置に関する。

背景技術

0002

一般的に、中央処理装置(Micro-Processor)はメモリに保存された多数の命令語の集合からなっているプログラム読み取りこれを命令語解析器によって解析し、実行器によって各命令語に該当する動作を実行する。

0003

命令語は命令語の長さにより、即ち、一つの命令語のビット数の大きさが多様であれば可変長さ命令語とし、全ての命令語のビット数の大きさが同一であれば固定長さ命令語という。

0004

従来の中央処理装置は、CISC(Complex InstructionSet Computer)とRISC(Reduced Instruction Set Computer)に分けられており、CISCは可変長さ命令語を用い、RISCは固定長さ命令語を用いる。

0005

可変長さ命令語方式は、命令語によってその長さが多様で、多くの種類の命令語を有しているが、命令語の長さが可変であるので、命令語を解析する命令語解析器は複雑な構成を有し、実行速度が遅いという短所を有している。

0006

他方、固定長さ命令語方式は、全ての命令語の長さが一定である固定長さ命令語を使用するもので、命令語解析器の構成は単純で、高速動作が可能であるが、命令語の長さが固定されるので、表現され得る被演算子の範囲が制限されるという問題点を有する。即ち、被演算子の長さはレジスタ(Register)の大きさや保存装置アドレスの範囲の大きさより小さいために、命令語の大きさより大きい定数値や保存装置のアドレスは一つの命令語で作成することができない。

0007

従来の可変長さ命令語と固定長さ命令語方式における上記の問題点を解決するためのものが拡張命令語方式であって、全ての命令語の長さが一定である固定長さ命令語でありながら、拡張データ保存部を備えて全ての長さの命令語を表現することができる方式である。

0008

図1は拡張命令語方式の動作図である。図1に示すように、図1は命令語の大きさより大きい定数値や保存装置のアドレスを表現するために2つの拡張命令語を使用したものであり、保存装置から読み取った命令語の演算コードOPを解析して、その演算コードOPが一般命令語であれば、当該演算コードに応じて実行器によって実行され、読み取った命令語の演算コードOPが拡張命令語であれば、命令語の第1被演算子OPER1を拡張データ保存部ERに保存する。この時、拡張命令語が、拡張データ保存部ERに保存された拡張データを用いる一般命令語の以後に初めて用いられる拡張命令語であれば、拡張データ保存部ERのうち、拡張命令語の第1被演算子OPER1より上位ビットは拡張命令語の第1被演算子OPER1の最上位ビットMSBの値で満たし、拡張命令語の第1被演算子OPER1と同一のビットの位置は拡張命令語の第1被演算子OPER1で満たす。

0009

その後の命令語が拡張命令語であれば、拡張データ保存部ERに保存された第1被演算子OPER1を演算処理して生成した拡張データを第2被演算子OPER2のビット数だけ上位ビットにシフト(Shift)させ、第2被演算子OPER2を拡張データ保存部ERの空いている下位ビットに置く。従って、拡張データ保存部ERは最下位ビットから上位ビットに第2被演算子OPER2と第1被演算子OPER1とが位置する。即ち、2つの拡張命令語によって拡張データ保存部ERには第1被演算子OPER1と第2被演算子OPER2とが結合した値が保存される。

0010

従って、上記の方法によって固定長さ命令語方式において拡張命令語を用いることによって、命令語の大きさより大きい定数値や保存装置のアドレスを作ることができる。

発明が解決しようとする課題

0011

従来の拡張命令語を用いる固定長さ命令語方式は拡張命令語を一般命令語と同様に保存装置から読み取り、命令語解析器によって拡張命令語を解析し、実行器によって拡張命令語の動作を実行しなければならないので、中央処理装置の効率及びプログラムの効率を低下させる問題点がある。

0012

本発明の目的は、拡張命令語によって拡張データ保存部に保存された一般命令語の大きさより大きい定数値や保存装置のアドレスであるデータを用いるために、一般命令語を読み取り、実行する間後続する拡張命令語を処理することによって、後続する拡張命令語の後の一般命令語を直ちに処理することができ、これにより、央処理装置の効率及びプログラムの効率を極大化させることができる拡張命令語縮約装置を提供することにある。

0013

上記の目的を達成するために、本発明の拡張命令語縮約装置は、多数の一般命令語及び拡張命令語から構成された命令語が保存された命令語保存部;命令語保存部から多数の命令語をプリフェッチして保存する多数個バッファーから構成された臨時保存部;命令語保存部から臨時保存部へプリフェッチされる多数の命令語を受信し、受信された命令語をデコードして臨時保存部に保存された命令語のうち、一般命令語の位置と1以上の連続した拡張命令語の位置とを示す位置信号を出力する命令語検索部;命令語検索部の出力である位置信号を受信して位置信号によって臨時保存部の各バッファーに保存された命令語のうち、一般命令語が保存されたバッファーを選択して一般命令語を順次に出力する命令語選択部;命令語選択部から出力される一般命令語を受信して一般命令語を実行するための多数の制御信号を出力する一般命令語解析部;命令語検索部の出力である位置信号を受信して臨時保存部の各バッファーに保存された命令語のうち、1以上の連続した拡張命令語の被演算子を受信し、受信された被演算子の演算処理を遂行して拡張データを出力する拡張データ解析部;及び拡張データ解析部の出力である拡張データを受信してこれを保存する拡張データ保存部を備えたことを特徴とする。

0015

命令語検索部は、命令語保存部から臨時保存部へプリフェッチされる命令語を受信して臨時保存部へプリフェッチされる各命令語が一般命令語であるか、拡張命令語であるかを判断して、拡張命令語であれば活性化されたフラグ信号を出力する拡張命令検索部;拡張命令検索部の出力であるフラグ信号を受信して臨時保存部の多数のバッファーに保存されたそれぞれの命令語に対して拡張命令語であるか、一般命令語であるかを示す多数のフラグビットから構成されたフラグレジスタ;及びフラグレジスタの多数のフラグビットを受信して各フラグビットの活性化状態を判断して、臨時保存部の多数のバッファーのうち、一般命令語が保存されたバッファーの位置、及び1以上の連続した拡張命令語が保存されたバッファーの位置を示す位置信号を出力する拡張デコーダーを備えたことを特徴とする。

0016

以下、添付した図面を参照して本発明の拡張命令語縮約装置を詳細に説明する。

発明を実施するための最良の形態

0017

図2は本発明の拡張命令語縮約装置を示したブロック図である。図2の本発明の拡張命令語縮約装置は、多数の一般命令語及び拡張命令語から構成された命令語が保存された命令語保存部100、命令語保存部100から多数の命令語をプリフェッチ(Pre-Fetch)して保存する多数個のバッファーBU1〜BUnから構成された臨時保存部200、命令語保存部100から臨時保存部200へプリフェッチされる多数の命令語を受信し、受信された命令語をデコード(decode)して臨時保存部200に保存された命令語のうち、一般命令語の位置と1以上の連続した拡張命令語の位置とを示す位置信号POSを出力する命令語検索部300、命令語検索部300の出力である位置信号POSを受信して位置信号POSによって臨時保存部200の各バッファーに保存された命令語のうち、一般命令語が存在すれば当該一般命令語が保存されたバッファーを選択して一般命令語を順次に出力する命令語選択部400、命令語選択部400から出力される一般命令語を受信して一般命令語を実行するための多数の制御信号を出力する一般命令語解析部700、命令語検索部300の出力である位置信号POSを受信して臨時保存部200の各バッファーBU1〜BUnに保存された命令語のうち、1以上の連続した拡張命令語が存在すれば臨時保存部200の各バッファーに保存された1以上の連続した拡張命令語の被演算子OPER1〜OPERnを受信し、受信された被演算子OPER1〜OPERnの演算処理を遂行して拡張データEDを出力する拡張データ解析部500、及び拡張データ解析部500の出力である拡張データEDを受信してこれを保存する拡張データ保存部600から構成される。

0018

命令語検索部300は、命令語保存部100から臨時保存部200へプリフェッチされる命令語を検索して臨時保存部200へプリフェッチされる各命令語が一般命令語であるか、拡張命令語であるかを判断して、拡張命令語であれば活性化されたフラグ信号FLAGを出力する拡張命令検索部310、拡張命令検索部310の出力であるフラグ信号FLAGを受信して多数のフラグビットFB1〜FBnにフラグ信号FLAGを保存し、臨時保存部200の多数のバッファーBU1〜BUnに保存されたそれぞれの命令語に対して拡張命令語であるか、一般命令語であるかを示すフラグレジスタ320、及びフラグレジスタ320の多数のフラグビットFB1〜FBnの出力を受信して各フラグビットの活性化状態を判断し、多数のバッファーBU1〜BUnのうち、一般命令語が保存されたバッファーの位置、及び1以上の連続した拡張命令語が保存されたバッファーの位置を示す位置信号POSを出力する拡張デコーダー330から構成される。

0019

臨時保存部200は、多数のバッファーBU1〜BUnに保存された全ての命令語が命令語選択部400及び拡張データ解析部500によって処理されると、同時に新たな命令語を命令語保存部100にプリフェッチして更新する。

0020

拡張命令語の遂行に従う拡張データEDを得るために、拡張データ解析部500は1以上の連続する拡張命令語の被演算子OPER1〜OPERnを演算処理する。

0021

拡張データ解析部500は、臨時保存部200の多数のバッファーBU1〜BUnに保存された1以上の連続した拡張命令語を位置順BU1、BU2、…、BUnに検査し、それぞれの拡張命令語に対して、拡張命令語が拡張データEDを用いる一般命令語の以後の一番目の拡張命令語で、以前の拡張命令語と連続しない拡張命令語であれば、拡張データEDの下位ビットには拡張命令語の被演算子を満たし、拡張命令語の被演算子のビット数より上位ビットの拡張データEDには拡張命令語の被演算子の最上位ビットと同一の値で満たす。若し、拡張命令語が以前の拡張命令語と連続する拡張命令語であれば、以前に生成された拡張データEDを拡張命令語の被演算子のビット数だけ上位のビットに移動させ、空いている下位ビットに拡張命令語の被演算子を満たす。

0022

臨時保存部200のバッファーに1以上の連続した拡張命令語によって生成された拡張データEDを用いる一般命令語があれば、当該一般命令語が命令語選択部400によって一般命令語解析部700へ出力される時に、1以上の連続した拡張命令語によって生成された拡張データEDを拡張データ保存部600へ出力する。臨時保存部200のバッファーに1以上の連続した拡張命令語によって生成された拡張データEDを用いる一般命令語がなければ、最後の一般命令語が命令語選択部400によって一般命令語解析部700へ出力される時に、拡張データEDを拡張データ保存部600へ出力する。臨時保存部200のバッファーに一般命令語は存在せず、全て拡張命令語だけがあれば命令語選択部400によって何らの演算も遂行しない命令語が一般命令語解析部700へ出力される時に、拡張データEDを拡張データ保存部600へ出力する。

0023

拡張データ解析部500の出力である拡張データEDは1以上の連続する拡張命令語の被演算子OPER1〜OPERnを合算したデータ、または1以上の連続する拡張命令語の被演算子OPER1〜OPERnを右側へシフトさせたデータであってもよい。

0024

上記の構成による本発明の拡張命令語縮約装置の動作は以下の通りである。図3は、図2の本発明の拡張命令語縮約装置の動作タイミング図である。例えば、命令語保存部100には、順次に、第1一般命令語、第1拡張命令語、第2拡張命令語、第3拡張命令語、第2一般命令語及び第3一般命令語を遂行するための命令語が保存されており、臨時保存部200は第1バッファーBU1と第2バッファーBU2とから構成され、命令語保存部100に保存された2つの命令語を同時に第1バッファーBU1と第2バッファーBU2へプリフェッチすると仮定すると、図3による図2動作タイミングは以下の通りである。

0025

先ず、命令語保存部100に保存された2つの命令語である第1一般命令語及び第1拡張命令語をt1時間にプリフェッチ(PF)して第1一般命令語は臨時保存部200の第1バッファーBU1に保存され、同時に、第1拡張命令語は臨時保存部200の第2バッファーBU2に保存される。拡張命令検索部310は、t1時間に命令語保存部100から臨時保存部200へ第1一般命令語及び第1拡張命令語がプリフェッチ(PF)される時に、命令語保存部100の出力である命令語である第1一般命令語及び第1拡張命令語を受信して臨時保存部200の第1バッファーBU1及び第2バッファーBU2に保存されるそれぞれの命令語が一般命令語であるか、拡張命令語であるかを示すフラグ信号FLAGを出力する。この時、命令語保存部100が出力する命令語は第1一般命令語と第1拡張命令語であるので、拡張命令検索部310は非活性化されたフラグ信号FLAGであるロー論理値と活性化されたフラグ信号FLAGであるハイ論理値を出力する。これらのフラグ信号FLAGはフラグレジスタ320に保存されて現在バッファーBU1、BU2に保存されている各命令語の種類を示す。上記の例において、第1一般命令語は第1バッファーBU1に保存され、第1拡張命令語は第2バッファーBU2に保存されるので、フラグレジスタ320の第1フラグビットFB1にはロー論理値である‘0’が保存され、第2フラグビットFB2にはハイ論理値である‘1’が保存される。拡張デコーダー330はフラグレジスタ320の第1フラグビットFB1と第2フラグビットFB2の値を参照して、第1一般命令語は第1バッファーBU1に位置し、第1拡張命令語は第2バッファーBU2に位置していることを示す位置信号POSを出力する。

0026

t2時間に拡張デコーダー330の出力である位置信号POSによって命令語選択部400は第1バッファーBU1に保存された第1一般命令語を一般命令語解析部700へ出力する。即ち、t2時間に一般命令語解析部700によって第1一般命令語のフェッチ及びデコード(IF)を遂行する。第1一般命令語のフェッチ及びデコード(IF)を遂行すると同時に、位置信号POSによって第2バッファーBU2に保存された第1拡張命令語の被演算子OPERを拡張データ解析部500へ出力する。即ち、拡張データ解析部500によって第1拡張命令語をフェッチ(IF)する。拡張データ解析部500は第1拡張命令語の被演算子OPERを演算処理して拡張データEDを出力する。拡張データ解析部500は第1拡張命令語が一般命令語の後にくる一番目の拡張命令語であるので、拡張データEDの下位ビットには第1拡張命令語の被演算子OPERを入力し、入力された第1拡張命令語の被演算子OPERのビット数より上位ビットは、入力された第1拡張命令語の被演算子OPERの最上位ビットと同一の値を入力して拡張データEDを生成する。拡張データ保存部600は拡張データ解析部500の出力である拡張データEDを保存し、拡張データEDを用いる一般命令語によって拡張データEDが要求されると、保存していた拡張データEDを出力する。若し、第1拡張命令語が臨時保存部200のバッファーBU1、BU2に保存された命令語の以前に受信された拡張命令語と連続する拡張命令語、つまり、以前に受信された拡張命令語と現在受信された第1拡張命令語とを共に演算処理して拡張データEDを更新しなければならない場合には、以前に生成された拡張データEDを第1拡張命令語の被演算子のビット数だけ上位のビットに移動させ、空いている下位ビットに第1拡張命令語の被演算子を満たす。

0027

t3時間に命令語解析部700から出力される第1一般命令語による多数の制御信号によって実行器は当該第1一般命令語を実行(EX)する。t4時間に第1一般命令語の実行による結果をメモリまたは中央処理装置の特定のレジスタに保存(ST)する。

0028

上記のような方法によって、命令語保存部100に保存された第2拡張命令語及び第3拡張命令語は第1一般命令語及び第1拡張命令語のフェッチ及びデコード(IF)を遂行するt2時間に、各々臨時保存部200の第1バッファーBU1及び第2バッファーBU2へプリフェッチ(PF)され、同時に、拡張命令検索部310はプリフェッチ(PF)される命令語を検査して各命令語が拡張命令語であるか、一般命令語であるかを示すフラグ信号FLAGを出力する。フラグレジスタ320は拡張命令検索部310の出力であるフラグ信号FLAGを保存し、拡張デコーダー330へ保存しているフラグ信号FLAGを出力する。拡張デコーダー330はフラグ信号FLAGによって現在臨時保存部200の各バッファーBU1、BU2には拡張命令語だけがあることを示す位置信号POSを出力する。t3時間に命令語選択部400は位置信号POSによって臨時保存部200に一般命令語がないことが分かり、一般命令語解析部700に何らの演算も遂行しない命令語、つまり、NOP(No Operation)命令を出力する。拡張データ解析部500は位置信号POSによって臨時保存部200に保存された第2拡張命令語及び第3拡張命令語の被演算子OPERを受信してこれらを演算処理し、拡張データEDを生成する。第2拡張命令語及び第3拡張命令語は以前に演算処理された第1拡張命令語の連続した拡張命令語であるので、第1拡張命令語によって生成された拡張データEDを上位ビットに移動させ、拡張データEDの空いている下位ビットの席に第2拡張命令語及び第3拡張命令語の被演算子OPERを順序の通りに入力する。この時、移動させるビット数は第2拡張命令語及び第3拡張命令語の被演算子OPERのビット数の合計と同一である。拡張データ保存部600には拡張データ解析部500の出力である第1拡張命令語、第2拡張命令語及び第3拡張命令語によって生成される拡張データEDが保存される。従って、t3時間に第2拡張命令語及び第3拡張命令語のフェッチ及びデコード(IF)が遂行される。

0029

上記と同様に、命令語保存部100に保存された第2一般命令語及び第3一般命令語はt3時間に、各々臨時保存部200の第1バッファーBU1と第2バッファーBU2へプリフェッチ(PF)され、拡張命令検索部310はプリフェッチ(Pre-Fetch)されている命令語が全て一般命令語であることを示すフラグ信号FLAGを出力し、フラグレジスタ320は拡張命令検索部310の出力であるフラグ信号FLAGを保存し、拡張デコーダー330へ保存されたフラグ信号FLAGを出力する。拡張デコーダー330は現在臨時保存部200に保存された命令語が全て一般命令語であり、拡張命令語が保存されていないことを示す位置信号POSを出力する。命令語選択部400は拡張デコーダー330の位置信号POSを受信して臨時保存部200に保存された命令語が全て一般命令語であることが分かり、第1バッファーBU1及び第2バッファーBU2に保存された第2一般命令語と第3一般命令語を順次に命令語解析部700へ出力する。拡張命令語解析部500は位置信号POSによって臨時保存部200に保存された命令語のうち、拡張命令語がないことが分かり、拡張データEDを更新しない。その以後の実行(EX)及び保存(ST)は同様である。若し、第2一般命令語または第3一般命令語が拡張データEDを用いる命令である場合、既に拡張データ保存部600に保存された拡張データEDを用いて実行器はこれに該当する一般命令語を実行する。

0030

従って、図3による動作タイミング図に示すように、本発明の拡張命令語縮約装置は4つのパイプライン(Pipe Line)クロックが必要であるので、従来と比べて2個のパイプラインクロックが節減されるので、中央処理装置の効率及びプログラムの効率を増大させることができる。

0031

図4は、図2の本発明の拡張命令語縮約装置の他の動作タイミング図である。図4に示すように、命令語保存部100には、順次に、第1一般命令語、第1拡張命令語、第2拡張命令語、第2一般命令語が保存されており、臨時保存部200は4つのバッファーBU1〜BU4から構成され、フラグレジスタ320は4ビットのフラグビットFB1〜FB4から構成されている場合、図2の本発明の拡張命令語縮約装置の動作は以下の通りである。

0032

臨時保存部200の4つのバッファーBU1〜BU4へt1時間に命令語保存部100に保存された第1一般命令語、第1拡張命令語、第2拡張命令語及び第2一般命令語はプリフェッチ(PF)される。同時に、拡張命令検索部310は命令語保存部100から出力される命令語を検索して命令語のうち、どの命令語が一般命令語であるか、拡張命令語であるかを判断して、拡張命令語であれば、活性化された信号FLAGを出力し、一般命令語であれば、非活性化されたフラグ信号FLAGを出力する。フラグレジスタ320は拡張命令検索部310の出力であるフラグ信号FLAGを多数のフラグビットFB1〜FB4に保存する。フラグレジスタ320は、上記の実施例の場合、最下位フラグビットFB1から最上位フラグビットFB4は‘0110’のデータを有し、拡張デコーダー330は、フラグレジスタ320の各フラグビットFB1〜FB4の活性化状態を判断して臨時保存部200の各バッファーBU1〜BU4に保存された命令語が一般命令語であるか、拡張命令語であるかを示す位置信号POSを出力する。従って、拡張デコーダー330によってそれぞれの命令語である拡張命令語または一般命令語が臨時保存部200の何番目に位置したバッファーに保存されているかが分かる。

0033

命令語選択部400は、t2時間に拡張デコーダー330の出力である位置信号POSによって臨時保存部200の各バッファーBU1〜BU4に保存された命令語のうち、一番目の一般命令語が保存された第1バッファーBU1を選択して第1バッファーBU1に保存された第1一般命令語を一般命令語解析部700へ出力し、一般命令語解析部700は、第1一般命令語を解析して多数の制御信号を出力する。即ち、t2時間に命令語選択部400及び一般命令語解析部700によって臨時保存部200に保存された第1一般命令語のフェッチ及びデコード(IF)を遂行する。t3時間に多数の制御信号によって実行器は当該第1一般命令語を実行(EX)し、t4時間に第1一般命令語の実行による結果をメモリまたは中央処理装置の特定のレジスタに保存(ST)する。

0034

第1一般命令語のフェッチ及びデコード(IF)を遂行するt2時間に、拡張データ解析部500は位置信号POSによって第2バッファーBU2と第3バッファーBU3に保存された第1拡張命令語及び第2拡張命令語のそれぞれの被演算子OPER2、OPER3を受信し、受信された被演算子OPER2、OPER3を演算処理して拡張データEDを出力する。被演算子OPER2、OPER3を演算処理して拡張データEDを生成する時に、若し、第1拡張命令語が第1一般命令語の以後に初めて遂行されるべき拡張命令語の被演算子OPER2である場合、拡張データEDの最下位ビットから第2拡張命令語の被演算子OPER3及び第1拡張命令語の被演算子OPER2を順序の通りに満たし、第1拡張命令語の被演算子OPER2の最上位ビットより上位の拡張データEDのビットは第1拡張命令語の被演算子OPER2の最上位ビットと同一のビットで満たして拡張データEDを生成する。若し、拡張命令語が以前の拡張命令語と連続して用いられる場合、前の命令語で生成した拡張データEDを第1、第2拡張命令語の被演算子OPER2、OPER3のビット数だけ上位へ移動させ、空いている下位ビットに第1、第2拡張命令語の被演算子OPER2、OPER3で順次に満たす。

0035

拡張データ保存部600は拡張データ解析部500の拡張データEDを受信してこれを保存する。

0036

上記のような方法によって、命令語選択部400は、位置信号POSによって臨時保存部200の第4バッファーBU4に保存された第2一般命令語を選択し、一般命令解析部700は、t3時間に第2一般命令語のフェッチ及びデコード(IF)を遂行し、一般命令解析部700から出力される多数の制御信号によってt4時間に実行器によって第2一般命令語を実行(EX)し、t5時間に第2一般命令語の実行による結果をメモリまたは中央処理装置の特定のレジスタに保存(ST)する。

0037

若し、第2一般命令語が拡張データEDを用いる命令語であれば、既に拡張データ保存部600に保存された拡張データEDを用いてt4時間に実行器は第2一般命令語を実行する。

0038

本発明の拡張命令語縮約装置は、一般命令語を読み取り、実行する間後続する拡張命令語を処理することによって、後続する拡張命令語の後の一般命令語を直ちに処理することができ、拡張命令語方式の中央処理装置の性能を増大させることができる。

発明の効果

0039

図1拡張命令語の動作図。
図2本発明の拡張命令語縮約装置を示すブロック図。
図3図2の本発明の拡張命令語縮約装置の動作タイミング図。
図4図2の本発明の拡張命令語縮約装置の他の動作タイミング図。

図面の簡単な説明

0040

100…命令語保存部
200…臨時保存部
300…命令語検索部
310…拡張命令検索部
320…フラグレジスタ
330…拡張デコーダ
400…命令語選択部
500…拡張データ解析部
600…拡張データ保存部
700…一般命令語解析部
POS…位置信号
BU1〜BUn…バッファー
ED…拡張データ
FLAG…フラグ信号
FB1〜FBn…フラグビット
OPER1〜OPERn…被演算子
PF…プリフェッチ
IF…デコード
EX…実行

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

該当するデータがありません

関連する公募課題

該当するデータがありません

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

該当するデータがありません

この 技術と関連する公募課題

該当するデータがありません

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ