JPH083812B2 - 関数演算制御方法 - Google Patents
関数演算制御方法Info
- Publication number
- JPH083812B2 JPH083812B2 JP12318485A JP12318485A JPH083812B2 JP H083812 B2 JPH083812 B2 JP H083812B2 JP 12318485 A JP12318485 A JP 12318485A JP 12318485 A JP12318485 A JP 12318485A JP H083812 B2 JPH083812 B2 JP H083812B2
- Authority
- JP
- Japan
- Prior art keywords
- index
- vector
- value
- data
- argument
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8053—Vector processors
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Complex Calculations (AREA)
Description
【発明の詳細な説明】 〔概要〕 ベクトルデータ等の関数演算の制御方法である。関数
計算に使用する、例えば近似多項式の係数等にすべき常
数が複数組あり、引数の値によって、その1組を決定し
て演算に使用する場合に、該常数に索引ケーブルを複数
個重複して記憶し、索引順序の連続するテーブル索引
は、異なるテーブルにアクセスするようにして、同一の
項の読出し競合による、処理の遅延を生じ難くする。
計算に使用する、例えば近似多項式の係数等にすべき常
数が複数組あり、引数の値によって、その1組を決定し
て演算に使用する場合に、該常数に索引ケーブルを複数
個重複して記憶し、索引順序の連続するテーブル索引
は、異なるテーブルにアクセスするようにして、同一の
項の読出し競合による、処理の遅延を生じ難くする。
本発明は、計算機システムにおける、ベクトルデータ
等の関数演算の制御方法に関する。
等の関数演算の制御方法に関する。
近似多項式を使用する、関数の近似値計算において、
所望の近似精度を得る等のために、引数の値の範囲によ
って、例えば異なる係数値を使用する方式が一般に使用
されている。
所望の近似精度を得る等のために、引数の値の範囲によ
って、例えば異なる係数値を使用する方式が一般に使用
されている。
この場合に、係数値はテーブルに構成され、関数演算
に際し、引数から所定の方法で定まるインデクスによ
り、該テーブルを索引することによって、1組の係数を
得る。
に際し、引数から所定の方法で定まるインデクスによ
り、該テーブルを索引することによって、1組の係数を
得る。
従って、関数演算の高速化のためには、該テーブル索
引も高速に実行するようにすることが必要である。
引も高速に実行するようにすることが必要である。
第2図はベクトル処理装置を有する計算機システムの
構成を示すブロック図である。
構成を示すブロック図である。
図において、1はベクトル処理装置、2は主記憶装置
であり、ベクトル処理装置1では、実行制御部3の制御
の下に、主記憶アクセス制御部4が、ベクトルレジスタ
5と主記憶装置2との間のデータ転送を制御し、演算制
御部6はベクトルレジスタ5のデータを読み出して処理
し、処理結果をベクトルレジスタ5に格納する。
であり、ベクトル処理装置1では、実行制御部3の制御
の下に、主記憶アクセス制御部4が、ベクトルレジスタ
5と主記憶装置2との間のデータ転送を制御し、演算制
御部6はベクトルレジスタ5のデータを読み出して処理
し、処理結果をベクトルレジスタ5に格納する。
関数演算においては、前記のように、関数の近似値計
算式の例えば係数の値を、引数(該計算式の変数に代入
すべき数)の値によって異なる値をとるようにすること
により、所要の計算精度を維持する方式がとられるもの
とする。
算式の例えば係数の値を、引数(該計算式の変数に代入
すべき数)の値によって異なる値をとるようにすること
により、所要の計算精度を維持する方式がとられるもの
とする。
一例として、関数が平方根の場合の一演算方式におい
ては、先ず引数xを、範囲が1/16≦x′<1になるよう
なx′に変換して、x′について平方根を求め、結果を
逆変換によってxに対応する平方根に戻す方法により、
所定の最大値までの正数xの平方根計算を行う。
ては、先ず引数xを、範囲が1/16≦x′<1になるよう
なx′に変換して、x′について平方根を求め、結果を
逆変換によってxに対応する平方根に戻す方法により、
所定の最大値までの正数xの平方根計算を行う。
こゝで、該変換は、公知の16の冪乗形式の浮動小数点
数の場合には、原理的には、いわゆる正規化された形式
のxの指数部を0にする操作で、x′が得られ、逆変換
はx′から得られる結果の指数部にxの指数部の1/2を
加える操作となる。
数の場合には、原理的には、いわゆる正規化された形式
のxの指数部を0にする操作で、x′が得られ、逆変換
はx′から得られる結果の指数部にxの指数部の1/2を
加える操作となる。
x′の平方根の近似値計算は、x′の関数であるy′
を初期値として、公知のいわゆるニュートンの反復法に
よるが、この初期値y′は、下記のように、x′の範囲
を例えば4領域に分けて、各領域ごとに異なる係数ai、
biを持つ計算式によって求めることにより、x′の全範
囲について、一定の反復回数によって、所要の近似精度
がえられるようにする。
を初期値として、公知のいわゆるニュートンの反復法に
よるが、この初期値y′は、下記のように、x′の範囲
を例えば4領域に分けて、各領域ごとに異なる係数ai、
biを持つ計算式によって求めることにより、x′の全範
囲について、一定の反復回数によって、所要の近似精度
がえられるようにする。
1/16≦x′<1/8のとき y′=a0x′+b0 1/8 ≦x′<1/4のとき y′=a1x′+b1 1/4 ≦x′<1/2のとき y′=a2x′+b2 1/2 ≦x′<1 のとき y′=a3x′+b3 このような関数の近似値計算を、ベクトルデータにつ
いて実行する場合には、例えばまず主記憶アクセス制御
部4によって、主記憶装置2上のベクトルデータxを、
ベクトルレジスタ5に読み込み、演算部6がこれを変換
してx′のデータベクトル10(第3図)を生成する。
いて実行する場合には、例えばまず主記憶アクセス制御
部4によって、主記憶装置2上のベクトルデータxを、
ベクトルレジスタ5に読み込み、演算部6がこれを変換
してx′のデータベクトル10(第3図)を生成する。
次に、演算部6は、このデータベクトル10の各要素デ
ータから、前記係数を保持する常数テーブルを索引する
ためのインデクスとなるビット列を抽出して、インデク
スベクトル11(第3図)をベクトルレジスタ5に作成す
る。
ータから、前記係数を保持する常数テーブルを索引する
ためのインデクスとなるビット列を抽出して、インデク
スベクトル11(第3図)をベクトルレジスタ5に作成す
る。
このインデクスは、例えば前記形式で正規化された浮
動小数点数x′の、仮数部の上位3ビットをそのまゝ使
用する。
動小数点数x′の、仮数部の上位3ビットをそのまゝ使
用する。
主記憶アクセス制御部4は、主記憶装置2に格納され
ている常数テーブル12(第3図)の先頭アドレスとイン
デクスベクトル11を使って、常数テーブル12から常数を
読み出し、ベクトルレジスタ5に格納する。
ている常数テーブル12(第3図)の先頭アドレスとイン
デクスベクトル11を使って、常数テーブル12から常数を
読み出し、ベクトルレジスタ5に格納する。
こゝで常数テーブル12は係数aiとbiの対の値を各項に
保持するテーブルとし、前記のようにして定まるインデ
クスによって索引するために、例えば、一部に同一係数
を重複して含む、8項からなる構成のテーブルとする。
保持するテーブルとし、前記のようにして定まるインデ
クスによって索引するために、例えば、一部に同一係数
を重複して含む、8項からなる構成のテーブルとする。
演算部6は、主記憶アクセス制御部4の制御と並行し
て、ベクトルレジスタ5のデータベクトル10のデータを
引数とする近似計算を、前記の逐次読み出される常数を
使用して、例えばパイプライン方式の演算回路によって
実行する。
て、ベクトルレジスタ5のデータベクトル10のデータを
引数とする近似計算を、前記の逐次読み出される常数を
使用して、例えばパイプライン方式の演算回路によって
実行する。
第3図に例示するデータベクトル10の場合の、第2、
第3、第4の要素データ14、15、16等のように、同一の
値の範囲のデータは、当然常数テーブル12上の同一項を
読み出すことになるので、この場合のように、そのよう
な関係のデータが連続すると、主記憶装置2に対して、
同一アドレスのアクセス要求が続くことになり、後続の
アクセス要求が、前の要求によるアクセスの実行完了ま
で、待たされることが生じ得る。
第3、第4の要素データ14、15、16等のように、同一の
値の範囲のデータは、当然常数テーブル12上の同一項を
読み出すことになるので、この場合のように、そのよう
な関係のデータが連続すると、主記憶装置2に対して、
同一アドレスのアクセス要求が続くことになり、後続の
アクセス要求が、前の要求によるアクセスの実行完了ま
で、待たされることが生じ得る。
即ち、比較的大型の計算機システムにおける、主記憶
装置では、公知のように、いわゆるインタリーブ等の方
法によって、近接する記憶領域の異なるアドレスのアク
セスは、並行して実行できるような構成がとられるの
で、一般に高いスループットでデータを読み出すことが
可能である。
装置では、公知のように、いわゆるインタリーブ等の方
法によって、近接する記憶領域の異なるアドレスのアク
セスは、並行して実行できるような構成がとられるの
で、一般に高いスループットでデータを読み出すことが
可能である。
しかし、そのような場合でも前記のような同一のアド
レスへのアクセスは、直列に処理するほかなく、その結
果、ベクトル処理装置5においては、演算部6に対する
データ供給の流れが遅滞して、処理性能の低下を生じる
という問題がある。
レスへのアクセスは、直列に処理するほかなく、その結
果、ベクトル処理装置5においては、演算部6に対する
データ供給の流れが遅滞して、処理性能の低下を生じる
という問題がある。
第1図は、本発明の構成を示すブロック図である。
図において、20−0、20−1、……は、それぞれ主記
憶装置2に設けられる同一の内容の常数テーブル、21は
ベクトルレジスタ5に生成されるインデクスベクトルを
示す。
憶装置2に設けられる同一の内容の常数テーブル、21は
ベクトルレジスタ5に生成されるインデクスベクトルを
示す。
近似計算式の係数等を決定するための常数テーブル
を、従来と同様の内容で、但し20−0、20−1、20−2
等で示すように、主記憶装置2に重複して、複数個設け
る。
を、従来と同様の内容で、但し20−0、20−1、20−2
等で示すように、主記憶装置2に重複して、複数個設け
る。
演算部6は、常数ケーブル索引のためのインデクス生
成において、先ず従来と同様に、ベクトルデータ10から
抽出するビット列で第1次のインデクスベクトル11を作
るが、その各インデクスの上位に、順次異なる常数テー
ブル20−0、20−1、……を指定するためのビット列を
付加することにより、索引順序(ベクトル上の配列順
序)の上で連続するインデクスは、異なる常数テーブル
を指示するようにして、インデクスベクトル21を生成す
る。
成において、先ず従来と同様に、ベクトルデータ10から
抽出するビット列で第1次のインデクスベクトル11を作
るが、その各インデクスの上位に、順次異なる常数テー
ブル20−0、20−1、……を指定するためのビット列を
付加することにより、索引順序(ベクトル上の配列順
序)の上で連続するインデクスは、異なる常数テーブル
を指示するようにして、インデクスベクトル21を生成す
る。
記憶アクセス制御部4は、インデクスベクトル21を使
って、主記憶装置2の常数テーブル20−0、20−1、…
…にアクセスする。
って、主記憶装置2の常数テーブル20−0、20−1、…
…にアクセスする。
この構成により、例えば常数テーブルを4個重複して
設ければ、同一項へのアクセスが4個まで連続しても、
主記憶装置2のアクセスの待合せは生じないようになる
ので、係数等の取得の遅滞発生を大幅に減少することが
できる。
設ければ、同一項へのアクセスが4個まで連続しても、
主記憶装置2のアクセスの待合せは生じないようになる
ので、係数等の取得の遅滞発生を大幅に減少することが
できる。
第1図は、前記従来例の説明の場合と同じデータの近
似計算を行うものとして、本発明の実施例構成を示す。
似計算を行うものとして、本発明の実施例構成を示す。
近似計算式の係数等を決定するための常数テーブルの
内容は、従来と同様でよい。そのような常数テーブルを
20−0、20−1、20−2、20−3で示すように、主記憶
装置2に複数個(本例は4個)重複して設ける。
内容は、従来と同様でよい。そのような常数テーブルを
20−0、20−1、20−2、20−3で示すように、主記憶
装置2に複数個(本例は4個)重複して設ける。
主記憶装置2における、各常数テーブル20−0〜20−
3の記憶領域は、必ずしも連続する必要は無いが、一般
に連続領域の方が制御が簡単であり、以下には、連続領
域として説明する。
3の記憶領域は、必ずしも連続する必要は無いが、一般
に連続領域の方が制御が簡単であり、以下には、連続領
域として説明する。
演算部6は、常数テーブル索引のためのインデクス生
成において、先ず従来と同様に、ベクトルデータ10から
抽出するビット列で第1次のインデクスベクトル11を作
り、その各インデクスの上位に0、1、2、3を表すビ
ット列を順次付加して、インデクスベクトル21を生成す
る。
成において、先ず従来と同様に、ベクトルデータ10から
抽出するビット列で第1次のインデクスベクトル11を作
り、その各インデクスの上位に0、1、2、3を表すビ
ット列を順次付加して、インデクスベクトル21を生成す
る。
これにより、記憶アクセス制御部4が、従来のよう
に、常数テーブル20−0の先頭アドレスをベースアドレ
スとして、インデクスベクトル21を使って、主記憶装置
2にアクセスすると、インデクスベクトル21の、隣接す
る各インデクスは、順次異なる常数テーブル20−0〜20
−3を指定するようになる。
に、常数テーブル20−0の先頭アドレスをベースアドレ
スとして、インデクスベクトル21を使って、主記憶装置
2にアクセスすると、インデクスベクトル21の、隣接す
る各インデクスは、順次異なる常数テーブル20−0〜20
−3を指定するようになる。
以上の説明から明らかなように、本発明によれば、計
算機システムにおいて、ベクトルデータ等の関数演算の
処理性能を改善するという著しい工業的効果がある。
算機システムにおいて、ベクトルデータ等の関数演算の
処理性能を改善するという著しい工業的効果がある。
第1図は本発明の実施例構成ブロック図、 第2図は計算機システムの構成例ブロック図、 第3図は従来の一構成例ブロック図である。 図において、 1はベクトル処理装置、2は主記憶装置、3は実行制御
部、5はベクトルレジスタ、4は主記憶アクセス制御
部、6は演算部、10はデータベクトル、11、21はインデ
クスベクトル、12、20−0〜20−3は常数テーブルを示
す。
部、5はベクトルレジスタ、4は主記憶アクセス制御
部、6は演算部、10はデータベクトル、11、21はインデ
クスベクトル、12、20−0〜20−3は常数テーブルを示
す。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 秋田 典伸 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (56)参考文献 特開 昭50−26439(JP,A) 実開 昭57−50756(JP,U)
Claims (1)
- 【請求項1】引数に対する関数の値を近似計算するため
に使用する常数を、該引数の値に基づいてテーブルを索
引して決定するに際し、 該テーブルを複数個重複してテーブル記憶手段に記憶
し、 各該引数の値に基づいて該テーブルの各所要の該常数を
保持する項を指示する値であって、所定の索引順序の上
で互いに連続する該引数に対応する場合には、該テーブ
ル記憶手段上で互いに異なる位置にある該テーブルの該
項を指示する値としたインデクスを生成して、インデク
ス記憶手段に保持し、 該索引順序に従って、該インデクス記憶手段の保持する
該インデクスにより該テーブル記憶手段の該テーブルを
索引して、各該引数のための該常数を決定するように構
成されていることを特徴とする関数演算制御方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP12318485A JPH083812B2 (ja) | 1985-06-06 | 1985-06-06 | 関数演算制御方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP12318485A JPH083812B2 (ja) | 1985-06-06 | 1985-06-06 | 関数演算制御方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS61281366A JPS61281366A (ja) | 1986-12-11 |
| JPH083812B2 true JPH083812B2 (ja) | 1996-01-17 |
Family
ID=14854267
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP12318485A Expired - Fee Related JPH083812B2 (ja) | 1985-06-06 | 1985-06-06 | 関数演算制御方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH083812B2 (ja) |
-
1985
- 1985-06-06 JP JP12318485A patent/JPH083812B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPS61281366A (ja) | 1986-12-11 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5226171A (en) | Parallel vector processing system for individual and broadcast distribution of operands and control information | |
| JPH0371337A (ja) | マイクロプロセツサ回路 | |
| JPS6132437Y2 (ja) | ||
| JPH05165715A (ja) | 情報処理装置 | |
| JPH0319986B2 (ja) | ||
| JPH036546B2 (ja) | ||
| EP0253956B1 (en) | An addressing technique for providing simultaneous read modify and write operations with serpentine configured rams | |
| US3973243A (en) | Digital image processor | |
| JPH083812B2 (ja) | 関数演算制御方法 | |
| JPH0766372B2 (ja) | 浮動小数点演算処理装置 | |
| CN115098058B (zh) | 轨迹多项式生成装置 | |
| Delcaro et al. | A method for transposing externally stored matrices | |
| JP2895892B2 (ja) | データ処理装置 | |
| JPH0319985B2 (ja) | ||
| JPH03256130A (ja) | 割込要因検索方式 | |
| JPH045218B2 (ja) | ||
| JPH0137774B2 (ja) | ||
| JPS6362012B2 (ja) | ||
| JPH0547856B2 (ja) | ||
| JPH0319988B2 (ja) | ||
| JPS6027047A (ja) | デ−タ処理装置 | |
| JPH04174071A (ja) | ハッシュ処理装置 | |
| Frumkin | A fast parallel algorithm for eigenvalue problem of jacobi matrices | |
| JPH0248941B2 (ja) | Tajigenrisangatafuuriehenkankeisanhoshiki | |
| JPS61173357A (ja) | アドレス変換方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |