JP3458518B2 - 並列プロセッサ - Google Patents

並列プロセッサ

Info

Publication number
JP3458518B2
JP3458518B2 JP07581195A JP7581195A JP3458518B2 JP 3458518 B2 JP3458518 B2 JP 3458518B2 JP 07581195 A JP07581195 A JP 07581195A JP 7581195 A JP7581195 A JP 7581195A JP 3458518 B2 JP3458518 B2 JP 3458518B2
Authority
JP
Japan
Prior art keywords
circuit
selector
data
input
arithmetic
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
JP07581195A
Other languages
English (en)
Other versions
JPH08123769A (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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP07581195A priority Critical patent/JP3458518B2/ja
Priority to EP95305704A priority patent/EP0701218B1/en
Priority to DE69521464T priority patent/DE69521464T2/de
Priority to US08/520,175 priority patent/US5689450A/en
Publication of JPH08123769A publication Critical patent/JPH08123769A/ja
Application granted granted Critical
Publication of JP3458518B2 publication Critical patent/JP3458518B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8007Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
    • G06F15/8015One dimensional arrays, e.g. rings, linear arrays, buses

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Processing (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、映像信号等の演算処理
に用いられる並列プロセッサに関する。
【0002】
【従来の技術】一般に、並列プロセッサを用いたディジ
タルシグナルプロセッサ(DSP)は、映像信号等に対
して演算処理を行う演算処理部分と映像信号の各画素の
画素データおよび演算処理結果等のデータを記憶するメ
モリ部分とは別個の信号処理回路素子(デバイス)によ
り実現し、これらの信号処理回路素子の間をデータバス
等で接続して構成されている。このような構成のDSP
においては、演算処理部分の処理速度に応じた速度でメ
モリ部分から演算処理部分にデータを読み出し、あるい
は、演算処理部分からメモリ部分に演算処理の結果得ら
れたデータを書き込む必要がある。
【0003】しかしながら、メモリ部分から演算処理部
分へのデータの読み出しの速度は、データバスのビット
幅およびメモリ部分に用いられる回路素子のデータ入出
力の動作速度、つまり演算処理部分とメモリ部分との間
の通信速度により制限される。すなわち、演算処理部分
とメモリ部分との間の通信速度によりDSP自体の処理
速度が制限されてしまう。従って、演算処理部分とメモ
リ部分とを別個の回路素子を用いたDSPの設計におい
ては、これらの回路素子を接続するデータバスによる動
作速度上の制限を取り除くことができるようにデータバ
スを取り扱うことが重要であり、また、高速かつ高性能
なDSPを設計する上で最も難しい問題であった。
【0004】演算処理部分とメモリ部分とを別個の回路
素子で実現したDSPにおける演算処理部分とメモリ部
分との間の通信速度の問題を解決するために、映像信号
処理の分野では、リニアアレイプロセッサと呼ばれる並
列プロセッサが用いられるようになってきている。リニ
アアレイプロセッサは、演算処理部分とメモリ部分との
間の通信速度により生じる問題を解決するために考え出
されたものであり、演算処理の対象となる信号に含まれ
る各データ、つまり1ライン分の映像信号に含まれる各
画素データに対応させて演算処理回路およびメモリ回路
を同一回路素子(デバイス)上に構成し、1ライン分の
映像信号の画素データをメモリ回路に取り込んでから各
画素データに対応する演算処理回路により各画素につい
てプログラマブルに同一の演算処理を行う。リニアアレ
イプロセッサにおける演算処理は、SIMD(SingleIn
struction Multiple Data)処理方式とも呼ばれる。リ
ニアアレイプロセッサの構成によれば、演算処理部分と
メモリ部分との間の通信速度に起因する問題を取り除く
ことができるので、高速かつ高性能なDSPを構成する
ことができる。
【0005】リニアアレイプロセッサとしては、従来か
ら文献「Chiders J. et al, "SVP:Serial Video Proces
sor", IEEE 1990 CICC, pp17.3.1〜17.3.4」に記載され
たものが知られている。
【0006】以下、図5を参照して上記文献に記載され
た従来の並列プロセッサの演算処理回路(プロセッサエ
レメント8)の構成を説明する。なお、図5に示したプ
ロセッサエレメント8は、上記文献にfigure 4-1: 〜fi
gure 4-11:として記載されているものであり、図解を簡
略化した都合上、RF0/DIR回路94およびRF1
/DOR回路96の部分を簡略化して示してある。プロ
セッサエレメント8は、入力信号選択回路80、レジス
タ(A)82、レジスタ(M)84、レジスタ(B)8
6、レジスタ(C)90、L/R制御回路92、RFO
/DIR回路94、RFI/DOR回路96、および、
算術演算回路98から構成されている。
【0007】入力信号選択回路80は、2つの2入力1
出力のマルチプレクサ800,802から構成されてい
る。レジスタ(A)82、レジスタ(M)84、レジス
タ(B)86は、それぞれ8入力1出力のマルチプレク
サ820,840,860およびDフリップフロップ8
22,842,862から構成されている。レジスタ
(C)90は、2つの2入力1出力のマルチプレクサ9
00,902、8入力1出力のマルチプレクサ904お
よびDフリップフロップ906から構成されている。
【0008】L/R制御回路92は、4入力1出力のマ
ルチプレクサ920およびプロセッサエレメント8を用
いた並列プロセッサにおいて、各プロセッサエレメント
8に共通して用いられる1024入力1出力のNOR回
路922から構成されている。算術演算回路98は、O
R回路980、AND回路982、および、全加算回路
として動作するALU984から構成されている。上記
文献に記載された並列プロセッサは、それぞれプロセッ
サエレメント8およびメモリ回路から構成される単位プ
ロセッサが多数直列に接続されて構成されており、さら
に、各単位プロセッサに対応する画素データを直列(シ
リアル)形式の映像信号から分離して供給する入力用シ
フトレジスタ回路および各単位プロセッサの演算結果を
シリアルな信号に変換して出力する出力用シフトレジス
タを有している。
【0009】
【発明が解決しようとする課題】リニアアレイプロセッ
サにおいては、処理の対象となる信号のデータ長と同
じ、例えば2,200個もの単位プロセッサを設ける必
要がある。しかしながら、プロセッサエレメント8の回
路構成は冗長であり、プロセッサエレメント8を用いて
リニアアレイプロセッサを構成した場合には、回路規模
が大きくなるので全回路を同一の素子上に実現しにく
く、また、実現できても素子面積が大きくなってしま
い、非常に高価な素子になってしまうという問題があ
る。プロセッサエレメント8においては、ALU(算術
演算処理ユニット)984にデータを供給する4個のレ
ジスタ、つまりレジスタ(A)82、レジスタ(M)8
4、レジスタ(B)86、および、レジスタ(C)90
がそれぞれ8入力1出力のマルチプレクサ回路を有して
おり、これらのレジスタおよびマルチプレクサの数は
2,200個の単位プロセッサ全体で8,800個にも
及ぶから、回路規模を大きくする最大の原因となってい
た。
【0010】本発明は上述した従来技術の問題点に鑑み
てなされたものであり、本発明の目的は、プロセッサエ
レメントの性能を下げることなく、特に、ALUにデー
タを供給するレジスタおよびマルチプレクサの回路規模
を小さくしてプロセッサエレメントの回路構成の冗長性
を減じた並列プロセッサを提供することにある。また本
発明の第2の目的は、各単位プロセッサの回路規模を小
さくして単一素子上の単位プロセッサの数を増加させる
ことができ、より高性能な並列プロセッサを提供するこ
とにある。さらに本発明の第3の目的は、同一数の単位
プロセッサをより小さい素子面積で実現し、安価で高性
能な並列プロセッサを提供することにある。本発明の第
4の目的は、消費電力を削減可能な並列プロセッサを提
供することにある。
【0011】
【課題を解決するための手段】上記目的を達成するため
に本発明の並列プロセッサは、1周期あたり複数のデー
タからなる入力信号に演算処理を行う並列プロセッサで
あって、当該並列プロセッサが、複数のデータ数に応じ
た数だけ並列に設けられており、それぞれ1データごと
の演算処理を行う複数の単位演算ユニットを具備する。
該単位演算ユニットそれぞれは、メモリ回路と、該メモ
リ回路に接続されたプロセッサエレメントとを有し、隣
接する2つの単位演算ユニットとデータの交換が可能な
ように構成されている。プロセッサエレメントはそれぞ
れ、全加算回路と、該全加算回路の第1の入力に接続さ
れた2つの入力について論理演算を行う論理演算回路
と、単位演算ユニット内のメモリ回路からの第1のデー
タまたは隣接する単位演算ユニット内のメモリ回路から
の第1のデータのいずれかを選択する第1のセレクタ回
路と、単位演算ユニット内のメモリ回路からの第2のデ
ータまたは隣接する単位演算ユニット内のメモリ回路か
らの第2のデータのいずれかを選択する第2のセレクタ
回路と、第2のセレクタ回路が選択した第2のデータ、
論理値1または論理値0のいずれかを選択して論理演算
回路に対する第1の入力として出力する第3のセレクタ
回路と、第1のセレクタ回路が選択した第1のデータ、
論理値1または論理値0のいずれかを選択して論理演算
回路に対する第2の入力として出力する第4のセレクタ
回路と、第2のセレクタ回路が選択した第2のデータ、
論理値1または論理値0のいずれかを選択して全加算回
路の第2の入力として出力する第5のセレクタ回路と、
全加算回路のキャリー出力、論理値1または論理値0の
いずれかを選択して全加算回路の第3の入力として出力
する第6のセレクタ回路とを有する。
【0012】好適には、第2のセレクタ回路が選択した
第2のデータを保持するレジスタ回路と、第3のセレク
タ回路が保持するデータに従って、全加算回路の加算値
出力またはレジスタ回路に保持された第2のデータのい
ずれかを選択する第7のセレクタ回路をさらに有する。
また好適には、第7のセレクタ回路が選択したデータ、
全加算回路の加算値出力およびキャリー出力のいずれか
を選択する第8のセレクタ回路をさらに有し、第8のセ
レクタ回路が選択したデータを単位演算ユニットのメモ
リ回路に記憶するように構成されている。さらに好適に
は、論理回路は、第3のセレクタ回路が選択したデー
タ、第4のセレクタ回路が選択したデータおよびプロセ
ッサエレメントに供給されたコマンドとに所定の論理演
算を行って全加算回路の第1の入力として出力する。好
適には、第3〜第6のセレクタ回路の内部レジスタおよ
び第2のセレクタ回路が選択した第2のデータを保持す
るレジスタ回路のうち、共用可能なものについて、共用
可能に構成する。また好適には、第3〜第6のセレクタ
回路の内部レジスタおよび第2のセレクタ回路が選択し
た第2のデータを保持するレジスタ回路のうち、メモリ
内部のセンスアンプのレジスタ機能にて代用した構成に
する。さらに好適には、並列プロセッサにおいて、所定
の論理演算に代えてBoothの乗算アルゴリズムに対
応した演算を行うように構成する。また好適には、クロ
ック信号をグループ分けして所望の動作に合わせて変化
させて消費電力を低減させる。
【0013】
【作用】メモリ回路は、論理演算手段に対してそれぞれ
1ビット幅の2つの出力バスと1つの入力バスとを有し
ており、データ入力手段から供給された、例えば8ビッ
ト構成の画素データ、演算処理の中間値および結果を記
憶する。メモリ回路は、当該単位演算ユニットおよび隣
接する単位演算ユニットのデータ選択手段にこれらの値
(データ)を2つの1ビットデータとして供給し、演算
処理結果を1ビット単位で記憶する。
【0014】第1のセレクタ回路および第2のセレクタ
回路は、前置および後置された2つの隣接する単位演算
ユニットのメモリ回路との間に単位演算ユニット間にま
たがるデータバスを有している。データ選択手段は、2
つの隣接する単位演算ユニットのメモリ回路から入力さ
れたデータ、および、当該単位演算ユニットのメモリ回
路から入力されたデータの内の2つを論理演算手段に入
力して、単位演算ユニット間にまたがるデータの送受信
を行うことを可能とし、また、ある単位演算ユニットに
おいて、他の単位演算ユニットのデータを用いた演算処
理を可能としている。
【0015】論理演算手段は、第3のセレクタ回路およ
び第4のセレクタ回路が選択した2つのデータ、およ
び、各プロセッサエレメントに同一の演算処理を行わせ
るコマンドを選択して所定の論理演算を行う算術演算手
段に供給する。第3〜第6のセレクタ回路は、第1およ
び第2のセレクタ回路が選択したデータをさらにコマン
ドに従って選択して全加算回路の第2および第3の入力
として供給することにより、プロセッサエレメントの回
路規模を小さくする。第3〜第6のセレクタ回路の内部
のレジスタおよび第7のセレクタ回路の前に付属するレ
ジスタのうら、入力信号およびクロック信号が共通なも
のについては共用するこことにより、プロセッサエレメ
ントの回路規模を小さくできる。第3〜第6のセレクタ
回路の内部レジスタおよび第7のセレクタ回路の前に付
属するレジスタのうち、メモリ回路のセンス・アンプで
代用可能なものについては省略することにより、プロセ
ッサエレメントの回路規模を小さくできる。第3〜第6
のセレクタ回路の内部レジスタおよび第7のセレクタ回
路の前に付属するレジスタのうち、クロック信号のグル
ープ分けを行って所望の動作に合わせて供給することに
より、消費電力を大幅に削減することができる。
【0016】全加算回路は、2つの1ビット入力データ
を全加算して加算値とキャリーを出力する。多ビット幅
のデータを1ビットずつ操作することにより、1ビット
全加算回路を用いて多ビットのデータの処理を行うこと
が可能である。また、多ビット並列処理の算術演算手段
に比べて1ビット全加算回路は回路の規模が小さいの
で、本発明の並列プロセッサのように非常に多くの数が
必要となる用途に好適である。
【0017】
【実施例】以下、図1〜図3を参照して本発明の並列プ
ロセッサ1の構成を説明する。図1は本発明の並列プロ
セッサ1の構成を示す図である。本発明の並列プロセッ
サ1は、単位演算処理回路10i を直列に、例えば76
8個、1,024個、2,200個といった数、映像信
号の1水平周期分の各画素に対応して接続した構成にな
っており、いわゆるSIMD(Single Instruction Mul
tiple Data)方式の動作により、1水平期間(1ライ
ン、または、1H)分の映像信号の各画素の輝度信号等
の画素データ(画素値Di )について並列的に演算処理
を行う。
【0018】並列プロセッサ1には、1水平期間分(1
ライン分、または、1H分)の映像信号の画素値D
i が、例えば水平期間Hk (kは整数)において入力デ
ータ端子からシリアル(直列)に順次入力される。画素
値Di は入力シフトレジスタ12によりパラレル(並
列)に変換され、水平期間Hk に続く水平ブランキング
期間Bk において各メモリ回路104i および演算回路
106i に供給される。さらに続く水平期間Hk+1 にお
いて、画素値Di について演算回路106i により所定
の演算処理が施さる。これらの演算処理結果Qi は続く
水平ブランキング期間Bk+1 において出力シフトレジス
タ14に供給され、続く水平期間Hk+2 において順次シ
リアルに出力データ端子から出力される。
【0019】図1を参照して並列プロセッサ1の構成を
詳細に説明する。データ入力レジスタ100i (i=
1,2,…,n)は、入力シフトレジスタ12を構成し
ており、それぞれ並列プロセッサ1への入力データ端子
から水平期間Hk に対して出力される、例えば8ビット
幅の映像信号の画素値Di を順次シフトして保持し、続
く水平ブランキング期間Bk においてメモリ回路104
i に供給して記憶させる。
【0020】データ出力レジスタ102i は、出力シフ
トレジスタ14を構成しており、それぞれ水平期間H
k+1 においてメモリ回路104i および演算回路106
i により所定の演算処理が施された画素値Di に対応す
る演算処理結果Qi を、続く水平ブランキング期間B
k+1 において記憶し、さらに記憶した演算処理結果Qi
を水平期間Hk+2 において出力データ端子から順次シフ
トしてシリアルに出力する。なお、データ入力レジスタ
100i およびデータ出力レジスタ102i について
は、図2を参照してさらに詳細に後述する。
【0021】メモリ回路104i は、例えば複数の8ビ
ットレジスタを有しており、データ入力レジスタ100
i から供給されたデータを記憶し、演算制御回路(CN
TR)108の制御に従って、これらの8ビットレジス
タに記憶されている任意の2個の1ビット幅のデータ
(1ビットデータ)をそれぞれ演算回路106i の読み
出しビット線inp1,inp2を介して演算回路10
i 等に供給し、また、書き込みビット線woutを介
して演算回路106i の加算結果等を読み込んで記憶す
る。
【0022】演算回路106i は、1ビットプロセッサ
であって、演算制御回路108の制御に従って、例えば
1回の演算処理につき、入力された2個の1ビットデー
タ、あるいは、数値1または数値0、および、入力され
た1ビットデータを加算し、その加算結果の値(数値)
またはキャリーをメモリ回路104i に対して出力す
る。さらに演算回路106i は、それぞれ前置および後
置された(前段および後段の、あるいは、隣接する)単
位演算処理回路10i-1 ,10i+1 のメモリ回路104
i-1 ,104i+1 、および、演算回路106i-1 ,10
i+1 との間に2ビット幅のデータ端子Xi (X1i
X2i ),Xi+1 (X1i+1 ,X2i+1 )、および、デ
ータ端子Yi (Y1i ,Y2i ),Yi+1 (Y1i+1
Y2i+1 )を有しており、データ端子Yi により前段の
単位演算処理回路10i-1 のデータ端子Xi からデータ
を受け、データ端子Xi+1 により後段の単位演算処理回
路10 i+1 のデータ端子Yi+1 にデータを送出し、デー
タ端子Yi により前段の単位演算処理回路10i-1 の端
子Xi からデータを受け、データ端子Yi+1 により後段
の単位演算処理回路10i+1 のデータ端子Xi+1 からデ
ータを受ける。ただし、図1に示すように、単位演算処
理回路101 の前段および単位演算処理回路10 n の後
段は存在しないので、データ端子Y1 ,Yn+1 には、数
値0が入力されている。
【0023】これらのデータ端子Xi ,Xi+1 およびデ
ータ端子Yi ,Yi+1 により、単位演算処理回路10i
は、隣接する単位演算処理回路10i-1 ,10i+1 との
間でデータの送受信が可能であり、隣接する単位演算処
理回路10i-1 ,10i+1 のデータを利用した演算処理
を行うことも可能である。データ入力レジスタ10
i 、データ出力レジスタ102i、メモリ回路104
i および演算回路106i が単位演算処理回路10i
構成する。なお、プロセッサエレメントと演算回路、お
よび、単位プロセッサと単位演算処理回路と同じ意味で
ある。
【0024】メモリ回路104i に記憶された8ビット
データを、演算回路106i が上述のように複数回演算
処理することにより、水平期間Hk+1 において、水平期
間H k に並列プロセッサ1に入力された画素値Di につ
いて所定の演算処理を行うことができる。また、演算制
御回路108は、全てのメモリ回路104i に同一のデ
ータ、例えばメモリ回路104i のm(m=1,2,
3,…)番目のレジスタp(p=1,2,3,…)番目
のビットに1ビットデータの読み出し、あるいは、書き
込みを行わせ、また、演算制御回路108は演算回路1
06i に同一の演算処理を行わせる。従って、単位演算
処理回路10i はそれぞれ入力された画素値Di につい
て同一の演算処理を行うことになる。すなわち、並列プ
ロセッサ1はSIMD方式の並列プロセッサである。
【0025】演算制御回路108は、各単位演算処理回
路10i を制御して所定の演算処理を行わせる。なお、
図1においては、演算制御回路108から各構成要素へ
の制御信号は省略されており、また、上述の図1を参照
した説明においても制御信号に関する記載は省略してあ
る。これらの点については、図2および図3を参照して
後述する。
【0026】次に、図2を参照して単位演算処理回路1
i を構成する各部分の接続および動作を説明する。図
2は、図1に示した単位演算処理回路10i を構成する
データ入力レジスタ(DIR)100i 、データ出力レ
ジスタ(DOR)102i 、メモリ回路(MEM)10
i 、および、演算回路(PE)106i の接続を示す
図である。なお、図2に示す単位演算処理回路10i
各構成要素は、図1に同一符号を付して示した並列プロ
セッサ1の各構成要素に同じである。データ入力レジス
タ100i は、上述のように8ビット幅のデータバスで
隣接する単位演算処理回路10i-1 ,10i+1 のデータ
入力レジスタ100i-1 ,100i+1 と接続されてお
り、演算制御回路108から入力される制御信号CDI
Rに従って、並列プロセッサ1の入力データ端子に8ビ
ット幅の画素値Di が1個入力されるたびに順次その内
容を後段にシフトしてゆく。従って、水平期間の終了時
点では、データ入力レジスタ100i はそれぞれ画素値
i を記憶することになる。続く水平ブランキング期間
に、データ入力レジスタ100i に記憶された画素値D
i は、制御信号CPEに従ってメモリ回路104i に読
み出されて記憶される。ここで、データ入力レジスタ1
00i の各ビットは、メモリ回路104i と同じメモリ
空間にあり、画素値Di はメモリ回路104i に1ビッ
トずつ読み出される。
【0027】データ出力レジスタ102i は、上述のよ
うに8ビット幅のデータバスで隣接する単位演算処理回
路10i-1 ,10i+1 のデータ出力レジスタ10
i-1 ,102i+1 と接続されており、演算制御回路1
08から入力される制御信号CDORに従って、並列プ
ロセッサ1の入力データ端子に8ビット幅の画素値Di
が1個入力されるたびに順次その内容を後段にシフトし
てゆく。従って、水平期間の並列プロセッサ1の出力デ
ータ端子には、その水平期間に先立つ水平ブランキング
期間に出力レジスタ102i に記憶された演算処理結果
i が、画素値Di と同じデータレート(データ速度)
で順次出力される。ここで、データ出力レジスタ102
i の各ビットは、メモリ回路104i と同じメモリ空間
にあり、演算処理結果Qi はメモリ回路104i から1
ビットずつ書き込まれる。メモリ回路104i は、演算
制御回路108から入力される制御信号CMEMに従っ
て、データ入力レジスタ100i から画素値Di を読み
出して記憶し、データ出力レジスタ102i に演算処理
結果Qi を書き込んで記憶させる。またメモリ回路10
i は、制御信号CMEMに従って、任意のレジスタの
任意のビットの値を演算回路106i の読み出しビット
線inp1,inp2から演算回路106i 、および、
端子Xi ,Xi+1 を介して隣接する単位演算処理回路1
i- 1 ,10i+1 の演算回路106i-1 ,106i+1
端子Yi ,Yi+1 に供給する。またメモリ回路104i
は、演算制御回路108から入力される制御信号CME
Mに従って、任意のレジスタの任意のビットに、書き込
みビット線woutを介して演算回路106i から入力
された加算結果等を記憶する。
【0028】演算回路106i は、演算制御回路108
から入力される制御信号CPEに従って、メモリ回路1
04i 、隣接する単位演算処理回路10i-1 ,10i+1
のメモリ回路104i-1 ,104i+1 の端子Xi ,X
i+1 から演算回路106i の端子Yi ,Yi+1 を介し
て、メモリ回路104i から読み出しビット線inp
1,inp2を介してデータを受ける。また、演算回路
106i は、演算制御回路108から入力される制御信
号CPEに従って、その加算結果等を書き込みビット線
woutを介してメモリ回路104i に対して出力して
記憶させる。図2に示したように、演算回路106i
メモリ回路104i との入出力を、演算回路106i
からみて2入力1出力とした理由は、図3を参照して後
述する演算回路106i が2入力1出力の演算処理を基
本としているからである。なお、演算回路106i の全
加算回路240i は本来3入力2出力であるが、これら
の内、キャリーに関する1出力および1入力は演算回路
106i 内部で保存されており、演算回路106i 全体
としては2入力1出力で足りることになる。
【0029】以下、図3を参照して演算回路106i
構成を説明する。演算回路106i は、上述のように、
全加算回路(FA;Full Adder)240i
算術演算処理ユニットとして有する2入力(inp1,
inp2)1出力(wout)の1ビットプロセッサで
ある。セレクタ回路(SEL)200i は、演算制御回
路108から入力される制御信号CPEに含まれる3ビ
ット幅の制御信号CPEa2〜CPEa0に従って、隣
接する単位演算処理回路10i-1 ,10i+1 のメモリ回
路104i-1 ,104 i+1 の読み出しビット線inp
1,inp2から端子Yi (Y1i ,Y2i ),Yi+1
(Y1i+1 ,Y2i+1 )を介して入力されたそれぞれ2
個、合計4個の1ビットデータ、および、メモリ回路1
04i の読み出しビット線inp1から入力された1ビ
ットデータの内の1つを選択してセレクタ回路(as
1)212iに対して出力する。
【0030】セレクタ回路202i は、演算制御回路1
08から入力される制御信号CPEに含まれる3ビット
幅の制御信号CPEb2〜CPEb0に従って、隣接す
る単位演算処理回路10i-1 ,10i+1 のメモリ回路1
04i-1 ,104i+1 の読み出しビット線inp1,i
np2から端子Yi ,Yi+1 を介して入力されたそれぞ
れ2個、合計4個の1ビットデータ、および、メモリ回
路104i の読み出しビット線inp2から入力された
1ビットデータの内の1つを選択して、レジスタ回路
(REG)228i 、セレクタ回路(ms1)20
i 、および、セレクタ回路(bs1)218i に対し
て出力する。
【0031】入力セレクタ(ms)204i は、セレク
タ回路206i 、および、レジスタ回路(mr1)20
i とから構成されており、レジスタ回路208i は、
セレクタ回路202i から入力される信号I2を、制御
信号CPEに含まれるクロック信号CKが有効化(アサ
ート)するタイミングでラッチして保持し、セレクタ回
路206i に対して出力する。セレクタ回路206
i は、セレクタ回路206 i 自身の出力信号、レジスタ
回路208i の出力信号、および数値1,0のいずれか
を、演算制御回路108から入力される制御信号CPE
に含まれる制御信号CPEc1,CPEc0に従って選
択し、OR回路(mo3)およびセレクタ回路(ds)
230i の選択信号入力端子に対して出力する。ここ
で、クロック信号CKは、演算回路106i の動作周期
を規定する。
【0032】入力セレクタ(ms)204i の動作につ
いて説明すると、クロック信号CKが有効化された場合
には、レジスタ回路208i には、それ以前のセレクタ
回路202i の出力信号の値が保持される。セレクタ回
路206i がレジスタ回路208i の出力信号を選択し
た場合には、入力セレクタ(ms)204i の出力信号
の値はレジスタ回路208i の出力信号の値となり、セ
レクタ回路206i が数値1を選択した場合には、入力
セレクタ(ms)204i の出力信号の値は数値1とな
り、セレクタ回路206i が数値0を選択した場合に
は、入力セレクタ(ms)204i の出力信号の値は数
値0となる。セレクタ回路206i がセレクタ回路20
i 自身の信号を選択した場合には、204i の出力信
号にはそれ以前の値がラッチされる。
【0033】入力セレクタ(ms)204i は、入力セ
レクタ(ms)204i の出力信号をマスクする役割を
有している。すなわち、入力セレクタ(ms)204i
の出力信号およびコマンド信号CMD1の論理値が1で
ある場合には、AND回路236i の出力信号は入力セ
レクタ(ms)204i の出力信号に一致し、入力セレ
クタ(ms)204i の出力信号およびコマンド信号C
MD1の論理値が0である場合にはAND回路236i
の出力信号は常に論理値0となる。
【0034】また、入力セレクタ(ms)204i は、
演算回路106i ごとに分岐条件を記憶する役割も有し
ている。並列プロセッサ1のようなSIMD方式の並列
プロセッサにおいては、単位演算処理回路10i ごとに
条件による出力データの選択(分岐条件)をソフトウェ
ア的に設定することができない。従って、入力セレクタ
(ms)204i の出力信号によりセレクタ回路242
i を制御してハードウェア的に条件分岐処理を実現して
いる。
【0035】入力セレクタ(as)210i は、セレク
タ回路212i およびレジスタ回路(ar1)214i
とから構成されており、レジスタ回路214i は、セレ
クタ回路200i から入力される信号I1を、制御信号
CPEに含まれるクロック信号CKが有効化(アサー
ト)するタイミングでラッチして保持し、セレクタ回路
212i に対して出力する。セレクタ回路212i は、
セレクタ回路212i 自身の出力信号、レジスタ回路2
14i の出力信号、および数値1,0のいずれかを、演
算制御回路108から入力される制御信号CPEに含ま
れる制御信号CPEd1,CPEd0に従って選択し、
AND回路(mal)236i に対して出力する。
【0036】入力セレクタ(as)210i の動作につ
いて説明すると、クロック信号CKが有効化された場合
には、レジスタ回路214i には、それ以前のセレクタ
回路200i の出力信号の値が保持される。セレクタ回
路212i がレジスタ回路214i の出力信号を選択し
た場合には、入力セレクタ(as)210i の出力信号
の値はレジスタ回路214i の出力信号の値となり、セ
レクタ回路212i が数値1を選択した場合には、入力
セレクタ(as)210i の出力信号の値は数値1とな
り、セレクタ回路212i が数値0を選択した場合に
は、入力セレクタ(as)210i の出力信号の値は数
値0となる。セレクタ回路212i がセレクタ回路21
i 自身の信号を選択した場合には、210i の出力信
号にはそれ以前の値がラッチされる。セレクタ回路22
i 自身の信号を選択した場合には、222i の出力信
号にはそれ以前の値がラッチされる。
【0037】入力セレクタ(bs)216i は、セレク
タ回路218i 、および、レジスタ回路(br1)22
i とから構成されており、レジスタ回路220i は、
セレクタ回路202i から入力される信号I2を、制御
信号CPEに含まれるクロック信号CKが有効化(アサ
ート)するタイミングでラッチして保持し、セレクタ回
路218i に対して出力する。セレクタ回路218
i は、セレクタ回路218 i 自身の出力信号、レジスタ
回路220i の出力信号、および数値1,0のいずれか
を、演算制御回路108から入力される制御信号CPE
に含まれる制御信号CPEe1,CPEe0に従って選
択し、全加算回路240i の端子Bに対して出力する。
【0038】入力セレクタ(bs)216i の動作につ
いて説明すると、クロック信号CKが有効化された場合
には、レジスタ回路220i には、それ以前のセレクタ
回路202i の出力信号の値が保持される。セレクタ回
路218i がレジスタ回路220i の出力信号を選択し
た場合には、入力セレクタ(bs)216i の出力信号
の値はレジスタ回路220i の出力信号の値となり、セ
レクタ回路218i が数値1を選択した場合には、入力
セレクタ(bs)216i の出力信号の値は数値1とな
り、セレクタ回路218i が数値0を選択された場合に
は、入力セレクタ(bs)216i の出力信号の値は数
値0となる。セレクタ回路218i がセレクタ回路21
i 自信の信号を選択した場合には、216i の出力信
号にはそれ以前の値がラッチされる。
【0039】入力セレクタ(cs)222i は、セレク
タ回路224i およびレジスタ回路(crl)226i
とから構成されており、レジスタ回路226i は、全加
算回路240i から入力される信号(CY)を、制御信
号CPEに含まれるクロック信号CKが有効化(アサー
ト)するタイミングでラッチして保持し、セレクタ回路
224i に対して出力する。セレクタ回路224i は、
セレクタ回路224i自信の出力信号、レジスタ回路2
26i の出力信号、および数値1、0のいずれかを演算
制御回路108から入力される制御信号CPEに含まれ
る制御信号CPEf1、CPEf0に従って選択し、全
加算回路240i の端子Cに対して出力する。
【0040】入力セレクタ(cs)222i の動作につ
いて説明すると、クロック信号CKが有効化された場合
には、レジスタ回路226i には、それ以前の全加算回
路240i のキャリー出力信号(CY)の値が保持され
る。セレクタ回路224i がレジスタ回路226i の出
力信号を選択した場合には、入力セレクタ(cs)22
i の出力信号の値はレジスタ回路226i の出力信号
の値となり、セレクタ回路224i が数値1を選択した
場合には、入力セレクタ(cs)222i の出力信号の
値は数値1となり、セレクタ回路224i が数値0を選
択した場合には、入力セレクタ(cs)222i の出力
信号の値は数値0となる。セレクタ回路224i がセレ
クタ回路224i 自信の信号を選択した場合は224i
の信号はそれ以前の値となる。以上述べた入力セレクタ
(as)210i 、入力セレクタ(bs)216i 、お
よび、入力セレクタ(cs)222i により全加算回路
240i に入力する信号を選択することにより、全加算
回路240i を様々な用途に使用可能である。
【0041】レジスタ回路228i は、信号I2を、ク
ロック信号CKが有効化されたタイミングでラッチして
セレクタ回路230i に対して出力する。レジスタ回路
228i は、セレクタ回路230i に入力する信号I2
と全加算回路240i の出力信号(信号SM、信号C
Y)とのタイミングを合わせる役割を有する。
【0042】OR回路232i は、レジスタ回路208
i の出力信号と制御信号CPEに含まれるコマンド信号
CMD1との論理和演算を行って、その結果をAND回
路236i に対して出力する。コマンド信号CMD1が
論理値1の場合にはOR回路232i の出力信号の論理
値は常に1となる。従って、AND回路236i の出力
信号は、常に入力セレクタ(as)210i の出力信号
に一致する。また、コマンド信号CMD1の論理値が0
であって、入力セレクタ(ms)204i の出力信号の
論理値が0である場合にのみAND回路236i の出力
信号の論理値は常に0となりマスクされる。すなわち、
コマンド信号CMD1は、入力セレクタ(ms)204
i の出力信号による入力セレクタ(as)210i の出
力信号のマスクを制御する役割を有する。
【0043】XOR回路(xo2)238i は、制御信
号CPEに含まれるコマンド信号CMD2とAND回路
236i の出力信号との排他的論理和演算を行って、そ
の結果を全加算回路240i の端子Aに対して出力す
る。コマンド信号CMD2が論理値1である場合にはX
OR回路238i の出力信号はAND回路236i の出
力信号の論理値を反転した信号となり、コマンド信号C
MD2が論理値0の場合には、XOR回路238i の論
理値はAND回路236i の出力信号と一致する。従っ
て、コマンド信号CMD2は、演算制御回路108が入
力セレクタ(as)210i の出力信号の論理値を反転
するために用いられる。
【0044】全加算回路240i は、XOR回路238
i の出力信号、入力セレクタ(bs)216i の出力信
号、および、入力セレクタ(cs)222i の出力信号
に基づいて全加算算術演算処理を行って、その加算結果
(数値;信号SM)をそれぞれセレクタ回路242
i に、加算結果のキャリー(信号CY)をセレクタ回路
(ws)242i およびセレクタ回路224i に対して
出力する。全加算回路240i の入力信号と出力信号と
の関係は下表に示す通りである。
【0045】
【表1】 A入力;B入力;C入力;SM出力;CY出力 0 ; 0 ; 0 ; 0 ; 0 1 ; 0 ; 0 ; 1 ; 0 0 ; 1 ; 0 ; 1 ; 0 1 ; 1 ; 0 ; 0 ; 1 0 ; 0 ; 1 ; 1 ; 0 1 ; 0 ; 1 ; 0 ; 1 0 ; 1 ; 1 ; 0 ; 1 1 ; 1 ; 1 ; 1 ; 1
【0046】セレクタ回路230i は、入力セレクタ
(ms)204i の出力信号の論理値が0である場合に
レジスタ回路228i の出力信号を選択し、入力セレク
タ(ms)204i の出力信号の論理値が1である場合
に信号SMを選択して、セレクタ回路242i に対して
出力する。セレクタ回路242i は、演算制御回路10
8から入力される制御信号CPEに含まれる制御信号C
PEg1,CPEg0に従って、セレクタ回路230i
の出力信号、信号SM、および、信号CYのいずれかを
選択して、演算回路106 i の書き込みビット線wou
tから出力する。
【0047】なお、以上述べた並列プロセッサ1の各構
成要素において、演算回路106iが本発明に係るプロ
セッサエレメントに相当し、セレクタ回路200i ,2
02 i は本発明に係る第1および第2のセレクタ回路相
当し、メモリ回路104i が本発明に係るメモリ回路に
相当する。また、全加算回路240i が本発明に係る全
加算回路が本発明に係る算術演算手段に相当し、入力セ
レクタ(ms)204i 、入力セレクタ(as)210
i、入力セレクタ(bs)216i 、および、入力セレ
クタ(cs)222i は本発明に係る第3〜第6のセレ
クタ回路に相当し、OR回路232i 、AND回路23
i およびXOR回路238i が本発明の論理演算手段
に相当し、セレクタ回路230i およびセレクタ回路2
42i が本発明に係る第7および第8のセレクタ回路に
相当し、レジスタ回路228i が本発明に係るレジスタ
回路に相当する。
【0048】以下、並列プロセッサ1の動作を説明す
る。まず、並列プロセッサ1の全体的な動作を説明す
る。水平期間Hk において、並列プロセッサ1には、入
力データ端子から8ビット幅の映像信号の画素値Di
順次入力される。入力シフトレジスタ12のデータ入力
レジスタ100i は、演算制御回路108の制御信号C
DIRに従って、入力された画素値Di を順次シフトす
る。水平期間Hk が終わる時点では、各画素値Di は対
応するデータ入力レジスタ100i に保持される。なお
同時に、水平期間Hk において、メモリ回路104i
および、演算回路106i は、水平期間Hk-1 において
入力された画素値’Di から演算処理結果’Qi を得る
ための演算処理を行い、出力シフトレジスタ14は水平
期間Hk-2において入力された画素値”Di に対応する
演算処理結果”Qi を順次並列プロセッサ1の出力デー
タ端子から出力する。
【0049】続く水平ブランキング期間Bk において、
メモリ回路104i は制御信号CMEMに従って、1ビ
ットづつ画素値Di を読み込んで、メモリ回路104i
の所定のアドレスに記憶する。なお同時に、水平ブラン
キング期間Bk においては、水平期間Hk-1 において入
力された画素値’Di に対応する演算処理結果’Qi
出力シフトレジスタ14に書き込まれる。
【0050】続く水平期間Hk+1 において、演算回路1
06i およびメモリ回路104i は、演算制御回路10
8から入力される制御信号CPE,CMEMに従って、
メモリ回路104i および隣接する単位演算処理回路1
i-1 ,10i+1 のメモリ回路104i-1 ,104i+1
に記憶された画素値Di-1 ,Di ,Di+1 および演算回
路106i-1 ,106i ,106i+1 の演算処理の中間
値について1ビットごとに処理を行って演算処理結果Q
i を算出する。算出された演算処理結果Qi は、メモリ
回路104i の所定のアドレスに記憶される。なお同時
に、水平期間Hk+1 において、次の画素値Di ’が順次
入力シフトレジスタ12に入力され、演算処理結果’Q
i が出力シフトレジスタ14から順次出力されている。
【0051】続く水平ブランキング期間Bk+1 におい
て、メモリ回路104i は、演算制御回路108から入
力される制御信号CMEMに従って、演算処理結果Qi
を出力シフトレジスタ14のデータ出力レジスタ102
i に1ビットずつ書き込む。なお同時に、水平ブランキ
ング期間Bk+1 において、入力シフトレジスタ12から
メモリ回路104i に水平期間Hk+1 に入力された画素
値Di ’が読み込まれる。
【0052】続く水平期間Hk+2 において、出力シフト
レジスタ14は、演算制御回路108の制御信号CDO
Rに従って書き込まれた演算処理結果Qi を順次シフト
して並列プロセッサ1の出力データ端子から順次出力す
る。なお同時に、水平期間Hk+2 において、次の画素値
i ”が順次入力シフトレジスタ12に入力され、メモ
リ回路104i および演算回路106i は、水平期間H
k+1 に入力された画素値Di ’について演算処理結果Q
i ’を算出するための演算処理を行っている。以上述べ
たように並列プロセッサ1の単位演算処理回路10i
演算制御回路108の制御に従って、順次入力シフトレ
ジスタ12から順次入力される画素値Di を、メモリ回
路104i および演算回路106i により順次演算処理
し、演算処理結果Qi を算出して順次出力シフトレジス
タ14から出力する。
【0053】以下、演算回路106i により種々の演算
処理動作が可能であることを説明する。まず、論理演算
について説明する。演算回路106i による論理演算
は、まず、演算制御回路108によりコマンド信号CM
D1およびコマンド信号CMD2を論理値0に設定し、
次に、演算制御回路108により制御信号CPEd1,
CPEd0,CPEe1,CPEe0,CPEf1,C
PEf0を設定して、入力セレクタ(as)210i
入力セレクタ(bs)216i および入力セレクタ(c
s)222i の出力信号を設定し、次に、制御信号CP
Eg1,CPEg0を設定して信号SM,CYのいずれ
かを出力することにより行われる。
【0054】すなわち、入力セレクタ(cs)222i
の出力信号の論理値を0にして、信号CYに入力セレク
タ(as)210i および入力セレクタ(bs)216
i の出力信号のAND(論理積)演算結果を得ることが
できる。また、入力セレクタ(cs)222i の出力信
号の論理値を1にして、信号CYに入力セレクタ(a
s)210i および入力セレクタ(bs)216i の出
力信号のOR(論理和)演算結果を得ることができる。
【0055】また、入力セレクタ(cs)222i の出
力信号の論理値を0にして、信号SMに入力セレクタ
(as)210i および入力セレクタ(bs)216i
の出力信号のXOR(排他的論理和)演算結果を得るこ
とができる。また、入力セレクタ(cs)222i の出
力信号の論理値を1にして、信号SMに入力セレクタ
(as)210i および入力セレクタ(bs)216i
の出力信号のXNOR(反転排他的論理和)演算結果を
得ることができる。
【0056】また、入力セレクタ(bs)216i の出
力信号の論理値を0、入力セレクタ(cs)222i
出力信号の論理値を1にして、信号SMに全加算回路2
40 i の端子Aへの入力信号のNOT(否定)演算結果
を得ることができる。また、入力セレクタ(bs)21
i の出力信号の論理値を0、入力セレクタ(cs)2
22i の出力信号の論理値を1、コマンド信号CMD1
の論理値を1にして、信号SMに入力セレクタ(as)
210i および入力セレクタ(ms)204i の出力信
号の論理値のNAND(反転論理積)演算結果を得るこ
とができる。
【0057】これらの各論理演算処理を繰り返すことに
より、換言すると複合論理演算処理を行うことにより任
意の論理演算処理を実現することができる。例えば1動
作周期でNAND演算を行う他に、複合論理演算処理に
よりNAND演算を行うことができる。まず、演算回路
106i の第1の動作周期において、演算制御回路10
8により入力セレクタ(cs)222i の出力信号の論
理値を0にして、セレクタ回路242i を制御して信号
CYをメモリ回路104i に記憶させる。次に第2の動
作周期において、演算制御回路108によりメモリ回路
104iに記憶された第1の動作周期におけるAND演
算結果を全加算回路240i の端子Aに入力して入力セ
レクタ(bs)216i の出力信号の論理値を0、入力
セレクタ(cs)222i の出力信号の論理値を1に設
定して、2動作周期でNAND演算結果を得ることがで
きる。このように、複合論理演算処理により、メモリ回
路104i 等に記憶された任意のデータについて任意の
論理演算を行うことができる。
【0058】さらに、主要な演算処理について説明す
る。演算回路106i によるメモリ回路104i に記憶
された2個のデータに対する2の補数表現での加算演算
処理は、以下のように行われる。全加算回路240i
全加算演算処理が可能なので、複数の演算処理によりメ
モリ回路104i に記憶された2個の多ビットデータ、
例えば8ビットの画素値Di と定数Aの加算演算処理が
可能である。まず第1の動作周期において、演算制御回
路108は、入力セレクタ(cs)222i に論理値0
を出力させ、コマンド信号CMD1およびコマンド信号
CMD2に論理値0を設定する。さらに、加算演算処理
の対象となる画素値Di と定数AのLSB(最下位ビッ
ト;ビット0)をそれぞれセレクタ回路200i ,20
i を介して信号I1,I2として入力セレクタ(a
s)210i および入力セレクタ(bs)216i に対
して出力し、それぞれの出力信号とさせ、それぞれ全加
算回路240i の端子A、端子Bに対して出力させる。
さらに、セレクタ回路242i を制御して信号SMを書
き込みビット線woutから出力させ、メモリ回路10
i の所定のアドレスのLSBに記憶させ、信号CYを
入力セレクタ(cs)222i に出力させ、全加算回路
240i の端子Cに対して出力させる。
【0059】続いて次の動作周期ごとに順次、演算制御
回路108は、画素値Di および定数Aの下位ビットか
ら順に加算演算処理を行ってその結果をメモリ回路10
iの所定のアドレスの下位ビットから書き込んでゆ
く。すなわち、演算制御回路108は動作周期ごとに、
画素値Di および定数Aの下位ビットから順に入力セレ
クタ(as)210i およびレジスタ回路214iに読
み込ませ、入力セレクタ(cs)222i に一つ前の動
作周期の信号CYを出力させて全加算回路240i に対
して出力する。この結果得られた信号SMを順次メモリ
回路104i の所定のアドレスの下位ビットから順に書
き込んでゆく。以上述べた演算処理を、演算制御回路1
08が演算回路106i に画素値Diおよび定数AのM
SB(最上位ビット;ビット7)まで行わせることによ
り、多ビットデータ同士の加算演算処理を行うことが可
能である。
【0060】なお同様に、演算回路106i により、2
の補数表現での加算演算処理とほぼ同様の処理により、
2の補数表現での減算演算処理を行うことも可能であ
る。すなわち画素値Di から定数Aを減算する場合、ま
ず第1の動作周期において、演算制御回路108は、入
力セレクタ(cs)222i に論理値1を出力させ、コ
マンド信号CMD1に論理値0を、コマンド信号CMD
2に論理値1を設定する。さらに、減数である定数Aの
LSBの値を入力セレクタ(as)210iに出力さ
せ、被減数である画素値Di のLSBを入力セレクタ
(bs)216iに出力させてそれぞれ全加算回路24
i の端子A、端子Bに対して出力させる。さらに、セ
レクタ回路242i を制御して信号SMを書き込みビッ
ト線woutから出力させ、メモリ回路104i の所定
のアドレスのLSBに記憶させ、信号CYを入力セレク
タ(cs)222i の出力として全加算回路240i
端子Cに対して出力させる。
【0061】続いて次の動作周期ごとに順次、演算制御
回路108は、画素値Di および定数Aの下位ビットか
ら順に加算演算処理を行ってその結果をメモリ回路10
iの所定のアドレスの下位ビットから書き込んでゆ
く。すなわち、演算制御回路108は動作周期ごとに、
画素値Di および定数Aの下位ビットから順に入力セレ
クタ(as)210i およびレジスタ回路214iに読
み込ませ、入力セレクタ(cs)222i に一つ前の動
作周期の信号CYを出力させて全加算回路240i に対
して出力する。この結果得られた信号SMを順次メモリ
回路104i の所定のアドレスの下位ビットから順に書
き込んでゆく。
【0062】以上述べた演算処理を、演算制御回路10
8が演算回路106i に画素値Diおよび定数AのMS
B(ビット7)まで行わせることにより、多ビットデー
タ同士の減算演算処理を行うことが可能である。以上述
べた加算演算処理と減算演算処理との差は、LSBに対
する演算の際に入力セレクタ(cs)222i の出力が
論理値1であること、減数を全加算回路240i の端子
Aから入力し、被減数を全加算回路240i の端子Bか
ら入力すること、および、コマンド信号CMD2を論理
値1に設定することの3点である。
【0063】以下、演算回路106i による乗算演算処
理を説明する。演算回路106i によるメモリ回路10
i に記憶された2個のデータ、例えば被乗数を画素値
i 、乗数を定数Aとした2進数表現(ストレートバイ
ナリ)での乗算演算処理は以下に述べるように、被乗数
を乗数に従ってシフト加算してゆくことによって行われ
る。まず演算制御回路108は、メモリ回路104i
読み出しビット線inp2から演算回路106i に乗数
(定数A)のLSBを信号I2として入力し、入力セレ
クタ(ms)204i に乗数の信号I2を出力させ、コ
マンド信号CMD1に論理値1を設定する。これらの設
定により、入力セレクタ(ms)204i の出力信号の
論理値が1である場合には全加算回路240i の端子A
へ乗数のLSBが入力され、入力セレクタ(ms)20
i の出力信号の論理値が0である場合には全加算回路
240i の端子Aへ論理値0が入力されることになる。
さらに演算制御回路108は、入力セレクタ(bs)2
16i および入力セレクタ(cs)222i に全加算回
路240i の端子Bおよび端子Cへ論理値0を入力させ
るように設定する。
【0064】以上の設定を行った後に、演算制御回路1
08は演算回路106i の動作周期ごとに、メモリ回路
104i に読み出しビット線inp1を介して被乗数
(画素値Di )をLSBから順に演算回路106i に信
号I1として入力させ、信号I1の値を入力セレクタ
(as)210i から出力させて得られた全加算回路2
40i の端子SMの出力信号の値を所定のアドレスに乗
算中間結果としてメモリ回路104i の所定のアドレス
のLSBから順に書き込んでゆく。以上の処理により、
乗数のLSBに関する乗算演算処理が終了する。
【0065】乗数のビット1〜ビット7に関する乗算演
算処理は、以下の通りである。演算制御回路108は、
メモリ回路104i に乗数の一つ上位のビットの値、つ
まり、前回の演算で乗数のビット(q−1)(q=1,
2,…,7)の乗算演算処理を行った場合には乗数のビ
ットqの値を信号I2として演算回路106iに対して
出力させ、信号I2の値を入力セレクタ(ms)204
i に出力させる。被乗数のLSBについて演算を行う場
合、演算制御回路108は上述した加算演算処理と同様
に、入力セレクタ(cs)222i に論理値0を全加算
回路240i の端子Cに対して出力させ、被乗数のLS
B以外のビット(ビット1〜ビット7)について演算処
理を行う場合には入力セレクタ(cs)222i に、前
の動作周期における全加算回路240i の端子CYの出
力信号の値を全加算回路240i の端子Cに対して出力
させるように設定する。
【0066】次に演算制御回路108は、メモリ回路1
04i に被乗数のビット0からビット7までを演算回路
106i に信号I1として入力させ、入力セレクタ(a
s)210i に被乗数のビット0〜ビット7の値を順次
出力させてその都度、全加算回路240i の端子SMか
ら演算結果を順次得させ、メモリ回路104i の所定の
アドレスのワーキングバッファWのLSBから順に記憶
させる。さらに、演算制御回路108は、メモリ回路1
04i および演算回路106iに、上述した加算演算処
理によりワーキングバッファWに記憶された値およびメ
モリ回路104i に記憶されている乗算中間結果のビッ
トqからビット(q+7)までを加算させ、その加算結
果を乗算中間結果に記憶させる。
【0067】演算制御回路108は、メモリ回路104
i および演算回路106i に、以上の乗数のビットqに
ついての処理を乗数のビット0からビット7まで行わせ
ることにより乗数および被乗数の乗算演算処理を行う。
以上の乗算演算処理を下表参照して説明する。なお下表
においては記載の都合上、4ビット長の乗数および4ビ
ット長に被乗数について示してある。下表に示すよう
に、乗数のビットA0〜A3(上述の説明においてはA
0〜A7)について被乗数の全てのビットD0〜D3
(上述の説明においてはD0〜D7)の乗算を行い、こ
れらを加算してワーキングバッファWに記憶する。
【0068】つまり、ワーキングバッファWの内容は、
乗数Aのビット0(A0)に関する演算処理が終わった
時点で (A0*D3 +A0*D2 +A0*D1 +A0*D0 ) となり、乗数Aのビット1(A1)に関する演算処理が
終わった時点で (A1*D3 +A1*D2 +A1*D1 +A1*D0 ) となり、乗数Aのビット2(A2)に関する演算処理が
終わった時点で (A2*D3 +A2*D2 +A2*D1 +A2*D0 ) となり、乗数Aのビット3(A3)に関する演算処理が
終わった時点で (A3*D3 +A3*D2 +A3*D1 +A3*D0 ) となり、これらの値が乗算中間結果の所定の位置に加算
され、乗算演算の結果Sのビット7(S7)にキャリー
が書き込まれて乗算演算の結果が得られる。
【0069】
【表2】 A0;W0= A0*D3 +A0*D2 +A0*D1 +A0*D0 A1;W1= A1*D3 +A1*D2 +A1*D1 +A1*D0 + 0 A2;W2= A2*D3 +A2*D2 +A2*D1 +A2*D0 + 0 + 0 A3;W3= A3*D3 +A3*D2 +A3*D1 +A3*D0 + 0 + 0 + 0 S7 S6 S5 S4 S3 S2 S1 S0 S=W0+W1+W2+W3 だだし、A0〜A3は乗数Aの各ビットを示し、 D0〜D3は被乗数Di の各ビットを示し、 S0〜S7は乗算演算の結果の各ビットを示し、 WはワーキングバッファWの内容を示し、 *は乗算を示す。
【0070】以下、演算回路106i ごとにメモリ回路
104i に記憶された条件を示すデータ(条件データ)
のビットの論理値に従って、各演算回路106i におい
て演算処理の内容を変更する方法を説明する。演算制御
回路108は、メモリ回路104i に、条件データの所
定のビットを演算回路106i に対して出力させ、入力
セレクタ(ms)204i からその値を出力させ、セレ
クタ回路230i を制御させる。さらに演算制御回路1
08は、セレクタ回路230i の出力信号を書き込みビ
ット線woutから出力させるようにセレクタ回路24
i を制御することにより、メモリ回路104i に記憶
された条件データにより演算回路106i それぞれにお
いて異なる処理を行わせることが可能である。すなわち
演算制御回路108は、条件データのビットの論理値に
より、信号I2の値、あるいは、信号SMのいずれかの
値を演算回路106i の書き込みビット線woutから
の出力信号の値とすることができる。
【0071】以下、この条件分岐を用いて2の補数表現
のデータ、例えば画素値Di の絶対値を求める方法を説
明する。まず演算制御回路108は、コマンド信号CM
D1を論理値0に設定し、コマンド信号CMD2を論理
値1に設定し、メモリ回路104i に画素値Di の符号
を示すサインビットを演算回路106i に対して出力さ
せ、入力セレクタ(ms)204i にサインビットの値
を出力させる。さらに演算制御回路108は、メモリ回
路104i に画素値Di の各ビットをLSBから順に読
み出しビット線inp2を介して信号I2として入力さ
せ、画素値Di のLSBに関する処理においては入力セ
レクタ(cs)222i に論理値1を出力させ、入力セ
レクタ(as)210i に論理値0を出力させ、画素値
i のLSB以外に関する処理においては入力セレクタ
(cs)222i に信号CYの値を出力させ、入力セレ
クタ(as)210i に論理値0を出力させる。
【0072】上述の設定において、演算回路106
i は、サインビットが論理値0である場合には、信号I
2をそのまま書き込みビット線woutから出力する。
一方、全加算回路240i の信号SMは、画素値Di
全ビットを反転して1を加えた値、換言すると、画素値
i の符号を反転した値となる。すなわち、演算制御回
路108は、画素値Di のサインビットが論理値1、つ
まり画素値Di が負である場合にはセレクタ回路230
i に信号SMを選択させて、セレクタ回路242i を介
して画素値Di の符号を反転した値を書き込みビット線
woutから出力させ、サインビットが論理値0、つま
り画素値Di が正である場合にはセレクタ回路230i
に信号I2を選択させて画素値Di をそのまま書き込み
ビット線woutから出力させることができる。このよ
うな演算回路106i の出力信号は、画素値Di の絶対
値に他ならない。
【0073】なお、上述した本発明の並列プロセッサの
実施例においては、演算回路106 i による論理演算処
理、加算演算処理、減算演算処理、乗算演算処理、およ
び、絶対値の算出の各演算処理処理について示したが、
本発明の並列プロセッサ1において、これらの演算処理
を任意に組み合わせて、画素値Di およびその他のメモ
リ回路104i に記憶された情報について任意の処理を
行うことができる。また、2の補数表現されたデータに
対する乗算演算処理も、上述した単純2進数に対する乗
算演算処理にサインビットに関する処理を加えた、ほぼ
同様の演算処理により行うことが可能である。
【0074】また、上述した実施例においては、演算回
路106i は入力セレクタ(as)210i に信号I1
を入力し、入力セレクタ(bs)216i に信号I2を
入力するように構成されているが、この構成は並列プロ
セッサ1の入出力構成(1バンク2ポート構成)に起因
している。また、演算制御回路108からメモリ回路1
04i に入力される制御信号CMEMの内容を適宜変更
することにより、データを入れ換えて全加算回路240
iの端子A、端子Bへのデータ供給することも可能であ
る。
【0075】また、本発明の並列プロセッサ1の演算回
路106i は、従来技術として示したプロセッサエレメ
ント8に比べて非常に簡略化されている。つまり、入力
セレクタ(ms)204i 、入力セレクタ(as)21
i 、入力セレクタ(bs)216i 、および、入力セ
レクタ(cs)222i に相当するプロセッサエレメン
ト8の部分がそれぞれ8入力1出力のセレクタで構成さ
れているのに対し、本発明の並列プロセッサ1において
は4入力1出力のセレクタ回路206i ,212,21
8,224により構成されている。従って、本発明の並
列プロセッサによれば、回路規模を大幅に削減可能であ
り、高性能かつ安価な並列プロセッサを提供することが
可能となる。このような全加算回路240i へのデータ
入力回路の簡略化は、入力セレクタ(ms)204i
入力セレクタ(as)210i 、入力セレクタ(bs)
216i 、入力セレクタ(cs)222i にセレクタ回
路200i ,202i を前置し、単位演算処理回路10
i に隣接する単位演算処理回路10i-1 ,10i+1 から
のデータをセレクタ回路200i ,202i により前も
って選択して演算回路106i の内部回路に導くことに
より可能となっている。
【0076】また、演算回路106i は、セレクタ回路
200i ,202i により隣接する単位演算処理回路1
i-1 ,10i+1 からのデータとメモリ回路104i
らのデータを選択している。このような選択によって
は、上述した各演算処理においては全加算回路240i
の端子Aおよび端子Bに供給するデータの値に制限を生
じない。上述の実施例に示した他、本発明の並列プロセ
ッサは、例えば変形例として上述したように、種々の構
成をとることができる。
【0077】図4は、本発明のプロセッサエレメント1
06i の変形例の1例を具体的に図示したものである。
図5の構成は、メモリ104i の出力端子であるinp
1,inp2からの信号がすでにメモリ104i の内部
のセンス・アンプでラッチされて供給される場合の構成
である。したがって図5の構成では、セレクタ20
i 、セレクタ210i 、セレクタ216i の内部のそ
れぞれのレジスタおよびレジスタ228i が削除され、
セレクタ202i の出力信号が、セレクタ206i、セ
レクタ218i 、セレクタ230i に、またセレクタ2
00i の出力信号がセレクタ223i にそれぞれ直接接
続されているほかは、図3の構成と全く同等の構成にな
っている。図4の構成は先に述べた4つのレジスタを削
除しているとはいえ、それと同じレジスタの機能をメモ
リ104i の内部のセンス・アンプに期待しているの
で、図3と同等の機能が実現されることは明らかであ
る。
【0078】
【発明の効果】以上述べたように本発明の並列プロセッ
サによれば、単位プロセッサに含まれるプロセッサエレ
メントが有するALUにデータを供給するレジスタの回
路規模を小さくすることができ、回路構成の冗長性を減
じることができ、消費電力を削減することができる。ま
た、本発明においては、プロセッサエレメントの回路規
模を小さくすることができるにもかかわらず、その性能
が低下しない。さらに本発明によれば、各単位プロセッ
サに回路規模を小さくして単一回路素子上の単位プロセ
ッサの数を増加させることができ、より高性能な並列プ
ロセッサを提供することができる。また本発明によれ
ば、同一数の単位プロセッサをより小さい回路素子面積
で実現し、安価な並列プロセッサを提供することができ
る。さらに本発明によれば、結果として削減した回路の
代わりにBoothの乗算アルゴリズムに適応したハー
ドウエアを追加して、さらなる性能の向上を計ることが
できる。
【図面の簡単な説明】
【図1】本発明の並列プロセッサの構成を示す図であ
る。
【図2】図1に示した単位演算処理回路を構成するデー
タ入力レジスタ(DIR)、データ出力レジスタ(DO
R)、メモリ回路(MEM)、および、演算回路(P
E)の接続を示す図である。
【図3】図1および図2に示した演算回路の構成を示す
図である。
【図4】図1および図2に示した演算回路の他の回路構
成を示す図である。
【図5】文献「Chiders J. et al,"SVP:Serial Video P
rocessor", IEEE 1990 CICC, pp17.3.1 〜pp17.3.4」に
記載された従来のプロセッサエレメントの構成を示す図
である。
【符号の説明】
1…並列プロセッサ 10…単位演算処理回路 12…入力シフトレジスタ 14…出力シフトレジスタ 100…データ入力レジスタ 102…データ出力レジスタ 104…メモリ回路 106…演算回路 108…演算制御回路 200,202…セレクタ回路 204…入力セレクタms 210…入力セレクタas 216…入力セレクタbs 222…入力セレクタcs 206,212,218,224,230,242…セ
レクタ回路 208,214,220,226,228…レジスタ回
路 232…OR回路 236…AND回路 238…XOR回路 240…全加算回路
フロントページの続き (56)参考文献 特開 平1−187676(JP,A) 特開 平3−248229(JP,A) 特開 平4−36856(JP,A) 特開 平4−37949(JP,A) 特開 平6−89271(JP,A) 特開 平6−96036(JP,A) 特開 昭60−27984(JP,A) J.Childers 他,SVP: serial video proc essor,Proceedings of the IEEE 1990 Cus tom Integrated Cir cuits Conference,米 国,1990年 5月13日,p.17.3.1 −17.3.4 T.Baji 他,A 20−ns C MOS Micro−DSP Core for Video−Signal Processing,IEEE Jo urnal of Solid−Sta te Circuits,米国,1988年 10月 1日,Vol.23, No.5, p.1203−1211 John P. Norsworth y 他,A Parallel Ima ge Processor Chip, 1988 IEEE Internatio nal Solid−State Ci rcuits Conference, 米国,1988年 2月17日,p.158− 159,345 (58)調査した分野(Int.Cl.7,DB名) G06F 15/80 G06F 15/16 - 15/177 G06F 7/00 G06F 9/38 G06T 1/20

Claims (8)

    (57)【特許請求の範囲】
  1. 【請求項1】1周期あたり複数のデータからなる入力信
    号に演算処理を行う並列プロセッサであって、 該並列プロセッサは前記複数のデータ数に応じた数だけ
    並列に設けられ、それぞれ1データごとの演算処理を行
    う複数の単位演算ユニットを具備し、 該単位演算ユニットそれぞれは、メモリ回路と、該メモ
    リ回路に接続されたプロセッサエレメントとを有し、隣
    接する2つの単位演算ユニットとデータの交換が可能な
    ように構成されており、 該プロセッサエレメントはそれぞれ、 全加算回路と、 該全加算回路の第1の入力に接続された2つの入力につ
    いて論理演算を行う論理演算回路と、 前記単位演算ユニット内のメモリ回路からの第1のデー
    タまたは隣接する単位演算ユニット内のメモリ回路から
    の第1のデータのいずれかを選択する第1のセレクタ回
    路と、 前記単位演算ユニット内のメモリ回路からの第2のデー
    タまたは隣接する単位演算ユニット内のメモリ回路から
    の第2のデータのいずれかを選択する第2のセレクタ回
    路と、 該第2のセレクタ回路が選択した第2のデータ、論理値
    1または論理値0のいずれかを選択して前記論理演算回
    路に対する第1の入力として出力する第3のセレクタ回
    路と、 前記第1のセレクタ回路が選択した第1のデータ、論理
    値1または論理値0のいずれかを選択して前記論理演算
    回路に対する第2の入力として出力する第4のセレクタ
    回路と、 前記第2のセレクタ回路が選択した第2のデータ、論理
    値1または論理値0のいずれかを選択して前記全加算回
    路の第2の入力として出力する第5のセレクタ回路と、 前記全加算回路のキャリー出力、論理値1または論理値
    0のいずれかを選択して前記全加算回路の第3の入力と
    して出力する第6のセレクタ回路とを有する並列プロセ
    ッサ。
  2. 【請求項2】前記第2のセレクタ回路が選択した第2の
    データを保持するレジスタ回路と、 前記第3のセレクタ回路が保持するデータに従って、前
    記全加算回路の加算値出力または前記レジスタ回路に保
    持された前記第2のデータのいずれかを選択する第7の
    セレクタ回路をさらに有する請求項1に記載の並列プロ
    セッサ。
  3. 【請求項3】前記第7のセレクタ回路が選択したデー
    タ、前記全加算回路の加算値出力またはキャリー出力の
    いずれかを選択する第8のセレクタ回路をさらに有し、 前記第8のセレクタ回路が選択したデータを当該単位演
    算ユニットのメモリ回路に記憶するように構成されてい
    る請求項2に記載の並列プロセッサ。
  4. 【請求項4】前記論理回路は、前記第3のセレクタ回路
    が選択したデータ、前記第4のセレクタ回路が選択した
    データおよび該プロセッサエレメントに供給されたコマ
    ンドとに所定の論理演算を行って前記全加算回路の第1
    の入力として出力する請求項1〜3のいずれかに記載の
    並列プロセッサ。
  5. 【請求項5】前記第3〜第6のセレクタ回路の内部レジ
    スタおよび前記第2のセレクタで選択した第2のデータ
    を保持するレジスタ回路のうち、共用可能なものについ
    て、共用可能に構成した、請求項2〜4いずれか記載の
    並列プロセッサ。
  6. 【請求項6】前記第3〜第6のセレクタ回路の内部レジ
    スタおよび前記第2のセレクタで選択した第2のデータ
    を保持するレジスタ回路のうち、メモリ内部のセンスア
    ンプのレジスタ機能にて代用した構成をした、請求項2
    〜4いずれか記載の並列プロセッサ。
  7. 【請求項7】前記並列プロセッサにおいて、所定の論理
    演算に代えてBoothの乗算アルゴリズムに対応した
    演算を行うように構成されている請求項4記載の並列プ
    ロセッサ。
  8. 【請求項8】クロック信号をグループ分けして所望の動
    作に合わせて変化させて消費電力を低減させる、請求項
    1〜7いずれか記載の並列プロセッサ。
JP07581195A 1994-08-30 1995-03-31 並列プロセッサ Expired - Fee Related JP3458518B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP07581195A JP3458518B2 (ja) 1994-08-30 1995-03-31 並列プロセッサ
EP95305704A EP0701218B1 (en) 1994-08-30 1995-08-16 Parallel processor
DE69521464T DE69521464T2 (de) 1994-08-30 1995-08-16 Paralleler Prozessor
US08/520,175 US5689450A (en) 1994-08-30 1995-08-28 Parallel processor

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP20566394 1994-08-30
JP6-205663 1994-08-30
JP07581195A JP3458518B2 (ja) 1994-08-30 1995-03-31 並列プロセッサ

Publications (2)

Publication Number Publication Date
JPH08123769A JPH08123769A (ja) 1996-05-17
JP3458518B2 true JP3458518B2 (ja) 2003-10-20

Family

ID=26416963

Family Applications (1)

Application Number Title Priority Date Filing Date
JP07581195A Expired - Fee Related JP3458518B2 (ja) 1994-08-30 1995-03-31 並列プロセッサ

Country Status (4)

Country Link
US (1) US5689450A (ja)
EP (1) EP0701218B1 (ja)
JP (1) JP3458518B2 (ja)
DE (1) DE69521464T2 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0954761A (ja) * 1995-08-15 1997-02-25 Sony Corp デイジタル信号処理装置及び情報処理システム
JPH10254839A (ja) * 1997-03-11 1998-09-25 Sony Corp Simd制御並列プロセッサおよび演算方法
US6032168A (en) * 1997-08-15 2000-02-29 Motorola, Inc. Computer system to perform a filter operation using a logarithm and inverse-logarithm converter and methods thereof
US5999961A (en) * 1997-09-15 1999-12-07 California Institute Of Technology Parallel prefix operations in asynchronous processors
DE19756591B4 (de) * 1997-12-18 2004-03-04 Sp3D Chip Design Gmbh Vorrichtung zum hierarchischen Verbinden einer Mehrzahl von Funktionseinheiten in einem Prozessor
US6219466B1 (en) * 1998-10-05 2001-04-17 Nec Corporation Apparatus for implementing pixel data propagation using a linear processor array
JP2001184253A (ja) * 1999-12-22 2001-07-06 Sony Corp プロセッサシステムおよび記憶回路
US6834337B1 (en) 2000-09-29 2004-12-21 International Business Machines Corporation System and method for enabling multiple signed independent data elements per register
US7039906B1 (en) 2000-09-29 2006-05-02 International Business Machines Corporation Compiler for enabling multiple signed independent data elements per register
EP1345026B1 (en) 2002-03-15 2010-05-05 Affymetrix, Inc. System and method for scanning of biological materials
JP4311287B2 (ja) * 2004-06-25 2009-08-12 ソニー株式会社 ブートシステム及びブート方法及びこのブート方法を用いたデータ処理装置
FR2888349A1 (fr) * 2005-07-06 2007-01-12 St Microelectronics Sa Adaptation de debit binaire dans un flot de traitement de donnees

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6027984A (ja) * 1983-07-27 1985-02-13 Hitachi Ltd デ−タ処理装置
US4694416A (en) * 1985-02-25 1987-09-15 General Electric Company VLSI programmable digital signal processor
US4720780A (en) * 1985-09-17 1988-01-19 The Johns Hopkins University Memory-linked wavefront array processor
FR2623310B1 (fr) * 1987-11-16 1990-02-16 Commissariat Energie Atomique Dispositif de traitement de donnees relatives a des elements d'image
US4872133A (en) * 1988-02-18 1989-10-03 Motorola, Inc. Floating-point systolic array including serial processors
US5268856A (en) * 1988-06-06 1993-12-07 Applied Intelligent Systems, Inc. Bit serial floating point parallel processing system and method
KR100224054B1 (ko) * 1989-10-13 1999-10-15 윌리엄 비. 켐플러 동기 벡터 프로세서내의 비디오신호를 연속 프로세싱 하기 위한 회로 및 이의 작동 방법
EP0463721A3 (en) * 1990-04-30 1993-06-16 Gennum Corporation Digital signal processing device
JP3228927B2 (ja) * 1990-09-20 2001-11-12 沖電気工業株式会社 プロセッサエレメント、プロセッシングユニット、プロセッサ、及びその演算処理方法
JPH0696036A (ja) * 1992-09-10 1994-04-08 Sony Corp 並列プロセッサ

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
J.Childers 他,SVP: serial video processor,Proceedings of the IEEE 1990 Custom Integrated Circuits Conference,米国,1990年 5月13日,p.17.3.1−17.3.4
John P. Norsworthy 他,A Parallel Image Processor Chip,1988 IEEE International Solid−State Circuits Conference,米国,1988年 2月17日,p.158−159,345
T.Baji 他,A 20−ns CMOS Micro−DSP Core for Video−Signal Processing,IEEE Journal of Solid−State Circuits,米国,1988年10月 1日,Vol.23, No.5,p.1203−1211

Also Published As

Publication number Publication date
DE69521464D1 (de) 2001-08-02
JPH08123769A (ja) 1996-05-17
US5689450A (en) 1997-11-18
EP0701218A1 (en) 1996-03-13
EP0701218B1 (en) 2001-06-27
DE69521464T2 (de) 2002-01-17

Similar Documents

Publication Publication Date Title
US6009451A (en) Method for generating barrel shifter result flags directly from input data
JP3244506B2 (ja) 小型乗算器
US7568086B2 (en) Cache for instruction set architecture using indexes to achieve compression
JP3458518B2 (ja) 並列プロセッサ
JP3955741B2 (ja) ソート機能を有するsimd型マイクロプロセッサ
US20030140080A1 (en) Wide adder with critical path of three gates
US6334135B2 (en) Data processing system and register file
US5987638A (en) Apparatus and method for computing the result of a viterbi equation in a single cycle
US5675527A (en) Multiplication device and sum of products calculation device
US5270962A (en) Multiply and divide circuit
JP2000322235A (ja) 情報処理装置
US5341322A (en) Bit level pipeline divide circuit and method therefor
US5650952A (en) Circuit arrangement for forming the sum of products
JP3144859B2 (ja) 算術論理演算装置
US5535151A (en) Electronic processor for performing multiplication
JPH0863585A (ja) 並列プロセッサ
JP3336986B2 (ja) 信号処理プロセッサ及びそれに用いる丸め機能付き積和演算器
Mahdy et al. Algorithm and two efficient implementations for complex multiplier
JP3451640B2 (ja) Simd計算機
JPH09185493A (ja) 加算器用集積回路
JP3742745B2 (ja) 演算処理装置
US6643677B2 (en) Digital arithmetic integrated circuit
JP2948921B2 (ja) マイクロプロセッサ中央処理ユニットに結合される算術計算演算モジュール
JP3441847B2 (ja) データメモリを有するプロセッサ
JP2000293357A (ja) マイクロプロセッサ

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080808

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090808

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100808

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110808

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120808

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees