JP2671120B2 - データ処理セルおよびデータプロセッサ - Google Patents

データ処理セルおよびデータプロセッサ

Info

Publication number
JP2671120B2
JP2671120B2 JP59044231A JP4423184A JP2671120B2 JP 2671120 B2 JP2671120 B2 JP 2671120B2 JP 59044231 A JP59044231 A JP 59044231A JP 4423184 A JP4423184 A JP 4423184A JP 2671120 B2 JP2671120 B2 JP 2671120B2
Authority
JP
Japan
Prior art keywords
data
signal
memory
output terminal
input
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.)
Expired - Lifetime
Application number
JP59044231A
Other languages
English (en)
Other versions
JPS59172065A (ja
Inventor
ブロ−ジイミヤシユ・ホルズテインスキ−
Original Assignee
マーチン・マリエッタ・コーポレーション
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 マーチン・マリエッタ・コーポレーション filed Critical マーチン・マリエッタ・コーポレーション
Publication of JPS59172065A publication Critical patent/JPS59172065A/ja
Application granted granted Critical
Publication of JP2671120B2 publication Critical patent/JP2671120B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8007Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
    • G06F15/8023Two dimensional arrays, e.g. mesh, torus

Description

【発明の詳細な説明】 本発明は高速並列データ処理システム、特に主制御装
置の制御の下に算術および論理データ処理機能を行な
う、同じ、特有の構成の相互接続された素子(セル)の
配列で構成された並列データプロセツサ(処理装置)に
関する。 並列データプロセツサは典型的に、データが並行に処
理できるようにマトリクス状に配列された多数の同じ処
理素子を用いる。通常の並列プロセツサは、おのおの隣
りのものと接続され、中央処理装置で制御されるn×m
個の同じ素子で構成されている。このやり方は高分解能
映像処理において起こる型のデータマトリクスの処理に
特に適している。このような処理配列の1つの記述とデ
ータ処理におけるその多くの応用は米国特許第4,215,40
1号に載つている。 上記の米国特許のプロセツサの各素子の基本的な構造
はRAM、単一ビツト入力アキユムレータ、単一ビツト出
力アキユムレータ、およびNANDゲート処理素子を含む。
RAM、入力アキユムレータの入力端子、出力アキユムレ
ータの出力端子、およびNANDゲートの1つの入力端子は
データバスに接続される。入力アキユムレータからの出
力信号は、出力端子が出力アキユムレータの入力端子に
接続されたNANDゲートの第2入力端子に供給される。 隣の素子と相互接続されたこの型の複数の同じ素子と
中央制御装置とを持つ上記米国特許の並列プロセツサは
大量のデータに種々の基本的な論理機能を高速で行なう
ようにプログラムすることができる。適当なプログラム
シーケンスでこれらの基本的機能を組み合わせると、処
理装置はもつと複雑な論理機能、および算術機能さえ行
なうことができる。 上記米国特許の並列プロセツサによつて大きな配列を
つくることができ、したがつて大きなデータマトリクス
の並列処理を行なうことができるが、処理素子としての
NANDゲートとNANDゲートに関連した記憶素子の配列とを
用いることにより、プログラム命令の比較的複雑なシー
ケンスが必要になるとともに、複雑な論理および算術機
能を行なうとき速度がいくぶん遅くなる。上記米国特許
の発明者は、そこに示されたNANDゲート処理装置の実施
例に全加算器のようなもつと複雑な処理素子を付加する
と、データ処理速度が増大することを認識していた。し
かしながらそのように処理素子にさらに素子を付加する
と、複雑性と費用、特に大きな配列に対する複雑性と費
用とがかなり増大する。 並列プロセツサ用の処理素子において論理機能を行な
う論理素子と算術機能を行なう全加算器とをこのように
組み合わせることはまたジヨージア工科大学(Georia I
nstitute of Technology)における1980年9月9〜10日
の超高速計算シンポジウム(Very High Computing Symp
osium)のために準備されたグツドイヤーエアロスペー
ス社(Goodyear Aerospace)のジヨンHスミツト(John
H.Smit)著の「大容量並列処理装置および空中連想処
理装置の構造説明」(Architecture Description For T
he Massively Parallel Processor(MPP)And The Airb
orne Associative Processor(ASPRO))という論文に
も示唆されている。このスミツトの論文に示されている
処理素子は「論理および転送」機能を行なうための種々
のレジスタおよび論理素子を含む。全加算器、シフトレ
ジスタ、および単一ビツトレジスタは「ビツト逐次算
術」演算のために用いる。上記の米国特許に示唆されて
いるように、この装置は別の論理および算術部を設ける
ことによりデータ処理の速度を高める。しかしながら、
複雑性と費用とが上記米国特許のNANDゲート処理装置に
よりかなり高い。 本発明の目的は、論理演算および算術演算をきわめて
高速で行なうが、比較的簡単、特に処理素子レベルにお
いて比較的簡単な新規な並列データ処理法および装置を
得ることである。 本発明の他の目的は、公知の並列プロセツサよりも高
い効率で算術および論理機能を行なう比較的簡単なマイ
クロ命令で作動する新規な並列データ処理法および装置
を得ることである。 本発明のさらに他の目的は、比較的簡単な構成で、最
少の構成要素を持ち、算術および論理機能を高速で行な
うことができる新規なビツト処理法および素子を得るこ
とである。 本発明のさらに他の目的は、算術演算および論理演算
を行なう演算処理装置、特に全加算器を用いる新規なデ
ータ処理法および素子を得ることである。 上記および他の目的および利点は本発明によれば中央
制御装置によつて制御される特有の処理素子の配列によ
つて達成される。各処理素子は、演算装置がデータビツ
トに論理および算術演算を行なうように制御されるよう
に記憶装置および信号選択回路に接続された演算装置を
含む。同じ素子の配列は、各素子を隣の素子と接続し、
配列中の端(縁)の素子は適当なデータ入出力装置と接
続することによつて構成される。制御装置がプログラム
された順序で素子を制御しアドレス信号を供給すること
により端の素子に導入されたデータマトリクスに所望の
演算を行なう。 好ましい実施例においては、各処理素子中の演算装置
は全加算器である。1ビツトレジスタのような記憶装置
が全加算器の各入力端子に接続される。加算器は2つの
データ入力端子とけた上げ入力端子とを持つので、3つ
のそのような記憶装置を設ける。記憶装置の1つは北南
(NS)入力レジスタ、第2の記憶装置は東西(EW)入力
レジスタ、第3の記憶装置はけた上げ(C)入力レジス
タと名付ける。 各記憶装置の入力端子における信号選択回路は中央制
御装置からの制御信号に応答して各記憶装置に入力デー
タを選択的に供給する。NS入力レジスタデータ選択回路
による選択に対して得られる信号はそれぞれ北および南
隣の素子からの北出力信号と南出力信号、NSレジスタそ
のものからの出力信号、およびデータバス信号である。
同様に、EW入力レジスタデータ選択回路は東および西隣
の素子からのそれぞれ東出力信号と西出力信号、EWレジ
スタからの出力信号、およびデータバス信号から信号を
選択する。けた上げ入力レジスタデータ選択回路は全加
算器からの「けた上げ」出力信号、けた上げレジスタ出
力信号、および好ましくは制御装置または他の何らかの
適当な信号源からの論理“1"および論理“0"を含む。 制御装置によつて選択的にアドレスできる各素子のRA
Mの出力端子は制御装置によつて選択された入力信号を
データバスに供給する信号選択回路に接続されている。
加算器の「和」出力信号すなわちプラス出力信号もこの
選択回路に供給されて制御装置からの命令に応答してバ
スに選択的に供給する。RAMの内容のアドレスすなわち
「読み出し」以外に、RAMには制御装置で制御してデー
タバスからのデータを記憶すなわち「書き込み」、所望
のときにはRAMのデータ入力端子に信号選択回路を接続
して他のデータ源からのデータを書き込むことができ
る。もちろん、RAMはそれへの書き込みを含まないイン
ストラクシヨン(命令)を実行するときには変化させな
いでおくことができる。 インストラクシヨンの適当なシーケンスを用いてデー
タを選択的に全加算器に与えて論理機能および算術機能
を行なう。たとえば、全加算器のけた上げ入力端子に接
続されたけた上げレジスタに2進の“1"をあらかじめ入
力し、全加算器のけた上げ出力端子から出力信号を取り
出すことにより、全加算器のデータ入力端子へ論理ORが
入力される。同様に、けた上げレジスタに2進の“0"を
あらかじめ入力することにより、全加算器のけた上げ出
力端子はデータ入力信号の論理ANDを供給する。複数の
転送機能、演算機能、および他の論理機能も同様に比較
的簡単なプログラムルーチンによつて命令することがで
きる。 したがつてこの体系によつて別の演算および論理回路
を必要としないことを理解されたい。全加算器は中央制
御装置内でマイクロインストラクシヨンのシーケンスに
よつて発生された命令に応答して両機能を行なう。イン
ストラクシヨンの比較的短いシーケンスは素子に演算機
能と論理機能との両方を行なわせ、処理速度を高め、プ
ログラミングの複雑性の最小にするように命令すること
ができる。 本発明の上記および他の目的と利点とは図を用いてす
る以下の説明から当業者には明らかになるであろう。 本発明によつて同じ素子の配列として構成された並列
プロセツサを第1図に構成図(ブロツクダイヤグラム)
として機能的に示す。第1図の実施例ではn列とm行の
同じプロセツサP素子が接続されてn×mマトリクスを
形成している。配列の端の素子(すなわち第1行と最後
の行の素子POO〜PnO、POm〜Pnmおよび第1列と最後の列
の素子POO〜POm、PnO〜Pnm)は図示のデータ入出力装置
(10)に接続される。すべての素子は制御装置(12)か
ら命令信号c0〜cXとアドレス信号a0〜ayとを受信する。
さらに、クロツク信号(図示しない)が制御装置(12)
から各素子に供給され、データ入出力装置は制御装置
(12)によつて制御される。 内部の各素子は隣の素子に接続される。したがつて各
素子には4つの接続がある。具体的には各素子は北、
南、東および西隣の素子に接続される。これらの接続は
第1図ではそれぞれN、S、E、およびWで示してあ
る。したがつて各素子は制御装置(12)の制御のもとに
隣の任意の素子とデータを交換することができる。 動作においては、処理すべき入力データはデータ入出
力装置(10)に供給される。この入力データはたとえ
ば、データ「ピクセル」、すなわち像の小さい部分を表
わす2進ビツトの大きなマトリクスを発生する作像装置
から供給される。直接または制御装置(12)によつてデ
ータ入出力装置(10)に供給される入力データは並列プ
ロセツサの端の素子に送られる。並列プロセツサは制御
装置(12)によつて制御されてこのデータを一連のマイ
クロ命令に従つて処理する。このインストラクシヨン
(命令)は算術演算、論理演算、または単にデータ転送
を含む処理を命令する。 制御装置(12)によつて命令された処理作業はすべて
の素子によつてすべてのデータに同時に行なわれる。た
とえば入力データがプロセツサに転送されているとき
に、制御装置はデータの隣の素子への一連の簡単な転送
を命令して全データマトリクスを負荷する(書き込
む)。この負荷動作に続いて制御装置(12)は、記憶セ
ル及び隣のセルまたはいずれか一方からの個々のビツト
に加算、減算、乗算、補完、ローテーシヨン、転置を行
なうかまたはそうでないときは算術演算および(また
は)論理演算を行なう作業のプログラムされたシーケン
スを命令する。処理はすべての所望の作業が行なわれる
まで続き、結果はデータ入出力装置(10)に転送され
る。 データ入出力装置(10)は並列プロセツサと他の装置
とのインタフエースとなる任意の適当な通常の電子装置
でよい。たとえば、この装置は処理の前後に入力データ
を一時的に記憶する制御できる入出力バツフアを含む。
同様に、制御装置(12)は、プログラム命令のシーケン
スに応答して適当な時系列の命令信号とアドレス信号と
を発生することができる任意の適当な従来の制御装置で
よい。適当なデータ入出力装置および制御装置は米国特
許第4,215,401号およびそこに述べられた従来技術に詳
述されている。 第1図に示されたような並列プロセツサアレー(配
列)に関連して用いられる並列プロセツサ素子の一実施
例を第2図に示す。素子Pは算術処理素子(20),好ま
しくは任意の適当な従来の構成の全加算器を含む。全加
算器は第1データ入力端子D1、第2データ入力端子D2、
およびけた上げ入力端子Cを持つ。加算器(20)の出力
端子はPLUS(プラス)出力信号を出力する和出力端子
と、CARRY(けた上げ)出力信号を出力するけた上げ出
力端子とを含む。 複数の記憶装置が全加算器に接続され、第1図の制御
装置(12)からの命令信号c0〜cx(図示の実施例ではx
は7)およびアドレス信号a0〜ay(図示の実施例ではy
は6)で制御できる。図示のような全加算器に接続され
た記憶装置の配列によつて全加算器は論理機能と算術機
能との両機能を行なうことができる。特に、それぞれ北
/南すなわちNSレジスタ、東/西すなわちEWレジスタ、
およびけた上げすなわちCレジスタと示された単一ビツ
トレジスタすなわち記憶装置(22,24,26)はそれらの出
力端子が全加算器(20)のD1,D2、およびC入力端子に
接続されている。特定のデータビツトのレジスタ(22,2
4,26)への記憶は制御装置(12)の制御下にある適当な
従来の信号選択回路(ビツトマルチプレクサMUX)(28,
30,32)によつて決定される。 もつと詳しくは、北/南(NS)信号選択回路すなわち
マルチプレクサ(28)は4つのデータ信号NS、N、BU
S、およびSを受信する。これらの4つのデータ信号の
1つを運転してNSレジスタ(22)に供給するために、2
つの制御ラインが制御装置(12)から選択回路(28)へ
それぞれ制御信号c0,c1を供給する。回路(28)は通常
のように、制御信号すなわち命令信号c0,c1がどちらも
2進の0(00)であると、NS信号がNSレジスタ(22)に
供給されるように動作する。命令信号c0,c1が2進の1
と2進の0(10)であると、N入力信号がNSレジスタに
供給される。2進の“0"と2進の“1"との組み合わせ
(01)はBUS信号をNSレジスタに供給し、2つの2進の
“1"の組み合わせ(11)はS信号をNSレジスタに供給す
る。 4つのデータ入力信号EW、W、BUS、Eの1つが上記
と同様にして命令信号C2,c3に応答してEW選択回路(MU
X)(30)からEWレジスタに供給される。同様にデータ
信号CY、ZERO、CARRY、およびONEの1つが選択的にC選
択回路(MUX)(32)からc4,c5命令信号に応答してCレ
ジスタ(26)に供給される。 全加算器(20)の和出力端子からのPLUS出力信号は2
入力バス選択回路(MUX)(34)の一方のデータ入力端
子に供給される。全加算器(20)のけた上げ出力端子か
らのCARRY出力信号は上述のようにけた上げ、すなわち
C選択回路(32)の1つの入力端子に供給される。バス
選択回路(34)はc7命令信号に応答して2つの入力信号
の1つをデータバスに供給する。データバスは各データ
選択回路すなわちマルチプレクサ回路(28,30,38)に接
続されてBUS信号をそれに供給する。 アドレスできるマルチビツト記憶装置(36)、好まし
くは128ビツトRAMには第1図の制御装置(12)からアド
レス信号a0〜ay(128ビツトRAMに対してはyは6)が供
給される。RAM(36)からのRAM出力はバス選択回路(3
4)の第2入力端子に供給されるが、RAM(36)への入力
信号はc6命令信号の制御の下にRAM選択回路(MUX)(3
8)によつて選択されたBUS信号かまたはRAM出力信号で
ある。 各プロセツサ素子へのデータ入力信号は以下のとおり
である。NS選択回路(28)供給されるN信号は北隣の素
子のNSレジスタからの信号であり、回路(28)へ供給さ
れるS信号は南隣の素子のNSレジスタからの信号であ
る。EW選択回路(30)に供給されるW信号は西隣の素子
のEWレジスタからの信号であり、回路(30)に供給され
るE信号は東隣の素子のEWレジスタからの信号である。
したがつて各素子はどの隣の素子(または端の素子の場
合にはデータ入出力装置)からのデータビツトも受容し
記憶することができることがわかる。 各プロセツサ素子からの出力信号はNSレジスタおよび
EWレジスタから取り出される。NSレジスタ出力信号は南
および北隣の素子のNS選択回路へ供給されるNおよびS
出力信号として選定される。EWレジスタ出力信号はそれ
ぞれ西および東隣の素子のEW選択回路へ供給されるEお
よびW出力信号として選定される。NS出力信号はまたす
ぐ隣の素子のNS選択回路に供給され、EW出力信号はすぐ
隣の素子のEW選択回路に供給される。上記のことから、
各素子は4つの隣の素子(端の素子の場合は2つの隣の
素子とデータ入出力装置)のおのおのに供給される出力
信号を発生することがわかるであろう。 下の表Iは第1図の制御装置(12)からの命令によつ
てデータが各素子にわたつて転送されるやり方を系統的
に示す。本質的に表Iは記憶装置またはバスへのすべて
のデータ転送を制御する命令を供給する第2図の素子の
完全な「構成」を示す。 下の表IIはいくつかのデータ転送を同時に行なうのに
用いられる上記の基本命令の種々の組み合わせである全
命令の例を示す。必ずしもすべての可能な命令が表IIに
示されているわけではない。たとえばRAMに同時に書き
込みおよび読み出しをすることは不可能であるので、い
くつかの組み合わせは不当であることを理解されたい。
たとえばc6,c7に対する1、0の組み合わせは不明確な
結果を与えるであろう。 以下からわかるように、命令語によつて命令された上
記の基本的動作は理解の容易さのためにマイクロインス
トラクシヨンの表記法で書き込まれる。たとえば、上記
の表Iにおける第2命令によつて命令された動作はNS:
=Nと書かれ、NSレジスタはN信号で書き込まれること
を意味する。同様に、表IIにおけるような全命令は上記
の表記法の表Iにおける基本命令の組み合わせとして書
くことができる。表IIの第1例はNS:=N EW:=W C:
=0 RAM:=PLUSと書くことができる。これらはまたプ
ログラムを書くために用いられる表記法で、これは機械
言語に翻訳されて制御装置(12)に供給される。 上記のことからわかるように、各プログラム命令は或
る規則に従う「単純命令」(単純インストラクシヨン)
と呼ばれる或る記号法の組合せである。精密で完全な定
義は以下のとおりである。 (i) BUSを含まない単純命令: c:=0 C:=1 C:=CARRY NS:=N NS:=S EW:=E EW:=W (ii) BUSを含む単純命令: NS:=PLUS EW:=PLUS RAM:=PLUS NS:EW:=PLUS RAM:NS:=PLUS RAM:EW:=PLUS RAM:NS:EW:=PLUS NS:RAM EW:=RAM NS:EW:=RAM 全部で17個の単純命令に対してBUSを含まない7つの
単純命令とBUSを含む10個の単純命令とがあることがわ
かる。 プログラム命令(プログラムインストラクシヨン)は
ブランク(空白)で分離され、その次にブランクと2重
のセミコロン;;が続く上記の「単純命令」の組合せで、
組合せの中に“RAM"が現われるとその前に整数(RAMア
ドレス)があり、以下の限定を受ける。 (a) プログラム命令内には1を越えない単純命令が
BUSを含む、 (b) どれかのレジスタの名前が命令内にせいぜい1
回現われる。 したがつて上記は、プログラム言語は上記の記号法お
よび規則で定義されるという意味でプロセツサを制御す
るのに用いられるプログラムに対する「アセンブラ言
語」である。上記の記号法と厳密に上記の規則に従つて
書かれた例示的なプログラムの表を以下に示す。たとえ
ば表VIおよびVIIを見よ。このソースコードからアセン
ブラ言語、通常の翻訳ルーチンすなわち機械言語「アセ
ンブラ」は制御装置(12)によつて用いられる目的コー
ド(機械言語)を発生するのに用いることができる。 表記“BUS"および「単純命令」はアセンブラ言語の説
明に用いたが、それらはアセンブラ言語の一部ではな
い。以下からわかるように、“BUS"へのおよび“BUS"か
らの転送を必要とする命令は、上記のアセンブラ言語で
書かれたときバス転送段階を含まない。むしろ中間のバ
ス転送段階が省略される。その上、プロセツサ素子の実
際の構成は図示のような単一バスは含まない、特にVLSI
技法で構成されたときそうである。 プロセツサ素子はデータを転送および記憶する上記の
能力を持つので、当業者にはプロセツサがマイクロイン
ストラクシヨンの比較的簡単なシーケンスに応答して算
術機能および論理機能の両方を行なうことができること
は理解されるであろう。プログラム命令に応答したプロ
セツサ素子の動作を理解しやすくするために、全加算器
は以下に表IIIに示す真理表に従つて動作することを先
ず理解すべきである。 表 III D1 0 1 0 1 1 0 1 0 D2 0 0 1 1 1 0 0 1 C 0 0 0 0 1 1 1 1 PLUS 0 1 1 0 1 1 0 0 CARRY 0 0 0 1 1 0 1 1 したがつて、下の表IVに示す以下のシーケンスの命令
(サブルーチンまたはマクロス)は以下の動作を行なう
のに用いられる命令を例示したものである。各命令は1
つのクロツクパルスと或る動作が1クロツクパルスの間
に同時に行なわれることを表わす。したがつて、関係し
た相対時間も各ルーチンに対して与えられた命令の数か
ら知ることができる。プログラムは、デジタルエレクト
ロニクス社(Digital Electronic Corp、)から得られ
るVAXコンピユータで行なわれるSTOICプログラム言語で
書かれることを注意されたい。 説明のためだけであるが、表IVの各プログラム命令の
前には、従うべき手続きを説明するステートメントとル
ーチンで進行する前に決めなければならない条件とがあ
る。実際に行なわれるルーチンの一部ではないこれらの
ステートメントの前にはパーセント信号(%)がある。
第1例においては、表IVのパートAは定数をRAM面に負
荷する(書き込む)ための一般化された手続と2つのも
つと詳しい手続(それぞれA1、A2、およびA3)を示す。
ルーチンA1においては、ルーチンには最上の2つの項目
のデータとしてSTOICスタツク(積み重ね)中にある2
つの整数を設けなければならない。その第1の整数はRA
Mアドレスで、第2は定数“0"または“1"である。これ
らの整数はそれぞれ最上の次(RAMアドレス)と最上
(定数0または1)のスタツクの中にある。 実際のプログラムルーチンはアポストロフ(’)の後
のルーチンの名前で始まり、単一セミコロン(;)にお
ける最後の命令で終る。2つの命令の最初のものはNSお
よびEWレジスタにPLUSを負荷し、Cレジスタに定数(ST
OICスタツクの最上のものでは0または1)を負荷す
る。PLUS出力信号はそれからSTOICスタツク中で第2項
目のデータとして指定されたRAMアドレス位置に負荷さ
れる。 ルーチンA2、A3はRAM面に定数を記憶させるもつと特
殊な例である。これらのルーチンにおいては特定の定
数、すなわちルーチンA2のときは“0"、ルーチンA3のと
きは“1"をルーチンA1におけるのと同じプログラム(す
なわちRAM:=0/1)を用いて特定のRAMアドレス位置に負
荷する。表中の残りのルーチンはこれらの同じフオーマ
ツトに従つてそれらに付属する註に示された結果を発生
する。 上記のことから、種々の論理的転送またはルーチン機
能は、種々の構成要素の接続からそれらが直接行なえな
いとき間接的に行なうことができる。たとえば、けた上
げレジスタはBUSに直接的に接続もできないしNSまたはE
Wレジスタの内容を直接受け取ることもできない。しか
しこのレジスタは、論理素子として全加算器を用いるこ
とにより、NSおよびEWレジスタの内容を負荷されるこ
と、RAM等の内容を受け取ることができる。同様にNSお
よびEWレジスタは定数を直接負荷されることはできない
が、適当なシーケンスの命令によつて間接的に負荷され
ることができる。全加算器によつて行なわれる論理動作
の上記の例以外に、加算のような種々の算術演算が全加
算器に適当な入力データを単に与えることにより容易に
行なえることがわかる。 第2図の素子を用いる並列プロセツサがデータマトリ
クスを処理するやり方は第3および第4図を参照して理
解される。第3図は、各ハツチング正方形がマトリクス
中の特定の位置における2進の“1"ビツトを表わし、各
自正方形は特定の位置における2進の“0"ビツトを表わ
す単純な6×6データマトリクスをグラフ的に示す。 この例の目的のために、並列プロセツサは同じ素子の
6×6配列で、処理サイクルの開始においてデータマト
リクスの各ビツトは適当な素子のRAMのアドレス位置5
に負荷されると仮定する。そうするとプロセツサ配列の
第2行の第5素子(P52)、第3行の第4および5素子
(P43,P53)、第4行の第3および4素子(P34,P44)、
および第5行の第2素子(P25)はRAMのアドレス位置5
において2進の“1"を持つ。他のすべての素子はこのRA
Mアドレス位置において2進の“0"を持つ。 第4図は第3図に示すデータをイメージプロセシング
において広く用いられる簡単で例示的な通常の“エロー
ジヨン”処理したときの結果をグラフ的に示す。第4図
から図示のエロージヨンプロセスの結果はそれぞれ第3
および第4行の第4および第3素子(P43およびP34)に
おける2進の“1"であることがわかる。この結果を得る
ために、各マトリクス位置の各データビツトは同じ行の
その右への各ビツトと比較される。2つの順次のビツト
のおのおのが2進の“1"であると、2進の“1"は比較が
開始された素子位置(「基本」素子)に対応する素子の
RAMに記憶される。もし何か他の条件が存在すると(両
方とも“0"か一方が“0")、2進の“0"はその素子位置
のRAMに記憶される。図示の実施例においては、比較の
この結果はRAMアドレス7に記憶される。したがつて第
3および4図はエロージヨンプロセスの前後のRAMアド
レス5,7の内容をグラフ的に示したものである。 第3および4図に示したプロセスを行なう一連の命令
は以下のとおりである。 表 V 'EROSION: 5NS:EW:=RAM% Load RAM address5 C:=0;;% Set carry register C to 0(INST.1) EW:=E;;% East Shift(INST.2) C:=CARRY% register has the result NS:EW:=PLUS %(INST.3) 7RAM=PLUS;;;% Store the result from C into RAM % address location7(INST.4) 命令1(INST.1)はEWおよびNSレジスタの両方にRAM
アドレス位置5のデータビツトを書き込み、けた上げレ
ジスタを2進の“0"にセツトする。命令2はEWレジスタ
に、実際上アドレス位置5におけるRAMデータを左へ各
西隣の素子のEWレジスタにシフトさせる右隣の素子のEW
レジスタからのデータ(Eデータ信号)を書き込む。さ
て、各“基本素子”のRAMアドレス5からのデータはそ
の素子のNSレジスタ中にあり、各基本素子の東隣のEWレ
ジスタからのデータは基本素子のEWレジスタ中にある。
けた上げレジスタはZEROにセツトされているので、全加
算器のけた上げ出力端子からのCARRY出力信号はEWおよ
びNSレジスタ中のAND論理機能の信号である(上記のサ
ブルーチンCを見よ)。したがつて、CARRY出力信号
は、NSおよびEWレジスタの両方の内容が2進の“1"であ
ると2進の“1"であり、すべての他の条件に対しては2
進の“0"である。したがつて命令3の終りにおいては、
各素子加算器のCARRY出力信号は所望の結果、すなわち
基本素子とすぐ右隣(東隣)の素子とのおのおののAND
機能である。 RAM記憶位置7に記憶された出力としてCARRY信号を得
るために、上記の表IVのD1からのサブルーチンRAM:=C_
SAVEに類似のルーチンを用いる。まずCARRY信号がけた
上げレジスタに記憶され、NSおよびEWレジスタの両方が
PLUS信号(命令3)のような同じ値にセツトされる。PL
US信号はそれからけた上げレジスタ中の信号と同じにな
り、RAM入力端子に対してバス選択回路およびRAM選択回
路をゲートすることおよびこの信号をRAM記憶位置7に
「書き込む」こと(命令4)によりRAMに記憶されるこ
とができる。 上記のことから、プロセツサシステムの4つのクロツ
クパルスだけの期間にわたる6つの簡単な命令だけで6
×6データマトリクスに対する全エロージヨンプロセス
は完結することがわかる。マトリクスの大きさに無関係
にこの同じプロセスは同じ数の命令で行なわれる。 第2図の実施例のプロセツサ素子を用いる他のデータ
処理の例を下の表VIに示す。表VIのプログラムを用いて
一種のコンボリユーシヨン(たたみ込み)プロセスが行
なわれる。もつと詳しくは、データの2つの隣の点が本
質的にこのプログラムによつて平均される。このプログ
ラムもSTOICで書かれる。 % 面0,1,2の内容を3ビツト非負数の整数 % の2次元配列として翻訳させる。面0 % の内容を最下位のビツト、面2の内容を最上位 % のビツトとせよ。下のプログラムは各整数にその % 東隣を加え、その結果得られた4ビツトの和を % 面10,11,12,13に記憶せよ。 表 VI 'ADD_EAST: 0 NS:EW:=RAM C:=0;; EW:=E;; 10 RAM:=PLUS C:=CARRY;; 1 NS:EW:=RAM;; EW:=E;; 11 RAM:=PLUS C:=CARRY;; 2 NS:EW:=RAM;; EW:=E;; 12 RAM:NS:EW:=PLUS C:=CARRY;; 13 RAM:PLUS;; ; 表VIIは素子の可能性をさらに示すために第2図のプ
ロセツサ素子を用いるプロセツサに対する他の例示的な
プログラムを示す。表VIIのプログラムは第2図の素子
が減算をする可能性を示す。 表 VII % 面0,1,2,3の内容は2−補完 % ビツト整数の2次元配列として翻訳 % され、面3は符号ビツトを記憶する。 % ルーチン(STOIC言語)MINUSは上記の整数の2次 % 元配列の算術的否定を計算し、その結果を % 面10,11,12,13,14に記憶する。面(14)は得ら % れた配列の符号ビツトを記憶する。面(11) % は面(10)の前に敬さされる。後者は面0の % コピーである(整数の最下位のビツトと % 整数の算術的否定の最下位のビツトとは % 等しい)。 'MINUS: 0 NS:=RAM C:=0;; 1 EW:RAM;; 11 RAM:NS:=PLUS;; 10 RAM:NS:=PLUS C:=1;; 2 NS:EW:=RAM C:=CARRY;; NS:=PLUS C:=0;; 12 RAM:=PLUS C:1;; 3 NS:EW:=RAM C:=CARRY;; NS;=PLUS C:=0;; 13 RAM:=PLUS C:=1;; 3 NS:EW:=RAM C:CARRY;; NS:=PLUS C:=0;; 14 RAM:=RLUS;; ; 表VIのコンボリユーシヨンプログラムADD_EASTの他の
形を本発明によつて素子を用いる並列プロセツサのプロ
グラムを普遍性を示すために下の表VIIIに示す。 表 VIII % 面0,1,2の内容に2補完3ビツト整数の % 2次元配列を表わさせる。ただし面2は符 % 号ビツトを記憶し、ルーチン+−ADD_EAST % は前記配列の各整数とその東隣のも % のとの和を計算する。その結果得られた配 % 列は面10,11,12,13に記憶される。最後の % 面は符号ビツトを記憶する。ルーチンADD_EAST % と+−ADD_EASTとはそれらの最後の命令だ % け異なるだけである。 ’+−ADD_EAST: 0 NS:EW:=RAM C:=0;; EW:=E;; 10 RAM:=PLUS C:=CARRY;; 1 NS:EW:=RAM;; EW:=E;; 11 RAM:=PLUS C:CARRY;; 2 NS:EW:=RAM;; EW:=E;; 12 RAM:=PLUS C:=CARRY;; 13 RAM:=PLUS;; ; プログラムおよびスピードの両方の種々の程度の効率
は第2図に示す素子の配列の若干の変更によつて得られ
ることを理解されたい。たとえば、或る転送機能は、対
応してハードウエアが少なく、プログラムの複雑性が若
干増大し、スピードが若干下がる全加算器(たとえば命
令11および12を見よ)によつて行なわれる。または、制
御信号と選択ハードウエアを増大させることにより、或
る信号転送機能、および或る算術および論理機能さえ簡
単になる。 たとえば、第5図は、全加算器が「借り」出力信号BO
RROWを含むように拡張され、NSおよびEW信号が直接デー
タBUSにゲートされる1素子の実施例を示す。さらに、
制御信号が、2進の“0"および“1"がNSおよびEWレジス
タに直接書き込まれ、上記の7のような命令のサブルー
チンの必要性を除去するように与えられる。また、南か
ら北への直接のデータシフト用のCMレジスタも設けられ
る。 第5図において、データ入力端子D1,D2およびけた上
げ入力端子Cを持つ通常の1ビツト全加算器/減算器
(40)がPLUS出力信号、CARRY出力信号、およびBORROW
出力信号を発生する。それぞれNSレジスタ、EWレジス
タ、およびCレジスタとして示された単一ビツトデータ
アキユムレータすなわちレジスタ(42,44,46)の出力端
子がそれぞれ加算器(40)のD1,D2、およびC入力端子
に接続されている。これらのレジスタ(42,44,46)は、
クロツクされたとき、それぞれ通常の信号制御、信号選
択回路(マルチプレクサMUX)(48,50,52)から選択的
に負荷される。各回路(48,50,52)は第1図の制御装置
(12)からの命令信号に応答してその関連したレジスタ
に5つの入力信号の任意の1つを選択的に供給すること
ができる。5入力信号選択回路(MUX)(54)はデータ
バスBUSに5つの入力信号の1つを選択的に供給し、3
入力信号選択回路(MUX)(56)は3つの入力信号の1
つをCMレジスタとして示された単一ビツトアキユムレー
タすなわちレジスタ(58)に選択的に供給する。 通常の128×1RAM(60)はそのデータ入力端子DIに接
続されたデータBUSを持つ。RAMのアドレス入力は第1図
の制御装置(12)から7つのアドレス信号a0−a6を受け
取り、RAM出力端子DOはバスマルチプレクサ(B MUX)
(54)の1つの入力に接続される。RAMの書込み可能化
入力端子は、入力端子にc9,c10およびクロツク(CLK)
信号を受け取る通常の論理ゲート(62)からの出力信号
によつて制御される。 制御装置(12)からのc0,c1、およびc11命令信号に応
答してNS信号選択回路(NS MUX)(48)はNSレジスタ
(42)からの出力信号、BUS信号、それぞれ北および南
隣の素子からのNおよびS信号、および制御装置によつ
て選択的に“1"または“0"にセツトされる制御信号c15
の中から信号を選ぶ。EW信号選択回路(EW MUX)(50)
はEWレジスタ(44)の出力信号、それぞれ東および西隣
の素子からのEおよびW信号、BUS信号、および制御装
置からのc15命令の中から信号を制御装置からのc2,c3
よびc12命令信号に応答して選択する。けた上げ信号選
択回路(C MUX)(52)は制御装置(12)からのc4,c5
およびc13命令信号に応答してCARRY、BORROW、BUS、
c15、およびC信号の1つを選び、バス信号選択回路(B
MUX)(54)はc6,c7、およびc9命令信号に応答してNS
レジスタからの出力信号、EWレジスタの出力信号、PLUS
信号、CMレジスタの出力信号、およびRAM出力信号から
データバスBUSに供給する信号を選択する。 第5図に示す素子は、いくつかの機能がはるかに単純
なプログラムで行なわれる以外は第2図の素子と同じよ
うに動作する。たとえば、全加算器からのけた上げ出力
信号があるために、減算は第5図の素子によつて直接行
なわれる。第2図の全加算器は減算に1つの信号を補完
する中間のステツプが必要であつた。その上、CMレジス
タによつて南隣の素子から北隣の素子へのデータシフト
が進行中の処理を妨害することなく行なわれる。したが
つて、たとえば全マトリクスが、先に負荷されたマトリ
クスが処理されている間にCMレジスタに負荷される。 同様に、第5図の実施例によつてプログラマはc15
令信号で制御することにより“0"または“1"をNSおよび
EWレジスタに直接負荷することができる。これによつて
上記の命令7におけるようなサブルーチンの必要がなく
なる。さらに、Cレジスタ選択回路(52)はBUSから直
接負荷することができるので、上記の9のようなサブル
ーチンは、NS信号をBUSに供給し、それからNS信号を直
接Cレジスタに負荷するように簡単化することができ
る。第5図の素子構成によつて可能にされる他のプログ
ラムの簡単化は当業者には理解できるであろう。 本発明によつて素子の配列として構成されたプロセツ
サの記憶装置はプロセツサの動作の理解をさらに容易に
するために記憶「面」として示すことができる。たとえ
ば第6図においては第5図の実施例のCM記憶装置すなわ
ちレジスタは面内で北方向には直接シフトできるが他の
方向にはシフトできない記憶面として示されている。両
方の素子の実施例のNS記憶装置すなわちレジスタはデー
タを北および南の方向に直接シフトできる記憶面として
示してある。両方の素子の実施例のEW記憶装置すなわち
レジスタはデータを東と西に直接シフトできる記憶面を
形成するCレジスタとRAMとで形成される記憶面はデー
タを直接シフトさせる能力はない。したがつて、Cレジ
スタ記憶面とRAMの128枚の記憶面とは記憶面内で直接シ
フトする能力はないものとして示す。もちろん、Cレジ
スタ記憶面およびRAM記憶面からのデータは1つの素子
から他の素子にシフトすることはできるが、直接のシフ
トではない。このデータを直接シフトする記憶面(NS,E
Wまたは、第5図の実施例ではCM)へまずシフトさせる
ような中間のステツプが必要である。 本発明の素子配列で構成された並列プロセツサは大規
模集積回路(LSI)として構成することができる。この
ような構成では最大数の素子に対してピンの数を最少に
する配列の形があるであろう。 適当な数学的解析によつて、たとえば第3図の実施例
を構成するとき、LSIチツプ上の1素子についての通信
伝達ピンの数を最少にする長方形配列は“m"方向すなわ
ち鉛直(北/南)方向の素子の数が水平“n"(東/西)
方向の素子の2倍多い配列であることがわかる。たとえ
ば、北/南方向に全部で8つの素子、東/西の方向に8
つの素子(8×8配列)を持つチツプは東/西方向に6
つの素子、北/南の方向に12の素子を持つ(6×12の配
列)チツプと同数のピンを持つ。8×8配列には64個の
素子があり、6×12配列には72個の素子があるので、第
5図の素子を用いるときにはm=2nのm×n配列のLSI
回路をつくる方が経済的である。 第2図の素子の構成では、LSIチツプ上の最大数の素
子に対して、各方向に同数の素子を持つ長方形のマトリ
クスすなわち配列をつくると、ピンの数が最少になるこ
とがわかる。そうすると上記の例においては8×8配列
が最大の配列の大きさに対して最少数のピンを持つこと
になる。 このような構成において上記の機能がデータバスのよ
うな特別の接続なしにどのようにして得られるかを理解
しやすくするために、本発明による1つの可能な超大規
模集積回路(VLSI)の素子を部分的に第7図に示す。 第7図に今までの実施例の処理素子(エレメント)を
含む素子(セル)の部分を通常のVLSI「格子」図を用い
て示す。図の左側に示す信号は今までに説明した制御信
号と記憶信号である。ただし信号とその補数との両方は
たいていの場合(たとえばEW/およびEW信号)に与えら
れる。第7図で鉛直線は水平線の左から供給された信号
の論理AND機能を表わす。もつと詳しくは、鉛直線をた
どつて2本の水平線の交点に点があると、鉛直線上の信
号は水平線上にはいつてくる2つの信号のAND機能であ
る。最上の水平線上の信号は各鉛直線に与えられるシス
テムクロツクである。 したがつて、最も左の鉛直線に現われる唯一の信号は
クロツクである。右の方へ次の鉛直線上の信号はNS/AND
c6 AND c7 AND CLK/である。右の方へ次の線ではEW/、
c6、c7/、およびCLK/のANDである。鉛直線はまた図の底
でグループで相互接続されている。このような各グルー
プ接続は鉛直線上に現われるすべての信号の論理的ORを
表わす。鉛直線のこれらのグループからの出力信号は第
7図の底に示してある。それらはそれぞれ左から右へRA
Mデータ入力信号、NSレジスタ入力信号、EWレジスタ入
力信号、CMレジスタ入力信号、およびCレジスタ入力信
号の電流値を表わすDI/、NS/、EW/、CM/、およびC/であ
る。 第7図の構成は第5図に関連して説明した全加算器/
減算器として機能することは当業者には理解されるであ
ろう。たとえば、「ORをとられた」鉛直線の各グループ
は全体で加算器/減算器真理表機能を行なうC/、NS、EW
およびC、NS、EW/およびC、NS/、EWおよびC/、NS/、E
W/のANDを与える4本の線を持つ。第2および5図の実
施例におけると同じ意味ではデータバスはないが、論理
配列の中でバス機能は行なわれる。 本発明の素子を用いるプロセツサの1つの構成を第1
図に、mとnのどちらも1より大きいとき、m×n素子
の長方形配列として示したが、他の構成も望ましいかも
知れない。たとえば線形データの処理を含む用途におい
ては、線形配列(m=1のときのm×n素子)が有用で
あろう。そのような線形プロセツサの1つの可能な構成
を第8図に示す。 第8図において、複数の同じプロセツサ素子P1−Pn
(たとえば簡単のために第2図の実施例の素子)が、各
素子の東端子Eが各その隣の西端子Wに接続され、各素
子の南端子Sがその隣の素子の北端子Nに接続されるよ
うに接続される。最初および最後の素子P1およびPnはそ
れぞれそれらの北および西端子N、Wおよび南および東
端子S、Eがデータ入出力装置(10′)に接続されてい
る。各素子は制御装置(12′)から命令信号c0〜cxとア
ドレス信号a0〜ayとを受信する。 データ入出力装置は、1行の素子があるだけなので、
各N、S、E、およびW信号に対して唯一つの入出力ラ
インがあるだけである点を除いて、第1図に関連して説
明したものと同様である。同様に制御装置も第1図に関
連して説明したものと同様である。 線形データは、それを入出力装置(12′)から第1素
子、それから次の素子へと全ラインのデータがプロセツ
サに記憶されるまでシフトさせることによつてプロセツ
サに書き込まれる。または、ラインの全データは、プロ
セツサと入出力装置との間のわずかに変更した、並列接
続と平行にプロセツサにシフトすることができる。デー
タ書き込まれるとき、プロセツサは上に説明したように
任意の所望の仕方で制御することができてデータに算術
および(または)論理機能を行なう。処理されたデータ
はそれから入出力装置にシフトしてさらに使用すること
ができる。 以上本発明の原理、好ましい実施例、および動作の態
様を説明した。しかし実施例は例示のためであつて限定
のためではないから、保護せられるべき本発明は特殊な
実施例に限定されない。さらに、当業者には本発明の精
神から逸脱することなく変化変形ができる。
【図面の簡単な説明】 第1図は本発明の素子を用いて構成された並列データプ
ロセツサの機能的構成図である。 第2図は本発明のプロセツサ素子の1つの実施例の機能
的構成図である。 第3および4図は本発明の並列プロセツサによるエロー
ジヨン処理の前後のデータマトリクスのグラフ的表示図
である。 第5図は本発明のプロセツサ素子の他の実施例の機能的
構成図である。 第6図は第5図の実施例の素子の構造を用いる並列プロ
セツサの記憶面のグラフ的表示図で、適当な場合の各面
内のデータ転送の方向を示す。 第7図は1つの可能な超大規模集積回路(VLSI)技術で
構成された本発明の素子の機能図である。 第8図は本発明の素子で構成された線形プロセツサの機
能的構成図である。
フロントページの続き (56)参考文献 特開 昭58−15333(JP,A) 特開 昭49−73942(JP,A) 特開 昭48−102939(JP,A) 実開 昭52−135637(JP,U)

Claims (1)

  1. (57)【特許請求の範囲】 1.デジタルデータ信号を処理する複数の素子(セル)
    を持つ並列データプロセッサであって、 プログラム命令に応答して制御信号を生成する制御装置
    と、 相互接続された複数の同一セルであって、各々が、2つ
    の入力端子、けた上げ入力端子、和出力端子及びけた上
    げ出力端子を持つ全加算器と、該全加算器と前記制御装
    置とに接続された複数のメモリとを備え、該メモリの各
    々が、前記制御装置からの制御信号に応答して複数の所
    定のデータ信号の中の選択されたデータを前記全加算器
    の入力端子に供給するように個々に制御され、前記メモ
    リが前記全加算器と前記制御装置とに接続されていて論
    理演算と算術演算との両方が前記全加算器によって行わ
    れる、相互接続された複数の同一セルとを備える並列デ
    ータプロセッサ。 2.n×mマトリクスに相互接続されたn×m個の素子
    (セル)を含み、各セルが少なくとも2つの隣り合うセ
    ルまたは少なくとも1つの隣り合うセルと外部のデータ
    源またはデータ受信装置とに接続された特許請求の範囲
    第1項記載のデータプロセッサ。 3.内部セル及び端(縁)セルを有するn×mマトリク
    スに相互に接続されたn×m個のセルを含み、前記マト
    リクスの各内部セルが4つの隣り合うセルに接続され、
    前記マトリクスの各端(縁)セルが、少なくとも2つの
    隣り合うセルと、前記端セルのいくつかにデータを供給
    するとともに該端セルのいくつかからデータを受け取る
    データ入出力装置とに接続される特許請求の範囲第1項
    記載のデータプロセッサ。 4.前記複数のメモリが、出力端子と選択的にアドレス
    できる記憶位置とを持つ多重ビットメモリを含み、前記
    制御装置からの制御信号が、記憶されたデータ信号を選
    択的に前記出力端子に与える記憶アドレス信号を含む、
    特許請求の範囲第1項記載のデータプロセッサ。 5.前記複数のメモリが、出力端子と選択的にアドレス
    できる記憶位置とを持つ多重ビットメモリを含み、前記
    制御装置からの制御信号が、記憶されたデータ信号を選
    択的に前記出力端子に与える記憶アドレス信号を含む、
    特許請求の範囲第2項記載のデータプロセッサ。 6.前記複数のメモリが、出力端子と選択的にアドレス
    できる記憶位置とを持つ多重ビットメモリを含み、前記
    制御装置からの制御信号が、記憶されたデータ信号を選
    択的に前記出力端子に与える記憶アドレス信号を含む、
    特許請求の範囲第3項記載のデータプロセッサ。 7.前記複数のメモリが、第1、第2および第3の単一
    ビットデータレジスタを含み、各々が前記複数の所定の
    データ信号の1つを書き込むように選択的に制御できる
    特許請求の範囲第4項記載のデータプロセッサ。 8.前記セルの各々が、データバスと、加算器の和出力
    端子と多重ビットメモリの出力端子とからの信号を少な
    くとも含む複数のデータ信号の1つを選択的に与える装
    置とを含む、特許請求の範囲第7項記載のデータプロセ
    ッサ。 9.前記多重ビットメモリがRAMである、特許請求の範
    囲第8項記載のデータプロセッサ。 10.前記複数のメモリが前記全加算器のけた上げ入力
    端子に接続されたけた上げ入力メモリを含み、該けた上
    げ入力メモリが前記制御信号に応答して2進1または2
    進0の論理レベルを記憶するように選択的に制御可能で
    ある特許請求の範囲第1項記載の並列データプロセッ
    サ。 11.第1および第2データ入力端子、けた上げ入力端
    子、和出力端子並びにけた上げ出力端子を持つ全加算器
    と、 データ入力端子、データ出力端子および複数のアドレス
    端子を持つアドレス可能な多重ビットメモリと、 第1制御信号に応答して、データバスに、前記多重ビッ
    トメモリの出力端子からの出力信号または全加算器の和
    出力端子からの出力信号を選択的に与えるバス選択装置
    と、 第2制御信号に応答して、多重ビットメモリの入力端子
    に、多重ビットメモリからの出力信号またはデータバス
    からのバス出力信号を選択的に与える装置と、 第3制御信号に応答して、全加算器のけた上げ入力端子
    に、けた上げ出力端子からのけた上げ出力信号または所
    望の論理レベルを選択的に与えるけた上げ入力アキュム
    レータと、 第4制御信号に応答して、全加算器の第1および第2デ
    ータ入力端子の一方に、データアスからの第1データ入
    力信号、第2データ入力信号、またはバス入力信号を選
    択的に与える第1データ入力アキュムレータ装置と、 第5制御信号に応答して、全加算器の前記第1および第
    2データ入力端子の他方に、第3データ入力信号、第4
    データ入力信号、または前記バス入力信号を選択的に与
    える第2データ入力アキュムレータ装置とを備え、前記
    全加算器、メモリおよびアキュムレータが、前記全加算
    器が前記制御信号に応答して算術処理および論理処理の
    両方を実行するように接続されている、デジタルデータ
    の単一ビットを処理するデータ処理セル。 12.第1および第2データ入力端子と、けた上げ入力
    端子と、和出力端子と、けた上げ出力端子とを持つ全、
    1ビット加算器と、 該加算器のけた上げ入力端子に接続された単一ビットけ
    た上げメモリと、 前記加算器の第1および第2データ入力端子の一方に接
    続された第1単一ビットデータメモリと、 前記加算器の第1および第2データ入力端子の他方に接
    続された第2単一ビットデータメモリと、 データ入力端子およびデータ出力端子とを持つRAMと、 データバスと、 第1制御信号に応答して、前記RAMの出力端子からの出
    力信号と前記加算器の和出力端子からの出力信号とを含
    む複数の単一ビットデータ信号の1つをデータバスに選
    択的に与えるバス選択装置と、 第2制御信号に応答して、前記加算器のけた上げ出力端
    子からの出力信号と所望の論理レベルとを含む複数の単
    一ビットデータ信号の1つを前記単一ビットけた上げメ
    モリに選択的に与える装置と、 第3制御信号に応答して、前記第1単一ビットデータメ
    モリに記憶された信号と、データバス上の信号と、2つ
    のセル入力端子からの出力信号とを含む複数の単一ビッ
    トデータ信号の1つを前記第1単一ビットデータメモリ
    に選択的に与える装置と、 第4制御信号に応答して、前記第2単一ビットデータメ
    モリに記憶された信号と、データバス上の信号と、2つ
    のセル入力端子からの出力信号とを含む複数の単一ビッ
    トデータ信号の1つを前記第2単一ビットデータメモリ
    に選択的に与える装置とを備え、前記全加算器が前記制
    御信号に応答して算術処理および論理処理の両方を実行
    する、デジタルデータ信号を処理するデータ処理セル。 13.第1および第2データ入力端子と、けた上げ入力
    端子と、和出力端子と、けた上げ出力端子とを持つ全加
    算器であって、前記第1、第2およびけた上げ入力端子
    にそれぞれ印加された第1、第2および第3入力信号の
    算術処理の結果に関する信号を前記出力端子にそれぞれ
    出力する全加算器と、 前記全加算器の前記第1、第2、およびけた上げ入力端
    子に接続された複数のデジタル信号メモリであって、各
    々が、複数の制御信号に応答して、それぞれ前記第1、
    第2および第3入力信号として、複数の単一ビットデー
    タ入力信号の1つを選択的に記憶する複数のデジタル信
    号メモリと、 アドレスされた記憶位置から複数の単一ビットデータ入
    力信号の1つを供給する出力端子を持つ、アドレス可能
    な多重ビットメモリとを備え、 前記全加算器と前記メモリとが相互接続されるとともに
    前記制御信号によって制御されて、前記全加算器が前記
    複数の単一ビットデータ入力信号に算術処理および論理
    処理の両方を行なう、単一ビットデジタル信号を処理す
    るデータ処理セル。 14.前記複数のデジタル信号メモリが前記全加算器の
    けた上げ入力端子に接続されたけた上げ入力メモリを含
    み、前記セルが前記制御信号に応答して2進1または2
    進0の論理レベルを選択的に前記けた上げ入力メモリに
    記憶する装置を含む特許請求の範囲第13項記載のデータ
    処理セル。 15.前記セルが同一で相互に接続されたn×mのマト
    リクスに配列されている特許請求の範囲第13項記載のデ
    ータ処理セル。 16.前記セルのマトリクスが集積回路チップ上に形成
    されている特許請求の範囲第15項記載のデータ処理セ
    ル。 17.nおよびmの両者ともに1より大である特許請求
    の範囲第16項記載のデータ処理セル。 18.デジタルデータ信号の高速処理用の複数の処理セ
    ルを備えるデータプロセッサであって、 プログラム命令に応答して制御信号を生成する制御装置
    と、 相互接続された複数の同一セルであって、各々が、前記
    制御装置からの制御信号を受け取るように接続され、さ
    らに、各々が、3つの入力端子と2つの算術処理出力端
    子とを有する単一ビット全加算器処理素子と、該全加算
    器処理素子に接続された複数の単一ビットメモリとを備
    え、前記メモリの各々が、前記制御装置からの制御信号
    に応答して前記処理素子の入力端子に複数の所定のデー
    タ信号の選択されたデータを供給するように個々に制御
    可能であり、前記メモリおよび全加算処理素子が前記制
    御装置に接続されていて論理処理および算術処理の両方
    が前記制御信号に応答して前記全加算処理素子によって
    実行され、別個に論理処理素子が不要である、相互接続
    された複数の同一セルとを備えるデータプロセッサ。 19.n×mマトリクスに相互接続されたn×m個のセ
    ルを含み、各セルが少なくとも2つの隣り合うセルまた
    は少なくとも1つの隣り合うセルと外部のデータ源また
    はデータ受信装置とに接続された特許請求の範囲第18項
    記載のデータプロセッサ。 20.内部セル及び端セルを有するn×mマトリクスに
    相互に接続されたn×m個のセルを含み、前記マトリク
    スの各内部セルが4つの隣り合うセルに接続され、前記
    マトリクスの各端セルが、少なくとも2つの隣り合うセ
    ルと、前記端セルのいくつかにデータを供給するととも
    に該端セルのいくつかからデータを受け取るデータ入出
    力装置とに接続される特許請求の範囲第18項記載のデー
    タプロセッサ。 21.線形配列に相互接続された複数のセルを含む特許
    請求の範囲第18項記載のデータプロセッサ。 22.前記各セルが、1つは前記各単一ビットメモリ用
    である複数のマルチプレクサを含み、各マルチプレクサ
    が、前記制御信号に応答して複数のデータ信号の1つを
    それと関連するメモリへの供給用に選択する特許請求の
    範囲第18項記載のデータプロセッサ。 23.各セルがデータバスを含み、該データバスが前記
    マルチプレクサの少なくともいくつかに接続されて、前
    記データバス上の信号が前記メモリの少なくともいくつ
    かに与えられる特許請求の範囲第22項記載のデータプロ
    セッサ。 24.デジタルデータ信号を処理する複数のセルを持つ
    並列データプロセッサであって、 プログラム命令に応答して制御信号を生成する制御装置
    と、 相互接続された複数の同一セルであって、各々が、2つ
    の入力端子、けた上げ入力端子和出力端子、けた上げ出
    力端子及び借り出力端子を持つ全加減算器と、該全加減
    算器と前記制御装置とに接続された複数のメモリとを備
    え、該メモリの各々が、前記制御装置からの制御信号に
    応答して複数の所定のデータ信号の中の選択されたデー
    タを前記全加減算器の入力端子に供給するように個々に
    制御され、前記メモリが前記全加減算器と前記制御装置
    とに接続されていて論理演算と算術演算との両方が前記
    全加減算器によって行われる、並列データプロセッサ。 25.n×mマトリクスに相互接続されたn×m個のセ
    ルを含み、各セルが少なくとも2つの隣り合うセルまた
    は少なくとも1つの隣り合うセルと外部のデータ源また
    はデータ受信装置とに接続された特許請求の範囲第24項
    記載のデータプロセッサ。 26.内部セル及び端セルを有するn×mマトリクスに
    相互に接続されたn×m個のセルを含み、前記マトリク
    スの各内部セルが4つの隣り合うセルに接続され、前記
    マトリクスの各端セルが、少なくとも2つの隣り合うセ
    ルと、前記端セルのいくつかにデータを供給するととも
    に該端セルのいくつかからデータを受け取るデータ入出
    力装置とに接続される特許請求の範囲第24項記載のデー
    タプロセッサ。 27.前記複数のメモリが、出力端子と選択的にアドレ
    スできる記憶位置とを持つ多重ビットメモリを含み、前
    記制御装置からの制御信号が、記憶されたデータ信号を
    選択的に前記出力端子に与える記憶アドレス信号を含
    む、特許請求の範囲第24項記載のデータプロセッサ。 28.前記複数のメモリが、第1、第2および第3の単
    一ビットデータレジスタを含み、各々が前記複数の所定
    のデータ信号の1つを書き込むように選択的に制御する
    ことができる特許請求の範囲第27項記載のデータプロセ
    ッサ。 29.前記セルの各々が、データバスと、前記加算器の
    和出力端子と多重ビットメモリの出力端子とからの信号
    を少なくとも含む複数のデータ信号の1つを選択的に与
    える装置とを含む、特許請求の範囲第28項記載のデータ
    プロセッサ。 30.前記多重ビットメモリがRAMである、特許請求の
    範囲第29項記載のデータプロセッサ。 31.前記複数のメモリが前記全加算器のけた上げ入力
    端子に接続されたけた上げ入力メモリを含み、該けた上
    げ入力メモリが前記制御信号に応答して2進1または2
    進0の論理レベルを記憶するように選択的に制御可能で
    ある特許請求の範囲第24項記載の並列データプロセッ
    サ。 32.第1および第2データ入力端子と、けた上げ入力
    端子と、和出力端子と、けた上げ出力端子と、借り出力
    端子とを持つ全加減算器であって、前記第1、第2およ
    びけた上げ入力端子に印加された第1、第2および第3
    入力信号の算術処理の結果に関する信号を前記出力端子
    にそれぞれ出力する全加減算器と、 該全加減算器の前記第1、第2およびけた上げ入力端子
    に接続された複数のデジタル信号メモリであって、各々
    が、複数の制御信号に応答して、それぞれ前記第1、第
    2および第3入力信号として、複数の単一ビットデータ
    入力信号の1つを選択的に記憶する複数のデジタル信号
    メモリと、 アドレスされた記憶位置から複数の単一ビットデータ入
    力信号の1つを供給する出力端子を持つ、アドレス可能
    な多重ビットメモリとを備え、 前記全加減算器と前記メモリとが相互接続されるととも
    に前記制御信号によって制御されて、前記全加減算器が
    前記複数の単一ビットデータ入力信号に算術処理および
    論理処理の両方を行なう、単一ビットデジタル信号を処
    理するデータ処理セル。 33.前記多重ビットメモリが選択的にアドレス可能な
    記憶位置を持ち、前記制御信号が記憶されたデータ信号
    を前記出力端子に選択的に与える記憶アドレス信号を含
    む、特許請求の範囲第32項記載のデータ処理セル。 34.前記複数の単一ビットメモリが、第1、第2、お
    よび第3の単一ビットデータレジスタを含み、各々が前
    記複数の所定のデータ信号の1つを書き込むように選択
    的に制御できる特許請求の範囲第33項記載のデータ処理
    セル。 35.前記セルの各々が、データバスと、加減算器の和
    出力端子と多重ビットメモリの出力端子とからの信号を
    少なくとも含む複数のデータ信号の1つを選択的に与え
    る装置とを含む、特許請求の範囲第34項記載のデータ処
    理セル。 36.前記多重ビットメモリがRAMである特許請求の範
    囲第35項記載のデータ処理セル。 37.前記複数のデジタル信号メモリが前記全加算器の
    けた上げ入力端子に接続されたけた上げ入力メモリを含
    み、前記セルが前記制御信号に応答して2進1または2
    進0の論理レベルを選択的に前記けた上げ入力メモリに
    記憶する装置を含む特許請求の範囲第32項記載のデータ
    処理セル。 38.前記セルが同一で相互に接続されたn×mのマト
    リクスに配列されている特許請求の範囲第32項記載のデ
    ータ処理セル。 39.前記セルのマトリクスが集積回路チップ上に形成
    されている特許請求の範囲第38項記載のデータ処理セ
    ル。 40.nおよびmの両者ともに1より大である特許請求
    の範囲第39項記載のデータ処理セル。 41.並列プロセッサ配列内で単一ビットのデジタルデ
    ータを処理するデータ処理セルであって、 第1および第2データ入力端子と、けた上げ入力端子
    と、和出力端子と、けた上げ出力端子とを持つ全加算器
    と、 第1制御信号に応答して、第1データ信号または所望の
    2進1もしくは0の論理レベルを選択的に前記全加算器
    のけた上げ入力端子に供給するけた上げ入力アキュムレ
    ータと、 第2制御信号に応答して、第2データ入力信号を前記全
    加算器の第1および第2データ入力端子の1方に選択的
    に供給する第1データ入力アキュムレータと、 第3制御信号に応答して、第3データ入力信号を第前記
    第1および第2データ入力端子の他方に供給する第2デ
    ータ入力アキュムレータとを備え、 前記全加算器およびアキュムレータが、前記全加算器が
    前記制御信号に応答して、算術処理および論理処理の両
    方を実行するように接続されており、前記論理処理が少
    なくとも論理OR処理および論理AND処理を含み、該論理O
    R処理および論理AND処理の結果が、前記全加算器のけた
    上げ出力端子から取り出せるデータ処理セル。 42.デジタルデータを処理するデータ処理セルであっ
    て、 第1および第2データ入力端子と、けた上げ入力端子
    と、和出力端子と、けた上げ出力端子とを持つ全、1ビ
    ット加算器と、 該加算器のけた上げ入力端子に接続された単一ビットけ
    た上げメモリと、 前記加算器の第1および第2データ入力端子の一方に接
    続された第1単一ビットデータメモリと、 前記加算器の第1および第2データ入力端子の他方に接
    続された第2単一ビットデータメモリと、 前記第1単一ビットデータメモリの入力端子に接続され
    た第1および第2セル入力信号ラインと、 前記第2単一ビットデータメモリの入力端子に接続され
    た第3および第4セル入力信号ラインと、 前記第1単一ビットデータメモリの出力端子に接続され
    た第1および第2セル出力信号ラインと、 前記第2単一ビットデータメモリの出力端子に接続され
    た第3および第4セル出力信号ラインと、 制御信号に応答して、前記加算器けた上げ出力端子から
    の出力信号、2進1論理レベルおよび2進0論理レベル
    を含む複数の単一データ信号の1つを選択的に前記単一
    ビットけた上げメモリに供給し、これにより、前記全加
    算器が論理および算術処理の両方を実行できる装置とを
    備えるデータ処理セル。 43.単一ビットデジタル信号を処理するデータ処理セ
    ルであって、 第1および第2データ入力端子と、けた上げ入力端子
    と、和出力端子と、けた上げ出力端子とを持つ全加算器
    であって、前記第1、第2およびけた上げ入力端子に印
    加された第1、第2および第3入力信号の算術処理の結
    果に関する信号を前記出力端子にそれぞれ出力する全加
    算器と、 前記全加算器の前記第1、第2、およびけた上げ入力端
    子にそれぞれ接続され、複数の制御信号に応答して、前
    記第1、第2および第3入力信号をそれぞれ記憶する第
    1、第2および第3デジタル信号メモリと、 アドレスされた記憶位置からデータ出力信号を供給する
    出力端子を持ち、該出力端子が前記デジタル信号メモリ
    の少なくとも2つに接続される、アドレス可能な多重ビ
    ットメモリとを備え、 前記全加算器と前記メモリとが相互接続されるとともに
    前記制御信号によって制御されて、前記全加算器が算術
    処理および論理処理の両方を行なう、データ処理セル。 44.前記第3デジタル信号メモリ内に2進1または2
    進0の信号レベルを選択的に記憶する装置を含み、論理
    処理が前記第1および第2デジタル信号メモリ内に記憶
    された前記第1および第2入力信号に基づいて前記全加
    算器によって実行され、論理処理の種類が前記第3デジ
    タル信号メモリ内に記憶された論理レベルによって決定
    される特許請求の範囲第43項記載のデータ処理セル。 45.デジタルデータ信号処理用の複数の処理セルを備
    える並列データプロセッサであって、 プログラム命令に応答して制御信号を生成する制御装置
    と、 相互接続された複数の同一セルであって、各々が、第1
    および第2データ入力端子と、けた上げ入力端子と、和
    出力端子と、けた上げ出力端子と、借り出力端子とを備
    える全加減算器と、該全加減算器の第1入力端子、第2
    出力端子及びけた上げ入力端子にそれぞれ接続される第
    1、第2および第3データ記憶装置とを含むセルとを備
    え、 各前記第1、第2および第3データ記憶装置が前記制御
    装置に接続され、該制御装置からの制御信号に応答し
    て、前記データ記憶装置の各々が、複数の所定のデータ
    信号の選択されたデータを前記全加減算器の入力端子に
    供給するように個々に制御可能であり、前記データ記憶
    装置が、前記全加減算器によって論理および算術処理が
    実行されるように前記全加減算器および前記制御装置に
    接続され、前記論理処理が少なくともOR処理およびAND
    処理を含む並列データプロセッサ。 46.各セルが、前記制御装置と、前記第1、第2およ
    び第3データ記憶装置のうちの少なくとも1つと、少な
    くとも2つの隣り合うセルまたは少なくとも1個の隣り
    合うセルと、外部のデータ源またはデータ受信装置とに
    接続された第4データ記憶装置を含む特許請求の範囲第
    45項記載のデータプロセッサ。 47.前記データ記憶装置の各々が、データ入力端子
    と、データ出力端子と、前記データ入力端子に接続され
    ていて前記制御装置からの制御信号に応答してデータ信
    号を前記データ入力端子に選択的に供給する装置とを含
    む特許請求の範囲第46項記載のデータプロセッサ。 48.各セルの前記第4データ記憶装置が前記少なくと
    も2つの隣り合うセルの第4データ記憶装置に接続され
    ている特許請求の範囲第47項記載のデータプロセッサ。 49.各セルが、少なくとも前記データ記憶装置のいく
    つかに接続された出力端子を有する多重ビットメモリを
    含むの特許請求の範囲第45項記載のデータプロセッサ。 50.前記第3データ記憶装置が、前記全加算器のけた
    上げ入力端子に接続されたけた上げ入力メモリを備え、
    該けた上げ入力メモリが前記制御信号に応答して2進1
    または2進0論理レベルを記憶するように選択的に制御
    可能である特許請求の範囲第45項記載のデータプロセッ
    サ。 51.各セルが、前記制御装置と、前記第1、第2およ
    び第3データ記憶装置の少なくとも1つと、少なくとも
    2つの隣り合うセルまたは少なくとも1個の隣り合うセ
    ルと、外部のデータ源もしくはデータ受信装置とに接続
    された第4データ記憶装置を含む特許請求の範囲第50項
    記載のデータプロセッサ。 52.前記データ記憶装置の各々が、データ入力端子
    と、データ出力端子と、前記データ入力端子に接続され
    ていて前記制御装置からの制御信号に応答してデータ信
    号を前記データ入力端子に選択的に供給する装置とを含
    む特許請求の範囲第51項記載のデータプロセッサ。 53.各セルの前記第4データ記憶装置が前記少なくと
    も2つの隣り合うセルの第4データ記憶装置に作動的に
    接続されている特許請求の範囲第52項記載のデータプロ
    セッサ。 54.各セルが、少なくとも前記データ記憶装置のいく
    つかに作動的に接続された出力端子を有する多重ビット
    メモリを含む特許請求の範囲第50項記載のデータプロセ
    ッサ。 55.前記セルが同一で相互に接続されたn×mのマト
    リクスに配列されている特許請求の範囲第45項記載のデ
    ータプロセッサ。 56.前記セルのマトリクスが集積回路チップ上に形成
    されている特許請求の範囲第55項記載のデータプロセッ
    サ。
JP59044231A 1983-03-10 1984-03-09 データ処理セルおよびデータプロセッサ Expired - Lifetime JP2671120B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/474,209 US4739474A (en) 1983-03-10 1983-03-10 Geometric-arithmetic parallel processor
US474209 1983-03-10

Publications (2)

Publication Number Publication Date
JPS59172065A JPS59172065A (ja) 1984-09-28
JP2671120B2 true JP2671120B2 (ja) 1997-10-29

Family

ID=23882614

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59044231A Expired - Lifetime JP2671120B2 (ja) 1983-03-10 1984-03-09 データ処理セルおよびデータプロセッサ

Country Status (5)

Country Link
US (1) US4739474A (ja)
EP (1) EP0122048B1 (ja)
JP (1) JP2671120B2 (ja)
CA (1) CA1201208A (ja)
DE (1) DE3483541D1 (ja)

Families Citing this family (133)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL192637C (nl) * 1984-02-27 1997-11-04 Nippon Telegraph & Telephone Stelselprocessor.
US4784900A (en) * 1985-05-31 1988-11-15 University Of Bath Method for sizing polytretrafluoroethylene fabrics
DE3533800C1 (de) * 1985-09-21 1987-02-05 Hans-Werner Lang Verfahren zum Betreiben eines hochintegrierten Wellenfront-Feldrechners sowie entsprechender Wellenfront-Feldrechner
US4860249A (en) * 1985-10-04 1989-08-22 Saxpy Computer Corporation Multizone array processor implementing two sided zone buffers with each side being dynamically configured as a working or I/O side
US4783738A (en) * 1986-03-13 1988-11-08 International Business Machines Corporation Adaptive instruction processing by array processor having processor identification and data dependent status registers in each processing element
US4775952A (en) * 1986-05-29 1988-10-04 General Electric Company Parallel processing system apparatus
US4778723A (en) * 1986-06-20 1988-10-18 The Dow Chemical Company Method for sizing polytetrafluoroethylene fibers, yarn, or threads
US4698243A (en) * 1986-06-20 1987-10-06 The Dow Chemical Company Method for sizing and hydrolyzing polytetrafluoroethylene fabrics, fibers, yarns, or threads
US4985832A (en) * 1986-09-18 1991-01-15 Digital Equipment Corporation SIMD array processing system with routing networks having plurality of switching stages to transfer messages among processors
DE3804938C2 (de) * 1987-02-18 1994-07-28 Canon Kk Bildverarbeitungseinrichtung
US5293481A (en) * 1987-02-18 1994-03-08 Canon Kabushiki Kaisha Data parallel processing apparatus
US5058001A (en) * 1987-03-05 1991-10-15 International Business Machines Corporation Two-dimensional array of processing elements for emulating a multi-dimensional network
US4891751A (en) * 1987-03-27 1990-01-02 Floating Point Systems, Inc. Massively parallel vector processing computer
GB2204431A (en) * 1987-04-25 1988-11-09 Ferranti Plc Digital signal processing and transducer array beamforming
US5129092A (en) * 1987-06-01 1992-07-07 Applied Intelligent Systems,Inc. Linear chain of parallel processors and method of using same
US4908751A (en) * 1987-10-15 1990-03-13 Smith Harry F Parallel data processor
US4951221A (en) * 1988-04-18 1990-08-21 General Electric Company Cell stack for variable digit width serial architecture
US5257395A (en) * 1988-05-13 1993-10-26 International Business Machines Corporation Methods and circuit for implementing and arbitrary graph on a polymorphic mesh
DE68926783T2 (de) * 1988-10-07 1996-11-28 Martin Marietta Corp Paralleler datenprozessor
US5179714A (en) * 1988-10-07 1993-01-12 Martin Marietta Corporation Parallel bit serial data processor
US5253308A (en) * 1989-06-21 1993-10-12 Amber Engineering, Inc. Massively parallel digital image data processor using pixel-mapped input/output and relative indexed addressing
CA2021192A1 (en) * 1989-07-28 1991-01-29 Malcolm A. Mumme Simplified synchronous mesh processor
US5173947A (en) * 1989-08-01 1992-12-22 Martin Marietta Corporation Conformal image processing apparatus and method
US5452425A (en) * 1989-10-13 1995-09-19 Texas Instruments Incorporated Sequential constant generator system for indicating the last data word by using the end of loop bit having opposite digital state than other data words
US5765010A (en) * 1989-10-13 1998-06-09 Texas Instruments Incorporated Timing and control circuit and method for a synchronous vector processor
US5539891A (en) * 1989-10-13 1996-07-23 Texas Instruments Incorporated Data transfer control circuit with a sequencer circuit and control subcircuits and data control method for successively entering data into a memory
US5598545A (en) * 1989-10-13 1997-01-28 Texas Instruments Incorporated Circuitry and method for performing two operating instructions during a single clock in a processing device
US5327541A (en) * 1989-10-13 1994-07-05 Texas Instruments Inc. Global rotation of data in synchronous vector processor
US5163120A (en) * 1989-10-13 1992-11-10 Texas Instruments Incorporated Second nearest-neighbor communication network for synchronous vector processor, systems and methods
US5105387A (en) * 1989-10-13 1992-04-14 Texas Instruments Incorporated Three transistor dual port dynamic random access memory gain cell
US5210836A (en) * 1989-10-13 1993-05-11 Texas Instruments Incorporated Instruction generator architecture for a video signal processor controller
US5408673A (en) * 1989-10-13 1995-04-18 Texas Instruments Incorporated Circuit for continuous processing of video signals in a synchronous vector processor and method of operating same
US5293637A (en) * 1989-10-13 1994-03-08 Texas Instruments Distribution of global variables in synchronous vector processor
US5321510A (en) * 1989-11-13 1994-06-14 Texas Instruments Incorporated Serial video processor
GB8925723D0 (en) * 1989-11-14 1990-01-04 Amt Holdings Processor array system
US5093722A (en) * 1990-03-01 1992-03-03 Texas Instruments Incorporated Definition television digital processing units, systems and methods
US5091786A (en) * 1990-03-01 1992-02-25 Texas Instruments Incorporated Multi-screen feature for improved definition television digital processing units, systems, and methods
US5091783A (en) * 1990-03-01 1992-02-25 Texas Instruments Incorporated Still more feature for improved definition television digital processing units, systems, and methods
US5133073A (en) * 1990-05-29 1992-07-21 Wavetracer, Inc. Processor array of N-dimensions which is physically reconfigurable into N-1
US5193202A (en) * 1990-05-29 1993-03-09 Wavetracer, Inc. Processor array with relocated operand physical address generator capable of data transfer to distant physical processor for each virtual processor while simulating dimensionally larger array processor
US5157785A (en) * 1990-05-29 1992-10-20 Wavetracer, Inc. Process cell for an n-dimensional processor array having a single input element with 2n data inputs, memory, and full function arithmetic logic unit
US5420754A (en) * 1990-09-28 1995-05-30 At&T Corp. Stacked board assembly for computing machines, including routing boards
US5828894A (en) * 1990-11-13 1998-10-27 International Business Machines Corporation Array processor having grouping of SIMD pickets
US5617577A (en) * 1990-11-13 1997-04-01 International Business Machines Corporation Advanced parallel array processor I/O connection
US5815723A (en) * 1990-11-13 1998-09-29 International Business Machines Corporation Picket autonomy on a SIMD machine
US5625836A (en) * 1990-11-13 1997-04-29 International Business Machines Corporation SIMD/MIMD processing memory element (PME)
US5809292A (en) * 1990-11-13 1998-09-15 International Business Machines Corporation Floating point for simid array machine
US5765011A (en) * 1990-11-13 1998-06-09 International Business Machines Corporation Parallel processing system having a synchronous SIMD processing with processing elements emulating SIMD operation using individual instruction streams
US5590345A (en) * 1990-11-13 1996-12-31 International Business Machines Corporation Advanced parallel array processor(APAP)
US5588152A (en) * 1990-11-13 1996-12-24 International Business Machines Corporation Advanced parallel processor including advanced support hardware
US5794059A (en) * 1990-11-13 1998-08-11 International Business Machines Corporation N-dimensional modified hypercube
US5765012A (en) * 1990-11-13 1998-06-09 International Business Machines Corporation Controller for a SIMD/MIMD array having an instruction sequencer utilizing a canned routine library
US5734921A (en) * 1990-11-13 1998-03-31 International Business Machines Corporation Advanced parallel array processor computer package
US5966528A (en) * 1990-11-13 1999-10-12 International Business Machines Corporation SIMD/MIMD array processor with vector processing
US5963745A (en) * 1990-11-13 1999-10-05 International Business Machines Corporation APAP I/O programmable router
US5630162A (en) * 1990-11-13 1997-05-13 International Business Machines Corporation Array processor dotted communication network based on H-DOTs
US5963746A (en) * 1990-11-13 1999-10-05 International Business Machines Corporation Fully distributed processing memory element
US5765015A (en) * 1990-11-13 1998-06-09 International Business Machines Corporation Slide network for an array processor
ATE180586T1 (de) * 1990-11-13 1999-06-15 Ibm Paralleles assoziativprozessor-system
US5708836A (en) * 1990-11-13 1998-01-13 International Business Machines Corporation SIMD/MIMD inter-processor communication
US5325500A (en) * 1990-12-14 1994-06-28 Xerox Corporation Parallel processing units on a substrate, each including a column of memory
US5594918A (en) * 1991-05-13 1997-01-14 International Business Machines Corporation Parallel computer system providing multi-ported intelligent memory
EP0520765B1 (en) * 1991-06-25 1999-05-12 Canon Kabushiki Kaisha Movement vector detecting method/apparatus and encoding method/apparatus using such method/apparatus
US5689719A (en) * 1991-06-28 1997-11-18 Sanyo Electric O., Ltd. Parallel computer system including processing elements
AU2939892A (en) * 1991-12-06 1993-06-28 Richard S. Norman Massively-parallel direct output processor array
US5506992A (en) * 1992-01-30 1996-04-09 Saxenmeyer; George Distributed processing system with asynchronous communication between processing modules
JP2642039B2 (ja) * 1992-05-22 1997-08-20 インターナショナル・ビジネス・マシーンズ・コーポレイション アレイ・プロセッサ
US6298162B1 (en) 1992-12-23 2001-10-02 Lockheed Martin Corporation Image compression/expansion using parallel decomposition/recomposition
US6073185A (en) * 1993-08-27 2000-06-06 Teranex, Inc. Parallel data processor
US5535291A (en) * 1994-02-18 1996-07-09 Martin Marietta Corporation Superresolution image enhancement for a SIMD array processor
US5557734A (en) * 1994-06-17 1996-09-17 Applied Intelligent Systems, Inc. Cache burst architecture for parallel processing, such as for image processing
EP0728337B1 (en) * 1994-09-13 2000-05-03 Teranex, Inc. Parallel data processor
KR100186918B1 (ko) * 1994-10-21 1999-05-01 모리시다 요이치 신호처리장치
US5757641A (en) * 1995-07-03 1998-05-26 General Electric Company Triplex control system with sensor failure compensation
US5943242A (en) 1995-11-17 1999-08-24 Pact Gmbh Dynamically reconfigurable data processing system
US7266725B2 (en) 2001-09-03 2007-09-04 Pact Xpp Technologies Ag Method for debugging reconfigurable architectures
US6388672B1 (en) * 1996-02-02 2002-05-14 Kabushiki Kaisha Toshiba Graphic translate engine, floating point arithmetic unit and floating point multiply-add calculation unit
DE19651075A1 (de) * 1996-12-09 1998-06-10 Pact Inf Tech Gmbh Einheit zur Verarbeitung von numerischen und logischen Operationen, zum Einsatz in Prozessoren (CPU's), Mehrrechnersystemen, Datenflußprozessoren (DFP's), digitalen Signal Prozessoren (DSP's) oder dergleichen
DE19654593A1 (de) 1996-12-20 1998-07-02 Pact Inf Tech Gmbh Umkonfigurierungs-Verfahren für programmierbare Bausteine zur Laufzeit
DE19654595A1 (de) 1996-12-20 1998-07-02 Pact Inf Tech Gmbh I0- und Speicherbussystem für DFPs sowie Bausteinen mit zwei- oder mehrdimensionaler programmierbaren Zellstrukturen
US6338106B1 (en) 1996-12-20 2002-01-08 Pact Gmbh I/O and memory bus system for DFPS and units with two or multi-dimensional programmable cell architectures
EP1329816B1 (de) 1996-12-27 2011-06-22 Richter, Thomas Verfahren zum selbständigen dynamischen Umladen von Datenflussprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o.dgl.)
DE19654846A1 (de) 1996-12-27 1998-07-09 Pact Inf Tech Gmbh Verfahren zum selbständigen dynamischen Umladen von Datenflußprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o. dgl.)
DE19704044A1 (de) * 1997-02-04 1998-08-13 Pact Inf Tech Gmbh Verfahren zur automatischen Adressgenerierung von Bausteinen innerhalb Clustern aus einer Vielzahl dieser Bausteine
DE19704728A1 (de) * 1997-02-08 1998-08-13 Pact Inf Tech Gmbh Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines
US6542998B1 (en) 1997-02-08 2003-04-01 Pact Gmbh Method of self-synchronization of configurable elements of a programmable module
DE19704742A1 (de) 1997-02-11 1998-09-24 Pact Inf Tech Gmbh Internes Bussystem für DFPs, sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen, zur Bewältigung großer Datenmengen mit hohem Vernetzungsaufwand
US8686549B2 (en) 2001-09-03 2014-04-01 Martin Vorbach Reconfigurable elements
DE19861088A1 (de) 1997-12-22 2000-02-10 Pact Inf Tech Gmbh Verfahren zur Reparatur von integrierten Schaltkreisen
DE19807872A1 (de) 1998-02-25 1999-08-26 Pact Inf Tech Gmbh Verfahren zur Verwaltung von Konfigurationsdaten in Datenflußprozessoren sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstruktur (FPGAs, DPGAs, o. dgl.
US6173388B1 (en) 1998-04-09 2001-01-09 Teranex Inc. Directly accessing local memories of array processors for improved real-time corner turning processing
US6212628B1 (en) 1998-04-09 2001-04-03 Teranex, Inc. Mesh connected computer
US6067609A (en) * 1998-04-09 2000-05-23 Teranex, Inc. Pattern generation and shift plane operations for a mesh connected computer
US6185667B1 (en) 1998-04-09 2001-02-06 Teranex, Inc. Input/output support for processing in a mesh connected computer
EP1228440B1 (de) 1999-06-10 2017-04-05 PACT XPP Technologies AG Sequenz-partitionierung auf zellstrukturen
ATE476700T1 (de) 2000-06-13 2010-08-15 Richter Thomas Pipeline ct-protokolle und -kommunikation
US7595659B2 (en) 2000-10-09 2009-09-29 Pact Xpp Technologies Ag Logic cell array and bus system
US8058899B2 (en) 2000-10-06 2011-11-15 Martin Vorbach Logic cell array and bus system
US20040015899A1 (en) * 2000-10-06 2004-01-22 Frank May Method for processing data
US6990555B2 (en) * 2001-01-09 2006-01-24 Pact Xpp Technologies Ag Method of hierarchical caching of configuration data having dataflow processors and modules having two- or multidimensional programmable cell structure (FPGAs, DPGAs, etc.)
US20020133688A1 (en) * 2001-01-29 2002-09-19 Ming-Hau Lee SIMD/MIMD processing on a reconfigurable array
US7581076B2 (en) 2001-03-05 2009-08-25 Pact Xpp Technologies Ag Methods and devices for treating and/or processing data
WO2005045692A2 (en) * 2003-08-28 2005-05-19 Pact Xpp Technologies Ag Data processing device and method
US9037807B2 (en) 2001-03-05 2015-05-19 Pact Xpp Technologies Ag Processor arrangement on a chip including data processing, memory, and interface elements
US7444531B2 (en) 2001-03-05 2008-10-28 Pact Xpp Technologies Ag Methods and devices for treating and processing data
US7844796B2 (en) 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
US7210129B2 (en) 2001-08-16 2007-04-24 Pact Xpp Technologies Ag Method for translating programs for reconfigurable architectures
JP2004533691A (ja) 2001-06-20 2004-11-04 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト データを処理するための方法
US7996827B2 (en) 2001-08-16 2011-08-09 Martin Vorbach Method for the translation of programs for reconfigurable architectures
US7434191B2 (en) * 2001-09-03 2008-10-07 Pact Xpp Technologies Ag Router
US8686475B2 (en) 2001-09-19 2014-04-01 Pact Xpp Technologies Ag Reconfigurable elements
US7577822B2 (en) 2001-12-14 2009-08-18 Pact Xpp Technologies Ag Parallel task operation in processor and reconfigurable coprocessor configured based on information in link list including termination information for synchronization
WO2003060747A2 (de) 2002-01-19 2003-07-24 Pact Xpp Technologies Ag Reconfigurierbarer prozessor
AU2003214003A1 (en) 2002-02-18 2003-09-09 Pact Xpp Technologies Ag Bus systems and method for reconfiguration
US8914590B2 (en) 2002-08-07 2014-12-16 Pact Xpp Technologies Ag Data processing method and device
US7657861B2 (en) 2002-08-07 2010-02-02 Pact Xpp Technologies Ag Method and device for processing data
WO2005010632A2 (en) * 2003-06-17 2005-02-03 Pact Xpp Technologies Ag Data processing device and method
AU2003286131A1 (en) 2002-08-07 2004-03-19 Pact Xpp Technologies Ag Method and device for processing data
JP4388895B2 (ja) 2002-09-06 2009-12-24 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト リコンフィギュアラブルなシーケンサ構造
US7146486B1 (en) * 2003-01-29 2006-12-05 S3 Graphics Co., Ltd. SIMD processor with scalar arithmetic logic units
US20040252547A1 (en) * 2003-06-06 2004-12-16 Chengpu Wang Concurrent Processing Memory
US7937557B2 (en) * 2004-03-16 2011-05-03 Vns Portfolio Llc System and method for intercommunication between computers in an array
US7904695B2 (en) 2006-02-16 2011-03-08 Vns Portfolio Llc Asynchronous power saving computer
WO2007062327A2 (en) * 2005-11-18 2007-05-31 Ideal Industries, Inc. Releasable wire connector
EP1974265A1 (de) 2006-01-18 2008-10-01 PACT XPP Technologies AG Hardwaredefinitionsverfahren
US7904615B2 (en) 2006-02-16 2011-03-08 Vns Portfolio Llc Asynchronous computer communication
US7966481B2 (en) * 2006-02-16 2011-06-21 Vns Portfolio Llc Computer system and method for executing port communications without interrupting the receiving computer
GB2436377B (en) * 2006-03-23 2011-02-23 Cambridge Display Tech Ltd Data processing hardware
TW200817925A (en) * 2006-03-31 2008-04-16 Technology Properties Ltd Method and apparatus for operating a computer processor array
US20080270751A1 (en) * 2007-04-27 2008-10-30 Technology Properties Limited System and method for processing data in a pipeline of computers
US20080282062A1 (en) * 2007-05-07 2008-11-13 Montvelishsky Michael B Method and apparatus for loading data and instructions into a computer
WO2010011813A1 (en) * 2008-07-23 2010-01-28 Alkermes, Inc. Complex of trospium and pharmaceutical compositions thereof
US8898432B2 (en) 2011-10-25 2014-11-25 Geo Semiconductor, Inc. Folded SIMD array organized in groups (PEGs) of respective array segments, control signal distribution logic, and local memory

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3701976A (en) * 1970-07-13 1972-10-31 Bell Telephone Labor Inc Floating point arithmetic unit for a parallel processing computer
US3815095A (en) * 1972-08-29 1974-06-04 Texas Instruments Inc General-purpose array processor
US4065808A (en) * 1975-01-25 1977-12-27 U.S. Philips Corporation Network computer system
GB1536933A (en) * 1977-03-16 1978-12-29 Int Computers Ltd Array processors
US4215401A (en) * 1978-09-28 1980-07-29 Environmental Research Institute Of Michigan Cellular digital array processor
US4314349A (en) * 1979-12-31 1982-02-02 Goodyear Aerospace Corporation Processing element for parallel array processors
US4524455A (en) * 1981-06-01 1985-06-18 Environmental Research Inst. Of Michigan Pipeline processor

Also Published As

Publication number Publication date
EP0122048A3 (en) 1987-01-07
DE3483541D1 (de) 1990-12-13
EP0122048B1 (en) 1990-11-07
JPS59172065A (ja) 1984-09-28
CA1201208A (en) 1986-02-25
US4739474A (en) 1988-04-19
EP0122048A2 (en) 1984-10-17

Similar Documents

Publication Publication Date Title
JP2671120B2 (ja) データ処理セルおよびデータプロセッサ
US11693657B2 (en) Methods for performing fused-multiply-add operations on serially allocated data within a processing-in-memory capable memory device, and related memory devices and systems
EP3698313B1 (en) Image preprocessing for generalized image processing
EP0390907B1 (en) Parallel data processor
EP3557485A1 (en) Method for accelerating operations and accelerator apparatus
CN110058802B (zh) 存储装置及控制存储器装置的方法
US3287703A (en) Computer
EP3557425A1 (en) Accelerator and system for accelerating operations
CN111630502B (zh) 用于神经网络处理器的统一存储器组织
KR910004308B1 (ko) 조합 프로세서
US10984500B1 (en) Inline image preprocessing for convolution operations using a matrix multiplier on an integrated circuit
JPH0425586B2 (ja)
WO2021046568A1 (en) Methods for performing processing-in-memory operations, and related memory devices and systems
CN112559046A (zh) 数据处理装置及人工智能处理器
KR102653014B1 (ko) 인-메모리-컴퓨팅에 대한 데이터 배치를 위한 방법 및 상기 방법이 적용된 메모리 모듈
CN114072778A (zh) 存储器处理单元架构
US20230418600A1 (en) Non-volatile memory die with latch-based multiply-accumulate components
US7503046B2 (en) Method of obtaining interleave interval for two data values
US20240134930A1 (en) Method and apparatus for neural network weight block compression in a compute accelerator
US20220004363A1 (en) Semiconductor device, data generation methods used for the same, and method of controlling the same
KR20240029532A (ko) 컴퓨팅 가속기 상에서 데이터 변환을 사용한 매트릭스 연산을 위한 방법 및 장치
JPH0236029B2 (ja)
Gayles et al. The MGAP-2: a micro-grained massively parallel array processor
CN113362878A (zh) 用于存储器内计算的方法和用于计算的系统
Stevenson Numerical algorithms for parallel computers

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term