JPH04252372A - 可変パイプライン構造 - Google Patents

可変パイプライン構造

Info

Publication number
JPH04252372A
JPH04252372A JP3008758A JP875891A JPH04252372A JP H04252372 A JPH04252372 A JP H04252372A JP 3008758 A JP3008758 A JP 3008758A JP 875891 A JP875891 A JP 875891A JP H04252372 A JPH04252372 A JP H04252372A
Authority
JP
Japan
Prior art keywords
arithmetic
pipeline
selector
calculation
register
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.)
Pending
Application number
JP3008758A
Other languages
English (en)
Inventor
Yutaka Tashiro
豊 田代
Toshihiro Minami
俊宏 南
Hiroki Yamauchi
寛紀 山内
Yutaka Suzuki
豊 鈴木
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP3008758A priority Critical patent/JPH04252372A/ja
Publication of JPH04252372A publication Critical patent/JPH04252372A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Complex Calculations (AREA)

Abstract

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、主にDSP(Degi
tal SignalProcessor)に用いられ
る演算ユニットの構造に関する。特に、DCT(Dis
crete Cosine Transform)の高
速アルゴリズムにおけるバタフライ演算その他を行う可
変パイプライン構造に関する。
【0002】
【従来の技術】従来のDSPにおける演算器は、乗算器
と累算器を縦続接続したものでハードウェアとして固定
になっており、常に乗累算のみを実行する構造になって
いた。したがって、このDSPのアプリケーション・ア
ルゴリズムにおいて、例えばDCTの高速アルゴリズム
のように乗累算以外の演算パスが必要な場合には、その
アルゴリズムを複数の処理に分割して実行していた。
【0003】
【発明が解決しようとする課題】このように、従来構造
では扱うアルゴリズムに応じてパイプライン演算を分割
する必要が生じ、分割に伴うプログラム設計が別途必要
であった。さらに、パイプライン演算を分割する際にそ
の間で処理するデータを一時蓄積する必要があり、それ
にメモリを用いた場合には、処理されるベクトル・デー
タの要素データ数分の読み出しおよび書き込みに用いる
電力が余計にかかっていた。
【0004】本発明は、パイプライン演算目的に応じた
パイプライン構造を形成し、複数のパイプライン演算ユ
ニットに跨がる処理を可能にする可変パイプライン構造
を提供することを目的とする。
【0005】
【課題を解決するための手段】本発明は、並列に配置さ
れる複数のパイプライン演算器において、複数のパイプ
ライン演算器間を所定の演算目的に対応して相互に接続
する専用パスと、前記演算目的に応じて設定されるイン
ストラクション情報により、前記専用パスを介して他方
のパイプライン演算器との接続を行うか否かを設定する
セレクタとを備えたことを特徴とする。
【0006】
【作用】本発明は、演算目的に応じて複数のパイプライ
ン演算器間に専用パスを設定することにより、複数のパ
イプライン演算器間に跨がるパイプラインパスを構成す
ることができ、1回のパイプライン処理で所期の演算を
実現することができる。なお、専用パスは演算目的に応
じたインストラクションによりセレクタの動作を指定す
ることにより設定され、演算パイプライン構造を可変に
することができる。
【0007】
【実施例】図1は、本発明の第一実施例構成を示す図で
ある。図において、演算ユニット100,200は、そ
れぞれ複合演算ステージ110,210、乗算ステージ
120,220、累算ステージ130,230が縦続に
接続された3段パイプライン構造を有している。各演算
ユニットは、通常は各入力データを独立かつ並列に処理
し、各々の処理結果を出力する。
【0008】ここで、複合演算ステージ110は、レジ
スタ111,112、セレクタ113、加減算器(AS
U)114、バレルシフタ115、算術論理演算器(A
LU)117、セレクタ118を有する。乗算ステージ
120は、レジスタ121,122、乗算器(MPL)
123を有する。累算ステージ130は、レジスタ13
1、セレクタ132、累算器(ACC)134、バレル
シフタ135、レジスタ136,137、セレクタ13
8,139を有する。
【0009】また、演算ユニット200の複合演算ステ
ージ210,乗算ステージ220,累算ステージ230
においても同様である(1**:2**)。本実施例の
特徴は、算術論理演算器117,217の入力段にセレ
クタ116,216を設け、このセレクタを介して他方
の演算ユニットの加減算器214,114の出力を取り
込む専用パス(太線)を設けるところにある。すなわち
、演算ユニット100と演算ユニット200とを相互に
接続する専用パスを形成し、バタフライ演算を行う構造
を実現させるものである。
【0010】なお、インストラクションで各セレクタの
動作を制御するコントロールレジスタはここでは省略し
ているが、このコントロールレジスタに演算目的に応じ
た演算パイプライン構造を形成するデータを設定する。 図2は、バタフライ演算構造の等価回路構成を示す図で
ある。ここでは、演算ユニット100のセレクタ116
が、演算ユニット200の加減算器214の出力を算術
論理演算器117に入力させ、演算ユニット200のセ
レクタ216が、演算ユニット100の加減算器114
の出力を算術論理演算器217に入力させる構成である
【0011】以下、図3に示すバタフライ演算処理の説
明図を参照して、その動作を説明する。なお、DCTの
場合にはW0 =W1 =1である。演算ユニット10
0の入力信号をa,bとし、演算ユニット200の入力
信号をc,dとすると、各加減算器114,214はそ
れぞれ a+b c+d を演算する。続いて、算術論理演算器117には、バレ
ルシフタ115を介して加減算器114の出力と、セレ
クタ116を介して加減算器214の出力が入力される
。算術論理演算器217には、バレルシフタ215を介
して加減算器214の出力と、セレクタ216を介して
加減算器114の出力が入力される。したがって、各算
術論理演算器117,217はそれぞれ(a+b)+(
c+d) (a+b)−(c+d) を算出し、レジスタ121,221にそれぞれラッチさ
れる。このような構成により、図3に示すバタフライ演
算のパイプライン化を可能にすることができる。
【0012】図4は、本発明の第二実施例構成を示す図
である。図において、演算ユニット100,200,3
00,400は、それぞれ複合演算ステージ110,2
10,310,410、乗算ステージ120,220,
320,420、累算ステージ130,230,330
,430が縦続に接続された3段パイプライン構造を有
している。各演算ユニットは、通常は各入力データを独
立かつ並列に処理し、各々の処理結果を出力する。
【0013】ここで、複合演算ステージ110および乗
算ステージ120は、図1に示すものと同じであるので
、その詳細については省略する。累算ステージ130は
、レジスタ131、セレクタ132、累算器(ACC)
134、バレルシフタ135、レジスタ136,137
、セレクタ138,139を有する。また、他の演算ユ
ニットの複合演算ステージ210,310,410、乗
算ステージ220,320,420、累算ステージ23
0,330,430においても同様である(1**:2
**:3**:4**)。
【0014】本実施例の特徴は、累算器134,234
,334,434の入力段にセレクタ133,233,
333,433を設け、セレクタ133を介して演算ユ
ニット200のレジスタ231の出力を演算ユニット1
00の累算器134に取り込む専用パスP1 と、セレ
クタ433を介して演算ユニット300のレジスタ33
1の出力を演算ユニット400の累算器434に取り込
む専用パスP2 と、セレクタ332を介して演算ユニ
ット100のセレクタ139の出力を演算ユニット30
0の累算器334に取り込む専用パスP3 と、セレク
タ333を介して演算ユニット400のセレクタ439
の出力を演算ユニット300の累算器334に取り込む
専用パスP4 と、セレクタ232を介して演算ユニッ
ト300のセレクタ339の出力を演算ユニット200
の累算器234に取り込む専用パスP5 とを設ける。 すなわち、演算ユニット100〜400のすべてを接続
して総和演算構造を実現させるものである。
【0015】なお、インストラクションで各セレクタの
動作を制御するコントロールレジスタはここでは省略し
ているが、このコントロールレジスタに演算目的に応じ
た演算パイプライン構造を形成するデータを設定する。 図5は、総和演算構造の等価回路構成を示す図である。 ここで、演算ユニット100の入力信号をai ,bi
 とし、演算ユニット200の入力信号をci ,di
 とし、演算ユニット300の入力信号をei ,fi
 とし、演算ユニット400の入力信号をgi ,hi
 とすると、各加減算器114,214,314,41
4(図1参照)はそれぞれ ai +bi  ci +di  ei +fi  gi +hi  を演算する。なお、この出力を算術論理演算器117,
217,317,417(図1参照)でさらに処理して
もよく、その出力がレジスタ121,221,321,
421(図1参照)にラッチされる。続いて、レジスタ
122,222,322,422(図1参照)にそれぞ
れα,β,γ,δをあらかじめ設定しておき、乗算器1
23,223,323,423(図1参照)で各レジス
タの内容を乗算することにより、レジスタ131,23
1,331,431にはそれぞれ α(ai +bi ) β(ci +di ) γ(ei +fi ) δ(gi +hi ) がラッチされる。ここで、説明を容易にするためにα=
β=γ=δ=1 とする。以下、図6に示す総和演算処理の説明図を参照
して、その動作について説明する。
【0016】演算ユニット100の累算器134には、
セレクタ132を介してレジスタ131の出力およびセ
レクタ133を介してレジスタ231の出力が入力され
、その演算結果はレジスタ136にラッチされる。また
、演算ユニット400の累算器434には、セレクタ4
32を介してレジスタ431の出力およびセレクタ43
3を介してレジスタ331の出力が入力され、その演算
結果はレジスタ436にラッチされる。このとき、各レ
ジスタ136,436の内容はそれぞれ(ai +bi
 )+(ci +di )(ei +fi )+(gi
 +hi )となる。
