JPH0470987A - 並列データ処理方式 - Google Patents

並列データ処理方式

Info

Publication number
JPH0470987A
JPH0470987A JP17676790A JP17676790A JPH0470987A JP H0470987 A JPH0470987 A JP H0470987A JP 17676790 A JP17676790 A JP 17676790A JP 17676790 A JP17676790 A JP 17676790A JP H0470987 A JPH0470987 A JP H0470987A
Authority
JP
Japan
Prior art keywords
bit
data
register
register file
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
JP17676790A
Other languages
English (en)
Inventor
Hiroyuki Miyata
宮田 裕行
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP17676790A priority Critical patent/JPH0470987A/ja
Publication of JPH0470987A publication Critical patent/JPH0470987A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 (産業上の利用分野〕 この発明は、セルラアレイ型の並列データ処理装置にお
いて、構成要素である基本演算要素(以下、PEという
)で任意のビット幅データの高速演算を行う並列データ
処理方式に関するものである。
〔従来の技術〕
一般に、並列データ処理装置llは第6図に示すように
、PE2が2次元格子上に配列され(図では4X4個)
、隣接する前記PE2間を接続して成り、この各PE2
は制御部3がら送られる命令により、常に同一の動作を
行う。
第7図は例えばジェー・エル・パトラ−“ザマシブリー
 パラレル プロセッサ”、ザ エムアイティー プレ
ス1985(J 、 L、 Potler、“T he
  Massively  P arallel  P
 rocessor”The  MIT  Press
、1985)に示された前記PE2のメモリの論理的な
構成を示すブロック図(第1の従来例)であり、図にお
いて、4は1ビツトx1024ワードで構成されている
メモリとしてのレジスタファイル、5は前記レジスタフ
アイル4内のアドレスを指すアドレスレジスタ。
6は前記レジスタファイル4から読出すか、あるいは書
込むための1ビツトデータを一時的に格納する1ビツト
レジスタである。
また、第8図は例えば「専用LSIと耐故障技術を用い
たSIMD型マルチプロセッサ」、(日経エレクトロニ
クス、&405.pp、173−192.1986.1
0.6)に示された前記PE2のメモリの論理的な構成
を示すブロック図であり(第2の従来例)、図において
、7は16ビツト×16ワードで構成されているメモリ
としてのレジスタファイル、8は前記レジスタファイル
7内のアドレスを指すアドレスレジスタ、9は前記レジ
スタファイル7から読出すか、あるいは書込むための1
6ビツトデータを一時的に格納する16ビツトレジスタ
である。
次に動作について説明する。
まず、第1の従来例では、外部から与えられたアドレス
レジスタ5の値より、対応するアドレスに格納されてい
る1ビツトずつのデータをレジスタファイル4から読出
し、1ビツトレジスタ6に一時的に格納する。そして、
とのPE2の内部で1ビツト演算器(図示せず)を使用
することにより、例えば各1ビツトデータどおしの演算
を行い、その結果を再び1ビツトレジスタ6に格納して
レジスタファイル4のアドレスレジスタ5が指示してい
るアドレスに書込む。
また、第2の従来例では外部から与えられたアドレスレ
ジスタ8の値により、例えば該当するアドレスの2つの
16ビツトデータをレジスタファイル7からそれぞれ読
出し、16ビツトレジスタ9に一時的に格納する。そし
て、このPE2の内部で16ビツト演算器(図示せず)
を使用することにより、16ビツトデータとおしの演算
を行い、その結果を再び1ビツトレジスタ6に格納して
レジスタファイル4のアドレスレジスタ5が指示してい
るアドレスに書込む。
(発明が解決しようとする課題〕 従来の並列データ処理方式は以上のように構成されてい
るので、第1の従来例では、1ビツト演算を繰返すこと
により、任意のビット幅データを処理することができる
が、該1ビツト演算を繰返すことにより演算速度が遅く
なるなどの課題があった・ また、第2の従来例では、16ビツト幅でレジスタファ
イルとのデータ転送を行い、16ビツト演算器により演
算を行うため、高速に処理することができるが、任意の
ビット幅データを扱えないという課題があった。
この発明は上記のような課題を解消するためになされた
もので、任意のビット幅データの演算を高速に処理する
ことができる並列データ処理方式を得ることを目的とす
る。
〔課題を解決するための手段〕
この発明に係る並列データ処理方式は、各PEに所定の
ビット幅データの読出し及び書込みが可能なレジスタフ
ァイルを設け、このレジスタファイルから読出されたデ
ータ中°の任意のビット幅データを、指示された演算モ
ードに応じて該読出されたデータの最下位位置に移動し
、上位位置のデータを無意データとみなして該読出され
た所定のビット幅データに対し演算及び書込みを行うこ
とで、任意のビット幅データの高速演算及び高速書込み
をするようにしたものである。
〔作用〕
この発明における並列データ処理方式は、レジスタファ
イルから読出したデータ中、指示された演算モードに応
じて任意のビット幅データを該データの最下位位置に移
動し、上位位置のデータを無意データとみなして該読出
したデータ単位で演算及び書込みを行うようにしたので
、任意のビット幅データの演算及び書込みが1クロツク
で行える。
〔発明の実施例〕
以下、この発明の一実施例を図について説明する。
第1図はこの発明の一実施例による並列データ処理装置
1におけるPE2の構成を示すブロック図であり、図に
おいて、10は8ビツトX16ワードで構成され、任意
のビット幅データの読出し及び書込みが可能なレジスタ
ファイル、11は前記レジスタファイル10に与えるア
ドレス及びそのビット位置を示すアドレスレジスタ、1
2は演算モードを規定するモードレジスタ、13a。
13bは前記レジスタファイル10から読出した8ビツ
トデータを一時的に格納するレジスタA。
B、14a、14bは任意のビット幅データを処理する
ために設けられたセレクタA、B、15は8ビツト演算
器(以下、ALUという)、16は8ビツト演算器16
からのキャリービットを保持する1ビツトレジスタC1
17は演算モードに応じて前記1ビツトレジスタ16に
保持するキャリービットを決定するセレクタC118は
前記レジスタファイル10に書込まれるデータを一時的
に格納するレジスタD、19は演算モードに応じて前記
レジスタDに格納されている任意のビット幅データを前
記レジスタファイル10に書込むための書込み制御回路
である。
次に動作について説明する。
各PE2で行われる処理としては、任意のビット幅デー
タの演算のための並べかえ、任意のビット幅データの演
算、及びレジスタファイル10への任意のビット幅デー
タの書込みがあるため、それぞれについて個別に説明す
る。また、取扱うことができるデータのビット幅として
は8ビツト以下であればよいが、ここでは説明の都合上
、以下の3つの場合に限る。すなわち、1ビツトデータ
について演算を行う1ビツト演算モード(モードレジス
タ12の内容は“001”)、4ビツトデータについて
演算を行う4ビツト演算モード(12の内容は“010
”)、8ビツトデータについて演算を行う8ビツト演算
モード(モードレジスタ12の内容は“100”)とし
、前記4ビツトデータ及び8ビツトデータはそれぞれ各
データのレジスタファイル10内の境界(バウンダリ)
をまたがないデータを対象に限るものとする。
前記各演算モードにおいて、8ビツト演算器15を使用
して処理する場合、まず、1ビツト演算モードでは、対
応する1ビツトをレジスタファイル10から読出された
8ビツトデータの最下位ビットに移動する必要がある。
これは、対応する1ビツトが中間のビット位置に存在す
るとその下位ビットからのキャリービットの影響をうけ
、正しい結果を8力しないためである。従って、対応す
る1ビツトを最下位ビットに移動させ、例えば1ビツト
データとおしの演算を行い、上位の7ビツトを無視する
ようにすれば、結果の最下位1ビツトには正しい演算結
果が出力される。また、キャリービットとしては最下位
から1ビツト目のキャリービットをセレクタC17の指
示でキャリーレジスタ16に格納すればよい。
また、4ビツト演算モードでは、対象となる4ビツトデ
ータを該読出された8ビツトデ一タ中最下位4ビットに
移動して8ビツト演算器15で演算を行う。そして、こ
の演算結果のうち下位4ビツトをとれば正しい結果が得
られ、また、セレクタCにより指示された下位から4ビ
ツト目のキャリービットをキャリーレジスタ16に格納
する。
また、8ビツト演算モードでは、レジスタファイル10
から読出される8ビツトデータの有効ビットを移動する
必要はないので通常通りの演算を行う。
次に当該PE2で行う処理について前述した3項目を個
別に説明する。
まず、データの並べかえについて説明する。
レジスタファイル10は8ビツト×16ワードの容量を
持ち、複数のレジスタ群から構成されており、第2図に
示すようなビットごとに順にアドレス(以下、ビットア
ドレスという)が付けられている。そして、4ビツトデ
ータ又は8ビツトデータなどの任意のビット幅データを
取出す場合には、そのデータの最下位ビットのビットア
ドレスにより指示される。
例えば、このレジスタファイル10の先頭に8ビツトデ
ータ(ビットアドレスではOから7、Oが最上位ビット
、7が最下位ビット)がある場合、ビットアドレス7に
より、また、レジスタファイル10の先頭に4ビツトデ
ータ(ビットアドレスでは0から3.0が最上位ビット
、3が最下位ビット)がある場合、ビットアドレス3に
より、それぞれのデータのアドレスが示される。
このため、アドレスレジスタ11はこのレジスタファイ
ル10が128ビツト(8ビツト×16ワード)の容量
をもつことから、7ビツトの大きさをもつレジスタであ
るが、その上位4ビツトが該8ビツトX16ワードで構
成されるレジスタファイル10のワードを指定する値(
以下、ワードアドレスという)となる。そして、この4
ビツトにより指定された8ビツトX16ワードの中の1
ワードがレジスタB13bに格納される。また、このア
ドレスレジスタ11の下位3ビツトはこの読出された8
ビツト(1ワード)のデータの中からどのビットを示す
かのビットアドレスを示している。ただし、前述したよ
うに4ビツト演算モード及び8ビツト演算モードとも各
対応するデータがそのビット幅の境界(バウンダリ)を
またがないため、4ビツト演算モードでは、アドレスレ
ジスタ11の最下位3ビツトは’011’又は’111
’ となる、また、8ビツト演算モードでは、アドレス
レジスタ11の最下位3ビツトは’111’ に限定さ
れる。
次に、前記レジスタB13bに格納されたデータをセレ
クタB14bによりデータの並びかえを行う。これは、
先に述べた8ビツト演算器15で1ビツト、4ビツトな
どのデータ幅を持ったデータの演算が行えるようにする
ため、該lビット。
4ビツトのビット幅データを、格納されているデータの
最下位位置に移動させることを意味する。
まず、1ビツト演算モードの場合、8ビツト演算器15
への入力データの最下位ビットに対象とする1ビツトデ
ータを移動すればよい。具体的には、第2図のレジスタ
ファイル10に示すビットアドレス0からビットアドレ
ス7までのどれかの1ビツトデータが指定された場合、
アドレスレジスタ11には、 ′oO00000′から
’0000111′のどれかの値が格納される。また、
レジスタB13bに読出される値はどれにしてもアドレ
スレジスタ11の最上位4ビツトが’o o o o’
であるため第2図に示す値となる。さらに、8ビツト演
算器15に入力するデータ(8ビツト)としては、対象
とする1ビツトのデータを最下位ビットに移動するため
、第3図(a)に示すように、アドレスレジスタ11で
示されるレジスタファイル10内のビットが最下位ビッ
トに移動され、残りの上位7ビツトはそのままの形とな
る。これがlビット演算モードにおけるセレクタB14
bの出力例である(図中、20はセレクタB14bの出
力データ)。
また、4ビツト演算モードにおいても同様となる。ただ
し、この場合、アドレスレジスタ11の下位3ビツトが
′011′  1111′に限定されるため結果として
は第3図(b)で示すようになる。また、8ビツト演算
モードにおいては、アドレスレジスタ11の最下位3ビ
ツトが’l 11’に限定されているため、第3図(c
)で示すようになる。
次に、任意のビット幅データの演算動作について説明す
る。
各ビット演算モードにおける8ビツト演算器15の構成
は第4図(a)に示すようになり、ここでは、説明の都
合上全加算器21(FA : FnllAdder)を
並べている。
この場合の演算は各ビット演算モードに応じてデータを
最下位ビットに移動するため、各演算モードにおけるキ
ャリーの位置は変更するので、演算モードに応じてキャ
リーレジスタ16に入力するキャリービットをセレクタ
17によって選択する(第4図(b))、これにより、
8ビツト演算器15において任意のビット幅データの演
算ができることになる。
次に、レジスタファイル10への任意のビット幅データ
の書込み動作について説明する。
前記8ビツト演算器15による演算結果は最下位ビット
を基点として、1ビツト、4ビツト、あるいは8ビツト
のデータが出力される。
1ビツト演算モードの場合、アドレスレジスタ11の上
位4ビツトの値によりレジスタファイル10の8ビツト
×16ワードのどのワードに格納するか(ワードアドレ
ス)が決まる。そのワード内のどのビット位置かは、該
アドレスレジスタ11の下位3ビツトの値により決定さ
れる。8ビツト演算器15の出力のうち、書込むべき1
ビツトは最下位の1ビツトとして出力されるため、まず
これを8ビツトに拡張する必要がある。すなわち、レジ
スタD18の8ビツトは1ビツト演算モードにおいては
、すべて8ビツト演算器15のaカの最下位1ビツトを
拡張したものになる。そして、実際にレジスタファイル
10に書込む場合には、該アドレスレジスタ11の値に
対応する1ビツトのみを書込むため、第5図(a)に示
すような書込み制御信号を作成する。すなわち、アドレ
スレジスタ11の最下位3ビツトに対応する位置のみを
1′として他はすべて0′とする8ビツトの制御信号で
ある。そして、レジスタファイル10には、ビット単位
に書込みを制御できる機能を設けておき、この制御信号
に従って書込みを行う。
また、4ビツト演算モードでは、そのデータの位置の条
件から4ビツトデータは8ビツトデータの上位4ビツト
か、下位4ビツトに限定されるため、8ビツト演算器1
5の出力の8ビツトのうち、下位4ビツトをそのまま上
位4ビツトにも拡張すればよい、また、書込みのための
制御信号としては、第5図(b)に示すようにアドレス
レジスタ11の値に応じて8ビツトの上位4ビツトをオ
ール1とするか、あるいは下位4ビツトを1とするかを
決めればよい。
さらに、8ビツト演算モードでは、第5図(c)に示す
ように8ビツトすべてを1′とする制御信号を生成すれ
ばよい。
以上が書込み制御回路19に関する機能である。
なお、上記実施例では演算モードとして1ビツト、4ビ
ツト、及び8ビツトの場合を説明したが。
本発明においては、これらを特に限定するものではない
。実施例のように8ビツト幅の読出し及び書込みを行え
るレジスタファイルであれば、他の2ビツト、3ビツト
、5ビツト、6ビツト、7ビツトの演算でも同様の処理
が可能である。
またレジスタファイルのビット幅を増やせば、それにつ
れて採用できる演算モードのビット幅も増やすことがで
きる。
〔発明の効果〕
以上のように、この発明によればレジスタファイルから
読出したデータ中の任意のビット幅データを指示された
演算モードに応じて該データの最下位位置に移動し、上
位位置のデータを無意データとみなして該読出したデー
タ単位で演算及び書込みを行うようにしたので、1クロ
ツクで一度に任意のビット幅データの演算及び書込みが
でき、当該並列データ処理装置の高速化が図れる効果が
ある。
【図面の簡単な説明】
第1図はこの発明の一実施例による並列データ処理方式
を実現する並列データ処理装置におけるPEの構成を示
すブロック図、第2図はこの発明の一実施例による並列
データ処理方式の動作を説明する図、第3図はこの発明
を実現する各PEのセレクタの出力例を示す図、第4図
はこの発明を実現する各PEの8ビツト演算器の構成を
示すブロック図、第5図はこの発明を実現する各PEの
書込み制御信号の一例を示す図、第6図は並列データ処
理装置の構成を示すブロック図、第7図は第1の従来例
における並列データ処理装置のメモリ構成を示すブロッ
ク図、第8図は第2の従来例における並列データ処理装
置のメモリ構成を示すブロック図である。 図において、1は並列データ処理装置、2はPE、3は
制御部、10はレジスタファイル、11はアドレスレジ
スタ、13a、13bはレジスタA、B、14a、14
bはセレクタA、B、15は8ビツト演算器、19は書
込み制御回路である。 なお5図中、同一符号は同一、又は相当部分を示す。 特許出願人  三菱電機株式会社 ト ら 第 図 〈−一一一制卿ライン ロ ■

Claims (1)

    【特許請求の範囲】
  1. 同一構成の基本演算要素を隣接するものどおし接続して
    2次元格子上に複数個配列し、外部からの同一命令によ
    り前記基本演算要素を制御する並列データ処理装置にお
    いて、前記各基本演算要素に所定のビット幅データの読
    出し及び書込みが可能なレジスタファイルを設け、この
    レジスタファイルから読出されたデータ中の任意のビッ
    ト幅データを指示された演算モードに応じて該読出され
    たデータの最下位位置に移動し、上位位置のデータを無
    意データとみなすことで、前記レジスタファイルで一度
    に読出し及び書込みできる所定のビット幅以下の任意の
    ビット幅データの高速演算及び高速書込みを行うことを
    特徴とする並列データ処理方式。
JP17676790A 1990-07-04 1990-07-04 並列データ処理方式 Pending JPH0470987A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17676790A JPH0470987A (ja) 1990-07-04 1990-07-04 並列データ処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17676790A JPH0470987A (ja) 1990-07-04 1990-07-04 並列データ処理方式

Publications (1)

Publication Number Publication Date
JPH0470987A true JPH0470987A (ja) 1992-03-05

Family

ID=16019467

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17676790A Pending JPH0470987A (ja) 1990-07-04 1990-07-04 並列データ処理方式

Country Status (1)

Country Link
JP (1) JPH0470987A (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61177539A (ja) * 1985-02-01 1986-08-09 Mitsubishi Electric Corp マイクロプロセツサ
JPS6419387A (en) * 1987-07-15 1989-01-23 Hitachi Ltd Bit map processor

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61177539A (ja) * 1985-02-01 1986-08-09 Mitsubishi Electric Corp マイクロプロセツサ
JPS6419387A (en) * 1987-07-15 1989-01-23 Hitachi Ltd Bit map processor

Similar Documents

Publication Publication Date Title
US4229801A (en) Floating point processor having concurrent exponent/mantissa operation
US4037213A (en) Data processor using a four section instruction format for control of multi-operation functions by a single instruction
KR100346515B1 (ko) 수퍼파이프라인된수퍼스칼라프로세서를위한임시파이프라인레지스터파일
JPS62208158A (ja) マルチプロセツサシステム
JPH07152733A (ja) ベクトル・データを処理するコンピュータ・システムおよび方法
GB2073923A (en) Branching in computer control store
JPH0414385B2 (ja)
JPH034936B2 (ja)
JPH02162422A (ja) 優先ブランチ機構を備えたデータ処理システム
JPH0470987A (ja) 並列データ処理方式
EP0153025B1 (en) Microprogram control
JP3332606B2 (ja) マイクロプロセッサ
JPH10116191A (ja) 圧縮命令用バッファを備えたプロセッサ
JPH01273132A (ja) マイクロプロセッサ
JPH0535472A (ja) マイクロコンピユータ
JP3088956B2 (ja) 演算装置
JPH0895781A (ja) プロセッサの算術論理装置
JP2576589B2 (ja) 仮想記憶アクセス制御方式
JP2583614B2 (ja) ベクトル演算装置
JPS5875250A (ja) デジタル情報処理装置
JPS607531A (ja) 論理シミユレ−シヨン装置
JPH03273592A (ja) キャッシュメモリ装置
JPH0721154A (ja) ベクトル処理装置
JPH0418658A (ja) 機能分散型計算機システム
JPH05290080A (ja) 並列処理装置