JPH1083381A - 信号処理装置 - Google Patents

信号処理装置

Info

Publication number
JPH1083381A
JPH1083381A JP8236316A JP23631696A JPH1083381A JP H1083381 A JPH1083381 A JP H1083381A JP 8236316 A JP8236316 A JP 8236316A JP 23631696 A JP23631696 A JP 23631696A JP H1083381 A JPH1083381 A JP H1083381A
Authority
JP
Japan
Prior art keywords
data
output
bit
register file
input data
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
JP8236316A
Other languages
English (en)
Inventor
Jiro Miyake
二郎 三宅
Genichiro Inoue
源一郎 井上
Junichi Yano
純一 矢野
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP8236316A priority Critical patent/JPH1083381A/ja
Publication of JPH1083381A publication Critical patent/JPH1083381A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Image Processing (AREA)

Abstract

(57)【要約】 【課題】 SIMD方式による複数のプロセッサエレメ
ントを用い、従来1サイクルに1ビットの演算しかでき
なかったものを、回路増加を少なくして、1サイクルに
複数ビットの演算を可能にする信号処理装置を提供す
る。 【解決手段】 複数のプロセッサエレメント1と、命令
を解読して複数のプロセッサエレメント1を制御するプ
ログラム制御部20とを備えている。プロセッサエレメ
ント1は入力されたデータを複数格納するレジスタファ
イル2、3と、レジスタファイル2、3から読み出した
複数ビットからなる2つの読み出しデータをそれぞれ格
納し、並び換えて出力する入力データラッチ5、6と、
入力データラッチ5、6の出力の各ビット毎に並列に演
算する複数のALU8、9ている。さらに複数ビットの
演算結果を出力する演算手段4と、演算手段4の複数ビ
ットの出力を格納し、並び換えてレジスタファイル2、
3へ出力する出力データラッチ7とを備えている。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はプログラムに従って
ビデオ信号などをデジタル処理する信号処理装置に関す
る。
【0002】
【従来の技術】テレビ信号などのビデオ信号をデジタル
処理するプログラマブルな信号処理装置として、1ビッ
トALU(算術論理演算装置)を1ラインの画素数設
け、同一の命令で1ラインの全画素のデータに対して同
時に同じ処理を行うSIMD(Single Instruction-stre
am Multiple Data-stream)方式の信号処理装置が知られ
ている(例えば、「Jim Childers, et al "SVP: Serial
Video Processor", IEEECustom Integrated Circuits
Conference 17.3 , 1990」などに開示されているプロセ
ッサ)。
【0003】図8にこの従来の信号処理装置のブロック
図を示す。図8において、50はプロセッサエレメント
であり、1ラインの画素数(N個)備えられている。5
6はプログラム制御部であり、命令をデコードしてN個
のプロセッサエレメント50の制御を行う。プロセッサ
エレメント50は、1ビットALU53と2つのレジス
タファイル51、52から構成される。1ラインの画素
データはN個のプロセッサエレメント50のレジスタフ
ァイル51、52に格納され、各プロセッサエレメント
50は、2つのレジスタファイル51、52からそれぞ
れ1ビットのデータを読み出し、ALU53により1ビ
ットの演算を実行し、演算結果のデータ54をレジスタ
ファイル51、52のいずれかへ格納する。複数ビット
からなるデータの加算を行う場合、最下位のビットから
1ビットずつシリアルに演算を行い、キャリー出力55
は次のビットの演算に用いられる。全プロセッサエレメ
ント50にはプログラム制御部56より同一の制御信号
が与えられるので、1ラインの全画素データに対して同
じ1ビットの処理が行われる。この1ビットの処理を繰
り返し実行することにより、フィルタ処理など必要な処
理を実現する。
【0004】
【発明が解決しようとする課題】しかしながら上記のよ
うな構成では、各プロセッサエレメントにおいて1サイ
クルに1ビットの演算しかできず、処理能力が低いとい
う問題点を有していた。
【0005】また、動作周波数は、動作速度の遅いレジ
スタファイルのアクセス速度によって制限を受け、処理
能力を上げるために動作周波数を高くすることが困難で
あるという問題点も有していた。
【0006】そこで、本発明は上記問題に鑑み、1サイ
クルに複数ビットの演算を行うことで処理能力を高くす
ることを目的とする。
【0007】
【課題を解決するための手段】上記問題点を解決するた
めに本発明の信号処理装置は、複数のプロセッサエレメ
ントを備え、プロセッサエレメントは、レジスタファイ
ルと、レジスタファイルから読み出したデータを並び換
えて出力する第1および第2の入力データ保持手段と、
第1および第2の入力データ保持手段より与えられた複
数ビットのデータを複数の演算要素で並列に演算を行う
演算手段を備えたものである。
【0008】これにより、演算に用いるデータがレジス
タファイルの2つのデータにまたがる場合でも、1サイ
クルに複数ビットを演算を行う信号処理装置が得られ
る。
【0009】
【発明の実施の形態】以下、本発明の実施の形態につい
て、図を用いて説明する。
【0010】(実施の形態1)図1は実施の形態1にお
ける信号処理装置のブロック図を示す。
【0011】図1において、1はプロセッサエレメント
であり、20は与えられた命令を解読し、命令にしたが
って複数のプロセッサエレメント1を制御するプログラ
ム制御手段としてのプログラム制御部であり、信号処理
装置は、複数のプロセッサエレメント1とプログラム制
御部20から構成される。
【0012】2および3は入力されたデータを複数格納
する手段としてのレジスタファイルであり、5および6
は、それぞれ、レジスタファイル2、3から読み出した
複数ビットからなるデータを格納し、並び換えて出力す
る入力データ保持手段としての入力データラッチであ
り、4は入力データラッチ5、6の出力の各ビット毎に
並列に演算し、複数ビットの演算結果を出力する演算手
段としての演算器であり、7は演算器4の複数ビットの
出力を格納し、並び換えてレジスタファイル2、3へ出
力する出力データ保持手段としての出力データラッチで
ある。
【0013】プロセッサエレメント1は、レジスタファ
イル2、3と入力データラッチ5、6と演算器4と出力
データラッチ7から構成される。
【0014】レジスタファイル2および3は、それぞ
れ、プログラム制御部20により指定される番地の2ビ
ットのデータを読み出して出力する。読み出される2ビ
ットのデータは、偶数番地と奇数番地の連続する番地の
データである。
【0015】入力データレジスタ5および6は、それぞ
れ、レジスタファイル2および3の2ビットの出力を取
り込み、出力する。必要な2ビットのデータが、レジス
タファイルから一度に読み出したデータに含まれる場合
は、そのデータを出力し、レジスタファイルから2回続
けて読み出す2つの2ビットデータにまたがる場合は、
その2つの2ビットデータを連結し、必要な部分を取り
出し、即ち、並び換えて出力する。入力データラッチ5
はラッチL0a、L0b、L0cから構成され、入力デ
ータラッチ6はラッチL1a、L1b、L1cから構成
される。
【0016】演算器4は、2つの演算要素としてのAL
U8、9およびキャリー出力を保持するキャリー保持手
段としてのキャリー保持回路10から構成され、入力デ
ータラッチ5および6から出力される2つの2ビットデ
ータに対して演算を行い、出力データラッチ7へ2ビッ
トの演算結果を出力する。演算器4により2ビットデー
タの加算を行う場合、ALU8のキャリー出力11がA
LU9のキャリー入力に与えられる。ALU9のキャリ
ー出力12はキャリー保持回路10に与えられ、キャリ
ー保持回路10に格納されたデータ13はALU8のキ
ャリー入力に与えられ、次のサイクルの演算に用いられ
る。
【0017】このように構成された信号処理装置を用い
て、8ビットのデータ同士の加算を行う場合を説明す
る。
【0018】まず、レジスタファイル2の10番地から
17番地に格納されている8ビットのデータr0[1
7:10]とレジスタファイル3の20番地から27番
地に格納されている8ビットのデータr1[27:2
0]を加算し、結果の9ビットのデータをレジスタファ
イル2の10番地から18番地に格納する場合を図1と
図2を用いて説明する。
【0019】2つの8ビットのデータはそれぞれ、最下
位ビットから順に毎サイクル2ビットずつレジスタファ
イル2、3より読み出される。
【0020】サイクル1でデータr0[11:10]と
r1[21:20]が読み出される。サイクル2で、デ
ータr0[10]、r0[11]はそれぞれ、入力デー
タラッチ5のラッチL0a、L0bに格納され、データ
r1[20]、r1[21]はそれぞれ、入力データラ
ッチ6のラッチL1a、L1bに格納され、そのまま、
演算器4に出力される。データr0[10]とr1[2
0]はALU8に与えられ、データr0[11]とr1
[21]はALU9に与えられる。この場合、ALU8
は最下位ビットの加算を行うので、ALU8のキャリー
入力は0として加算が行われる。ALU9はデータr0
[11]とr1[21]とALU8のキャリー出力11
を入力として加算を行う。サイクル3で、ALU8およ
びALU9の加算結果s[0]、s[1]はそれぞれ出
力データラッチ7のラッチL2a、L2bに格納され、
ALU9のキャリー出力12はキャリー保持回路10に
格納される。出力データラッチ7に格納された2ビット
のデータはサイクル3でレジスタファイル2の10番地
と11番地に格納される。
【0021】サイクル2でr0[13:12]とr1
[23:22]が読み出され、それぞれ、入力データラ
ッチ5、6に格納され、サイクル3で演算器4に与えら
れる。ALU8はr0[12]とr1[22]とキャリ
ー保持回路10の出力11、すなわち、r0[11]と
r1[21]の加算のキャリー出力の値cy[1]を入
力として加算を行う。ALU9はデータr0[13]と
r1[23]とALU8のキャリー出力11を入力とし
て加算を行う。サイクル4で、ALU8およびALU9
の加算結果s[2]、s[3]はそれぞれ、出力データ
ラッチ7のラッチL2a、L2bに格納され、ALU9
のキャリー出力12はキャリー保持回路10に格納され
る。出力データラッチ7に格納された2ビットのデータ
はサイクル5でレジスタファイル2の12番地と13番
地に格納される。
【0022】残りのデータr0[17:14]とr1
[27:24]について、同様の処理を繰り返す。
【0023】最後にALU9がデータr0[17]とr
1[27]に対して行った加算のキャリー出力cy
[7]はキャリー保持回路10に格納され、次のサイク
ルに、ALU8に与えられ、他の入力を0として加算
し、結果のデータ、即ち、キャリー保持回路10の出力
と同じ値を出力データラッチ7に出力する。出力データ
ラッチ7に格納された1ビットのデータs[8]は、レ
ジスタファイル2の18番地に格納される。
【0024】以上のようにして、8ビットのデータr0
[17:10]とデータr1[27:20]を2ビット
ずつ加算することができる。
【0025】次に、レジスタファイル2の10番地から
17番地に格納されている8ビットのデータr0[1
7:10]とレジスタファイル3の21番地から28番
地に格納されている8ビットのデータr1[28:2
1]を加算し、結果の9ビットのデータをレジスタファ
イル2の10番地から18番地に格納する場合を図1と
図3を用いて説明する。これは、必要な2ビットのデー
タがレジスタファイル上の2つの2ビットデータにまた
がっている場合である。
【0026】データr0[17:10]の最下位の2ビ
ットr0[11:10]は一度に読み出せるが、レジス
タファイル3のデータのr1[28:21]の最下位の
2ビットr1[22:21]は一度に読み出せない。従
って、最初の演算は、r0[10]とr1[21]の1
ビットの加算を行い、以降、2ビットずつの加算を行
う。まず、サイクル1で、r0[11:10]とr1
[21:20]が読み出される。最初の1ビットの加算
はALU9で行われるので、入力データラッチ5でデー
タの並べ換えが行われる。すなわち、レジスタファイル
2から読み出された2ビットのデータのうち、r0[1
0]はラッチL0bに、r0[11]はラッチL0cに
格納される。入力データラッチ6はr1[20]、r1
[21]をそのまま、それぞれラッチL1a、L1bに
格納して演算器4へ出力する。サイクル2で、ALU9
はr0[10]とr1[21]を入力とし、キャリー入
力を0として加算を行う。ALU8の演算は無視され
る。ここで、1ビットの演算結果s[0]が得られる
が、レジスタファイル2へは2ビットまとめて格納する
ため、この演算結果s[0]を一旦保持し、次の演算結
果と連結する。このため、加算結果s[0]をサイクル
3で出力データラッチ7のラッチL2cに格納する。同
時に、キャリー出力cy[0]をキャリー保持回路10
に格納する。
【0027】サイクル2には、r0[13:12]とr
1[23:22]がレジスタファイル2、3から読み出
される。この場合、入力データラッチ5は、前回読み出
されたデータを連結し、2ビットのデータr0[12:
11]を演算器4へ出力する。即ち、サイクル3に、ラ
ッチL0cの値、すなわちr0[11]がラッチL0a
に、r0[12]がラッチL0bに、r0[13]がラ
ッチL0cに、それぞれ格納される。入力データラッチ
6はr1[22]、r1[23]をそれぞれ、ラッチL
1a、L1bに格納して演算器4へ出力する。サイクル
3で、ALU8はr0[11]とr1[22]とキャリ
ー保持回路10の出力13に対して加算を行い、ALU
9はr0[12]とr1[23]とALU8のキャリー
出力に対して加算を行う。サイクル4で、出力データラ
ッチ7のラッチL2cがラッチL2aに、ALU8の加
算結果s[1]がラッチL2bに、ALU9の加算結果
s[2]がラッチL2cにそれぞれ格納され、ラッチL
2aおよびL2bのデータ、即ち、r0[11:10]
とr1[22:21]の加算結果の2ビットs[0]、
s[1]がレジスタファイル2の10番地と11番地に
格納される。
【0028】以降、レジスタファイル2、3から読み出
したデータr0[17:14]、r1[27:14]に
対して、2ビットずつ同様の処理を繰り返す。最後に、
サイクル5に、レジスタファイル3からデータr1[2
9:28]が読み出されると、サイクル6に、r1[2
8]は入力データラッチ6のラッチL1aへ格納され、
入力データラッチ5のL0cの値、即ちr0[17]は
L0aへ格納され、それぞれALU8へ与えられる。A
LU8はデータr0[17]、r1[28]および、キ
ャリー保持回路10の出力13を用いて加算を行う。A
LU9はALU8のキャリー出力11を入力とし、他の
入力を0として加算を行う。出力データラッチ7では、
サイクル7に、L2cの値s[6]がL2aへ、ALU
8の加算結果s[7]がL2bへ、ALU9の加算結果
s[8]がL2cへそれぞれ格納され、L2aおよびL
2bのデータ、s[7:6]がレジスタファイル2へ与
えられて格納される。サイクル8に、出力データラッチ
7のラッチL2cの値、即ち、s[8]がL2aへ格納
され、レジスタファイル2の18番地に格納される。
【0029】このようにして、8ビットのデータr0
[17:10]とデータr1[28:21]、即ち、最
下位ビットが一方は偶数番地から、他方は奇数番地から
始まる場合の加算を、最初は1ビット演算、以降2ビッ
ト演算を繰り返し行うことで処理できる。
【0030】以上のように、1サイクルにレジスタファ
イルから読み出した、連続した番地の2ビットのデータ
を、2つのALUで並列に演算を行うことによって処理
する。従って、1サイクルに2ビットの処理を行うこと
になり、従来、1サイクルに1ビットの処理を行ってい
たのに比べ、2倍の処理能力を実現することができる。
【0031】なお、上記説明では、1サイクルにレジス
タファイルから2ビットのデータが読み出されて処理さ
れるとしたが、1サイクルにレジスタファイルから3ビ
ット以上のデータを読み出し、3つ以上のALUで並列
に演算を行うことにより処理するとしてもよい。
【0032】(実施の形態2)図4は実施の形態2にお
ける信号処理装置のブロック図を示す。図4において、
図1と同一の番号を付したものは、図1と同一の機能を
有するものとする。
【0033】図4において、30は入力データラッチ
5、6の出力の各ビット毎に繰り返し演算を行い、複数
ビットの演算結果を出力する演算手段としての演算器で
ある。演算器30は1ビットの演算を行う演算要素とし
てのALU31と、2つの入力のうちいずれかを選択し
て出力する選択回路32、33と、キャリー保持回路3
5と、演算結果保持回路38から構成される。選択回路
32はクロック信号がHIGHの期間、ラッチL0aの
出力を選択し、クロック信号がLOWの期間、ラッチL
0bの出力を選択して出力する。同様に、選択回路33
はクロック信号がHIGHの期間、ラッチL1aの出力
を選択し、クロック信号がLOWの期間、ラッチL1b
の出力を選択して出力する。ALU31は選択回路3
2、33の出力と、キャリー保持回路35の出力を入力
として演算を行い、演算結果37とキャリー出力34を
出力する。キャリー保持回路35はキャリー出力34を
クロック信号の立ち上がりと立下がりのタイミング、即
ち、クロック信号の2倍の周波数で格納し、演算結果保
持回路38は演算結果37をクロック信号の立下がりの
タイミングで格納して出力する。演算結果保持回路38
の出力と演算結果37は出力データラッチ7へ与えられ
る。
【0034】このように構成された信号処理装置を用い
て、実施の形態1と同様に、8ビットのデータ同士の加
算を行う場合を説明する。
【0035】まず、レジスタファイル2の10番地から
17番地に格納されている8ビットのデータr0[1
7:10]とレジスタファイル3の20番地から27番
地に格納されている8ビットのデータr1[27:2
0]を加算し、結果の9ビットのデータをレジスタファ
イル2の10番地から18番地に格納する場合を図4と
図5を用いて説明する。
【0036】レジスタファイル2、3からのデータの読
み出し、および、入力データラッチ5、6へのデータの
格納は図1の場合と同じであるので説明を省略する。
【0037】サイクル2で入力データラッチ5のラッチ
L0a、L0bに格納されたデータr0[10]、r0
[11]が選択回路32に与えられる。選択回路32は
クロック信号がHIGHの期間、すなわちサイクル2の
前半に、データr0[10]を選択して出力する。同様
に、選択回路33には、ラッチL1a、L1bに格納さ
れたデータr1[20]、r1[21]が与えられ、デ
ータr1[20]が選択されて出力される。ALU31
は、サイクル2の前半には、r0[10]とr1[2
0]に対して加算を行う。この場合、キャリー保持回路
35の出力36は無視され、0として加算が行われる。
加算の結果s[0]とキャリーcy[0]が出力される
と、クロック信号の立下がりに、それぞれ、演算結果保
持回路38とキャリー保持回路35に格納される。次
に、クロック信号がLOWの期間、即ち、サイクル2の
後半に、選択回路32、33はそれぞれデータr0[1
1]、r1[21]を出力する。ALU31は入力され
たデータr0[11]、r1[21]、およびキャリー
保持回路35の出力データcy[0]に対して加算を行
い、加算の結果s[1]とキャリーcy[1]を出力す
る。
【0038】演算結果保持回路38に格納されたデータ
s「0」とALU31の演算結果37のデータs[1]
は出力データラッチ7に与えられ、サイクル3で、それ
ぞれ、ラッチL2a、L2bへ格納され、レジスタファ
イル2に与えられて、10番地と11番地に格納され
る。
【0039】サイクル3には、データr0[12]、r
0[13]が選択回路32に、データr1[22]、r
1[23]が選択回路33に与えられる。サイクル2と
同様に、サイクル3の前半には、選択回路32、33は
それぞれ、データr0[12]、r1[22]をALU
31に与える。キャリー保持回路35はキャリーcy
[1]を格納してALU31に与える。ALU31はデ
ータr0[12]、r1[22]、cy[1]に対して
加算を行い、加算結果s[2]およびキャリーcy
[2]を出力する。加算結果s[2]およびキャリーc
y[2]はそれぞれ、クロック信号の立下がりの時に、
演算結果保持回路38とキャリー保持回路35に格納さ
れる。サイクル3の後半には、ALU31は、選択回路
32、33、およびキャリー保持回路35がそれぞれ出
力するr0[13]、r1[23]、および、cy
[2]に対して加算を行い、加算結果s[3]およびキ
ャリーcy[3]を出力する。加算結果s[2]および
s[3]はサイクル4にそれぞれ、ラッチL2a、L2
bへ格納され、レジスタファイル2に与えられて、12
番地と13番地に格納される。
【0040】残りのデータr0[17:14]とr1
[27:24]についても、同様の処理を繰り返す。
【0041】最後に、ALU31がデータr0[17]
とr1[27]に対して行った加算のキャリー出力cy
[7]は、サイクル6の前半にキャリー保持回路35に
格納されてALU35に与えられ、他の入力を0として
加算され、演算結果s[8]、即ち、cy[7]と同じ
値をサイクル6の後半に演算結果保持回路38へ格納
し、次のサイクルにラッチL2aに格納して、レジスタ
ファイル2に与えられ、18番地に格納される。
【0042】次に、レジスタファイル2の10番地から
17番地に格納されている8ビットのデータr0[1
7:10]とレジスタファイル3の21番地から28番
地に格納されている8ビットのデータr1[28:2
1]を加算し、結果の9ビットのデータをレジスタファ
イル2の10番地から18番地に格納する場合のタイミ
ングを図6に示す。
【0043】この場合も、演算器30の動作は図5の場
合と同様であるので説明を省略する。ただし、最初にA
LU31へ与えられるデータr0[10]とr1[2
1]、即ち、演算に用いられるデータの最下位ビット
は、サイクル2の後半に選択回路32、33よりALU
31に与えられるので、サイクル2の前半の演算結果は
無視される。
【0044】以上のように、1サイクルにレジスタファ
イルから読み出した、連続した番地の2ビットのデータ
を、1つのALUで1サイクルに2回の演算を行うこと
によって処理する。従って、1サイクルに2ビットの処
理を行うことになり、従来、1サイクルに1ビットの処
理を行っていたのに比べ、2倍の処理能力を実現するこ
とができる。
【0045】なお、上記説明では、1サイクルにレジス
タファイルから2ビットのデータが読み出されて処理さ
れるとしたが、1サイクルにレジスタファイルから3ビ
ット以上のデータを読み出し、1つのALUで1サイク
ルに3回以上演算を行うことにより処理するとしてもよ
い。
【0046】また、実施の形態1および実施の形態2に
おいては、加算を行う場合を説明したが、減算や論理演
算など、他の処理を行うとしてもよい。減算を行う場合
は、キャリー信号の代わりにボロー信号を下位ビットの
演算から上位ビットの演算へ伝播させて処理するか、あ
るいは、2つのデータの内、減数の方のデータをビット
反転して加算するとして処理することにより実現でき
る。
【0047】なお、実施の形態1および実施の形態2に
おいては、信号処理装置はレジスタファイルを2つ別々
に設けるとしたが、図7に示すように複数のデータが読
み出せるレジスタファイルを1つ設けるとしてもよい。
図7におけるレジスタファイル41は、例えば、読み出
しポートを2つ持ち、プログラム制御部20が指示する
2つのアドレスに対して、2つのデータを同時に読み出
して、それぞれ入力データラッチ5および6へ与えると
してもよい。あるいは、レジスタファイル41は、読み
出しポートを1つ持ち、プログラム制御部10が指示す
る2つのアドレスに対して、時分割的に、1つずつ連続
して2つのデータを読みだし、それぞれ入力データラッ
チ5および6へ与えるとしてもよい。
【0048】なお、実施の形態1および実施の形態2に
おいて、レジスタファイルは2ビットのデータの読み出
しと書き込みを行うとしているが、これは、例えば、レ
ジスタファイルのワード線を偶数番地のメモリセルと奇
数番地のメモリセルに共通に接続することにより実現で
きるので、従来の1ビットのデータの読み出しと書き込
みを行うレジスタファイルと比べて、回路規模の増加と
動作速度の低下を極めて少なくできる。
【0049】また、ALUによる演算は1ビットの簡単
な演算であるので、実施の形態1で示すように2個のA
LUで並列に演算する場合も、実施の形態2で示すよう
に1つのALUで1サイクルに2回演算をする場合で
も、レジスタファイルの動作サイクル時間と比べて、十
分短い時間で演算ができ、しかも、レジスタファイルの
回路規模に比べて、演算器の回路規模は非常に小さい。
即ち、回路規模の増加がわずかで、動作速度の低下がほ
とんどなく、処理能力を著しく向上することができる。
【0050】
【発明の効果】以上のように本発明によれば、1サイク
ルに読み出した、レジスタファイルの連続した番地の複
数のビットのデータの処理を1サイクルで実行でき、大
きな処理能力の向上を図り、実用上極めて有益である。
【図面の簡単な説明】
【図1】本発明の実施の形態1における信号処理装置の
ブロック図
【図2】実施の形態1における第1の処理のタイミング
を示す図
【図3】実施の形態1における第2の処理のタイミング
を示す図
【図4】本発明の実施の形態2における信号処理装置の
ブロック図
【図5】実施の形態2における第1の処理のタイミング
を示す図
【図6】実施の形態2における第2の処理のタイミング
を示す図
【図7】本発明の実施の形態1および実施の形態2にお
いて、2つのレジスタファイルを1つのレジスタファイ
ルで実現した信号処理装置のブロック図
【図8】従来の信号処理装置のブロック図
【符号の説明】
1,50 プロセッサエレメント 2,3,41,51,52 レジスタファイル 4,31 演算器 5,6 入力データラッチ 7 出力データラッチ 20,56 プログラム制御部 8,9,31 ALU 10,35 キャリー保持回路 38 演算結果保持回路 32,33 選択回路

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 複数のプロセッサエレメントと、 命令を解読して前記複数のプロセッサエレメントを制御
    するプログラム制御手段とを備え、 前記プロセッサエレメントは、 入力されたデータを複数格納するレジスタファイルと、 前記レジスタファイルから読み出した複数ビットからな
    る第1の読み出しデータを格納し、並び換えて出力する
    第1の入力データ保持手段と、 前記レジスタファイルから読み出した複数ビットからな
    る第2の読み出しデータを格納し、並び換えて出力する
    第2の入力データ保持手段と、 前記第1の入力データ保持手段の出力と前記第2の入力
    データ保持手段の出力の各ビット毎に並列に演算する複
    数の演算要素を備え、複数ビットの演算結果を出力する
    演算手段と、 前記演算手段の複数ビットの出力を格納し、並び換えて
    前記レジスタファイルへ出力する出力データ保持手段と
    を備えたことを特徴とする信号処理装置。
  2. 【請求項2】 請求項1記載の信号処理装置において、 前記演算手段は、1ビットの演算を行う複数の演算要素
    とキャリー保持手段を備え、前記複数の演算要素は直列
    に接続され、前記演算要素のキャリー入力には前段の演
    算要素のキャリー出力が与えられ、最後段の前記演算要
    素のキャリー出力は前記キャリー保持手段に格納され、
    最前段の前記演算要素のキャリー入力には前記キャリー
    保持手段の出力が与えられ、前記各演算要素は、前記キ
    ャリー入力と、前記第1の入力データ保持手段の出力の
    対応する1ビットと、前記第2の入力データ保持手段の
    出力の対応する1ビットを入力として演算を行い、前記
    複数の演算要素の演算結果を出力することを特徴とする
    信号処理装置。
  3. 【請求項3】 複数のプロセッサエレメントと、 命令を解読して前記複数のプロセッサエレメントを制御
    するプログラム制御手段とを備え、 前記プロセッサエレメントは、 入力されたデータを複数格納するレジスタファイルと、 前記レジスタファイルから読み出した複数ビットからな
    る第1の読み出しデータを格納し、並び換えて出力する
    第1の入力データ保持手段と、 前記レジスタファイルから読み出した複数ビットからな
    る第2の読み出しデータを格納し、並び換えて出力する
    第2の入力データ保持手段と、 前記第1の入力データ保持手段の出力と前記第2の入力
    データ保持手段の出力の各ビット毎に繰り返し演算する
    演算要素を備え、複数ビットの演算結果を出力する演算
    手段と、 前記演算手段の複数ビットの出力を格納し、並び換えて
    前記レジスタファイルへ出力する出力データ保持手段と
    を備えたことを特徴とする信号処理装置。
  4. 【請求項4】 請求項3記載の信号処理装置において、 前記演算手段は、第1のデータ選択手段と、第2のデー
    タ選択手段と、1ビットの演算を行う演算要素と、前記
    演算要素の演算結果を保持する演算結果保持手段と、前
    記演算要素のキャリーを保持するキャリー保持手段とを
    備え、 前記第1のデータ選択手段は、前記第1の入力データ保
    持手段の複数ビットの出力から1ビットずつ順番に選択
    して前記演算要素の入力の1つに出力し、前記第2のデ
    ータ選択手段は、前記第2の入力データ保持手段の複数
    ビットの出力から1ビットずつ順番に選択して前記演算
    要素の入力の1つに出力し、前記キャリー保持手段に格
    納されているデータを前記演算要素の入力の1つに与
    え、前記演算要素は、前記第1および第2の入力データ
    保持手段から与えられる複数ビットのデータに対して複
    数回演算を行うことにより複数ビットの演算結果を得る
    ことを特徴とする信号処理装置。
  5. 【請求項5】 請求項1または請求項3記載の信号処理
    装置において、 前記レジスタファイルは、第1のレジスタファイルと第
    2のレジスタファイルからなり、前記第1のレジスタフ
    ァイルから読み出されたデータは前記第1の読み出しデ
    ータとして前記第1の入力データ保持手段に与えられ、
    前記第2のレジスタファイルから読み出されたデータは
    前記第2の読み出しデータとして前記第2の入力データ
    保持手段に与えられ、前記出力データ保持手段の出力
    は、前記第1あるいは前記第2のレジスタファイルに格
    納されることを特徴とする信号処理装置。
  6. 【請求項6】 請求項1または請求項3記載の信号処理
    装置において、 前記第1の入力データ保持手段は、前記レジスタファイ
    ルから読み出されるNビット(N≧2)の前記第1の読
    み出しデータを2つ連結し、Nビットのデータを前記演
    算手段に出力し、 前記第2の入力データ保持手段は、前記レジスタファイ
    ルから読み出されるNビット(N≧2)の前記第2の読
    み出しデータを2つ連結し、Nビットのデータを前記演
    算手段に出力することを特徴とする信号処理装置。
  7. 【請求項7】 請求項1または請求項3記載の信号処理
    装置において、 前記出力データ保持手段は、前記演算手段から出力され
    るNビット(N≧2)のデータを2つ連結し、Nビット
    のデータを前記レジスタファイルに出力することを特徴
    とする信号処理装置。
  8. 【請求項8】 請求項1または請求項3記載の信号処理
    装置において、 前記プログラム制御手段は、前記複数のプロセッサエレ
    メントが同一の処理を行うように制御することを特徴と
    する信号処理装置。