【0017】さらに、レジスタ136の出力は、セレク
タ139,専用パスP3 およびセレクタ332を介し
、またレジスタ436の出力は、セレクタ439,専用
パスP4 およびセレクタ333を介して累算器334
に入力され、その演算結果はレジスタ336にラッチさ
れる。このとき、レジスタ336の内容は、(ai +
bi +ci +di )+(ei +fi +gi 
+hi ) となる。
【0018】最後に、レジスタ336の出力は、セレク
タ339,専用パスP5 およびセレクタ232を介し
て累算器234に入力される。累算器234は、レジス
タ236の内容をセレクタ239を介して累算する。し
たがって、レジスタ236には Σ(ai +bi +ci +di +ei +fi 
+gi +hi ) が得られる。これが、総和演算結果としてセレクタ23
8を介して取り出される。
【0019】
【発明の効果】以上説明したように本発明は、複数のパ
イプライン演算ユニットに跨がるパイプライン演算パス
をセレクタと専用パスを介して接続させることにより、
演算目的に応じたパイプライン演算器を容易に実現する
ことができる。すなわち、各演算目的に応じてセレクタ
の動作をインストラクションにより指定し、またソフト
ウェアで可変に動作させることができるので、専用パス
の配置と各演算ユニットを適宜設計することにより、あ
らゆる形態のパイプライン演算器を容易に構成すること
ができる。
【0020】したがって、パイプライン演算の分割に伴
うプログラム設計が不要となり、またメモリの読み出し
および書き込みのための余分な電力消費を回避し、さら
に高速処理を実現することができる。
【図面の簡単な説明】
【図1】本発明の第一実施例構成を示す図である。
【図2】バタフライ演算構造の等価回路構成を示す図で
ある。
【図3】バタフライ演算処理を説明する図である。
【図4】本発明の第二実施例構成を示す図である。
【図5】総和演算構造の等価回路構成を示す図である。
【図6】総和演算演算を説明する図である。
【符号の説明】
100,200,300,400  演算ユニット11
0,210,310,410  複合演算ステージ11
1,112,211,212,311,312,411
,412  レジスタ 113,213,313,413  セレクタ114,
214,314,414  加減算器(ASU)115
,215,315,415  バレルシフタ116,2
16,316,416  セレクタ117,217,3
17,417  算術論理演算器(ALU) 118,218,318,418  セレクタ120,
220,320,420  乗算ステージ121,12
2,221,222,321,322,421,422
  レジスタ 123,223,323,423  乗算器(MPL)
