JPH077389B2 - 再帰方程式を高速で処理するベクトル処理装置 - Google Patents

再帰方程式を高速で処理するベクトル処理装置

Info

Publication number
JPH077389B2
JPH077389B2 JP63504021A JP50402188A JPH077389B2 JP H077389 B2 JPH077389 B2 JP H077389B2 JP 63504021 A JP63504021 A JP 63504021A JP 50402188 A JP50402188 A JP 50402188A JP H077389 B2 JPH077389 B2 JP H077389B2
Authority
JP
Japan
Prior art keywords
circuit
data
data storage
term
vector
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 - Fee Related
Application number
JP63504021A
Other languages
English (en)
Other versions
JPH01501264A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP63504021A priority Critical patent/JPH077389B2/ja
Publication of JPH01501264A publication Critical patent/JPH01501264A/ja
Publication of JPH077389B2 publication Critical patent/JPH077389B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/8053Vector processors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/11Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/11Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
    • G06F17/13Differential equations

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Operations Research (AREA)
  • Computing Systems (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Complex Calculations (AREA)

Description

【発明の詳細な説明】 技術分野 本発明はデータ処理システムに関し、特に再帰方程式を
高速で処理するためのベクトル処理装置に関する。
背景技術 最近のコンピュータ技術における目ざましい進歩は、例
えばベクトル処理装置を提供することによってスーパー
コンピュータの演算速度を向上させてきた。これらベク
トル処理装置は科学計算を実行するために使用される。
例えば一次方程式の数値解法や微分方程式の数値解法を
高速で行うために使用される。
科学技術計算においては、次のような再帰演算アルゴリ
ズム(または再帰方程式)を頻繁に使用して一次方程式
の数値解法を行ったり、差分法によって微分方程式を解
く。
ai=ai-1×bi+ci …(1) 但し、i=1,2,3,…,n この演算アルゴリズム(1)は、データaiとデータai-1
の再帰関係を示す。一般に、上記再帰方程式の演算は、
ベクトル処理装置による高速の計算には適していない。
これはデータai-1が再使用されてデータaiを計算するか
らである。すなわちデータaiは項ai-1の計算の後で計算
しなければならないためである。従って従来のベクトル
処理装置は、高速で再帰方程式を計算することができな
い。再帰方程式を扱うために使用される従来のベクトル
処理装置については図面を参照して後述する。
それにもかかわらず、ベクトル処理装置を使用して高速
で再帰方程式を計算することに対する要求は強い。これ
は多くの再帰方程式が科学技術計算分野で使用されるか
らである。
発明の開示 本発明の目的は再帰方程式を高速で処理できるベクトル
処理装置を提供することである。
本発明の他の目的は、容易に構成できる簡単な回路構成
を有するベクトル処理装置を提供することである。
本発明の提供するベクトル処理装置は、ベクトル命令を
制御するためのベクトル命令制御ユニットと、主記憶ユ
ニットにおける入力ベクトルデータと計算されたデータ
とをアクセスするためのベクトル記憶アクセスユニット
と、前記ベクトル命令制御ユニットの制御下においてベ
クトルデータを計算するためのベクトル計算ユニット
と、前記ベクトルデータアクセスユニットと前記ベクト
ル計算ユニットとの間でデータを転送するためのデータ
分配ユニットとを備え、前記ベクトル処理装置が、少な
くとも1個の奇数項計算回路と少なくとも1個の偶数項
計算回路とを有するベクトル計算ユニットと、前記ベク
トル計算ユニットに作動的に接続されそれと協働するデ
ータ分配ユニットとを備えることにより、変形された再
帰方程式を処理することを特徴とする。各奇数項計算回
路は、変形された再帰方程式の各奇数項を計算するよう
に構成され、加算回路と、乗算回路と、計算した奇数項
を保持する少なくとも1個のデータ記憶回路と、前記デ
ータ記憶回路を介して前記乗算回路、および/または、
前記加算回路に前記計算した奇数項をフィードバックす
るための少なくとも1本のフィードバック線を備える。
各偶数項計算回路は、再帰方程式の偶数項を計算するよ
うに構成され、他の加算回路と、別の乗算回路と、計算
された偶数項を保持する少なくとも1個の他のデータ記
憶回路と、前記他のデータ記憶回路を介して前記他の乗
算回路、および/または、前記別の加算回路に前記計算
した偶数項をフィードバックするための少なくとも1本
のフィードバック線を備える。前記データ分配ユニット
は、0を出力するための第1のデータ設定器と、1を出
力するための第2のデータ設定器と、前記設定器からの
定数データ0および1と計算された奇数項および偶数項
とを使用して再帰方程式を計算するための入力オペラン
ドを選択する第1〜第6セレクタと、変形された再帰方
程式によって規定される所定の方法において前記セレク
タを制御するためのセレクタ制御回路とを備え、選択さ
れたデータを前記奇数項および偶数項計算回路へ供給す
る。
式(1)によって表される再帰方程式は、一次漸化する
と次の式のように変形できる。
ai=ai-1×bi+ci ={(ai-2×bi-1)+ci-1}×bi+ci =ai-2×bi-1×bi+bi×ci-1+ci …(2) 添字iが偶数、例えば偶数の添字k=2,4,6の場合、 a2=a0×b1×b2+b2×c1+c2 a4=a2×b3×b4+b4×c3+c4 a6=a4×b5×b6+b6×c5+c6 …(3) 添字iが奇数、例えば奇数の添字j=1,3,5,7の場合、 a1=a0×b1×1+1×c1+0 a3=a1×b2×b3+b3×c2+c3 a5=a3×b4×b5+b5×c4+c5 a7=a5×b6×b7+b7×c6+c7 …(4) ここで各項a2とa0、a4とa2、a6とa4の間には直接の再帰
関係がないことに注意すべきである。同様に、項a3
a1、a5とa3、a7とa5との間にも直接の再帰関係がない。
従って奇数項計算回路は、奇数項ajの計算を直接再帰に
よって遅延なしに行うことができる。また偶数項計算回
路は、偶数項akの計算を直接再帰による遅延なしに行う
ことができる。このため再帰方程式の高速計算に寄与す
る。
図面の簡単な説明 第1図は、本発明のベクトル処理装置を含む高速データ
処理システムを示すブロック図、 第2図は、第1図に示したデータ処理システムに使用さ
れる汎用ベクトル処理装置を示すブロック図、 第3図は、従来のベクトル処理装置を示す回路図、 第4図は、第3図に示したベクトル処理装置の動作タイ
ミング図、 第5図は、本発明に基づくベクトル処理装置の一実施例
を示す回路図、 第6図は、第5図に示したベクトル処理装置の動作タイ
ミング図、 第7図は、本発明に基づくベクトル処理装置の別の実施
例を示す回路図、および 第8図は、第7図に示したベクトル処理装置の動作タイ
ミング図、である。
発明を実施するための最良の形態 本発明に基づくベクトル処理装置の好適実施例を説明す
る前に、ベクトル処理装置を備えた高速データ処理シス
テムを第1図を参照して説明する。
第1図において、高速データ処理システムは、主記憶ユ
ニット(MSU)1と、主記憶制御ユニット(MSCU)2
と、入出力(I/O)処理ユニット3と、スカラデータ処
理ユニット(スカラ処理装置)4と、ベクトルデータ処
理ユニット(ベクトル処理装置)5とを備える。I/O処
理ユニット3は、計算されるデータを入力すると共に、
スカラ処理装置4、および/または、ベクトル処理装置
5において計算されたデータを出力する。MSU1はこれら
入力データと計算されたデータとを格納する。スカラ処
理装置4は全ての計算を制御する。演算コマンドがスカ
ラ演算に関連する場合は、スカラ処理装置4自体がスカ
ラデータの計算を実行する。演算コマンドがベクトル演
算に関連する場合は、スカラ処理装置4は制御をベクト
ル処理装置5に移し、ベクトル処理装置5においてベク
トル計算が実行される。すなわちベクトル処理装置5
は、ベクトル計算が要求される場合にスカラ処理装置4
によってトリガされ、当該ベクトル計算を実行する。MS
CU2は、MSU1とI/O処理ユニット3とスカラ処理装置4と
ベクトル処理装置5とのデータの流れを制御する。
第1図に示したベクトル処理装置5の全体構成を第2図
に示す。第2図においてベクトル処理装置5は、デコー
ダと制御レジスタとを有するベクトル命令制御ユニット
(VICU)51と、ベクトルアドレス発生器とアクセスデー
タ処理装置とベクトルレジスタユニットとを有するベク
トル記憶アクセスユニット(VSAU)52と、データ分配ユ
ニット54と、加減算ユニット55と乗算ユニット56と除算
ユニット57とを有するベクトル計算部とを備える。VICS
51はスカラ処理装置5からデータ制御命令を受け取る。
その制御レジスタは前記データ制御命令の制御データを
格納する。前記デコーダは前記データ制御命令を復号す
る。VSAU52は、MSCU2およびデータ分配ユニット54を介
して、MSU1とベクトル計算部との間でデータを転送す
る。前記ベクトルアドレス発生器は、復号された命令に
基づき、MSU1内のデータをアクセスするためのアドレス
を発生する。前記アクセスデータ処理装置は、MSU1とベ
クトルレジスタユニットとの間のデータを制御する。ベ
クトル計算に使用されるデータは、まずベクトルレジス
タユニットに格納される。また、ベクトル計算部におい
て計算されたデータは、ベクトルレジスタユニットに格
納される。データ分配ユニット54は、ベクトルレジスタ
ユニットからのデータを分配し、それを復号された命令
に基づいて加減算ユニット55と乗算ユニット56と除算ユ
ニット57とに供給する。これらユニット55,56,57は動作
接続されており、ベクトル計算を行う。ベクトル計算さ
れたデータは、データ分配ユニット40を介してベクトル
レジスタユニットに格納され、その後MSU1に格納され
る。
従来のベクトル処理装置を第3図および第4図を参照し
て説明する。第3図は、前記した再帰方程式を処理する
ための基本的な回路図を示す。第4図は第3図に示した
ベクトル処理装置の動作タイミング図である。
第3図において、ベクトル処理装置は、セレクタ30と、
レジスタ14,15,16と、乗算回路17と、レジスタ18,19
と、加算器110と、レジスタ112と、レジスタ112の出力
端子とセレクタ30の入力端子との間に接続されたフィー
ドバック線31とを備える。これら回路構成要素は第3図
に示したベクトル計算部の一部である。乗算回路17はai
-1×biの項を計算する。加算器110はciと乗算回路17か
らの結果とを加算する。一方において、この加算された
データはフィードバック線31とセレクタ30とレジスタ15
とを介して乗算回路17にフィードバックされて次の項の
計算に使用され、他方においてベクトルレジスタユニッ
トに出力される。セレクタ30は最初に初期ベクトルデー
タa0を出力する。レジスタ14,15,16とレジスタ18,19と
レジスタ112とは、前記データを各々保持するように設
けられている。レジスタ112とフィードバック線31と
は、計算されたデータaiをレジスタ15にフィードバック
して次の項ai+1を計算するように設けられている。
ここで、減算および除算は再帰方程式の計算に必要ない
ので、減算回路および除算回路は第3図から省略されて
いる。
第3図に示したベクオル処理装置の動作を第4図を参照
してさらに詳細に説明する。
再帰方程式の添字を示す整数iが1であれば、再帰方程
式は次のように表される。
a1=a0×b1+c1 このため動作サイクル01においては、初期データc1,a0,
b1が第2図に示したベクトルレジスタユニットからレジ
スタ14,15,16にロードされる。次に(a0×b1)の計算が
乗算回路17において実行される。動作サイクル02におい
て、レジスタ14にロードされたデータc1がレジスタ18に
転送される。乗算回路17において計算されたデータはレ
ジスタ19に転送される。従って加算器110はデータc1
レジスタ19に格納されたデータとを加算し、結果a1を得
る。動作サイクル03において、結果a1はレジスタ112に
格納され、次にデータ分配ユニット54を介して第2図に
示したベクトルレジスタユニットに出力される。
動作サイクル04において、次のベクトルデータb2,c2
ベクトルレジスタユニットを介してレジスタ16,14にロ
ードされる。同時に、レジスタ112に格納されているデ
ータa1がフィードバック線31とセレクタ30とを介してレ
ジスタ15にロードされる。動作サイクル04〜06において
次の項a2=a1×b2+c2の計算が実行される。
同様に、動作サイクル07〜09において項a3=a2×b3+c3
の計算が実行される。動作サイクル10〜12では項a4=a3
×b4+c4の計算が実行される。動作サイクル13〜15では
項a5=a4×b5+c5の計算が実行される。
前記したように、一つの項aiを得るための計算時間は3
つの動作サイクルを必要とする。100項のベクトル処理
が必要の場合、100の再帰方程式の計算データを得るた
めに300の動作サイクルが必要である。従って再帰方程
式、特に高次再帰方程式を計算するための高速動作が従
来のベクトル処理装置では実現できない。
この欠点は、項aiの計算が直前の項ai-1の計算の後に実
行されなければならないという再帰関係の故である。こ
のため従来のベクトル処理装置は、次の項の計算を進め
る前に直前の項を計算するためのアイドル時間を生ず
る。従って、ベクトル処理装置が前記再帰方程式を正確
に解くことができても、このベクトル処理装置は前記低
速演算の欠点を逃れられない。
本発明は再帰方程式を変形することによって前記欠点を
解決する。
前記した再帰方程式は次のように変形可能である。
ai=ai-1×bi+ci =(ai-2×bi-1+ci-1)×bi+ci =(ai-2×bi-1×bi)+bi×ci-1+ci …(2) 但し、iは整数であり添字i=1,2,3,…,nを表し、 aiは計算されたベクトルデータであり、 biは入力ベクトルデータであり、 ciは入力ベクトルデータである。
第(2)式から、項aiと他の項ai-2との間には項aiと他
の項ai-1との間のような直接再帰関係のないことが判か
る。前記第(2)式に基づき項aiの計算は、直前の項ai
-1の計算に影響されない。項ai-2は項aiの2段階前に計
算されており、項aiは直前の項ai-1の計算による遅延な
しに実行することができる。しかしながら前記概念は奇
数項と偶数項とを別々に演算しない限り実現できない。
添字iが偶数であれば、偶数添字kを使用して前記第
(2)式は次のように表される。
k=2:a2=a0×b1×b2+b2×c1+c2 k=4:a4=a2×b3×b4+b4×c3+c4 k=6:a6=a4×b5×b6+b6×c5+c6 : : : : …(3) 添字iが奇数であれば、奇数添字jを使用して前記第
(1)式は次のように表される。
j=1:a1=a0×b1×1+1×c1+0 j=3:a3=a1×b2×b3+b3×c2+c3 J=5:a5=a3×b4×b5+b5×c4+c5 : : : : …(4) 例えば項a0とa2、項a2とa4、項a4とa6、項a1とa3、また
は項a3とa5との間には、項a0とa1とを除いて直接の再帰
関係がないので、1対の項、例えばa3とa4とは平行に計
算できる。これにより高速のベクトルデータ計算が可能
となる。しかしながら項a3とa4の計算は項a1とa2の計算
の後に実行されなければならない。
本発明に基づくベクトル処理装置の第1実施例を第5図
に基づき詳細に説明する。
第5図においてこのベクトル処理装置は、データ分配回
路40aと、奇数項計算回路10Aおよび偶数項計算回路10B
からなるベクトルデータ計算ユニットとを備える。
データ分配回路40aは、第2図に示したベクトルレジス
タユニットと奇数項計算回路10Aと偶数項計算回路10Bと
に設けられ、奇数項および偶数項計算回路10A,10Bに初
期オペランド(データ)a0とオペランド(入力ベクトル
データ)bi,ciとを後述の所定の方法で供給する。また
データ分配回路40aは、奇数項計算回路10Aにおいて計算
された奇数項データajと、偶数項計算回路10Bにおいて
計算された偶数項データakとを受け取り、これらをベク
トルレジスタユニットに出力する。
データ分配回路40aは、セレクタ制御回路41aと、オペラ
ンドbiをファーストイン・ファーストアウト(FIFO)B
バッファ(B−BUFF)と、オペランドciをFIFOバッファ
であるCバッファ(C−BUFF)とを備える。またデータ
分配回路40aは、セレクタ46A,47A,48A,46B,47B,48Bを含
む。データ分配回路40aはさらに、セレクタ46A,46Bに0
を出力するためのゼロ(0)設定器(図示せず)と、セ
レクタ47A,48A,47B,48Bに1を出力するための1設定器
(図示せず)とを備える。
奇数項ajを計算するための奇数項計算回路10Aは、第1
段レジスタ14A,15A,16Aと、乗算回路17Aと、第2段レジ
スタ18A,19Aと、加算器110Aと、第3段レジスタ11Aと、
第4段レジスタ112Aと、レジスタ19Aの出力端子とセレ
クタ48Aの入力端子との間に接続された第1フィードバ
ック線21Aと、レジスタ112Aの入力端子とセレクタ46Aの
入力端子との間に接続された第2フィードバック線22A
と、レジスタ11Aの出力端子とセレクタ47Aの入力端子と
の間に接続された第3フィードバック線23Aとを備え
る。計算された奇数項ajはレジスタ111Aからベクトルレ
ジスタユニットに順次に出力される。
レジスタ11A、および/または、112Aはデータ分配回路4
0aに含めることもできる。
偶数項akを計算するための偶数項計算回路10Bは、奇数
項計算回路10Aと同一の回路構成を有する。これは演算
アルゴリズム自体がどちらも同じだからである。奇数項
および偶数項計算回路10A,10Bは同一の構造を有するこ
とができるので、それらの製造およびプリント回路基板
(PCB)への搭載は極めて簡単である。奇数項および偶
数項計算回路10A,10Bは、独立して同時に動作可能であ
る。
第5図に示したベクトル処理装置の動作を説明する。
オペランドai,ciおよび初期オペランドa0があらかじめ
第1図に示したMSU2内に格納されており、スカラ処理装
置4において以下に示すような命令セットが検出される
と、スカラ処理装置4は動作の制御を第5図に示したベ
クトル処理装置に移し当該ベクトル処理装置をトリガす
る。
第1表 VL A(0)T0 VR00 VL B(I)T0 VR01 VL C(i)T0 VR02 VCAL A(i)=A(i−1)×B(I)+C(i) VST A(i)T0 VR00 ここでVLはベクトルロード命令を表し、VCALはベクトル
計算命令を表し、VSTはベクトル格納命令を表す。A
(i),B(i),C(i)はai,bi,ciに対応する。VR00,V
R01,VR02は、第2図に示したベクトルレジスタユニット
内のベクトルレジスタ00,01,02を表す。なお本実施例に
おいて、各ベクトルレジスタは100ワードの記憶容量を
有する。
まず第2図に示すベクトル記憶アクセスユニット(VSA
U)52は、前記ベクトルロード命令に応じて、第2図に
示すベクトル命令制御ユニット(VICU)51の制御下で、
主記憶ユニット(MSU)1に格納されているベクトルデ
ータa0,b1…b100とc1…c100とを主記憶制御ユニット(M
SCU)2を介してベクトルレジスタユニットのベクトル
レジスタVR00,VR01,VR02にロードする。
前記ベクトルデータロードの間、第5図に示した回路に
おける再帰方程式ai=ai-1×bi+ciの計算と、計算され
たデータaiのベクトルレジスタVR00への格納とが、前記
ベクトル計算命令およびベクトル格納命令とに応じてVI
CU51の制御下で実行される。
ベクトルレジスタVR00内の計算されたデータaiは前記演
算中にMSU1に格納できる。
第5図の回路の動作の詳細を第6図を参照して説明す
る。
計算は初期項a1,a2を計算するための初期項計算と、そ
れに続く、例えば、a3とa4,a5とa6等を計算するための
通常項計算とからなる。
まず初期項計算を説明する。
次の第2表および第3表は、セレクタ制御回路40aの制
御下でレジスタ14A,15A,16A,111Aおよびレジスタ14B,15
B,16B,111Bにロードされるデータを示す。
データ分配回路40aは、その中に初期オペランドa0,b1,c
1をロードし、オペランドb1およびc1をB−BUFF42とC
−BUFF43とに各々格納する。
演算サイクル01 演算サイクル01において、セレクタ制御回路41aはセレ
クタ46A,47A,48Aを制御して奇数項計算回路10A内のレジ
スタ14A,15A,16Aにオペランドc1,b1,a0を出力する。こ
れらレジスタ14A,15A,16Aは、前記オペランドc1,b1,a0
を格納する。同時に、セレクタ制御回路41aはセレクタ4
6B,47B,48Bを制御して偶数項計算回路10B内のレジスタ1
4B,15B,16Bにオペランドc1,b1,a0を出力する。これらレ
ジスタ14B,15B,16Bは、やはり前記オペランドc1,b1,a0
を格納する。
奇数項計算回路10Aでは、レジスタ16Aが格納したオペラ
ンドa0を被乗数として乗算回路17Aに出力し、レジスタ1
5Aがb1を乗数として乗算回路17Aに出力する。これによ
り乗算回路17Aは(a0×b1)を計算する。
同時に偶数項計算回路10Bでは、レジスタ16Bが格納した
オペランドa0を被乗数として乗算回路17Bに出力し、レ
ジスタ15Bがb1を乗数として乗算回路17Bに出力する。こ
れにより乗算回路17Bは(a0×b1)を計算する。
演算サイクル02 奇数項計算回路10Aでは、乗算回路17Aにおいて計算され
たデータ(a0×b1)がレジスタ19Aに転送されて格納さ
れる。レジスタ14Aに格納されているデータc1はレジス
タ18Aに転送されて格納される。
同時に偶数項計算回路10Bでは、乗算回路17Bにおいて計
算されたデータ(a0×b1)がレジスタ19Bに転送されて
格納される。レジスタ14Bに格納されているデータc1
レジスタ18Bに転送されて格納される。
次に奇数項計算回路10Aにおいて、加算器110Aがデータ
(a0×b1)とデータc1とを加算する。この結果、次のよ
うな第1の奇数項が得られる。
a1=a0×b1+c1 この時同時に同様の方法で、偶数項計算回路10Bでは前
記第1の奇数項a1が加算器110Bによって得られる。
演算サイクル03 奇数項計算回路10Aにおいて、計算された第1の奇数項a
1がレジスタ111Aに転送されて格納される。
偶数項計算回路10Bでは、計算された第1の奇数項a1
レジスタ111Bに転送されて格納される。
前記演算中にデータ分配回路40aは、ベクトルレジスタV
R01,VR02からB−BUFF42,C−BUFF43にオペランド(b2,b
3,b4)および(c2,c3,c4)を各々ロードする。
第1の奇数項a1を得たものの、データ分配回路40aはこ
の時点ではそれをベクトルレジスタVR00に出力しない。
これは第1の偶数項a2が得られていないからである。
演算サイクル04〜06 偶数項計算回路10Bにおいて第1の偶数項a2が得られる
まで、奇数項計算回路10Aとデータ分配回路40aとは協働
してデータa1をそのままに保持し、第2の奇数項a3を計
算するために使用されるオペランドを準備する。
演算サイクル04において、セレクタ制御回路41aはセレ
クタ46A,47A,48Aを制御してレジスタ14Aにゼロデータを
セットし、計算された第1の奇数項a1をレジスタ111Aお
よびフィードバック線23Aを介してレジスタ15Aに設定
し、データ1をレジスタ16Aに設定する。この結果、演
算サイクル04において乗算回路17Aは(a1×1)を計算
し、演算サイクル06において加算器110Aはレジスタ19A
からのデータ(a1×1)とレジスタ18Aからのゼロ
(0)とを加算する。すなわち次のダミー計算が実行さ
れる。
a1=(a1×1)+0 前記演算中に、演算サイクル05においてセレクタ制御回
路41aは、セレクタ47A,48Aを制御してレジスタ15Aにオ
ペランドb3を設定し、レジスタ16Aにオペランドb2を設
定する。データa1は演算サイクル05においてレジスタ11
1Aに転送され、さらに演算サイクル06においてレジスタ
112Aに格納される。
偶数項計算回路10Bにおいては、次の第1偶数項a2が、
そこで計算されレジスタ112Bに退避されている第1奇数
項a1を使用して計算される。
a2=(a1×b2)+c2 この目的のため、演算サイクル04においてセレクタ制御
回路41aは、セレクタ46B,47B,48Bを制御してレジスタ14
Bにオペランドc2を設定し、レジスタ111Bに退避された
第1奇数項a1をフィードバック線23Bを介してレジスタ1
5Bに設定し、オペランドb2をレジスタ16Bに設定する。
演算サイクル05において、第1偶数項a2が加算器110Bに
得られ、演算サイクル06において第1の偶数項a2がレジ
スタ111Bに退避される。
データ分配回路40aは、一対の第1奇数項および偶数項a
1,a2をレジスタ111A,111BからベクトルレジスタVR00に
転送する。
初期項計算はこれで完了する。
次に通常項計算を説明する。
演算サイクル03〜09 まず、奇数項計算回路10Aにおける第2奇数項a3の計算
を説明する。
第2奇数項a3は以下に示す方程式によって定義されるの
で、セレクタ制御回路41aはセレクタ46A,47A,48Aを制御
して、第4表に示すようなデータを、第4表に示すよう
な演算サイクルにおいて、レジスタ14A,15A,16Aにロー
ドする。
a3=a1×(b2×b3)+b3×c3+c3 演算サイクル03において乗算値(b3×c2)が乗算回路17
Aに得られる。演算サイクル05において合計(b3×c2
+c3が加算器110Aに得られる。演算サイクル05において
乗算値(b2×b3)が乗算回路17Aに得られる。演算サイ
クル07において乗算値(a1×b2×b3)が乗算回路17Aに
得られる。演算サイクル08において計算されたデータ
(a1×b2×b3)が加算器110Aに供給される。前記第2奇
数項a3は加算器111Aで得られる。計算された第2奇数項
a3は演算サイクル08においてレジスタ111Aに退避され
る。演算サイクル09においてレジスタ111Aに退避されて
いる第2奇数項a3がベクトルレジスタVR00に転送されレ
ジスタ112Aに格納される。
前記において、レジスタ112Aに格納されたデータa1はフ
ィードバック線22Aを介してレジスタ15Aにフィードバッ
クされる。またレジスタ19Aに格納されたデータ(b2×b
3)はフィードバック線21Aを介してレジスタ16Aにフィ
ードバックされる。レジスタ111Aに格納された合計(b3
×c2)+c3はフィードバック線23Aを介してレジスタ14A
にフィードバックされる。
同様に、次のような第2偶数項a4が偶数項計算回路10B
に得られる。
a4=a2×b3×b4+b4×c3+c4 セレクタ制御回路41aは同様にセレクタ46B,47B,48Bを制
御して次の第5表に示すデータをレジスタ14B,15B,16B
にロードする。
演算サイクル09において奇数項および偶数項a3,a4がベ
クトルレジスタユニット内のベクトルレジスタVR00に転
送される。
演算サイクル06〜12 同様に、演算サイクル06〜12において、次の第3奇数項
および偶数項a5,a6が奇数項および偶数項計算回路10A,1
0Bに得られる。
a5=a3×b4×b5+b5×c4+c5 a6=a4×b5×b6+b6×c5+c6 前記計算を実行するため、セレクタ制御回路41aはセレ
クタ46A,47A,48A,46B,47B,48Bを制御して第6表および
第7表に示すようなデータをレジスタ14A,15A,16A,14B,
15B,16Bにロードする。
演算サイクル11において奇数項a5およびa6が加算器111
A,111Bに得られ、それらはベクトルレジスタVR00に転送
される。
他の複数の対の奇数項および偶数項も前記と同様の方法
で得られる。
一対の奇数項および偶数項の計算は、第1の奇数項およ
び偶数項の計算を除いてわずかに3演算サイクルを必要
とするだけである。第1の奇数項および偶数項の計算
は、従来のベクトル処理装置のサイクル数と同数のサイ
クル数を要する。第5図に示したベクトル処理装置によ
れば、初期計算を除いて、3演算サイクルにおいて2倍
のデータを得ることができる。このため第5図に示すベ
クトル処理装置は、再帰方程式の多くの項を計算する場
合、従来のベクトル処理装置に比較して計算能力が2倍
である。
本発明に基づくベクトル処理装置の他の実施例を第7図
を参照して説明する。
第7図において、ベクトル処理装置は、データ分配回路
40bと、奇数項計算回路10AAおよび偶数項計算回路10BB
を有するベクトルデータ計算ユニットとを備える。
データ分配回路40bは、第2図に示したベクトルレジス
タユニットと奇数項計算回路10AAと偶数項計算回路10BB
とに設けられ、初期オペランドa0とオペランド(入力デ
ータ)bi,ciとを奇数項および偶数項計算回路10AA,10BB
に後述の所定の方法で供給する。またデータ分配回路40
bは、奇数項計算回路10AAにおいて計算された奇数項デ
ータajと、偶数項計算回路10BBにおいて計算された偶数
項データakとを受け取り、これらをベクトルレジスタユ
ニットに出力する。
データ分配回路40bは、セレクタ制御回路41bと、B−BU
FF42と、C−BUFF43と、バッファレジスタ51A,52Aと、
セレクタ53A,54A,55Aと、レジスタ51B,52Bと、セレクタ
53B,54B,55Bとを備える。またデータ分配回路40bはゼロ
設定器と1設定器とを備える(図示せず)。
奇数項計算回路10AAは、第1段レジスタ14A,15A,16A
と、乗算回路17Aと、第2段レジスタ18A,19Aと、加算器
110Aと、第3段レジスタ111Aと、レジスタ111Aの出力端
子とレジスタ51Aの入力端子との間に接続されたフィー
ドバック線24Aとを備える。
偶数項計算回路10BBは、奇数項計算回路10AAと同一の回
路構成を有する。
第7図に示すベクトル処理装置は、第(2)式によって
定義される再帰方程式を計算する。奇数項計算回路10AA
とデータ分配回路40bとは協働して第(4)式によって
定義される再帰方程式を計算し、偶数項計算回路10BBと
データ分配回路40bとは、やはり協働して第(3)式に
よって定義される再帰方程式を計算する。
第7図に示したベクトル処理装置の動作を、第1表に示
すような命令セットが与えられる場合について、第8図
を参照して詳細に説明する。
第2図に示したMSU1,MSCU2,VICU51,およびVSAU52の動作
は、前記したものと実質的に同一なので省略する。
第8図において協働サイクルは、初期演算サイクル01〜
08と、通常演算サイクル04〜11,10〜14などである。
演算サイクル01〜08 次の第8表および第9表は、初期演算サイクルにおける
レジスタ14A,15A,16A,111A内のデータとレジスタ14B,15
B,16B,111B内のデータとを示す。
セレクタ制御回路41bはセレクタ53A,54A,55Aを制御して
第8表に示すようにデータをレジスタ14A,15A,16Aにロ
ードする。またセレクタ制御回路41bはセレクタ53B,54
B,55Bを制御して第9表に示すようにデータをレジスタ1
4B,15B,16Bにロードする。
まず奇数項計算回路10AAにおける項ajの計算を説明す
る。
演算サイクル01 データ0,bi,1がレジスタ14A,15A,16Aにロードされ、(b
1×1)の計算が乗算回路17Aにおいて実行される。
演算サイクル02 データ0,(b1×1)がレジスタ18A,19Aにロードされ、
これらデータが加算器110Aにおいて加算されて結果(b1
×1+0)が得られる。同時にデータc1,b1,0がレジス
タ14A,15A,16Aにロードされ、(b1×0)が乗算回路17A
において実行される。
演算サイクル03 データ(b1×1+0)がレジスタ111Aに格納される。
レジスタ18Aに格納されたデータc1とレジスタ19Aに格納
されたデータ(b1×0)とは加算器110Aにおいて加算さ
れ、結果(b1×0+c1)が得られる。同時にデータ0,
a0,1がレジスタ14A,15A,16Aにロードされ、(a0×1)
の計算が乗算回路17Aにおいて実行される。
演算サイクル04 レジスタ111Aに格納されたデータ(b1×1+0)がレジ
スタ51Aに転送される。レジスタ18Aに格納されたデータ
0とレジスタ19Aに格納されたデータ(a0×1)とは加
算器111Aにおいて加算され、結果(a0×1+0)が得ら
れる。
演算サイクル05 データ(b1×1+c1)とデータ(b1×0+c1)とは、レ
ジスタ51A,52Aに各々順次にロードされる。データ(a0
×1+0)はレジスタ111Aに格納される。
演算サイクル06 レジスタ111Aに格納されたデータ(a0×1+0)はレジ
スタ15Aに転送され、レジスタ52Aに格納されたデータ
(b1×1+0)はレジスタ16Aに転送される。この結
果、データ(a0×1+0)×(1×b1+0)が乗算回路
17Aに得られる。レジスタ51Aに格納されたデータ(b1×
0+c1)はレジスタ14Aにロードされる。
演算サイクル07 レジスタ14Aからのデータ(b1×0+c1)はレジスタ18A
にロードされる。
レジスタ18Aに格納されたデータ(b1×0+c1)とレジ
スタ19Aに格納されたデータ(a0×1+0)×(1×b1
+0)とは加算器110Aにおいて加算され、次のような結
果データを得る。
(a0×1+0)×(1×b1+0)+(b1×0+c1) =a0×b1+c1 =a1 演算サイクル08 計算されたデータa1はレジスタ111Aに格納されベクトル
レジスタVR00に転送される。
次に偶数項計算回路10BBにおける項a2の計算を第9表を
参照して説明する。
演算サイクル01 データ0,b2,b1がレジスタ14B,15B,16Bにロードされ、
(b1×b2)の計算が乗算回路17Bにおいて実行される。
演算サイクル02 データ0,(b1×b2)がレジスタ18B,19Bにロードされ、
これらデータが加算器110Bにおいて加算されて結果(b1
×b2+0)が得られる。同時にデータc2,c1,b2がレジス
タ14B,15B,16Bにロードされ、(c1×b1)が乗算回路17B
において実行される。
演算サイクル03 データ(b1×b2+0)がレジスタ111Bに格納される。レ
ジスタ18Bに格納されたデータc2とレジスタ19Bに格納さ
れたデータ(c1×b2)とは加算器110Bにおいて加算さ
れ、結果(c1×b2+c2)が得られる。同様にデータ0,
a1,1がレジスタ14B,15B,16Bにロードされ、(a0×1)
の計算が乗算回路17Bにおいて実行される。
演算サイクル04 レジスタ111Bに格納されたデータ(b1×b2+0)がレジ
スタ51Bに転送される。データ(c1×b2+c2)がレジス
タ111Bに転送される。レジスタ18Bに格納されたデータ
0とレジスタ19Bに格納されたデータ(a0×1+0)と
は加算器110Bにおいて加算され、結果(a0×1+0)が
得られる。
演算サイクル05 データ(c1×b2+c2)とデータ(b1×b2+0)とはレジ
スタ51B,52Bに各々順次にロードされる。データ(a0×
1+0)はレジスタ111Bに格納される。
演算サイクル06 データ(c1×b2+c2)はレジスタ14Bにロードされる。
レジスタ111Bに格納されたデータはレジスタ15Bに転送
され、レジスタ52Bに格納されたデータ(b1×b2+0)
はレジスタ16Bに転送される。この結果、データ(a0×
1+0)×(b1×b2+0)が乗算回路17Bで得られる。
演算サイクル07 レジスタ18Bに格納されたデータ(c1×b2+c2)とデー
タ(a0×1+0)×(b1×b2+0)とが加算器110Bにお
いて加算され、次のような結果データが得られる。
(a0×1+0)×(b1×b2+0)+(c1×b2+c2) =a0×b1×b2+b2×c1+c2 =a2 演算サイクル08 計算されたデータa2はレジスタ111Bに格納され、a1と共
にベクトルレジスタVR00に転送される。
初期計算はこれで完了する。
さて通常計算を簡単に説明する。通常計算は初期計算と
同様であるが、データのロードと転送とが異なる。この
ため以下の説明は主としてデータのロードに関する。
演算サイクル04〜11 これらサイクルの間の奇数項a3と偶数項a4とが計算され
る。
次の第10表および第11表は、レジスタ14A,15A,16A,111A
とレジスタ14B,15B,16B,111B内のデータを示す。
これらサイクルにおいて奇数項a5と偶数項a6とが計算さ
れる。
次の第12表および第13表は、レジスタ14A,15A,16A,111A
とレジスタ14B,15B,16B,111B内のデータを示す。
奇数項および偶数項の他の複数の対は、前記と同様の方
法で計算できる。
本発明は前記実施例に限定されるものではない。例えば
前記実施例においては第(2)式〜第(4)式で表され
るような一次展開再帰方程式を説明してきた。第(1)
式で表されるような再帰方程式を二次展開を使用して変
形すれば次の式が得られる。
a1=ai-1×bi+ci =ai-2×bi-1×bi+bi×ci-1+ci =ai-3×bi-2×bi-1×bi+bi-2×ci-2 +bi×ci-1×ci …(5) 明らかなように、前記式は項aiとai-3との間に直接再帰
関係がないことを示している。
添字iが奇数の場合、例えば奇数添字jを3および5と
すれば、前記式は次のように表せる。
j=3:a3=a0×b1×b2×b3+b1×b2 ×c1+b3×c2+c3 …(6) j=5:a5=a2×b3×b4×b5+b3×b4 ×c3+b5×c4+c5 …(7) 添字iが偶数の場合、例えば奇数添字kを4および6と
すれば、前記式は次のように表せる。
k=4:a4=a1×b2×b3×b4+b2×b3 ×c2+b4×c3+c4 …(8) k=6:a6=a3×b4×b5×b1+b4×b5 ×c4+b6×c5+c6 …(9) 前記第(6)式〜第(9)式から、2つの奇数項a3,a5
と2つの偶数項a4,a6とが同一タイミングで同時に計算
できる。このため演算時間はさらに短縮される。この実
施例において、奇数項計算回路は2つに隣接する奇数
項、例えばa3,a5を同一タイミングで計算するように形
成されている。同様に偶数項計算回路は2つの隣接する
偶数項を同一タイミングで計算するように形成されてい
る。データ分配回路はデータを奇数および偶数項計算回
路に分配して前記式の計算を実行させる。
産業上の利用可能性 本発明のベクトル処理装置は種々のデータ処理システム
に適用可能である。

Claims (16)

    【特許請求の範囲】
  1. 【請求項1】ベクトル命令を制御するためのベクトル命
    令制御ユニット(51)と、主記憶ユニットにおける入力
    ベクトルデータと計算されたデータとをアクセスするた
    めのベクトル記憶アクセスユニット(52)と、前記ベク
    トル命令制御ユニットの制御下においてベクトルデータ
    を計算するためのベクトル計算ユニットと、前記ベクト
    ルデータアクセスユニットと前記ベクトル計算ユニット
    との間でデータを転送するためのデータ分配ユニット
    (54)とを備えたベクトル処理装置において、 前記ベクトル計算ユニットが、少なくとも1個の奇数項
    計算回路(10A,10AA)と少なくとも1個の偶数項計算回
    路(10B,10BB)とを有し、前記データ分配ユニットが前
    記ベクトル計算ユニットに作動的に接続されて協働する
    データ分配回路(40a,40b)を有していて、変形された
    再帰方程式を処理するようになっており、 前記奇数項計算回路の各々が、変形された再帰方程式の
    各奇数項を計算するために、加算回路(110A)と、乗算
    回路(17A)と、計算した奇数項を保持する少なくとも
    1個のデータ記憶回路(112A,51A,52A)と、前記データ
    記憶回路を介して前記乗算回路および前記加算回路の少
    くとも一つに前記計算した奇数項をフィードバックする
    少なくとも1本のフィードバック線(21A,22A,23A,24
    A)とを備えており、 前記偶数項計算回路の各々が、再帰方程式の偶数項を計
    算するために、他の加算回路(110B)と、他の乗算回路
    (17B)と、計算された偶数項を保持する少なくとも1
    個の他のデータ記憶回路(112B,51B,52B)と、前記他の
    データ記憶回路を介して前記他の乗算回路および前記他
    の加算回路の少くとも一つに前記計算した偶数項をフィ
    ードバックする少なくとも1本のフィードバック線(21
    B,22B,23B,24B)とを備えており、そして、 前記データ分配回路が、選択されたデータを前記奇数お
    よび偶数項計算回路へ供給するために、0を出力するた
    めの第1のデータ設定器と、1を出力するための第2の
    データ設定器と、前記設定器からの定数データ0および
    1と計算された奇数項および偶数項とを使用して再帰方
    程式を計算するための入力オペランド(ai,bi)を選択
    する第1〜第6セレクタ(46A,47A,48A,46B,47B,48B,53
    A,53B,54A,54B,55A,55B)と、変形された再帰方程式に
    よって規定される所定の方法において前記セレクタを制
    御するためのセレクタ制御回路(41a,41b)とを備えて
    いる、ベクトル処理装置。
  2. 【請求項2】前記奇数項および偶数項計算回路が独立し
    て同時に動作可能であり、同一演算時間に前記再帰方程
    式の少なくとも1対の隣接する奇数項および偶数項(a
    i,ai+1)を計算する、請求の範囲1に基づくベクトル処
    理装置。
  3. 【請求項3】前記データ分配回路(40a,40b)が、元の
    乗数および被乗数の少くとも一つとして複数の前記第1
    オペランド(bi)を入出力するためのファーストイン・
    ファーストアウトバッファ(42)と、元の加数として複
    数の前記第2オペランド(ci)を入出力するためのファ
    ーストイン・ファーストアウトバッファ(43)とを備え
    る、請求の範囲2に基づくベクトル処理装置。
  4. 【請求項4】前記変形された再帰方程式が1次展開され
    て次のように表され、 ai=ai-2×bi-1×bi+bi×ci-1+ci …(1) 前記奇数項計算回路が次の式を計算し、 ai=a0×b1+c1 aj=aj-2×bj-1×bj+bj×cj-1+cj …(2) ここでjは奇数の整数(j=1,3,…,n)であり、前記偶
    数項計算回路が次の式を計算し、 ak=ak-2×bk-1×bk+bk×ck-1+ck …(3) ここでkは偶数の整数(k=2,4,…,n+1)である、請
    求の範囲3に基づくベクトル処理装置。
  5. 【請求項5】前記奇数項計算回路が第1〜第3フィード
    バック線(21A,22A,23A)を備えると共に、 (a)前記加算回路(110A)が第1セレクタ(46A)か
    ら加数を受け取り、 (b)前記乗算回路(17A)が第2および第3セレクタ
    (47A,48A)から乗数および被乗数を受け取り、 (c)前記加算回路(110A)が前記乗算回路で乗算され
    たデータを受け取り、 (d)前記データ記憶回路(112A)が前記加算回路で加
    算されたデータを受け取り、 (e)前記第1セレクタ(46A)が定数0と、前記第2
    バッファ(43)からの前記第2オペランド(ci)と、前
    記第2フィードバック線(22A)を介しての前記データ
    記憶回路(112A)からの前記格納データとを受け取り、 (f)前記第2セレクタ(47A)が前記定数1と、前記
    第1オペランド(bi)と、前記第3フィードバック線
    (23A)を介して前記加算されたデータとを受け取り、 (g)前記第3セレクタ(48A)が前記定数1と、初期
    データ(a0)と、前記第1および第2バッファ(42,4
    3)からの前記第1および第2オペランドと、前記第1
    フィードバック線(21A)を介して前記乗算回路(17A)
    からの前記乗算されたデータとを受け取るように構成さ
    れ、 前記偶数項計算回路が別の第1〜第3フィードバック線
    (21B,22B,23B)を備えると共に、 (h)前記他の加算回路(110B)が第4セレクタ(46
    B)から加数を受け取り、 (i)前記他の乗算回路(17B)が第5および第6セレ
    クタ(47B,48B)から乗数および被乗数を受け取り、 (j)前記他の加算回路(110B)が前記他の乗算回路で
    乗算されたデータを受け取り、 (k)前記他のデータ記憶回路(112B)が前記他の加算
    回路で加算されたデータを受け取り、 (l)前記第4セレクタ(46B)が定数0と、前記第2
    バッファ(43)からの前記第2オペランド(ci)と、前
    記第2フィードバック線(22B)を介して前記データ記
    憶回路(112B)からの前記格納データとを受け取り、 (m)前記第5セレクタ(47B)が前記定数1と、前記
    第1オペランド(bi)と、前記他の第3フィードバック
    線(23B)を介して前記加算されたデータとを受け取
    り、 (n)前記第6セレクタ(48B)が前記定数1と、前記
    初期データ(a0)と、前記第1および第2バッファ(4
    2,43)からの前記第1および第2オペランド(bi,ci)
    と、前記他の第1フィードバック線(21B)を介して前
    記乗算回路(17B)からの前記乗算されたデータとを受
    け取るように構成された、請求の範囲4に基づくベクト
    ル処理装置。
  6. 【請求項6】前記奇数項計算回路(10A)が、 前記第1セレクタ(46A)に接続されてそこからのデー
    タを一時的に格納する第1段の第1データ記憶回路(14
    A)と、 前記第2および第3セレクタ(47A,48A)と前記乗算回
    路(17A)との間に接続され前記第2および第3セレク
    タからのデータを一時的に格納する第1段の第2および
    第3データ記憶回路(15A,16A)と、 前記第1段の第1データ記憶回路と前記加算回路との間
    に接続されて前記第1段の第1データ記憶回路からのデ
    ータを一時的に格納する第2段の第1データ記憶回路
    (18A)と、 前記乗算回路に入力端子が接続され前記加算回路と前記
    第1フィードバック線とに出力端子が接続されて前記乗
    算回路において乗算されたデータを一時的に格納する第
    2段の第2データ記憶回路(19A)と、 前記加算回路と前記データ記憶回路(112A)との間に接
    続されると共に前記第3フィードバック線に接続されて
    前記加算回路において加算されたデータを一時的に格納
    する第3段のデータ記憶回路(111A)とを備え、 前記偶数項計算回路(10B)が、 前記他の第1セレクタ(46B)に接続されてそこからの
    データを一時的に格納する他の第1段の第1データ記憶
    回路(14B)と、 前記他の第2および第3セレクタ(47B,48B)と前記他
    の乗算回路(17B)との間に接続され前記他の第2およ
    び第3セレクタからのデータを一時的に格納する他の第
    1段の第2および第3データ記憶回路(15B,16B)と、 前記他の第1段の第1データ記憶回路と前記他の加算回
    路との間に接続されて前記他の第1段の第1データ記憶
    回路からのデータを一時的に格納する他の第2段の第1
    データ記憶回路(18B)と、 前記他の乗算回路に入力端子が接続され前記他の加算回
    路と前記他の第1フィードバック線とに出力端子が接続
    されて前記他の乗算回路において乗算されたデータを一
    時的に格納する他の第2段の第2データ記憶回路(19
    B)と、 前記他の加算回路と前記他のデータ記憶回路(112B)と
    の間に接続されると共に前記他の第3フィードバック線
    に接続されて前記他の加算回路において加算されたデー
    タを一時的に格納する他の第3段データ記憶回路(111
    B)とを備える、請求の範囲5に基づくベクトル処理装
    置。
  7. 【請求項7】初期演算時において、 前記奇数項計算回路と前記データ分配回路とが協働して
    次の項を2つの演算時間の間に計算し、 a1=a0×b1+c1 a1=a1×1+0 前記偶数項計算回路と前記データ分配回路とが協働して
    次の項を前記2つの演算時間の間に計算し、 a1=a0×b1+c1 a2=a1×b2+c2 前記初期演算時の後の通常演算時において、 前記奇数項計算回路と前記データ分配回路とが協働して
    次の式の各奇数項を各演算時間内に計算し、 aj=aj-2×bj-1×bj+bj×cj-1+cj ここでj=1,3,…,n(n:奇数)であり、 前記偶数項計算回路と前記データ分配回路とが協働して
    次の式の各偶数項を前記演算時間内に計算し、 ak=ak-2×bk-1×bk+bk×ck-1+ck ここでk=2,4,…,n+1(n:奇数)である、 請求の範囲6に基づくベクトル処理装置。
  8. 【請求項8】各前記演算時間が前記ベクトル処理装置に
    おける複数の演算サイクルからなり、 前記演算時間が各項の計算について同一であり、 隣接する項を計算するための隣接する演算時間が部分的
    に重なり合う、請求の範囲7に基づくベクトル処理装
    置。
  9. 【請求項9】前記データ分配回路(40a)が前記第3段
    および前記別の第3段データ記憶回路(110A,110B)か
    らデータを受け取り当該データを前記ベクトル記憶アク
    セスユニット(52)に出力する、請求の範囲8に基づく
    ベクトル処理装置。
  10. 【請求項10】前記ベクトル記憶アクセスユニットが前
    記入力オペランドと前記計算された奇数項および偶数項
    とを一時的に格納するためのベクトルレジスタユニット
    を備え、前記データ分配回路が前記入力オペランドと前
    記計算された奇数項および偶数項を転送する、請求の範
    囲9に基づくベクトル処理装置。
  11. 【請求項11】前記奇数項計算回路が、フィードバック
    線(24A)と、前記フィードバック線(24A)を介して供
    給される計算された奇数項を格納するための直列接続さ
    れた第1および第2データ記憶回路(51A,52A)とを備
    えると共に、 (a)前記加算回路(110A)が第1セレクタ(53A)か
    ら加数を受け取り、 (b)前記乗数回路(17A)が第2および第3セレクタ
    (54A,55A)から乗数および被乗数を受け取り、 (c)前記加算回路(110A)が前記乗算回路で乗算され
    たデータを受け取り、 (d)前記第1データ記憶回路(51A)が前記加算回路
    で加算されたデータを受け取り、 (e)前記第2データ記憶回路(52A)が前記第1デー
    タ記憶回路からデータを受け取り、 (f)前記第1セレクタ(53A)が前記定数0と、前記
    第2バッファ(43)からの前記第2オペランド(ci)
    と、前記第1データ記憶回路からのデータとを受け取
    り、 (g)前記第2セレクタ(54A)が前記定数0と、初期
    データ(a0)と、前記第1および第2オペランド(bi,c
    i)と、前記第1のフィードバック線を介しての前記加
    算回路で加算された前記データとを受け取り、 (h)前記第3セレクタ(55A)が前記定数1と、前記
    第1バッファ(42)からの前記第1オペランドと、前記
    第2データ記憶回路(52A)に格納された前記データを
    受け取るように構成され、 前記偶数項計算回路が、他のフィードバック線(24B)
    と、前記フィードバック線(24B)を介して供給される
    前記計算された偶数項を格納するための直列接続された
    他の第1および第2データ記憶回路(51B,52B)とを備
    えると共に、 (i)前記他の加算回路(110B)が第4セレクタ(53
    B)から加数を受け取り、 (j)前記他の乗算回路(17B)が第5および第6セレ
    クタ(54B,55B)から乗数および被乗数を受け取り、 (k)前記他の加算回路(110B)が前記他の乗算回路で
    乗算されたデータを受け取り、 (l)前記他の第1データ記憶回路(51B)が前記他の
    加算回路で加算されたデータを受け取り、 (m)前記他の第2データ記憶回路(52B)が前記他の
    第1データ記憶回路からデータを受け取り、 (n)前記第4セレクタ(53B)が定数0と、前記第2
    バッファ(43)からの前記第2オペランド(ci)と、前
    記第1データ記憶回路からのデータとを受け取り、 (o)前記第5セレクタ(54B)が前記定数0と、前記
    初期データ(a0)と、前記第1および第2オペランド
    (bi,ci)と、前記他のフィードバック線を介して前記
    他の加算回路で加算された前記データとを受け取り、 (p)前記第6セレクタ(55B)が前記定数1と、前記
    第1バッファ(42)からの前記第1オペランドと、前記
    別の第2データ記憶回路(52B)に格納された前記デー
    タとを受け取るように構成された、請求の範囲4に基づ
    くベクトル処理装置。
  12. 【請求項12】前記奇数項計算回路(10AA)が 前記第1セレクタ(53A)に接続されてそこからのデー
    タを一時的に格納する第1段の第1データ記憶回路(14
    A)と、 前記第2および第3セレクタ(54A,55A)と前記乗算回
    路(17A)との間に接続され前記第2および第3セレク
    タからのデータを一時的に格納する第1段の第2および
    第3データ記憶回路(15A,16A)と、 前記第1段の第1データ記憶回路と前記加算回路との間
    に接続されて前記第1段の第1データ記憶回路からのデ
    ータを一時的に格納する第2段の第1データ記憶回路
    (18A)と、 前記乗算回路に入力端子が接続された前記加算回路に出
    力端子が接続されて前記乗算回路において乗算されたデ
    ータを一時的に格納する第2段の第2データ記憶回路
    (19A)と、 前記加算回路と前記データ記憶回路(51A)との間に前
    記フィードバック線を介して接続されて前記加算回路に
    おいて加算されたデータを一時的に格納する第3段デー
    タ記憶回路(111A)とを備え、 前記偶数項計算回路(10BB)が、 前記他の第1セレクタ(53B)に接続されてそこからの
    データを一時的に格納する別の第1段の第1データ記憶
    回路(14B)と、 前記他の第2および第3セレクタ(54B,55B)と前記他
    の乗算回路(17B)との間に接続されて前記他の第2お
    よび第3セレクタからのデータを一時的に格納する他の
    第1段の第2および第3データ記憶回路(15B,16B)
    と、 前記他の第1段の第1データ記憶回路と前記他の加算回
    路との間に接続されて前記他の第1段の第1データ記憶
    回路からのデータを一時的に格納する別の第2段の第1
    データ記憶回路(18B)と、 前記他の乗算回路に入力端子が接続され前記他の加算回
    路に出力端子が接続されて前記他の乗算回路において乗
    算されたデータを一時的に格納する他の第2段の第2デ
    ータ記憶回路(19B)と、 前記他の加算回路と前記他のデータ記憶回路(51B)と
    の間に前記他のフィードバック線を介して接続されて前
    記他の加算回路において加算されたデータを一時的に格
    納する他の第3段データ記憶回路(111B)とを備える、
    請求の範囲11に基づくベクトル処理装置。
  13. 【請求項13】初期演算時において、 前記奇数項計算回路と前記データ分配回路とが協働して
    次の項を2つの演算時間の間に計算し、 a1=a0×b1+c1 a1=a1×1+0 前記偶数項計算回路と前記データ分配回路とが協働して
    次の項を前記2つの演算時間の間に計算し、 a1=a0×b1+c1 a2=a1×b2+c2 前記初期演算時の後の通常演算時において、 前記奇数項計算回路と前記データ分配回路とが協働して
    次の式の各奇数項を各演算時間内に計算し、 aj=aj-2×bj-1×bj+bj×cj-1+cj ここでj=1,3,…,n(n:奇数)であり、 前記偶数項計算回路と前記データ分配回路とが協働して
    次の式の各偶数項を前記演算時間内に計算し、 ak=ak-2×bk-1×bk+bk×ck-1+ck ここでk=2,4,…,n+1(n:奇数)である、 請求の範囲12に基づくベクトル処理装置。
  14. 【請求項14】各前記演算時間が前記ベクトル処理装置
    における複数の演算サイクルからなり、 前記演算時間が各項の計算について同一であり、 隣接する項を計算するための隣接する演算時間が部分的
    に重なり合う、請求の範囲13に基づくベクトル処理装
    置。
  15. 【請求項15】前記データ分配回路(40b)が前記第3
    段および前記他の第3段データ記憶回路(110A,110B)
    からデータを受け取り当該データを前記ベクトル記憶ア
    クセスユニット(52)に出力する。請求の範囲14に基づ
    くベクトル処理装置。
  16. 【請求項16】前記ベクトル記憶アクセスユニットが前
    記入力オペランドと前記計算された奇数項および偶数項
    とを一時的に格納するためのベクトルレジスタユニット
    を備え、前記データ分配回路が前記入力オペランドと前
    記計算された奇数項および偶数項を転送する、請求の範
    囲15に基づくベクトル処理装置。
JP63504021A 1987-05-14 1988-05-14 再帰方程式を高速で処理するベクトル処理装置 Expired - Fee Related JPH077389B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63504021A JPH077389B2 (ja) 1987-05-14 1988-05-14 再帰方程式を高速で処理するベクトル処理装置

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP11771987 1987-05-14
JP62-117719 1987-05-14
PCT/JP1988/000464 WO1988009016A1 (en) 1987-05-14 1988-05-14 Vector processor for processing recurrent equations at a high speed
JP63504021A JPH077389B2 (ja) 1987-05-14 1988-05-14 再帰方程式を高速で処理するベクトル処理装置

Publications (2)

Publication Number Publication Date
JPH01501264A JPH01501264A (ja) 1989-04-27
JPH077389B2 true JPH077389B2 (ja) 1995-01-30

Family

ID=14718599

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63504021A Expired - Fee Related JPH077389B2 (ja) 1987-05-14 1988-05-14 再帰方程式を高速で処理するベクトル処理装置

Country Status (6)

Country Link
US (1) US4949292A (ja)
EP (1) EP0314809B1 (ja)
JP (1) JPH077389B2 (ja)
KR (1) KR920004772B1 (ja)
DE (1) DE3882487T2 (ja)
WO (1) WO1988009016A1 (ja)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5226135A (en) * 1987-09-25 1993-07-06 Hitachi, Ltd. Method for sorting vector data on the basis of partial vectors and vector processor
JP3068138B2 (ja) * 1989-04-06 2000-07-24 甲府日本電気株式会社 ベクトル演算処理装置
JP2658397B2 (ja) * 1989-06-13 1997-09-30 日本電気株式会社 マルチプロセッサシステム
US5179531A (en) * 1990-04-27 1993-01-12 Pioneer Electronic Corporation Accelerated digital signal processor
JPH04177462A (ja) * 1990-11-08 1992-06-24 Koufu Nippon Denki Kk ベクトル総和演算装置
DE4036455C1 (ja) * 1990-11-15 1992-04-02 Siemens Ag, 8000 Muenchen, De
JP3237858B2 (ja) * 1991-01-30 2001-12-10 沖電気工業株式会社 演算装置
JPH0628485A (ja) * 1992-07-09 1994-02-04 Toshiba Corp テクスチャーアドレス生成器、テクスチャーパターン生成器、テクスチャー描画装置及びテクスチャーアドレス生成方法
US5390136A (en) * 1993-06-14 1995-02-14 Motorola, Inc. Artificial neuron and method of using same
US5517667A (en) * 1993-06-14 1996-05-14 Motorola, Inc. Neural network that does not require repetitive training
US5446651A (en) * 1993-11-30 1995-08-29 Texas Instruments Incorporated Split multiply operation
CA2135857A1 (en) * 1994-01-03 1995-07-04 Shay-Ping Thomas Wang Neural network utilizing logarithmic function and method of using same
JPH08241301A (ja) * 1995-03-07 1996-09-17 Nec Corp 直交変換処理装置
US5553012A (en) * 1995-03-10 1996-09-03 Motorola, Inc. Exponentiation circuit utilizing shift means and method of using same
US5685008A (en) * 1995-03-13 1997-11-04 Motorola, Inc. Computer Processor utilizing logarithmic conversion and method of use thereof
JP2636789B2 (ja) * 1995-03-31 1997-07-30 日本電気株式会社 マイクロプロセッサ
US5668749A (en) * 1995-05-04 1997-09-16 Motorola, Inc. Circuit for performing arithmetic operations in a demodulator
US5644520A (en) * 1995-05-31 1997-07-01 Pan; Shao Wei Accumulator circuit and method of use thereof
US5771391A (en) * 1995-08-28 1998-06-23 Motorola Inc. Computer processor having a pipelined architecture and method of using same
FR2745647B3 (fr) * 1996-03-01 1998-05-29 Sgs Thomson Microelectronics Coprocesseur d'arithmetique modulaire permettant de realiser des operations non modulaires rapidement
JPH1055352A (ja) * 1996-08-08 1998-02-24 Fuji Xerox Co Ltd 浮動小数点数累積加算装置
FR2758195B1 (fr) * 1997-01-09 1999-02-26 Sgs Thomson Microelectronics Coprocesseur d'arithmetique modulaire comprenant deux circuits de multiplication operant en parallele
KR100287894B1 (ko) * 1998-03-05 2001-05-02 김영환 콤필터의미분기
US6748411B1 (en) 2000-11-20 2004-06-08 Agere Systems Inc. Hierarchical carry-select multiple-input split adder
US7454701B2 (en) * 2003-10-30 2008-11-18 Sap Ag Systems and methods for implementing formulas
US20070074008A1 (en) * 2005-09-28 2007-03-29 Donofrio David D Mixed mode floating-point pipeline with extended functions

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60136875A (ja) * 1983-12-26 1985-07-20 Hitachi Ltd ベクトル演算器
EP0167061A3 (en) * 1984-06-20 1988-07-27 Convex Computer Corporation Vector processing computer
JPH0650512B2 (ja) * 1984-07-11 1994-06-29 日本電気株式会社 デ−タ処理装置

Also Published As

Publication number Publication date
EP0314809B1 (en) 1993-07-21
JPH01501264A (ja) 1989-04-27
US4949292A (en) 1990-08-14
DE3882487T2 (de) 1993-11-04
EP0314809A1 (en) 1989-05-10
WO1988009016A1 (en) 1988-11-17
KR890702149A (ko) 1989-12-23
DE3882487D1 (de) 1993-08-26
KR920004772B1 (ko) 1992-06-15

Similar Documents

Publication Publication Date Title
JPH077389B2 (ja) 再帰方程式を高速で処理するベクトル処理装置
US5081573A (en) Parallel processing system
US8024394B2 (en) Dual mode floating point multiply accumulate unit
JP2651267B2 (ja) 演算処理装置及び演算処理方法
JPS6347874A (ja) 算術演算装置
JPS62233884A (ja) ベクトル・プロセツサ
US4150434A (en) Matrix arithmetic apparatus
JPH0368416B2 (ja)
US6675286B1 (en) Multimedia instruction set for wide data paths
JPH0477932B2 (ja)
JPH05181896A (ja) 離散コサイン変換処理装置
EP1936492A1 (en) SIMD processor with reduction unit
JPS6373472A (ja) 積和演算方法
JPS6310263A (ja) ベクトル処理装置
JPS6222178A (ja) 2つの複素数の乗算のための乗算器
WO2008077803A1 (en) Simd processor with reduction unit
JP3691538B2 (ja) ベクトルデータ加算方法及びベクトルデータ乗算方法
JPH02114324A (ja) 乗算器
JPH0445860B2 (ja)
JPS61101872A (ja) 高速フ−リエ変換演算回路
JPH02235174A (ja) バス・マトリツクス
JPH06301710A (ja) 倍精度積和演算方法および装置
JP3460780B2 (ja) 数値演算装置
JPH0434191B2 (ja)
JPH0343865A (ja) ベクトル・データ処理装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees