JPH11353289A - 並列処理プロセッサ及び並列処理方法 - Google Patents

並列処理プロセッサ及び並列処理方法

Info

Publication number
JPH11353289A
JPH11353289A JP10161671A JP16167198A JPH11353289A JP H11353289 A JPH11353289 A JP H11353289A JP 10161671 A JP10161671 A JP 10161671A JP 16167198 A JP16167198 A JP 16167198A JP H11353289 A JPH11353289 A JP H11353289A
Authority
JP
Japan
Prior art keywords
data
unit
delay
processor
memory
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
JP10161671A
Other languages
English (en)
Inventor
Toru Aoki
青木  透
Narihiro Matoba
成浩 的場
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 JP10161671A priority Critical patent/JPH11353289A/ja
Publication of JPH11353289A publication Critical patent/JPH11353289A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】 複数の並列処理プロセッサを接続して使用す
る場合等、データ転送に伴い遅延が生じても、プロセッ
サエレメント(PE)の同期をとることが可能な並列処
理プロセッサ及び並列処理方法を得る。 【解決手段】 PE内の演算部は、他のPEのメモリか
らデータを入力、演算し、同一のPE内のメモリに演算
データを出力する。並列処理プロセッサの端にあるPE
内の演算部が、外部の並列処理プロセッサからデータを
入力する場合、並列処理プロセッサ内のメモリからデー
タを入力する場合に比較して遅延が生じる。このとき、
全てのPEにおいて、演算部がメモリにデータを出力す
るタイミングを遅延量だけ遅らせる。これにより、全て
のPEの動作を同期させることが可能となる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は入力されたシリアル
データを並列処理して出力する並列処理プロセッサに関
するものであり、特にデータ転送に伴い生じる遅延に基
づき、処理を制御する並列処理プロセッサ及び並列処理
方法に関するものである。
【0002】
【従来の技術】ソフトコピーやハードコピー等により入
力された画像信号を処理するために、並列処理プロセッ
サが使用される。図19は例えば、特開平1―2581
84号公報に基づき記載された並列処理プロセッサの構
成図である。図19に示される従来の並列処理プロセッ
サ1は、入力シフトレジスタ12、出力シフトレジスタ
15、命令制御部40およびプロセッサ部10から構成
されている。入力シフトレジスタ12は外部からのデー
タ入力を行ない、出力シフトレジスタ15は外部へのデ
ータ出力を行なう。プロセッサ部10では従来の並列処
理プロセッサ1に取り込まれたデータの演算処理が行な
われる。
【0003】入力シフトレジスタ12は外部データ入力
バス13からシリアルに入力されたデータをプロセッサ
部10にパラレルに出力する役割を果たす。反対に出力
シフトレジスタ15はプロセッサ部10からパラレルに
転送されてきた処理済みデータを一旦レジスタ内に取り
込み外部データ出力バス16へシフト動作でシリアルに
出力する役割を果たす。
【0004】プロセッサ部10は演算部20とメモリ1
1から構成されている。演算部20はデータ演算処理を
行なう部分であり、図19中で水平方向にN個が並べて
配置されている。各演算部20は命令制御部40からの
演算部制御信号で制御される。演算部制御信号は演算部
制御信号バス52を通じて転送される。また演算部制御
信号バス52は全ての演算部20に対して共通であり、
そのため全ての演算部20が同じ動作をする。
【0005】メモリ11も演算部20と同様に図19中
で水平方向にN個が並べて配置されている。メモリ11
は命令制御部40からのアドレスおよびメモリ制御信号
で制御される。アドレスおよびメモリ制御信号はアドレ
スバスおよびメモリ制御信号バス50を通じて転送され
る。またアドレスバスおよびメモリ制御信号バス50は
全てのメモリ11に対して共通であり、そのため全ての
メモリ11が同じ動作をする。
【0006】図19中で垂直方向に並んだ演算部20お
よびメモリ11で1つの処理単位であるプロセッサエレ
メントを構成している。今後このプロセッサエレメント
のことをPEと呼ぶことにする。プロセッサ部10は水
平方向にN個並んだPEから構成されている。各PE内
の演算部20とメモリ11はPE内接続バス31で接続
されており、各メモリ11のデータ出力は演算部20の
データ入力に接続され、演算部20のデータ出力は各メ
モリ11のデータ入力に接続されている。各演算部20
は自PE内のメモリ11だけでなく、左右に隣接するP
E内のメモリ11の内容を読み込むことができる。各P
E間のデータ転送にはPE間転送バス30が使用され
る。また両端に位置するPEからは従来の並列処理プロ
セッサ1の外部に対してプロセッサ間転送バス32が出
力されており、複数の並列処理プロセッサ1を接続して
使用する時に使用される。
【0007】命令制御部40は従来の並列処理プロセッ
サ1の各部分を制御する役割を果たす。プロセッサ部1
0の制御はいわゆるSIMD制御であり、全てのPEが
同じ命令で動作する。また演算部20内にはセレクタが
あり、自PE内のメモリ11または隣接PE内のメモリ
11のいずれを演算部20に接続するかを決定してい
る。続いて、この従来の並列処理プロセッサ1が、画像
処理を行う動作について説明する。この構成において入
力信号は外部データ入力バス13から画素データごとに
ラスタスキャンで入力シフトレジスタ12に入力され
る。
【0008】この時入力シフトレジスタ12はシフト動
作でデータを取り込んでいく。入力シフトレジスタ12
は最低でも1ラインの画素数と同じ数のレジスタ段数を
持つ。図19ではこのレジスタ段数はN段である。そし
て1ライン分の画素データを取り込み終わると、取り込
んだデータを並列にメモリ11に書き込む。入力シフト
レジスタ12の各段から対応する位置のPEに対して入
力データ転送バス14が接続されており、入力シフトレ
ジスタ12内のデータはN個が並列にプロセッサ部10
のメモリ11に転送される。転送が終ると、入力シフト
レジスタ12は次ラインの画素データの取り込みを開始
する。
【0009】演算部20ではメモリ11からデータが必
要に応じて読み出されて、これに必要な算術演算処理お
よび論理演算処理が施されて、演算結果を再びメモリ1
1に書き込む。演算部20とメモリ11はPE内転送バ
ス31で接続されており、メモリ11に対して演算部2
0から読み書きができる。出力シフトレジスタ15は入
力シフトレジスタ12と同数のレジスタ段数を持つ。図
19ではレジスタ段数はN段である。出力シフトレジス
タ15の各段から対応する位置のPEに対して出力デー
タ転送バス17が接続されており、プロセッサ部10の
メモリ11内のデータはN個が並列に出力シフトレジス
タ15に転送される。出力シフトレジスタ15に書き込
まれたデータは入力シフトレジスタ12と同様にシフト
動作で外部データ出力バス16を経由して並列処理プロ
セッサ1の外部へ出力される。入力シフトレジスタ1
2、プロセッサ部10、出力シフトレジスタ15はお互
いに独立に同時に動作しており、いわゆるパイプライン
動作をしている。
【0010】図19の従来の並列処理プロセッサ1で
は、1ラインの画素数が従来の並列処理プロセッサ1内
のPE数よりも多い場合には、複数の従来の並列処理プ
ロセッサ1を並列に接続して使用できるようになってい
る。図20は従来の従来の並列処理プロセッサ1を2個
並列に接続した時の構成図である。図20では2個の入
力シフトレジスタ12を接続して1個の入力シフトレジ
スタとして使用している。同様に2個の出力シフトレジ
スタ15を接続して1個の出力シフトレジスタとして使
用する。
【0011】また、それぞれの従来の並列処理プロセッ
サ1の両端のPEをプロセッサ間転送バス32で接続す
ることで、2個の従来の並列処理プロセッサ1をプロセ
ッサ数が2つになった1個の並列処理プロセッサとして
使用することができる。このとき2個の従来の並列処理
プロセッサ1を接続するプロセッサ間転送バス32は従
来の並列処理プロセッサ1の外部にあるために、従来の
並列処理プロセッサ1内にあるPE間転送バス30と比
較して遅延が生じる。
【0012】このように複数の従来の並列処理プロセッ
サ1を接続した場合の動作タイミングには2つの場合が
考えられる。1つは演算部20内にラッチを持たない構
成であり、メモリ11から演算部20に転送されたデー
タはノーウェイトでメモリ11へ出力される。もう1つ
は演算部20内にラッチを持つ構成であり、メモリ11
から演算部20に転送されたデータは一旦演算部20内
のラッチに保持された後、メモリ11へ出力される。
【0013】図21はラッチを持たない演算部21の構
成である。ラッチを持たない演算部21は演算器60お
よび入力セレクタ61から構成される。自PE内のメモ
リ11および隣接PE内のメモリ11からのデータ出力
は入力セレクタ61に入力される。演算器60には入力
セレクタ61で選択されたメモリ11のデータが入力さ
れる。そして演算器60の演算出力がラッチをもたない
演算部21の出力として出力される。演算器60および
入力セレクタ61の動作は命令制御部40からの演算部
制御信号で制御される。図22は演算部内にラッチを持
たないPEの動作タイミングである。図22(a)は両
端のPEでプロセッサ間転送バス32による遅延が生じ
る場合の動作タイミングであり、図22(b)は内側の
PEが通常動作する場合の動作タイミングである。
【0014】ラッチをもたない演算部21内にラッチが
ないため、動作ステップはメモリ11からのデータ読み
込み&演算のステップと、メモリ11へのデータ書き込
みのステップの2ステップで構成されている。メモリ1
1へのデータ書き込みのステップは、命令制御部40か
らメモリ11へのライトイネーブル信号により制御され
る。このライトイネーブル信号の入力により、データの
書き込みが開始される。図22から分かるように、内側
のPEの動作タイミングと比較して、両端のPEではプ
ロセッサ間のデータ転送の遅延があるために、データ読
み込み&演算のステップに遅延が生ずる。この時、両端
のPEに内側のPEと同じ動作タイミングを用いている
と、両端のPEに対するライトイネーブル信号が早過ぎ
て確実にデータ書き込みを行なうことができない。
【0015】図23はラッチを持った演算部22の構成
である。ラッチを持った演算部22は演算器60、入力
セレクタ61およびラッチ62から構成される。自PE
内のメモリ11および隣接PE内のメモリ11のデータ
出力は入力セレクタ61に入力される。入力セレクタ6
1で選択されたメモリ11のデータは一旦、ラッチ62
に記憶される。続いて演算器60はラッチ61の出力を
入力し、演算器60の演算出力が演算部22の出力とし
て出力される。演算器60、入力セレクタ61およびラ
ッチ62の動作は演算部制御信号で制御される。また図
24は演算部内にラッチを持つPEの動作タイミングで
ある。図24(b)は内側のPEが通常動作する場合の
動作タイミングであり、図24(a)は両端のPEでプ
ロセッサ間転送バス32による遅延が生じる場合の動作
タイミングである。
【0016】演算部22内にラッチ62を持っているた
め、動作ステップはメモリ11からのデータ読み込みの
ステップと、演算&ラッチのステップと、メモリ11へ
のデータ書き込みのステップの3ステップで構成されて
いる。この場合も演算部にラッチがない場合と同様に、
内側のPEの動作タイミングと比較して両端のPEでは
プロセッサ間のデータ転送の遅延があるためにタイミン
グが遅くなる。
【0017】
【発明が解決しようとする課題】以上のように、従来の
並列処理プロセッサ1を2個以上接続して使用する場
合、2個の従来の並列処理プロセッサ1を接続するプロ
セッサ間転送バス32は、プロセッサの外部にあるため
に遅延が生じる。この遅延が小さなものである場合に
は、複数の並列処理プロセッサを接続して並列処理を行
うことができた。しかし、プロセッサ間転送バス32で
の遅延がある程度大きくなると、両端のPEは内側のP
Eと同期して動作することができなくなり、複数の並列
処理プロセッサを接続して使用することができなかっ
た。この発明は上記のような問題を解決するためになさ
れたもので、複数の並列処理プロセッサを接続して使用
する場合等、データ転送に伴い遅延が生じても、PEの
同期をとることが可能な並列処理プロセッサ及び並列処
理方法を得ることを目的とする。
【0018】
【課題を解決するための手段】第1の発明に係る並列処
理プロセッサは、第1のプロセッサエレメントと第2の
プロセッサエレメントを用いて、入力されたシリアルデ
ータを並列処理する並列処理プロセッサにおいて、前記
並列処理プロセッサは、前記第1のプロセッサエレメン
トの処理を制御する制御手段を有し、前記第1のプロセ
ッサエレメントは第1の演算部と第1のメモリを有し、
前記第2のプロセッサエレメントは第2の演算部と第2
のメモリを有し、前記第1の演算部は、前記並列処理プ
ロセッサの外部から入力される外部データを演算して第
1の演算データを生成して出力し、前記第2の演算部
は、前記第1のメモリに記憶された第1のメモリデータ
を演算して第2の演算データを生成して出力し、前記制
御手段は、前記第1のメモリデータが前記第2の演算部
に入力される場合に比較して、前記外部データが前記第
1の演算部に入力される場合に生ずる遅延に応じて、前
記第1演算部が前記第1の演算データを出力するタイミ
ングを変化させることにより、前記第1のプロセッサエ
レメントによるデータ処理を制御することを特徴とする
ものである。
【0019】第2の発明に係る並列処理プロセッサは、
第1の発明に係る前記並列処理プロセッサにおいて、遅
延器を有し、前記遅延器は、前記外部データが前記第1
の演算部に入力される場合に生ずる前記遅延に応じ、前
記第1のメモリデータを遅延させて前記第2の演算部に
出力することを特徴とするものである。
【0020】第3の発明に係る並列処理プロセッサは、
第2の発明に係る前記並列処理プロセッサにおいて、前
記第1のメモリから出力されるメモリ出力データを前記
遅延器を介して前記第2の演算部に出力するか否かを決
定する遅延セレクタを有することを特徴とするものであ
る。
【0021】第4の発明に係る並列処理プロセッサは、
第1の発明に係る第2の演算部において、遅延器と遅延
セレクタと演算器を有し、前記遅延器は、前記外部デー
タが前記第1の演算部に入力される場合に生ずる前記遅
延に応じ、前記第2の演算部に入力された前記第1のメ
モリデータを遅延させて出力し、前記遅延セレクタは、
前記第2の演算部に入力された第1のメモリデータを前
記遅延器を介して前記演算器に出力するか否かを選択
し、前記演算器は前記遅延セレクタにより選択されて入
力された前記第1のメモリデータを演算処理して、前記
第2の演算データを出力することを特徴とするものであ
る。
【0022】第5の発明に係る並列処理プロセッサは、
入力されたシリアルデータを並列処理する第1の並列処
理プロセッサ部と、入力されたシリアルデータを並列処
理する第2の並列処理プロセッサ部を用いて、入力され
たシリアルデータを並列処理する並列処理プロセッサに
おいて、前記第1の並列処理プロセッサ部は第1の演算
部と第1のメモリにより構成される第1のプロセッサエ
レメントと、第2の演算部と第2のメモリにより構成さ
れる第2のプロセッサエレメントと、前記第1のプロセ
ッサエレメントと第2のプロセッサエレメントによるデ
ータ処理を制御する第1の制御手段を有し、前記第2の
並列処理プロセッサ部は第3の演算部と第3のメモリに
より構成される第3のプロセッサエレメントと、前記第
3のプロセッサエレメントによるデータ処理を制御する
第2の制御手段を有し、前記第1の演算部は前記第3の
メモリに記憶された第3のメモリデータを演算して第1
の演算データを生成し、前記第2の演算部は前記第1の
メモリに記憶された第1のメモリデータを演算して第2
の演算データを生成し、前記第1の制御手段は、前記第
1のメモリデータが前記第2の演算部に入力される場合
に比較して、前記第3のメモリデータが前記第1の演算
部に入力される場合に生ずる遅延に応じて、前記第1の
演算部が前記第1の演算データを出力するタイミングを
変化させることにより、前記第1のプロセッサエレメン
トによるデータ処理を制御することを特徴とするもので
ある。
【0023】第6の発明に係る並列処理プロセッサは、
第5の発明に係る第1の並列処理プロセッサ部におい
て、遅延器を有し、前記遅延器は、前記第3のメモリデ
ータが前記第1の演算部に入力される場合に生ずる前記
遅延に応じ、前記第1のメモリデータを遅延させて前記
第2の演算部に出力することを特徴とするものである。
【0024】第7の発明に係る並列処理プロセッサは、
第6の発明に係る第1の並列処理プロセッサ部におい
て、前記第1のメモリから出力される第1のメモリデー
タを前記遅延器を介して前記第2の演算部に出力するか
否かを決定する遅延セレクタを有することを特徴とする
ものである。
【0025】第8の発明に係る並列処理プロセッサは、
第5の発明に係る第2の演算部において、遅延器と遅延
セレクタと演算器を有し、前記遅延器は、前記第3のメ
モリデータが前記第1の演算部に入力される場合に生ず
る前記遅延に応じ、前記第2の演算部に入力された前記
第1のメモリデータを遅延させて出力し、前記遅延セレ
クタは、前記第2の演算部に入力された前記第1のメモ
リデータを前記遅延器を介して前記演算器に出力するか
否かを選択し、前記演算器は前記遅延セレクタにより選
択されて入力された前記第1のメモリデータを演算処理
して、前記第2の演算データを出力することを特徴とす
るものである。
【0026】第9の発明に係る並列処理方法は、シリア
ルデータを並列処理プロセッサにおいて並列処理する並
列処理方法であって、前記シリアルデータの一部である
第1の入力データを記憶する第1の記憶ステップと、前
記第1の記憶ステップにおいて記憶された第1の記憶デ
ータを演算処理して第1の演算データを生成し、出力す
る第1の演算処理ステップと前記並列処理プロセッサの
外部から入力される外部データを演算して第2の演算デ
ータを生成し、出力する第2の演算処理ステップと、前
記第1の演算処理ステップにおいて前記第1の記憶デー
タを入力する場合に比較して、前記第2の演算処理ステ
ップにおいて前記外部データが入力される場合に生ずる
遅延に応じて、前記前記第2の演算処理ステップにおい
て前記演算データを出力するタイミングを変化させるこ
とにより、前記第2の演算処理ステップを制御する制御
ステップと、を有することを特徴とするものである。
【0027】
【発明の実施の形態】実施の形態1.本発明の第1の実
施形態を図1に基づき説明する。並列処理プロセッサ1
01は、入力シフトレジスタ12、出力シフトレジスタ
15、命令制御部41およびプロセッサ部10から構成
されている。入力シフトレジスタ12は外部からのデー
タ入力を行ない、出力シフトレジスタ15は外部へのデ
ータ出力を行なう。プロセッサ部10では並列処理プロ
セッサ101に取り込まれたデータの演算処理が行なわ
れる。
【0028】入力シフトレジスタ12は外部データ入力
バス13からシリアルに入力されたデータをプロセッサ
部10にパラレルに出力する役割を果たす。反対に出力
シフトレジスタ15はプロセッサ部10からパラレルに
転送されてきた処理済みデータを一旦レジスタ内に取り
込み外部データ出力バス16へシフト動作でシリアルに
出力する役割を果たす。プロセッサ部10は演算部20
とメモリ11から構成されている。演算部20はデータ
演算処理を行なう部分であり、図1中で水平方向にN個
が並べて配置されている。各演算部20は命令制御部4
1からの演算部制御信号で制御される。演算部制御信号
は演算部制御信号バス52を通じて転送される。また演
算部制御信号バス52は全ての演算部20に対して共通
であり、そのため全ての演算部20が同一の信号により
制御され同期して動作をする。
【0029】メモリ11も演算部20と同様に図1中で
水平方向にN個が並べて配置されている。メモリ11は
命令制御部41からのアドレスおよびメモリ制御信号で
制御される。アドレスおよびメモリ制御信号はアドレス
バスおよびメモリ制御信号バス50を通じて転送され
る。またアドレスバスおよびメモリ制御信号バス50は
全てのメモリ11に対して共通であり、そのため全ての
メモリ11が同一の信号により制御されて同期して動作
をする。
【0030】図1中で垂直方向に並んだ演算部20およ
びメモリ11で1つの処理単位であるプロセッサエレメ
ントを構成している。今後このプロセッサエレメントの
ことをPEと呼ぶことにする。プロセッサ部10は水平
方向に1〜N番めまで、N個並んだPEから構成されて
いる。各PE内の演算部20とメモリ11はPE内接続
バス31で接続されており、各メモリ11のデータ出力
は演算部20のデータ入力に接続され、演算部20のデ
ータ出力は各メモリ11のデータ入力に接続されてい
る。各演算部20は自PE内のメモリ11だけでなく、
左右に隣接するPE内のメモリ11の内容を読み込むこ
とができる。各PE間のデータ転送にはPE間転送バス
30が使用される。またプロセッサ部10の両端に位置
するPEからは並列処理プロセッサ101の外部に対し
てプロセッサ間転送バス32が出力されており、例えば
複数の並列処理プロセッサ101を接続して使用する時
に使用される。
【0031】命令制御部41は並列処理プロセッサ1の
各部分を制御する役割を果たす。プロセッサ部10の制
御はいわゆるSIMD制御であり、全てのPEが同期し
て同じ命令で動作する。また演算部20内にはセレクタ
があり、自PE内のメモリ11または隣接PE内のメモ
リ11のいずれを演算部20に接続するかを決定してい
る。続いて、この並列処理プロセッサ101が、画像処
理を行う動作について説明する。この構成において入力
信号は外部データ入力バス13から画素データごとにラ
スタスキャンで入力シフトレジスタ12に入力される。
【0032】この時入力シフトレジスタ12はシフト動
作でデータを取り込んでいく。入力シフトレジスタ12
は最低でも1ラインの画素数と同じ数のレジスタ段数を
持つ。図1ではこのレジスタ段数はN段である。そして
1ライン分の画素データを取り込み終わると、取り込ん
だデータを並列にメモリ11に書き込む。入力シフトレ
ジスタ12の各段から対応する位置のPEに対して入力
データ転送バス14が接続されており、入力シフトレジ
スタ12内のデータはN個が並列にプロセッサ部10の
メモリ11に転送される。転送が終ると、入力シフトレ
ジスタ12は次ラインの画素データの取り込みを開始す
る。演算部20ではメモリ11からデータが必要に応じ
て読み出されて、これに必要な算術演算処理および論理
演算処理が施されて、演算結果を再びメモリ11に書き
込む。演算部20とメモリ11はPE内転送バス31で
接続されており、メモリ11に対して演算部20から読
み書きができる。
【0033】出力シフトレジスタ15は入力シフトレジ
スタ12と同数のレジスタ段数を持つ。図1ではレジス
タ段数はN段である。出力シフトレジスタ15の各段か
ら対応する位置のPEに対して出力データ転送バス17
が接続されており、プロセッサ部10のメモリ11内の
データはN個が並列に出力シフトレジスタ15に転送さ
れる。出力シフトレジスタ15に書き込まれたデータは
入力シフトレジスタ12と同様にシフト動作で外部デー
タ出力バス16を経由して並列処理プロセッサ1の外部
へ出力される。入力シフトレジスタ12、プロセッサ部
10、出力シフトレジスタ15はお互いに独立に同時に
動作しており、いわゆるパイプライン動作をしている。
【0034】本実施の形態のPEの動作タイミングを図
2に示す。(a)は両端のPEがプロセッサ間転送バス
32からデータを入力する場合の動作タイミング、
(b)は内側のPEが通常動作する動作タイミング、
(c)は制御信号で同期をとる場合の内側のPEの動作
タイミングである。演算部21内にラッチがない場合を
説明する。動作ステップは、メモリ11からのデータ読
み込み&演算のステップと、メモリ11へのデータ書き
込みのステップの2ステップで構成されている。メモリ
11へのデータ書き込みのステップは、命令制御部41
からメモリ11へのライトイネーブル信号により制御さ
れる。このライトイネーブル信号の入力により、データ
の書き込みが開始される。
【0035】並列処理プロセッサ101を接続するプロ
セッサ間転送バス32は、並列処理プロセッサ101の
外部にあるために、並列処理プロセッサ101の外部か
ら外部データをラッチをもたない演算部21へ入力する
場合、並列処理プロセッサ101内にあるPE間転送バ
ス30と比較して遅延が生じ、データ読み込み&演算の
ステップに遅延が生ずる。図2では、プロセッサ間転送
バス32で1クロック分の遅延がある場合を表してい
る。この場合、内側のPEと両端のPEの間にはちょう
ど1クロック分の遅延が生じる。
【0036】複数の並列処理プロセッサ101が接続さ
れている状態で、隣接PEのメモリにアクセスする命令
が発生した場合、両端のPEでプロセッサ間転送による
遅延が発生する。図25は2つの並列処理プロセッサ1
01を接続した場合の構成図である。第1の並列処理プ
ロセッサのN番めのPEは、第2の並列処理プロセッサ
の1番目のPEのメモリにアクセスする命令が発生した
場合、プロセッサ間転送バス32からデータを入力す
る。一方、第1の並列処理プロセッサのN−1番めのP
EはN番目PEのメモリ11からデータを入力するの
で、この両者の間でメモリからデータを入力する時に遅
延が発生する。
【0037】この場合、図2(c)に示したように、命
令制御部41はライトイネーブル信号を両端のPEで発
生する遅延量だけ遅延させて送出することで、ラッチを
もたない演算部21が演算データをメモリ11に出力す
るタイミングを遅延させて、両端のPEと内側のPEの
同期をとる。また、並列処理プロセッサ101が1個の
場合、あるいは隣接PEのメモリにアクセスしない命令
の場合には、両端のPEで遅延が発生しないので、PE
のライトイネーブル信号を遅延する必要はなく、通常動
作時のタイミングでライトイネーブル信号を送り出す。
【0038】以上のように、命令制御部41はライトイ
ネーブル信号を遅延することができる。命令制御部41
は複数の並列処理プロセッサ101が接続されている状
態で、隣接PEにアクセスする場合には遅延させたライ
トイネーブル信号を送出し、並列処理プロセッサ101
が1個の場合、あるいは隣接PEのメモリにアクセスし
ない命令の場合には通常のタイミングのライトイネーブ
ル信号を送出する。ライトイネーブル信号の送出タイミ
ングを、どれだけ遅延させるかについては、プロセッサ
間転送バスで生じる予め計測する等して、命令制御部4
1に設定しておく。
【0039】このような構成にすることで、命令制御部
41はラッチをもたない演算部21が演算データをメモ
リ11に出力するタイミングを変化させることにより、
PEを制御する。これにより、複数の並列処理プロセッ
サ101を接続して使用した場合でも、両端のPEと内
側のPEとの間の同期を確実にとることができ、プロセ
ッサ間転送で生じる遅延の影響を受けずに、並列処理プ
ロセッサ101内のメモリ11へのデータ書き込みが可
能となる。また、命令制御部41は遅延が生ずる場合と
生じない場合とで制御信号のタイミングを変化させるの
で、遅延が生じない場合は早いタイミング処理を行うこ
とができ、効率的なデータ処理が可能となる。さらに、
各PE毎に余分な付加回路を必要としないため、回路規
模を低減することが可能となる。
【0040】ここで、図1におけるN番めのPEが第1
のプロセッサエレメントに対応し、N−1番めのPEが
第2のプロセッサエレメントに対応し、命令制御部41
が制御手段に対応し、N番めのPEのラッチをもたない
演算部21とメモリがそれぞれが第1の演算部と第1の
メモリに対応し、N−1番めのPEのラッチをもたない
演算部21とメモリ11がそれぞれが第2の演算部と第
2のメモリに対応し、プロセッサ間転送バス32より入
力されるデータが外部データに対応する。
【0041】又、図25において、第1の並列処理プロ
セッサ101内の命令制御部41とN個のPEにより第
1の並列処理部を、第1の並列処理プロセッサ101に
接続された第2の並列処理プロセッサ101が有する、
命令制御部41とN個のPEにより第2の並列処理部に
対応し、第2の並列処理プロセッサ101が有する1番
目のPEが第3のプロセッサエレメントに対応する。こ
こで、並列処理部とは少なくとも複数のPEと、これら
のPEを制御する制御手段を有するものをいい、外部デ
ータは並列処理プロセッサ外部から入力される全てのデ
ータを意味する。
【0042】尚、以上のような対応は、本実施の形態に
おける一例を示すものであって、これらに限るものでは
ない。この点は、以下の実施の形態において同様であ
る。尚、演算部は隣接PE以外のメモリ11からデータ
を入力してもよく、演算結果を他のPE内のメモリに記
憶してもよい。又、並列処理プロセッサの外部から入力
されるデータは、接続された他の並列処理プロセッサか
らのデータに限るものではなく、。これらの点は、以下
の実施の形態において同様である。
【0043】実施の形態2.図3は本発明における一実
施の形態である並列プロセッサの概略構成図である。図
3において、70はPE間転送バス30において遅延を
発生する遅延器である。他の構成は図1と同様であり説
明を省略する。遅延器70はPE間転送バス30中に配
置してある。そのため各PEが隣接PEのメモリ11に
アクセスする場合には遅延器70により常に遅延が発生
するようになっている。この遅延器70の遅延量はプロ
セッサ間データ転送による遅延に等しく予め設定されて
いる。PE内転送バス31を使用する場合には遅延が生
ずることがないため、遅延器を配置しない。
【0044】図4は本実施の形態の動作を説明するタイ
ミング図である。ラッチをもたない演算部21内にラッ
チがない場合を説明する。(a)、(b)は実施の形態1
と同様であり説明を省略する。図4(c)は本実施形態
における遅延器70を使用して、同期を制御した場合の
動作タイミングである。動作ステップは、メモリ11か
らのデータ読み込み&演算のステップと、メモリへのデ
ータ書き込みのステップの2ステップで構成されてい
る。図4ではプロセッサ間転送バス32で1クロック分
の遅延がある場合を表している。この場合内側のPEと
両端のPEの間にはちょうど1クロック分の遅延が生じ
る。内側のPEのPE間転送バス32に遅延器70を挿
入することで、(c)のように両端のPEデータ読み込
み&演算のステップを長くする。
【0045】命令制御部41は実施の形態1と同様に、
ライトイネーブル信号を遅延して送出することができ
る。このライトイネーブル信号の入力により、データの
書き込みが開始される。命令制御部41は、隣接PEに
アクセスする命令の場合には遅延させたライトイネーブ
ル信号を送出する。自PEのメモリ11にアクセスする
命令の場合には、通常動作のタイミングのライトイネー
ブル信号を送出する。
【0046】このような構成にすることで、これによ
り、複数の並列処理プロセッサ101を接続して使用し
た場合でも、両端のPEと内側のPEとの間の同期を確
実にとることができ、プロセッサ間転送で生じる遅延の
影響を受けずに、並列処理プロセッサ101内のメモリ
11へのデータ書き込みが可能となる。また、命令制御
部41は隣接PEへアクセスする場合とアクセスしない
場合とで制御信号のタイミングを変化させるので、遅延
が生じない場合は早いタイミング処理を行うことがで
き、効率的なデータ処理が可能となる。さらに、各PE
のデータ書き込みサイクルが一定長である必要がある場
合でも、プロセッサ間転送で生じる遅延の影響を受けず
に並列処理プロセッサ102を動作させることができ
る。
【0047】実施の形態3.図5は本発明の第3の実施
形態である並列処理プロセッサの構成を示す図である。
図において、42は遅延セレクタセレクト信号を出力す
る命令制御部、71は遅延セレクタ、54は遅延セレク
タセレクト信号バスである。他の構成は実施の形態2と
同様であり説明を省略する。動作を説明する。遅延器7
0および遅延セレクタ71はPE間転送バス30中に配
置してある。各メモリ11から出力されたPE間転送バ
ス30は2つに分岐され、遅延器70を経由する経路と
遅延器70を経由しない経路の2つの経路に分かれてい
る。2つの経路は共に遅延セレクタ71に入力され、2
つの経路のいずれか一方を選択して遅延セレクタ71の
出力として隣接PEへ出力する。
【0048】遅延セレクタ71が遅延器70を介する経
路を選択した場合は、自PEのメモリ11のデータは遅
延されて隣接PEのラッチをもたない演算部21へ転送
される。また遅延セレクタ71が遅延器70を通らない
経路を選択した場合は、自PEのメモリ11のデータは
遅延なしで隣接PEのラッチをもたない演算部21へ転
送される。遅延器70の遅延量は実施の形態2と同様で
ある。遅延セレクタ71のセレクト信号は、命令制御部
42から遅延セレクタセレクト信号バス54を経由して
転送される。遅延セレクタセレクト信号バス54はプロ
セッサ部10内の全ての遅延セレクタ7に接続されてお
り、全ての遅延セレクタ7は命令制御部42から送出さ
れる同一の遅延セレクタセレクト信号により制御され同
期して動作する。
【0049】本実施形態における動作タイミングを、図
4を用いて説明する。図4については実施の形態2にお
いて説明しており、説明を省略する。内側のPEの遅延
セレクタ71で遅延器70を通る経路を選択すること
で、PE間転送バス30に遅延器70が挿入され、図4
(a)、(c)のように両端のPEと内側のPEのタイ
ミングを合わせ、同期をとることができる。
【0050】また複数の並列処理プロセッサ103を使
用しない場合あるいは隣接PEのメモリ11にアクセス
しない命令の場合等、遅延が生じない場合には、内側の
PEで遅延器70を通らない経路を選択することで、遅
延のない高速なデータ転送を実現する。命令制御部42
はライトイネーブル信号を遅延し、かつ遅延セレクタセ
レクト信号を出力することができる。命令制御部42
は、複数の並列処理プロセッサ103が接続されている
状態で隣接PEにアクセスする命令の場合には遅延させ
たライトイネーブル信号を送出し、複数の並列処理プロ
セッサ103を使用しない場合あるいは隣接PEのメモ
リ11にアクセスしない命令の場合には通常のタイミン
グのライトイネーブル信号を送出する。ここで、命令制
御部42は制御手段に対応する。
【0051】このような構成にすることにより実施の形
態2の効果に加え、遅延器70を介しない経路も用意
し、遅延セレクタ71が遅延器70を介して出力するか
否かを選択するので、単独の並列処理プロセッサ103
を使用する場合、あるいは隣接PEのメモリ11にアク
セスしない命令の場合等、遅延が生じない場合には遅延
のない高速な動作を実現することができる。 実施の形態4.本発明の第4の実施形態を図6に基づき
説明する。図6において、23はラッチを持たない遅延
セレクト演算部、43はライトイネーブル信号を遅延
し、かつ2本の遅延セレクタセレクト信号を出力する命
令制御部、である。他の構成は、実施の形態1と同様で
あり説明を省略する。
【0052】図7に実施の形態におけるラッチを持たな
い遅延セレクト演算部23の構成を示す。ラッチを持た
ない遅延セレクト演算部23は演算器60、遅延セレク
タ64、遅延器63および入力セレクタ61から構成さ
れる。入力セレクタ61は自PEおよび隣接PEのメモ
リ11のデータ出力から1つを選択し出力する。入力セ
レクタ61の出力は遅延器63を通る経路と遅延器63
を通らない経路の2つの経路に分かれる。遅延セレクタ
64では上記の2つの経路から1つを選択し、演算器6
0へ入力する。遅延器63の遅延量は図4に示した内側
のPEと両端のPEとの動作時間の差に等しい。演算器
60では遅延セレクタ64の出力を受け取り演算を行な
い、演算結果を出力する。
【0053】演算器60および入力セレクタ61の制御
信号は演算部制御信号バス52で与えられる。また遅延
セレクタ64の選択信号は、命令制御部43からの遅延
セレクタセレクト信号1バス54、および遅延セレクタ
セレクト信号2バス55で与えられる。続いて本実施形
態の動作を説明する。複数の並列処理プロセッサ104
が接続されている状態で、隣接PEのメモリ11にアク
セスするような命令が発生した場合には、両端のPEで
プロセッサ間転送による遅延が発生する。このような場
合には遅延セレクタ64で遅延器63を通る経路を選択
することで内側のPE間転送バス30を遅延させて、全
PEの同期をとることができる。
【0054】また並列処理プロセッサ104が1つの場
合、あるいは隣接PEのメモリ11にアクセスしない命
令の場合には、遅延セレクタ64で遅延器63を通らな
い経路を選択することで全てのPEが遅延なしで動作で
きる。図4に本実施形態における動作タイミングを示
す。図4は実施の形態2において説明しており、詳細は
省略する。演算部23内にラッチがないために動作ステ
ップは、メモリ11からのデータ読み込み&演算のステ
ップと、メモリ11へのデータ書き込みのステップの2
ステップで構成されている。図4ではプロセッサ間転送
バス32で1クロック分の遅延がある場合を表してい
る。この場合内側のPEと両端のPEの間にはちょうど
1クロック分の遅延が生じる。そこで内側のPEで遅延
セレクタ64で遅延器63を通る経路を選択すること
で、PE間転送バス30に遅延器63が挿入され、図4
(a)、(c)に示したように両端のPEと内側のPEの
タイミングを合わせることができる。
【0055】また複数の並列処理プロセッサ104を使
用しない場合あるいは隣接PEのメモリ11にアクセス
しない命令の場合には、内側のPEで遅延器63を通ら
ない経路を選択することで、遅延のない高速なPE間転
送を実現する。本実施例の命令制御部43は従来の並列
処理プロセッサ1の命令制御部40とは異なり、ライト
イネーブル信号を遅延し、かつ2本の遅延セレクタセレ
クト信号を出力することができる。命令制御部43は複
数の並列処理プロセッサ104が接続されている状態で
隣接PEにアクセスする命令の場合には遅延させたライ
トイネーブル信号を送出し、それ以外の場合には通常の
タイミング(c)のライトイネーブル信号を送出する。
ここで、遅延セレクト演算部23は演算部に対応し、命
令制御部43は制御手段に対応する。
【0056】このような構成にすることで複数の並列処
理プロセッサ104を接続して使用した場合でも、両端
のPEと内側のPEとの間の同期を確実にとることがで
き、プロセッサ間転送で生じる遅延の影響を受けずに、
並列処理プロセッサ101内のメモリ11へのデータ書
き込みが可能となる。また、遅延器63を介して出力す
るか否かを遅延セレクタ64が選択し、演算器60へデ
ータを出力するので、複数の並列処理プロセッサ104
を使用しない場合等には、遅延のない高速なデータ転送
を実現することができる。また演算器60と入力セレク
タ61の間に遅延器63を備えているために、入力セレ
クタ61を経由した全ての信号に対して遅延をかけるこ
とができ、隣接PE間以外のPE間転送バスを備えてい
る場合にも、遅延の影響を受けずに並列処理プロセッサ
104を動作させることができる。
【0057】実施の形態5.本発明の第5の実施形態を
図8に基づき説明する。図8において、44は内側のP
Eのメモリに対するアドレスおよびメモリ制御信号と、
両端のPEに対するアドレスおよびメモリ制御信号の、
2系統のアドレスおよびメモリ制御信号を出力する命令
制御部を使用する。そのため内側のPEのメモリと両端
のPEのメモリを異なったタイミングで動作させること
ができる。このように接続することで両端のPEに対す
るアドレスおよびメモリ制御信号を選択的に遅延させる
ことが可能となり、プロセッサ間転送による遅延が発生
した場合にも対応する。51は遅延されたアドレスバス
およびメモリ制御信号バスである。
【0058】図8におけるプロセッサ部10、入力シフ
トレジスタ12および出力シフトレジスタ15は図1と
同様の動作をする。入力シフトレジスタ12、プロセッ
サ部10および出力シフトレジスタ15はパイプライン
動作をする。プロセッサ部10では、SIMD制御によ
るN個の並列処理が行なわれる。他の構成は実施の形態
1と同様であり、説明を省略する。
【0059】次に図9に本実施形態のPEでの動作タイ
ミングを示す。(a)は両端のPEがプロセッサ間転送
バス32のデータを処理する場合の操作タイミング、
(b)は、内側のPEが通常動作する場合の動作タイミ
ング、(c)は、内側のPEが両端のPEと異なるタイ
ミングで動作する場合の動作タイミングである。ラッチ
をもたない演算部21内にラッチがないために動作ステ
ップは、メモリからのデータ読み込み&演算のステップ
と、メモリへのデータ書き込みのステップの2ステップ
で構成されている。
【0060】図9(a)および(b)に示したように両
端のPEと内側のPEのデータ書き込みタイミングは異
なっている。そこで、命令制御部44が両端のPEのメ
モリ11へのアドレスおよびメモリ制御信号と内側のP
Eのメモリへのアドレスおよびメモリ制御信号を別々に
持つことで、それぞれに対して異なるタイミングで動作
させることが可能になる。両端のPEがプロセッサ間転
送バス32のデータを処理する場合には、両端のPEは
(a)のタイミングで動作し、内側のPEは(c)のタ
イミングで動作する。両端のPEがPE内転送バス31
のデータを処理する場合等、両端のPEで遅延が発生し
ない場合は、PEは全て(b)のタイミングで動作す
る。このように、両端のPEと内側のPEを異なるタイ
ミングで動作させる。ここで、命令制御部44は制御手
段に対応する。
【0061】このような構成にすることで内側のPEと
両端のPEの動作タイミングが異なる場合でも、それぞ
れに対応したアドレスおよびメモリ制御信号を命令制御
部44から送出することが可能である。両端のPEで
は、プロセッサ間転送バス32により生ずる遅延に応じ
て、ラッチをもたない演算部21からメモリ11へのデ
ータ出力のタイミングを変化させることにより、両端の
PEで遅延が発生した場合でも正確にデータ処理を行う
ことが可能となる。
【0062】また並列処理プロセッサを単独で使用する
場合、自PE内のメモリにアクセスする場合等、両端の
PEで遅延が発生しない場合には、全てのPEに対して
同じ図4(b)のタイミングのアドレスおよびメモリ制
御信号を送出することが可能であり、プロセッサ部10
に余分な回路を設けずに、遅延が発生する場合と遅延が
発生しない場合の両方に効率良く対応することが可能な
並列処理プロセッサ105を実現することが可能であ
る。さらに、書き込みステップが一定長である必要があ
る場合、遅延器等の余分な回路を設けずにデータの処理
が可能となる。
【0063】実施の形態6.本実施の形態においては、
実施の形態1において、演算部がラッチを有する場合を
説明する。本発明の第6の実施形態を図10に基づき説
明する。図10において、45はライトイネーブル信号
およびラッチ信号を遅延する命令制御部である。入力シ
フトレジスタ12、プロセッサ部10および出力シフト
レジスタ15はパイプライン動作をし、プロセッサ部1
0ではSIMD制御によるN個の並列処理が行なわれ
る。また演算部にはラッチを持った演算部22が用いら
れている。他の構成は実施の形態1と同様であり、説明
を省略する。
【0064】図23はラッチを持った演算部22の構成
である。ラッチを持った演算部22は演算器60、入力
セレクタ61およびラッチ62から構成される。自PE
内のメモリ11および隣接PE内のメモリ11のデータ
出力は入力セレクタ61に入力される。入力セレクタ6
1で選択されたメモリ11のデータは一旦、ラッチ62
に記憶される。続いて演算器60はラッチ61の出力を
入力し、演算器60の演算出力が演算部22の出力とし
て出力される。演算器60、入力セレクタ61およびラ
ッチ62の動作は演算部制御信号で制御される。
【0065】本実施形態では命令制御部45からPEへ
送出されるライトイネーブル信号およびラッチ信号のタ
イミングが従来の並列処理プロセッサ1とは異なってい
る。本実施例の動作タイミングを図11に示す。(a)
は両端のPEがプロセッサ間転送バス32からデータを
入力する場合の動作タイミング、(b)は内側のPEが
通常動作する動作タイミング、(c)は制御信号で同期
をとる場合の内側のPEの動作タイミングである。演算
器22内にラッチ62を持っているために動作ステップ
は、メモリからのデータ読み込みのステップと、演算&
ラッチのステップと、メモリへのデータ書き込みステッ
プの3ステップで構成されている。
【0066】演算&ラッチのステップはラッチ信号によ
り、又メモリへのデータ書き込みステップはライトイネ
ーブル信号により制御される。このライトイネーブル信
号の入力により、データの書き込みが開始される。図1
1ではプロセッサ間転送バス32で並列処理プロセッサ
106の外部から外部データを入力する場合、1クロッ
ク分の遅延がある場合を表している。この場合内側のP
Eと両端のPEの間にはちょうど1クロック分の遅延が
生じる。複数の並列処理プロセッサ106が接続されて
いる状態で、隣接PEのメモリ11にアクセスするよう
な命令が発生した場合には、(a)、(b)に示すよう
に、両端のPEでプロセッサ間転送による遅延が発生す
る。
【0067】そこでライトイネーブル信号およびラッチ
信号を両端のPEでの遅延量だけ遅延させて送出するこ
とにより内側のPEの動作タイミングを(c)のように
し、両端のPEと内側のPE間の同期をとる。また並列
処理プロセッサ106が1つの場合、あるいは隣接PE
のメモリ11にアクセスしない命令の場合には、両端の
PEで遅延が発生しないためにPEのライトイネーブル
信号およびラッチ信号を遅延する必要はなく、(b)に
示すように、通常動作時のタイミングでライトイネーブ
ル信号およびラッチ信号を送り出せばよい。
【0068】命令制御部45は従来の並列処理プロセッ
サ1の命令制御部40とは異なり、ライトイネーブル信
号およびラッチ信号を遅延する命令制御部45となって
いる。命令制御部45は複数の並列処理プロセッサ10
6が接続されている状態で隣接PEにアクセスする命令
の場合には遅延させたライトイネーブル信号およびラッ
チ信号を送出し、それ以外の場合には通常のタイミング
のライトイネーブル信号およびラッチ信号を送出する。
【0069】ここで、命令制御部45は制御手段に対応
し、ラッチを持った演算部22は演算部に対応する。こ
のように、命令制御部45はプロセッサ間転送バス32
により生ずる遅延に応じて、ラッチを持った演算部22
がメモリ11にデータを出力するタイミングを変化させ
て制御を行うので、複数の並列処理プロセッサ106を
接続して使用した場合に、プロセッサ間転送で生じる遅
延の影響を受けずに並列処理プロセッサ106内のメモ
リ11へのデータ書き込みおよび演算部22の制御を実
現できる。また各PE毎に余分な付加回路を必要としな
いため、回路規模が低減できる。
【0070】実施の形態7.本実施の形態は、実施の形
態2において演算部がラッチを有する場合である。本発
明の第7の実施形態を図12に基づき説明する。図12
ではPEの数をN個とし、本発明の特徴的部分であるP
E間転送バス30中の遅延器70とその動作について説
明する。図12中の遅延器70以外の部分は図10の構
成と同様である。遅延器70はPE間転送バス30中に
配置してある。そのため各PEが隣接PEのメモリ11
にアクセスする場合には遅延器70により常に遅延が発
生するようになっている。この遅延器70の遅延量は図
4に示した内側のPEと両端のPEとの動作時間の差に
等しい。
【0071】図13に本実施形態を使用した場合の動作
タイミングを示す。(a)は両端のPEがプロセッサ間
転送バス32からデータを入力する場合の動作タイミン
グ、(b)は内側のPEが通常動作する動作タイミン
グ、(c)は制御信号で両端のPEと同期をとる場合の
内側のPEの動作タイミングである。演算部22内にラ
ッチ62を持っているために、動作ステップは、メモリ
からのデータ読み込みのステップと、演算&ラッチのス
テップと、メモリへのデータ書き込みのステップの3ス
テップで構成されている。図13ではプロセッサ間転送
バス32で1クロック分の遅延がある場合を表してい
る。(a)、(b)に示すように、この場合内側のPEと
両端のPEの間にはちょうど1クロック分の遅延が生じ
る。
【0072】そこで内側のPEのPE間転送バス30に
遅延器70を挿入することで遅延が生じ、(c)のよう
に両端のPEと内側のPEのタイミングを合わせること
ができる。つまり、内側のPEのタイミングに遅延を生
じさせて、ラッチ信号とライトイネーブル信号を遅延分
遅れて送信することで、内側のPE(c)と両端のPE
(a)を同期させる。本実施例の命令制御部45は実施
の形態1と同様に、ライトイネーブル信号およびラッチ
信号を遅延することができる。命令制御部45は複数の
並列処理プロセッサ107が接続されている状態で隣接
PEにアクセスする命令の場合には遅延させたライトイ
ネーブル信号およびラッチ信号を送出し、それ以外の場
合には通常のタイミングのライトイネーブル信号および
ラッチ信号を送出する。
【0073】このような構成にすることで複数の並列処
理プロセッサ107を接続して使用した場合に、プロセ
ッサ間転送で生じる遅延の影響を受けずに並列処理プロ
セッサ107内のメモリ11へのデータ書き込みおよび
演算部22の制御を実現できる。また、命令制御部45
は隣接PEへアクセスする場合とアクセスしない場合と
で制御信号のタイミングを変化させるので、効率的なデ
ータ処理が可能となる。さらに、各PEのデータ書き込
みサイクルが一定長である必要がある場合でも、プロセ
ッサ間転送で生じる遅延の影響を受けずに並列処理プロ
セッサ107を動作させることができる。
【0074】実施の形態8.本実施の形態は、実施の形
態3において演算部がラッチを有する場合である。本発
明の第8の実施形態を図14に基づき説明する。図14
ではPEの数をN個とし、本発明の特徴的部分であるP
E間転送バス30中の遅延器70および遅延セレクタ7
1とその動作について説明する。図14中の遅延器70
および遅延セレクタ71、ライトイネーブル信号および
ラッチ信号を遅延し、かつ遅延セレクタセレクト信号を
出力する命令制御部46以外の部分は図10に示したプ
ロセッサ部10と同じである。
【0075】動作を説明する。遅延器70および遅延セ
レクタ71は内側のPE、つまり両端以外のPEのPE
間転送バス30中に配置してある。本実施例では各メモ
リ11から出力されたPE間転送バス30を2つに分岐
し、遅延器70を経由する経路と遅延器70を経由しな
い経路の2つの経路に分けている。2つの経路は共に遅
延セレクタ71に入力され、2つの経路のいずれか一方
を遅延セレクタ71の出力として隣接PEへ出力する。
【0076】遅延セレクタ71が遅延器70を通る経路
を選んだ場合は、自PEのメモリ11のデータは遅延さ
れて隣接PEへ転送される。また遅延セレクタ71が遅
延器70を通らない経路を選んだ場合は、自PEのメモ
リ11のデータは遅延なしで隣接PEへ転送される。遅
延器70の遅延量は図4に示した内側のPEと両端のP
Eとの動作時間の差に等しい。遅延セレクタ71のセレ
クト信号は命令制御部46から出力される。命令制御部
46には従来の並列処理プロセッサ1の命令制御部40
とは異なる命令制御部46を使用している。この命令制
御部46については後述する。
【0077】図13に本実施形態のPEの動作タイミン
グを示す。図13は実施の形態7において説明してお
り、詳細を省略する。演算部22内にラッチ62を持っ
ているために動作ステップは、メモリ11からのデータ
読み込みのステップと、演算&ラッチのステップと、メ
モリ11へのデータ書き込みのステップの3ステップで
構成されている。図13ではプロセッサ間転送バス32
で1クロック分の遅延がある場合を表している。この場
合内側のPEと両端のPEの間にはちょうど1クロック
分の遅延が生じる。そこで内側のPEの遅延セレクタ7
1で遅延器70を通る経路を選択することで、PE間転
送バス30に遅延器70が挿入され、(a)、(c)の
ように両端のPEと内側のPEのタイミングを合わせる
ことができる。
【0078】また複数の並列処理プロセッサ108を使
用しない場合あるいは隣接PEのメモリ11にアクセス
しない命令の場合には、内側のPEで遅延器70を通ら
ない経路を選択することで、遅延のない高速なPE間転
送を実現することができる。本実施例の命令制御部46
は従来の並列処理プロセッサ1の命令制御部40とは異
なり、ライトイネーブル信号およびラッチ信号を遅延
し、かつ遅延セレクタセレクト信号を出力する命令制御
部46となっている。命令制御部46は複数の並列処理
プロセッサ108が接続されている状態で隣接PEにア
クセスする命令の場合等、遅延が招ずる場合には遅延さ
せたライトイネーブル信号およびラッチ信号を送出し、
それ以外の場合には通常のタイミングのライトイネーブ
ル信号およびラッチ信号を送出する。ここで、命令制御
部46は制御手段に対応する。
【0079】このような構成にすることにより、実施の
形態7の効果に加え、遅延器70を使用しない経路も用
意してあるために、複数の並列処理プロセッサ108を
使用しない場合あるいは隣接PEのメモリ11にアクセ
スしない命令の場合には遅延のない高速なPE間転送を
実現することができる。 実施の形態9.本実施の形態は、実施の形態4において
演算部がラッチを有する場合である。本発明の第9の実
施形態を図15に基づき説明する。図15ではPEの数
をN個とし、本発明の特徴的部分であるラッチを持った
遅延セレクト演算部24とその動作について説明する。
【0080】図15において、ラッチを持った遅延セレ
クト演算部24と、ライトイネーブル信号およびラッチ
信号を遅延しかつ2本の遅延セレクタセレクト信号を出
力する命令制御部47以外の部分は図1と同様の動作を
する。入力シフトレジスタ12、プロセッサ部10およ
び出力シフトレジスタ15はパイプライン動作をし、プ
ロセッサ部10ではSIMD制御によるN個の並列処理
が行なわれる。本実施例では演算部がラッチを持った遅
延セレクト演算部24となっている。また命令制御部は
ライトイネーブル信号およびラッチ信号を遅延し、かつ
2本の遅延セレクタセレクト信号を出力する命令制御部
47である。
【0081】図16に本実の形態におけるラッチを持っ
た遅延セレクト演算部24の構成を示す。ラッチを持っ
た遅延セレクト演算部24は演算器60、ラッチ62、
遅延セレクタ64、遅延器63および入力セレクタ61
から構成される。入力セレクタ61は自PEおよび隣接
PEのメモリ11のデータ出力から1つを選択し出力す
る。入力セレクタ61の出力は遅延器62を通る経路と
遅延器62を通らない経路の2つの経路に分かれる。遅
延セレクタ63では上記の2つの経路から1つを選択
し、演算器60の入力へと出力する。遅延器63の遅延
量は図13に示した内側のPEと両端のPEとの動作時
間の差に等しい。遅延セレクタ64の出力はラッチ62
で一旦ラッチされる。演算器60ではラッチ62の出力
を受け取り演算を行ない、演算結果を出力する。
【0082】演算器60、ラッチ62および入力セレク
タ61の制御信号は命令制御部47から演算部制御信号
バス52で与えられる。また遅延セレクタ64の選択信
号は命令制御部47からの遅延セレクタセレクト信号1
バス54および遅延セレクタセレクト信号2バス55で
与えられる。続いて本実形態の動作を説明する。複数の
並列処理プロセッサ109が接続されている状態で、隣
接PEのメモリ11にアクセスするような命令が発生し
た場合には、両端のPEでプロセッサ間転送による遅延
が発生する。このような場合には遅延セレクタ64で遅
延器62を通る経路を選択することで内側のPE間転送
バス30を遅延させて、全PEの同期をとることができ
る。
【0083】また並列処理プロセッサ109が1つの場
合、あるいは隣接PEのメモリ11にアクセスしない命
令の場合には、遅延セレクタ64で遅延器62を通らな
い経路を選択することで全てのPEが遅延なしで動作で
きる。
【0084】図13に本実施形態を使用した場合の動作
タイミングを示す。図13については、実施の形態7に
おいて説明しており、詳細を省略する。演算部24内に
ラッチ62を持っているために動作ステップは、メモリ
11からのデータ読み込みのステップと、演算&ラッチ
のステップと、メモリ11へのデータ書き込みのステッ
プの3ステップで構成されている。図13ではプロセッ
サ間転送バス32で1クロック分の遅延がある場合を表
している。この場合、(a)、(b)に示すように、内側
のPEと両端のPEの間にはちょうど1クロック分の遅
延が生じる。内側のPEで遅延セレクタ64で遅延器6
3を通る経路を選択することで、PE間転送バス30に
遅延器63が挿入され、内側のPEの動作タイミングは
(c)のようになる。これにより、(a)、(c)に示
したように両端のPEと内側のPEのタイミングを合わ
せることができる。
【0085】また複数の並列処理プロセッサ109を使
用しない場合あるいは隣接PEのメモリ11にアクセス
しない命令の場合には、内側のPEで遅延器63を通ら
ない経路を選択することで、遅延のない高速なPE間転
送を実現することができる。この場合、動作タイミング
は全PEで(b)のようになり同期して動作する。本実
施例の命令制御部47はライトイネーブル信号およびラ
ッチ信号を遅延し、かつ2本の遅延セレクタセレクト信
号を出力する命令制御部47となっている。命令制御部
47は複数の並列処理プロセッサ109が接続されてい
る状態で隣接PEにアクセスする命令の場合には遅延さ
せたライトイネーブル信号およびラッチ信号を送出し、
それ以外の場合には通常のタイミングのライトイネーブ
ル信号およびラッチ信号を送出する。ここで、命令制御
部47は制御手段に対応する。
【0086】このような構成にすることで複数の並列処
理プロセッサ109を接続して使用した場合に、プロセ
ッサ間転送で生じる遅延の影響を受けずに並列処理プロ
セッサ109内のメモリ11へのデータ書き込みおよび
演算部24の制御を実現できる。また遅延器63を使用
しない経路も用意してあるために、複数の並列処理プロ
セッサ109を使用しない場合には遅延のない高速なP
E間転送を実現することができる。また演算器60と入
力セレクタ61の間に遅延器63を備えているために、
入力セレクタ61を経由した全ての信号に対して遅延を
かけることができ、隣接PE間以外のPE間転送バスを
備えている場合にも、遅延の影響を受けずに並列処理プ
ロセッサ109を動作させることができる。
【0087】実施の形態10.本実施の形態は、実施の
形態5において演算部がラッチを有する場合である。本
発明の第10の実施形態を図17に基づき説明する。図
17ではPEの数をN個とし、本発明の構成とその動作
について説明する。図17中のプロセッサ部10、入力
シフトレジスタ12および出力シフトレジスタ15は図
1と同様の動作をする。入力シフトレジスタ12、プロ
セッサ部10および出力シフトレジスタ15はパイプラ
イン動作をする。プロセッサ部10では演算部22は同
期して動作し、SIMD制御によるN個の並列処理が行
なわれる。また演算部にはラッチを持った演算部22が
用いられている。
【0088】本実施形態では、内側のPEのメモリに対
する演算部制御信号、アドレスおよびメモリ制御信号と
両端のPEに対する演算部制御信号、アドレスおよびメ
モリ制御信号の、2系統の演算部制御信号、アドレスお
よびメモリ制御信号を出力する命令制御部48を有す
る。そのため内側のPEと両端のPEを異なったタイミ
ングで動作させることができる。このように接続するこ
とで、内側のPEとは別に、両端のPEに対する演算部
制御信号、アドレスおよびメモリ制御信号を選択的に遅
延させることが可能となり、プロセッサ間転送による遅
延が発生した場合にも対応することができる。
【0089】次に図18に本実施形態のPEでの動作タ
イミングを示す。(a)は両端のPEがプロセッサ間転
送バス32のデータを処理する場合の操作タイミング、
(b)は、内側のPEが通常動作する場合の動作タイミ
ング、(c)は、内側のPEが両端のPEと異なるタイ
ミングで動作する場合の動作タイミングである。演算部
22内にラッチを持っているために動作ステップはメモ
リ11からのデータ読み込みのステップと、演算&ラッ
チのステップと、メモリへのデータ書き込みのステップ
の3ステップで構成されている。図18(a)および
(b)に示したように、両端のPEと内側のPEのラッ
チタイミングとデータ書き込みタイミングは異なってい
る。そこで両端のPEへの演算部制御信号、アドレスお
よびメモリ制御信号と内側のPEへの演算部制御信号、
アドレスおよびメモリ制御信号を別々に持つことで、そ
れぞれに対して異なるタイミングで動作させることが可
能になる。
【0090】両端のPEがプロセッサ間転送バス32の
データを処理する場合には、両端のPEは(a)のタイ
ミングで動作し、内側のPEは(c)のタイミングで動
作する。この時、両端のPEと内側のPEに対するラッ
チ信号とライトイネーブル信号のタイミングは異なるも
のとなっている。両端のPEがPE内転送バス31のデ
ータを処理する場合等、両端のPEで遅延が発生した場
合は、PEは全て(b)のタイミングで動作する。この
ように、両端のPEと内側のPEを異なるタイミングで
動作させる。ここで、命令制御部48は制御手段に対応
する。
【0091】このような構成にすることで、内側のPE
と両端のPEの動作タイミングが異なる場合でも、それ
ぞれに対応した演算部制御信号、アドレスおよびメモリ
制御信号を命令制御部48から送出することが可能であ
る。これにより、両端のPEで遅延が発生した場合でも
正確にデータ処理を行うことが可能となる。また両端の
PEで遅延が発生しない場合には、全てのPEに対して
同じタイミングの演算部制御信号、アドレスおよびメモ
リ制御信号を送出することが可能であり、プロセッサ部
10に余分な回路を設けずに遅延が発生する場合と遅延
が発生しない場合の両方に効率良く対応することが可能
な並列処理プロセッサ110を実現できる。さらに、書
き込みステップが一定長である必要がある場合、遅延器
等の余分な回路を設けずにデータの処理が可能となる。
【0092】
【発明の効果】第1の発明に係る並列処理プロセッサ
は、第1のプロセッサエレメントと第2のプロセッサエ
レメントを用いて、入力されたシリアルデータを並列処
理する並列処理プロセッサにおいて、前記並列処理プロ
セッサは、前記第1のプロセッサエレメントの処理を制
御する制御手段を有し、前記第1のプロセッサエレメン
トは第1の演算部と第1のメモリを有し、前記第2のプ
ロセッサエレメントは第2の演算部と第2のメモリを有
し、前記第1の演算部は、前記並列処理プロセッサの外
部から入力される外部データを演算して第1の演算デー
タを生成して出力し、前記第2の演算部は、前記第1の
メモリに記憶された第1のメモリデータを演算して第2
の演算データを生成して出力し、前記制御手段は、前記
第1のメモリデータが前記第2の演算部に入力される場
合に比較して、前記外部データが前記第1の演算部に入
力される場合に生ずる遅延に応じて、前記第1演算部が
前記第1の演算データを出力するタイミングを変化させ
ることにより、前記第1のプロセッサエレメントによる
データ処理を制御することを特徴とするものであるの
で、効率的にデータ処理を行うことが可能となる。
【0093】第2の発明に係る並列処理プロセッサは、
第1の発明に係る前記並列処理プロセッサにおいて、遅
延器を有し、前記遅延器は、前記外部データが前記第1
の演算部に入力される場合に生ずる前記遅延に応じ、前
記第1のメモリデータを遅延させて前記第2の演算部に
出力することを特徴とするものであるので、効率的にデ
ータ処理を行うことが可能となる。
【0094】第3の発明に係る並列処理プロセッサは、
第2の発明に係る前記並列処理プロセッサにおいて、前
記第1のメモリから出力されるメモリ出力データを前記
遅延器を介して前記第2の演算部に出力するか否かを決
定する遅延セレクタを有することを特徴とするものであ
るので、第2の発明が奏する効果に加え、遅延が生じな
い場合により高速に処理を行うことが可能となる。
【0095】第4の発明に係る並列処理プロセッサは、
第1の発明に係る第2の演算部において、遅延器と遅延
セレクタと演算器を有し、前記遅延器は、前記外部デー
タが前記第1の演算部に入力される場合に生ずる前記遅
延に応じ、前記第2の演算部に入力された前記第1のメ
モリデータを遅延させて出力し、前記遅延セレクタは、
前記第2の演算部に入力された第1のメモリデータを前
記遅延器を介して前記演算器に出力するか否かを選択
し、前記演算器は前記遅延セレクタにより選択されて入
力された前記第1のメモリデータを演算処理して、前記
第2の演算データを出力することを特徴とするものであ
るので、第1の発明が奏する効果に加え、遅延が生じな
い場合により高速に処理を行うことが可能となる。
【0096】第5の発明に係る並列処理プロセッサは、
入力されたシリアルデータを並列処理する第1の並列処
理プロセッサ部と、入力されたシリアルデータを並列処
理する第2の並列処理プロセッサ部を用いて、入力され
たシリアルデータを並列処理する並列処理プロセッサに
おいて、前記第1の並列処理プロセッサ部は第1の演算
部と第1のメモリにより構成される第1のプロセッサエ
レメントと、第2の演算部と第2のメモリにより構成さ
れる第2のプロセッサエレメントと、前記第1のプロセ
ッサエレメントと第2のプロセッサエレメントによるデ
ータ処理を制御する第1の制御手段を有し、前記第2の
並列処理プロセッサ部は第3の演算部と第3のメモリに
より構成される第3のプロセッサエレメントと、前記第
3のプロセッサエレメントによるデータ処理を制御する
第2の制御手段を有し、前記第1の演算部は前記第3の
メモリに記憶された第3のメモリデータを演算して第1
の演算データを生成し、前記第2の演算部は前記第1の
メモリに記憶された第1のメモリデータを演算して第2
の演算データを生成し、前記第1の制御手段は、前記第
1のメモリデータが前記第2の演算部に入力される場合
に比較して、前記第3のメモリデータが前記第1の演算
部に入力される場合に生ずる遅延に応じて、前記第1の
演算部が前記第1の演算データを出力するタイミングを
変化させることにより、前記第1のプロセッサエレメン
トによるデータ処理を制御することを特徴とするもので
あるので、効率的にデータ処理を行うことが可能とな
る。
【0097】第6の発明に係る並列処理プロセッサは、
第5の発明に係る第1の並列処理プロセッサ部におい
て、遅延器を有し、前記遅延器は、前記第3のメモリデ
ータが前記第1の演算部に入力される場合に生ずる前記
遅延に応じ、前記第1のメモリデータを遅延させて前記
第2の演算部に出力することを特徴とするものであるの
で、効率的にデータ処理を行うことが可能となる。
【0098】第7の発明に係る並列処理プロセッサは、
第6の発明に係る第1の並列処理プロセッサ部におい
て、前記第1のメモリから出力される第1のメモリデー
タを前記遅延器を介して前記第2の演算部に出力するか
否かを決定する遅延セレクタを有することを特徴とする
ものであるので、第6の発明が奏する効果に加え、遅延
が生じない場合により高速に処理を行うことが可能とな
る。
【0099】第8の発明に係る並列処理プロセッサは、
第5の発明に係る第2の演算部において、遅延器と遅延
セレクタと演算器を有し、前記遅延器は、前記第3のメ
モリデータが前記第1の演算部に入力される場合に生ず
る前記遅延に応じ、前記第2の演算部に入力された前記
第1のメモリデータを遅延させて出力し、前記遅延セレ
クタは、前記第2の演算部に入力された前記第1のメモ
リデータを前記遅延器を介して前記演算器に出力するか
否かを選択し、前記演算器は前記遅延セレクタにより選
択されて入力された前記第1のメモリデータを演算処理
して、前記第2の演算データを出力することを特徴とす
るものであるので、第5の発明が奏する効果に加え、遅
延が生じない場合により高速に処理を行うことが可能と
なる。
【0100】第9の発明に係る並列処理方法は、シリア
ルデータを並列処理プロセッサにおいて並列処理する並
列処理方法であって、前記シリアルデータの一部である
第1の入力データを記憶する第1の記憶ステップと、前
記第1の記憶ステップにおいて記憶された第1の記憶デ
ータを演算処理して第1の演算データを生成し、出力す
る第1の演算処理ステップと前記並列処理プロセッサの
外部から入力される外部データを演算して第2の演算デ
ータを生成し、出力する第2の演算処理ステップと、前
記第1の演算処理ステップにおいて前記第1の記憶デー
タを入力する場合に比較して、前記第2の演算処理ステ
ップにおいて前記外部データが入力される場合に生ずる
遅延に応じて、前記前記第2の演算処理ステップにおい
て前記演算データを出力するタイミングを変化させるこ
とにより、前記第2の演算処理ステップを制御する制御
ステップと、を有することを特徴とするものであるの
で、効率的にデータ処理を行うことが可能となる。
【0101】
【図面の簡単な説明】
【図1】演算部にラッチを備えない並列処理プロセッサ
においてライトイネーブル信号をずらしてプロセッサ間
の同期をとる場合の動作タイミング図である。
【図2】演算部にラッチを備えず、かつライトイネーブ
ル信号をずらしてプロセッサ間の同期をとる並列処理プ
ロセッサのプロセッサ部および命令制御部の構成図であ
る。
【図3】演算部にラッチを備えず、かつPE間転送バス
に遅延器を備えた並列処理プロセッサのプロセッサ部お
よび命令制御部の構成図である。
【図4】演算部にラッチを備えない並列処理プロセッサ
においてPE間転送バスあるいは演算部に遅延器を挿入
した場合の動作タイミング図である。
【図5】演算部にラッチを備えず、かつPE間転送バス
に遅延器および遅延セレクタを備えた並列処理プロセッ
サのプロセッサ部および命令制御部の構成図である。
【図6】演算部にラッチを持たない遅延セレクト演算部
を備えた並列処理プロセッサのプロセッサ部および命令
制御部の構成図である。
【図7】ラッチ持たない遅延セレクト演算部の構成図で
ある。
【図8】演算部にラッチを備えず、かつ両端のPEと内
側のPEに異なるタイミングのライトイネーブル信号を
送ることでプロセッサ間の同期をとる並列処理プロセッ
サの動作タイミング図である。
【図9】演算部にラッチを備えず、かつ両端のPEと内
側のPEに異なるタイミングのライトイネーブル信号を
送ることでプロセッサ間の同期をとる並列処理プロセッ
サのプロセッサ部および命令制御部の構成図である。
【図10】演算部にラッチを備えた並列処理プロセッサ
においてライトイネーブル信号およびラッチ信号をずら
してプロセッサ間の同期をとる場合の動作タイミング図
である。
【図11】演算部にラッチを備え、かつライトイネーブ
ル信号およびラッチ信号をずらしてプロセッサ間の同期
をとる並列処理プロセッサのプロセッサ部および命令制
御部の構成図である。
【図12】演算部にラッチを備え、かつPE間転送バス
に遅延器を備えた並列処理プロセッサのプロセッサ部お
よび命令制御部の構成図である。
【図13】演算部にラッチを備えた並列処理プロセッサ
においてPE間転送バスあるいは演算部に遅延器を挿入
した場合の動作タイミング図である。
【図14】演算部にラッチを備え、かつPE間転送バス
に遅延器および遅延セレクタを備えた並列処理プロセッ
サのプロセッサ部および命令制御部の構成図である。
【図15】演算部にラッチを持った遅延セレクト演算部
を備えた並列処理プロセッサのプロセッサ部および命令
制御部の構成図である。
【図16】ラッチを持った遅延セレクト演算部の構成図
である。
【図17】演算部にラッチを備え、かつ両端のPEと内
側のPEに異なるタイミングのライトイネーブル信号を
送ることでプロセッサ間の同期をとる並列処理プロセッ
サの動作タイミング図である。
【図18】演算部にラッチを備え、かつ両端のPEと内
側のPEに異なるタイミングのライトイネーブル信号を
送ることでプロセッサ間の同期をとる並列処理プロセッ
サのプロセッサ部および命令制御部の構成図である。
【図19】従来の並列処理プロセッサの構成図である。
【図20】従来の並列処理プロセッサを複数接続した場
合の構成図である。
【図21】ラッチを備えない演算部の構成図である。
【図22】演算部にラッチを備えない並列処理プロセッ
サの動作タイミング図である。
【図23】ラッチを備えた演算部の構成図である。
【図24】演算部にラッチを備えた並列処理プロセッサ
の動作タイミング図である。
【図25】並列処理プロセッサを複数接続した場合の構
成図である。
【符号の説明】
1 従来の並列処理プロセッサ、10 プロセッサ部、
11 メモリ、12入力シフトレジスタ、13 外部デ
ータ入力バス、14 入力データ転送バス、15 出力
シフトレジスタ、16 外部データ出力バス、17 出
力データ転送バス、20 演算部、21 ラッチを持た
ない演算部、22 ラッチを持った演算部、23 ラッ
チを持たない遅延セレクト演算部、24 ラッチを持っ
た遅延セレクト演算部、30 PE間転送バス、31
PE内転送バス、32 プロセッサ間転送バス、40
命令制御部、41 ライトイネーブル信号を遅延する命
令制御部、42 ライトイネーブル信号を遅延し、かつ
遅延セレクタセレクト信号を出力するする命令制御部、
43 ライトイネーブル信号を遅延し、かつ2本の遅延
セレクタセレクト信号を出力するする命令制御部、44
通常と遅延の2系統のアドレスバスおよびメモリ制御
信号を出力する命令制御部、45 ライトイネーブル信
号およびラッチ信号を遅延する命令制御部、46 ライ
トイネーブル信号およびラッチ信号を遅延し、かつ遅延
セレクタセレクト信号を出力するする命令制御部、47
ライトイネーブル信号およびラッチ信号を遅延し、か
つ2本の遅延セレクタセレクト信号を出力するする命令
制御部、48 通常と遅延の2系統の演算部制御信号、
アドレスバスおよびメモリ制御信号を出力する命令制御
部、50 アドレスバスおよびメモリ制御信号バス、5
1 遅延されたアドレスバスおよびメモリ制御信号バ
ス、52 演算部制御信号バス、53 遅延された演算
部制御信号バス、54 遅延セレクタセレクト信号1バ
ス、55 遅延セレクタセレクト信号2バス、60 演
算器、61 入力セレクタ、62 ラッチ、63 遅延
器、64 遅延セレクタ、70 遅延器、71 遅延セ
レクタ101 並列プロセッサ、102 並列プロセッ
サ、103 並列プロセッサ、104 並列プロセッ
サ、105 並列プロセッサ、106 並列プロセッ
サ、107 並列プロセッサ108 並列プロセッサ、
109 並列プロセッサ、110並列プロセッサ

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】第1のプロセッサエレメントと第2のプロ
    セッサエレメントを用いて、入力されたシリアルデータ
    を並列処理する並列処理プロセッサにおいて、前記並列
    処理プロセッサは、前記第1のプロセッサエレメントの
    処理を制御する制御手段を有し、前記第1のプロセッサ
    エレメントは第1の演算部と第1のメモリを有し、前記
    第2のプロセッサエレメントは第2の演算部と第2のメ
    モリを有し、前記第1の演算部は、前記並列処理プロセ
    ッサの外部から入力される外部データを演算して第1の
    演算データを生成して出力し、前記第2の演算部は、前
    記第1のメモリに記憶された第1のメモリデータを演算
    して第2の演算データを生成して出力し、前記制御手段
    は、前記第1のメモリデータが前記第2の演算部に入力
    される場合に比較して、前記外部データが前記第1の演
    算部に入力される場合に生ずる遅延に応じて、前記第1
    演算部が前記第1の演算データを出力するタイミングを
    変化させることにより、前記第1のプロセッサエレメン
    トによるデータ処理を制御することを特徴とする並列処
    理プロセッサ。
  2. 【請求項2】前記並列処理プロセッサは遅延器を有し、
    前記遅延器は、前記外部データが前記第1の演算部に入
    力される場合に生ずる前記遅延に応じ、前記第1のメモ
    リデータを遅延させて前記第2の演算部に出力すること
    を特徴とする請求項1記載の並列処理プロセッサ。
  3. 【請求項3】前記並列処理プロセッサは、前記第1のメ
    モリから出力されるメモリ出力データを前記遅延器を介
    して前記第2の演算部に出力するか否かを決定する遅延
    セレクタを有することを特徴とする請求項2記載の並列
    処理プロセッサ。
  4. 【請求項4】前記第2の演算部は遅延器と遅延セレクタ
    と演算器を有し、前記遅延器は、前記外部データが前記
    第1の演算部に入力される場合に生ずる前記遅延に応
    じ、前記第2の演算部に入力された前記第1のメモリデ
    ータを遅延させて出力し、前記遅延セレクタは、前記第
    2の演算部に入力された第1のメモリデータを前記遅延
    器を介して前記演算器に出力するか否かを選択し、前記
    演算器は前記遅延セレクタにより選択されて入力された
    前記第1のメモリデータを演算処理して、前記第2の演
    算データを出力することを特徴とする請求項1記載の並
    列処理プロセッサ。
  5. 【請求項5】入力されたシリアルデータを並列処理する
    第1の並列処理プロセッサ部と、入力されたシリアルデ
    ータを並列処理する第2の並列処理プロセッサ部を用い
    て、入力されたシリアルデータを並列処理する並列処理
    プロセッサにおいて、前記第1の並列処理プロセッサ部
    は第1の演算部と第1のメモリにより構成される第1の
    プロセッサエレメントと、第2の演算部と第2のメモリ
    により構成される第2のプロセッサエレメントと、前記
    第1のプロセッサエレメントと第2のプロセッサエレメ
    ントによるデータ処理を制御する第1の制御手段を有
    し、前記第2の並列処理プロセッサ部は第3の演算部と
    第3のメモリにより構成される第3のプロセッサエレメ
    ントと、前記第3のプロセッサエレメントによるデータ
    処理を制御する第2の制御手段を有し、前記第1の演算
    部は前記第3のメモリに記憶された第3のメモリデータ
    を演算して第1の演算データを生成し、前記第2の演算
    部は前記第1のメモリに記憶された第1のメモリデータ
    を演算して第2の演算データを生成し、前記第1の制御
    手段は、前記第1のメモリデータが前記第2の演算部に
    入力される場合に比較して、前記第3のメモリデータが
    前記第1の演算部に入力される場合に生ずる遅延に応じ
    て、前記第1の演算部が前記第1の演算データを出力す
    るタイミングを変化させることにより、前記第1のプロ
    セッサエレメントによるデータ処理を制御することを特
    徴とする並列処理プロセッサ。
  6. 【請求項6】前記第1の並列処理プロセッサ部は遅延器
    を有し、前記遅延器は、前記第3のメモリデータが前記
    第1の演算部に入力される場合に生ずる前記遅延に応
    じ、前記第1のメモリデータを遅延させて前記第2の演
    算部に出力することを特徴とする請求項5記載の並列処
    理プロセッサ。
  7. 【請求項7】前記第1の並列処理プロセッサ部は、前記
    第1のメモリから出力される第1のメモリデータを前記
    遅延器を介して前記第2の演算部に出力するか否かを決
    定する遅延セレクタを有することを特徴とする請求項6
    記載の並列処理プロセッサ。
  8. 【請求項8】前記第2の演算部は遅延器と遅延セレクタ
    と演算器を有し、前記遅延器は、前記第3のメモリデー
    タが前記第1の演算部に入力される場合に生ずる前記遅
    延に応じ、前記第2の演算部に入力された前記第1のメ
    モリデータを遅延させて出力し、前記遅延セレクタは、
    前記第2の演算部に入力された前記第1のメモリデータ
    を前記遅延器を介して前記演算器に出力するか否かを選
    択し、前記演算器は前記遅延セレクタにより選択されて
    入力された前記第1のメモリデータを演算処理して、前
    記第2の演算データを出力することを特徴とする請求項
    5記載の並列処理プロセッサ。
  9. 【請求項9】シリアルデータを並列処理プロセッサにお
    いて並列処理する並列処理方法であって、前記シリアル
    データの一部である第1の入力データを記憶する第1の
    記憶ステップと、前記第1の記憶ステップにおいて記憶
    された第1の記憶データを演算処理して第1の演算デー
    タを生成し、出力する第1の演算処理ステップと前記並
    列処理プロセッサの外部から入力される外部データを演
    算して第2の演算データを生成し、出力する第2の演算
    処理ステップと、前記第1の演算処理ステップにおいて
    前記第1の記憶データを入力する場合に比較して、前記
    第2の演算処理ステップにおいて前記外部データが入力
    される場合に生ずる遅延に応じて、前記前記第2の演算
    処理ステップにおいて前記演算データを出力するタイミ
    ングを変化させることにより、前記第2の演算処理ステ
    ップを制御する制御ステップと、を有することを特徴と
    する並列処理方法。
JP10161671A 1998-06-10 1998-06-10 並列処理プロセッサ及び並列処理方法 Pending JPH11353289A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10161671A JPH11353289A (ja) 1998-06-10 1998-06-10 並列処理プロセッサ及び並列処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10161671A JPH11353289A (ja) 1998-06-10 1998-06-10 並列処理プロセッサ及び並列処理方法

Publications (1)

Publication Number Publication Date
JPH11353289A true JPH11353289A (ja) 1999-12-24

Family

ID=15739638

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10161671A Pending JPH11353289A (ja) 1998-06-10 1998-06-10 並列処理プロセッサ及び並列処理方法

Country Status (1)

Country Link
JP (1) JPH11353289A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002032749A (ja) * 2000-07-17 2002-01-31 Texas Instr Japan Ltd 画像処理装置
JP2008512762A (ja) * 2004-09-09 2008-04-24 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Simdプロセッサアーキテクチャにおける相互接続
US8036266B2 (en) 2006-12-26 2011-10-11 Fujitsu Limited Encoding/decoding system, encoding system, and decoding system
JP2014222437A (ja) * 2013-05-14 2014-11-27 株式会社リコー Simd型プロセッサ

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002032749A (ja) * 2000-07-17 2002-01-31 Texas Instr Japan Ltd 画像処理装置
JP4540191B2 (ja) * 2000-07-17 2010-09-08 日本テキサス・インスツルメンツ株式会社 画像処理装置
JP2008512762A (ja) * 2004-09-09 2008-04-24 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Simdプロセッサアーキテクチャにおける相互接続
US8036266B2 (en) 2006-12-26 2011-10-11 Fujitsu Limited Encoding/decoding system, encoding system, and decoding system
JP2014222437A (ja) * 2013-05-14 2014-11-27 株式会社リコー Simd型プロセッサ

Similar Documents

Publication Publication Date Title
US4979096A (en) Multiprocessor system
JP2000148080A (ja) マルチディスプレイ装置の表示制御装置、表示装置及びマルチディスプレイ装置
KR100573256B1 (ko) 복수어드레스유지기억장치
JP3971535B2 (ja) Simd型プロセッサ
JP3000961B2 (ja) 半導体集積回路
US4837844A (en) Image processing apparatus
JPH11353289A (ja) 並列処理プロセッサ及び並列処理方法
KR20010006787A (ko) 데이터 처리 프로세서 및 시스템
JPH11272627A (ja) パイプライン型マルチプロセッサシステム
US8462167B2 (en) Memory access control circuit and image processing system
JPH10214221A (ja) 制御装置及びメモリシステム
JP3212634B2 (ja) 機能メモリ
JP2001134538A (ja) 信号処理装置
JP3078594B2 (ja) 画像記憶装置
EP0368587B1 (en) Vector processing apparatus
JP3950661B2 (ja) データ伝達装置
KR970008189B1 (ko) 메모리 공간 제어방법 및 메모리 장치
JPH1185673A (ja) 共有バスの制御方法とその装置
JP2569210B2 (ja) 伝播信号処理装置及びプロセッサシステム
JP4413905B2 (ja) Simd型プロセッサ
JP2001202351A (ja) Simd型プロセッサ
US7181292B2 (en) System control method, control processing system, and control processing apparatus
JPH05108586A (ja) 並列演算機構及び並列演算方法
JP2537830B2 (ja) 画像処理装置
JPH02112054A (ja) データ処理装置

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20040621