130,230,330,430  累算ステージ13
1,231,331,431  レジスタ132,13
3,232,233,332,333,432,433
  セレクタ 134,234,334,434  累算器(ACC)
135,235,335,435  バレルシフタ13
6,137,236,237,336,337,436
,437  レジスタ 138,139,238,239,338,339,4
38,439  セレクタ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】  並列に配置される複数のパイプライン
    演算器において、複数のパイプライン演算器間を所定の
    演算目的に対応して相互に接続する専用パスと、前記演
    算目的に応じて設定されるインストラクション情報によ
    り、前記専用パスを介して他方のパイプライン演算器と
    の接続を行うか否かを設定するセレクタとを備えたこと
    を特徴とする可変パイプライン構造。
JP3008758A 1991-01-28 1991-01-28 可変パイプライン構造 Pending JPH04252372A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3008758A JPH04252372A (ja) 1991-01-28 1991-01-28 可変パイプライン構造

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3008758A JPH04252372A (ja) 1991-01-28 1991-01-28 可変パイプライン構造

Publications (1)

Publication Number Publication Date
JPH04252372A true JPH04252372A (ja) 1992-09-08

Family

ID=11701829

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3008758A Pending JPH04252372A (ja) 1991-01-28 1991-01-28 可変パイプライン構造

Country Status (1)

Country Link
JP (1) JPH04252372A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1994023384A1 (en) * 1993-03-31 1994-10-13 Sony Corporation Apparatus for adaptively processing video signals
JP2016514330A (ja) * 2013-03-13 2016-05-19 クゥアルコム・インコーポレイテッドQualcomm Incorporated マルチモード基数2のx乗のバタフライベクトル処理回路を提供するためのプログラマブルなデータパス構成を有するベクトル処理エンジン、ならびに関連ベクトルプロセッサ、システム、および方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1994023384A1 (en) * 1993-03-31 1994-10-13 Sony Corporation Apparatus for adaptively processing video signals
AU668298B2 (en) * 1993-03-31 1996-04-26 Sony Corporation Apparatus for adaptively processing video signals
JP2016514330A (ja) * 2013-03-13 2016-05-19 クゥアルコム・インコーポレイテッドQualcomm Incorporated マルチモード基数2のx乗のバタフライベクトル処理回路を提供するためのプログラマブルなデータパス構成を有するベクトル処理エンジン、ならびに関連ベクトルプロセッサ、システム、および方法

Similar Documents

Publication Publication Date Title
EP0042452B1 (en) Signal processor computing arrangement and method of operating said arrangement
JPH077389B2 (ja) 再帰方程式を高速で処理するベクトル処理装置
JPS62256129A (ja) 演算処理装置
KR0138859B1 (ko) 다중 명령어 다중 데이타형 신경망 전용 디지탈 어레이 프로세서 및 이를 이용해 구성된 시스템
Tsmots et al. Design of the processors for fast cosine and sine Fourier transforms
US20070198811A1 (en) Data-driven information processor performing operations between data sets included in data packet
JPH08123769A (ja) 並列プロセッサ
JPH04252372A (ja) 可変パイプライン構造
CN115713104A (zh) 用于神经网络的数据处理电路、神经网络电路和处理器
EP1936492A1 (en) SIMD processor with reduction unit
JPH05324694A (ja) 再構成可能並列プロセッサ
JPH04172526A (ja) 浮動小数点除算器
JPH04364525A (ja) 並列演算装置
WO2008077803A1 (en) Simd processor with reduction unit
JP2696903B2 (ja) 数値計算装置
JP2605792B2 (ja) 演算処理装置
JPH0298777A (ja) 並列積和演算回路及びベクトル行列積演算方法
JPH0613843A (ja) ディジタル信号処理回路
JPS6083176A (ja) ベクトルプロセツサ
JPH04252385A (ja) 画像処理用パイプライン構造
JP2560120B2 (ja) 演算装置
Wahab et al. Evaluation of floating-point sum or difference of products in carry-save domain
JPH09269939A (ja) 並列演算器およびそれを用いたデジタル・シグナル・プロセッサ
Karthikeyan et al. More on arbitrary boundary packed arithmetic
Bouraoui et al. Design of an on-line Euclidian Processor