JPS59226971A - 全浮動小数点ベクトルプロセツサ - Google Patents

全浮動小数点ベクトルプロセツサ

Info

Publication number
JPS59226971A
JPS59226971A JP59108259A JP10825984A JPS59226971A JP S59226971 A JPS59226971 A JP S59226971A JP 59108259 A JP59108259 A JP 59108259A JP 10825984 A JP10825984 A JP 10825984A JP S59226971 A JPS59226971 A JP S59226971A
Authority
JP
Japan
Prior art keywords
data
address
processor
arithmetic
pipeline
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.)
Granted
Application number
JP59108259A
Other languages
English (en)
Other versions
JPH0418345B2 (ja
Inventor
ジヨン・ピ−・ポ−タ−
デビツド・ダブリユ・アルトマン
ブル−ノ・エイ・マツテデイ
ラルフ・ジヨ−ンズ
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.)
Analogic Corp
Original Assignee
Analogic Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Analogic Corp filed Critical Analogic Corp
Publication of JPS59226971A publication Critical patent/JPS59226971A/ja
Publication of JPH0418345B2 publication Critical patent/JPH0418345B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • G06F9/3887Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by a single instruction for multiple data lanes [SIMD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/226Microinstruction function, e.g. input/output microinstruction; diagnostic microinstruction; microinstruction format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/3001Arithmetic instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30036Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3877Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor
    • G06F9/3879Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor for non-native instruction execution, e.g. executing a command; for Java instruction set
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • G06F9/3893Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled in tandem, e.g. multiplier-accumulator
    • G06F9/3895Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled in tandem, e.g. multiplier-accumulator for complex operations, e.g. multidimensional or interleaved address generators, macros

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Complex Calculations (AREA)

Abstract

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

Description

【発明の詳細な説明】 [発明の技術分野] 本発明はデータ処理技術に係り、特に新規な全浮動少数
点ベタ1〜ルプロヒツサに関J゛る。
[技術的背景] 可能な限り迅速なKl算処理能力を得るために、ディジ
タル計算機は一般に並列またはパイプライン処理技法お
よび高速高効率の構成を用いる。並列処理は処理すべぎ
データを同時に作動している算術および論理ユニットに
分配し、使用した個々の同時作動している専術および論
理ユニットの数に五つ(定まる係数だり逮い処理を行う
。パイプライン処理は評価されるべぎ関数を、直列に接
続され且つラッチされたパイプライン段で行われる分離
演粋に分けて行う。処理されるベキデータはパイプライ
ンを流れ、パイプライン段の数により定まる係数だけ速
い処理ができる。
ベクトルプロセラ4ノーは、集合群またはベクトル群に
整列されたデータの塊に対し計算強化関数の繰返し評価
を要する重要な問題のために一般に用いられる。このよ
うな装置では、パイプラインは、順次与えられるデータ
ベクトルに対し評価されるべく予め選択された関数に対
応する複数の技法の1つである。公知のベタ1−ルプロ
セツサでは、ベクトルデータI10、ベクトルデータア
ドレス発’i; J′3よびパイプライン制御が相互依
存的に行われ、装置出力を妨げることもある。加えて装
置出力は、アドレスの絶対値に対するメモリザイクルタ
イミングの依存性および評価されるべき複数の関数の各
々につきパイプライン算術ユニットの100%利用を達
成すべきためのパイプライン技法の失敗に制限される。
[発明の概要] 本発明のベクトルプロセッサは、並列およびパイプライ
ン技法を結合して固定または浮動小数点点フォーマット
を有するベクトルデータにつき複数の計算強化関数を評
価し得る装置を提供するものであり、固定または浮動小
数点フォーマットは比較的低コストのハードウェア構成
およびストレートフォワードソフトウェアを用い゛(大
きなデータ処理能力を提供するものである。本発明の全
浮動小数点ベクトルプロセッサは、マルチプロセッザ密
結合モード、マルチプロセツザ疎結合およびリソース分
担モード、不結合単−プロt?ツサ独立モードの1つに
おけるマルチモード演算を行い得る。本発明の浮動小数
点ベクトルプロセッサは、パイプライン算術および論理
ユニット、ピッ1ル分割アドレス発生器、局部ベクトル
データメモリ、およびマスタプロセシングユニットを有
し、ベクトルデータ読出しおよび書込みアドレス発生、
パイブライン制御ンイクロコード、ベクトルデータ11
0、おにび動作中フA−マット変換を行うものぐある。
マスクプロレシングユニツ1へにより制御されるビット
分割アドレス発生器はクロックパルスの発生1Gにパイ
プラインに流れ込むべき次のデータベクトルに対するア
ドレスを与える。アドレス発生器どマスタプロセシング
ユニツ1〜とによって制御されるパーrブライン制御シ
ーケンサは、り1」ツクパルスの発生毎にクロックパル
スに対応づ°る関数評価の特定の相用にパイプライン算
術および論理ユニツ1〜をさUる次の出力コードを同期
的に形成づる。データはアドレス発生器によって指定さ
れた読出しデータアドレス位置からパイプライン算術J
5よび論理ユニットにJハブる評価のためにデータメモ
リから読出され、パイプライン制御シーケンリの制御の
干にアドレス発生器にJζつ−C指定された書込みf−
タブドレスへの関数評価の後データメモリに書込まれる
。パイプライン幹術およσ論理ユニツ1〜はMa3よび
Zと呼ばれる〜対のレジスタファイル、利用者が選択で
きる固定または浮動小数点フA−マット乗算器、および
利用者が選択できる固定または浮動小数点フォーマツ1
〜算術および論理ユニットを有する。MおよびZファイ
ルはパイプライン制御シーケン゛リ−の制御ににっでフ
ィードフオワードおよびフィードバック路を有する手段
によって選択的に相互接続されている。各クロックパル
スに対して、Mおよび7レジスタフアイルの各々は2つ
の読出しおよび2つの害込みを行い、書込みの一方は読
出し用に指定されたアドレスについてのものである。ダ
イレクトメモリアドレスおよびプログラム入出力はデー
タメモリへのおよびデータメモリからのベタ1〜ルデー
タI/C)のために用いられる。不結合独立モードにお
【プる全浮動小数点ベタ1−ルプロセツザの独立動作用
にR3−232インターフエースが、また疎結合および
リソース分担モードにお()るマスタプロセシングユニ
ットの外部周縁へのインターフェースのためにマルチパ
スインターフ1−スが、さらに密結合モードにおける動
作のためにマスクプロセシングユニットを汎用小スト五
1算様にインターフェースリベくユニバスが設けられて
いる。データメLりを例えば入力信号処理器および出力
ディスプレイグラフィックのようなアナグ1コ装置にイ
ンターフ−[−スするため補助110ボー1〜が設けら
れている。データメモリはスタティックRA M J′
3.J:び比較的低コストで広いバンド幅のインターリ
−1ダイナミックRAMを右゛リ−る。
し実施例1 以下添(=J図面を参照し゛CA発明を実施例につき説
明Jる。
第1図にa3 It”(,10は本発明による新規な浮
動少数点ベクトルブロセッ1]の機能的ブロック線図で
ある。このP7動小数点ベクトルプロセッサ10はンス
タブ[1セシングユニツト(MP(J)12を有し、こ
のユニツ1へは好ましくはモトローラMO68,000
チップである。そしてこのユニッ1〜12はデータメモ
リ(DM)14に接続されると共に、マスタブ[1ヒシ
ングユニツ1〜ツノドレスバス16J3よびマスタブ0
レシングユニツトデータバス′18を介してパイプライ
ン算術ユニット制御器(PAUC)20に接続されてい
る。データメモリ14は好ましくはスタティックRAM
#よび広い記憶バンド幅を有するダイナミックRA M
の少くとも一方である。データメモリアドレス(DMA
)バス22、データメモリ入力(DM I )バス24
、およびデータメモリ出ツノ(DMO)バス26は通常
の方法でデータメモリ14に接続され−(いる。マスク
プロセシングユニットアドレスバス16はデータメモリ
アドレスバス22およびパイプライン算術ユニット制御
器20に接続されている。マスクプロセシングユニツ1
〜データバス18はデータメモリ入力バス24、データ
メモリ出力バス26 iJ3 J:びパイプライン算術
ユニット制御器20に接続されている。MPU12、D
M14、PA(JC20およびPAl136に接続され
たクロック手段25は装置全体のタイミングを制御する
だめのクロック信号を形成する。
パイプライン算術ユニット制611器20は、A。
G、と名付けられたアドレス発生器28を右し、この発
生器28はデータメモリ171に各メしリリ。
イクル珀にアドレスをノブえるためにデータメモリアド
レスバス22に接続されている。アドレス発生器28は
p、c、s、と名付りられたバイプラー(ン制御シーケ
ンリ31に対し破線32で示されたJ:うに密に結合さ
れている。パイプライン制御シーケンザ31は各クロッ
クパルス(CLK)毎に指令バス34に指令を与える。
パイプライン算術ユニツ1−36はパイプライン制御シ
ーケン°リ−30の指令バス34、テ′−タメモリ出力
バス26およびデータメ[り入ツノバス24に接続され
る。後述り−るように、1メモリザイクルは2クロツク
パルスに等しいことが好ましい。
入力a3よび出力(110>は複数のインター71−ス
の1つにより装置10に与えられる。インターフ」、−
スは、データメモリ14、R3−232シリアルボート
38、ユニバスづなわら他の標準ホス1−インターフェ
ース42およびマルチパスインターフェース44に接続
された補助I10ポー1〜40を有彩る。R8−232
シリアルボート38はマスクプロセシングユニットのア
ドレスおよびデータバスに接続されており使用者が選択
できる19.2にボーまでの伝送率を提供号−る。ホス
トユニバスI10インターフェース42は通常のダイレ
クトメモリアドレス(DMA)おJ:びプログラム入力
出力(PIO)制御器48に通常の方法で接続される。
マルチパスインターフェース44はマスクプロセシング
ユニット12のアドレスバスおよびデータバスに接続さ
れている。アドレスバス16およびデータバス18に接
続されたメーEり制御器49は、マスクプロセシングユ
ニット12、データメモリ14、アドレス発生器28の
制御部、パイプライン制御シーケン4j31の制御部な
らびにマルチパス44およびユニバス42110インタ
ーフエースの選択された対の間でのデータ移動を行う装
置を提供する。補助I10ボート40は好ましくは組合
わせ得る2つの600M l−l zの双方向性16ビ
ツトデータチヤンネルであり、必要なとき1つの32ビ
ツトヂヤンネルを形成することができる。2つの16ビ
ツトチヤンネルもしくは組合わされた32ビツトヂ1/
ンネルはデータメモリ12と外部接続機器との間にバラ
フン何〕MΔアクセスを形成する。この外部接続様器と
は何れ・し図示されていないが信号処理用A/Dコンバ
ータ、グラフィックディスプレイ用の外部接続D/Δ二
Jンバータ他のプロセシングユニツ1〜との間でのデー
タ伝送用のデータモデム等をいう。、1ニバスインター
フエース42は現在量も普及している汎用ディジタル計
算機に対する完全なりMAおにびPIOアクレスを提供
する。そしてマルチパスインターフェース44は、何れ
も図示され−Cいないが磁気ディスク、磁気テープ、映
像ディスプレイ、他のプロセシングユニット、他のベク
]−ルブIII tツリおよび地域的ネットワークに接
続するのに適した5 00 K l−l zの双方向性
、直接データ、10グラムおよび制御のI10バスを提
供づる。
装置10は密結合モード、疎結合モードおよび不結合モ
ードの何れかでマルチモード動作を行える。密結合モー
ドでは、装置10はユニバス42によって図示され4【
いホスト51算機に結合されている。ポスト計算機内の
ソフトウェアが装置のデータ取得、パイプライン36内
の関数評価およびホスト計算機に書込む出ツノデータを
制御する。疎結合モードでは、装置10は補助ボート4
0またはマルチパスインターフェース44を経て直接D
MA  Iloから得られるデータを処理する。ユニバ
スインターフ1−スフ!12ににりまたはマルチパスイ
ンターフェース44によりラフ1〜ウエアが取込まれI
C後、装置10はMPU12内のソフトウェアにより動
作可能となり補助ポート40またはマルチパスインター
フェース44を介してDMAおよびPIOの少くども一
方から得られたデータを処理できる。不結合モードでは
、装置10自体が関数評価および内部のソフトウェアか
らのデータI10を行う。不結合モードでは、ソフトウ
ェアはR8−232シリアルライン38によりマスクプ
ロセシングユニット12のブ[1グラマプルメモリ中に
取込まれ、データは再び補助I10インターフェース4
0またはマルチパスインターフェース44に与えられる
独立(不結合)モード、疎結合士−ドまたは密結合U−
ドの何れかにおいて、マスクプロセシングユニット12
はDMAおよびPIO制御器48を動作ざぜて処理され
るべきデータを、選択された七−ドにしたがって補助I
10インターフェース40、ホスl−1/○インターフ
エース42またはマルヂバスI10インターフェース4
4の何れか1つからデータメモリ14に直接書込む。直
接メモリアドレスと共に、マスクプロセシングユニツ1
〜12はパイプライン算術制御器20を動作させ、マス
タプロセシングユニットアドレスバス16およびマスク
プロセシングユニットデータバス18を用いてアドレス
発生器指令をアドレス発生器RAMの特定アドレスに出
込む。MPU12は次いでマスタプロセシングユニット
アドレスバス16おJ:びデータバス18によりプログ
ラム制御シーク°ンザRAMにパイプライン制御シーケ
ンサマイクロ指令を書込み、且つアドレス発生器28お
よびパイプライン制御シーケンサ31用の始動アドレス
、おにびマスタプロセシングユニットアドレスバス16
およびマスクプロセシングユニットデータバス18を介
してアドレス発生中に用いるパラメータ値をアドレス発
生器レジスタに書込む。
上述の初期化シーケンサを行った後に、マスクプロセシ
ングユニット12はアドレス発生器28を動作開始させ
る。次いでこのアドレス発生器28はアドレス発生器始
動レジスタで指定された特定のアドレス発生器制御ルー
プ用のアドレスを始動させるようにジャンプし、指定さ
れたアドレス発生器制御アルゴリズムの実行を開始し、
各メモリサイクルのためにデータメモリアドレスバス2
2上にアドレスを生じる。このようなアドレスの各々に
よって指定されたデータ値の対はデータメモリ14から
データメモリ出力バス26上に出力される。アドレスさ
れデータメモリアドレスバス26上に出力されるに要す
る時間に適合覆るように選択された所定時間遅れの後に
、アドレスレジスタ28は、パイプライン制御シーケン
サ30を動作させ且つパイプライン算術ユニット36で
評価された特別の関数用のスターミルアドレスをパイプ
ライン制御シーケンサ30に与える制御信号を供給する
。これににリパイプライン制御シーケンザ30は指定さ
れたすタートアドレスにジャンプし、パイプライン紳術
ユニツ]・36を各クロックパルス毎に制御するために
バス34上に順次マイクロインストラクションを与える
ように動作する。
パイプライン制御シーケン1すおよびアドレス発生器は
同期マイクロインストラクションおよびデータ値を同0
.7に形成し、これらはパイプライン専術ユニット36
に与えられる。データはマイクロインストラクションに
よって制御可能なように形成されたパイプラインを介し
て取出される。選択された関数評価が完了した後、評価
された機能を表わすデータがデータメモリ入力バス24
を介してデータメモリ14中に書込まれる。この後同−
関数が新しいデータ上に繰返し評価される。仮に異った
関数評価が行われると、マスクプロセシングユニット1
2はアドレスレジスタ20を動作させ−Cそのスタート
アドレスをパイプライン制御シーケンサスタートアドレ
スレジスタ中に書込む。このスタートアドレスは評価さ
れるべき新たに選択された関数のイニシャルインストラ
クションの位置に対応するものである。こうして処理が
繰返される。
第2図において、50は本発明の全浮動小数点ベクトル
プロセッサのパイプライン算術ユニット制御器のブロッ
ク線図である。パイプライン算術ユニット制御器50は
破線ブロック52で表わされ、破線ブロック54によっ
て表わされたパイプライン制御シーケンサ(P、C,S
、’)に結合されたアドレス発生器(A、G、)を有す
る。アドレス発生器はマスクプロセシングユニット12
(第1図)からのアルゴリズムパラメータを受()取り
、且つパイプラインデータ出込みJ′3よび読取り用に
データメモリ58に同期メモリアドレスを与える。アド
レス発生器52(よ好ましくは多重2901ピッ1−一
スライスチップCある算術および論理ユニット56を有
する。このユニットはパイプラインに与えられるデータ
値の位置を指定するデータメモリ読取リアドレスを順次
供給すると共に、関数評価の後にパイプライン出力デー
タ値がui込まれるデータメモリ書込み位置を指定する
データメモリ書込みアドレスを順次供給する。算術おJ
:び論理、1ニツI〜56のレジスタは上記初期化シー
ケンス中MPUアドレスおよびデータバスを介してアド
レス発生中用いられるパラメータ値が入力される。
実1うのために算術および論理ユニット56には指令レ
ジスタおよびデコーダ60から指令が順次与えられる。
指令レジスタおよびデコーダ60はアドレス制御器64
の制御の下にアドレス発生器指令制御器v5RAM62
から入ノjが与えられる。
好ましくは2910デツプであるアドレス制御器64は
RAM62内に蓄積されたアドレス発生器制御ノフルゴ
リズムの指令のアドレスを順次発生する。上述のように
、制御器@lRAM62は初期化動作中マスクプロセシ
ングユニツ1−によって入力が行われ、それぞれが立上
りおJ、び終止ルーチンを右りる複数のアドレス発生器
制御ループ用の指令を、個々のアドレス位置に持つ。指
令レジスタおよびデコーダ60はアドレス制御器64へ
のフィードバックループに接続されている。アドレス制
御器64は与えられている指令を認識しRAM62にお
ける選択された制御ループ内の次の指令用のアドレスを
生じる。
動作において、アドレス発生器52はマスクプロセシン
グユニット12(第1図)によって動作し、アドレス位
置ゼロにジ17ンプする。このアドレス位置ゼロには実
行されるべぎ選択アルゴリズム制御ループ用のスタート
アドレスが初期化動作中にマスクプロセシングユニット
によって蓄積される。スタートアドレスレジスタ中に指
定されたアドレスに対応する指令がアドレス発生器制御
蓄積RAM62から読出され指令レジスタおよびデコー
ダ60に書込まれる。算術および論理ユニット56は指
令を実行しデータメモリ58にメモリアドレスを与える
。次いでアドレス制御器64は選択されたアルゴリズム
にJ:り且っ算術J3よび論理ユニット56から与えら
れるスディタス情報にしたがって次のシーケンスアドレ
スまたはジャンプアドレスにその泪算値を増し、アドレ
ス発生器制御器(i器62に算術おにび論理ユニット5
6によって実行されるべき選択されたアドレス発生器制
御ループの次の指令用のアドレスを送る。そして処理が
繰返される。書込みアドレスP I F066は、指令
レジスタおにびデコーダ60の制御の下に、パイプライ
ン算術および論理ユニツ1〜からのj゛−タ出力結果が
得られ且つデータメモリ58が古込みを受入れるにうな
時間までデータメモリ書込みアドレスを保持する。読出
しアドレス位置ヂ67は、指令レジスタおよびデコーダ
60の制御の下に、デーモノ七り読出しのためのデータ
メモリ読出しアドレスを保持する。
パイプライン制御シーケンサ゛54は、全てのレジスタ
アドレスおよびパイプライン算術および論理j −(−
ニラ1−の全ての有り得る構成のための論理関数制御マ
イクロコードを与える。パイプライン制御シーケンサ5
4は、アドレスレジスタ52の指令レジスタおにびデコ
ーダ60によって制御されるパイプライン制御シーケン
サスタートアドレスレジスタ68を有する。このパイプ
ライン制御シーケンサスタートアドレスレジスタ68は
パイプライン制御シーケンサアドレスカウンタ70に接
続され、このカウンタ70はパイプライン制御シーケン
サ制御蓄積RAM72に接続されている。
RAM72の出力はラッチ74に接続され、このラッチ
74は52ピット指令バスを介してパイプライン算術お
よび論理ユニツ[−76に接続されている。上述のよう
に、マスクプロセシングユニット12(1図)は初期化
動作期間中アドレス発生器レジスタ(図示せず)に複数
のパイプライン制御シーケンザ機能の1つ用のスタート
アドレスを書込み、パイプライン制御シーケン1ノ制御
蓄積RAM72の各アドレスできる位置にはパイプライ
ン算術および論理ユニット制御マイクロモードを書込む
。マイクロコードはRAM72メモリ位置のアドレスで
きるブロック中に蓄積される。このアドレスできるブ[
]ツクの各々は、高速フーリエ変換、71へりクス反転
、ベタ1ヘル乗算、マトリクス乗算および他の関数のよ
うな複数の割算強化機能の1つに相当する。初期化動作
期間中マスタブロヒシングユニット12(11図)はア
ドレス発生器52のレジスタ(図示じず)に後述するカ
ウンタ75と共に用いる囚込みデータFIFOパラメー
タを出込む。
アドレス発生器52が順次与えられたデータメモリ脱出
しアドレスの最初の1つを発生ずるのに充分な時間であ
り、且つデータメ−しりがデータメモリ出力バス上の対
応覆るデータ値を読取り得るように選ばれた予め設定さ
れた時間遅れの後、アドレス発生器52はパイプライン
制御シーケンサ54に上述のスター1〜可信号を与えパ
イプライン制御シーケン1ノ゛アドレスレジスタ68に
複数の使用者が選択できる関数の中の選択された1つ用
のスタートアドレスを入力する。特定のスタートアドレ
スに対応覆る指令はパイプライン制御シーケンリ゛蓄積
RAM72からマイクロコードラッチ74に出込まれ、
52ピッl−マイクロインストラクションバスを介して
パイプライン算術J3よび論理ユニット76に与えられ
る。アドレス発生器52はこのときカウンタ75にアル
ゴリズム指定データの入力も行い、パイプライン制御シ
ーケンスアドレスカウンタ70を動作さける。次いでこ
のパイプライン制御シーケンサアドレスカウンタ70は
制御蓄積RAM72にスタートアドレスを与える。この
スタートアドレスは、マイクロインストラクションラッ
チ74に書込まれ、特定クロックパルス用の読出しアド
レスに対応するアドレス発生器52の制御の下に、与え
られたデータ値との同期化評価のためにパイプライン算
術および論理ユニット76に52ビツト指令バスを介し
て与えられる。各クロックパルス毎にアドレス発生器5
2およびパイプライン制御シーケンサ54は、パイプラ
イン算術および論理ユニツ1へ76に次のデータメモリ
読出しアドレスを次のマイクロコード制御語と同期して
与える。この処理はパイプライン算術および論理ユニッ
ト76のデータ出力ボートでデータが得られるまで続く
出力データが得られるとき、このデータは上述のように
FIFO書込み指示カウンタ75が適当なアルゴリズム
個有のデータパラメータまでカラン1ヘダウンすること
と組合わされてそのときのマイクロ=1−ド指令にJ3
りるパイプライン制御シーケンリビットの作用によって
書込みデータFIF078に与えられる。出込みアドレ
スP I F066が少くど−し1つのアドレスを持ら
用込みデータF I I−078が2またはそれより多
いデータ出力伯を有り゛るとさ、出力データは店込みア
ドレスFIFO6(3によって指定されたアドレスを用
いてデータメモリ58に書込まれる。書込みアドレスF
 I FO66または書込み)“−タFIF078に1
つのクロックパル侃によって書込まれるデータは次のク
ロックパルスで読出される。占込みデータF I FO
78tよパイプライン算術おにび論理ユニッ1−76に
Jζつ−C発生した書込みデータを保持りるために用い
られるが、出込みデータはそれが発生しくいるとぎはク
ロックパルスでデータメモリ58に川込むことができな
い。でれはデータメモリ58が読取りに忙しいからであ
る。
アドレス発生器52の算術および論理ユニット56への
データ入力は3つのラッチ80.82゜84および1つ
のビット反転レジスタBREV85を介して与えられる
。ラッチ80.82および84はマイク[1指令ラツチ
74の与えられているマイクロ指令のビット群における
選択されたビットによって書込まれる。指令レジスタJ
3よびデコーダ60にj:って出力を生じるキレラクタ
87はラッチ80.82および84からのデータを選択
し組合わせるように動作する。ラッチ80,825よび
84ならびにBREV85は算術および論理ユニット5
6にヒストグラム作成に利用できる、アドレス発生によ
るデータメモリ出力値およびアドレス発生によるパイプ
ライン出力、繰返し関数評1llIiならびに他のデー
タによるデープル参照アドレス指定を実行できる。
第3図において、85は本発明の全浮動小数点ベクトル
プロセッサのインターリーブダイナミックRAMデータ
メモリのブロック線図である。データメモリ85は括弧
87で示された偶数および奇数の複数対のバンクに配さ
れ且つパイプライン算術d3よび論理ユニツ1−76に
逆列接続されて選択されたバンク対に対しデータを出込
みまたは選択されたバンク対からシコータを読出ずダイ
ナミックl’(A M 86を右する。アドレス発生器
52(第2図)によって発生された各アドレスに対して
、アドレスがクロック88によって指定されてil数1
だけ増して一方が偶数で他方が奇数である一対の隣合う
インターリーブダイナミックRA Mアドレスを形成り
−る。アドレス交換器およびデコーダ8つはインターリ
ーブダイブミックRA Mアドレスの対の連続する1つ
づつに応動してRAMアドレスを適当に交換し、奇数ア
ドレスがアドレス発/l器52(第2図)にJ:って指
定されていれば偶数出力バス上に偶数ダイナミックr<
 A Mアドレスを常に形成し、また交換器およびデコ
ーダ89の奇数アドレスバス上に奇数アドレスを形成り
る。
交換器J3J:びデコーダ89は中間ダイナミックRA
Mアドレスの絶対値に応動してバンク対87の対応する
1つを作動さUる。連続するメモリサイクルの各々の期
間中、選択された中間バンク対の奇数および偶数ダイナ
ミックRAMは、アドレス対に応動してアドレス発生器
からの各読出しアドレスにつきパイプライン算術J3よ
び論理ユニット76(第2図)に与えられる各クロック
パルスに対し2デ一タ語時間を形成し、且つアドレス発
生器からの各書込みアドレスにつぎパイプライン算術お
よび論理ユニット76(第2図)からの各クロックパル
スに対し2デ一タ値時間を受取る。
第4図において、90は本発明の全浮動小数点ベクトル
プロレッザのパイプライン算術および論理ユニツ1〜の
ブロック線図である。パイプライン算術ユニット90は
プログラム制御シーケンサマイクロ]−ドレジスタ92
に含まれるパイプライン制御シーケンザマイクロ指令の
制御【こより排列可能な多重関数パイプラインである。
上述のように、パイプライン制御シーケンンザ54(第
2図)は、パイプライン制御シーケン゛リーマイクロ]
−ドレジスタ92から右側を向いた矢印によって示され
るように、各クロックパルスiuに実行されるべき次の
マイク1」コード指令を形成り−る。各マイクロコード
指令は52ビット水平フA−マットピッ1〜列を形成刃
る特別なビットパターンである。データメモリ58(第
2図)からのデータはパイプライン制御シーケンサ54
から書込まれる各マイクロコ−ド指令と共にパイプライ
ン90に書込まれる。各クロックパルスに対して好まし
くは16六ノ 0a=1=秒毎に32ピッl−データ語がデータメ[り
から与えられる。
第5図に承りように、データメ−しりに蓄積されたデー
タ用に2つのフォーマツ1−があり、またパイプライン
算術および論理−1ニット90中に蓄積されるかあるい
はこの1ニツト90を通過するデータ用に2つの)l−
マツ1−がある。データメモリに蓄積されたデータ用の
固定されたすなわち整数フォーマットが第5A図のブロ
ック94によって示されている。最小重みデータビット
は右手「0」位置にあり、最大重みデータピッ1〜はピ
ッ1ル位置30にあり、ピッ1ル位置31は旬月を表わ
ず値である。データメーEりに蓄積されたデータ用の浮
動小数点フォーマットデータは第5B図のブロック96
によって示されている。データ値の仮数はビット位置0
から22までを占め、データ値の指数はピット位置23
から30までを占め、符号ビットはピット位置31を占
める。両フォーマット用の符号ビットは正のデータ値を
示覆ために2進rOJが与えられ、負のデータ値を示づ
ために2進「1」が与えられる。浮動小数点フォーマツ
1−において、指数は+128のバイアスを右づるオフ
セット2進値として定められ、ずなわら指数値+127
は2進表示1111 1111に相当し、指数値Oは2
進表示1000 0000に相当し、指数値−127は
2進伯oooo  o。
01に相当し、絶対Oは2進表示oooo  o。
OOに相当する。浮動小数点フォーマツ1〜の仮数部は
、仮数の範囲が0.5≦N<1.0の関係で規定される
(ただしNは仮数)。OEC浮動小数点フA−マットで
は仮数の最大重みビットは常に2進値「1」であるから
、データメモリ内には蓄積されない。最大重みビットの
次のピッ1−はNMSBど名付【ノられ重み2 ili
 !+4 (−2)である。仮数の範囲は0.9999
999/I乃至0.500oooooである。
パイプライン算術および論理ユニット90(第4図)内
部のデータ通路は確度を高めるため40ビット幅である
ことが好ましく、固定小数点および浮動小数点データフ
ォーマットに対応する2つのフォーマツi〜を有する。
第5C図の符@98で示1ように、固定小数点の32ビ
ツトデ一タ語すなわら整数のフォーマツ1−はO乃至3
1ピツト位置に置かれ、また2N4;1ξ(−1−31
)の指数は40ピツ[・パイプラインフォーマット場の
32乃至39ピツト位置に置かれる。第5D図の符号1
00で示づように、浮動小数点パイプラインデータフA
−マットに対してビット位置O乃至6が連続するOで埋
まり、ピッ[−位置7乃至29はデータ値の仮数部で埋
まり、ビット位置30はいわゆる隠しビットで埋まり、
ビット位置31は符号ビットであり、そしCビット位置
32乃至39はデータ値の指数部で埋まる。
第4図において、パイプライン算術および論理ユニット
90はMレジスタファイル102およびZレジスタファ
イル104を右する。データは、マイクロコード制御に
より整数)A−マットまたは浮動小数点フォーマットの
中の選択されたものに対し進行フォーマット変換を与え
る固定/浮動小数点コンバータ106を介してMレジス
タファイル102に与えられる。MおよびZレジスタフ
ァイル102および104は好ましくはそれぞれ40ビ
ツトの16アドレス可能な読出し/書込みレジスタを有
する。MおよびZレジスタファイル102 t3よび1
04はそれぞれ2つの入力ポートおよびrAJ、「B」
と名(qけられた2つの出力ボートを有する。そしてこ
れらレジスタファイル102 J3よび104は、各り
[1ツクパルスに応動して対応づる入力ボートを介しで
))jイルに2つの書込みを、また対応する出力ボート
を介し−でファイルに2つの読出しをアドレスされる位
置に対しまたはアドレスされる位置から行う。この位置
は各クロックパルス毎にパイプライン制御シーケンリー
54(第2図)を介してパイプライン制御シークンリマ
イクロ指令レジスタ92がら与えられるマイクロ指令に
よって指定される。好ましい実施例では、このようなマ
イク[1]−ドはそれぞれ52ピツト幅である1、ビッ
トOo乃至11はMFl、MF2およびMF3と名付け
られ、2つの読出しMノファイルアドレスおよび2つの
書込みMファイルアドレスで読出しアドレスの一方は書
込み用に指定されたアドレスである隣合う4ビット群を
指定1“る。ごット72乃至23はZll、ZF2、お
よびZF3と名付【プられ、2つの読出Zフi!イルア
ドレスおよび2つの書込み7ノ?イルアドレスでやはり
読出しアドレスの一方は書込み用に指定されたアドレス
である隣合う4ビット群を指定づ−る。
Mファイル102 J3よび2フアイル104は、2人
力、(「M」およびrLJと名(=Iけられた)2出力
の使用者が選択ぐさる固定/浮動小数点乗n器108、
ZファイルのrBJ出力ボートとMファイルの入力ポー
トの一方どの間を接続するフィードバック路1101お
よびMファイルのB出力ボートと7フアイル104の入
力ボートの一方との間を接続するマイクロコード制御ラ
ッチを有するフィードフォワード路112によって制御
できるように相互接続されている。丸め/切捨て制御1
14は乗算器108のM出力ボートと7フアイル104
の入力の一方との間に設りられる。固定/浮動乗算器1
08、フィードバック路110、フィードフォワード路
112および丸め/切捨て制′a114は、クロックパ
ルス毎にマイク【コ指令レジスタ92から与えられるパ
イプライン制御シーケンサマイクロコードの対応覆る予
め選択された制御ビットにより選択される。
乗算器108は整数フォーマツ[・にょる2つの補数演
算または浮動点フォーマツ1−にJ:る符号−大きさ演
算による32X32ピッ1〜乗算を行う固定または浮動
小数点f!弾器である。得られる積は、最大重みビット
32ピッ1−おにび最上重みビット32ピツトの64ビ
ツトである。パイプライン制御シーケンザマイクロコー
ド指令のビット列の予め定められた部分はZファイル1
04に書込む最小重みの32ビツトまたは最小重みの3
2ビツトを指定する。パイプライン制御シーケンスマイ
クロ:」−ド指令のビット列の予め定められた部分はま
たMファイル出力のデータ値の7フアイルの入カポ−1
へへの直接書込みを指定づる1、丸め/切捨て制御11
4はマイク[lコード制御の下に乗算器出力伯を通常の
方法で切捨て且つ標準的な「オア」ナノ どができる。隣合う160−#+秒クロックパルスが奇
数と偶数パルスに分けられる。パイプライン制御シーケ
ン4ノマイクロコードのMF1ビット列は偶数り[1ツ
クザイクルでMファイル102から¥A算算器10大 J]つ奇数または偶数クロツクリイクルでフィードバッ
ク路110を介してMファイル102にデータが与えら
れるアドレスを指定する。パイプライン制御シーケンザ
マイクロコードのM1=2ビット列は、奇数または偶数
クロツクリイクルでデータメモリからデータが書込まれ
るMファイルアドレスを指定する。パイプライン制御シ
ーケンザマイクロコードのMF3ビット列は、偶数クロ
ツクナイクルでデータが乗算器108人力に書込まれる
アドレスを指定すると共に、偶数または奇数クロックパ
ルスでフィードフォワード路112を介して乗算器10
8を側路してMファイルデータが読出されるアドレスを
指定する。
Zファイル104のrAJA力ボートは、パイプライン
算術ユニット出力データ値を書込みデータF I FO
,低値選択器118d5よび高値選択器120に信号を
与える丸め/切捨て制御116に接続されている。Zフ
ァイル104のrBJ出力ボートは符号ラッチ122、
高値選択器120および低値選択器118に接続されC
いる。符号ラッチ122はrWJおよびrXJと称する
2つの入力を持った固定または浮動小数点フォーマット
算術および論理ユニット124に接続されている。
ALUl 24への符号ラッチの接続中に「関数」と示
されたブロックによって示されるように、マイク上10
ード制御下の符号ラッチはALU24にデータ依存決定
能力を与える。高値選択器120はレジスタ126を介
して算術および論理ユニット124に接続され、また低
値選択器118は整列器/レジスタ段128を介して算
術および論理ユニツI− 1 2 4に接続されている
。算術ユニット124の出力は正規化器段130を介し
て7フアイル104の入ツノポートの1つに接続されて
いる。
丸め/切捨て制fil 1 1 6の出ツノはデータ書
込み1−1[07B<第2図)に接続され一Cいる。算
術d3J:び論理ユニット124は浮動小数点または整
数フAーマットデータ値を受入れるように構成された3
5ピツ1〜仝加輝器であることが好ましい。このユニッ
ト124は整数についての演算を符号付【ノされた2の
補数表示により行い、且つ仮数についての演口を符号(
=Jりされた大きさ表示で行う。
Z)jフィル104はMフ1イル102と同様に動作づ
る。パイプライン制御シーケン4ノマイクロ:J−ドレ
ジスタ92におりるマイク[1指令はり[1ツクリイク
ルiuに2つの7フアイル宙込みを伴う2つの7フアイ
ル読出しを指定づる。Mファイルのように、1つのアド
レスは読出し用であり、1つのアドレスは出込み用で.
あり、そして1つのアドレスは書込みを伴う読出し用で
ある。パイプライン制御シーケンサから与えられるマイ
ク[1指令のZF4ビットはZファイル104のrBJ
出力ボートから算術および論理ユニット124用のデー
タが読出されるアドレスを指定りるが、または偶数もし
くは奇数クロックサイクルでフィードバック路110を
介してMファイル102人カボートの1つに読出される
べきデータ値を指定する。
パイプライン制御シーケン勺から与えられるマイクロ指
令のZF5ビット列は偶数または奇数クロックザイクル
で正規化器130の出りが書込まれるアドレスを指定す
る。パイプライン制御シーケンサから与えられるマイク
ロ指令の2’F6ビツト列は算術および論理ユニット1
24がZファイル104のrAJA力ボートからデータ
値が与えられるアドレスを指定するか、または偶数また
は奇数クロツクリ−イクルで出力データ値が7ファイル
の「△」出力ボートからデータメモリ書込みFll:0
78(第2図)に読出されるアドレスを指定する。パイ
プライン制御シーケン1ノによって与えられるマイク1
]指令のピッ1−列のビットの予め選択されたものは固
定/浮動乗算器108、バイパスレジスタ112を介し
て与えられるデータ値または正規化器130の出力をZ
ファイル104に書込まれるべきデータ値として指定J
る。
特定のパイプライン配列のために、Zファイル104の
「A」出力ポー1〜データ値および「B」出力ボートデ
ータ値は各クロックパルスの発生毎に人いさによって比
較される。大ぎさの大きいものはマイクに1コード制御
により算術および論理ユニッl−124のW入力へ入力
Jるkめレジスタ126にラッチされる。大きさの小さ
いものもマイク[]」−ド制御にJ:り比較されたデー
タ値の2つの指数列の差の句だり桁下げされ、桁下げさ
れた結果は詩術および論理−」−ニット124のrX1
人カポ−1〜に入力するため整−別器およびレジスタ1
28の整夕!」器レジスタにラッチされる。ラッチ12
6および128における2つの整列値をラッチすること
はマイクロコード制御により行われ、算術および論理ユ
ニット124に対しこのユニツ+−124における2つ
のラッチされ且つ整列された値の和、差および他の算術
的または論理的演算を行わせる。この演算はZファイル
のデータ値を、フィードバック路11を介しUMファイ
ルに戻すかまたはデータ書込みFIFOに戻すように行
うもので、算術a3よび論理ユニットクロックリ゛イク
ルの損失を伴わない。パイプライン制御シーケンサ指令
レジスタのマイクロコード語のビット列におりる対応ビ
ットは、例えば整数値を算術および論理ユニット24に
与えるとぎ整列演算を禁止覆るようにも指定され得る。
パイプライン制御シーケンサマイクロ指令語の対応する
ビット列の制御に基づぎ正規化器段130は算術および
論理ユニット124のデータ出力を調べ先行するOがな
くなるまで結果を桁上げする。先行するOの数は指数か
ら差引かれる。仮に加算中に仮数のオーバーフローが起
きると、指数が増し仮数が桁上げされる。仮に得られた
指数が最大値を超えるかJ1容f+”A小値を下回ると
、指数おJ、び仮数はそれぞれ最大値または最小値に固
定され、A−へ−ノ【」−フラッグまたはアンダーフロ
ーノラッグがセラi〜される。仮に仮数がOであると、
指数は最小Wtにレッ1〜され、アンダー70−フラッ
グはレッ1−されない。例えば整数データフォーマツ1
−が7フアイルに戻ると、マイクロコード制御により正
規化演算は抑制される。
データ値がマイクロ指令配列パイプラインを介し【流れ
た後では、関数評価を表わすデータ出力値はZフj・イ
ル104から丸め/切捨て制御116を介してデータメ
しりに書込まれ、マイクロコード制御浦の対応する17
1〜列によって通常の方法で選択されると浮動小数点゛
ノA−マツ1〜はユニッ1〜116においC丸められる
かまたは切捨てられる。下表は、各クロックパルスの発
生毎にパーrブラインを配列り−るように用いられるパ
イプライン制御シーケンリーマイクロ指令のビット・列
の好ましいピッ1〜位置の一覧である。
ビット      機   能 0−3   MファイルBアドレス(第1)4−7  
MファイルBアドレス(第2)8−11  Mファイル
ヘアドレス 12−15 2フアイルBアドレス(第1)16−19
 2フアイルBアドレス(第2)20=23 2フアイ
ルへアドレス 24  データメモリ出ノjをMファイルに書込む。
25  データメモリの出力用固定/浮動フォーマツ1
〜がMファイルに書込 まれる。
26  8人重み部の積を選択。
27  固定小数点で乗算。
28.292フアイルに与えるべき側路、槓またはなし
の選択。
30  g+の丸め。
31  フィードバック動作。
32  整列値をラッチ。
33  整列動作。
3711   Bボート値の符号記憶。
35   A I−U演偉を制御づるため記憶した条イ
′1を使用。
36 38  ALU関数関数−1゜ 39 2の補数により行われるALU 演算。(固定小数点) /IO絶対値決定。
41  正規化動作。
/1.2   正規化器の出力を7フ71イルに書込む
43  浮動制御に固定。
44 7フアイルのrAJボートを F I FOに出込む。
45  固定小数点フォーマツ1〜でデータをFIFO
に書込む。
46  データFIFOに送られた浮動小数点仮数を丸
める。
47  ラッチ80およσ82を動作。
48  アドレスカウンタ両人力。
49.50  待機。
51  ラッチ84動作。
第6A図にJ3いて−1129は1024点高速フーリ
■変換(FFT)を実行するどきの本発明に係る全浮動
小数点ペタ1〜ルブロセツナの動作を示づダイアグラム
である。このダイアグラムの−に部には垂直の76個の
目盛マークが示されている。
この目盛の隣合う同士は偶数および奇数り[1ツクパル
スに相当する。図の左側にある最初の偶数クロックパル
スにおい−(,14クロツクパルスに跨るブロック13
4は、データメモリからMファイルレジスタ102(第
4図)へのデータの取込みのためのアドレス発生器52
(第2図)によるアドレスの発生を示し−Cいる。4つ
のり[コツクサイクルの後、やはり14り[1ツクサイ
クルに跨るブロック136は対応するアドレスにょっ−
(指定されたデータ値のMファイルレジスタ102への
取込みを示している。ブロック138は書込みアドレス
を書込みアドレスFIFO66(第2図)に取込むため
のアドレス発生器の動作を示し−Cおり、この場合位置
出力データ値はパイプラインにおける1024点FFT
評価の間に8込まれる。ブロック140は、Mファイル
102から選択的に書込まれたデータに12の乗算を行
う乗算器108(第4図)の動作を示しており、各乗算
は上述の2り[1ツクサイクルを要し合計では図示のよ
うに24クロツクパルスとなる。パイプライン法は、デ
ータ読出しアドレス発生の完了前の時点におりる乗粋器
動作の開始を可能にし、装置動作、データ伝送J3よび
関数評価を速める。
ブロック142は、乗算器出力が乗vi器108(第4
図)から7フアイル104(第4図)にやはり24クロ
ツクパルスぐ時間用なり方式で伝送されることを示して
いる。ブロック144は時間用なり方式にJ:す22ク
ロツクパルスでのALU124(第4図)の動作を示し
ている。△LUは、乗算器出力を7フアイルに蓄積じて
がら4クロツクパルス後で合計で22回の加減算を「(
1始り−る。
そしてこの結果はブロック146によって示すように2
クロツクパルス後に7フアイル1o4(第4図)に送り
蓄fjする3、一連のデータベクトルの関数評価が完了
した後、パイプライン出力データ値がブロック150で
示されるように書込みデータFIFO78(第2図)に
書込まれ、ブロック152で示すように8つの書込みが
古込みアドレスFIFO66(第2図)アドレスを用い
てDM58(第2図)に書込まれる。第6B図は、10
24点FFT用の連続パイプライン動作が1塊のブ[1
ツク154ににって示された100%乗算器利用のため
に一連のデータベタ1ヘルに対してどのように重なって
いるかを示す合成ダイアグラムであり、加算器およびデ
ータメモリは24リイクル中の22すなわち91.7%
使用されている。第6B図はまた装置の仕8聞の高速化
を示し−Cおり、一連のデータベクトルに対してパイプ
ライン中で1024点FFTの評価が完了づ−62つの
垂直破線間の間隔が第6A図の76リーイクルがら24
リイクルになった。例えば、1024点の複雑な[:F
T評価は4.7ミリ秒を要する。
本発明の思想の範囲内で当業者にとり本発明の全浮動点
ムク1ヘルプロセツリの多くの変形例が自明になったで
あろう。
【図面の簡単な説明】
第1図は本発明の全浮動小数点へりトルブロセツリ−の
機能的ブロック線図、第2図は本発明の全浮動小数点ム
ク1〜ルブロセツυ−のパイプライン算術ユニット制御
器の10ツク線図、第3図は本発明の全浮動小数点ベク
トルプロセッサのインターリーブダイナミックRAMデ
ータメモリのブロック線図、第4図は本発明の全浮動小
数点ベクトルプロセッサのパイプライン算術および論理
ユニツI〜のブロック線図、第5Δ図は本発明の全浮動
小数点ベクトルブロセッサのデータフォーマットの一例
を示η図、第5B図は同じく伯の例を示す図、第5C図
(J本発明の全浮動小数点ベタ1〜ルブロセツリのパイ
プライン算術おにび論理ユニットの)A−マットの1例
を示1図、第5D図【よ同じく他の例を示づ図、第6A
図は本発明による1024点F F Tを行うときの全
浮動小数点ベクトルプロレッザの利用を示づ図、第6B
図は同じく他の例を示ず図である。 12・・・マスクプロセシングユニット(MPU)14
・・・データメモリ 16・・・アドレスバス18・・
・データバス 20・・・パイプライン算術ユニット制御器28・・・
アドレス発生器 36・・・パイプライン算術ユニット /40・・・補助I10ボート 49・・・メモリ制御器 50・・・パイプライン算術ユニット制御器56・・・
算術および論理ユニツ1へ 60・・・指令レジスタおよびデコーダ64・・・アド
レス制御器 66・・・書込みアドレスFIFO 68・・・スタートアドレスレジスタ 72・・・RAM 74.80,82.84・・・ラッチ 78・・・書込みデータFIFO 86・・・ダイナミックRAM 102・・・Mフッイル  104・・・Zファイル1
06・・・固定/浮動小数点コンバータ118・・・低
値選択器  120・・・高値選択器130・・・正規
化器 代  理  人     秋  元   輝  棋((
よか1名) 第1頁の続き 0発 明 者 ラルフ・ジョーンズ アメリカ合衆国02154マサチユ ーセツツ州ウオルサム・リバー ビュー・アベニュー103 特開昭59−226971θ9)

Claims (1)

  1. 【特許請求の範囲】 (1)マスタプロセシングユニットと、このマスクプロ
    セシングユニットに結合され複数のアドレス可能なメモ
    リ位置を与えるための入力および出力バスを有する第1
    の手段と、前記アドレス可能なメモリ位置におい′C評
    価されるべきデータをロードするため前記第1の手段お
    よび前記マスクプロセシングユニットに結合された第2
    の手段と、前記第1の手段および前記マスクプロセシン
    グユニットに結合され複数の時間系列メモリ読出しおよ
    び書込みアドレスを与えるためおよび選択的に遅れた制
    御信号を与えるため前記マスクプロセシングユニツ1−
    と同時に動作する第3の手段と、前記第1の手段、前記
    第3の手段および前記マスクプロセシングユニットに結
    合され前記複数の時間系列メモリ読出しおよび如込みア
    ドレスの対応するものと時間同期して複数の時間系列マ
    イクロインストラクションを形成するため前記遅れ制御
    信号に応動して前記マスクプロセシングユニットおよび
    前記第3の手段と同時に動作する第4の手段と、前記第
    1の手段、前記第4の手段と結合され前記同期的に与え
    られたマイクロ指令によって前記出力バスにおける前記
    データの予め選択された複数の計算予定関数の1つを評
    価するためおよび前記複数の計算予定関数の前記選択さ
    れたものの前記評価を表わすデータ値を前記入力バスに
    与えるため前記出力バスの前記時間系列データおよび前
    記同期的に与えられたマイクロ指令に応動して前記マス
    クプロセシングユニット、前記第3の手段および前記第
    4の手段と協働する第5の手段とをそなえ、前記第1の
    手段は前記複数の時間系列メモリ読出しアドレスの各々
    に応動して前記出力バスにおける前記メモリ読出しアド
    レスの各々にロードされた対応するデータを形成し、メ
    モリ書込みアドレスの各々に応動して前記メモリ書込み
    アドレスへの前記入力バスに対応するデータをロードす
    るようにした全浮動小数点ベクトルブロヒッザ。 (2、特許請求の範囲第1項記載のプロセッサにおいて
    、前記マスタプロセシングユニットは68000スーパ
    ーマイクロプロレツリーのチップである全浮動小数点ベ
    クトルプロセッサ。 (3)特許請求の範囲第1項記載のプロセッサーにJ3
    いて、前記第1の手段はスタティックRAMを右りる全
    浮動小数点ベクトルブロヒッザ。 (4)特、〆[請求の範囲第1項記載のプロセッサにJ
    3い−C1前記第1の手段はインターリーブダイツーミ
    ックRAMを右する全浮動小数点ベクトルブ1]L7 
     ツ リー 。 (5う特許請求の範囲gr!4項記載のプロセッサにお
    いて、前記ダイナミックRAMは前記時間系列メモリ読
    出しアドレスの各々に応じて2語を形成し且つ前記時間
    系列メモリ書込みアドレスの各々に応動して2値を受取
    る偶数および奇数バンク対に組込まれた全浮’II+小
    数点ベクl−ルブロセッザ。 (6)特許請求の範囲の第1項記載のプl」セツリ−に
    J3い゛’C,Orj記第2の手段はホストインターフ
    ェースに接続されたダイレクトメモリアクセス制御器を
    有する全浮動小数点ベクトルプロセッサ。 (7)特許請求の範囲第1項記載のプロセッサにおいて
    、前記第2の手段は前記マスクプロセシングユニットに
    接続されたR8−232インターフエースを有する仝浮
    動小数点ベク1〜ルブロレッサ。 (8)特許請求の範囲第1項記載のプロセッサにおいて
    、前記第2の手段は前記マスクプロセシングユニットに
    接続されたユニバスインターフェースを有する全浮動小
    数点ベクトルプロセッサ。 (9)特許請求の範囲第1記載のプロセッサにおいて、
    前記第2の手段は前記マスクプロセシングユニットに接
    続されたマルチパスを右する全浮動小数点ベクトルプロ
    セッサ。 (10)特許請求の範囲第1項記載のプロセッサにd3
    いて、前記第1の手段に接続された少くとも2つのI1
    0ポートを有する全浮動小数点ベクトルプロセッサ。 (11)特許請求の範囲第1項記載のプロセッサにおい
    て、前記第3の手段は、前記マスクプロセシングユニツ
    1〜によってアドレス発生制御ループが」−ドされる制
    御蓄積F< A Mを持ったアドレス発生器、前記マス
    クプロセシングユニツ[へによって前記アドレス発生制
    御ループの選択された1つ°に対応するスター1へアド
    レスがロードされるスター1〜レジスタ、前記アドレス
    発生器制御蓄積RAMに接続され+3Q記選択されたア
    ドレス発生器制御ルーツに応動して前記枚数の[li’
    +間系列データメモリ読出1)J5よび占込みアドレス
    を形成するアドレス発生器算術おJ、び論理ユニットを
    有づる全浮動小数貞ベクi・ルプロレッザ。 (12)特ii’f請求の範囲第11 JJj記載のプ
    ロセッサ゛において、前記アドレス発生器算術および論
    理ユニツ1−と前記第1の手段との間に接続された泪込
    みアドレスFIFOを有する全浮動小数点ベタ1−ルブ
    ロレツリ。 (13)特許請求の範囲第11項記載のプロセッサにお
    いて、前記入力バスと前記第5の手段との間に接続され
    た書込みデータFIFOを有する全浮動小数点ベクトル
    プロセッサ。 (14)特許請求の範囲第11項記載のプロセッサにお
    いて、前記第4の手段は、前記マスタプロセシングユニ
    ットによってそれぞれが評価されるべき前記複数の計算
    予定関数の1つに対応するパイプラインルリ御シーケン
    ザマイクロ指令がコニドされるパイプライン制御シーケ
    ンサを有し、前記パイプライン制御シーケンサは前記ア
    ドレス発生器によって前記複数の係数予定関数の選択さ
    れた1つのスタートアドレスがロードされる前記パイプ
    ライン制御シーケンサを右づ−る全浮動小数点ベクトル
    プロセッサ。 (15)特許請求の範囲第1項記載のブIll tツリ
    において、前記第5の手段は、フィートフAワードおよ
    びフィードバック路ににってンイクロ指令制御に基づき
    選択的に相互接続されるMレジスタファイルおよびZレ
    ジスタファイルを有する動的構成し得る多重関数パイプ
    ライン算術d′3J:び論F1!ユニツ1〜を有し、前
    記MレジスタファイルおよびZレジスタフッフィルの各
    々は2人カポ−h 85よび2出カポ−1〜を有づる4
    ボート素子であり前記複数のマイクロ指令の各々に応動
    して2つの書込みJ3よび2つの読出しを行う全浮動小
    数点ムク1〜ルブ l二1 L? ッ () 。 (16)特許請求の範囲第15項記載のベクトルプロセ
    ッサーにおいて、前記動的に構成し得る多重関数パイプ
    ライン算術および論理ユニットは算術および論理ユニッ
    トならびに旬月ビットラッチを右し、この符号ピッl−
    ラッチは前記Zファイルと前記算術J3よび論理ユニツ
    l−の間に接続され前記マイクロ指令に応動し−(前記
    算術および論理ユニッ1へにデータ依存決定作成能力を
    与える全浮動小数点ベタ1〜ルブロセツ]ノ。 (17)一連の分離したクロック信号を形成するり1ツ
    ク手段と、評価されるべきデータベクトルを蓄積するた
    めおよび評価後のデータ値を蓄積するためのデータメモ
    リと、このデータメモリおよび11Q記クロツクに結合
    されたマスクプロセシングユニットと、前記マスタブL
    II?シングユニツトに接続され口つ前記データメ七り
    に結合され前記データメモリに評価されるべき前記デー
    タベクトルをコードし評価後に前記データ値をオフコー
    ドするインターフェースと、前記データメモリおよび前
    記マスプロセシングユニットに結合され前記クロックに
    応動して各クロック信号の発生毎にデータメモリ読出し
    アドレスを与えるアドレス発生器と、前記マスクプロセ
    シングユニットに接続され且つ前記アドレス発生器に結
    合され−C前記クロックおよび前記アドレス発生器に応
    動してクロック信号の発生毎に前記複数のデータメモリ
    書込みアドレスの対応するものと共に自由にプログラム
    できる水平フォーマツ1−ビット列を有ザるマイクロ指
    令を形成するパイプライン制御シーケンサと、1fff
    記パイプライン制御シーケンリ゛および前記データメモ
    リに結合され前記マイクロ指令および前記クロック信号
    の各々に応動して前記複数のデータメモリ読出しアドレ
    スににって指定されるデータに複数の計算予定関数の選
    択されたものを評価するパイプライン算術および論1!
    ll!、L1.ニットとをそなえたベクトルプロセッサ
    。 (18)特許請求の範囲第17項記載のベクトルプロヒ
    ラ!尤において、前記アドレス発生器と前記パイプライ
    ン0術および論理ユニットの入力との間に接続された出
    込みアドレスFIFOを右するベタ1〜ルプロセツサ。 (19)特許請求の範囲第17項記載のプロセラVに(
    13いて、前記アドレス発生器は書込みデータアドレス
    を発1するものであり、前記パイプライン算術および論
    理ユニットの出力と前記データメモリとの間に接続され
    た書込みデータI:I F Oをさらにそなえるベクト
    ルプロレッリ”、。 (2、特許請求の範囲第18項記載のプロセラ1〕にa
    3いC1前記書込みアドレスFIFOは前記パイプライ
    ン制御シーケンサに結合され前記全プに1グラム句能な
    水平ノA−マツ1〜マイクロ指令の予め選択されたビッ
    ト列によって制御されるベクトルプロセッサ。 (2、特許請求の範囲第19項記載のプロセラIすにJ
    3いて、前記書込みデータFIFOは前記パイプライン
    制御シータ−ンザに結合され前記全プロダラム可能な水
    平フォーマットマイクロ指令の予め選択されたビット列
    によって制御されるベクトルプロセッサ。 (2、特許請求の範囲第17項記載のプロレッサにおい
    て、前記パイプライン算術J3よび論理ユニットは前記
    パイプライン制御シーケンサ−に結合されたMファイル
    レジスタおよびZファイルレジスタを有し、これらレジ
    スタは2人力a3よび211力を有し、前記水平フォー
    マツ1〜全プログラム可能マイクロ指令の予め選択され
    たビット列に応動して各り〔1ツクパルスの発生毎に2
    つの読出しおよび2つの書込みを行うベクトルプロレッ
    リ。 (2、特許請求の範囲第22項記載のプロセッサにおい
    て、前記パイプライン算術および論理ユニッ1へは符号
    ラッチを介して前記7フアイルに接続された篩術および
    論理ユニットを有し、前記符号ラッチは前記全プログラ
    ム可能水平〕A−マツ1〜マイクロ指令の予め選択され
    たビット列にJ:り動作して前記算術J3よび論理コー
    ニットにデータ依存決定作成を行う符号情報を与えるベ
    クトルプロセッサ。 (2、特許請求の範囲第17項記載のプロセッサにおい
    て、前記アドレス発生器は算術および論理ユニットを右
    し、且゛つ更に前記データメモリと前記アドレス発生器
    算術おにび論理ユニットの間に接続され前記タブ[]グ
    ラム可能な水平フォーマツ1〜マイク[]指令の予め選
    択されたピッ1−列によっl動しデータメ−しり出力依
    存アドレス発生を行うベクトルブ]]レッサ。 (2、特許請求の範囲第17項記載のプロレツリ”にお
    いて、前記アドレス発生器はアドレス発生器算術−3よ
    び論理ユニットを右し、且つ更に前記パイプライン算術
    および論理ユニットと前記アドレス発生器C)術および
    論理ユニットの間に接続され、前記全プログラム可能な
    水平フォーマットマイクロ指令の予め選択されたビット
    列によって作動しパイプライン出力依存ツノドレス発生
    を行うムク1〜ルブロレツIす。 (2、特許請求の範囲第17項記載のベクトルブロレッ
    1すにおいて、前記パイプライン算術および論理ユニッ
    トと前記データメモリどの間に接続された書込みアドレ
    スFIFOと、前記アドレス発生器と前記書込みアドレ
    スFIFOとの間に接続されたカウンタとを有し、前記
    書込みアドレスFIFOは前記全プログラム可能な水平
    フォーマットマイクロ指令の予め選択されたビット列に
    よって作動し前記カウンタは予め定められた値までカウ
    ントダウンするベクトルプロセッサ。 (2、特許請求の範囲第17項記載のベクトルプロセッ
    サにおいで、前記インターフェースはユニバスインター
    フェースであるベクトルプロセラ1す 。 (2、特許請求の範囲第17項記載のプロセッサにおい
    て、前記インターフ1−スはマルチパスインターフェー
    スであるベクトルプロセッサ。 (2、特許請求の範囲第17項記載のプロセッサにおい
    て、前記インターフェースはR8−232シリアルライ
    ンであるベクトルプロセッサ。 (30)特許請求の範囲第17項記載のプロセッサにお
    いて、前記データメモリに接続された少くとも2つの補
    助110ボートを有するベクトルブ[1セツリ。 (31)特許請求の範囲第17項記載のプロセッサにお
    いて、前記データメモリは偶数および奇数バンク対と並
    列に接続され前記アドレス発生器によって指定された各
    アドレスに応動して2つのデータ語を直列に与えるダイ
    ナミックRAMを右するベクトルプロセッサ。 (32)タロツクパルスを形成′す゛るクロック手段と
    、このクロック手段に結合されたンスタプロセシングユ
    ニツ1−と、前記クロック手段おJ:び前記マスタブI
    I tシングユニットに結合されたデーモス七りど、前
    記りl」ツク手段および前記マスタブ[1セシングユニ
    ツ1−に接続され前記データメモリに対りるおよび該デ
    ータメモリからのデータをコードするためダイレクトメ
    モリアクレスを行う手段と、前記マスタロヒシングユニ
    ットに並列接続され11つ前記クロック手段および前記
    データメモリに結合されて各クロックパルスの発生毎に
    データメモリ書込みJ3よび読出しアドレスを形成する
    第1ブロセツザと、前記マスクプロセシングユニツ1−
    および前記第1プロレツサに並列接続されて前記クロッ
    ク手段に結合され前記第1プロレツサに応動して前記デ
    ータメモリ書込みアドレスの各々と同期してクロックパ
    ルスの発生毎に水平)A−マツ1−マイクロ指令を与え
    るv82プロしッVと、前記データメモリおよび前記第
    2ブロセツリ゛に接続され且つ前記クロック手段に結合
    されて各りDツクパルス毎に前記デーモス七り書込みア
    ドレスと前記マイクロ指令とによって指定されるデータ
    値に応動して前記データの計算予定関数を評価する制御
    可能に構成し得るパイプライン算術および論理ユニット
    とをそなえたベク]−ルプ[11セッサ。 (33)特許請求の範囲第32項記載のブロレッυにお
    いて、前記バイブライン環術J3よび論理ユニッ1〜は
    マイクロ指令制御に幇づくフィード7Aワードおよびフ
    ィードバック路ににり選択的に相互接続され得る第2レ
    ジスタおよび第2レジスタを有し各クロックパルス毎に
    レジスタファイル中に2つの書込みおよびレジスタフ7
    Iイルから2っの読出しを行うベクトルプロセッサ。 (34)特許請求の範囲第33項記載のプロセラ9にお
    いて、前記レジスタファイルの各々Iユ2つの入力ポー
    1−オよび2つの出力ポートを有し、前記回込みの一方
    は読出し川に指定されたアドレスであるベタ1〜ルプロ
    セツサ。 (35)特許請求の範囲第34項記載のプロセッサにお
    いて、前記第ルジスタファイルの前記出力ポートは、第
    2レジスタフアイルの入力ポートの一方に接続された2
    つの出力ポートを有する2入力ポート乗算器の入力ポー
    トに接続されたベクトルブ(コレラυ−0 (36)特許請求の範囲第35項記載のプロセッサにお
    いて、前記第2レジスタフアイルの出カポ−1−は、こ
    の第2レジスタフアイルの入力ポートの一方に接続され
    ている1つの出力ポートを有する2人カポ−1〜算術お
    よび論理ユニットの2つの入力ポートに接続されている
    ベクトルプロセッサ。 (37)特許請求の範[111第36項記載のプロセッ
    サにJ5いて、前記レジスタファイルの出力ポートの一
    方と前記算術および論理ユニットの間に接続されてマイ
    クロ指令制御の下に動作して前記算術および論理ユニッ
    トにデータ依存決定作成能力を与えるベクトルプロセッ
    サ。 (38)特許請求の範囲第37項記載のプロセッサにお
    いて、前記パイプライン算術および論理ユニットは、前
    記データメモリと前記第ルジスタファイルとの間に接続
    されマイクロ指令制御により固定および浮動フA−マツ
    ]−変換の一方を行う手段を有するベクトルプロセッサ
JP59108259A 1983-05-27 1984-05-28 全浮動小数点ベクトルプロセツサ Granted JPS59226971A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US498877 1983-05-27
US06/498,877 US4589067A (en) 1983-05-27 1983-05-27 Full floating point vector processor with dynamically configurable multifunction pipelined ALU

Publications (2)

Publication Number Publication Date
JPS59226971A true JPS59226971A (ja) 1984-12-20
JPH0418345B2 JPH0418345B2 (ja) 1992-03-27

Family

ID=23982870

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59108259A Granted JPS59226971A (ja) 1983-05-27 1984-05-28 全浮動小数点ベクトルプロセツサ

Country Status (5)

Country Link
US (1) US4589067A (ja)
EP (1) EP0127508B1 (ja)
JP (1) JPS59226971A (ja)
DE (1) DE3483795D1 (ja)
IL (1) IL71720A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003501775A (ja) * 1999-06-15 2003-01-14 ヒューレット・パッカード・カンパニー プロセッサおよびコプロセッサを含むコンピュータ・アーキテクチャ
JP2009527813A (ja) * 2006-02-16 2009-07-30 ブイエヌエス ポートフォリオ リミテッド ライアビリティ カンパニー 非同期電力節約コンピュータ

Families Citing this family (84)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59160267A (ja) * 1983-03-02 1984-09-10 Hitachi Ltd ベクトル処理装置
US4814977A (en) * 1983-10-18 1989-03-21 S&C Electric Company Apparatus and method for direct memory to peripheral and peripheral to memory data transfers
JPH0650512B2 (ja) * 1984-07-11 1994-06-29 日本電気株式会社 デ−タ処理装置
JPS6125245A (ja) * 1984-07-12 1986-02-04 Nec Corp 丸め処理回路
DE3577242D1 (de) * 1984-08-14 1990-05-23 Trt Telecom Radio Electr Prozessor zur verarbeitung von daten verschiedener darstellungsarten und geeignetes multipliziergeraet fuer einen solchen prozessor.
US4773035A (en) * 1984-10-19 1988-09-20 Amdahl Corporation Pipelined data processing system utilizing ideal floating point execution condition detection
US4736335A (en) * 1984-11-13 1988-04-05 Zoran Corporation Multiplier-accumulator circuit using latched sums and carries
US4829424A (en) * 1985-06-28 1989-05-09 Hewlett-Packard Company Maximal length immediates with fixed sign position
JPS6297036A (ja) * 1985-07-31 1987-05-06 テキサス インスツルメンツ インコ−ポレイテツド 計算機システム
US4779218A (en) * 1985-09-04 1988-10-18 Jauch Jeremy P Complex arithmetic unit
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
JPS62120574A (ja) * 1985-11-20 1987-06-01 Fujitsu Ltd ベクトル処理装置
US5036453A (en) * 1985-12-12 1991-07-30 Texas Instruments Incorporated Master/slave sequencing processor
US4763294A (en) * 1985-12-19 1988-08-09 Wang Laboratories, Inc. Method and apparatus for floating point operations
US4974198A (en) * 1986-07-16 1990-11-27 Nec Corporation Vector processing system utilizing firm ware control to prevent delays during processing operations
US4987534A (en) * 1986-08-20 1991-01-22 Nec Corporation Processor having synchronized operation between a CPU and a vector processor
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
US6108763A (en) * 1986-09-18 2000-08-22 Grondalski; Robert S. Simultaneous parity generating/reading circuit for massively parallel processing systems
US5230079A (en) * 1986-09-18 1993-07-20 Digital Equipment Corporation Massively parallel array processing system with processors selectively accessing memory module locations using address in microword or in address register
US5146606A (en) * 1986-09-18 1992-09-08 Digital Equipment Corporation Systems for interconnecting and configuring plurality of memory elements by control of mode signals
US4809162A (en) * 1986-10-31 1989-02-28 Amdahl Corporation Saving registers in data processing apparatus
US4800516A (en) * 1986-10-31 1989-01-24 Amdahl Corporation High speed floating-point unit
US4811214A (en) * 1986-11-14 1989-03-07 Princeton University Multinode reconfigurable pipeline computer
US5109523A (en) * 1987-01-23 1992-04-28 Hitachi, Ltd. Method for determining whether data signals of a first set are related to data signal of a second set
US4858113A (en) * 1987-04-10 1989-08-15 The United States Of America As Represented By The Director Of The National Security Agency Reconfigurable pipelined processor
JPS63259727A (ja) * 1987-04-17 1988-10-26 Hitachi Ltd コプロセツサのインタ−フエイス方式
JPH0719204B2 (ja) * 1987-09-17 1995-03-06 筑波大学長 浮動小数点演算方式
US4841467A (en) * 1987-10-05 1989-06-20 General Electric Company Architecture to implement floating point multiply/accumulate operations
US5179705A (en) * 1988-03-23 1993-01-12 Dupont Pixel Systems, Ltd. Asynchronous arbiter state machine for arbitrating between operating devices requesting access to a shared resource
US5212780A (en) * 1988-05-09 1993-05-18 Microchip Technology Incorporated System for single cycle transfer of unmodified data to a next sequentially higher address in a semiconductor memory
US5068819A (en) * 1988-06-23 1991-11-26 International Business Machines Corporation Floating point apparatus with concurrent input/output operations
US5003471A (en) * 1988-09-01 1991-03-26 Gibson Glenn A Windowed programmable data transferring apparatus which uses a selective number of address offset registers and synchronizes memory access to buffer
US4996661A (en) * 1988-10-05 1991-02-26 United Technologies Corporation Single chip complex floating point numeric processor
US5150469A (en) * 1988-12-12 1992-09-22 Digital Equipment Corporation System and method for processor pipeline control by selective signal deassertion
JPH0810428B2 (ja) * 1988-12-26 1996-01-31 三菱電機株式会社 データ処理装置
US5062041A (en) * 1988-12-29 1991-10-29 Wang Laboratories, Inc. Processor/coprocessor interface apparatus including microinstruction clock synchronization
US5212662A (en) * 1989-01-13 1993-05-18 International Business Machines Corporation Floating point arithmetic two cycle data flow
US4969118A (en) * 1989-01-13 1990-11-06 International Business Machines Corporation Floating point unit for calculating A=XY+Z having simultaneous multiply and add
US4961162A (en) * 1989-01-13 1990-10-02 International Business Machines Corporation Multiprocessing system for performing floating point arithmetic operations
US4999802A (en) * 1989-01-13 1991-03-12 International Business Machines Corporation Floating point arithmetic two cycle data flow
US5125083A (en) * 1989-02-03 1992-06-23 Digital Equipment Corporation Method and apparatus for resolving a variable number of potential memory access conflicts in a pipelined computer system
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
US5263169A (en) * 1989-11-03 1993-11-16 Zoran Corporation Bus arbitration and resource management for concurrent vector signal processor architecture
US5179530A (en) * 1989-11-03 1993-01-12 Zoran Corporation Architecture for integrated concurrent vector signal processor
US5315708A (en) * 1990-02-28 1994-05-24 Micro Technology, Inc. Method and apparatus for transferring data through a staging memory
US5053631A (en) * 1990-04-02 1991-10-01 Advanced Micro Devices, Inc. Pipelined floating point processing unit
JPH0480867A (ja) * 1990-07-23 1992-03-13 Mitsubishi Electric Corp 演算回路
US5261063A (en) * 1990-12-07 1993-11-09 Ibm Corp. Pipeline apparatus having pipeline mode eecuting instructions from plural programs and parallel mode executing instructions from one of the plural programs
EP0513519A1 (en) * 1991-05-15 1992-11-19 International Business Machines Corporation Memory system for multiprocessor systems
CA2074769C (en) * 1991-08-09 2001-03-20 International Business Machines Corporation Formula processor
US5408426A (en) * 1992-03-17 1995-04-18 Hitachi, Ltd. Arithmetic unit capable of performing concurrent operations for high speed operation
US7174352B2 (en) 1993-06-03 2007-02-06 Network Appliance, Inc. File system image transfer
US6604118B2 (en) 1998-07-31 2003-08-05 Network Appliance, Inc. File system image transfer
US6009508A (en) * 1994-06-21 1999-12-28 Sgs-Thomson Microelectronics Limited System and method for addressing plurality of data values with a single address in a multi-value store on FIFO basis
US5619198A (en) * 1994-12-29 1997-04-08 Tektronix, Inc. Number format conversion apparatus for signal processing
US5844830A (en) * 1996-08-07 1998-12-01 Sun Microsystems, Inc. Executing computer instrucrions by circuits having different latencies
TW340262B (en) * 1996-08-13 1998-09-11 Fujitsu Ltd Semiconductor device, system consisting of semiconductor devices and digital delay circuit
US5805875A (en) * 1996-09-13 1998-09-08 International Computer Science Institute Vector processing system with multi-operation, run-time configurable pipelines
US5963460A (en) * 1996-12-17 1999-10-05 Metaflow Technologies, Inc. Apparatus for computing transcendental functions quickly
US6854003B2 (en) 1996-12-19 2005-02-08 Hyundai Electronics America Video frame rendering engine
DE69727465T2 (de) 1997-01-09 2004-12-23 Hewlett-Packard Co. (N.D.Ges.D.Staates Delaware), Palo Alto Rechnersystem mit Speichersteuerung für Stossbetrieb-Übertragung
US6401194B1 (en) * 1997-01-28 2002-06-04 Samsung Electronics Co., Ltd. Execution unit for processing a data stream independently and in parallel
US6430589B1 (en) 1997-06-20 2002-08-06 Hynix Semiconductor, Inc. Single precision array processor
JPH1165989A (ja) * 1997-08-22 1999-03-09 Sony Computer Entertainment:Kk 情報処理装置
US6157751A (en) * 1997-12-30 2000-12-05 Cognex Corporation Method and apparatus for interleaving a parallel image processing memory
US6457130B2 (en) 1998-03-03 2002-09-24 Network Appliance, Inc. File access control in a multi-protocol file server
US6317844B1 (en) 1998-03-10 2001-11-13 Network Appliance, Inc. File server storage arrangement
US6343984B1 (en) 1998-11-30 2002-02-05 Network Appliance, Inc. Laminar flow duct cooling system
JP2000172651A (ja) * 1998-12-03 2000-06-23 Nec Corp 非同期転送モード(atm)セルパイプライン処理装置
EP1061439A1 (en) * 1999-06-15 2000-12-20 Hewlett-Packard Company Memory and instructions in computer architecture containing processor and coprocessor
US6807620B1 (en) * 2000-02-11 2004-10-19 Sony Computer Entertainment Inc. Game system with graphics processor
US7383424B1 (en) 2000-06-15 2008-06-03 Hewlett-Packard Development Company, L.P. Computer architecture containing processor and decoupled coprocessor
US7870367B1 (en) * 2003-06-17 2011-01-11 Altera Corporation Methods and apparatus for implementing complex parallel instructions using control logic
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
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
US7617383B2 (en) * 2006-02-16 2009-11-10 Vns Portfolio Llc Circular register arrays of a computer
US7779216B2 (en) * 2007-04-11 2010-08-17 Honeywell International Inc. Method and system of randomizing memory locations
US7555637B2 (en) * 2007-04-27 2009-06-30 Vns Portfolio Llc Multi-port read/write operations based on register bits set for indicating select ports and transfer directions
US20100023730A1 (en) * 2008-07-24 2010-01-28 Vns Portfolio Llc Circular Register Arrays of a Computer
US9792087B2 (en) * 2012-04-20 2017-10-17 Futurewei Technologies, Inc. System and method for a floating-point format for digital signal processors
US9329936B2 (en) 2012-12-31 2016-05-03 Intel Corporation Redundant execution for reliability in a super FMA ALU
WO2017117116A1 (en) * 2015-12-28 2017-07-06 Coherent Logix, Incorporated Processor Instructions to Accelerate FEC Encoding and Decoding

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3794984A (en) * 1971-10-14 1974-02-26 Raytheon Co Array processor for digital computers
US3787673A (en) * 1972-04-28 1974-01-22 Texas Instruments Inc Pipelined high speed arithmetic unit
US4101960A (en) * 1977-03-29 1978-07-18 Burroughs Corporation Scientific processor
US4228498A (en) * 1977-10-12 1980-10-14 Dialog Systems, Inc. Multibus processor for increasing execution speed using a pipeline effect
US4281391A (en) * 1979-01-15 1981-07-28 Leland Stanford Junior University Number theoretic processor
US4302818A (en) * 1979-07-10 1981-11-24 Texas Instruments Incorporated Micro-vector processor
US4287566A (en) * 1979-09-28 1981-09-01 Culler-Harrison Inc. Array processor with parallel operations per instruction
US4496944A (en) * 1980-02-29 1985-01-29 Calma Company Graphics display system and method including associative addressing
US4371951A (en) * 1980-09-29 1983-02-01 Control Data Corporation Apparatus for converting serial input sparse vector format to parallel unpacked format for input to tandem arithmetic logic units
JPS57134774A (en) * 1981-02-13 1982-08-20 Hitachi Ltd Vector operating device
JPS57155666A (en) * 1981-03-20 1982-09-25 Fujitsu Ltd Instruction controlling system of vector processor
JPS57209570A (en) * 1981-06-19 1982-12-22 Fujitsu Ltd Vector processing device
US4414669A (en) * 1981-07-23 1983-11-08 General Electric Company Self-testing pipeline processors
US4489434A (en) * 1981-10-05 1984-12-18 Exxon Corporation Speech recognition method and apparatus

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003501775A (ja) * 1999-06-15 2003-01-14 ヒューレット・パッカード・カンパニー プロセッサおよびコプロセッサを含むコンピュータ・アーキテクチャ
JP2009527813A (ja) * 2006-02-16 2009-07-30 ブイエヌエス ポートフォリオ リミテッド ライアビリティ カンパニー 非同期電力節約コンピュータ

Also Published As

Publication number Publication date
EP0127508B1 (en) 1991-01-02
EP0127508A2 (en) 1984-12-05
EP0127508A3 (en) 1987-10-07
IL71720A (en) 1987-12-20
US4589067A (en) 1986-05-13
DE3483795D1 (de) 1991-02-07
JPH0418345B2 (ja) 1992-03-27
IL71720A0 (en) 1984-09-30

Similar Documents

Publication Publication Date Title
JPS59226971A (ja) 全浮動小数点ベクトルプロセツサ
US5226171A (en) Parallel vector processing system for individual and broadcast distribution of operands and control information
US3787673A (en) Pipelined high speed arithmetic unit
US5175863A (en) Signal data processing system having independently, simultaneously operable alu and macu
US5068819A (en) Floating point apparatus with concurrent input/output operations
JP3983857B2 (ja) ベクトルレジスタの複数バンクを用いた単一命令複数データ処理
US5081573A (en) Parallel processing system
EP0282825B1 (en) Digital signal processor
US5261113A (en) Apparatus and method for single operand register array for vector and scalar data processing operations
US4298936A (en) Array Processor
CA1221175A (en) Integrated and programmable processor for word-wise digital signal processing
US4229801A (en) Floating point processor having concurrent exponent/mantissa operation
US4156922A (en) Digital system for computation of the values of composite arithmetic expressions
US4228498A (en) Multibus processor for increasing execution speed using a pipeline effect
JPH0731603B2 (ja) Forth特定言語マイクロプロセサ
JPS61248135A (ja) パイプライン式プロセツサ及びその制御方法
WO1982003481A1 (en) A bit slice microprogrammable processor for signal processing applications
US4791555A (en) Vector processing unit
US5764556A (en) Method and apparatus for performing floating point addition
US4773035A (en) Pipelined data processing system utilizing ideal floating point execution condition detection
Kratz et al. A microprogrammed approach to signal processing
JPH096610A (ja) データ処理システムにおいて複合命令の実行中にオペランドを交換するための方法およびシステム
EP0141232A2 (en) Vector processing unit
JP2518293B2 (ja) デ−タフロ−プロセツサ
JP2001525966A (ja) 命令発行速度を加速するプロセッサ・コントローラ