JPH0553808A - 演算処理装置 - Google Patents

演算処理装置

Info

Publication number
JPH0553808A
JPH0553808A JP3242758A JP24275891A JPH0553808A JP H0553808 A JPH0553808 A JP H0553808A JP 3242758 A JP3242758 A JP 3242758A JP 24275891 A JP24275891 A JP 24275891A JP H0553808 A JPH0553808 A JP H0553808A
Authority
JP
Japan
Prior art keywords
instruction
descriptors
descriptor
arithmetic processing
alu
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
JP3242758A
Other languages
English (en)
Inventor
Eiji Yokoi
英二 横井
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP3242758A priority Critical patent/JPH0553808A/ja
Publication of JPH0553808A publication Critical patent/JPH0553808A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【構成】 この装置は、入力した命令の全命令コードC
1〜Cnの格納に必要なディスクリプタ数nを指定する
ディスクリプタ数レジスタ11を備えている。そして、
ディスクリプタ数レジスタ11の指示するディスクリプ
タ数を超える余剰のALUがある場合、これを無効に
し、ディスクリプタ数が不足する場合には、全命令コー
ドを複数に分割して、ALUを複数回使用して処理す
る。 【効果】 任意の命令コード数の命令が入力しても、そ
の処理を誤りなく実行することができる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は複数のALU(論理演算
ユニット)を用いて高速演算処理を行う演算処理装置に
関する。
【0002】
【従来の技術】一般のマイクロプロセッサにはALUが
1個設けられ、このALUは、入力する命令を解読し、
指定されたレジスタに格納されたデータに、その命令に
応じた演算処理を施して出力する、といった動作を行
う。しかしながら、例えばVLIW(Very long instru
ction word)アーキテクチャのデータ処理を行う演算処
理装置においては、複数のALUを設け複数の命令コー
ドから成る命令を各ALUで一挙に解読し、処理するも
のがある。図2に、このような従来の演算処理装置ブロ
ック図を示す。図2において、この装置にはそれぞれn
個の命令コードから構成される命令M1,M2…Msが
順に入力し、解読され処理される。これらの命令は、主
記憶装置等に格納される。その主記憶装置は、命令バス
10に接続されている。また、この命令バス10にはn
個のディスクリプタD1,D2…Dnが接続されてい
る。そしてこれらのディスクリプタD1,D2…Dn
は、それぞれALU1,ALU2…ALUnに接続され
ている。以上の構成の演算処理装置は、例えば命令M1
を構成する命令コードC1〜Cnを、それぞれ1つずつ
ディスクリプタD1〜Dnに格納し、これに接続された
対応するALU1〜ALUnによって命令コードを解読
し演算処理を実行する。このような構成によれば、同一
時間で複雑な演算処理を高速に行うことができる。
【0003】
【発明が解決しようとする課題】ところで、この種の演
算処理装置は、上記ディスクリプタ数を増加させ、一度
に解読できる命令コードを増加すればそれだけ性能が向
上する。従って、命令コードの互換性をを保ちながら次
第にディスクリプタ数を増加させ、その性能向上を図っ
てきた。従って、実際にはディスクリプタ数が様々な演
算処理装置が実用化されている。しかしながら、上記の
ような構成の演算処理装置では、ディスクリプタ数の少
ない演算処理装置で使用されている命令を、そのままデ
ィスクリプタ数の多い演算処理装置に入力しても、命令
長の不整合により適切な演算処理を実行することができ
ない。そこで予めディスクリプタ数を合わせるために、
命令コードに新たな命令コードをつなぎ合わせる等の前
処理が必要であった。また逆に、ディスクリプタ数の多
い演算処理装置で使用されていた命令が、ディスクリプ
タ数の少ない演算処理装置に入力した場合には、処理が
不可能で、実用上の互換性がないという問題があった。
本発明は以上の点に着目してなされたもので、ディスク
リプタ数の多い演算処理装置もディスクリプタ数の少な
い演算処理装置も、入力する命令の構成にかかわらず柔
軟に対処し得る演算処理装置を提供することを目的とす
るものである。
【0004】
【課題を解決するための手段】本発明の第1発明は、複
数のALUと、前記ALUの処理すべき命令を格納する
複数のディスクリプタと、入力する前記命令が複数の命
令コードから構成され、一の命令コードを一のディスク
リプタに格納するものとしたとき、全命令コードの格納
に必要なディスクリプタ数を指定するディスクリプタレ
ジスタと、前記命令コードを処理するALUを特定する
とともに、前記ディスクリプタレジスタの指示するディ
スクリプタ数を越える余剰のALUの出力を無効にする
ことを特徴とする演算処理装置である。本発明の第2発
明は、複数のALUと、前記ALUの処理すべき命令を
格納する複数のディスクリプタと、入力する前記命令が
複数の命令コードから構成され、一の命令コードを一の
ディスクリプタに格納するものとしたとき、全命令コー
ドの格納に必要なディスクリプタ数を指定するディスク
リプタレジスタと、前記全命令コードを複数に分割し
て、前記ディスクリプタレジスタの指示するディスクリ
プタ数の命令コードを、前記ALUを複数回使用して処
理することを特徴とする演算処理装置である。
【0005】
【作用】この装置は、入力した命令の全命令コードの格
納に必要なディスクリプタ数を指定するディスクリプタ
数レジスタ11を備えている。そしてディスクリプタ数
レジスタ11の指示するディスクリプタ数を超える余剰
のALUがある場合、これを無効にし、ディスクリプタ
数が不足する場合には、全命令コードを複数に分割し
て、ALUを複数回使用して処理する。これにより、任
意の命令コード数の命令が入力してもその処理を誤りな
く実行することができる。
【0006】
【実施例】以下、本発明を図の実施例を用いて詳細に説
明する。図1は、本発明の第1発明の演算処理装置実施
例を示すブロック図である。この装置は、命令コードC
1,C2…Cnから成る命令M1〜Msを順に処理する
ものである。これらの命令は記憶装置に格納され、命令
バス10を介して読み取られる。ここで、この命令バス
10には、上記命令コードを一つずつ格納し、それぞれ
m個のALU1〜ALUmに命令コードを供給するディ
スクリプタD1〜Dmが備えられている。また、本発明
においては、命令バス10にこの他に、ディスクリプタ
数レジスタ11が接続されている。このディスクリプタ
数レジスタ11は、各命令コードをそれぞれ一つのディ
スクリプタに格納するものとした時、命令M1〜Msを
構成する命令コードの格納に必要なディスクリプタ数を
指定するためのものである。図1の例では、例えば命令
M1はC1〜Cnのn個の命令コードから構成されるた
め、ディスクリプタ数レジスタ11には数値nが格納さ
れる。また、この実施例では、命令M1を構成する命令
コードC1〜Cnの数nは、装置に設けられたディスク
リプタ数mよりも小さいとする。
【0007】上記のような装置においては、まず、n個
の命令コードから成る命令M1を処理する前に、ディス
クリプタ数レジスタ11に数値nを格納しておく。そし
て、そのディスクリプタ数nの格納により、装置に設け
られたディスクリプタD1〜Dm及びこれに接続される
ALU1〜ALUmのうち、ディスクリプタD1〜Dn
とALU1〜ALUnのみを有効に動作させる構成とす
る。即ち、n個以上のディスクリプタについてはその内
容が無効となり、また、これに接続されたALUの出力
も無効となる。このような構成は、具体的には、例えば
不要なディスクリプタについて、その書込みストローブ
信号を書込み不可の状態に固定しておくことで実現でき
る。ディスクリプタ数レジスタ11からはそのような制
御信号が所定のディスクリプタに供給されるものとす
る。なお、変形例としては、不要なALUのディスクリ
プタに演算処理をしないという命令を格納するようにし
てもよい。この場合には、この種の命令を生成し、格納
するといった処理が必要となる。
【0008】図3に本発明の第2発明の演算処理装置実
施例ブロック図を示す。図の装置の全体構成は、図1に
示したものとほぼ同様である。しかしながらここでは、
そのディスクリプタが命令M1を構成する命令コードC
1〜Cnの数nよりも少ないk個とされている。このよ
うな場合においても、ディスクリプタ数レジスタ11
に、命令を構成する命令コードの数nを格納しておき、
以下の処理を実行することによって演算処理が可能とな
る。図4に第2発明の動作説明図を示す。第2発明にお
いては、まず、n個の命令コードのうち、初めのk個の
命令コードC1,C2…CkをディスクリプタD1〜D
kに格納する。この状態を図4(a)に示す。このよう
な状態で1回目の演算処理を実行する。その演算処理結
果は図示しないメモリの所定のアドレスに書き込まれ
る。次にこの演算が終了すると、命令M1のn番目より
も後の命令コードが取り出され、これがディスクリプタ
に格納される。即ち、命令コードCk+1…Cnがディ
スクリプタD1…Dn−kに格納される。なお、この場
合、ディスクリプタ数よりも命令コード数が少ない状態
となる。従って、第1発明で説明したように過剰のディ
スクリプタはその出力を無効にしておく。
【0009】こうして2回目の処理を行い、その出力を
所定のメモリに格納する。これらの処理が終了した段階
では、当初からn個のディスクリプタを備えた演算処理
装置を用いて処理した結果と同様の結果が得られる。従
って、第2発明によって、実際のディスクリプタ数より
も長い命令が入力した場合においても、これを円滑に処
理することができる。上記のような構成によれば、VL
IWアーキテクチャのプロセッサについて、それぞれデ
ィスクリプタ数、即ちALU数が異なる装置間で命令コ
ードの互換性を保ち、命令の構成を変更することなくそ
のまま必要な処理が実行できる。従って、例えばディス
クリプタ数の非常に多い高性能の装置によってディスク
リプタ数の少ない装置で使用されていた命令をそのまま
処理することができるし、高速処理を要求される場合に
は、従来通り、命令に含まれる命令コード数を増加さ
せ、所定の性能を発揮するようにすればよい。
【0010】
【発明の効果】以上発明した本発明の演算処理装置は、
複数のALUを備えたVLIWアーキテクチャの処理装
置において、入力する命令の一の命令コードを一のディ
スクリプタに格納するものとした時、全命令コードの格
納に必要なディスクリプタ数を、予めディスクリプタ数
レジスタに格納し、ディスクリプタ数を超える余剰のA
LUの出力を無効にし、あるいは、命令コードを複数に
分割し、ALUを複数回使用して処理を行うため、異な
る装置間での命令コードの互換性を保つことができる。
【図面の簡単な説明】
【図1】本発明の第1発明の演算処理装置実施例を示す
ブロック図である。
【図2】従来の演算処理装置を示すブロック図である。
【図3】本発明の第2発明の演算処理装置実施例を示す
ブロック図である。
【図4】本発明の第2発明の動作説明図である。
【符号の説明】
C1〜Cn 命令コード D1〜Dn ディスクリプタ 11 ディスクリプタ数レジスタ

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 複数のALUと、 前記ALUの処理すべき命令を格納する複数のディスク
    リプタと、 入力する前記命令が複数の命令コードから構成され、一
    の命令コードを一のディスクリプタに格納するものとし
    たとき、全命令コードの格納に必要なディスクリプタ数
    を指定するディスクリプタ数レジスタと、 前記命令コードを処理するALUを特定するとともに、
    前記ディスクリプタ数レジスタの指示するディスクリプ
    タ数を越える余剰のALUの出力を無効にすることを特
    徴とする演算処理装置。
  2. 【請求項2】 複数のALUと、 前記ALUの処理すべき命令を格納する複数のディスク
    リプタと、 入力する前記命令が複数の命令コードから構成され、一
    の命令コードを一のディスクリプタに格納するものとし
    たとき、全命令コードの格納に必要なディスクリプタ数
    を指定するディスクリプタ数レジスタと、 前記全命令コードを複数に分割して、前記ディスクリプ
    タ数レジスタの指示するディスクリプタ数の命令コード
    を、前記ALUを複数回使用して処理することを特徴と
    する演算処理装置。
JP3242758A 1991-08-28 1991-08-28 演算処理装置 Pending JPH0553808A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3242758A JPH0553808A (ja) 1991-08-28 1991-08-28 演算処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3242758A JPH0553808A (ja) 1991-08-28 1991-08-28 演算処理装置

Publications (1)

Publication Number Publication Date
JPH0553808A true JPH0553808A (ja) 1993-03-05

Family

ID=17093834

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3242758A Pending JPH0553808A (ja) 1991-08-28 1991-08-28 演算処理装置

Country Status (1)

Country Link
JP (1) JPH0553808A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08241200A (ja) * 1994-12-09 1996-09-17 Mitsubishi Electric Res Lab Inc Vliwプロセッサ

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08241200A (ja) * 1994-12-09 1996-09-17 Mitsubishi Electric Res Lab Inc Vliwプロセッサ

Similar Documents

Publication Publication Date Title
US3949379A (en) Pipeline data processing apparatus with high speed slave store
US5204953A (en) One clock address pipelining in segmentation unit
US6128614A (en) Method of sorting numbers to obtain maxima/minima values with ordering
US4835733A (en) Programmable access memory
KR940009094B1 (ko) 데이타처리 시스템
US4037213A (en) Data processor using a four section instruction format for control of multi-operation functions by a single instruction
KR100346515B1 (ko) 수퍼파이프라인된수퍼스칼라프로세서를위한임시파이프라인레지스터파일
US4954943A (en) Data processing system
EP0507208A2 (en) A data processing system with combined static and dynamic masking of information in an operand
JPH0248931B2 (ja)
JPS6019809B2 (ja) デ−タ処理装置
JPH06332695A (ja) データ処理装置及びその制御回路
US5452427A (en) Data processing device for variable word length instruction system having short instruction execution time and small occupancy area
JPS58161042A (ja) デ−タ処理システム
KR920004279B1 (ko) 포인터레지스터를 구비한 마이크로프로세서
JPS6368971A (ja) ベクトルプロセツサ
US4812970A (en) Microprogram control system
US3480917A (en) Arrangement for transferring between program sequences in a data processor
JPH0553808A (ja) 演算処理装置
JPS6049340B2 (ja) 分岐命令先取り方式
JPS60107137A (ja) タグ付デ−タ処理装置
GB2108737A (en) Byte addressable memory for variable length instructions and data
US5187782A (en) Data processing system
JPH0628034B2 (ja) タグ付計算機
JPH09114733A (ja) キャッシュ記憶装置における非整列データ転送機構