JPH11259436A - データ並列処理方法 - Google Patents

データ並列処理方法

Info

Publication number
JPH11259436A
JPH11259436A JP5829698A JP5829698A JPH11259436A JP H11259436 A JPH11259436 A JP H11259436A JP 5829698 A JP5829698 A JP 5829698A JP 5829698 A JP5829698 A JP 5829698A JP H11259436 A JPH11259436 A JP H11259436A
Authority
JP
Japan
Prior art keywords
data
processing
parallel
units
unit
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
JP5829698A
Other languages
English (en)
Inventor
Naoki Kasai
直樹 笠井
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.)
Toppan Inc
Original Assignee
Toppan Printing 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 Toppan Printing Co Ltd filed Critical Toppan Printing Co Ltd
Priority to JP5829698A priority Critical patent/JPH11259436A/ja
Publication of JPH11259436A publication Critical patent/JPH11259436A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】データ並列処理方式において従来の並列処理方
式によるデータ処理におけるデータ分割の制限の多さ及
びその並列処理方式を実現するためのハードウエアの汎
用性又は変更性の低さを改良することにある。 【解決手段】データを格納するデータ格納ユニット1
と、該データ格納ユニット1から処理すべきデータを所
定のプログラムに基づいて順次読み出し処理する複数個
のデータアクセスユニットU1 〜Un からなるアクセス
処理ユニット4と、その複数個のデータアクセスユニッ
トU1 〜Un を並列に接続したデータ処理ユニット10
とを備え、データ処理ユニット10に対して並列に接続
した前記各々データアクセスユニットU1 〜Un から並
列的に処理すべきデータをアクセスしてデータ処理を実
行する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、画像データ処理分
野、信号データ処理分野、及びその他のデータ処理分野
における高速化及び効率化したデータ並列処理方法に関
する。
【0002】
【従来の技術】従来、単一データ群に対して複数の処理
を並列化する場合、パイプライン処理若しくはデータ分
割による並列処理方式が主流であった。
【0003】パイプライン方式では、図5に示すように
データ処理を処理1、処理2、処理3・・・処理nのよ
うに適当な数段階に分割して直列的に並ばせておいて、
前段のデータ処理結果の出力処理は後段のデータ入力処
理となるようなタイミングで接続されたものであり、
処理を分割した段階数と同数の処理ユニットを要するた
めハードウエアへの負荷が大きくなる、データ処理速
度は各分割された処理ユニットでのデータ処理のうち最
も時間の掛かった処理ユニットでの処理時間によって決
定されてしまい、データ処理の最大速度がデータ処理の
うち最も時間の掛かる処理に規制されてしまう、処理
ユニットなどのハードウエアは簡単には変更が困難であ
るなどの問題がある。
【0004】また、従来のデータ分割による並列処理方
式は、図6に示すように大量のデータをパーティション
1、パーティション2、パーティション3・・・パーテ
ィションnなどのある大きさで分割し、その分割された
各データ群に対応してそれぞれ処理ユニット(処理ユニ
ット1、処理ユニット2、処理ユニット3・・・処理ユ
ニットn)を用意する方式であり、普遍的なデータ分
割方式が確立されておらず、予め用意されたアプリケー
ションの処理ユニットに依存したデータ分割方式しか採
用できない、分割したデータ間で関連性がある場合に
は、従来の並列方式を採用する際のデータ分割による並
列化の効率が著しく落ちる傾向がある、処理ユニット
は分割された各データの処理の汎用性に乏しく、処理ユ
ニットなどのハードウエアは簡単には変更が困難である
などの問題がある。
【0005】
【発明が解決しようとする課題】本発明は、上記問題点
を解決するためになされたものであり、その課題とする
ところは、データ並列処理方式において、従来の並列処
理方式によるデータ処理におけるデータ分割の制限の多
さ及びその並列処理方式を実現するためのハードウエア
の汎用性又は変更性の低さを改良することにある。
【0006】
【課題を解決するための手段】本発明は、データを格納
するデータ格納ユニット1と、該データ格納ユニット1
から処理すべきデータを所定のプログラムに基づいて順
次読み出し処理する複数個のデータアクセスユニットU
1 〜Un からなるアクセス処理ユニット4と、その複数
個のデータアクセスユニットU1 〜Un を並列に接続し
たデータ処理ユニット10とを備え、データ処理ユニッ
ト10に対して並列に接続した前記各々データアクセス
ユニットU1 〜Un から並列的に処理すべきデータをア
クセスしてデータ処理を実行することを特徴とするデー
タ並列処理方法である。
【0007】また本発明は、上記発明のデータ並列処理
方法において、前記各々データアクセスユニットU1 〜
Un によるデータのアクセス動作がプログラマブルに構
築されているデータ並列処理方法である。
【0008】また本発明は、上記発明のデータ並列処理
方法において、前記各々データアクセスユニットU1 〜
Un はコンフィグレーションモードと実行モードとを備
えるデータ並列処理方法である。
【0009】
【発明の実施の形態】本発明のデータ並列処理方法を、
実施の形態にしたがって以下に詳細に説明する。図1は
本発明の構成を概略的に示す動作ブロック図であり、デ
ータ格納ユニット1は、データ入力部からデータ処理す
べき所定のデータDa(1ビット若しくは1バイト毎に
符号化された文字、数字(数値)、記号などに関するデ
ータ、あるいはビットマップデータ、ラスターデータ、
ベクターデータなど画像データ、あるいは一般演算処理
用論理データなど)が所定の文字列や所定のアドレスに
従って入力され格納されているメモリ、又はハードディ
スク及びドライブ装置などである。
【0010】データアクセス処理ユニット4はアクセス
ユニットU1、アクセスユニットU2、アクセスユニッ
トU3・・・アクセスユニットUnの複数個のユニット
からなり、各々ユニットU1〜Unは前記データ格納ユ
ニット1から処理すべきデータDaを所定のプログラム
に基づいて順次1ビット若しくは1バイト単位で読み出
し、それぞれ個々のユニットU1〜Unは個々のアクセ
ス処理データD1〜Dnを出力する。
【0011】データ処理ユニット10は、複数個の前記
データアクセス処理ユニット4(U1〜Un)を並列に
接続した1個のユニットであり、前段の個々のデータア
クセス処理ユニット4から出力されたそれぞれアクセス
処理データD1〜Dnが並行して1ビット若しくは1バ
イト単位で順次入力され、所定のタイミングでデータ処
理される。
【0012】データアクセス処理ユニット4は、データ
バス3を介してデータ格納ユニット1に接続され、デー
タ処理結果はデータ処理ユニット10(マルチプレク
サ)を介して出力される。
【0013】データ格納ユニット1は、外部からデータ
Daを入力するチャンネルと個々のデータアクセス処理
ユニット4(ユニットU1〜Un)とデータDaの入出
力をするためのチャンネルを持っている。
【0014】個々のデータアクセスユニットU1〜Un
は、データ格納ユニット1に対してデータDaの入出力
をするためのチャンネルと、アクセス処理結果としての
アクセス処理データD1〜Dnをデータ処理ユニット1
0に出力するためのそれぞれ処理結果出力チャンネルC
1〜Cnを持っている。
【0015】また、上記個々のデータアクセスユニット
U1〜UnはFPGA(FieldProgramab
le Gate Array)等により構成され、ソフ
トウエア(プログラム)によりハードウエアの論理を構
築することが可能である。
【0016】データ格納ユニット1とデータアクセス処
理ユニット4間は双方向データバス3により接続され、
排他制御によりデータの衝突は回避されている。
【0017】個々のデータアクセスユニットU1〜Un
は、コンフィグレーションコードローダ6によりコンフ
ィグレーションコード(データ処理用枠取りコード)を
バス7を介してロードすることにより実行(アクセス)
する機能が決定される。なおコンフィグレーションコー
ドはハードウエアの動作を決定するものであり、FPG
A開発環境等のソフトウエアにより予め製作しておくも
のとする。
【0018】データアクセス処理ユニット4の処理結果
は、一回の処理で完了する場合は、処理結果出力チャン
ネルC1〜Cnのうち所定のチャンネル、例えばチャン
ネルC1へ出力され、完了しない場合は、その途中結果
を再度データ格納ユニット1に出力する。この選択はコ
ンフィグレーションコードにより事前に決定される。
【0019】データアクセス処理ユニット4の状態とし
ては、コンフィグレーションモード(アイドリングモー
ド)と実行モードの2つがある。データ格納ユニット1
に接続されている複数個のデータアクセス処理ユニット
4(ユニットU1〜Un)のうち、任意の時刻tにおい
て実行モードになるユニットは1つだけであり、他のユ
ニットは全てコンフィグレーションモードになる。
【0020】前述したようにデータ格納ユニット1とデ
ータアクセス処理ユニット4との間は双方向データバス
3により接続されているものであるが、このコンフィグ
レーションモードに切り替わることによって、データバ
ス3はハイインピーダンス状態(非接続)となって、そ
のためデータ格納ユニット1とデータアクセス処理ユニ
ット4との間の互いのデータの衝突は回避されるように
なっている。
【0021】次に、本発明により6種類のデータ処理を
実行する場合について以下に詳細に説明すれば、図2
は、6種類のデータ処理を2個のデータアクセスユニッ
トU1〜U2にて実行する場合のタイミングチャートを
示す。
【0022】図2に示すように、例えば奇数番目のデー
タ処理はデータアクセスユニットU1で実行され、偶数
番目のデータ処理はデータアクセスユニットU2で実行
される。また実行される前に予め各アクセス処理に対す
るコンフィグレーションコードが、それぞれデータアク
セスユニットU1、U2に対してロードされる。
【0023】また、データ格納ユニット1と、データア
クセスユニットU1又はU2との間における処理クロッ
ク信号に基づくデータDaの読み出し又は書き込みのタ
イミングチャートを図3に示す。
【0024】読み出し時は、処理クロック信号の立ち上
がりにてデータアクセスユニットU1又はU2にデータ
Daが取り込まれ、書き込み時は、処理クロック信号の
立ち下がりにてデータ格納ユニット1にデータが取り込
まれる。
【0025】本発明によれば、図2における6個の処理
に対する処理時間に差があっても問題とならない。即
ち、6種類のデータ処理を2個のデータアクセス処理ユ
ニットU1〜U2にて実行するなどデータ処理を分割す
る場合の時間的な制約から開放されることになる。ただ
し、コンフィグレーションに要する時間より短い処理は
時間的に無駄が生じる。
【0026】また本発明によれば、データアクセス処理
ユニット4での各処理はソフトウエアにより論理が構築
されるため、処理ごとに専用ハードウエアを起こす必要
がなく、単一のハードウエアにより実行できるメリット
がある。
【0027】本発明方法の使用例としては、図4に示す
ように、図1のブロック図に示すデータ並列処理方式を
1つのデータ並列処理ユニット20として、この複数の
データ並列処理ユニット20を格子状に接続配列するこ
とにより、大規模なデータ処理に対してリアルタイムに
処理できるシステムの構築が可能である。
【0028】データ処理を必要とする大量の各種データ
は、各データ入力部11、12、13・・・1nより入
力側インターフェース19を介して格子状に接続配列し
た各データ並列処理ユニット20(11)、20(1
2)、20(13)・・・20(1n)、20(3
1)、20(32)、20(33)・・・20(3n)
・・・・・20(m1)、20(m2)、20(m3)
・・・20(mn)に順次出力されてデータ処理され、
最終処理結果は出力側インターフェース21を介して出
力部111、112、113、・・・11nからデータ
として出力される。
【0029】データ処理を必要とする各種データは、そ
れぞれデータ入力部11、12、13・・・1nよりイ
ンターフェース19を介してそれぞれデータ並列処理ユ
ニット20(11)、20(12)、20(13)・・
・20(1n)に順次入力されてデータ処理され、最終
的な又は中間的なデータ処理がなされる。
【0030】前記データ並列処理ユニット20(1
1)、20(12)、20(13)・・・20(1n)
のうちいずれかの並列処理ユニットに入力された処理す
べき多量のデータのうち、最終的なデータ処理がなされ
たデータの処理結果は、そのデータ処理した当該データ
並列処理ユニットから他のデータ並列処理ユニットをバ
イパスにて通過し、最終的に出力インターフェース21
を介していずれかの出力部111、112、113、・
・・11nから最終処理結果がデータとして出力され
る。
【0031】他方、前記データ並列処理ユニット20
(11)、20(12)、20(13)・・・20(1
n)のうちいずれかの処理ユニットに入力された処理す
べき多量のデータのうち、中間的なデータ処理がなされ
た後に当該データ並列処理ユニットから出力された中間
処理結果は、該データ並列処理ユニットに最寄りで隣接
する続く次のデータ並列処理ユニット、例えば図4に示
すデータ並列処理ユニット20(12)から中間処理デ
ータが出力される場合には該データ並列処理ユニット2
0(12)に最寄りで隣接するデータ並列処理ユニット
20(11)、20(13)、20(22)のうちのい
ずれかの処理ユニットに中間処理データとして入力され
て、さらにそこで最終的なデータ処理又は中間的なデー
タ処理がなされる。
【0032】このようにして最終的なデータ処理がなさ
れたデータの最終処理結果は、上記同様にそのデータ処
理した当該データ並列処理ユニットから他のデータ並列
処理ユニットをバイパスにて通過して最終的に出力イン
ターフェース21を介していずれかの出力部111、1
12、113、・・・11nからデータとして出力さ
れ、中間的なデータ処理がなされたデータの中間処理結
果は、該データ並列処理ユニットに最寄りで隣接する続
く次のデータ並列処理ユニットに順次出力されてデータ
処理されるものである。
【0033】他方、前記データ並列処理ユニット20
(11)、20(12)、20(13)・・・20(1
n)のうちいずれかの処理ユニットに入力された処理す
べき多量のデータのうち、所定時間内では処理しきれな
いためにオーバーフローしたデータは、前記データ並列
処理ユニット20(11)、20(12)、20(1
3)・・・20(1n)のうち、データのオーバーフロ
ーが発生した処理ユニットに最寄りで隣接する続く次の
データ並列処理ユニット、例えば図4に示す各データ並
列処理ユニット20(12)にてデータのオーバーフロ
ーが発生した場合には、隣接するデータ並列処理ユニッ
ト20(11)、20(13)、20(22)のうちい
ずれかの処理ユニットにオーバーフローしたデータが順
次入力されて中間的なデータ処理又は最終的なデータ処
理がなされる。
【0034】
【発明の効果】本発明のデータ並列処理方法は、汎用性
又は変更性の高いアーキテクチャであり、同一のハード
ウエアにより多様な並列処理を実現できるものである。
また、データ分割又は処理分割方式の制約を受けずに効
率のよい並列処理が実現できるものである。また、並列
処理は比較的専用ハード化しなければならないケースが
多いが、本発明によればソフトウエアによりハードウエ
アの機能変更が可能なため、汎用性又は変更性の高いデ
ータ処理が実施できる効果がある。
【図面の簡単な説明】
【図1】本発明のデータ並行処理方法を実行するための
データ処理動作を説明するブロック図。
【図2】本発明のデータ並行処理方法を実行するための
データ処理動作を説明するタイミングチャート。
【図3】本発明のデータ並行処理方法を実行するための
データ処理動作におけるデータ読み出しと書き込みを説
明するタイミングチャート。
【図4】本発明のデータ並行処理方法を大量のデータ処
理に使用する際のデータ処理動作を説明するブロック
図。
【図5】従来のパイプライン方式によるデータ処理を説
明するブロック図。
【図6】従来のデータ分割による並列処理方式のデータ
処理を説明するブロック図。
【符号の説明】
1…データ格納ユニット 2…データバス 3…データ
バス 4…データアクセス処理ユニット 6…コンフィグレー
ションコードローダ 10…データ処理ユニット

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】データを格納するデータ格納ユニット1
    と、該データ格納ユニット1から処理すべきデータを所
    定のプログラムに基づいて順次読み出し処理する複数個
    のデータアクセスユニットU1 〜Un からなるアクセス
    処理ユニット4と、その複数個のデータアクセスユニッ
    トU1 〜Un を並列に接続したデータ処理ユニット10
    とを備え、データ処理ユニット10に対して並列に接続
    した前記各々データアクセスユニットU1 〜Un から並
    列的に処理すべきデータをアクセスしてデータ処理を実
    行することを特徴とするデータ並列処理方法。
  2. 【請求項2】前記各々データアクセスユニットU1 〜U
    n によるデータのアクセス動作がプログラマブルに構築
    されている請求項1記載のデータ並列処理方法。
  3. 【請求項3】前記各々データアクセスユニットU1 〜U
    n はコンフィグレーションモードと実行モードとを備え
    る請求項1又は請求項2記載のデータ並列処理方法。
JP5829698A 1998-03-10 1998-03-10 データ並列処理方法 Pending JPH11259436A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5829698A JPH11259436A (ja) 1998-03-10 1998-03-10 データ並列処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5829698A JPH11259436A (ja) 1998-03-10 1998-03-10 データ並列処理方法

Publications (1)

Publication Number Publication Date
JPH11259436A true JPH11259436A (ja) 1999-09-24

Family

ID=13080267

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5829698A Pending JPH11259436A (ja) 1998-03-10 1998-03-10 データ並列処理方法

Country Status (1)

Country Link
JP (1) JPH11259436A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005539293A (ja) * 2002-08-16 2005-12-22 カーネギー−メロン ユニバーシティ 部分的にグローバルなコンフィギュレーションバスを用いたプログラマブルパイプラインファブリック
JP2006018539A (ja) * 2004-06-30 2006-01-19 Fujitsu Ltd 時分割多重処理可能なリコンフィギュラブル回路
JP2006236106A (ja) * 2005-02-25 2006-09-07 Canon Inc データ処理装置及びデータ処理方法
JP2013062649A (ja) * 2011-09-13 2013-04-04 Nec Engineering Ltd 再構成可能な集積回路ユニットを備えた論理回路及びその論路回路のエラー修正方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005539293A (ja) * 2002-08-16 2005-12-22 カーネギー−メロン ユニバーシティ 部分的にグローバルなコンフィギュレーションバスを用いたプログラマブルパイプラインファブリック
JP2006018539A (ja) * 2004-06-30 2006-01-19 Fujitsu Ltd 時分割多重処理可能なリコンフィギュラブル回路
JP4546775B2 (ja) * 2004-06-30 2010-09-15 富士通株式会社 時分割多重処理可能なリコンフィギュラブル回路
US8055880B2 (en) 2004-06-30 2011-11-08 Fujitsu Limited Reconfigurable circuit having a pipeline structure for carrying out time division multiple processing
JP2006236106A (ja) * 2005-02-25 2006-09-07 Canon Inc データ処理装置及びデータ処理方法
JP2013062649A (ja) * 2011-09-13 2013-04-04 Nec Engineering Ltd 再構成可能な集積回路ユニットを備えた論理回路及びその論路回路のエラー修正方法

Similar Documents

Publication Publication Date Title
US4553203A (en) Easily schedulable horizontal computer
US5394031A (en) Apparatus and method to improve programming speed of field programmable gate arrays
KR0125623B1 (ko) 데이타 프로세서 및 데이타 처리방법
JPH09106342A (ja) 並べ換え装置
GB2365588A (en) Vector register file with arbitrary vector addressing
US4521874A (en) Random access memory device
US7769980B2 (en) Parallel operation device allowing efficient parallel operational processing
KR100498508B1 (ko) 데이터 전송시간을 감소시키는 듀얼 버퍼링(Dualbuffering) 메모리 시스템 및 이에 대한 제어방법
EP1012700B1 (en) Multiple parallel identical finite state machines which share combinatorial logic
US4811201A (en) Interconnect circuit
JPH11259436A (ja) データ並列処理方法
US4101967A (en) Single bit logic microprocessor
WO2007029169A2 (en) Processor array with separate serial module
JPH1074141A (ja) 信号処理装置
JP2023533795A (ja) レジスタデータの消去
US5291457A (en) Sequentially accessible non-volatile circuit for storing data
JPS6122830B2 (ja)
RU2134448C1 (ru) Однородная вычислительная среда с двуслойной программируемой структурой
WO2018207883A1 (ja) データ処理装置
JPH10116226A (ja) 半導体記憶装置のアドレス整列装置
JP2824976B2 (ja) 2次元配列データ回転装置
JPH03196257A (ja) ベクトル処理装置
JP2000020705A (ja) 並列画像処理プロセッサ
CN117725002A (zh) 数据传输方法、数据传输装置和电子设备
JPH0745065A (ja) 半導体記憶装置