JP8236316A 1996-09-06 1996-09-06 信号処理装置 Pending JPH1083381A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8236316A JPH1083381A (ja) 1996-09-06 1996-09-06 信号処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8236316A JPH1083381A (ja) 1996-09-06 1996-09-06 信号処理装置

Publications (1)

Publication Number Publication Date
JPH1083381A true JPH1083381A (ja) 1998-03-31

Family

ID=16998998

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8236316A Pending JPH1083381A (ja) 1996-09-06 1996-09-06 信号処理装置

Country Status (1)

Country Link
JP (1) JPH1083381A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008071130A (ja) * 2006-09-14 2008-03-27 Ricoh Co Ltd Simd型マイクロプロセッサ
JP2010118075A (ja) * 2010-02-15 2010-05-27 Ricoh Co Ltd Simd型マイクロプロセッサ

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008071130A (ja) * 2006-09-14 2008-03-27 Ricoh Co Ltd Simd型マイクロプロセッサ
JP2010118075A (ja) * 2010-02-15 2010-05-27 Ricoh Co Ltd Simd型マイクロプロセッサ

Similar Documents

Publication Publication Date Title
CA1323444C (en) Multi-port vector register file
JPH01232463A (ja) データプロセッサシステムとそれを備えるビデオプロセッサシステム
CN111563281B (zh) 一种支持多种加解密算法的处理器及其实现方法
JPH03105789A (ja) 半導体記憶装置
US5689450A (en) Parallel processor
US5201058A (en) Control system for transferring vector data without waiting for transfer end of the previous vector data
JPH1083381A (ja) 信号処理装置
JPH1074141A (ja) 信号処理装置
US6728863B1 (en) Wide connections for transferring data between PE's of an N-dimensional mesh-connected SIMD array while transferring operands from memory
JP2002269067A (ja) 行列演算装置
US8327108B2 (en) Slave and a master device, a system incorporating the devices, and a method of operating the slave device
JP3982324B2 (ja) ベクトル演算処理装置、ベクトル演算方法およびベクトル演算プログラム
US20020169811A1 (en) Data processor architecture and instruction format for increased efficiency
JP3786329B2 (ja) 符号化復号化装置
JP2515724B2 (ja) 画像処理装置
JP2976418B2 (ja) パターンマッチング処理装置
JP2004302647A (ja) ベクトルプロセッサおよびレジスタのアドレス指定方法
JP2000020705A (ja) 並列画像処理プロセッサ
JPH08212168A (ja) アレイプロセッサ
JP3120435B2 (ja) ディジタル演算回路
JPH07120254B2 (ja) シフタ
CN121349657A (zh) 一种张量计算协处理器
JP2002207707A (ja) 定数選択機能を有するsimd型マイクロプロセッサ
JP3039043B2 (ja) 並列プロセッサ
JPH0546655A (ja) ベクトル演算処理装置の演算制御方式