JPH1074141A - 信号処理装置 - Google Patents

信号処理装置

Info

Publication number
JPH1074141A
JPH1074141A JP23003096A JP23003096A JPH1074141A JP H1074141 A JPH1074141 A JP H1074141A JP 23003096 A JP23003096 A JP 23003096A JP 23003096 A JP23003096 A JP 23003096A JP H1074141 A JPH1074141 A JP H1074141A
Authority
JP
Japan
Prior art keywords
data
signal processing
processing device
arithmetic unit
input
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
JP23003096A
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 JP23003096A priority Critical patent/JPH1074141A/ja
Publication of JPH1074141A publication Critical patent/JPH1074141A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

(57)【要約】 【課題】 入力データを直列・並列変換して2次元ブロ
ックのデータの処理を行う従来の信号処理装置では、ブ
ロックのデータをビットシリアルで処理するため処理時
間が長い。 【解決手段】 入力データ置換手段8から出力されたデ
ータを縦一列単位で格納し、横一列単位で読み出す入力
データレジスタ1と、入力データレジスタ1から読み出
したデータおよび演算結果のデータを保持するメモリ
2,6と、メモリ2,6の出力を入力として演算を行い、
演算結果のデータをメモリ2または6へ出力する演算器
アレイ部4と、メモリ2または6から読み出されたデー
タあるいは演算器アレイ部4より出力された演算結果の
データを横一行単位で書き込み、縦一列単位で読み出す
出力データレジスタ7と、出力データレジスタ7から読
み出されたデータに対し縦横並び換えを行う出力データ
置換回路9とを備える。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はビデオ信号などをプ
ログラムに従ってデジタル処理する信号処理装置、特
に、2次元ブロックデータの処理を可能にする信号処理
装置に関する。
【0002】
【従来の技術】テレビ信号などのビデオ信号をデジタル
処理するプログラマブルなプロセッサとして、1ビット
ALU(算術論理演算装置)を1ラインの画素数設け、
同一の命令で1ラインの全画素のデータに対して同時に
同じ処理を行うSIMD(Single Instruction-stream M
ultiple Data-stream)方式のプロセッサが知られている
(例えば、「Jim Childers, et al "SVP: Serial Video
Processor", IEEE Custom Integrated Circuits Confe
rence 17.3 , 1990」などに開示されているプロセッ
サ)。
【0003】このプロセッサは、1ビットALUと2つ
のレジスタファイルを備えたプロセッサエレメントを1
ラインの画素数備えたもので、1ラインの画素データを
レジスタファイルに格納し、各プロセッサエレメント
は、2つのレジスタファイルからそれぞれ1ビットのデ
ータを読み出し、1ビットの演算を実行し、演算結果の
データをいずれかのレジスタファイルへ格納する。全プ
ロセッサエレメントには同一の命令が与えられるので、
1ラインの全画素データに対して同じ1ビットの処理が
行われる。この1ビットの処理を繰り返し実行すること
により、フィルタ処理など必要な処理を実現する。ま
た、このプロセッサには、左右のプロセッサエレメント
のレジスタファイルのデータを取り込む左右通信機能を
備えており、水平方向のいくつかの画素データを用いた
水平フィルタ処理を行うこともできる。
【0004】ところが、画像の圧縮、伸張処理で用いら
れる2次元DCT(離散的コサイン変換)や逆DCT処
理では、2次元ブロック単位の処理であり、積和演算が
主な処理であるが、ブロック内の画素位置によって乗算
の係数が異なり、1ラインの全画素データに対して同じ
処理を行うプロセッサでは実現できない。
【0005】これに対して、例えば、特開平5−226
29号のビデオ信号用プロセッサでは、入力ビデオ信号
を直列・並列変換する手段を設け、直列・並列変換した
データを入力シフトレジスタへ一旦格納した後、2次元
ブロックのデータをメモリの縦一列に配置することによ
りブロック内の任意のデータに対して演算ができるとし
た。
【0006】
【発明が解決しようとする課題】しかしながら上記のよ
うな構成では、例えば1ブロックのライン方向の画素数
をNとすると、N個の画素データを縦一列に配置するた
め、1ラインの全画素に同一処理を行う場合と比べ、横
幅が1/Nになり、ALUの個数も1/Nとなり、1つのAL
Uでライン方向N画素のデータの処理を行うため、演算
性能が著しく低下するという問題点を有していた。
【0007】また、入力シフトレジスタは縦方向のビッ
ト数がN倍になり、入力シフトレジスタからメモリへの
転送に要するする時間もN倍になり、処理能力が低下す
るという問題点を有してした。
【0008】さらに、1ラインの全画素に同一処理を行
う場合と、ブロック単位の処理を行う場合で、メモリの
縦横の比やALUの個数が大きく異なることになり、こ
れらの処理に対して同じ構成のものを共有することが困
難であるという問題点を有していた。
【0009】従って本発明は上記問題点に鑑み、その目
的は、SIMD方式で処理を行う複数の演算器を備え、
2次元ブロックのデータに対する処理を効率よく実現す
る信号処理装置を提供することにある。
【0010】
【課題を解決するための手段】上記問題点を解決するた
めに本発明の信号処理装置は、入力データを所定のデー
タ数毎に、縦横並び換えを行い出力する入力データ置換
手段と、前記入力データ置換手段から出力されたデータ
を縦一列単位で連続して格納し、格納したデータを横一
行単位で読み出す入力データレジスタと、複数のデータ
を格納するメモリと、複数の入力に対して演算を行う演
算器アレイ部と、データを横一行単位で書き込み、格納
したデータを縦一列単位で連続して読み出す出力データ
レジスタと、前記出力データレジスタから読み出された
データを所定のデータ数毎に、縦横並び換えを行い出力
する出力データ置換手段とを備え、前記演算器アレイ部
は前記メモリから読み出した複数のデータを入力として
演算を行い、前記メモリは前記入力データレジスタから
読み出したデータあるいは演算器アレイ部の出力を格納
し、前記出力データレジスタは前記メモリから読み出し
たデータあるいは前記演算器アレイ部の出力を書き込む
ものである。
【0011】本発明は上記構成により、2次元ブロック
のデータに対し、ビット方向を横にして、同一ブロック
のデータをメモリの縦方向に配置し、演算器アレイ部に
よって各ブロックの処理を並列に行うという作用を有す
る。これにより、2次元ブロックのデータに対する処理
を効率よく行う信号処理装置が得られる。
【0012】
【発明の実施の形態】以下、本発明の実施の形態につい
て、図面を参照しながら説明する。
【0013】(実施の形態1)図1は本発明の実施の形
態1における信号処理装置のブロック図である。
【0014】図1において、1は連続して与えられるデ
ータを縦一列単位で順番にHワード格納し、格納したデ
ータを横一行単位でHビットのデータを読み出すデータ
入力レジスタである。
【0015】2および6は、データ入力レジスタ1から
読み出したデータおよび演算結果のデータを保持するメ
モリであり、それぞれ、横にHビット、縦にVワードの
データを格納する。読み出しおよび書き込みは横一行単
位で行われる。
【0016】3および5は、それぞれ、メモリ2および
6から読み出されたデータをシフトして出力するシフタ
である。
【0017】4はシフタ3、5から出力されるデータに
対して演算を行い、結果をメモリ2および6に出力する
演算器アレイ部である。
【0018】7は、演算器アレイ部4の出力あるいはメ
モリ2、6から読み出されたHビットのデータを横一行
単位で書き込み、縦一列単位で順番にHワード読み出し
て出力する出力データレジスタである。
【0019】8は入力されたデータを縦横並び換えるか
あるいはそのまま、データ入力レジスタへ出力する入力
データ置換回路である。
【0020】9は出力データレジスタ7から出力された
データを縦横並び換えるかあるいはそのまま、出力する
出力データ置換回路である。
【0021】10は、プログラムにしたがって、メモリ
2、6の読み出しおよび書き込みや、シフタ3、5のシ
フト量の制御や、演算器アレイ部4の演算の制御などを
行うプログラム制御部である。
【0022】DCT処理では1画面をいくつかの2次元
ブロックに分け、ブロック単位で処理を行う。たとえ
ば、図2に示すように、ブロックのサイズを水平8画
素、垂直8ラインとすると、1ブロックはデータd0から
データd63までの64個のデータからなり、この1ブロ
ックの64個の画素データを用いてDCT処理を行う。
【0023】入力データ置換回路8によって入力データ
を縦横並び換えてデータ入力レジスタ1へ書き込む動作
を説明する。ブロックサイズは水平8画素、垂直8ライ
ンとする。図3は入力データ置換回路8の入力と出力の
タイミングを示す図である。
【0024】1ラインの画素データが順に、クロック信
号CLKに同期して入力データ置換回路8の入力IN[7]〜IN
[0]に与えられる。入力される各データは8ビットで構
成され、8ビットが並列に入力される。従って、ビット
パラレル・ワードシリアルに入力されると言うことがで
きる。入力されるデータは8画素毎に異なるブロックの
データとなる。
【0025】入力データ置換回路8は最初のブロックBL
K0の1ライン目の8個の8ビットデータd0〜d7が入力IN
に入力されると、それぞれのデータをシリアルデータに
変換し、最上位ビットd0[7], d1[7], ... , d7[7]から
順に8個のデータについて1ビットずつ出力し、データ
入力レジスタ1の入力DIN[0]〜DIN[7]に与える。即ち、
ビットシリアル・ワードパラレルに変換されて出力され
る。言い換えると、縦にデータのビットの並び、横にワ
ードの並びとして入力されたデータが、横にビットの並
び、縦にワードの並びというふうに、縦横並び換えられ
て出力される。
【0026】データ入力レジスタ1の書き込みアドレス
は0から1ずつ増加され、書き込みアドレスで指定され
る番地に入力DINに与えられたデータが格納される。従
って、0番地から7番地に、最初のブロックBLK0の最初
のラインの8個のデータが格納される。
【0027】入力データ置換回路8がブロックBLK0のデ
ータをデータ入力レジスタ1に出力するのと並行して、
次のブロックBLK1のデータd0〜d7が順に入力データ置換
回路8に与えられる。ブロックBLK1の8個のデータd0〜
d7の入力が終わると、同様に、縦横並び換えが行われ、
データ入力レジスタ1に出力される。この時、データ入
力レジスタ1の書き込みアドレスは16から1ずつ増加
される。従って、ブロックBLK1の最初のラインの8個の
データはデータ入力レジスタ1の16番地から23番地
に格納される。つまり、2つのブロックの間に、横方向
8ビットの空間があけられる。このブロック間の空間に
は書き込みが行われないので、データ入力レジスタ1の
データを予め0に初期化しておくと、ブロック間の空間
には0が保持されることになる。
【0028】ブロックBLK2以降も同様にしてデータの格
納が行われる。1ライン分のデータがデータ入力レジス
タ1に格納されると、このデータをメモリ2またはメモ
リ6へ転送する。転送は、一度に、データ入力レジスタ
1の横1行分のデータを読み出し、メモリ2またはメモ
リ6へ格納する。つまり、1回で、全ブロックのデータ
d0が転送され、次に全ブロックのデータd1が転送され、
これを繰り返し、8回の転送で、1ラインの全ブロック
のデータが転送される。
【0029】データ入力レジスタ1からメモリ2または
6への転送が終了すると、次のラインのデータが入力デ
ータ置換回路8に与えられる。
【0030】これらの処理を8ライン分繰り返すと、メ
モリ2または6には、図4に示すように、縦方向に同一
のブロックのd0からd63の64個の画素データが最上位
ビット(MSB)から最下位ビット(LSB)への向きを横にして
格納される。ブロックとブロックの間には横方向に8ビ
ット分、値0が埋められる。
【0031】この例では、データ入力レジスタ1に格納
する2つのブロック間に値0を挿入するために、1つの
ブロックのデータの格納後、書き込みアドレスを0を挿
入するビット数だけ増加させたが、書き込みアドレスを
1ずつ増加しながら0を書き込むようにしてもよい。こ
の場合、データが入力データ置換回路8に入力される周
波数より高い周波数でデータ入力レジスタ1にデータの
書き込みが行われる。
【0032】図5は入力データ置換回路8の構成を示す
ブロック図である。図5において、30はセレクタ付き
フリップフロップであり、2つの入力D1、D2のいず
れかを選択し、クロック信号に同期して選択したデータ
を取り込み、出力Qから出力する。31は制御回路であ
り、フリップフロップ30の入力の選択やデータ入力レ
ジスタ1への出力の選択を制御する制御信号32および
データ入力レジスタ書き込みアドレス33を生成する。
なお、クロック信号はこの図では省略されている。
【0033】制御回路31の制御信号32によって、入
力IN[7]〜IN[0]に与えられた8ビットのデータは、2次
元アレイ状に配置されたフリップフロップ30の左端に
与えられ、データが取り込まれる毎に右へシフトされ
る。8個のデータが取り込まれると、制御信号32が切
り替わり、入力データはフリップフロップ30のアレイ
の下端から取り込まれ、データが取り込まれる毎に上へ
シフトされる。この時、最上段の8個のフリップフロッ
プ30の出力Qがデータ入力レジスタ1の入力DINへ出
力される。下端から8個のデータが取り込まれると、制
御信号32が切り替わり、入力データは再び、フリップ
フロップ30のアレイの左端から取り込まれ、右へシフ
トされる。この時、右端の8個のフリップフロップ30
の出力Qがデータ入力レジスタ1の入力DINへ出力され
る。8個のデータ毎に制御信号32を切り替えることに
より、ブロック毎にビットパラレル・ワードシリアルの
データをビットシリアル・ワードパラレルのデータへの
並び換え、即ち、縦横並び換えを行うことができる。デ
ータ入力レジスタ書き込みアドレス33は8個のデータ
をデータ入力レジスタ1へ格納する毎に、0を挿入する
ビット数だけ増加される。
【0034】また、図には示していないが、2次元ブロ
ック単位で処理を行わない場合は、入力データ置換回路
8は入力データをそのまま出力する。
【0035】このようして、メモリ2に配置されたブロ
ックのデータに対して、シフタ3および演算器アレイ部
4を用いて演算を行う場合の動作を説明する。
【0036】例えば、各ブロック内の8つのデータd0〜
d7にそれぞれ適当な係数を掛けて加算する積和演算を行
う場合を考える。係数をa0〜a7とすると、積和演算の結
果Sは(数1)で表わされる。
【0037】
【数1】
【0038】この演算における乗算はシフトと加算によ
って実現される。例えば、係数a0が3/8の場合、3/8 = 1
/4 + 1/8であるので、a0 x d0は、d0を右へ2ビットシ
フトした値と右へ3ビットシフトした値を加算すること
によって得られる。プログラム制御部10はメモリ2に
データd0のアドレスを与えてデータd0を読み出す。読み
出されたデータd0はシフタ3へ与えられる。プログラム
制御部10はシフタ3へシフト量2を与える。これによ
り、シフタ3はデータd0を右へ2ビットシフトして演算
器アレイ部4へ与える。演算器アレイ部4はシフタ3の
出力をそのままメモリ6へ出力し、プログラム制御部1
0が指定するアドレスへ格納する。次に、プログラム制
御部10は再びメモリ2よりデータd0を読み出す。プロ
グラム制御部10はシフタ3へシフト量3を与え、シフ
タ3はデータd0を右へ3ビットシフトしてアレイ部4へ
与える。同時に、メモリ6からは、データd0を右へ2ビ
ットシフトした値が読み出され、シフタ5を介して演算
器アレイ部4へ与えられる。この場合、シフタ5はメモ
リ6から読み出されたデータをシフトせずそのまま出力
する。演算器アレイ部4はシフタ3およびシフタ5から
与えられた2つのデータ、すなわちデータd0を右へ3ビ
ットシフトしたデータと右へ2ビットシフトしたデータ
を加算し、結果をメモリ6へ格納する。これにより、a0
x d0が得られたことになる。係数a1〜a7に対しても同
様に、データd1〜d7をシフトして、メモリ6のデータに
累算することによって、最終的に、メモリ6に8つのデ
ータに対する積和演算の結果Sが得られる。これらの係
数は、全ブロックに対して同じであるので、メモリ2に
格納されている全ブロックのデータに対して並列に処理
をすることができる。また、シフタ3および演算器アレ
イ部4も、メモリ2から読みだされたNビットのデータ
に対して、同じ処理を行うので、シフタ3および演算器
アレイ部4のビット単位の構成要素に対するプログラム
制御部10からの制御信号は同一のものでよい。
【0039】メモリ上のブロックとブロックの間には8
ビットの領域があけられているので、シフト加算を行っ
てデータのビット数が増えても、隣接するブロックのデ
ータ同士がオーバーラップして破壊されることはない。
また、データが上位へオーバーフローする可能性がある
場合には、データの上位ビット側に適当な領域をあけて
データをメモリ上に配置する。
【0040】図6に演算器アレイ部4の構成の一例を示
す。演算器アレイ部4は、メモリ2および6の出力の各
1ビットに1つずつ、合計H個の演算器ALUから構成
される。
【0041】各演算器ALUは3つの入力21、22、
23に対して演算を行い、和出力SMとキャリー出力C
Yを出力する。24は選択回路であり、25、26、2
7、28はデータを一時的に保持するラッチである。シ
フタ3および5の出力はそれぞれ、ラッチ25および2
6に取り込まれて入力21および22に与えられる。和
出力SMは、プログラム制御部10の制御により、メモ
リ2または6の指定されたアドレスへ格納される。キャ
リー出力CYはラッチ27あるいは次段のラッチ28に
取り込まれ、選択回路24を介して、自身の演算器AL
Uまたは次段の演算器ALUの入力23に与えられる。
2次元ブロック単位の処理でない場合、即ち、データが
メモリ2または6に垂直方向に配置され、直列データと
して下位ビットから順に同一の演算器ALUへ与えら
れ、加算などの演算を行う場合は、キャリー出力CYは
自身の演算器ALUの入力23に与えられて、下位ビット
から上位ビットへの桁上げ信号として演算に用いられ
る。一方、ブロック単位の演算のように、データがメモ
リ2または6に水平方向に配置され、並列データとして
各ビットが並列に複数の演算器ALUへ与えられる場合
は、キャリー出力CYは左隣の演算器ALUの入力23
に与えられて、下位ビット(右のALU)から上位ビッ
ト(左のALU)への桁上げ信号として演算に用いられ
る。これにより、シフタ3および5から並列データとし
て与えられたデータに対しても加算などの演算を行うこ
とができる。
【0042】減算は、キャリー信号CYの代わりにボロ
ー信号を選択回路24を介して入力23に与えることで
実現できる。あるいは、演算器ALUの入力21および
22のいずれかに、減数をビット反転して与え、加算を
行い、さらに最下位ビットに1を加算することによって
減算を実現することができる。最下位ビットへの1の加
算は、予めメモリ2または6に最下位ビットの位置を1
にし、その他を0にしたデータを用意しておき、このデ
ータを演算器アレイ部4で加算することで実現できる。
減算の場合は、キャリー信号あるいはボロー信号がブロ
ックを越えて伝播しないように、最下位ビットに対応す
る演算器ALUでは、右側の演算器ALUのキャリー信
号あるいはボロー信号の入力をマスクするようにする。
【0043】キャリー出力CYを左隣の演算器ALUへ
与える場合、図6では、ラッチ27によってキャリー出
力CYが格納されるため、キャリーの伝播は1ビット分
だけとなる。このため、累算を繰り返した後、最終的に
演算結果を得るためにキャリーを最上位ビットまで伝播
させるためのサイクルが必要になる。このサイクルを少
なくするため、演算器ALUの動作速度に応じて挿入す
るラッチの数を減らしてもよい。例えば、図7に示すよ
うに、ラッチを演算器ALUの1つおきに挿入して、1
サイクルでキャリーが2ビット分伝播するとしてもよ
い。
【0044】図6の例では、加算した結果の和出力SM
はメモリ2または6に一旦格納され、再び読み出され
て、次のデータとの累算に用いられるとしたが、図7に
示すように、和出力SMをメモリ2または6に格納する
代わりに、演算器アレイ部4に設けたラッチ25あるい
は26に直接格納し、演算器ALUの入力21または2
2に与えて、次のデータとの累算を行うとしてもよい。
これにより、パイプライン処理などにより、メモリ2ま
たは6へ書き込んだデータを読み出すのに時間がかかる
場合でも、高速に累算を行うことができる。
【0045】以上のようにして処理された結果のデータ
は出力データレジスタ7へ格納される。メモリ6の横一
行のデータあるいは演算器アレイ部4の全ての演算器A
LUの出力のHビットのデータが、出力データレジスタ
7の横一行に格納される。格納されたデータは、水平方
向のアドレスに対して順番にHワードのデータとして読
み出され、出力データ置換回路9へ出力される。出力デ
ータ置換回路9では、入力データ置換回路8とは逆に、
ビットシリアル・ワードパラレルのデータをビットパラ
レル・ワードシリアルのデータに変換して、8ビットの
データとして出力する。この変換も、入力データ置換回
路8による縦横並び換えと同じであり、図5と同様の回
路構成で実現できる。
【0046】これにより、2次元ブロックのデータを処
理して得られた2次元ブロックのデータをライン上の画
素の順番で出力することができる。
【0047】また、2つのシフタのいずれかを省略し
て、一方のメモリからのデータのみをシフトし、他方の
メモリのデータは累算に用いるなどとしてもよい。
【0048】また、2つのシフタを省略して、演算器ア
レイ部に、データをシフトする機能や乗算を行う機能な
どを有するとしてもよい。
【0049】なお、実施の形態1においては、信号処理
装置はメモリを2つ別々に設けるとしたが、図8に示す
ように複数のデータが読み出せるメモリを1つ設けると
してもよい。図8におけるメモリ11は、例えば、読み
出しポートを2つ持ち、プログラム制御部10が指示す
る2つのアドレスに対して、2つのデータを同時に読み
出して、それぞれシフタ3および5へ与えるとしてもよ
い。あるいは、メモリ11は、読み出しポートを1つ持
ち、プログラム制御部10が指示する2つのアドレスに
対して、時分割的に、1つずつ連続して2つのデータを
読みだし、それぞれシフタ3および5へ与えるとしても
よい。
【0050】以上、説明したように、DCT処理などの
ように、2次元ブロックのデータに対し、同一ブロック
のデータをメモリ上に縦に配置し、データのビットの並
びは横方向であるので、データの全ビットに対して並列
処理が可能であり、データのビットの並びも縦方向で1
ビットずつの逐次処理を行う従来の信号処理装置と比べ
て、極めて高い処理能力を実現できる。
【0051】また、2次元ブロックが8画素x8ライン
でデータが8ビットの場合、縦横並び換えを行う前のビ
ット幅と行った後のビット幅は同じ8ビットであり、従
来、直列・並列変換によってビット幅は8倍になるのに
比べて、2次元ブロック単位の処理を行わない信号処理
装置により近い構成で実現できる。言い換えると、2次
元ブロック単位の処理を行う場合と、1ラインの全画素
データに対する並列処理を行う場合とで、入力データレ
ジスタ、出力データレジスタ、メモリなどの縦横の比
や、演算器の個数があまり変わらないので、同一の信号
処理装置を用いて、これらの処理を切り替えて効率よく
実行でき、テレビ放送のビデオ信号を処理したり、デジ
タル圧縮された信号を処理したりするシステムに対して
極めて有益である。
【0052】
【発明の効果】以上のように本発明は、所定のデータ数
毎に入力データを縦横並び換えを行う入力データ置換手
段を設けることにより、2次元ブロックのデータに対
し、データのビットの向きを横方向にし、ブロックのデ
ータを縦に並べることができるため、2次元ブロック単
位の処理を実現でき、また、各ブロックの処理を演算器
アレイ部を用いて並列に処理し、高い処理能力を実現で
き極めて有用である。
【0053】また、各画素データの全ビットが並列に複
数の演算器に与えられ、演算が行われるので極めて高い
処理能力を実現できる。
【0054】さらに、シフタを設けることにより、2次
元ブロック単位で積和演算を高速に処理することができ
る。
【0055】さらに、2次元ブロック関に一定の間をお
いて、データがメモリに配置されるので、シフト加算な
どによりデータのビット長が増大した場合にもデータが
オーバーラップして破壊されることがない。
【図面の簡単な説明】
【図1】本発明の実施の形態1における信号処理装置の
ブロック図
【図2】1画面の中の2次元ブロックの構成図
【図3】本発明の実施の形態1における入力データ置換
回路の入出力のタイミング図
【図4】本発明の実施の形態1におけるメモリ上の2次
元ブロックのデータの配置図
【図5】本発明の実施の形態1における入力データ置換
回路の構成図
【図6】本発明の実施の形態1における演算器アレイ部
の構成の一例を示す図
【図7】本発明の実施の形態1における演算器アレイ部
の構成の他の一例を示す図
【図8】本発明の実施の形態1における信号処理装置の
構成の他の一例を示す図
【符号の説明】
1 データ入力レジスタ 2,6,11 メモリ 3,5 シフタ 4 演算器アレイ部 7 出力データレジスタ 8 入力データ置換回路 9 出力データ置換回路 10 プログラム制御部 25,26,27,28 ラッチ 24 選択回路 30 セレクタ付きフリップフロップ 31 制御回路 32 制御信号 33 データ入力レジスタ書き込みアドレス

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】 入力データを所定のデータ数毎に、縦横
    並び換えを行い出力する入力データ置換手段と、 前記入力データ置換手段から出力されたデータを縦一列
    単位で連続して格納し、格納したデータを横一行単位で
    読み出す入力データレジスタと、 複数のデータを格納するメモリと、 複数の入力に対して演算を行う演算器アレイ部と、 データを横一行単位で書き込み、格納したデータを縦一
    列単位で連続して読み出す出力データレジスタと、 前記出力データレジスタから読み出されたデータを所定
    のデータ数毎に、縦横並び換えを行い出力する出力デー
    タ置換手段とを備え、 前記演算器アレイ部は前記メモリから読み出した複数の
    データを入力として演算を行い、前記メモリは前記入力
    データレジスタから読み出したデータあるいは演算器ア
    レイ部の出力を格納し、前記出力データレジスタは前記
    メモリから読み出したデータあるいは前記演算器アレイ
    部の出力を書き込むことを特徴とする信号処理装置。
  2. 【請求項2】 入力データを所定のデータ数毎に、縦横
    並び換えを行い出力する入力データ置換手段と、 前記入力データ置換手段から出力されたデータを縦一列
    単位で連続して格納し、格納したデータを横一行単位で
    読み出す入力データレジスタと、 複数のデータを格納する第1および第2のメモリと、 複数の入力に対して演算を行う演算器アレイ部と、 データを横一行単位で書き込み、格納したデータを縦一
    列単位で連続して読み出す出力データレジスタと、 前記出力データレジスタから読み出されたデータを所定
    のデータ数毎に、縦横並び換えを行い出力する出力デー
    タ置換手段とを備え、 前記演算器アレイ部は前記第1および第2のメモリから
    それぞれ読み出したデータを入力として演算を行い、前
    記第1および第2のメモリは前記入力データレジスタか
    ら読み出したデータあるいは演算器アレイ部の出力を格
    納し、前記出力データレジスタは前記第1あるいは第2
    のメモリから読み出したデータあるいは前記演算器アレ
    イ部の出力を書き込むことを特徴とする信号処理装置。
  3. 【請求項3】 請求項1または請求項2記載の信号処理
    装置において、 前記演算器アレイ部は、1ビット演算を行う演算器を複
    数備えたことを特徴とする信号処理装置。
  4. 【請求項4】 請求項3記載の信号処理装置において、 前記演算器は演算結果の和とキャリーを出力し、前記演
    算器は、前記演算器のキャリーと隣接する演算器のキャ
    リーのいずれかを選択して入力の一つに与えることを特
    徴とする信号処理装置。
  5. 【請求項5】 請求項3記載の信号処理装置において、 前記演算器は演算結果の和とボローを出力し、前記演算
    器は、前記演算器のボローと隣接する演算器のボローの
    いずれかを選択して入力の一つに与えることを特徴とす
    る信号処理装置。
  6. 【請求項6】 請求項3記載の信号処理装置において、 前記複数の演算器は同一の命令に従って演算を行うこと
    を特徴とする信号処理装置。
  7. 【請求項7】 請求項1または請求項2記載の信号処理
    装置において、 前記演算器アレイ部は演算結果のデータを一時的に保持
    するデータ保持手段を備え、前記データ保持手段に保持
    されたデータを必要に応じて演算に用いることを特徴と
    する信号処理装置。
  8. 【請求項8】 請求項1記載の信号処理装置において、 前記メモリと前記演算器アレイ部との間にシフタを備
    え、 前記メモリから読み出したデータは前記演算器アレイ部
    に与えられる前に前記シフタによりシフトされることを
    特徴とする信号処理装置。
  9. 【請求項9】 請求項2記載の信号処理装置において、 前記第1のメモリと前記演算器アレイ部との間に第1の
    シフタを備え、 前記第2のメモリと前記演算器アレイ部との間に第2の
    シフタを備え、 前記第1のメモリから読み出したデータは前記演算器ア
    レイ部に与えられる前に前記第1のシフタによりシフト
    され、 前記第2のメモリから読み出したデータは前記演算器ア
    レイ部に与えられる前に前記第2のシフタによりシフト
    されることを特徴とする信号処理装置。
  10. 【請求項10】 請求項1または請求項2記載の信号処
    理装置において、 前記入力データレジスタは、所定のデータ数毎に並び換
    えられたデータブロックを一定の間隔をおいて格納する
    ことを特徴とする信号処理装置。
  11. 【請求項11】 請求項1または請求項2記載の信号処
    理装置において、 前記入力データ置換手段は、所定のデータ数毎に並び換
    えられたデータブロック間で一定の期間0を出力するこ
    とを特徴とする信号処理装置。
