JP3834869B2 - 並列処理プロセッサ - Google Patents

並列処理プロセッサ Download PDF

Info

Publication number
JP3834869B2
JP3834869B2 JP11668996A JP11668996A JP3834869B2 JP 3834869 B2 JP3834869 B2 JP 3834869B2 JP 11668996 A JP11668996 A JP 11668996A JP 11668996 A JP11668996 A JP 11668996A JP 3834869 B2 JP3834869 B2 JP 3834869B2
Authority
JP
Japan
Prior art keywords
data
conversion
unit
output
converted
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
JP11668996A
Other languages
English (en)
Other versions
JPH09305550A (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP11668996A priority Critical patent/JP3834869B2/ja
Publication of JPH09305550A publication Critical patent/JPH09305550A/ja
Application granted granted Critical
Publication of JP3834869B2 publication Critical patent/JP3834869B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Image Processing (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、例えば画像データのデジタル処理等に用いられる、並列処理プロセッサに関するものであり、特に画像データの非線形変換処理に用いられる、並列処理プロセッサに関するものである。
【0002】
【従来の技術】
図24は例えば特開平5―67203号公報に記載されている従来の並列処理プロセッサ15の構成図である。図24に示される従来の並列処理プロセッサ15は、入力シフトレジスタ20、出力シフトレジスタ30、命令制御部42、プロセッサ部40および非線形変換に用いる非線形変換用出力シフトレジスタ71、非線形変換用入力シフトレジスタ72、テーブルメモリ70を備えている。
【0003】
入力シフトレジスタ20は外部からのデータ入力を行ない、出力シフトレジスタ30は外部へのデータ出力を行なう。またプロセッサ部40では画像データのフィルタリング等のデータ処理が行なわれる。
【0004】
プロセッサ部40は演算部50とメモリ部60から構成されている。演算部50はデータ演算を行なう部分であり、図24中で水平方向に並んだN個の演算ユニット51−1〜51−Nから構成されている。演算ユニット51−1〜51−Nは全て同じ構成なので、以後演算ユニット51−1〜51−Nを演算ユニット51と呼ぶことにする。各演算ユニット51は命令制御部42からの命令で制御される。命令制御部42からの命令はプロセッサ部制御バス43を通して各演算ユニット51に供給される。プロセッサ部制御バス43は全ての演算ユニット51に対して共通に接続されている。そのため全ての演算ユニット51が同じ動作をする。
【0005】
メモリ部60は図24中で水平方向に並んだそれぞれN個のメモリユニット61−1〜61−Nから構成されている。メモリユニット61−1〜61−Nは全て同じ構成なので以後メモリユニット61−1〜61−Nをメモリユニット61と呼ぶことにする。
【0006】
各メモリユニット61は複数のメモリバンクから構成されている。図24に示した従来の並列処理プロセッサ15ではメモリユニット61はメモリバンク63−1〜63−Nおよびメモリバンク64−1〜64−Nの2種類のメモリバンクから構成されている。メモリバンク63−1〜63−Nは全て同じ構成なので以後メモリバンク63−1〜63−Nをメモリバンク63と呼ぶことにする。同様にメモリバンク64−1〜64−Nは全て同じ構成なので以後メモリバンク64−1〜64−Nをメモリバンク64と呼ぶことにする。
【0007】
メモリバンク63、64は命令制御部42からの命令で制御される。メモリユニット61中の各メモリバンク63、64の出力65は演算部50に入力されており、演算部50の出力54は各メモリユニット61の入力に接続されている。
【0008】
図24中で垂直方向に並んだ演算ユニット51およびメモリユニット61で1つの処理単位であるプロセッサエレメント41−1〜41−Nを構成している。つまりプロセッサ部40は水平方向にN個並んだプロセッサエレメント41−1〜41−Nから構成されている。プロセッサエレメント41−1〜41−Nは全て同じ構成なので、以後プロセッサエレメント41−1〜41−Nをプロセッサエレメント41と呼ぶことにする。
【0009】
命令制御部42は各部分を制御する役割を果たす。プロセッサ部40の制御はいわゆるSIMD制御(Single Instruction stream Multi Data stream制御)であり、全てのプロセッサエレメント41が同じ命令で動作する。命令制御部42からプロセッサ部40へ接続されているプロセッサ部制御バス43には演算部50の制御信号バス、メモリ部60の制御バス、アドレスバス等が含まれている。また非線形変換用出力シフトレジスタ71、非線形変換用入力シフトレジスタ72およびテーブルメモリ70では非線形変換が行なわれる。
【0010】
続いてこの従来の並列処理プロセッサ15の動作について説明する。この構成において入力画像信号は外部データ入力バス21から画素データごとにラスタスキャン順で入力シフトレジスタ20に入力される。
【0011】
入力シフトレジスタ20はシフト動作で外部データ入力バス21からのデータを取り込んでいく。入力シフトレジスタ20は最低でも1ラインの画素数と同じ数のレジスタ段数を持つ。図24ではこのレジスタ段数はN段である。そして1ライン分の画素データを取り込み終わると、取り込んだデータをメモリ部60中のメモリ63に書き込む。
【0012】
入力シフトレジスタ20の各段から対応する位置のプロセッサエレメント41に対して入力データ転送バス22−1〜22−Nが接続されており、入力シフトレジスタ20内のデータはN個が並列にプロセッサ部40のメモリ部60中のメモリ63に転送される。入力データ転送バス22−1〜22−Nは全て同じ構成なので、以後入力データ転送バス22−1〜22−Nを入力データ転送バス22と呼ぶことにする。転送が終ると、入力シフトレジスタ20は次ラインの画素データの取り込みを開始する。
【0013】
演算部40ではメモリ部60中のメモリ63からデータが必要に応じて読み出されて、これに必要な算術演算処理および論理演算処理が施されて、演算結果をメモリ部60中のメモリ64に書き込む。図25に演算ユニット51の構成図を示す。
【0014】
演算ユニット51は演算器入力セレクタ55および演算器52から構成される。演算器入力セレクタ55は自プロセッサエレメントのメモリユニット中の各メモリバンクの出力65および左右の隣接プロセッサエレメントのメモリユニット中の各メモリバンクの出力66、67から演算器52に入力する2個のメモリバンクの出力を選択する。
【0015】
選択された2個のメモリバンクの出力は演算器入力セレクタ出力A56および演算器入力セレクタ出力B57を通して演算器52に入力される。演算器入力セレクタ制御バス58を通じて転送される命令制御部42からの演算器入力選択信号が演算器52への入力選択を制御している。
【0016】
演算器52は2つの入力を受け取ると演算器制御バス53を通じて転送される命令制御部42からの演算器制御信号で指定された演算を行ない、演算器出力54をメモリユニット61に出力し、メモリ64に書き込む。
【0017】
出力シフトレジスタ30は入力シフトレジスタ20と同数のレジスタ段数を持つ。図24ではレジスタ段数はN段である。出力シフトレジスタ30の各段から対応する位置のプロセッサエレメント41に対して出力データ転送バス32−1〜32−Nが接続されており、プロセッサ部40のメモリ部60中のメモリ64内のデータはN個が並列に出力シフトレジスタ30に転送される。出力データ転送バス32−1〜32−Nは全て同じ構成なので、以後出力データ転送バス32−1〜32−Nを出力データ転送バス32と呼ぶことにする。
【0018】
出力シフトレジスタ30に書き込まれたデータは入力シフトレジスタ20と同様にシフト動作で外部データ出力バス31を経由して並列処理プロセッサ15の外部へ出力される。入力シフトレジスタ20、プロセッサ部40、出力シフトレジスタ30はお互いに独立に同時に動作しており、いわゆるパイプライン動作をしている。
【0019】
続いて図24の並列処理プロセッサ15において非線形変換を実行する部分の動作について説明する。非線形変換される被変換データは1ライン分が同時にメモリ部60中のメモリ63から非線形変換用出力シフトレジスタ71に書き込まれる。この動作は出力シフトレジスタ30にデータを書き込む動作と同じである。非線形変換用出力シフトレジスタ71では被変換データ取り込み後、シフト動作でテーブルメモリ70へ被変換データを転送する。テーブルメモリ70は変換入力であるアドレスとそれに対応する変換出力データを保持しているテーブルであり、図26にその一例を示す。
【0020】
テーブルメモリ70では図26に示すように、非線形変換用出力シフトレジスタ71から転送されてきた被変換データをアドレスとして受け取り、このアドレスに対応する変換出力データを非線形変換用入力シフトレジスタ72に出力する。
【0021】
非線形変換用入力シフトレジスタ72ではテーブルメモリ70から転送されてきた変換出力データをシフト動作でレジスタ内に取り込む。この動作は入力シフトレジスタ20からデータを読み込む動作と同じである。取り込みが終了すると、1ライン分の変換出力データを同時にメモリ部60中のメモリ64に書き込む。
【0022】
非線形変換用出力シフトレジスタ71、テーブルメモリ70および非線形変換用入力シフトレジスタ72はそれぞれ独立に同時に動作しており、いわゆるパイプライン動作をしている。
【0023】
【発明が解決しようとする課題】
ところでこのように構成された従来の並列処理プロセッサ15で非線形変換を行なう場合には1ライン分の画素のシフト動作があるために、処理ステップ数は1ライン分の画素数以上になり、膨大な数の処理ステップが必要になる。
【0024】
また図24の従来の並列処理プロセッサ15ではプロセッサ部で1ライン分の画素の演算処理に使用できる時間が1ライン分の画素を入力するのに要する時間であるために、非線形変換用シフトレジスタと外部データ入出力シフトレジスタが同じ速度で動作している場合はプロセッサ部で使用できる処理時間が全て非線形変換処理に費やされてしまい、他の処理ができないという問題点がある。
【0025】
本発明は上記のごとき従来技術の問題を解決するためになされたものであり、非線形変換を効率良く実現することのできる並列処理プロセッサを提供することを目的とする。
【0026】
【課題を解決するための手段】
請求項1に記載の本発明は、変換入力データメモリおよび変換出力データメモリを備え、さらに上記の各プロセッサエレメントに比較器と被変換データレジスタおよび変換出力データレジスタを備え、上記比較器では上記変換入力データメモリに保持されている変換入力データと上記被変換データレジスタに保持されている被変換データの比較を実行し、上記変換出力データレジスタは上記比較器での比較結果を参照して上記変換出力データメモリに保持されている変換出力データの取り込みを選択的に実行可能にしたことを特徴とする。
【0027】
請求項2に記載の本発明は、上記比較器を一致比較器で構成し、一致比較器は上記変換入力データメモリに保持されている変換入力データと上記被変換データレジスタに保持されている被変換データの一致比較を実行し、上記変換出力データレジスタは上記一致比較器での比較結果が一致するとき上記変換出力データメモリに保持されている変換出力データの取り込みを実行することを特徴とする
【0028】
請求項3に記載の本発明は、上記被変換データを複数の区間に分割し、かつ上記区間と対応付けて上記変換入力データを設定すると共に、上記比較器は大小比較器で構成され、上記変換入力データが示す区間と上記被変換データが属する区間とを比較し、区間が一致すると取り込み出力を発生し、上記変換出力データレジスタはこの取り込み出力で上記変換出力データメモリに保持されている上記被変換データが属する区間に対応する変換出力データの取り込みを実行することを特徴とする。
【0029】
請求項4に記載の本発明は、上記比較器での比較結果を保持する比較結果レジスタを備えたことを特徴とする。
【0030】
請求項5に記載の本発明は、上記命令制御部が比較結果レジスタの内容でプロセッサエレメント中の演算器の動作を制御する構成にしたことを特徴とする。
【0031】
請求項6に記載の本発明は、プロセッサに命令を与える上記命令制御部が上記比較結果レジスタの内容によりプロセッサエレメントの動作の制御を選択的に実行する構成にしたことを特徴とする。
【0032】
請求項7に記載の本発明は、上記命令制御部が比較結果レジスタの内容でプロセッサエレメント中の演算器への入力を選択する構成にしたことを特徴とする。
【0033】
請求項8に記載の本発明は、上記命令制御部が比較結果レジスタの内容でプロセッサエレメント中の演算器からの出力を選択する構成にしたことを特徴とする。
【0034】
【発明の実施の形態】
実施の形態1.
本発明の実施の形態1を図1に基づき説明する。図1に示した本発明の並列処理プロセッサ1はプロセッサエレメント41の数をN個とし、図24に示すテーブルメモリ70、非線形変換用出力シフトレジスタ71、および非線形変換用入力シフトレジスタ72の代わりに比較変換部100を設けたものである。
【0035】
図1中の比較変換部100以外の部分は図24に示した従来の並列処理プロセッサ15と同様の動作をする。即ち、入力シフトレジスタ20、プロセッサ部40および出力シフトレジスタ30はパイプライン動作をし、プロセッサ部40ではSIMD制御によるN個の並列処理が行なわれる。メモリユニット61内のメモリバンク数は任意の数であるが、本実施の形態ではメモリバンク63、64の2バンクである。
【0036】
図2に比較変換部100の詳細な構成を示す。比較変換部100は大きく分けて、比較部110、変換部130、変換入力データメモリ150および変換出力データメモリ153から構成される。
【0037】
変換入力データメモリ150には非線形変換前の変換入力データが保持されており、このデータは図24の従来の並列処理プロセッサ15におけるテーブルメモリ70の変換入力データに対応する。変換出力データメモリ153には非線形変換後のデータが保持されており、このデータは図24の従来の並列処理プロセッサ15におけるテーブルメモリ70からの変換出力データに対応する。
【0038】
比較部110はN個の比較ユニット113−1〜113−Nから構成され、各比較ユニット113−1〜113−Nは命令制御部42からの制御信号で制御され、この制御信号は比較部制御バス112を通じて各比較ユニット113−1〜113−Nへ転送される。比較ユニット113−1〜113−Nは全て同じ構成なので、以後比較ユニット113−1〜113−Nを比較ユニット113と呼ぶことにする。
【0039】
同様に変換部130はN個の変換ユニット133−1〜133−Nから構成され、各変換ユニット133−1〜133−Nは命令制御部42からの制御信号で制御され、この制御信号は変換部制御バス132を通じて各変換ユニット133−1〜133−Nへ転送される。変換ユニット133−1〜133−Nは全て同じ構成なので、以後変換ユニット133−1〜133−Nを変換ユニット133と呼ぶことにする。
【0040】
次に、比較変換部100の動作の概略について説明する。図27は本発明方式の非線形変換の動作を表している。本発明の方式では並列に配置された1ライン分の被変換データの中からある変換入力データ値と一致するものを全て検索し、その値を変換出力データ値に一致したものを全て同時に変換するという方法で非線形変換を行なう。
【0041】
非線形変換される被変換データは各プロセッサエレメント41から1ライン分が同時に各比較ユニット113に書き込まれる。各比較ユニット113では変換入力データメモリ150から転送される変換入力データと各比較ユニット113内に書き込まれた被変換データとを比較して比較結果信号を比較結果信号バス140を通して変換部130に転送する。比較ユニット113の比較結果が一致である場合には、各変換ユニット133で変換出力データメモリ153からの変換出力データを各変換ユニット133に書き込む。各変換ユニット133に書き込まれた変換出力データは1ライン分が同時に各プロセッサエレメント41に転送される。
【0042】
続いて比較変換部100の各部分について詳細に説明する。図3に比較ユニット113の構成を示す。比較ユニット113は被変換データレジスタ114および一致比較器120から構成される。被変換データレジスタ114および一致比較器120の動作は命令制御部42からの制御信号で制御され、この制御信号は比較部制御バス112を通じて比較ユニット113へ転送される。
【0043】
比較部制御バス112は被変換データレジスタ制御バス115と一致比較器制御バス121から構成されている。被変換データレジスタ114がプロセッサエレメント41から被変換データを取り込む動作は、命令制御部42からの制御信号で制御され、この制御信号は被変換データレジスタ制御バス115を通じて被変換データレジスタ114へ転送される。また一致比較器120からの比較結果信号の出力は命令制御部42からの制御信号で制御され、この制御信号は一致比較器制御バス121を通じて一致比較器120へ転送される。
【0044】
被変換データレジスタ114にはプロセッサエレメント41からの被変換データが取り込まれる。被変換データレジスタ114はフリップフロップあるいはDRAMセルのような素子で構成されたレジスタであり、被変換データを保持しておく機能を持つ。被変換データレジスタ114は最低でも被変換データのbit幅以上のbit幅を持つ。
【0045】
プロセッサエレメント41からの被変換データは比較部転送バス111を通じて被変換データレジスタ114に転送される。比較部転送バス111のbit幅は任意であるが、本実施の形態では比較部転送バス111の幅が1bitの場合について説明している。ゆえに8bitの被変換データを被変換データレジスタ114に転送する場合には1bitのデータ転送を8回実行することで実現する。
【0046】
被変換データレジスタ114に保持された被変換データは一致比較器120に転送される。転送バス116のbit幅は被変換データレジスタ114のbit幅と同じである。被変換データレジスタ114は命令制御部42からの制御信号で制御され、この制御信号は被変換データレジスタ制御バス115を通じて被変換データレジスタ114へ転送される。被変換データレジスタ制御バス115は被変換データレジスタ114へのアドレスバス117、ライト信号バス118、リード信号バス119から構成される。
【0047】
比較部転送バス111から送られてくる被変換データが書き込まれる被変換データレジスタ114上での位置は、アドレスバス117を通じて転送されるアドレス信号で指定され、書き込みのタイミングはライト信号バス118を通じて転送されるライト信号で与えられる。また被変換データレジスタ114に保持されている被変換データを読み出すタイミングはリード信号バス119を通じて転送されるリード信号で与えられる。
【0048】
一致比較器120は多ビットの一致判定をする比較器であり、被変換データレジスタ114からの被変換データと変換入力データメモリ150からの変換入力データを比較する。2つのデータが一致していてかつ一致比較器制御バス121からの制御信号が一致比較器を動作させる値の”1”である場合には比較結果信号バス140に比較結果信号として一致であることを表す”1”の値を出力し、それ以外の場合は比較結果信号バス140に比較結果信号として不一致であることを表す”0”の値を出力する。また一致比較器120からの比較結果信号は比較器制御バス121からの制御信号が”1”の時だけ出力される。
【0049】
図4に変換ユニット133の構成を示す。変換ユニット133は変換出力データレジスタ134から構成される。変換出力データレジスタ134はフリップフロップあるいはDRAMセルのような素子で構成されたレジスタであり、変換出力データを保持しておく機能を持つ。変換出力データレジスタ134は最低でも変換出力データのbit幅以上のbit幅を持つ。
【0050】
比較結果信号バス140を介した比較ユニット113からの比較結果信号が一致を表す”1”である場合は変換出力データメモリ153からの変換出力データが変換出力データレジスタ134に書き込まれる。変換出力データメモリ153からの変換出力データは変換出力データ転送バス155を通して変換出力データレジスタ134に転送される。変換出力データ転送バス155のbit幅は最低でも転送する変換出力データのbit幅以上ある。比較結果信号バス140からの比較結果信号が”0”である場合には変換出力データレジスタ134には何も書き込まれない。
【0051】
変換出力データレジスタ134は命令制御部42からの制御信号で制御され、この制御信号は変換部制御バス132を通じて変換出力データレジスタ134へ転送される。変換部制御バス132は変換出力データレジスタ134へのアドレスバス135、ライト信号バス136、リード信号バス137で構成される。変換出力データ転送バス155からの変換出力データを変換出力データレジスタ134に書き込む時にはライト信号バス136へ送るライト信号を”1”の値にする。
【0052】
変換出力データレジスタ134に書き込まれた変換出力データは変換部転送バス131を通してプロセッサエレメント41へ転送される。変換出力データレジスタ134上で変換部転送バス131へ送り出す変換出力データを読み出す位置はアドレスバス135からのアドレス信号で指定され、読み出しのタイミングはリード信号バス137からのリード信号で与えられる。変換部転送バス131のbit幅は任意であるが、本実施の形態では変換部転送バス131のbit幅が1bitの場合について説明している。ゆえに8bitのデータを変換出力データレジスタ134から転送する場合には1bitのデータ転送を8回実行することで実現する。
【0053】
図5に変換入力データメモリ150および変換出力データメモリ153の構成を示す。非線形変換を行うために変換入力データメモリ150には非線形変換前の変換入力データが保持されており、変換出力データメモリ153には非線形変換後の変換出力データが保持されている。変換入力データメモリ150および変換出力データメモリ153のアドレスは連動しており、変換入力データメモリ150の出力に非線形変換前の変換入力データが出力されると、変換出力データメモリ153の出力には対応する非線形変換後の変換出力データが出力される。
【0054】
次に非線形変換の動作を図6に従って説明する。非線形変換を行うときには変換入力データメモリ150から変換入力データ転送バス152へ非線形変換前の変換入力データが順次送り出されると同時に、変換出力データメモリ153から変換出力データ転送バス155へ対応する非線形変換後の変換出力データが送り出される。送り出される変換入力データおよび変換出力データの数は非線形変換で扱う変換入力データの階調数と同じであり、256階調の非線形変換の場合は256個の非線形変換前の変換入力データが変換入力データメモリ150から変換入力データ転送バス152へ送り出され、非線形変換後の変換出力データが変換出力データメモリ153から変換出力データ転送バス155へ送り出される。
【0055】
変換入力データ転送バス152の変換入力データと比較ユニット113の被変換データレジスタ114に保持されている被変換データとが一致した比較ユニット113だけが、対応する変換ユニット133に一致していることを表す”1”の比較結果信号を送り、変換ユニット133が変換出力データ転送バス155からの変換出力データを取り込む。この動作を被変換データの全ての階調について行うことで、各変換ユニット133の変換出力データレジスタ134に非線形変換後の変換出力データが取り込まれ、非線形変換が実施される。
【0056】
本実施の形態による方法で非線形変換を行うと、その処理ステップ数は被変換データの階調数と一致する。図24に示した従来の並列処理プロセッサ15では非線形変換に要する処理ステップ数は1ライン分の画素数である。本発明の実施の形態による方式ならば処理ステップ数は被変換データの階調数であるために、1ライン分の画素数が被変換データの階調数よりも多い場合には、本発明の実施の形態による方式は非常に有効である。
【0057】
実施の形態2.
本発明の実施の形態2を図7に基づき説明する。図7に示した並列処理プロセッサ7は図1に示す並列処理プロセッサ1の比較変換部100に代えて近似非線形変換を実行する係数転送部200を設けたものであり、プロセッサエレメント41の数は実施の形態1と同様N個としている。
【0058】
本発明の特徴的部分である近似非線形変換を実行する係数転送部200について説明する前に、近似非線形変換について説明する。画像処理では非線形変換が頻繁に用いられる。非線形変換の入力に対する出力のグラフの一例を図28に示す。このような非線形変換全体を2次式あるいは3次式程度の低次の多項式で近似すると、近似誤差が大きく実用的ではない。
【0059】
そこで図29のように入力をいくつかの区間に区切って、区間毎に多項式近似を行なうことで近似誤差を少なくすることができる。このように区間毎に多項式近似を行なって非線形変換を近似的に実現する手法を近似非線形変換と呼ぶことにする。
【0060】
図30中の近似多項式は図29のグラフに示したような非線形変換を近似非線形変換する多項式である。図30の近似多項式では区間の数を4にして、近似多項式の次数を2にしている。そのため近似多項式の係数の数が一つの区間毎に3個で合計12個ある。
【0061】
また図30は近似非線形変換のフローチャートである。近似非線形変換は3種類の処理から構成される。1番目の処理は被変換データがどの区間に入っているかを判定する処理である。2番目の処理は対応する区間の近似多項式の係数を係数メモリからロードする処理である。3番目の処理は図30に示した多項式演算を行ない、変換出力値を求める処理である。
【0062】
1番目の区間判定処理および2番目の対応する近似多項式の係数転送処理は、被変換データの値によって区間および対応する近似多項式の係数が異なるために、全てのプロセッサエレメントが同じ動作をするSIMD型プロセッサでは実現するのが困難である。そこで本発明では区間判定処理および近似多項式の係数転送処理を実行する係数転送部200を備えている。
【0063】
続いて被変換データの区間判定および対応する近似多項式の係数転送を並列に処理する係数転送部200について説明する。図7中の係数転送部200以外の部分は図24に示した従来の並列処理プロセッサ15と同様の動作をし、入力シフトレジスタ20、プロセッサ部40および出力シフトレジスタ30はパイプライン動作をし、プロセッサ部40ではSIMD制御によるN個の並列処理が行なわれる。
【0064】
図8に係数転送部200の詳細な構成を示す。係数転送部200は大きく分けて、区間比較部210、係数取得部220、区間データメモリ230および係数データメモリ233から構成される。
【0065】
区間データメモリ230には近似非線形変換で使用する区間の区切りの値が保持されている。係数データメモリ233には区間毎の近似多項式の係数データが保持されている。
【0066】
区間比較部210はN個の区間比較ユニット213−1〜213−Nから構成され、各区間比較ユニット213−1〜213−Nは1つの区間比較部制御バス212からの信号で制御される。区間比較ユニット213−1〜213−Nは全て同じ構成なので、以後区間比較ユニット213−1〜213−Nを区間比較ユニット213と呼ぶことにする。
【0067】
同様に係数取得部220はN個の係数取得ユニット223−1〜223−Nから構成され、各係数取得ユニット223−1〜223−Nは1つの係数取得部制御バス222からの信号で制御される。係数取得ユニット223−1〜223−Nは全て同じ構成なので、以後係数取得ユニット223−1〜223−Nを係数取得ユニット223と呼ぶことにする。
【0068】
次に係数転送部200の動作の概略について説明する。非線形変換される被変換データはプロセッサエレメント41から1ライン分が同時に各区間比較ユニット213に書き込まれる。各区間比較ユニット213では区間データメモリ230から転送される区間の区切りを表す区間データと各区間比較ユニット213内に書き込まれた被変換データとを比較して比較結果を係数取得部220に転送する。
【0069】
各係数取得ユニット223では比較結果に応じて、係数データメモリ233からの近似多項式の係数データを各係数取得ユニット223に書き込むか否かを決定する。各係数取得ユニット223に書き込まれた近似多項式の係数データは1ライン分が同時にプロセッサエレメント41に転送される。
【0070】
続いて係数転送部200の各部分について詳細に説明する。図9に区間比較ユニット213の構成を示す。区間比較ユニット213は被変換データレジスタ114および大小比較器214から構成される。被変換データレジスタ114および大小比較器214の動作は区間比較部制御バス212から転送される区間比較部制御信号で制御される。
【0071】
区間比較部制御バス212は被変換データレジスタ制御バス115と大小比較器制御バス215から構成されている。被変換データレジスタ制御バス115から転送される被変換データレジスタ制御信号は被変換データレジスタ114がプロセッサエレメント41から被変換データを取り込む動作を制御する。大小比較器制御バス215から転送される大小比較器制御信号は大小比較器214からの比較結果の出力を制御する。
【0072】
被変換データレジスタ114にはプロセッサエレメント41からの被変換データが取り込まれる。被変換データレジスタ114はフリップフロップあるいはDRAMセルのような素子で構成されたレジスタであり、被変換データを保持しておく機能を持つ。被変換データレジスタ114は最低でも被変換データのbit幅以上のbit幅を持つ。
【0073】
プロセッサエレメント41からの被変換データは区間比較部転送バス212を通じて被変換データレジスタ114に転送される。区間比較部転送バス212のbit幅は任意であるが、本実施の形態では区間比較部転送バス212のbit幅が1bitの場合について説明している。ゆえに8bitの被変換データを被変換データレジスタ114に転送する場合には1bitのデータ転送を8回実行することで実現する。
【0074】
被変換データレジスタ114に保持された被変換データは転送バス116を通じて大小比較器214に転送される。転送バス116のbit幅は被変換データレジスタ114のbit幅と同じである。
【0075】
被変換データレジスタ114は被変換データレジスタ制御バス115から転送される命令制御部42からの被変換データレジスタ制御信号で制御される。被変換データレジスタ制御バス115は被変換データレジスタ114へのアドレスバス117、ライト信号118、リード信号119から構成される。
【0076】
区間比較部転送バス211から送られてくる被変換データが書き込まれる被変換データレジスタ114上での位置はアドレスバス117から転送されるアドレス信号で指定され、書き込みのタイミングはライト信号バス118から転送されるライト信号で与えられる。また被変換データレジスタ114に保持されている被変換データを読み出すタイミングはリード信号バス119から転送されるリード信号で与えられる。
【0077】
大小比較器214は多ビット幅の大小比較器であり、被変換データレジスタ114からの被変換データと区間データメモリ230からの区間データの大小を比較する。2つのデータの大小を比較して被変換データの方が小さくかつ大小比較器制御バス215からの信号が大小比較器を動作させる値である”1”である場合に比較結果信号バス140に被変換データの方が小さいことを表す”1”の値を出力し、それ以外の場合は比較結果信号バス140に被変換データの方が大きいことを表す”0”の値を出力する。大小比較器214からの比較結果信号は大小比較器制御バス215からの大小比較器制御信号が”1”の時にだけ出力される。
【0078】
図10に係数取得ユニット223の構成を示す。係数取得ユニット223は最低でも1個以上の係数データレジスタ224から構成される。係数データレジスタ224の個数は1つの近似多項式に含まれる係数の個数と等しくするのが理想的である。図10では係数データレジスタの個数が224−A〜224−Cの3個の場合を表している。
【0079】
係数データレジスタ224−A〜224−CはフリップフロップあるいはDRAMセルのような素子で構成されたレジスタであり、近似多項式の係数データを保持しておく機能を持つ。係数データレジスタ224−A〜224−Cは最低でも近似多項式の係数データのbit幅以上のbit幅を持つ。
【0080】
区間比較ユニット213での比較結果信号が”1”である場合は係数データメモリ233からの近似多項式の係数データが係数データレジスタ224−A〜224−Cに取り込まれる。係数データメモリ233からの近似多項式の係数データは係数データ転送バス235を通して転送される。
【0081】
係数データ転送バス235のbit幅は係数取得ユニット内の各係数データレジスタのbit幅の和である。図10の場合は近似多項式が2次式であり、係数データレジスタが3個あるので係数データ転送バスのbit幅は近似多項式の係数データのbit幅の3倍である。また比較結果が”0”である場合には係数データレジスタ224には何も取り込まれない。
【0082】
係数データレジスタ224−A〜224−Cは命令制御部42からの係数取得部制御バス222から転送される係数取得部制御信号で制御される。係数取得部制御バス222は係数データレジスタ224−A〜224−Cへのアドレスバス225、ライト信号バス226、リード信号バス227および係数データレジスタ選択信号バス229で構成される。
【0083】
係数データ転送バス235からの近似多項式の係数データを係数データレジスタ224−A〜224−Cに取り込む時にはライト信号バス226へ送出するライト信号をイネーブルにする。
【0084】
係数データレジスタ224−A〜224−Cに取り込まれた近似多項式の係数データは係数取得部転送バス221を通してプロセッサエレメント41へ転送される。係数データレジスタ224−A〜224−C上で係数取得部転送バス221へ送り出す近似多項式の係数データを読み出す位置はアドレスバス225からのアドレス信号で指定され、読み出しのタイミングはライト信号バス227からのライト信号で与えられる。またどの係数データレジスタの値を係数取得部転送バスへ送り出すかは係数データレジスタセレクタ228において係数データレジスタ選択信号バス229からの係数データレジスタ選択信号で選択される。
【0085】
なお係数データレジスタ224が1個の場合は係数データレジスタセレクタ228および係数データレジスタ選択信号バス229は必要なく、係数データレジスタ224の出力が直接係数取得部転送バス221に接続される。係数取得部転送バス221のbit幅は任意であるが、本実施の形態では係数取得部転送バス221のbit幅が1bitの場合について説明している。ゆえに8bitのデータを係数データレジスタ224から転送する場合には1bitのデータ転送を8回実行することで実現する。
【0086】
係数データレジスタの個数が近似多項式の係数の個数よりも少ない場合は、上記の係数取得の動作を複数回実行することで近似多項式で使用する全係数データをプロセッサ部40へ転送する。例えば係数データレジスタが1個で、近似多項式が2次式である場合には、近似多項式の係数データは3個必要であるので、係数取得の動作を3回実行して近似多項式の係数データを取得する。
【0087】
図11に区間データメモリ230および係数データメモリ233の構成を示す。近似非線形変換を行うために区間データメモリ230には近似する区間の区切りを表す区間データが保持されており、係数データメモリ233には近似多項式の係数データが保持されている。区間データメモリ230および係数データメモリ233のアドレスは連動しており、区間データメモリ230の出力に区間データが出力されると、係数データメモリ233の出力には対応する近似多項式の係数データが出力される。
【0088】
次に近似非線形変換の動作を図12に従って説明する。近似非線形変換を行うときには区間データメモリ230から区間データ転送バス232へ一つの区間の区切りを表す区間データが順次送り出されると同時に、係数データメモリ233から係数データ転送バス235へ対応する区間の近似多項式の係数データが順次送り出される。順次送り出される区間データおよび近似多項式の係数データの数は区間の数と同じである。
【0089】
区間データ転送バス232の区間データと区間比較ユニット213の被変換データレジスタ114に保持されている被変換データとを比較し、被変換データの方が区間データよりも小さい区間比較ユニット213だけが、対応する係数取得ユニット223に被変換データの方が小さいことを表す”1”の比較結果信号を送り、係数取得ユニット223が係数データ転送バス235からの近似多項式の係数データを取り込む。
【0090】
この動作を入力値の小さい区間から順に行い、全ての区間について行うことで、各係数取得ユニット223の係数データレジスタ224に近似多項式の係数データが取り込まれる。取り込まれた近似多項式の係数データはプロセッサ部40へ転送され、近似多項式の演算処理が行なわれ、非線形変換の変換値が求められる。
【0091】
本発明の実施の形態による方法で非非線形変換を行うと、その処理ステップ数は係数転送にかかるステップ数と近似演算にかかるステップ数の和になる。図24に示した従来の並列処理プロセッサ15では非線形変換に要する処理ステップ数は1ライン分の画素数である。本発明の実施の形態による方式ならば区間数を適切に設定することで係数転送にかかるステップ数を大幅に削減することができるため、非線形変換処理を高速に実行することができる。
【0092】
実施の形態3.
本発明の実施の形態3を図13に基づき説明する。図13に示した並列処理プロセッサ2はプロセッサエレメント41の数をN個とし、比較変換部101は図1で示した比較変換部100に比較結果信号レジスタ141を付加したものである。その他は図1に示す並列処理プロセッサ1と同様である。
【0093】
比較変換部101は大きく分けて、比較部110、変換部130、変換入力データメモリ150、変換出力データメモリ153および比較結果信号レジスタ141から構成される。
【0094】
比較変換部101では図1で示した比較変換部100と同様に非線形変換処理を行なうことの他に、比較部101からの比較結果信号でプロセッサエレメント41を制御することが可能である。比較結果信号でプロセッサエレメント41を制御することで、プロセッサエレメント41での選択的な動作が可能になり、条件分岐処理等を効率良く実行することができる。
【0095】
図13中の比較変換部101以外の部分は図24に示した従来の並列処理プロセッサ15と同様の動作をする。つまり入力シフトレジスタ20、プロセッサ部40および出力シフトレジスタ30はパイプライン動作をし、プロセッサ部40ではSIMD制御でN個の並列処理が行なわれる。
【0096】
比較変換部101の動作について説明する。図14に比較変換部101の詳細な構成を示す。図13中の比較部110、変換部130、変換入力データメモリ150および変換出力データメモリ153は図2の比較変換部100と同様の動きをする。
【0097】
比較結果信号レジスタ141は比較ユニット110から送られてくる比較結果信号を保持しておくレジスタであり、フリップフロップあるいはDRAMセルのようなデータを保持する機能を持った素子で構成されている。保持された比較結果信号は変換ユニット133あるいはプロセッサエレメント41で使用される。
【0098】
続いて比較変換部101を用いた非線形変換処理の動作と、比較結果信号によるプロセッサエレメント41の制御の動作について説明する。
【0099】
比較ユニット113の動作は実施の形態1の比較ユニット113の動作と同じである。被変換データはプロセッサエレメント41から1ライン分が同時に各比較ユニット113に書き込まれる。各比較ユニット113では各比較ユニット113内に書き込まれた被変換データと変換入力データメモリ150から転送される変換入力データとを比較して、比較結果信号を出力し、その値を比較結果信号レジスタ141に保持しておく。
【0100】
非線形変換を行なう場合には上記実施の形態1の方法により、各変換ユニット133が比較結果信号レジスタ141に保持されている比較結果信号に応じて、変換出力データメモリ153からの変換出力データを各変換ユニット133に書き込むか否かを決定する。
【0101】
各変換ユニット133内に取り込まれた変換出力データは1ライン分が同時にプロセッサエレメント41に送り出される。変換ユニット133の動作も実施の形態1の変換ユニット133の動作と同じである。
【0102】
比較結果信号バス140からの比較結果信号でプロセッサエレメント41の動作を制御する場合には比較結果信号レジスタ141に保持されている比較結果信号がプロセッサエレメント41に送られ、この信号でプロセッサエレメント41の動作を制御する。
【0103】
このように構成することで比較部110での比較処理とプロセッサエレメント41での演算処理を並行して行なうことができ、かつ比較結果信号によってプロセッサエレメント41の動作を制御することができるため、プロセッサエレメント41での選択的な動作が可能になり、条件分岐処理を効率良く実現することができる。
【0104】
なお、上記実施の形態3では、上記実施の形態1の適用について説明したが、上記実施の形態2についても、適用することが可能である。その場合の実施例を図15に示す。この場合、比較結果信号レジスタ141は区間比較部210から送られてくる比較結果信号を保持しておき係数取得部210は、比較結果信号レジスタ141に保持されている比較結果信号に応じて、係数データを取り込むか否かを決定する。
【0105】
係数取得部210内に取り込まれた変換出力データは1ライン分が同時にプロセッサエレメント41に送り出される。比較結果信号レジスタ141からの比較結果信号でプロセッサエレメント41の動作を制御する場合には比較結果信号レジスタ141に保持されている比較結果信号がプロセッサエレメント41に送られ、この信号でプロセッサエレメント41の動作を制御する。
【0106】
実施の形態4.
本発明の実施の形態4を図16に基づき説明する。図16に示した並列処理プロセッサ3はプロセッサエレメント41の数をN個とし、図13で示した比較変換部101の演算ユニット51の代わりにコマンド選択演算ユニット160を備えたものである。
【0107】
図16中の入力シフトレジスタ20、出力シフトレジスタ30およびメモリ部60は図24に示した従来の並列処理プロセッサ15と同様の動作をする。
【0108】
また図16中の比較部110、変換部130、変換入力データメモリ150、変換出力データメモリ153および比較結果信号レジスタ141は図13に示した並列処理プロセッサ2のそれと同じ動作をする。
【0109】
本実施の形態では演算部50中の演算ユニット51が図25に示した演算ユニット51とは異なり図17に示したコマンド選択演算ユニット160になっている。
【0110】
コマンド選択演算ユニット160は図17に示すように演算器52、演算器入力セレクタ55およびコマンドセレクタ161から構成されている。演算器52および演算器入力セレクタ55は図25に示した演算器52および演算器入力セレクタ55と同じものである。
【0111】
コマンドセレクタ161は2入力1出力のセレクタである。コマンドセレクタ161の入力には演算器制御バス53およびNOP命令バス163が接続され、出力にはコマンドセレクタ出力162が接続され、各バスとも同じbit幅を持っている。演算器制御バス53には命令制御部42でデコードされた命令を演算器52で実行する演算器命令信号が入力される。NOP命令バス163にはNOP命令を演算器で実行するNOP命令信号が入力される。
【0112】
コマンドセレクタ161の出力162は各コマンド選択演算ユニット160ー1〜160ーNに接続され、コマンド選択演算ユニット160ー1〜160ーNの動作を制御する。またコマンドセレクタ161の出力162は比較結果信号レジスタ141からの信号でセレクトされる。
【0113】
比較結果信号レジスタ141の値が”1”の場合には演算器命令信号が選択され、”0”の場合にはNOP命令信号が選択される。
【0114】
このように構成することで比較部110での比較結果によってコマンド選択演算ユニット160の動作を命令制御部42が指示する動作あるいはNOP動作の何れかから選択することができ、プロセッサエレメント41での選択的な動作が可能になり、条件分岐処理等を効率良く実現することができる。
【0115】
なお、上記実施例は実施の形態1に適用する場合について述べたが、上記実施の形態2に適用できることは言うまでもない。
【0116】
実施の形態5.
本発明の実施の形態5を図18に基づき説明する。図18に示した並列処理プロセッサ4はプロセッサエレメント41の数をN個とし、図13で示した比較変換部101の演算ユニット51の代わりに選択的コマンド選択演算ユニット170を備えたものである。
【0117】
図17中の入力シフトレジスタ20、出力シフトレジスタ30およびメモリ部60は図23に示した従来の並列処理プロセッサ15と同様の動作をする。
【0118】
また図18中の比較部110、変換部130、変換入力データメモリ150、変換出力データメモリ153および比較結果信号レジスタ141は図13に示した並列処理プロセッサ2のそれと同じ動作をする。
【0119】
本実施の形態では演算部50中の演算ユニット51が図25に示した演算ユニット51とは異なり図19に示した選択的コマンド選択演算ユニット170になっている。
【0120】
選択的コマンド選択演算ユニット170は図19に示ように演算器52、演算器入力セレクタ55、コマンドセレクタ161およびコマンド選択スイッチ171から構成されている。演算器52および演算器入力セレクタ55は図25に示した演算器52および演算器入力セレクタ55と同じものである。
【0121】
コマンドセレクタ161は2入力1出力のセレクタであり、図17のコマンドセレクタ161と同様に接続されている。
【0122】
コマンド選択スイッチ171は比較結果信号レジスタ141からの信号をコマンドセレクタ161に入力するか否かを選択するスイッチであり、コマンド選択信号バス173からのコマンド選択信号で制御される。命令制御部42からのコマンド選択信号が”1”の時は比較結果信号がコマンドセレクタ161に送られ、”0”のときにはコマンドセレクタ161に”0”の信号が送られる。
【0123】
コマンドセレクタ161はコマンド選択スイッチ171からの信号が”1”の場合には演算器命令信号を選択し、”0”の場合にはNOP命令信号を選択する。
【0124】
コマンドの中にコマンド選択信号の値を埋め込むことで、比較結果信号を参照するコマンドと参照しないコマンドの2種類のコマンドを用意することができる。比較結果信号レジスタ141の値を参照する場合には、比較部110での比較結果によって選択的コマンド選択演算ユニット170の動作を命令制御部42が指示する動作あるいはNOP動作のいずれかから選択することができる。
【0125】
また比較結果信号レジスタ141の値を参照しない場合には、命令制御部42が指示する動作をそのまま選択的コマンド選択演算ユニット170に送ることができる。このような構成にすることでプロセッサエレメント41での選択的な動作が可能になり、条件分岐処理等をより効率的に実行することができる。
【0126】
なお、上記実施例は実施の形態1に適用する場合について述べたが、上記実施の形態2に適用できることは言うまでもない。
【0127】
実施の形態6.
本発明の実施の形態6を図20に基づき説明する。図20に示した並列処理プロセッサ5はプロセッサエレメント41の数をN個とし、図13で示した比較変換部101の演算ユニット51の代わりに入力ソース選択演算ユニット180を備えたものである。
【0128】
図20中の入力シフトレジスタ20、出力シフトレジスタ30およびメモリ部60は図24に示した従来の並列処理プロセッサ15と同様の動作をする。
【0129】
また図20中の比較部110、変換部130、変換入力データメモリ150、変換出力データメモリ153および比較結果信号レジスタ141は図13に示した並列処理プロセッサ2のそれと同じ動作をする。
【0130】
本実施の形態では演算部50中の演算ユニット51が図25に示した演算ユニット51とは異なり図21に示した入力ソース選択演算ユニット180になっている。
【0131】
入力ソース選択演算ユニット180は図21に示すように演算器52、演算器入力セレクタ55および入力ソースセレクタ181から構成されている。演算器52および演算器入力セレクタ55は図25に示した演算器52および演算器入力セレクタ55と同じものである。
【0132】
入力ソースセレクタ181は多入力2出力のセレクタである。入力ソースセレクタ181の入力にはメモリユニット61中のメモリバンク63および64からの出力バス65が接続される。入力ソースセレクタ181には自プロセッサエレメント41のメモリユニット61中の各メモリバンク63の出力バス65の他に、左右に隣接するプロセッサエレメント41のメモリユニット61中のメモリバンク63の出力バス65が入力される。
【0133】
入力ソースセレクタ181はそれらのメモリバンク63の出力バス65の中から2組のメモリバンク63の出力バス56および57を選択し、演算器52の入力へ接続している。入力ソースセレクタ181の選択信号は入力ソースセレクタ制御バス183および比較結果信号バス140から与えられる。入力ソースセレクタ制御信号および比較結果信号の組合せで演算器52へ接続する2組のメモリバンクの出力を選択し、演算器入力セレクタ出力A56および演算器入力セレクタ出力B57に出力する。
【0134】
本構成では比較結果信号の値によって入力ソースを変えることができる。このように構成することで比較部110での比較結果によって演算器52への入力を選択することができ、プロセッサエレメント41での選択的な動作が可能になり、条件分岐処理等を効率良く実現することができる。
【0135】
なお、上記実施例は実施の形態1に適用する場合について述べたが、上記実施の形態2に適用できることは言うまでもない。
【0136】
実施の形態7.
本発明の実施の形態7を図22に基づき説明する。図22に示した並列処理プロセッサ6はプロセッサエレメント41の数をN個とし、図13で示した比較変換部101の演算ユニット51の代わりに出力データ選択演算ユニット190を備えたものである。
【0137】
図22中の入力シフトレジスタ20、出力シフトレジスタ30およびメモリ部60は図24に示した従来の並列処理プロセッサ15と同様の動作をする。
【0138】
図22中の比較部110、変換部130、変換入力データメモリ150、変換出力データメモリ153および比較結果信号レジスタ141は図13に示した並列処理プロセッサ2のそれと同じ動作をする。
【0139】
本実施の形態では演算部50中の演算ユニット51が図25に示した演算ユニット51とは異なり図23に示した出力データ選択演算ユニット190になっている。
【0140】
出力データ選択演算ユニット190は図23に示すように演算器52、演算器入力セレクタ55および出力データセレクタ191から構成されている。演算器52および演算器入力セレクタ55は図25に示した演算器52および演算器入力セレクタ55と同じものである。
【0141】
出力データセレクタ191は多入力1出力のセレクタである。1つの入力には演算器52からの演算器出力55が入力される。他の入力には自プロセッサエレメント41および隣接プロセッサエレメント41中のメモリバンク63および64の出力バス65が接続される。
【0142】
出力データセレクタ191はそれらの入力中から1つの出力を選択し、出力データ選択演算ユニット出力192として出力している。出力データセレクタ191の選択信号は出力データセレクタ制御バス193および比較結果信号バス140で与えられる。出力データセレクタ制御信号および比較結果信号の組合せで、出力データ選択演算ユニット190外へ出力する1組の出力を選択する。
【0143】
本構成では比較結果信号の値によって出力データを変えることができる。このように構成することで比較部110での比較結果によって出力データ演算ユニット190の出力データを選択することができ、プロセッサエレメント41での選択的な動作が可能になり、条件分岐処理等を効率良く実現することができる。
【0144】
なお、上記実施例は実施の形態1に適用する場合について述べたが、上記実施の形態2に適用できることは言うまでもない。
【0145】
【発明の効果】
請求項1および2記載の本発明によれば、SIMD方式のプロセッサでは処理ステップ数が多く必要になる非線形変換処理を、並列に非線形変換することでより少ないステップ数で高速に実現可能となる。
【0146】
請求項3記載の本発明によれば、被変換データをグループ分けし、このグループに対応した変換出力データと被変換データの演算を並列に行なうことで高速に非線形変換が実現できる。
【0147】
請求項4記載の本発明によれば、並列に非線形変換することで高速に非線形変換が実現できる。さらに比較処理と演算処理を並行して実行することで高速化を実現でき、かつ比較による比較結果でプロセッサエレメントの動作を制御できる。
【0148】
請求項5記載の本発明によれば、並列に非線形変換することで高速に非線形変換が実現できる。さらに比較処理と演算処理を並行して実行することで高速化を実現でき、かつ比較による比較結果で演算ユニットの動作を命令制御部が指示する動作あるいはNOP動作のいずれから選択することで条件分岐処理を効率良く実現することができる。
【0149】
請求項6記載の本発明によれば、並列に非線形変換することで高速に非線形変換が実現できる。さらに比較処理と演算処理を並行して実行することで高速化を実現でき、かつ比較による比較結果で演算ユニットの動作を命令制御部が指示する動作あるいはNOP動作のいずれかから選択することで条件分岐処理を効率良く実現することができる。またコマンドの中にコマンド選択信号の値を埋め込むことで、比較結果信号を参照するコマンドと参照しないコマンドの2種類のコマンドを用意することができ、条件分岐処理をより効率的に実行することができる。
【0150】
請求項7記載の本発明によれば、並列に非線形変換することで高速に非線形変換が実現できる。さらに比較処理と演算処理を並行して実行することで高速化を実現でき、かつ比較による比較結果で演算器への入力ソースを選択することができ、条件分岐処理を効率良く実現することができる。
【0151】
請求項8記載の本発明によれば、並列に非線形変換することで高速に非線形変換が実現できる。さらに比較処理と演算処理を並行して実行することで高速化を実現でき、かつ比較による比較結果で演算ユニットからの出力を選択することができ、条件分岐処理を効率良く実現することができる。
【図面の簡単な説明】
【図1】 本発明の実施の形態1を示す画像処理プロセッサの構成図である。
【図2】 図1に示す画像処理プロセッサの比較変換部の構成図である。
【図3】 図1に示す画像処理プロセッサの比較ユニットの構成図である。
【図4】 図1に示す画像処理プロセッサの変換ユニットの構成図である。
【図5】 図1に示す画像処理プロセッサの比較テーブルメモリおよび変換テーブルメモリの構成図である。
【図6】 図1に示す画像処理プロセッサの比較変換部の動作を示した図である。
【図7】 本発明の実施の形態2を示す画像処理プロセッサの構成図であ
る。
【図8】 図7に示す画像処理プロセッサの係数転送部の構成図である。
【図9】 図7に示す画像処理プロセッサの区間比較ユニットの構成図である。
【図10】 図7に示す画像処理プロセッサの係数取得ユニットの構成図である。
【図11】 図7に示す画像処理プロセッサの区間テーブルメモリおよび係数テーブルメモリの構成図である。
【図12】 図7に示す画像処理プロセッサの係数転送部の動作を示した図である。
【図13】 本発明の実施の形態3を示す画像処理プロセッサの構成図である。
【図14】 図13に示す画像処理プロセッサの比較変換部の構成図であ
る。
【図15】 本発明の実施の形態3の他の実施例を示す画像処理プロセッサの構成図である。
【図16】 本発明の実施の形態4を示す画像処理プロセッサの構成図である。
【図17】 図16に示す画像処理プロセッサの演算ユニットの構成図である。
【図18】 本発明の実施の形態5を示す画像処理プロセッサの構成図である。
【図19】 図18に示す画像処理プロセッサの演算ユニットの構成図である。
【図20】 本発明の実施の形態6を示す画像処理プロセッサの構成図である。
【図21】 図20に示す画像処理プロセッサの演算ユニットの構成図である。
【図22】 本発明の実施の形態7を示す画像処理プロセッサの構成図である。
【図23】 図20に示す画像処理プロセッサの演算ユニットの構成図である。
【図24】 従来の並列処理プロセッサの構成図である。
【図25】 従来の並列処理プロセッサの演算ユニットの構成図である。
【図26】 一般的なテーブルメモリを用いた非線形変換の動作を表す図である。
【図27】 本発明の方式である逆引き非線形変換の動作を表す図である。
【図28】 非線形変換の入出力の関係の一例を表した特性図である。
【図29】 区間毎に近似した非線形変換の入出力の関係の一例を表した特性図である。
【図30】 近似非線形変換の処理のフローを表した図である。
【符号の説明】
1〜7,15:並列処理プロセッサ 20:入力シフトレジスタ
21:外部データ入力バス 22ー1〜22ーN:入力データ転送バス30:出力シフトレジスタ 31: 外部データ出力バス32ー1〜32ーN:出力データ転送バス 40:プロセッサ部
41ー1〜41ーN:プロセッサエレメント 42:命令制御部
43:プロセッサ部制御バス 50:演算部
51ー1〜51ーN:演算ユニット 52:演算器
53:演算器制御バス 54ー1〜54ーN:演算器出力
55:演算器入力セレクタ 56:演算器入力セレクタ出力A
57:演算器入力セレクタ出力B 58:演算器入力セレクタ制御バス
60:メモリ部 61ー1〜61ーN:メモリユニット
63ー1〜63ーN:メモリバンク 64ー1〜64ーN:メモリバンク
65ー1〜65ーN:メモリユニット出力 66:右隣接メモリユニット出力
67:左隣接メモリユニット出力 70:テーブルメモリ
71:非線形変換用出力シフトレジスタ
72:非線形変換用入力シフトレジスタ
100:比較変換部
101:比較結果信号レジスタを備えた比較変換部
110:比較部
111ー1〜111ーN:比較部転送バス 112:比較部制御バス
113ー1〜113ーN:比較ユニット 114:被変換データレジスタ
115:被変換データレジスタ制御バス 116:転送バス
117:アドレスバス 118:ライト信号
119:リード信号 120:一致比較器
121:一致比較器制御バス 130:変換部
131ー1〜131ーN:変換部転送バス 132:変換部制御バス
133ー1〜133ーN:変換ユニット 134:変換出力データレジスタ
135:アドレスバス 136:ライト信号
137:リード信号 140ー1〜140ーN:比較結果信号バス
141ー1〜141ーN:比較結果信号レジスタ
150:変換入力データメモリ
151:変換入力データメモリ用アドレスバス
152:変換入力データ転送バス 153:変換出力データメモリ
154:変換出力データメモリ用アドレスバス
155:変換出力データ転送バス
160ー1〜160ーN:コマンド選択演算ユニット
161:コマンドセレクタ 162:コマンドセレクタ出力
163:NOP命令バス
170ー1〜170ーN:選択的コマンド選択演算ユニット
171:コマンド選択スイッチ 172:コマンド選択バス
180ー1〜180ーN:入力ソース選択演算ユニット
181:入力ソースセレクタ 182:入力ソースセレクタ出力
183:入力ソースセレクタ制御バス
190ー1〜190ーN:出力データ選択演算ユニット
191:出力データセレクタ
192ー1〜192ーN:出力データセレクタ出力
193:出力データセレクタ制御バス
200:係数転送部
201:比較結果信号レジスタを備えた係数転送部
210:区間比較部 211ー1〜211ーN:区間比較部転送バス
212:区間比較部制御バス 213ー1〜213ーN:区間比較ユニット
214:大小比較器 215:大小比較器制御バス
220:係数取得部 221ー1〜221ーN:係数取得部転送バス
222:係数取得部制御バス 223ー1〜223ーN:係数取得ユニット
224ーA〜224ーC:係数データレジスタ 225:アドレスバス
226:ライト信号 227:リード信号
228:係数データレジスタセレクタ 229:係数データレジスタ選択信号
230:区間データメモリ 231:区間データメモリ用アドレスバス
232:区間データ転送バス 233:係数データメモリ
234:係数データメモリ用アドレスバス 235:係数データ転送バス

Claims (8)

  1. 入力端子からシリアルに入力されてくる複数のデータをシリアル/パラレル変換器に入力し、このシリアル/パラレル変換器の出力データを複数のプロセッサエレメントに並列に供給し、これらのデータを上記のプロセッサエレメントにて演算処理し、上記プロセッサエレメントから並列に出力される演算処理された複数のデータをパラレル/シリアル変換器に並列に入力し、上記パラレル/シリアル変換器の出力を出力端子から出力する並列プロセッサにおいて、変換される入力データを記憶する変換入力データメモリおよび変換された出力データを記憶する変換出力データメモリを備え、また上記の各プロセッサエレメントに比較器と被変換データレジスタおよび変換出力データレジスタを備え、さらに上記複数のプロセッサエレメント、上記変換入力データメモリおよび上記変換出力データメモリの動作を制御する命令制御部を備え、上記比較器では上記変換入力データメモリに保持されている変換入力データと上記被変換データレジスタに保持されている被変換データの比較を実行し、上記変換出力データレジスタは上記比較器での比較結果を参照して上記変換出力データメモリに保持されている変換出力データの取り込みを選択的に実行可能としたことを特徴とする並列処理プロセッサ。
  2. 上記比較器は一致比較器で構成され、上記変換入力データと上記被変換データが一致したとき、取り込み出力を発生し、上記変換出力データレジスタはこの取り込み出力で上記変換出力データメモリに保持されている上記被変換データに対応する変換出力データの取り込みを実行することを特徴とした請求項1記載の並列処理プロセッサ。
  3. 上記被変換データを複数の区間に分割し、かつ上記区間と対応付けて上記変換入力データを設定すると共に、上記比較器は大小比較器で構成され、上記変換入力データが示す区間と上記被変換データが属する区間とを比較し、区間が一致すると取り込み出力を発生し、上記変換出力データレジスタはこの取り込み出力で上記変換出力データメモリに保持されている上記被変換データが属する区間に対応する変換出力データの取り込みを実行することを特徴とした請求項1記載の並列処理プロセッサ。
  4. 上記比較器での比較結果を保持する比較結果レジスタを備えたことを特徴とした請求項1乃至請求項3の何れかに記載の並列処理プロセッサ。
  5. 上記命令制御部は上記比較結果レジスタの内容でプロセッサエレメント中の演算器の動作を制御することを特徴とした請求項4記載の並列処理プロセッサ。
  6. 上記命令制御部はプロセッサに与える命令で上記比較結果レジスタの内容によるプロセッサエレメントの動作の制御を選択的に実行することを特徴とした請求項4記載の並列処理プロセッサ。
  7. 上記命令制御部は上記比較結果レジスタの内容でプロセッサエレメント中の演算器への入力を選択することを特徴とした請求項4記載の並列処理プロセッサ。
  8. 上記命令制御部は上記比較結果レジスタの内容でプロセッサエレメント中の演算器からの出力を選択することを特徴とした請求項4記載の並列処理プロセッサ。
JP11668996A 1996-05-10 1996-05-10 並列処理プロセッサ Expired - Fee Related JP3834869B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11668996A JP3834869B2 (ja) 1996-05-10 1996-05-10 並列処理プロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11668996A JP3834869B2 (ja) 1996-05-10 1996-05-10 並列処理プロセッサ

Publications (2)

Publication Number Publication Date
JPH09305550A JPH09305550A (ja) 1997-11-28
JP3834869B2 true JP3834869B2 (ja) 2006-10-18

Family

ID=14693436

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11668996A Expired - Fee Related JP3834869B2 (ja) 1996-05-10 1996-05-10 並列処理プロセッサ

Country Status (1)

Country Link
JP (1) JP3834869B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7191310B2 (en) 2000-01-19 2007-03-13 Ricoh Company, Ltd. Parallel processor and image processing apparatus adapted for nonlinear processing through selection via processor element numbers

Also Published As

Publication number Publication date
JPH09305550A (ja) 1997-11-28

Similar Documents

Publication Publication Date Title
US7191310B2 (en) Parallel processor and image processing apparatus adapted for nonlinear processing through selection via processor element numbers
US5301344A (en) Multibus sequential processor to perform in parallel a plurality of reconfigurable logic operations on a plurality of data sets
US20090013151A1 (en) Simd type microprocessor
US6961084B1 (en) Programmable image transform processor
US7506135B1 (en) Histogram generation with vector operations in SIMD and VLIW processor by consolidating LUTs storing parallel update incremented count values for vector data elements
JPH0740252B2 (ja) マルチプロセツサシステム
US6067088A (en) Image processing method and apparatus thereof
US20130212353A1 (en) System for implementing vector look-up table operations in a SIMD processor
JP3955741B2 (ja) ソート機能を有するsimd型マイクロプロセッサ
US20220043657A1 (en) System and method for convolving image with sparse kernels
JPH07104784B2 (ja) デジタルデータ処理装置
JP3834869B2 (ja) 並列処理プロセッサ
US7254283B1 (en) Image processor processing image data in parallel with a plurality of processors
JPH08123769A (ja) 並列プロセッサ
EP2000973A2 (en) Parallel image processing system control method and apparatus
US20080229063A1 (en) Processor Array with Separate Serial Module
JP4442905B2 (ja) 画像データの処理方法
JP4237046B2 (ja) 画像処理装置
JP4451433B2 (ja) 並列プロセッサ
JPH06282432A (ja) 演算処理装置
JP5196946B2 (ja) 並列処理装置
JP2001216275A (ja) 画像処理装置および画像処理方法
JP2812292B2 (ja) 画像処理装置
JP4482356B2 (ja) Simdプロセッサを用いた画像処理方法及び画像処理装置
JP3837293B2 (ja) 定数選択機能を有するsimd型マイクロプロセッサ

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20040715

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060622

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060704

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060717

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

Free format text: PAYMENT UNTIL: 20090804

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100804

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110804

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110804

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120804

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120804

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130804

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees