JPH04233062A - ベクトルの処理方法およびその回路 - Google Patents

ベクトルの処理方法およびその回路

Info

Publication number
JPH04233062A
JPH04233062A JP3164955A JP16495591A JPH04233062A JP H04233062 A JPH04233062 A JP H04233062A JP 3164955 A JP3164955 A JP 3164955A JP 16495591 A JP16495591 A JP 16495591A JP H04233062 A JPH04233062 A JP H04233062A
Authority
JP
Japan
Prior art keywords
vector
processing
vectors
dimensional
xki
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.)
Withdrawn
Application number
JP3164955A
Other languages
English (en)
Inventor
Francis Jutand
フランシス・ジュタンド
Anne Lafage
アン・ラファージェ
Emmanuel Boutillon
エマニエル・ブティロン
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.)
Orange SA
France Telecom R&D SA
Original Assignee
France Telecom SA
Centre National dEtudes des Telecommunications CNET
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 France Telecom SA, Centre National dEtudes des Telecommunications CNET filed Critical France Telecom SA
Publication of JPH04233062A publication Critical patent/JPH04233062A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization

Abstract

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、同次元のベクトルまた
はタップルを示すディジタル信号を処理するベクトルの
処理方法およびその回路に関し、また、それらをどんな
カージナル数も有する集合に応用することおよびどんな
次元のベクトルまたはタップルにも応用することに関す
る。
【0002】
【従来の技術】科学計算の分野において、ベクトルまた
はタップルを示すディジタル信号の処理は、現在では、
高いレートであるが順次的に、処理すべきデータに作用
するスーパーコンピュータを使用することに基礎を置い
ている。これらの処理には、一般に、ベクトル計算機ま
たは並列計算機あるいは”アレイプロセッサ”として知
られている計算機が用いられている。1つまたはそれ以
上の数のVLSI回路に組込まれた高度に専門化された
計算能力を用いることに関しては、収縮型のアーキテク
チュアが、例えば、「WARP」という名で米国のカー
ネギーメロン大学によって提案されている計算機および
それに基づいて「iWARP」という名でインテル社に
よって公表されている集積回路などの一般的な用途の計
算機に対して提案されている。
【0003】収縮型のアーキテクチュアを有する回路の
中では、上述したタイプのSY  カンによって提案さ
れている1次元のアーキテクチュアを生み出すニューラ
ルネットワーク(神経回路網)についてさらに説明する
。 他の回路アーキテクチュアのデータベースに手段を提供
するために、P.ファンデマリィ、D.エティンブルお
よびH.ヘイの名で出願された米国特許061642号
の主題を構成し、「RAPID」という名で設計された
アーキテクチュアが特に提案されている。
【0004】
【発明が解決しようとする課題】ところで、並列して作
動する非常に多くの回路を使用することあるいは非常に
多くのプロセッサおよび高機能メモリを要求するスーパ
ーコンピュータを使用することのいずれかに基礎を置く
従来の技術の上述した解決手法は、非常に高価な手法で
ある。集積度の増加に伴って、現在、1秒当たり数10
億の専門化された作用に対応した計算能力が、1つの回
路の内部に並列に多数のプロセッサを連結することによ
って、一般に、1つの回路に組込むことができる。
【0005】これらの回路は、作用する目的で、演算数
および/または計数の両方が供給される必要がある。計
数の数が削減されている時およびデータが非常に長い時
間再利用されている時には、例えば、フィルタリングの
応用として、内部の記憶ベースおよび収縮型の構造を有
するアーキテクチュアが適した解決手法である。一方、
処理すべきデータ処理物、即ち、テーブルまたはリスト
のサイズが増加した時、およびその結果として計数また
はデータを内部に、即ち、回路そのものの中に記憶する
ことが効果がなく、不可能にさえなる時に他の問題が起
こる。
【0006】もし、上述した回路の1つに配列されうる
計算プロセッサに供給することが要求されるならば、回
路と結合部との結合ラグの数をふやすことによって外部
メモリとの通信レートを増加させることおよびこれらの
メモリの交換周波数を増加させることが必要である。上
述した解決手法とは別に、これらの回路に組込まれてい
るメモリを使用することは可能である。
【0007】ところが、上述した今日の解決手法は、貧
弱なバランスのために、時間の「オーバーヘッド」また
はオーバーシュートをもたらし、あるいは、備えられて
いる計算能力の効率の低下をもたらし、あるいは、結局
資源の使用の下にしばしば引き起こされる要求される記
憶エリアの増加をもたらす計算の貧弱な構成のために限
界がある。
【0008】本発明の目的は、上述した欠点を克服する
こと、特に、非常に高度な計算能力を有するが、高価で
なく、さらに、非常に高集積度であるメモリ(DRAM
)を有するが、約80nsecの中程度のアクセス速度
で作用することが可能な並列プロセッサの集積回路に組
み込むことを可能とするために、また、結果として生じ
る全体のコストを削減するために、プロセッサおよびR
AMの今日の技術水準を利用することにある。
【0009】
【課題を解決するための手段】請求項1記載の発明は、
第1のベクトル集合Rの成分{xki}を有するベクト
ルXiのペアと第2のベクトル集合Sの成分{yki}
を有するベクトルYiのペアの間で実行され、同次数の
成分k{xki};{yki}を寄せ集めるために合致
される前記ベクトルXiと前記ベクトルYiとのペアを
生じさせることと、前記同次数の成分k{xki};{
yki}の計算を実行することとからなり、同次元pを
有するベクトルまたはタップルを示すディジタル信号を
処理するベクトルの処理方法であって、前記ベクトルX
iまたは前記成分{xki}、あるいは、前記ベクトル
Xiの配列または前記成分{xki}の配列のいずれか
によって構成された空間的合致データベクトルRkの時
間的な連続に対応した空間的合致データの特性が前記第
1のベクトル集合Rに属するとし、前記第2のベクトル
集合Sの少なくとも1つの前記ベクトルYiあるいは前
記ベクトルYiに対応する前記成分{yki}のいずれ
かによって構成された入力データの特性が前記第2のベ
クトル集合Sに属するとし、そのx次元に前記空間的合
致データベクトルRkの時間的な連続が割り当てられ、
そのy次元に前記入力データが割り当てられ、前記成分
{xki}と前記成分{yki}とをそれぞれ処理する
ための処理セルCTの2次元処理ネットワークREとし
て構成された並列処理を用いて前記入力データと前記空
間的合致データとの空間的および時間的合致を生じさせ
ることを特徴としている。
【0010】請求項2記載の発明は、請求項1記載の発
明において、前記入力データは、n個のベクトルYi(
i=1〜n)から構成され、前記処理セルCTの2次元
処理ネットワークREの前記y次元は、入力データベク
トルを構成する前記成分{yki}に割り当てられ、前
記処理セルCTの2次元処理ネットワークREは、前記
y次元に対応したn個の処理セルCTを有することを特
徴としている。
【0011】請求項3記載の発明は、請求項1記載の発
明において、前記空間的合致データベクトルRkのそれ
ぞれは、p次元のベクトルXiから構成され、前記処理
セルCTの2次元処理ネットワークREの前記x次元は
、前記空間的合致データベクトルRkを構成する前記成
分{xki}に割り当てられ、前記処理セルCTの2次
元処理ネットワークREは、前記x次元に対応したp個
の処理セルCTを有することを特徴としている。
【0012】請求項4記載の発明は、請求項1記載の発
明において、前記空間的合致データベクトルRkのそれ
ぞれは、q個のベクトルXi(i=1〜q)の成分{x
ki}の配列から構成され、前記空間的合致データベク
トルRkの時間的な連続は、前記ベクトルXiの対応す
る成分{xki}から構成され、前記処理セルCTの2
次元処理ネットワークREは、前記x次元に対応したq
個の処理セルCTを有することを特徴としている。
【0013】請求項5記載の発明は、請求項3記載の発
明において、前記処理セルCTの2次元処理ネットワー
クREは、p行n列に配列されたn×p個の処理セルC
Tを有し、前記ベクトルXiと前記ベクトルYiとの間
の前記合致は、前記処理セルCTの1つの列において処
理され、前記処理セルCTのそれぞれは、中間的な処理
結果を直ちに同じ列のさらに高次の処理セルCTに転送
し、それぞれの列のp次の処理セルCTは、ベクトルX
iとYiとの与えられたペアに対して最終的な処理結果
を転送することを特徴としている。
【0014】請求項6記載の発明は、請求項4記載の発
明において、前記処理セルCTの2次元処理ネットワー
クREは、q行n列に配列されたn×q個の処理セルC
Tを有し、前記ベクトルXiと前記ベクトルYiとの間
の前記合致は、p個の対応する成分{xki}と{yk
i}とを処理することにより、1つの処理セルCTのレ
ベルで局所的に処理されることを特徴としている。
【0015】請求項7記載の発明は、請求項1記載の発
明において、どの次元のマクロベクトルの間においても
合致を生じさせるために、前記マクロベクトルのp次元
の分割ベクトルの間の複数の合致を実行することと、ど
んなベクトルも前記分割に起因し、任意の値の成分によ
って完結されているp次元以下の次元を有することとか
らなることを特徴としている。
【0016】請求項8記載の発明は、請求項1記載の発
明において、ある連続的な手順においてどんなカージナ
ル数の前記第1のベクトル集合Rと前記第2のベクトル
集合Sとの間においても合致を生じさせるために、前記
第1のベクトル集合Rおよび前記第2のベクトル集合S
を独立して記憶する第1のステップと、それぞれ同じカ
ージナル数を有する前記第1のベクトル集合Rの部分集
合Rvと前記第2のベクトル集合Sの部分集合Suとを
記憶する第2のステップと、前記処理セルCTの2次元
処理ネットワークREに直接接続された前記第2のベク
トル集合Sの2次の部分集合であって、前記部分集合S
uの部分集合である部分集合Subと前記部分集合Rv
とをワーキングメモリに記憶する第3のステップと、1
マイクロサイクルの間に前記部分集合RvおよびSub
の空間的および時間的合致をする第4のステップと、前
記部分集合Subより高い階層の部分集合Sub+1を
マイクロサイクルの間に同時に仮想メモリに記憶する第
5のステップと、1マイクロサイクルの間に前記第2の
ベクトル集合Sの2次の部分集合Subのすべてに対し
て前記第3ないし第5のステップを繰返し、部分集合R
v+1を同時に仮想メモリに記憶する第6のステップと
、マクロサイクルの連続において前記第2のベクトル集
合Sの部分集合Suのすべてに対して前記第2ないし第
6のステップを繰返す第7のステップと、すべての前記
第1のベクトル集合Rおよび前記第2のベクトル集合S
の合致を得る前記第1のベクトル集合Rの部分集合Rv
のすべてに対する前記第2ないし第7のステップを繰返
す第8のステップとからなることを特徴としている。
【0017】請求項9記載の発明は、第1のベクトル集
合Rの成分{xki}を有するベクトルXiのペアと第
2のベクトル集合Sの成分{yki}を有するベクトル
Yiのペアの間で実行され、同次数の成分k{xki}
;{yki}を寄せ集めるために合致される前記ベクト
ルXiと前記ベクトルYiとのペアを生じさせることと
、前記同次数の成分k{xki};{yki}の計算を
実行することとからなり、同次元pを有するベクトルま
たはタップルを示すディジタル信号を処理するベクトル
の処理回路であって、前記ベクトルXiまたは前記成分
{xki}、あるいは、前記ベクトルXiの配列または
前記成分{xki}の配列のいずれかによって構成され
た空間的合致データベクトルRkの時間的な連続として
読み出され得る空間的合致データの形で前記第1のベク
トル集合Rを記憶する第1の記憶手段と、前記第2のベ
クトル集合Sの少なくとも1つの前記ベクトルYiある
いは前記ベクトルYiに対応する前記成分{yki}の
いずれかによって構成された入力データの形で前記第2
のベクトル集合Sを記憶する第2の記憶手段と、そのx
次元に前記空間的合致データベクトルRkの時間的な連
続が割り当てられ、そのy次元に前記入力データが割り
当てられ、前記成分{xki}と前記成分{yki}と
をそれぞれ処理するための処理セルCTの2次元処理ネ
ットワークREとして構成され、並列処理を用いて前記
入力データと前記空間的合致データとの空間的および時
間的合致を生じさせる計算手段とを具備することを特徴
としている。
【0018】請求項10記載の発明は、請求項9記載の
発明において、前記第1および第2の記憶手段はそれぞ
れ、対応するベクトルの部分集合が処理の間記憶され、
前記対応するデータが割り当てられた次元に応じた前記
2次元処理ネットワークREの処理セルCTに並列接続
により直接接続されるワーキングメモリと、一端が大容
量メモリに、他端が前記ワーキングメモリにそれぞれ接
続され、対応するベクトルの前記部分集合の処理の間、
さらに高次の対応するベクトルの部分集合に対する前記
ワーキングメモリの補助メモリとして作動する仮想メモ
リとから構成されることを特徴としている。
【0019】請求項11記載の発明は、請求項9記載の
発明において、前記計算手段を構成する前記2次元処理
ネットワークREは、処理セルを構成する複数の基本的
プロセッサを有し、前記第1のベクトル集合Rの複数の
ベクトルと前記第2のベクトル集合Sの複数のベクトル
との合致を確実にする方形のエリアとして構成されてい
ることを特徴としている。
【0020】請求項12記載の発明は、請求項9記載の
発明において、前記第2のベクトル集合Sの1つのベク
トル集合が記憶される前記ワーキングメモリは、n個の
前記ベクトルYiを記憶するn個の列と、それぞれが前
記入力データを構成するn個の前記成分{yki}を有
するラインとを有し、それぞれが1つの列に記憶される
前記ベクトルYiの成分{yki}を行列アドレッシン
グを用いて記憶セルに記憶するために構成されているこ
とを特徴としている。。
【0021】請求項13記載の発明は、請求項12記載
の発明において、前記仮想メモリあるいは前記第1のベ
クトル集合Rの記憶セルの数におけるサイズTrは、N
PEが2次元処理ネットワークREを構成する基本的プ
ロセッサPEの数を示し、pがベクトルの次元を示し、
Nyが1クロックサイクル当たりのベクトルの成分の数
におけるメモリの記憶レートを示すとした時の式(Tr
=NPE×p/Ny)を満たすことを特徴としている。
【0022】請求項14記載の発明は、請求項12記載
の発明において、順次表現−並列配置タイプの第1の構
成において、前記2次元処理ネットワークは、p行n列
に配列されたn×p個の基本的プロセッサを具備し、前
記ワーキングメモリの第1の行のそれぞれの記憶セルは
、前記処理セルのすべておよびバスを介して対応する前
記基本的プロセッサにそれぞれ接続され、前記ワーキン
グメモリは、行列アドレッシングを用いてその1つの列
の前記記憶セルのそれぞれに、前記空間的合致データベ
クトルと1対1に対応する前記ベクトルXiの成分{x
ki}を記憶するために構成され、前記ワーキングメモ
リの第1の列のそれぞれの記憶セルは、前記処理セルの
すべておよびバスを介して対応する前記基本的プロセッ
サにそれぞれ接続することを特徴としている。
【0023】請求項15記載の発明は、請求項14記載
の発明において、前記ワーキングメモリは、n×p個の
ベクトルXiを記憶するn×p個の記憶セル列を有する
ことを特徴としている。請求項16記載の発明は、請求
項12記載の発明において、並列表現−並列配置タイプ
の第2の構成において、前記2次元処理ネットワークは
、q行n列に配列されたn×q個の基本的プロセッサを
具備し、それぞれがq個の隣接した行に記憶されたq個
のベクトルの同じk次の成分{xki}から構成されて
いる前記空間的合致データベクトルが記憶される前記ワ
ーキングメモリは、行列アドレッシングを用いてその1
つの列の前記記憶セルのそれぞれに、それぞれの行がn
個のベクトルからなる対応する前記ベクトルXiの成分
{xki}を記憶するために構成されていることを特徴
としている。
【0024】請求項17記載の発明は、請求項9記載の
発明において、n2次元のマトリックスAおよびn次元
のベクトルXに対するマトリックス−ベクトル積タイプ
の処理を達成するために、前記計算手段は、1つの演算
子を構成する1つの乗算器および1つの加算器からなる
n個の処理セルを有する1つの列を有し、前記ベクトル
の成分xj(j=1〜n)が順次入力され、マトリック
スAの係数aij(i,j=1〜n)が前記記憶手段の
ワーキングメモリのそれぞれの仮想メモリにロードされ
る前記処理セルの1つのネットワークから構成されてい
ることを特徴としている。
【0025】請求項18記載の発明は、請求項17記載
の発明において、N≫nであり、N=K×nである場合
のN2次元のマトリックスAおよびN次元のベクトルX
のマトリックス−ベクトル積タイプの処理に関して、前
記計算手段は、並列に作動するカスケード接続されたK
個の演算子を有し、前記ベクトルXがK個の等しい部分
あるいはn次元のサブベクトルX(1),X(2),・
・・,X(j),・・・,X(K)に分解され、前記マ
トリックスがn2次元のK2個のサブマトリックスA(
i,j)(i,j=1〜K)に分解され、積の結果ベク
トルYがA(i,j)×X(j)がn2次元のサブマト
リックスA(i,j)とn次元のサブベクトルX(j)
との積を示子、Y(i)が結果ベクトルYのn次元の1
番めの部分あるいはサブベクトルを示す場合の数式2の
形で得られる
【数2】 ことを特徴としている。
【0026】請求項19記載の発明は、請求項17記載
の発明において、N=K×nであり、M=m×nである
場合のN×M次元のマトリックスARとM次元のベクト
ルXBのマトリックス−ベクトル積タイプの処理に関し
て、前記計算手段は、並列に作動するカスケード接続さ
れたK個の演算子を有し、前記ベクトルXBがm個の部
分あるいはn次元のサブベクトルXB(1),XB(2
),・・・,XB(n)に分解され、マトリックスAR
がn2次元のK×m個のサブマトリックスA(i,j)
(i=1〜K,j=1〜m)に分解されることを特徴と
している。
【0027】請求項20記載の発明は、請求項9記載の
発明において、1つのデータベースの、複数の属性から
構成されるタップルの集合からなる2つの関係の比較の
手順を準備するために、前記比較は、1つのチョッピン
グ手順に従って実行され、大きなカージナル数の2つの
集合の比較は、より小さなカージナル数の集合の基本的
な比較の連続に変えられ、それぞれの処理セルは、基本
的な計算手順を実行するために、前記計算手段を構成し
、計算手段は、1つの基本的な比較を実行するために、
”R×A”=”S×A”、”R×A”<”S×A”およ
び”R×A”と”S×A”とは属性あるいは属性の部分
どちらかであるかというテストに応答するディジタルコ
ンパレータと、”R×A”<”S×A”、”R×A”≦
”S×A”、”R×A”=”S×A”、”R×A”≧”
S×A”あるいは”R×A”>”S×A”の1つに応答
し、考慮されたテストに対して正の応答をする場合には
値1の結果ビットを転送し、逆の場合には値0の結果ビ
ットを転送するプログラム可能な制御ユニットと、1つ
の前の中間的な結果と共に、検討されたに関する前記プ
ログラム可能な制御ユニットから転送された前記結果ビ
ットを再結合するプログラム可能なユニットとからなる
1つの基本的プロセッサによって構成されていることを
特徴としている。
【0028】請求項21記載の発明は、請求項9ないし
請求項20記載の発明において、同じ処理時間に対して
ビットレートの変調なしに処理される空間的合致データ
タップルの集合のカージナル数を増加させて並行して前
記入力データベクトルSを入力する前記ワーキングメモ
リおよび前記仮想メモリのレベルでそれぞれ前記空間的
合致データベクトルRkの集合Rの分割R’1,R’2
,・・・,Rk’を入力する並列に接続された複数の回
路からなる1つデータベースのベクトルまたはタップル
を示すディジタル信号を処理するシステムへ応用するこ
とを特徴としている。
【0029】
【作用】請求項1記載の発明によれば、まず、ベクトル
Xiまたは成分{xki}、あるいは、ベクトルXiの
配列または成分{xki}の配列のいずれかによって構
成された空間的合致データベクトルRkの時間的な連続
に対応した空間的合致データの特性が第1のベクトル集
合Rに属するとされる。次に、第2のベクトル集合Sの
少なくとも1つのベクトルYiあるいはベクトルYiに
対応する成分{yki}のいずれかによって構成された
入力データの特性が第2のベクトル集合Sに属するとさ
れる。そして、処理セルCTの2次元処理ネットワーク
REとして構成された並列処理が用いられて入力データ
と空間的合致データとの空間的および時間的合致が生じ
させられる。
【0030】請求項9記載の発明によれば、第1の記憶
手段は、ベクトルXiまたは成分{xki}、あるいは
、ベクトルXiの配列または成分{xki}の配列のい
ずれかによって構成された空間的合致データベクトルR
kの時間的な連続として読み出され得る空間的合致デー
タの形で第1のベクトル集合Rを記憶する。また、第2
の記憶手段は、第2のベクトル集合Sの少なくとも1つ
のベクトルYiあるいはベクトルYiに対応する成分{
yki}のいずれかによって構成された入力データの形
で第2のベクトル集合Sを記憶する。そして、計算手段
は、並列処理を用いて入力データと空間的合致データと
の空間的および時間的合致を生じさせる。
【0031】
【実施例】以下、図面を参照して、本発明の一実施例に
ついて説明する。図1および図2は本発明の一実施例に
よるベクトルの処理方法を適用した回路の構成を示す図
であり、これらの図において、同一の符号は同一の構成
要素を示す。以下、同様である。
【0032】本発明、即ち、同次元pを有するベクトル
またはタップルを示すディジタル信号を処理するベクト
ルの処理方法によれば、その処理は、第1のベクトル集
合Rの成分{xki}を有するベクトルXiのペアと第
2のベクトル集合Sの成分{yki}を有するベクトル
Yiのペアの間で実行される。そして、存在する同次数
の成分k{xki};{yki}を寄せ集めるために合
致されるベクトルXiとベクトルYiとのペアを生じさ
せることと、これらの成分の計算を実行することとから
なる処理は、図1に示すように、空間的合致データベク
トルRkの時間的な連続に対応した空間的合致データの
特性がベクトル集合Rの1つに属するとすることを含ん
でいる。 空間的合致データベクトルRkは、ベクトルXiまたは
それらの成分{xki}、あるいは、ベクトルXiの配
列またはそれらの成分{xki}の配列のいずれかによ
って構成されている。
【0033】第2のベクトル集合Sには、入力データの
特性が属しており、この入力データは、第2のベクトル
集合Sの少なくとも1つのベクトルYiあるいは1つの
与えられた部分集合Suのいずれかによって構成され、
この入力データは、ベクトルYiの対応する成分{yi
}から構成されている。そして、この発明のベクトルの
処理方法は、並列処理を用いて入力データと空間的合致
データとの間の空間的および時間的な合致を引き起こす
ことを含んでいる。並列処理は、図1に示すように、成
分{xki}および{yki}のそれぞれを処理するた
めに、処理セルCTの2次元のネットワークREとして
構成されている。
【0034】さらに、図1に示すように、2次元処理ネ
ットワークREの1つの次元xに対して空間的合致デー
タベクトルRkの時間的な連続が割り当てられ、2次元
処理ネットワークREのもう1つの次元yに対して少な
くとも1つのベクトルYiあるいはそれに対応する成分
{yi}によって構成された入力データが割り当てられ
ている。
【0035】本発明のベクトルの処理方法において、考
慮されている作用は、同次元を有する2つのベクトル集
合RおよびSの合致である。2つのベクトル集合Rおよ
びSの合致は、ベクトル集合Rのそれぞれのベクトルが
ベクトル集合Sのすべてのベクトルに合致しなければな
らないということを意味している。計算は、2つずつと
られた2つのベクトルの同じ配列の成分において実行さ
れ、合致の結果は、上述した成分から得られるすべての
中間結果に依存する。
【0036】本発明のベクトルの処理方法によれば、空
間的合致データおよび入力データの並列処理は、上述し
たベクトルの成分を処理するために、セルの2次元処理
ネットワークREにおいて実行される。これにより、そ
れぞれの処理セルCTは、ベクトル集合Rの複数のベク
トルとベクトル集合Sの複数のベクトルとの合致を可能
にする。それぞれの処理セルCTは、成分毎にその計算
を実行する。
【0037】ベクトル集合Rおよびベクトル集合Sのそ
れぞれのベクトルが別々に記憶され、さらに、処理され
るベクトル集合Rの対応するベクトルおよびベクトル集
合Sの対応するベクトルは、2次元処理ネットワークR
Eと直接接続されるために、記憶される。ところが、ま
だ処理がされていない他のベクトルから構成される同じ
ベクトル集合RおよびSは、以下に示す計算文脈を準備
するために、上記対応するベクトルの処理の進行中、記
憶される。
【0038】このために、ベクトル集合Sは、図2に示
すように、同じサイズの数個の部分集合Suに分割され
る。初期の段階の後、ベクトル集合Rおよび部分集合S
uは、上述した処理がなされたベクトルを構成するため
のロードされ、記憶される。
【0039】図3に示すように、ベクトル集合Rおよび
Sの合致を引き起こす計算段階は、マイクロサイクルと
呼ばれる等しい周期の連続に分解される。1マイクロサ
イクルは、ベクトル集合Rとベクトル集合Sの部分集合
Suの合致および次のマイクロサイクルの以下に示す文
脈を構成するための部分集合Su+1の並列したロード
に対応している。部分集合Suの処理の最後に、次のマ
イクロサイクルの文脈が用意されている。
【0040】従って、図3に示すように、それぞれのマ
イクロサイクルは、ベクトル集合Rと考慮された部分集
合Suとの合致に対応する。同様に、本発明のベクトル
の処理方法によれば、マクロサイクルと呼ばれる周期は
、ベクトル集合Rと、例えば、1からKに変化するuを
有するベクトル集合Sのすべての部分集合Suとの合致
と、新しいベクトル集合R’および入力データベクトル
S’の他の集合の第1の集合S’1の同時のロードに対
応する。同様に、1マクロサイクルの最後に、次のマク
ロサイクルの文脈が用意されている。
【0041】本発明のベクトルの処理方法によれば、処
理周期階層を定義することが可能である。これにより、
非常に高いカージナル数あるいはサイズの2つのベクト
ル集合RおよびSは、同じサイズであるがより小さい部
分集合RvおよびSuに分割される。この時、マクロサ
イクルは、2つの部分集合RvおよびSuの合致に対応
する。部分集合Suのそれぞれは、部分集合Subに分
割されなければならず、部分集合Subのベクトルと部
分集合Rvのベクトルとの間の合致は、1マイクロサイ
クルに対応する。これにより、ベクトル集合RおよびS
の合致は、マクロサイクルの連続を要求する。
【0042】本発明のベクトルの処理方法は、ベクトル
集合RおよびSのベクトル数のサイズが対応する記憶ユ
ニットのサイズを左右しないベクトルまたはタップルの
処理を提供することに関して、特に、有利である。さら
に、本発明のベクトルの処理方法によれば、ベクトル集
合RおよびSのサイズは、異なっていてもよい。もちろ
ん、上述したベクトル集合RおよびSのどちらかにおい
て、同じサイズあるいはカーディル数を有している部分
集合RvおよびSuが構成されていれば充分である。
【0043】本発明のベクトルの処理方法の特徴によれ
ば、入力データは、n個のベクトルYi(i=1〜n)
から構成されている。処理セルCTの2次元処理ネット
ワークREのy次元に対して1つの入力データベクトル
を構成する成分{yki}が割り当てられている。そし
て、処理セルCTの2次元処理ネットワークREは、上
述したy次元に応じてn個の処理セルCTから構成され
ている。
【0044】同様に、それぞれの空間的合致データベク
トルRkは、p次元のベクトルXiによって構成されて
いる。この場合、処理セルCTの2次元処理ネットワー
クREのx次元に対しては、空間的合致データベクトル
Rkを構成する成分{xki}が割り当てられている。 2次元処理ネットワークREは、上述した次元に対応し
たp個の処理セルCTを有している。
【0045】本発明のベクトルの処理方法の変形例にお
いては、それぞれの空間的合致データベクトルRkは、
q個のベクトルXi(i=1〜q)の成分{xki}の
配列によって構成してもよい。そして、空間的合致デー
タRkの時間的な連続は、ベクトルXiの成分{xki
}によって構成される。この場合、2次元処理ネットワ
ークREは、上述したx次元に対応したq個の処理セル
CTを有している。
【0046】2次元処理ネットワークREの構成に関す
る限りにおいては、それがn行p列に配列されたn×p
個の処理セルCTを有している場合、第1の制限のない
変形において、本発明のベクトルの処理方法は、処理セ
ルCTの1つの列において、ベクトルXiとベクトルY
iとの間の合致を導くことを含んでいてもよい。そして
、それぞれの処理セルCTは、1つの中間的な処理結果
を直ちに同じ列のさらに高い次数の処理セルCTに転送
する。そして、それぞれの列のp次の処理セルCTは、
与えられたベクトルXiとYiとのペアに関する最終的
な処理結果を転送する。
【0047】本発明のベクトルの処理方法の他の変形例
において、2次元処理ネットワークREがn行q列に配
列されたn×p個の処理セルCTを有している時、ベク
トルXiとベクトルYiとの間の合致は、p個の対応す
る成分{xki}および{yki}を処理することによ
って処理セルCTのレベルで局所的に処理されてもよい
【0048】上述したベクトル間の合致の2つの実施例
および実行は、異なった実施例を排除するものではない
。そのような実施例の中には、どんな順次表現−並列配
置が含まれていてもあるいは相互に含まれてもよい。 さらに、一般に、本発明のベクトルの処理方法による処
理されうるデータは、ベクトルテーブルに構成されたデ
ータである。そのテーブルのサイズおよびベクトルの次
元は、非常に高くてもよい。
【0049】2次元処理ネットワークREによって実行
される作用に関する限りにおいては、図4および図5に
示すように、同次元のベクトルの2つの集合あるいはテ
ーブルの合致は、ある集合のベクトルのそれぞれと他の
集合のすべてのベクトルとの合致をもたらす。これによ
り、上述した合致は、まず、同じ階層kの成分のペアに
わたった1つの関数の計算に帰し、合致の結果は、上述
した成分のペアにおいて得られる結果に依存する。上述
した関数の計算は、図5において、f1、f2、fiお
よびfkで示されている。
【0050】本発明のベクトルの処理方法は、2次元処
理ネットワークREに入力される情報の再利用率を増加
させるために、空間的および時間的次元の両方において
、並列計算を使用している。「空間的」および「時間的
」という語は、データ集合の1つが課題に対して固有で
あるという応用から初めに借用されている。これにより
、このデータは、問題のデータと呼ばれるかもしれない
。そのようなデータは、例えば、マトリックス計算応用
における係数のマトリックスによって構成されている。 そして、他の集合は、入力データと呼ばれる処理すべき
データによって構成されている。
【0051】これにより、空間的並列処理という語は、
1つの入力ベクトルが数個の空間的合致データベクトル
に並列に合致することを意味する。時間的並列処理とい
う語は、数個の入力データが並列に処理されることを意
味する。
【0052】便宜上、上述した語の使用は、2つのデー
タ集合を必要とする他の応用に、および課題に対する個
々のデータあるいは入力データのいずれも自明の真理を
顕著にしないということに拡張される。ところが、対応
する応用に特別な意味を持たせるために、上述したデー
タを限定することは有益である。これは、特に、データ
ベースに関係している本発明のベクトルの処理方法の応
用の場合である。
【0053】また、本発明のベクトルの処理方法は、計
算を正確に伝達することおよび外部データを記憶するメ
モリを経て転送されあるいは入力されたデータの流れの
通過帯域を縮小することに利用できる集積回路エリアの
最大値を取って置く目的で、内部の記憶の最小値を得る
ために、上述の定義した空間的および時間的ワーキング
ゾーンの平衡を使用する。
【0054】実際問題として、上述した2つの特性は、
一方では、2つのタイプの並列処理を用いた計算の特別
な構成、即ち、マイクロサイクルおよびマクロサイクル
において上述した順番に配列する計算の特別な構成に起
因し、他方では、上述した計算の構成を組み込むことを
可能にする回路群に起因する。同様に、ベクトル集合R
あるいはベクトル集合Sの部分集合Suを記憶すること
を必要とするユニットのサイズあるいは容量は、この発
明のベクトルの処理方法による回路内に集積された充分
使用されていない計算能力なしに外部メモリを有する最
小の通過帯域を有することを可能にする平衡によって決
定される。
【0055】次に、本発明による同次元pを有するベク
トルあるいはタップルを示すディジタル信号を処理する
ベクトルの処理回路を図6および図7を参照して説明す
る。図6および図7において、本発明のベクトルの処理
回路、即ち、1点鎖線によって囲まれている回路Cは、
空間的合致データの形でベクトル集合Rの1つを記憶す
る第1の記憶ユニット1を有する。空間的合致データは
、空間的合致データベクトルRkが時間的に連続して読
み出されるために記憶される。これらのベクトルは、ベ
クトルXiあるいはそれらの成分{Xki}、あるいは
、後述するように、これらのベクトルの配列あるいはこ
れらの成分の配列のどちらかによって構成されている。
【0056】さらに、本発明のベクトルの処理回路Cは
、入力データの形でベクトル集合Sを記憶する第2の記
憶ユニット2を有する。この入力データは、ベクトル集
合Sの少なくとも1つのベクトルYiあるいはそれに対
応する成分{yki}から構成されている。実際、入力
データは、上述したように、ベクトル集合Sの部分集合
Suのどれからでも構成されてもよい。
【0057】加えて、図6および図7に示すように、計
算ユニット3は、入力データおよび空間的合致データの
空間的および時間的合致を上述した条件の下に並行処理
を用いて達成する。計算ユニット3は、成分{xki}
あるいは成分{yki}、即ち、2次元処理ネットワー
クREのx次元に割り当てられる空間的合致データベク
トルRkの連続と2次元処理ネットワークREのy次元
に割り当てられる入力データを処理するセルの2次元処
理ネットワークREとして構成されている。
【0058】また、図6および図7に示すように、第1
および第2の記憶ユニット1および2は、対応するベク
トルの部分集合が処理の間記憶されるワーキングメモリ
10および20をそれぞれ有している。ワーキングメモ
リ10および20は、対応するデータの割り当てられた
x次元およびy次元にそれぞれ応じた2次元処理ネット
ワークREの処理セルCTに並列接続によって直接接続
されている。
【0059】また、第1および第2の記憶ユニット1お
よび2は、一端が大容量メモリ4に、他端がワーキング
メモリ10および20にそれぞれ接続された仮想メモリ
11および21を有している。仮想メモリ11および2
1は、対応するベクトルの部分集合の処理の間、さらに
高次の対応するベクトルの部分集合に対するワーキング
メモリ10および20の補助メモリとしてそれぞれ作動
する。これにより、ワーキングメモリ10および20並
びに仮想メモリ11および21は、それぞれ全く同じで
あり、連続的に単にスイッチングによってワーキングメ
モリおよび仮想メモリのそれぞれの役割を果すことがで
きる。大容量メモリ4は、図6および図7において、破
線でベクトルの処理回路Cの左側に示されている。
【0060】図6および図7に示す本発明のベクトルの
処理回路は、作動中に、実際には、部分集合Suがロー
ドされるが、ベクトル集合Sのメモリのサイズ、特に、
対応する仮想メモリ21は、1クロックサイクル当たり
1つのベクトル成分のレートで1マイクロサイクルの間
、完全にロードされるようなサイズである。ところが、
ベクトル集合Rのメモリ、即ち、ワーキングメモリ10
および仮想メモリ11のそれぞれのサイズは、仮想メモ
リが1クロックサイクル当たり1つのベクトル成分の同
じレートで1マクロサイクルの間、完全にロードされる
ようなサイズである。
【0061】さらに、処理セルCTの数における計算ユ
ニット3のサイズとメモリのサイズとの関係は、メモリ
のサイズが1マイクロサイクルあるいは1マクロサイク
ルの文脈が準備されると考えられるまでメモリのサイズ
が待つことは決してないような関係である。
【0062】計算ユニット3に関する限りにおいては、
それは、実際には処理セルCTを構成する複数の基本的
プロセッサPEを有する。そして、2次元処理ネットワ
ークREは、第1のベクトル集合Rの複数のベクトルと
第2のベクトル集合Sの複数のベクトルとの合致を確実
にする直交領域として構成されている。
【0063】ワーキングメモリ20および第2の記憶ユ
ニット2の仮想メモリ21のそれぞれの構成に関する限
りにおいては、ベクトル集合Sの部分集合Suの記憶を
達成する第2の記憶ユニット2の仮想メモリ21は、行
列アドレッシングを用いて記憶セルCMの中に対応する
ベクトルYiの成分{yki}の記憶を可能にするため
に準備されている。そして、それぞれのベクトルYiは
、図6および図7に示すように、1つの列に記憶される
。 そして、ワーキングメモリ20および仮想メモリ21は
、n個のベクトルYiを記憶するn個の列を有し、それ
ぞれの行は、上述した入力データを構成するn個の成分
{yki}を有する。
【0064】次に、図6および図7を参照して、本発明
のベクトル処理回路の2つの制限のない実施例、即ち、
順次表現−並列配置タイプの第1の構成と並列表現−並
列配置タイプの第2の構成とからなる実施例を説明する
。順次表現−並列配置という語は、本発明のベクトルの
処理回路に順次入力される1あるいはそれ以上のクロッ
クパルスに対応した単位時間当たり1つのベクトルのレ
ートで順次入力される空間的合致データベクトルRkに
よって構成される空間的合致データの順次表現を意味す
る。尚、図6および図7には、上述したクロックパルス
を出力するクロック生成回路は図示していない。
【0065】同様に、並列表現−並列配置という語は、
第2の実施例において後述するように、計算ユニット3
に並列に入力される空間的合致データベクトルRkによ
って構成される空間的合致データの並列表現を意味する
。2つの実施例において、並列配置は、上述した2次元
処理ネットワークREの最後の行xを構成する基本プロ
セッサPEによって並列に配置される計算結果の配置と
して示される。
【0066】まず、順次表現−並列配置タイプの第1の
構成による第1の実施例を図6を参照して説明する。こ
の構成において、2次元処理ネットワークREは、p行
n列に配列されたn×p個の基本プロセッサを有する。 ワーキングメモリ20の第1の行のそれぞれの記憶セル
CMは、すべての処理セルCTに接続され、バスを介し
て対応する基本的プロセッサPEに接続されている。空
間的合致データベクトルRkが記憶されるワーキングメ
モリ10は、行列アドレッシングを有する記憶セルに対
応するベクトルXiの成分{xki}の記憶を準備する
ために構成されている。ベクトルXiのそれぞれは、1
つの列に記憶され、従って、1つの空間的合致データベ
クトルRkは、1つのベクトルXiに対応する。ワーキ
ングメモリ10の第1の列のそれぞれの記憶セルCMは
、すべての処理セルCTに接続されると共に、バスを介
して対応する基本プロセッサPEに接続されている。
【0067】図6に示すように、第1の構成において、
ワーキングメモリ10は、連続する空間的合致データベ
クトルRkを構成するn×p個のベクトルXiを記憶す
るためにn×p個の列の記憶セルCMを有する。また、
ワーキングメモリ20および仮想メモリ21は、ベクト
ル集合Sの部分集合SuおよびSu+1にそれぞれ関す
るp次元の縦に配列されたn個のベクトルYiを記憶す
る。
【0068】ベクトル集合Rのメモリ、即ち、ワーキン
グメモリ10は、p次元のn×p個のベクトルXiを記
憶する。図6に示す回路によって達成される作用は、n
×p個のベクトルの2つの集合の合致である。
【0069】n×p個の基本プロセッサPEから構成さ
れる計算ユニット3は、メモリSのp行のデータを連続
して入力する。時刻T1において、メモリSの第1の行
のデータが基本プロセッサPEの第1の列にロードされ
、次に、メモリSの第2の行のデータが基本プロセッサ
PEの第2の列にロードされ、その動作が最後の行まで
行なわれる。メモリSの第1の行のデータが基本プロセ
ッサPEの第1の列にロードされると、基本プロセッサ
PEの第1の列は、ベクトルX1の第1の成分x11を
入力する。同様に、メモリSの第2の行のデータが基本
プロセッサPEの第2の列にロードされると、基本プロ
セッサPEの第1の列がベクトルX2の第1の成分x1
2を入力している間に、基本プロセッサPEの第2の列
は、ベクトルX1の第2の成分x21を入力する。以下
、同様である。
【0070】従って、2つのベクトルXiと、Yi、あ
るいはiとは異なるjを有する他のベクトルYjとの間
の合致は、図6に示すように、基本プロセッサPEのy
次の1つの列において実行される。それぞれのサイクル
、即ち、それぞれのクロックサイクルでは、1つの基本
プロセッサPEは、x次の1つ大きい次数の同じ列に続
いている基本プロセッサPEにその結果を転送する。こ
れにより、1つの列のp番目の基本プロセッサPEは、
1サイクル当たり1つの結果を転送する。
【0071】ワーキングメモリ10および20並びに仮
想メモリ11および21が1クロックサイクル当たりそ
れぞれ1つの成分{xki}および{yki}のレート
で対応するベクトル成分をロードする場合、仮想メモリ
S、即ち、仮想メモリ21のデータを再びロードしてい
る間、1サイクル当たり1つの成分のレートでn×pサ
イクルが要求される。このために、メモリR、即ち、ワ
ーキングメモリ10および仮想メモリ11は、n×p個
のベクトルRkがロードされ、記憶している。n×pサ
イクルにおいて、第1の部分集合S1のn個のベクトル
Yiは、ベクトル集合Rのn×p個のベクトルと合致す
る。 同時に、仮想メモリR、即ち、仮想メモリ21は、部分
集合Su+1あるいはS2から構成されるn個のベクト
ルを入力する。
【0072】上述した構成によれば、1マイクロサイク
ルは、n×pサイクルからなる。1マイクロサイクルの
間、ベクトル集合S、さらに詳しくいえば、部分集合S
uのn個のベクトルは、ベクトル集合Rのn×p個のベ
クトルと合致し、同時に、ベクトル集合Sの新しい部分
集合Su+1が第2の記憶ユニット2の仮想メモリ21
にロードされる。
【0073】時刻Tnp+1では、2次元処理ネットワ
ークREの基本プロセッサPEの第1の列あるいは第1
の行は、部分集合Su+1を記憶するワーキングメモリ
20の第1の行のデータを入力し、これにより、第2の
マイクロサイクルが開始される。空間的合致データベク
トルRkが記憶されている仮想メモリ11からデータを
再びロードするためには、n×p2サイクルが必要であ
る。この時間は、ベクトル集合Sのp個の部分集合、即
ち、n×p個のベクトルの集合の処理に対応している。 これにより、1マクロサイクルは、n×p個のベクトル
の2つの集合の合致が実行され、同時に、空間的合致デ
ータベクトルRkから構成されるベクトルXiの新しい
集合R’がロードされるn×p2サイクルからなると定
義される。
【0074】ここで、図6に当該サイクル、即ち、マイ
クロサイクルとマクロサイクルの配置を示す。図6に示
す本発明のベクトルの処理回路の第1の構成においては
、実際には、仮想メモリ21だけを基本的プロセッサP
Eの2次元処理ネットワークREに近接して組み込んで
もよい。即ち、レジスタという形で配置され、2次元処
理ネットワークREそのものあるいはその近傍に直接組
み込まれているワーキングメモリ20に組み込んでもよ
い。
【0075】次に、並列表現−並列配置タイプの第2の
構成による第2の実施例を図7を参照して説明する。こ
の構成において、2次元処理ネットワークREは、q行
n列に配列されたn×q個の基本プロセッサPEを有す
る。処理セルCTおよび対応する基本的プロセッサPの
それぞれのワーキングメモリ10および20の記憶セル
に対する接続は、第1の構成と同様である。空間的合致
データベクトルRkが記憶されるワーキングメモリ10
は、行列アドレッシングを有する記憶セルに対応するベ
クトルXiの成分{xki}の記憶を準備するために構
成されている。
【0076】図7に示す第2の構成においては、ベクト
ルXiのそれぞれは、1つの行に記憶され、それぞれの
行は、n個のベクトルXiによって構成される。そして
、空間的合致データベクトルRkのそれぞれは、隣接す
るq個の行に記憶されるq個のベクトルの同次数kの成
分{xki}から構成されている。
【0077】図7に示すように、ワーキングメモリ10
は、ベクトルXiからベクトルXi+qまで、ベクトル
Xi+qに続いてベクトルXi+q+1からXi+2q
まで等が記憶される隣接するq個の行を有している。図
7に示す第2の構成においては、ベクトル集合Sに関連
したワーキングメモリ20は、図6に示す第1の構成に
おいて示したように、1列当たりに記憶されるp次元の
のn個のベクトルYiを記憶する。
【0078】ベクトル集合Rに関するワーキングメモリ
10および仮想メモリ11は、n個のベクトルのq行に
構成されている同次元のn×q個のベクトルXiを記憶
する。  計算ユニット3によって達成される作用は、
n×q個のベクトルの2つの集合の合致である。n×q
個の基本プロセッサPEは、ベクトル集合Sのメモリ、
即ち、ワーキングメモリ20の1行のデータおよびベク
トル集合Rのメモリ、即ち、空間的合致データベクトル
Rkの1つの列のデータを1サイクル毎に入力する。メ
モリの構成は、好ましくは、図7に示すように、1サイ
クル毎に基本的プロセッサPEが同じ列の2つの成分{
xki}および{yki}を入力するような構成とする
。2つのベクトルXiおよびYiの合致は、結果として
与えられたアドレスxおよびyを有する基本的プロセッ
サPEにおいて局所的に実行される。pサイクルの最後
に、上述したアドレスxおよびyを有する基本的プロセ
ッサPEは、その結果をコモンバスを介して転送する。
【0079】第1の構成の場合、1マイクロサイクルは
、ベクトル集合Sの1つの部分集合のn個のベクトルが
ベクトル集合Rのn×q個のベクトルと合致し、仮想メ
モリS、即ち、仮想メモリ21がベクトル集合Sの新し
い部分集合Su+1を入力する間のn×pサイクルとし
て定義される。図7に示す第2の構成においては、1マ
イクロサイクルの間、ベクトル集合Sに関するワーキン
グメモリ20はn回読み出されなければならない。
【0080】対応するマクロサイクルは、図7に示すよ
うに、第1の記憶ユニット1の仮想メモリ11に新しい
ベクトル集合R’がロードされ、記憶されると同時にベ
クトル集合Sのq個の部分集合Su+qがベクトル集合
Rと比較されるq個のマイクロサイクルに等しい。図6
および図7に示す2つの構成において、本発明のベクト
ルの処理回路は、1マクロサイクルの間、多数のベクト
ルの同一のサイズおよびカージナル数の2つのベクトル
集合RおよびSの合致を実行する。ところが、本発明の
回路は、どんなサイズの2つの集合に対しても連続する
マクロサイクルによって合致を行なうことを可能にする
【0081】本発明のベクトルの処理回路の作用は、図
および図7に示す実施例に限定されないことはもちろん
である。特に、空間的合致データベクトルRkあるいは
入力データの転送はもちろん、記憶ユニット、即ち、第
1の記憶ユニット1および第2の記憶ユニット2の1サ
イクル、即ち、1クロックサイクル当りの1成分のロー
ドおよび記憶の代りに、それぞれ1サイクル当りNx個
の成分および1サイクル当りNy個の成分のレートで実
行する場合に、本発明のベクトルの処理回路の機能を一
般化し、広げることは可能である。
【0082】次に、本発明のベクトルの処理回路をさら
に応用した概念について図8〜図12を参照して説明す
る。ベクトル集合Sに関するメモリに供給する1サイク
ル当たりNy個の成分に対して、ベクトル集合Sに関す
る仮想メモリ21のデータが(n×p/Ny)クロック
サイクルの1マイクロサイクルの間、ロードされる。ク
ロックサイクルの数に関し、1マイクロサイクルは、式
(n×p/Ny)によって定義される。
【0083】これにより、定義されたマイクロサイクル
の時間がメモリRのyに応じた奥行を決定し、メモリR
の全体のサイズが{p×(n×p/Ny)}(第1の構
成の場合)あるいは{q×(n×p/Ny)}(第2の
構成の場合)に比例する。ベクトル集合Sに関するメモ
リの1サイクル当たりNy個の成分の入力および記憶に
関しては、ベクトル集合Rに関する仮想メモリ11は、
{p×(n×p/Ny)×(1/Nx)}(第1の構成
の場合)あるいは{q×(n×p/Ny)×(1/Nx
)}(第2の構成の場合)に比例した1マクロサイクル
の間、ロードされる。
【0084】基本的プロセッサPEの与えられた数、即
ち、図6に示すように、第1の構成においてはn×p、
図7に示すように、第2の構成においてはn×qに関し
ては、通過帯域の増加が使用されるメモリのサイズを削
減する。これにより、一般に、本発明のベクトルの処理
回路Cは、仮想メモリ11あるいはベクトル集合Rに関
するワーキングメモリ10の記憶セルCMの数において
は、式(Tr=NPE×p/Ny)を満たすサイズTr
を有することが有利である。
【0085】ここで、NPEは2次元処理ネットワーク
REを構成する基本的プロセッサPEの数を示し、pは
ベクトルの次元を示し、Nyは1クロックサイクル当た
りベクトルの成分の数におけるメモリの記憶レートを示
す。もちろん、図6および図7に示すような本発明のベ
クトルの処理回路が1つの回路を用いてあらゆるサイズ
のベクトルまたはタップルの集合の合致を生じさせるこ
とに用いられるのは理解できるであろう。
【0086】実際、上述した回路は、1マクロサイクル
の間、ベクトル集合Rのn×p個のベクトルとベクトル
集合Sのn×p個のベクトルとの合致を生じさせること
ができる。カージナル数NおよびN’、即ち、Nおよび
N’個のベクトルを有するベクトル集合RおよびSに対
し、ベクトル集合RおよびSのどちらかにおいてn×q
個のベクトルの部分集合を構成することが可能である。 ベクトル集合RおよびSにおける部分集合の数は、それ
ぞれ(N/n×q)個および(N’/Nq)個である。 ベクトル集合RおよびSのすべてのベクトルの合致は、
ベクトル集合Sのそれぞれの部分集合がベクトル集合R
のすべての部分集合を合致した時、実行され、従って、
その合致のために要求されるマクロサイクルの数は、{
N×N’/(n×q)2}である。
【0087】あらゆるカージナル数のベクトル集合Rお
よびSの合致を生じさせるための本発明のベクトルの処
理方法の順次タイプの制限のない実施は、図13に示さ
れている。この図において、ステップ1000は、ベク
トル集合Rおよびベクトル集合S、即ち、どんなカージ
ナル数の集合も独立して記憶するステップを示し、ステ
ップ1001は、それぞれ同じカージナル数を有するベ
クトル集合Rの部分集合Rvとベクトル集合Sの部分集
合Suとを記憶するステップを示す。
【0088】また、ステップ1002は、2次元処理ネ
ットワークREに直接接続されたベクトル集合Sの2次
の部分集合であって、部分集合Suの部分集合である部
分集合Subと部分集合Rvとをそれぞれワーキングメ
モリ10および20に記憶するステップを示し、ステッ
プ1003は、1マイクロサイクルの間に部分集合Rv
およびSubの空間的および時間的合致をするステップ
を示し、ステップ1004は、部分集合Subより高い
階層の部分集合Sub+1をマイクロサイクルの間に同
時に仮想メモリ21に記憶するステップを示す。
【0089】さらに、ステップ1005は、1マイクロ
サイクルの間にベクトル集合Sの2次の部分集合Sub
のすべてに対して上述したステップ1002〜ステップ
1004を繰返し、部分集合Rv+1を同時に仮想メモ
リ11に記憶するステップを示し、ステップ1006は
、ベクトル集合Sの部分集合Suのすべてに対して上述
したステップ1001〜ステップ1005を繰返すステ
ップを示し、ステップ1007は、ベクトル集合Rの部
分集合Rvのすべてに対してステップ1001〜ステッ
プ1006を繰返すステップを示し、ステップ1008
は、エンドステップを示す。
【0090】同様に、本発明による図6および図7に示
すようなベクトルの処理回路は、後述するマクロベクト
ルと呼ばれるどんな次元のベクトルの合致を生じさせる
ために用いられてもよい。回路は、合致のためにp次元
の2つのベクトル集合を生じさせる。ベクトル集合Rお
よびSのp次元に対して、それぞれのベクトルは、p次
元のP/p個のサブベクトルに分割される。但し、P>
pである。p次元より低い次元のサブベクトルは、1つ
の任意の値、例えば、0を有する成分によって完結して
いる。1マクロサイクルの間、図6および図7に示すベ
クトルの処理回路は、それぞれベクトル集合RおよびS
のn×q個およびn×p個のサブベクトルの合致を生じ
させる。従って、P/pマクロサイクルは、これらのベ
クトルの全体を処理するために要求される。そして、サ
ブベクトルから得られた部分的な結果は、それぞれのマ
クロサイクルの最初に、基本的プロセッサPEに再び入
力されなければならない。そして、部分的な結果、即ち
、それぞれのマクロサイクルに関する結果は、図6およ
び図7に示すように、ベクトルの処理回路C内の記憶メ
モリ5に記憶される。
【0091】図11および図12に示すように、数個の
パラレル接続あるいはカスケード接続の回路が処理レー
トを増加させることがわかるであろう。図11に示すよ
うに、複数のパラレル接続回路を使用すると、処理速度
が増加するか、あるいは、同じ処理速度でサイズやカー
ジナル数がより大きな集合を処理することができる。z
個のパラレル接続回路は、1マクロサイクルの間に処理
すべきベクトル集合Sのn×q個のベクトルの集合とベ
クトル集合Rのz×n×q個のベクトルの集合との合致
を可能にする。それぞれNおよびN’のカージナル数あ
るいはサイズのベクトル集合RおよびSに対して、ベク
トル集合RおよびSの合致は、ベクトル集合Sのn×q
個のベクトルのそれぞれの部分集合とベクトル集合Rの
z×n×q個のベクトルの部分集合のすべてとの合致に
帰着する。従って、上述した合致をもたらすために要求
されるマクロサイクルの数は、{(N×N’)/z×(
n×q)2}に等しい。
【0092】さらに、z個の回路がパラレルに使用され
る時、ベクトル集合RおよびSの合致を生じさせる処理
時間は、同じ働きをする1つの回路がかかる時間のz倍
よりも少ないことがわかるであろう。図12に示すよう
に、数個のカスケード接続された回路は、処理すべきベ
クトルの次元を増加させる。P次元を有するベクトル集
合RおよびSのベクトルに対して、w個のカスケード接
続された回路は、1マクロサイクルの間に処理すべきw
×p次元のベクトル集合Rのn×q個の部分集合とベク
トル集合Sのn×q個のの部分集合との合致を可能にす
る。ベクトル集合の処理は、(p/w×p)に等しいマ
クロサイクル数を要求する。
【0093】カスケード接続されたw個の回路を使用す
ることによって、1つの回路が同じ働きをするのにかか
る処理時間をwで割ることができる。次に、力積−マト
リックス−ベクトルタイプの処理、特に、N2次元の1
つのマトリックスAおよびN次元のベクトルXに対して
特に設計された本発明のベクトル処理回路の実施例を図
14〜図16を参照して説明する。
【0094】この実施例において、図14に示すように
、計算ユニット3は、回路0を構成する処理セルCTを
有した1つの列を有する処理セルCT1つのネットワー
クから構成されている。従って、図14および図15に
示す2次元処理ネットワークは、1つの1次元処理ネッ
トワーク、即ち、0測定を有する2次元処理ネットワー
クの次元の1つを削減する。
【0095】図15からわかるように、それぞれの処理
セルCTは、乗算器100および加算器101から構成
されている。ベクトルXの成分xjは、ワーキングメモ
リ20から順次入力され、マトリックスAの係数aij
(i,j=1〜n)は、計算ユニット1の仮想メモリ1
1あるいはワーキングメモリ10にロードされる。ワー
キングメモリ20の役割を果すレジスタに記憶されてい
るベクトルXの成分X1、X2、XjおよびXnは、処
理セルCTに連続的に供給するコモンバスBUSを経て
回路0に入力される。
【0096】マトリックスAは、記憶ユニット1のワー
キングメモリ10に記憶され、それぞれの処理セルCT
は、マトリックスAの第1の行の成分A1jを同時に入
力することができる。これにより、時刻T1では、処理
セル31が成分x1およびa11を入力し、時刻T2で
は、処理セル32が成分x2およびa12を入力する。 以下、同様に、時刻Tkでは、処理セル3kが成分xk
およびa1kを入力する。そして、処理セル3kは、積
a1k×xkを算出し、その積a1k×xkを処理セル
3k−1から転送される部分和Sk−1に加算する。時
刻Tk+1では、処理セル3kは、数式3で示される部
分和Skを転送する。
【数3】
【0097】時刻Tk+1では、回路0は、結果ベクト
ルYの第1の成分y1を転送する。さらに、時刻T2で
は、処理セル31は、第2のベクトル行の第1の成分a
21を入力し、時刻T3では、処理セル32は、成分a
22を入力する。以下、同様である。時刻Tn+2では
、回路0は、結果ベクトルYの第2の成分y2を転送す
る。こうして、上述した手順は、図14〜図16に示す
ように、マトリックスAの行ベクトルのすべてに対して
繰返され、回路0は、結果ベクトルYのn個の成分を順
次転送する。
【0098】ベクトルXのn個の成分が回路0、特に、
対応する処理セルCTのレジスタ102にロードされて
いる時、回路0は、新しいベクトルX’の成分を入力す
る準備をし、これにより、新しいベクトルXは、nクロ
ックサイクルのいずれにおいても処理される。図16に
示すように、マイクロサイクルは、ここでは、マトリッ
クスAとベクトルXとの積の成分に対応する期間として
定義され、このマイクロサイクルは、nクロックサイク
ルに等しい。こうして、1マイクロサイクルの最後に、
新しいベクトルの処理を達成する文脈が準備される。
【0099】同様に、マクロサイクルは、新しいマトリ
ックスA’を1クロックサイクル当たり1つの係数のレ
ートで仮想メモリ11にロードするために要求される期
間として定義され、ローディング時間は、n2に等しい
。こうして、上述したローディングと同時に、nマイク
ロサイクルが実行される。
【0100】次に、N2次元の正方マトリックスASと
N次元のベクトルX並びにN×M次元の直交マトリック
スARとM次元積タイプのベクトルXBにそれぞれ関す
るさらに2つの特有の変形例を図17〜図21を参照し
て説明する。図17において、マトリックスASは、N
2次元の正方マトリックスであり、YおよびXは、N次
元のベクトルを示す。尚、Nは、nより非常に大きな数
である。
【0101】積Y=AS×Xの計算は、図14〜図16
を参照してすでに述べた手順に基づいている。Nは、式
(N=K×n)を満たすnの倍数であるとみなす。この
ような場合、計算ユニット3は、並列に作動するK個カ
スケード接続された回路から構成されている。図18に
おいては、上述した回路は、それぞれ01から0Kで示
されている。
【0102】ベクトルXは、n次元のサブベクトルX(
1),X(2),X(j),・・・,X(K)のK個の
等しい部分の成分に分解される。同様に、マトリックス
ASは、n2次元のK2個のサブマトリックスA(i,
j)(i,j=1〜K)に分解される。積の結果ベクト
ルYは、数式4の形で得られる。
【数4】 但し、
【数5】 数式5において、A(i,j)×X(j)は、n2次元
のサブマトリックスA(i,j)とn次元のサブベクト
ルX(j)との積を示す。また、Y(i)は、結果ベク
トルYのn次元のi番めの部分あるいはサブベクトルを
示す。
【0103】計算の構成は、n2サイクルからなるマク
ロサイクルの連続に基づく。それぞれのマクロサイクル
の間、K個のマトリックスの列A(i,j)(j=1,
・・・,K)が処理され、同時に、K個のマトリックス
の次の列A(i+1,j)は、K個の回路のあいている
メモリにロードされる。従ってKマクロサイクルがマト
リックスASのK個のマトリックス列を処理するために
要求される。
【0104】他方、1マクロサイクルは、nマイクロサ
イクルに分解される。1マイクロサイクルは、K個のマ
トリックスA(i,j)(j=1,・・・,K)を構成
するマトリックスASのn個の行ベクトルと1つのベク
トルXの積に対応する。この積の結果は、ベクトルY(
i)、即ち、ベクトルYのi番目の部分である。従って
、1マクロサイクルのn個の連続したマイクロサイクル
は、n個のベクトルX、即ち、ベクトルX1,X2,・
・・,Xnの連続した処理に対応する。分解された連続
した結果は、ベクトルY1(i),Y2(i),・・・
,Yn(i)、即ち、結果ベクトルY1,Y2,・・・
,Ynのi番目の部分である。
【0105】以上説明した計算の経過を図19のタイミ
ングチャートに示す。まず、マトリックスA(1,1)
,A(1,2),・・・,A(1,j),・・・,A(
1,K)は、それぞれ回路01,02,・・・,0j,
・・・,0Kのメモリにロードされる。ベクトルX1の
上述したマトリックスA(1,j)に対応した成分が以
下に示す方法で回路に順次ロードされる。
【0106】   時刻T1からTnまで:         回路0
1は、ベクトルX1(1)のn個の成分       
                        を
入力する。   時刻Tn+1からT2nまで:      回路0
2は、ベクトルX1(2)のn個の成分       
                         
を入力する。 ・・・・・・・・・・・・・・・・・・・・・・・・・
・・・・・・・・・・・  時刻T(k−1)n+1か
らTNまで:  回路0kは、ベクトルX1(K)のn
個の成分                     
           を入力する。 時刻TN+1からTN+2までは、最後の回路は、ベク
トルY1(1)のn個の成分を転送する。
【0107】回路02へのベクトルX1(2)のロード
と同時に、回路01は、ベクトルX2(1)のn個の成
分を入力する。従って、ベクトルX2のロードは、ベク
トルX1に対するのと同様に実行されるが、nサイクル
のシフトを伴う。ベクトルX3,・・・,Xnについて
も同様である。カスケード接続された最後の回路0kに
よって転送される結果は、同時に連続したベクトルY1
(1),・・・,Yn(1)である。
【0108】それぞれの回路において、第1のメモリに
ロードされたマトリックスは、n2サイクルからなるマ
クロサイクルを使用する。マトリックスA(i,j)(
j=1,・・・,K)の処理の間、マトリックスA(2
,j)(j=1,・・・,K)は、回路にロードされる
。ロードが終了する、即ち、第1のマクロサイクルの最
後に対応した時、第2のマクロサイクルが開始され、ベ
クトルX1,X2,・・・,Xnは、再び回路に順次入
力される。
【0109】第2のマクロサイクルの間に転送された結
果は、ベクトルY1(2),Y2(2),Y3(2)・
・・,Yn(2)である。同様に、最後のマクロサイク
ルの間に転送された結果は、ベクトルY1(k),Y2
(k),Y3(k)・・・,Yn(k)である。積A×
X1,A×X2,・・・,A×Xnが算出されている間
に、全体のマトリックスの処理に対してKマクロサイク
ルが要求される。
【0110】次に、積−マトリックス−ベクトルタイプ
、即ち、N×M次元のマトリックスARとM次元のベク
トルXBの処理の実施例を図20および図21を参照し
て説明する。この場合、計算ユニット3は、並列に作動
するK個カスケード接続された回路から構成されており
、ベクトルXBは、m個の部分あるいはn次元のサブベ
クトルXB(1),XB(2),・・・,XB(n)に
分解され、マトリックスARは、n2次元のK×m個の
サブマトリックスA(i,j)(i=1〜K,j=1〜
m)に分解される。
【0111】こうして、図20に示す実施例の処理にお
いては、それぞれm個の回路のK/mグループが構成さ
れ、回路01から0Kまでのグループが並行して独立に
作動する。第1のマクロサイクルの間、第1のグループ
は、基本的マトリックスA(1,1),A(1,2),
・・・,A(1,m)を処理する。次に、第2のグルー
プは、基本的マトリックスA(2,1),A(2,2)
,・・・,A(2,m)を処理する。そして、K個の最
後のグループは、マトリックスA(K×m,1),A(
K×m,2),・・・,A(K×m,m)を処理する。
【0112】このマクロサイクルの間、n個のベクトル
XBが処理され、第1のグループによって転送された結
果は連続したベクトルY1(1),・・・,Yn(1)
であり、第2のグループによって転送された結果は連続
したベクトルY1(2),・・・,Yn(2)であり、
最後のグループは、ベクトルY1(K×m),・・・,
Yn(K×m)を転送する。最初のマクロサイクルの間
、K個の新しいマトリックスは、各回路にロードされ、
これらの新しいマトリックスは、第2のマクロサイクル
の間、処理される。
【0113】こうして、この計算は、n個のベクトルX
BがマトリックスARの全体と共に処理される間のmマ
クロサイクルの連続を要求する。次に、図22〜図24
を参照して本発明によるベクトルの処理回路のデータベ
ースの2つの関係の比較の手順を組み込むための実施例
について説明する。1つのデータベースは、単に関係の
集合、例えば、1つの関係がタップルの1つの集合、例
えば、異なる複数の生徒から構成される生徒と先生とレ
ッスンとからなる関係の集合に過ぎない。また、1つの
タップルは異なる属性、例えば、1つの生徒タップルに
対して、彼の姓、彼のクリスチャンネーム、彼の年、彼
の住所、彼の選択科目等から構成されている。
【0114】1つのデータベースにおいてテストによっ
て公式化された質問のほとんどは、1つまたは2つの関
係、即ち、1つまたは2つのタップルに関する基本的な
作用の連続に分割される。常套的には、これらの作用は
以下に示すことからなる。 (a)選択、即ち、1つの基準の選択 (b)接合、即ち、属性の検出あるいは4つのタップル
を越えた属性の機能 (c)和集合、共通集合、および差集合などの集合に関
する作用 (d)投影、即ち、同じ属性における投影あるいはダブ
レットの抑圧 (e)ソート これらの作用のすべて、例えば、選択は、1つの集合の
すべての要素と他の集合のすべての要素との比較によっ
て実行される。ここでは、2つの集合の比較を扱うこと
とする。提出された質問によって、比較の結果の解析が
異なる。
【0115】1つのデータベースにおける関係のサイズ
は、数10のタップルから数100万のタップルにまで
変更することができる。これにより、2つの集合の間の
比較の作用は、非常に高価な、特に、時間において、高
価な作用であり、1つの直接的な方法によって1000
の要素を有する2つの集合を比較することが分かるであ
ろう。100万の比較を準備することは必要である。
【0116】現在では、2つの集合を比較する、即ち、
直接的にソートしたり、チョッピングしたりするための
3つのタイプのアルゴリズムが存在する。チョッピング
方法の本質的な部分は、チョッピング関数の値によって
索引された異なるばらばらな部分集合の中にあるタップ
ルの分割を得るために、それぞれのタップルの属性の値
に対する同じランダムな関数を適用することである。こ
れにより、異なる索引の2つのパケットの間には、どん
な接合タップルも存在しない。チョッピング位相の後に
は、同じ索引を有するパケットを接合することのみが残
っている。
【0117】この後者の方法は、比較の数を削減し、い
くつかの同様な独立した作用に1つの作用を分割する。 本発明のベクトルの処理回路は、チョッピング方法によ
く適合した1つのアーキテクチュアを有している。実際
、この方法は、大きなカージナル数の2つの集合の比較
をより小さなカージナル数を有する集合、特に、30要
素と100要素との間の集合の比較の連続に変えること
を可能にする。これにより、1つの基本的比較が基本的
プロセッサPEによって直接的に、例えば、次の作用の
文脈がロードされている間になされる。
【0118】図22および図23に示す実施例は、図7
に示す並列表現−並列配置タイプと呼ばれる第2の構成
に対応して1つのアーキテクチュアに一致する。この実
施例は、選択された構成をも前もって判断しない。即ち
、この具体例は、本発明の主旨から逸脱しない範囲で順
次表現(即ち、導入)−並列配置タイプのどんな他の構
成ももちろん可能である。
【0119】図23からわかるように、2次元処理ネッ
トワークの基本的プロセッサPEのそれぞれは、”R×
A”=”S×A”、”R×A”<”S×A”および”R
×A”と”S×A”とは属性あるいは属性の部分どちら
かであるかという質問あるいはテストに答えるために、
ディジタルコンパレータ200を有する。プログラム可
能な制御ユニット201は、以下に示すテスト、即ち、
”R×A”<”S×A”、”R×A”≦”S×A”、”
R×A”=”S×A”、”R×A”≧”S×A”あるい
は”R×A”>”S×A”の1つに答えることを可能に
する。プログラム可能な制御ユニット201は、考慮さ
れたテストに対する正の反応を示す値1の結果ビットを
転送し、逆の場合に、値0の結果ビットを転送する。さ
らに、メモリ203は、基本的プロセッサPEのそれぞ
れによって転送された中間結果あるいは上述し、定義し
た結果のどちらかを記憶するための準備がされている。 このメモリ203は、例えば、図6および図7に示す回
路のメモリ5に同様に組み込まれている。
【0120】図22に示す2次元処理ネットワークRE
を構成する計算ユニット3の基本的プロセッサPEのす
べては、同じコントロールに従い、これにより、SIM
Dタイプの構成に組み込まれており、即ち、単体のプロ
セッサコントロールを有し、このことは、計算ユニット
3の制御部分および基本的プロセッサPEのそれぞれの
制御部分を極めて簡単にする。
【0121】上述した基本的プロセッサPEは、比較的
簡単な構成のため、1000から2000の非常に少な
いトランジスタを有し、要求される作用周波数に依存し
、このことは、1つの計算ユニット3当たりおよびそれ
ぞれの回路当たり数10個の基本的プロセッサPEを組
み込むことを可能にする。
【0122】次に、属性の2つの集合の比較を図22〜
図24を参照して説明する。一般に、どんな作用が2つ
の関係において実行されても、ベクトル集合Rのタップ
ルとベクトル集合Sのタップルとの合致は、以下に示す
方法で表現される。(R×A1  OP1  S×A1
)および/または(R×A2  OP2  S×A2)
および/または・・・(R×Ak  OPk  S×A
k)。ここで、R×Aiはベクトル集合Rの1つのタッ
プルのi番目の属性、S×Ajはベクトル集合Sの1つ
のタップルのj番目の属性、kは作用が使用する属性の
数、OPjはF,<,>,J,=,≠のタイプの回路を
示す。
【0123】2つの属性の間で実行される作用は算術的
であるが、その結果は論理学的である。言換えれば、そ
れは、以下に示すタイプの質問に応答することからなる
、即ち、ベクトル集合Rのタップルの属性iは、ベクト
ル集合Sのタップルの属性jより大きいか。そうである
ならば、反応は1であり、そうでないならば、反応は0
である。
【0124】2つのタップルの合致の結果は、属性のペ
アから得られる結果の集合に応用されるブール関数のブ
ール値である。2つの関係における1つの作用は、ベク
トル集合Rの1つのタップルとベクトル集合Sの1つの
タップルから構成されるすべての可能なタップルのペア
にこの作用を応用することからなる。言換えれば、ベク
トル集合Sのどんなタップルでもベクトル集合Rのすべ
てのタップルに合致しなければならない。
【0125】データベース関係において、タップルは、
属性の与えられた数から構成されている。ところが、2
つの関係において実行される1つの作用は、タップルの
すべての属性を必ずしも使用しない。例えば、ベクトル
集合RとSの2つ関係に対して実行される接合作用を考
えてみると、それはブール表現([R×A1<S×A3
かつR×A3=S×A4]=真)を証明するベクトル集
合RおよびSのタップルのペアのすべてを探すことから
構成されている。
【0126】ここで示した例においては、ベクトル集合
Rのタップルの属性1および3並びにベクトル集合Sの
タップルの属性3および4だけが作用において使用され
、その他は考慮されない。1つの属性のサイズ(ビット
数)は、非常に高い。基本的プロセッサPEは、例えば
、32ビットの2つのワードの合致を実行することがで
きると我々は考えている。
【0127】属性の長さが32ビットを越えた時、それ
は一般的なケースであるが、その属性は、32ビットの
数個のワード、即ち、別々に処理されるワードに分割さ
れる。このチョッピングアップは、何の問題も起こさな
い。実際、32ビットのp個のワードから構成される属
性に対して、[R×Ai=S×Bi]タイプの質問は、
32ビットのワード、即ち、Aijが属性iのj番目の
ワードを示す場合の[R×Ai1=S×Bi1かつR×
Ai2=S×Bi2かつ・・・R×Aip=S×Bip
]のそれぞれにおいて得られる結果のブール関数に分割
される。
【0128】回路において、同じ属性の異なるワードは
、属性、即ち、ベクトル成分と同じ方法で得られる。 こうして、もし、属性が32ビットのp個のワードの長
さを有しているならば、q個の属性の1つのタップルは
、p×q個の成分を有する1つのベクトルとして考慮さ
れる。
【0129】今、1タップル当たり1つの属性を用いる
1つの作用について考える。構成されるタップルのそれ
ぞれのペアに対して提出される質問あるいはテストは、
[R×Ai=S×Bj]タイプのペアである。ここで、
制限のない例として、以下に示すものを考えてみる。3
2×pビットに等しい属性のサイズ、n×q個の属性の
部分集合サイズ、即ち、n×q個のタップル(1属性/
タップル)、n×pクロックサイクルからなる1マイク
ロサイクル、n×p×qクロックサイクル、即ち、qマ
イクロサイクルからなる1マクロサイクル。
【0130】ベクトル集合Sの記憶ユニット2のメモリ
の奥行は、32ビットのpワードに等しく、従って、そ
れぞれの列に1つの属性を記憶することを可能にする。 1マイクロサイクルは、pクロックサイクルのn個の相
に分割される。pサイクルの1つの相において、ベクト
ル集合Sのn個のタップルとベクトル集合Rのq個のタ
ップルとの合致が実行される。属性AおよびBは、32
ビットのp個のワード、A1,A2,・・・,Apおよ
びB1,B2,・・・,Bpに分割される。従って、質
問”A=B”は、”A1=B1”と”A2=B2”と・
・・”Ap=Bp”とになる。従って、質問”A=B”
に対する応答を得るためには、pサイクルの間に上述し
た分割された質問に対する部分的な応答のすべての間の
論理的な「和」を実行することで充分である。これらの
「論理和」は、図24に示すように、1つの組換えユニ
ットをプログラミングすることによるその繰返しによっ
て達成される。一旦、pサイクルの相が経過すると、そ
の結果は、図示せぬデータベース管理システムによって
処理されるために、外部に出力される。
【0131】ここで、n×q個のタップルの2つの部分
集合の合致は、1つのマクロサイクルの間保持される。 図22および図23に示す本発明の回路のアーキテクチ
ュアの大きな利点の1つは、以下に示す処理を行うこと
ができることである。 (1)あらゆる次元のタップル:もし作用が1つのタッ
プルのk個の属性を使用するならば、kマクロサイクル
が要求される。 (2)あらゆる長さの属性:実際、もし属性が32×p
ビットより長いならば、32×pビットのm個のパケッ
トにそれぞれの属性を分割することで充分である。属性
の2つの集合の比較は、mマクロサイクル続く。これら
の場合、それぞれのマクロサイクルで得られる部分的な
結果は、組換えユニットをプログラミングすることによ
って再び入力されなければならない。この点は、データ
ベースの文脈において回路に必須のフレキシビリティを
与えるために、極めて重要である。
【0132】図22および図23に示す提案されたアー
キテクチュアは、(2n+2√n)に等しい本発明の回
路に集積されたメモリサイズを有するn個の要素の2つ
の集合を比較することを特に可能とする。従来の集積さ
れたメモリの解決手法においては、メモリのサイズは、
単に2nである。本発明のベクトルの処理回路において
は、付加的な記憶コストが必要であるが、この付加的な
記憶コストは、比較および並列に実行されるべき次の比
較の要素のロードを可能とする。同じ技術において従来
の解決手法に比べて処理レートにおける2つの利点があ
る。実際、従来の解決手法においては、2つの集合を比
較するための作用は、2つのステップを実行する。即ち
、比較すべき2つの集合のロードと比較を適宜伝達する
【0133】1つのデータベースのベクトルまたはタッ
プルを示すディジタル信号を処理するシステムへの本発
明のベクトル処理回路の応用を図25を参照して説明す
る。このような回路は、さらに大きなサイズのベクトル
またはタップルの集合の処理が計画された場合、簡単に
数個の回路をカスケード接続することを可能にするよう
な本発明のベクトル処理回路の有利な特性から得られる
。今の場合、メモリからデータを読み出す装置の数は、
常に最小値である。本発明のベクトル処理回路がnサイ
ズの集合を処理することが可能であると仮定すると、例
えば、2nサイズの集合を処理するためには、実際には
、2つの回路をカスケード接続すれば充分である。さら
に一般的に、システムは、並列に接続された回路C1な
いしCkを有する。しかし、これらの回路は、後述する
ように、カスケードで作用する。それぞれの回路は、ワ
ーキングメモリ10および仮想メモリ11のレベルでそ
れぞれ空間的合致データベクトルRkの集合Rの分割R
’1,R’2,・・・,Rk’を入力する。一方、ワー
キングメモリ20および仮想メモリ21は、並行して入
力データベクトルSを入力する。このことは、同じ処理
時間に対してビットレートの変調なしに処理される空間
的合致データタップルの集合のカージナル数を増加させ
る。もちろん、空間的合致データタップルの集合のカー
ジナル数は、分割R’1ないしRk’のそれぞれのカー
ジナル数の和に等しい。
【0134】図25に示すように、要求された回路の数
がカスケード接続されるならば、上述した作用モードは
、どんなサイズの集合にも一般化される。一方、従来の
集積されたメモリの解決手法においては、メインメモリ
内の集合の1つから要素を数回に読み出す必要があるた
めに、その機能は、受入れがたく、低下するであろう。
【0135】本発明のベクトル処理方法を使用すること
により、この種の回路の構成は、4×32ビットの属性
サイズを有する32個のタップルのパケットあるいは2
×32ビットの属性サイズを有する64個のタップルの
パケットのサイズを80nsecのクロックサイクルで
処理することを可能にするCMOSの1.2mm技術の
回路に組み込むことが可能である。
【0136】ここで、本発明のベクトルの処理回路の機
能を既に存在する異なるプロセッサの機能と比較する。 4バイトの1000要素の2つの集合についての接合を
仮定すると、8Mipsの処理レートを有するVAX7
50/11タイプのプロセッサは、1.1secに上述
した接合を実行する。20Mipsのパワープロセッサ
に関して、1つの比較作用について0.44secの処
理時間が要求される。RAPIDタイプのコプロセッサ
は、120msecの1サイクルタイムに、従って、8
0nsecのサイクルタイムでは3.44msecにま
でなる1つの比較作用を達成することができる。
【0137】上述した結果に対して、本発明のベクトル
の処理回路は、そのアーキテクチュアおよび計算配列に
おいて、上述した比較作用の実行時間として0.32m
secの実行時間を要求する。従って、本発明のベクト
ルの処理回路は、20Mipsの計算パワープロセッサ
に関しては約100のゲインが、RAPIDタイプのコ
プロセッサに関しては10のゲインがある。ところで、
この結果、即ち、RAPIDタイプのコプロセッサおよ
び提案されたアーキテクチュアにおける量は、上述した
初期のチョッピング位相を入れていないため、手加減さ
れるべきである。しかし、20Mipsの計算パワープ
ロセッサに対する本発明のベクトル処理回路の加算は、
20の因子によるデータベース応用の間、その全体の機
能を改善するであろう。
【0138】以上説明した本発明の実施例によるベクト
ルの処理方法および処理回路は、ベクトル計算、マトリ
ックス計算およびそのようなデータの時間的な再利用の
導入を可能にする秩序あるいは静止性の最小値を有する
データが用いられるデータベースなどの大きなデータ構
造を用いるすべての応用に用いることができる。
【0139】
【発明の効果】以上説明したように、本発明によれば、
プロセッサおよびRAMの今日の技術水準を利用してベ
クトル計算、マトリックス計算などの大きなデータ構造
を有する計算を安価かつ簡単な構成で実現することがで
きるという効果がある。
【図面の簡単な説明】
【図1】本発明の一実施例によるベクトルの処理方法を
適用した回路の構成を示すブロック図である。
【図2】図1の回路の動作を説明するための図である。
【図3】図1の回路の動作を説明するための図である。
【図4】ベクトル集合Rのベクトルとベクトル集合Sの
ベクトルの合致の手順を説明するための図である。
【図5】ベクトル集合Rのベクトルとベクトル集合Sの
ベクトルの合致の手順を説明するための図である。
【図6】本発明の一実施例によるベクトルの処理方法を
適用した順次表現−並列配置タイプの回路の構成を示す
ブロック図である。
【図7】本発明の一実施例によるベクトルの処理方法を
適用した並列表現−並列配置タイプの回路の構成を示す
ブロック図である。
【図8】図1の回路におけるメモリの平衡の概念を説明
するための図である。
【図9】本発明の一実施例によるベクトルの処理方法を
あらゆるサイズのベクトル集合にも適用する概念を説明
するための図である。
【図10】本発明の一実施例によるベクトルの処理方法
をあらゆる次元のベクトルにも適用する概念を説明する
ための図である。
【図11】パラレルで作動する演算子から構成される複
数の2次元処理ネットワークを用いた本発明の一実施例
によるベクトルの処理方法の概念を説明するための図で
ある。
【図12】カスケードで作動する演算子から構成される
複数の2次元処理ネットワークを用いた本発明の一実施
例によるベクトルの処理方法の概念を説明するための図
である。
【図13】あらゆる異なるカージナル数を有したベクト
ルまたはタップルのベクトル集合RおよびSを処理する
ためのフローチャートである。
【図14】本発明の一実施例によるマトリックス−ベク
トル積タイプのベクトルの処理回路の構成の一部を示す
ブロック図である。
【図15】本発明の一実施例によるマトリックス−ベク
トル積タイプのベクトルの処理回路の構成の一部を示す
ブロック図である。
【図16】図14および図15の回路の動作を説明する
ための図である。
【図17】非常に大きなサイズの正方マトリックスの場
合のマトリックス−ベクトル積タイプの本発明によるベ
クトルの処理回路の他の実施例を説明するための図であ
る。
【図18】非常に大きなサイズの正方マトリックスの場
合のマトリックス−ベクトル積タイプの本発明によるベ
クトルの処理回路の他の実施例を説明するための図であ
る。
【図19】非常に大きなサイズの正方マトリックスの場
合のマトリックス−ベクトル積タイプの本発明によるベ
クトルの処理回路の他の実施例を説明するための図であ
る。
【図20】少なくとも1つの大きな次元を有する1つの
直交マトリックスの場合のマトリックス−ベクトル積タ
イプの本発明によるベクトルの処理回路の他の実施例を
説明するための図である。
【図21】少なくとも1つの大きな次元を有する1つの
直交マトリックスの場合のマトリックス−ベクトル積タ
イプの本発明によるベクトルの処理回路の他の実施例を
説明するための図である。
【図22】1つのデータベースの多数の属性のタップル
を処理する本発明の一実施例によるベクトルの処理回路
の構成を示すブロック図である。
【図23】図22の回路の基本的プロセッサの構成を示
すブロック図である。
【図24】図23の基本的プロセッサの作用モードを説
明するための図である。
【図25】本発明によるベクトルの処理回路を複数用い
たディジタルデータ処理システムの構成を示すブロック
図である。
【符号の説明】
1      第1の記憶ユニット 2      第2の記憶ユニット 3      計算ユニット 4      大容量メモリ 10,20  ワーキングメモリ 11,21  仮想メモリ C      ベクトルの処理回路 CM    記憶セル CT    処理セル PE    基本的プロセッサ

Claims (21)

    【特許請求の範囲】
  1. 【請求項1】  第1のベクトル集合Rの成分{xki
    }を有するベクトルXiのペアと第2のベクトル集合S
    の成分{yki}を有するベクトルYiのペアの間で実
    行され、同次数の成分k{xki};{yki}を寄せ
    集めるために合致される前記ベクトルXiと前記ベクト
    ルYiとのペアを生じさせることと、前記同次数の成分
    k{xki};{yki}の計算を実行することとから
    なり、同次元pを有するベクトルまたはタップルを示す
    ディジタル信号を処理するベクトルの処理方法であって
    、前記ベクトルXiまたは前記成分{xki}、あるい
    は、前記ベクトルXiの配列または前記成分{xki}
    の配列のいずれかによって構成された空間的合致データ
    ベクトルRkの時間的な連続に対応した空間的合致デー
    タの特性が前記第1のベクトル集合Rに属するとし、前
    記第2のベクトル集合Sの少なくとも1つの前記ベクト
    ルYiあるいは前記ベクトルYiに対応する前記成分{
    yki}のいずれかによって構成された入力データの特
    性が前記第2のベクトル集合Sに属するとし、そのx次
    元に前記空間的合致データベクトルRkの時間的な連続
    が割り当てられ、そのy次元に前記入力データが割り当
    てられ、前記成分{xki}と前記成分{yki}とを
    それぞれ処理するための処理セルCTの2次元処理ネッ
    トワークREとして構成された並列処理を用いて前記入
    力データと前記空間的合致データとの空間的および時間
    的合致を生じさせることを特徴とするベクトルの処理方
    法。
  2. 【請求項2】  前記入力データは、n個のベクトルY
    i(i=1〜n)から構成され、前記処理セルCTの2
    次元処理ネットワークREの前記y次元は、入力データ
    ベクトルを構成する前記成分{yki}に割り当てられ
    、前記処理セルCTの2次元処理ネットワークREは、
    前記y次元に対応したn個の処理セルCTを有すること
    を特徴とする請求項1記載のベクトルの処理方法。
  3. 【請求項3】  前記空間的合致データベクトルRkの
    それぞれは、p次元のベクトルXiから構成され、前記
    処理セルCTの2次元処理ネットワークREの前記x次
    元は、前記空間的合致データベクトルRkを構成する前
    記成分{xki}に割り当てられ、前記処理セルCTの
    2次元処理ネットワークREは、前記x次元に対応した
    p個の処理セルCTを有することを特徴とする請求項1
    記載のベクトルの処理方法。
  4. 【請求項4】  前記空間的合致データベクトルRkの
    それぞれは、q個のベクトルXi(i=1〜q)の成分
    {xki}の配列から構成され、前記空間的合致データ
    ベクトルRkの時間的な連続は、前記ベクトルXiの対
    応する成分{xki}から構成され、前記処理セルCT
    の2次元処理ネットワークREは、前記x次元に対応し
    たq個の処理セルCTを有することを特徴とする請求項
    1記載のベクトルの処理方法。
  5. 【請求項5】  前記処理セルCTの2次元処理ネット
    ワークREは、p行n列に配列されたn×p個の処理セ
    ルCTを有し、前記ベクトルXiと前記ベクトルYiと
    の間の前記合致は、前記処理セルCTの1つの列におい
    て処理され、前記処理セルCTのそれぞれは、中間的な
    処理結果を直ちに同じ列のさらに高次の処理セルCTに
    転送し、それぞれの列のp次の処理セルCTは、ベクト
    ルXiとYiとの与えられたペアに対して最終的な処理
    結果を転送することを特徴とする請求項3記載のベクト
    ルの処理方法。
  6. 【請求項6】  前記処理セルCTの2次元処理ネット
    ワークREは、q行n列に配列されたn×q個の処理セ
    ルCTを有し、前記ベクトルXiと前記ベクトルYiと
    の間の前記合致は、p個の対応する成分{xki}と{
    yki}とを処理することにより、1つの処理セルCT
    のレベルで局所的に処理されることを特徴とする請求項
    4記載のベクトルの処理方法。
  7. 【請求項7】  どの次元のマクロベクトルの間におい
    ても合致を生じさせるために、前記マクロベクトルのp
    次元の分割ベクトルの間の複数の合致を実行することと
    、どんなベクトルも前記分割に起因し、任意の値の成分
    によって完結されているp次元以下の次元を有すること
    とからなることを特徴とする請求項1記載のベクトルの
    処理方法。
  8. 【請求項8】  ある連続的な手順においてどんなカー
    ジナル数の前記第1のベクトル集合Rと前記第2のベク
    トル集合Sとの間においても合致を生じさせるために、
    前記第1のベクトル集合Rおよび前記第2のベクトル集
    合Sを独立して記憶する第1のステップと、それぞれ同
    じカージナル数を有する前記第1のベクトル集合Rの部
    分集合Rvと前記第2のベクトル集合Sの部分集合Su
    とを記憶する第2のステップと、前記処理セルCTの2
    次元処理ネットワークREに直接接続された前記第2の
    ベクトル集合Sの2次の部分集合であって、前記部分集
    合Suの部分集合である部分集合Subと前記部分集合
    Rvとをワーキングメモリに記憶する第3のステップと
    、1マイクロサイクルの間に前記部分集合RvおよびS
    ubの空間的および時間的合致をする第4のステップと
    、前記部分集合Subより高い階層の部分集合Sub+
    1をマイクロサイクルの間に同時に仮想メモリに記憶す
    る第5のステップと、1マイクロサイクルの間に前記第
    2のベクトル集合Sの2次の部分集合Subのすべてに
    対して前記第3ないし第5のステップを繰返し、部分集
    合Rv+1を同時に仮想メモリに記憶する第6のステッ
    プと、マクロサイクルの連続において前記第2のベクト
    ル集合Sの部分集合Suのすべてに対して前記第2ない
    し第6のステップを繰返す第7のステップと、すべての
    前記第1のベクトル集合Rおよび前記第2のベクトル集
    合Sの合致を得る前記第1のベクトル集合Rの部分集合
    Rvのすべてに対する前記第2ないし第7のステップを
    繰返す第8のステップとからなることを特徴とする請求
    項1記載のベクトルの処理方法。
  9. 【請求項9】  第1のベクトル集合Rの成分{xki
    }を有するベクトルXiのペアと第2のベクトル集合S
    の成分{yki}を有するベクトルYiのペアの間で実
    行され、同次数の成分k{xki};{yki}を寄せ
    集めるために合致される前記ベクトルXiと前記ベクト
    ルYiとのペアを生じさせることと、前記同次数の成分
    k{xki};{yki}の計算を実行することとから
    なり、同次元pを有するベクトルまたはタップルを示す
    ディジタル信号を処理するベクトルの処理回路であって
    、前記ベクトルXiまたは前記成分{xki}、あるい
    は、前記ベクトルXiの配列または前記成分{xki}
    の配列のいずれかによって構成された空間的合致データ
    ベクトルRkの時間的な連続として読み出され得る空間
    的合致データの形で前記第1のベクトル集合Rを記憶す
    る第1の記憶手段と、前記第2のベクトル集合Sの少な
    くとも1つの前記ベクトルYiあるいは前記ベクトルY
    iに対応する前記成分{yki}のいずれかによって構
    成された入力データの形で前記第2のベクトル集合Sを
    記憶する第2の記憶手段と、そのx次元に前記空間的合
    致データベクトルRkの時間的な連続が割り当てられ、
    そのy次元に前記入力データが割り当てられ、前記成分
    {xki}と前記成分{yki}とをそれぞれ処理する
    ための処理セルCTの2次元処理ネットワークREとし
    て構成され、並列処理を用いて前記入力データと前記空
    間的合致データとの空間的および時間的合致を生じさせ
    る計算手段とを具備することを特徴とするベクトルの処
    理回路。
  10. 【請求項10】  前記第1および第2の記憶手段はそ
    れぞれ、対応するベクトルの部分集合が処理の間記憶さ
    れ、前記対応するデータが割り当てられた次元に応じた
    前記2次元処理ネットワークREの処理セルCTに並列
    接続により直接接続されるワーキングメモリと、一端が
    大容量メモリに、他端が前記ワーキングメモリにそれぞ
    れ接続され、対応するベクトルの前記部分集合の処理の
    間、さらに高次の対応するベクトルの部分集合に対する
    前記ワーキングメモリの補助メモリとして作動する仮想
    メモリとから構成されることを特徴とする請求項9記載
    のベクトルの処理回路。
  11. 【請求項11】  前記計算手段を構成する前記2次元
    処理ネットワークREは、処理セルを構成する複数の基
    本的プロセッサを有し、前記第1のベクトル集合Rの複
    数のベクトルと前記第2のベクトル集合Sの複数のベク
    トルとの合致を確実にする方形のエリアとして構成され
    ていることを特徴とする請求項9記載のベクトルの処理
    回路。
  12. 【請求項12】  前記第2のベクトル集合Sの1つの
    ベクトル集合が記憶される前記ワーキングメモリは、n
    個の前記ベクトルYiを記憶するn個の列と、それぞれ
    が前記入力データを構成するn個の前記成分{yki}
    を有するラインとを有し、それぞれが1つの列に記憶さ
    れる前記ベクトルYiの成分{yki}を行列アドレッ
    シングを用いて記憶セルに記憶するために構成されてい
    ることを特徴とする請求項9記載のベクトルの処理回路
  13. 【請求項13】  前記仮想メモリあるいは前記第1の
    ベクトル集合Rの記憶セルの数におけるサイズTrは、
    NPEが2次元処理ネットワークREを構成する基本的
    プロセッサPEの数を示し、pがベクトルの次元を示し
    、Nyが1クロックサイクル当たりのベクトルの成分の
    数におけるメモリの記憶レートを示すとした時の式(T
    r=NPE×p/Ny)を満たすことを特徴とする請求
    項12記載のベクトルの処理回路。
  14. 【請求項14】  順次表現−並列配置タイプの第1の
    構成において、前記2次元処理ネットワークは、p行n
    列に配列されたn×p個の基本的プロセッサを具備し、
    前記ワーキングメモリの第1の行のそれぞれの記憶セル
    は、前記処理セルのすべておよびバスを介して対応する
    前記基本的プロセッサにそれぞれ接続され、前記ワーキ
    ングメモリは、行列アドレッシングを用いてその1つの
    列の前記記憶セルのそれぞれに、前記空間的合致データ
    ベクトルと1対1に対応する前記ベクトルXiの成分{
    xki}を記憶するために構成され、前記ワーキングメ
    モリの第1の列のそれぞれの記憶セルは、前記処理セル
    のすべておよびバスを介して対応する前記基本的プロセ
    ッサにそれぞれ接続することを特徴とする請求項12記
    載のベクトルの処理回路。
  15. 【請求項15】  前記ワーキングメモリは、n×p個
    のベクトルXiを記憶するn×p個の記憶セル列を有す
    ることを特徴とする請求項14記載のベクトルの処理回
    路。
  16. 【請求項16】  並列表現−並列配置タイプの第2の
    構成において、前記2次元処理ネットワークは、q行n
    列に配列されたn×q個の基本的プロセッサを具備し、
    それぞれがq個の隣接した行に記憶されたq個のベクト
    ルの同じk次の成分{xki}から構成されている前記
    空間的合致データベクトルが記憶される前記ワーキング
    メモリは、行列アドレッシングを用いてその1つの列の
    前記記憶セルのそれぞれに、それぞれの行がn個のベク
    トルからなる対応する前記ベクトルXiの成分{xki
    }を記憶するために構成されていることを特徴とする請
    求項12記載のベクトルの処理回路。
  17. 【請求項17】  n2次元のマトリックスAおよびn
    次元のベクトルXに対するマトリックス−ベクトル積タ
    イプの処理を達成するために、前記計算手段は、1つの
    演算子を構成する1つの乗算器および1つの加算器から
    なるn個の処理セルを有する1つの列を有し、前記ベク
    トルの成分xj(j=1〜n)が順次入力され、マトリ
    ックスAの係数aij(i,j=1〜n)が前記記憶手
    段のワーキングメモリのそれぞれの仮想メモリにロード
    される前記処理セルの1つのネットワークから構成され
    ていることを特徴とする請求項9記載のベクトルの処理
    回路。
  18. 【請求項18】  N≫nであり、N=K×nである場
    合のN2次元のマトリックスAおよびN次元のベクトル
    Xのマトリックス−ベクトル積タイプの処理に関して、
    前記計算手段は、並列に作動するカスケード接続された
    K個の演算子を有し、前記ベクトルXがK個の等しい部
    分あるいはn次元のサブベクトルX(1),X(2),
    ・・・,X(j),・・・,X(K)に分解され、前記
    マトリックスがn2次元のK2個のサブマトリックスA
    (i,j)(i,j=1〜K)に分解され、積の結果ベ
    クトルYがA(i,j)×X(j)がn2次元のサブマ
    トリックスA(i,j)とn次元のサブベクトルX(j
    )との積を示子、Y(i)が結果ベクトルYのn次元の
    1番めの部分あるいはサブベクトルを示す場合の数式1
    の形で得られる 【数1】 ことを特徴とする請求項17記載のベクトルの処理回路
  19. 【請求項19】  N=K×nであり、M=m×nであ
    る場合のN×M次元のマトリックスARとM次元のベク
    トルXBのマトリックス−ベクトル積タイプの処理に関
    して、前記計算手段は、並列に作動するカスケード接続
    されたK個の演算子を有し、前記ベクトルXBがm個の
    部分あるいはn次元のサブベクトルXB(1),XB(
    2),・・・,XB(n)に分解され、マトリックスA
    Rがn2次元のK×m個のサブマトリックスA(i,j
    )(i=1〜K,j=1〜m)に分解されることを特徴
    とする請求項17記載のベクトルの処理回路。
  20. 【請求項20】  1つのデータベースの、複数の属性
    から構成されるタップルの集合からなる2つの関係の比
    較の手順を準備するために、前記比較は、1つのチョッ
    ピング手順に従って実行され、大きなカージナル数の2
    つの集合の比較は、より小さなカージナル数の集合の基
    本的な比較の連続に変えられ、それぞれの処理セルは、
    基本的な計算手順を実行するために、前記計算手段を構
    成し、計算手段は、1つの基本的な比較を実行するため
    に、”R×A”=”S×A”、”R×A”<”S×A”
    および”R×A”と”S×A”とは属性あるいは属性の
    部分どちらかであるかというテストに応答するディジタ
    ルコンパレータと、”R×A”<”S×A”、”R×A
    ”≦”S×A”、”R×A”=”S×A”、”R×A”
    ≧”S×A”あるいは”R×A”>”S×A”の1つに
    応答し、考慮されたテストに対して正の応答をする場合
    には値1の結果ビットを転送し、逆の場合には値0の結
    果ビットを転送するプログラム可能な制御ユニットと、
    1つの前の中間的な結果と共に、検討されたに関する前
    記プログラム可能な制御ユニットから転送された前記結
    果ビットを再結合するプログラム可能なユニットとから
    なる1つの基本的プロセッサによって構成されているこ
    とを特徴とする請求項9記載のベクトルの処理回路。
  21. 【請求項21】  同じ処理時間に対してビットレート
    の変調なしに処理される空間的合致データタップルの集
    合のカージナル数を増加させて並行して前記入力データ
    ベクトルSを入力する前記ワーキングメモリおよび前記
    仮想メモリのレベルでそれぞれ前記空間的合致データベ
    クトルRkの集合Rの分割R’1,R’2,・・・,R
    k’を入力する並列に接続された複数の回路からなる1
    つデータベースのベクトルまたはタップルを示すディジ
    タル信号を処理するシステムへ応用することを特徴とす
    る請求項9ないし請求項20記載のベクトルの処理回路
JP3164955A 1990-06-08 1991-06-10 ベクトルの処理方法およびその回路 Withdrawn JPH04233062A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9007164A FR2663138B1 (fr) 1990-06-08 1990-06-08 Procede et circuit de traitement de signaux numeriques representatifs de vecteurs ou tuples de meme dimension et leur application a des ensembles de cardinalite et a des vecteurs ou tuples de dimensions quelconques.
FR9007164 1990-06-08

Publications (1)

Publication Number Publication Date
JPH04233062A true JPH04233062A (ja) 1992-08-21

Family

ID=9397423

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3164955A Withdrawn JPH04233062A (ja) 1990-06-08 1991-06-10 ベクトルの処理方法およびその回路

Country Status (5)

Country Link
US (1) US5335195A (ja)
EP (1) EP0461030B1 (ja)
JP (1) JPH04233062A (ja)
DE (1) DE69128661T2 (ja)
FR (1) FR2663138B1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009530730A (ja) * 2006-03-23 2009-08-27 ケンブリッジ ディスプレイ テクノロジー リミテッド データ処理ハードウェア

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8464026B2 (en) * 2010-02-17 2013-06-11 International Business Machines Corporation Method and apparatus for computing massive spatio-temporal correlations using a hybrid CPU-GPU approach
US11899967B2 (en) 2020-11-16 2024-02-13 Lightmatter, Inc. Vector processor data storage
CN113240100B (zh) * 2021-07-12 2021-11-30 深圳市永达电子信息股份有限公司 基于离散Hopfield神经网络的并行计算方法及系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3763365A (en) * 1972-01-21 1973-10-02 Evans & Sutherland Computer Co Computer graphics matrix multiplier
US4697247A (en) * 1983-06-10 1987-09-29 Hughes Aircraft Company Method of performing matrix by matrix multiplication
GB8431925D0 (en) * 1984-12-18 1985-01-30 Secr Defence Digital data processor
GB8605367D0 (en) * 1986-03-05 1986-04-09 Secr Defence Bit-slice digital processor
DE3786330T2 (de) * 1986-11-27 1993-11-25 Nippon Telegraph & Telephone Paralleldatenverarbeitungsvorrichtung und -verfahren.
US5058001A (en) * 1987-03-05 1991-10-15 International Business Machines Corporation Two-dimensional array of processing elements for emulating a multi-dimensional network
US5170370A (en) * 1989-11-17 1992-12-08 Cray Research, Inc. Vector bit-matrix multiply functional unit

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009530730A (ja) * 2006-03-23 2009-08-27 ケンブリッジ ディスプレイ テクノロジー リミテッド データ処理ハードウェア
KR101363602B1 (ko) * 2006-03-23 2014-03-17 캠브리지 디스플레이 테크놀로지 리미티드 데이터를 처리하는 하드웨어

Also Published As

Publication number Publication date
FR2663138B1 (fr) 1992-09-11
DE69128661D1 (de) 1998-02-19
US5335195A (en) 1994-08-02
DE69128661T2 (de) 1998-07-02
EP0461030A1 (fr) 1991-12-11
FR2663138A1 (fr) 1991-12-13
EP0461030B1 (fr) 1998-01-14

Similar Documents

Publication Publication Date Title
US5506998A (en) Parallel data processing system using a plurality of processing elements to process data and a plurality of trays connected to some of the processing elements to store and transfer data
US5542026A (en) Triangular scalable neural array processor
US5544336A (en) Parallel data processing system which efficiently performs matrix and neurocomputer operations, in a negligible data transmission time
US5600843A (en) Ring systolic array system for synchronously performing matrix/neuron computation using data transferred through cyclic shift register connected in cascade of trays
US5564115A (en) Neural network architecture with connection pointers
EP0479102A2 (en) Multidimensional systolic array processing apparatus and method
Aarts et al. Boltzmann machines and their applications
Lee et al. Parallel deep convolutional neural network training by exploiting the overlapping of computation and communication
JPH01201764A (ja) 神経回路網およびその回路網に用いる回路
Pahnehkolaei et al. Delay independent robust stability analysis of delayed fractional quaternion-valued leaky integrator echo state neural networks with QUAD condition
Hsu et al. A cell mapping method for nonlinear deterministic and stochastic systems—part I: the method of analysis
US5148515A (en) Scalable neural array processor and method
JPH03209561A (ja) 連立一次方程式の解を求める計算装置及び方法
JPH04232562A (ja) コンピユータ装置
US5243688A (en) Virtual neurocomputer architectures for neural networks
US5422836A (en) Circuit arrangement for calculating matrix operations in signal processing
JPH04233062A (ja) ベクトルの処理方法およびその回路
JPH07271748A (ja) データを正規化する手段を含むニューラル・プロセッサ
Schroder Parallelizing over artificial neural network training runs with multigrid
CN110673824A (zh) 矩阵向量乘电路以及循环神经网络硬件加速器
JP2825133B2 (ja) 並列データ処理方式
CN115437602A (zh) 任意精度计算加速器、集成电路装置、板卡及方法
Wang et al. A pipelined architecture for parallel image relaxation operations
Kirichenko et al. Matrix pseudoinversion in the problem of design of associative memory
WO1994014134A1 (en) Neural network architecture

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19980903