JP23003096A 1996-08-30 1996-08-30 信号処理装置 Pending JPH1074141A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP23003096A JPH1074141A (ja) 1996-08-30 1996-08-30 信号処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23003096A JPH1074141A (ja) 1996-08-30 1996-08-30 信号処理装置

Publications (1)

Publication Number Publication Date
JPH1074141A true JPH1074141A (ja) 1998-03-17

Family

ID=16901474

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23003096A Pending JPH1074141A (ja) 1996-08-30 1996-08-30 信号処理装置

Country Status (1)

Country Link
JP (1) JPH1074141A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006099232A (ja) * 2004-09-28 2006-04-13 Renesas Technology Corp 半導体信号処理装置
JP2006127460A (ja) * 2004-06-09 2006-05-18 Renesas Technology Corp 半導体装置、半導体信号処理装置、およびクロスバースイッチ
WO2007010694A1 (ja) * 2005-07-15 2007-01-25 Matsushita Electric Industrial Co., Ltd. 画像符号化装置及び画像符号化方法
US7463501B2 (en) 2005-09-12 2008-12-09 Renesas Technology Corp. Semiconductor memory device
JP2009104521A (ja) * 2007-10-25 2009-05-14 Mitsubishi Electric Corp 並列処理装置
JP2010244095A (ja) * 2009-04-01 2010-10-28 Seiko Epson Corp データ処理装置、印刷システムおよびプログラム
JP2011141823A (ja) * 2010-01-08 2011-07-21 Renesas Electronics Corp データ処理装置および並列演算装置
JP2011192305A (ja) * 2011-06-01 2011-09-29 Renesas Electronics Corp 半導体信号処理装置

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006127460A (ja) * 2004-06-09 2006-05-18 Renesas Technology Corp 半導体装置、半導体信号処理装置、およびクロスバースイッチ
US7562198B2 (en) 2004-06-09 2009-07-14 Renesas Technology Corp. Semiconductor device and semiconductor signal processing apparatus
US7791962B2 (en) 2004-06-09 2010-09-07 Renesas Technology Corp. Semiconductor device and semiconductor signal processing apparatus
US8089819B2 (en) 2004-06-09 2012-01-03 Renesas Electronics Corporation Semiconductor device and semiconductor signal processing apparatus
JP2006099232A (ja) * 2004-09-28 2006-04-13 Renesas Technology Corp 半導体信号処理装置
WO2007010694A1 (ja) * 2005-07-15 2007-01-25 Matsushita Electric Industrial Co., Ltd. 画像符号化装置及び画像符号化方法
US7463501B2 (en) 2005-09-12 2008-12-09 Renesas Technology Corp. Semiconductor memory device
US8077492B2 (en) 2005-09-12 2011-12-13 Renesas Electronics Corporation Semiconductor memory device
JP2009104521A (ja) * 2007-10-25 2009-05-14 Mitsubishi Electric Corp 並列処理装置
JP2010244095A (ja) * 2009-04-01 2010-10-28 Seiko Epson Corp データ処理装置、印刷システムおよびプログラム
JP2011141823A (ja) * 2010-01-08 2011-07-21 Renesas Electronics Corp データ処理装置および並列演算装置
JP2011192305A (ja) * 2011-06-01 2011-09-29 Renesas Electronics Corp 半導体信号処理装置

Similar Documents

Publication Publication Date Title
JP2756257B2 (ja) 並列処理システム及びその方法
US7568086B2 (en) Cache for instruction set architecture using indexes to achieve compression
US5331585A (en) Orthogonal transformation processor for compressing information
US6105114A (en) Two-dimensional array transposition circuit reading two-dimensional array in an order different from that for writing
KR920001618B1 (ko) 직교변환 프로세서
EP0687993A1 (en) Architecture for parallel processing, such as for image processing
JP2001236496A (ja) 絶対差分の合計および対称濾波用の再構成可能simdコプロセッサ構造
EP0227406B1 (en) Image signal processor
JP3955741B2 (ja) ソート機能を有するsimd型マイクロプロセッサ
JP3971535B2 (ja) Simd型プロセッサ
JPH1074141A (ja) 信号処理装置
US5689450A (en) Parallel processor
US5359549A (en) Orthogonal transformation processor for compressing information
JPH04295953A (ja) 要素プロセッサの2次元アレイを内蔵する並列データ処理装置および要素プロセッサのサブアレイユニット
JPH09259115A (ja) ビット−シリアルマトリックス転置のための超大規模集積回路
US6047366A (en) Single-instruction multiple-data processor with input and output registers having a sequential location skip function
JPH07152730A (ja) 離散コサイン変換装置
JP2002269067A (ja) 行列演算装置
US6728863B1 (en) Wide connections for transferring data between PE's of an N-dimensional mesh-connected SIMD array while transferring operands from memory
JP2960328B2 (ja) シストリックアーキテクチャ内に配置される「n+1」個の演算子にオペランドを供給するための装置
JPH0522629A (ja) ビデオ信号用プロセツサ
JP4413052B2 (ja) データフローグラフ処理装置および処理装置
JP2000020705A (ja) 並列画像処理プロセッサ
JP2855899B2 (ja) 機能メモリ
JPH1063647A (ja) 行列演算装置