(57)【特許請求の範囲】
【請求項１】
入力端子からシリアルに入力されてくる複数のデータをシリアル／パラレル変換器に入力し、上記シリアル／パラレル変換器の出力を複数のプロセッサエレメントに並列に供給し、これらのデータを上記プロセッサエレメントにて演算処理し、上記複数のプロセッサエレメントから並列に出力される演算処理された複数のデータをパラレル／シリアル変換器に並列に入力し、上記パラレル／シリアル変換器の出力を出力端子から出力する画像処理プロセッサにおいて、
上記シリアル／パラレル変換器は、
上記複数のプロセッサエレメントに接続され、上記入力端子より入力されてくるデータを接続されたプロセッサエレメントに供給するデータとして記憶する入力用記憶手段と、
この入力用記憶手段のうち上記入力されたデータを並列に格納する入力位置に対応した拡大パターンを入力する拡大パターン登録用入力端子と、
この拡大パターン登録用入力端子から入力される拡大パターンを設定する入力位置設定手段と、
この入力位置設定手段に設定される上記拡大パターンに基づいて上記入力用記憶手段に対する上記入力データの入力位置を選択して上記入力データを上記入力用記憶手段に並列に供給する記憶位置選択手段と
を設けたことを特徴とする画像処理プロセッサ。
【請求項２】
入力端子からシリアルに入力されてくる複数のデータをシリアル／パラレル変換器に入力し、上記シリアル／パラレル変換器の出力を複数のプロセッサエレメントに並列に供給し、これらのデータを上記プロセッサエレメントにて演算処理し、上記複数のプロセッサエレメントから並列に出力される演算処理された複数のデータをパラレル／シリアル変換器に並列に入力し、上記パラレル／シリアル変換器の出力を出力端子から出力する画像処理プロセッサにおいて、
上記パラレル／シリアル変換器は、
上記複数のプロセッサエレメントから出力されたデータを出力データとして記憶する出力用記憶手段と、
この出力用記憶手段のうち上記プロセッサエレメントから出力されたデータを並列に格納する出力位置に対応した縮小パターンを入力する縮小パターン登録用入力端子と、
この縮小パターン登録用入力端子から入力される縮小パターンを設定する出力位置設定手段と、
この出力位置設定手段に設定される上記縮小パターンに基づいて上記出力用記憶手段に対する上記出力データの出力位置を選択して上記出力データを上記出力端子に供給する記憶位置選択手段と
を設けたことを特徴とする画像処理プロセッサ。
【請求項３】
入力端子からシリアルに入力されてくる複数のデータをシリアル／パラレル変換器に入力し、上記シリアル／パラレル変換器の出力を複数のプロセッサエレメントに並列に供給し、これらのデータを上記プロセッサエレメントにて演算処理し、上記複数のプロセッサエレメントから並列に出力される演算処理された複数のデータをパラレル／シリアル変換器に並列に入力し、上記パラレル／シリアル変換器の出力を出力端子から出力する画像処理プロセッサにおいて、
上記シリアル／パラレル変換器は、
上記複数のプロセッサエレメントから出力されるデータを記憶する転送用シフトレジスタと、
上記複数のプロセッサエレメントに接続され、上記転送用シフトレジスタに記憶されたデータを接続されたプロセッサエレメントに供給するデータとして記憶する入力用記憶手段と、
この入力用記憶手段のうち上記転送用シフトレジスタに記憶されたデータを並列に格納する入力位置に対応した拡大パターンを入力する拡大パターン登録用入力端子と、
この拡大パターン登録用入力端子から入力される拡大パターンを設定する入力位置設定手段と、
この入力位置設定手段に設定される上記拡大パターンに基づいて上記入力用記憶手段に対する上記転送用シフトレジスタに記憶されたデータの入力位置を選択して上記転送用シフトレジスタに記憶されたデータを上記入力用記憶手段に並列に供給する記憶位置選択手段と
を設けたことを特徴とする画像処理プロセッサ。
【請求項４】
入力端子からシリアルに入力されてくる複数のデータをシリアル／パラレル変換器に入力し、上記シリアル／パラレル変換器の出力を複数のプロセッサエレメントに並列に供給し、これらのデータを上記プロセッサエレメントにて演算処理し、上記複数のプロセッサエレメントから並列に出力される演算処理された複数のデータをパラレル／シリアル変換器に並列に入力し、上記パラレル／シリアル変換器の出力を出力端子から出力する画像処理プロセッサにおいて、
上記パラレル／シリアル変換器は、
上記複数のプロセッサエレメントから出力されるデータを記憶する転送用シフトレジスタと、
この転送用シフトレジスタに記憶されたデータを出力データとして記憶する出力用記憶手段と、
この出力用記憶手段のうち上記転送用シフトレジスタに記憶されたデータを並列に格納する出力位置に対応した縮小パターンを入力する縮小パターン登録用入力端子と、
この縮小パターン登録用入力端子から入力される縮小パターンを設定する出力位置設定手段と、
この出力位置設定手段に設定される上記縮小パターンに基づいて上記出力用記憶手段に対する上記出力データの出力位置を選択して上記転送用シフトレジスタに記憶されたデータを上記出力用記憶手段に供給する記憶位置選択手段と
を設けたことを特徴とする画像処理プロセッサ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像データのデジタル処理等に用いられる、並列画像処理プロセッサに関するものである。
【０００２】
【従来の技術】
図１２は、例えば特開平６−８３７８７号公報に記載されている並列プロセッサの構成を、図１３は、例えば特開平−８３７８６号公報に記載されている並列プロセッサの構成を示すブロック図である。
【０００３】
第１の従来例である図１２に示される並列プロセッサは、２タップのフィルタ処理を効率良く実現できるデータ入出力機構を備えたものである。各画素がそれぞれ複数ビットで構成される画像データがワード（画素）シリアルで入力端子１に供給され、１水平期間（１Ｈ）分の容量（Ｍ）を有する入力用シリアル／パラレル変換器内のＭ個のレジスタ（Ｒ）３1〜３Mにそれぞれスイッチ２1〜２Mを通じて格納される。この入力用シリアル／パラレル変換器内のレジスタ３1〜３MがそれぞれＭ個の入力側メモリ４1〜４Mに接続されている。
【０００４】
またＭ個の演算回路６1〜６Mには、それぞれ対応する入力メモリとその両隣の入力側メモリからのデータがセレクタ（ＳＥＬ）５1〜５Mを介して供給され、さらにＭ個ある出力側メモリ８1〜８Mとその両隣の出力側メモリからのデータもセレクタ（ＳＥＬ）７1〜７Mを介して供給される。
【０００５】
さらに各演算回路６1〜６Mからの出力結果は、入力側メモリ４1〜４Mあるいは出力側メモリ８1〜８Mに書き込まれる。
【０００６】
また出力側メモリ８1〜８Mがそれぞれ出力用パラレル／シリアル変換器内のＭ個のレジスタ（Ｒ）９1〜９Mに接続されている。そしてこの出力用パラレル／シリアル変換器内のレジスタ（Ｒ）９1〜９Mからそれぞれスイッチ１０1〜１０Mを通じて、例えば各画素がそれぞれ複数ビットで構成される演算処理された画像データがワード（画素）シリアルで出力端子１１に出力される。
【０００７】
従って、水平期間毎に入力用シフトレジスタ内のレジスタ３1〜３Mに供給された画像データは、その後水平ブランキング期間内に入力側メモリ４1〜４Mに書き込まれる。この入力側メモリ４1〜４Mに書き込まれたデータが次の１水平期間の間に演算回路６1〜６Mに供給され、演算処理された値が出力側メモリ８1〜８Mに書き込まれる。そしてその後の水平ブランキング期間内に、出力側メモリ８1〜８Mのデータが出力用シフトレジスタ内のレジスタ９1〜９Mに書き込まれ、各水平期間毎に演算処理された画像データが取り出される。このようにして画像データのデジタル処理が行われる。
【０００８】
また入力側メモリ４1〜４M及び出力側メモリ８1〜８Mのアドレスを制御するアドレスデコーダ１２と、演算回路６1〜６Mでの演算を制御するため及びセレクタ５1〜５M、７1〜７Mを制御するための演算制御回路１３は、それぞれ１つのみであり、Ｍ個全ての入力側、出力側メモリ及び演算回路に共通のものである。
【０００９】
すなわち、図１２はSIMD（Single Instruction Multiple Data）方式のプロセッサである。画像処理は、全ての画素に対し同じ演算処理をすることが多いため、全ての演算回路に同一の命令を与えるSIMD方式は制御回路が１つで済み回路規模が小さくなる利点がある。
【００１０】
図１２は、このSIMD方式のプロセッサにおいて、データの入出力機構にデータを固定の間隔で制御できる機構を付加したものである。すなわち、入力用シリアル／パラレル変換器は２個間隔で出力することが可能な構成をとっている。スイッチ制御回路を構成するフリップフロップ（Ｆ．Ｆ）１５1〜１５M、１７1〜  １７Mに加えて、フリップフロップ２２1〜２２M/2及び２４1〜２４M/2、２７1〜２７M/2及び２９1〜２９M/2が設けられ、これらのフリップフロップからの信号がセレクタ２５1〜２５M、３０1〜３０Mを通じて取り出される。
【００１１】
そこで図１２において、セレクタ２５1〜２５M、３０1〜３０Mの接続を図のように左側にすることにより、２個間隔でスイッチ２1〜２M、１０1〜１０Mをオンすることができる。すなわちスイッチオン信号入力端子２１、２６から信号を入力すると、フリップフロップ２２1〜２２M/2、２７1〜２７M/2が縦続接続されているので、最初にフリップフロップ２２1、２７1から１番目のスイッチ２1、１０1をオンするスイッチ制御信号が出力され、次にフリップフロップ２２2、２７2から３番目のスイッチ２3、１０3をオンするスイッチ制御信号が出力され、順次この動作を繰り返し最後に２２M/2、２７M/2からＭ−１番目のスイッチ２M-1、１０M-1をオンするスイッチ制御信号が出力される。
【００１２】
さらにスイッチオン信号入力端子２３、２８から信号を入力すると、フリップフロップ２４1〜２４M/2、２９1〜２９M/2が縦続接続されているので、最初にフリップフロップ２４1、２９1から２番目のスイッチ２2、１０2をオンするスイッチ制御信号が出力され、次にフリップフロップ２４2、２９2（図示せず）から４番目のスイッチ２4、１０4をオンするスイッチ制御信号が出力され、順次この動作を繰り返し最後にフリップフロップ２４M/2、２９M/2からＭ番目のスイッチ２M、１０Mをオンするスイッチ制御信号が出力される。
【００１３】
また、図１２においてセレクタ２５1〜２５M、３０1〜３０Mを図とは逆側（右側）にすることにより、通常の順（１個間隔）でスイッチ２1〜２M 、１０1〜１０Mをオンすることができる。すなわちスイッチオン信号入力端子１４、１６から信号を入力すると、フリップフロップ１５1〜１５M、１７1〜１７Mが縦続接続されているので、最初にフリップフロップ１５1、１７1から１番目のスイッチ２1、１０1をオンするスイッチ制御信号が出力され、次にフリップフロップ１５2、１７2（図示せず）から２番目のスイッチ２2、１０2をオンするスイッチ制御信号が出力され、順次この動作を繰り返し最後にフリップフロップ１５M、１７MからＭ番目のスイッチ２M、１０Mをオンするスイッチ制御信号が出力される。
【００１４】
この従来の装置によれば、入力用シリアル／パラレル変換器は２個間隔で出力し、また出力用パラレル／シリアル変換器も２個間隔で出力することを可能とするものであった。これは例えば１水平期間（１ラスタ）分のデータがＭ／２の時でも、縦方向の２タップフィルタ計算ができることを目的としていた。
【００１５】
第２の従来例である図１３に示される並列プロセッサは、近傍にないプロセッサエレメント間でデータ転送を効率良く行うことを目的としたものである。これは、図１３において転送用シフトレジスタ３３、３４を加えたものであるため、転送用シフトレジスタ３３、３４についての動作のみ説明する。
【００１６】
転送用シフトレジスタ３３、３４は、入力側メモリ４1〜４M、及び出力側メモリ８1〜８Mにそれぞれ１つづつある。入力側メモリ４1〜４Mから読み出されたデータ（Ｍ個）は、入力側転送用シフトレジスタ３３に取り込まれ、図の横方向にデータはシフトされ、その後データは、入力側メモリ４1〜４Mに再び書き込まれる。従って、読み出された位置からシフトした分だけ隣のメモリ４1〜４Mに書き込まれる事になる。
【００１７】
出力側転送用シフトレジスタ３４についても同様である。例えばＭ番目のデータをＭ−８番目とアクセスして演算したい場合は、転送用シフトレジスタ３３、３４を使用して、８個分データを右にシフトすることで所望のデータをＭ番目の入力側メモリ４Mあるいは出力側メモリ８Mに転送することができ、その後でＭ番目の演算回路６Mにて演算を行う。
【００１８】
さらに、図１３におけるセレクタ（ＳＥＬａ、ＳＥＬｂ）1...Mがなく、Ｍ番目の演算回路６Mは、対応するＭ番目の入力側メモリ４M及びＭ番目の出力側メモリ８Mのみにしかアクセスできない構成でも同じである。その時は、 Ｍ番目のデータをＭ−１番目に格納されているデータとアクセスして演算したい場合は、所望のデータを転送用シフトレジスタ３３、３４を用いてシフトしＭ番目の入力側メモリ４Mあるいは出力側メモリ８Mに転送して、その後でＭ番目の演算回路６Mにて先に記憶されているデータと転送されたデータとの演算を行う。
【００１９】
このように、第２の従来例では、データ転送用のシフトレジスタで近傍にない画素間のデータは固定の間隔で演算処理が行える。
【００２０】
【発明が解決しようとする課題】
画像データに対し拡大処理を施す方法として、入力時に拡大処理を行うには、倍率によって各画素間の間隔をそれぞれ変えてデータを入力すると効率の高い処理が行える。また、画像データに対し縮小処理を施す場合に、画像の出力時に縮小処理を行うには、倍率によって各画素間の間隔をそれぞれ変えてデータを出力すると効率の高い処理が行える。しかし従来の技術ではデータ入力時に画素密度を低下させる拡大処理あるいは画素密度を上げる縮小処理を行おうとした場合、一定間隔での画像データの入出力あるいは、一定間隔での処理にしか対応できなかった。
【００２１】
【課題を解決するための手段】
請求項１に記載の本発明は、シリアル／パラレル変換器に、複数のプロセッサエレメントに接続され、入力端子より入力されてくるデータを接続されたプロセッサエレメントに供給するデータとして記憶する入力用記憶手段と、この入力用記憶手段のうち入力されたデータを並列に格納する入力位置に対応した拡大パターンを入力する拡大パターン登録用入力端子と、この拡大パターン登録用入力端子から入力される拡大パターンを設定する入力位置設定手段と、この入力位置設定手段に設定される上記拡大パターンに基づいて上記入力用記憶手段に対する上記入力データの入力位置を選択して上記入力データを上記入力用記憶手段に並列に供給する記憶位置選択手段とを設けたことを特徴とする。
【００２２】
請求項２に記載の本発明は、パラレル／シリアル変換器に、複数のプロセッサエレメントから出力されたデータを出力データとして記憶する出力用記憶手段と、この出力用記憶手段のうちプロセッサエレメントから出力されたデータを並列に格納する出力位置に対応した縮小パターンを入力する縮小パターン登録用入力端子と、この縮小パターン登録用入力端子から入力される縮小パターンを設定する出力位置設定手段と、この出力位置設定手段に設定される上記縮小パターンに基づいて上記出力用記憶手段に対する上記出力データの出力位置を選択して上記出力データを上記出力端子に供給する記憶位置選択手段とを設けたことを特徴とする。
【００２３】
請求項３に記載の本発明は、シリアル／パラレル変換器に、複数のプロセッサエレメントから出力されるデータを記憶する転送用シフトレジスタと、上記複数のプロセッサエレメントに接続され、上記転送用シフトレジスタに記憶されたデータを接続されたプロセッサエレメントに供給するデータとして記憶する入力用記憶手段と、この入力用記憶手段のうち上記転送用シフトレジスタに記憶されたデータを並列に格納する入力位置に対応した拡大パターンを入力する拡大パターン登録用入力端子と、この拡大パターン登録用入力端子から入力される拡大パターンを設定する入力位置設定手段と、この入力位置設定手段に設定される上記拡大パターンに基づいて上記入力用記憶手段に対する上記転送用シフトレジスタに記憶されたデータの入力位置を選択して上記転送用シフトレジスタに記憶されたデータを上記入力用記憶手段に並列に供給する記憶位置選択手段とを設けたことを特徴とする。
【００２４】
請求項４に記載の本発明は、パラレル／シリアル変換器に、複数のプロセッサエレメントから出力されるデータを記憶する転送用シフトレジスタと、この転送用シフトレジスタに記憶されたデータを出力データとして記憶する出力用記憶手段と、この出力用記憶手段のうち上記転送用シフトレジスタに記憶されたデータを並列に格納する出力位置に対応した縮小パターンを入力する縮小パターン登録用入力端子と、この縮小パターン登録用入力端子から入力される縮小パターンを設定する出力位置設定手段と、この出力位置設定手段に設定される上記縮小パターンに基づいて上記出力用記憶手段に対する上記出力データの出力位置を選択して上記転送用シフトレジスタに記憶されたデータを上記出力用記憶手段に供給する記憶位置選択手段とを設けたことを特徴とする画像処理プロセッサ。
【００３３】
【発明の実施の形態】
実施の形態１．
本発明の第１の実施形態を図１に基づき説明する。図１では簡単のためプロセッサエレメントの数を８個（従来例ではＭ個）とし、入力画像を８／３倍に拡大する例を用い、本発明の特徴的部分であるデータ入力機構とその動作について説明する。その他の部分は従来装置と同様な構成、動作である。
尚、図中各フリップフロップに入力されるクロック信号は省略している。
【００３４】
拡大パターン登録用入力端子５０は、画像データを入力する前に予め入力した画像データの各画素データをどのプロセッサエレメントに接続されるレジスタ３1〜３8に格納するかを決める信号用端子である。この入力信号は拡大パターン登録用シフトレジスタを構成するフリップフロップ５１1〜５１7（以下入力パターン用フリップフロップ）にシーケンシャルに設定される。この拡大パターン登録用シフトレジスタが入力位置設定手段になる。必要なフリップフロップ数の設定が終わると、設定モードを終了しこのパターンは次にパターン変更がないかぎり保持される。本実施形態では８／３倍パターンの一例が設定されている。
【００３５】
入力パターン用フリップフロップ５１1〜５１7に保持された信号は、次に説明する入力画素位置選択用フリップフロップ５３1〜５３8に格納するデータの転送パターンを決定する入力パターン設定用スイッチ５４1〜５４7の向きを指定する。例えば、図１では前段のフリップフロップの出力値を受ける場合にはHigh（網掛けあり）を、前段より前のフリップフロップの出力値を受ける場合にはLow（網掛けなし）を保持しておく。
【００３６】
次に画像データの入力動作について説明する。画像データの入力時において、１水平期間（１Ｈ）分のデータの内、格納すべき最初のデータに同期して入力画素位置選択用入力端子５２から選択信号を入力する。この信号は入力画素位置選択用入力端子５２へ単一パルス（以下入力選択パルス）の形で与える。
【００３７】
入力選択パルスは、先に設定されている入力パターン用フリップフロップ５１1〜５１7によって接続の向きが設定されている入力パターン設定用スイッチ５４1〜５４8のパスに従ってクロックに同期して伝搬し、入力画素位置選択用フリップフロップ５３1〜５３8に格納されていく。この各入力画素位置選択用フリップフロップ５３1〜５３8の出力が、入力端子１から入力された各画素データをどの入力用レジスタ３1〜３8に格納するかを選択する入力画素選択スイッチ２1〜２8をオンオフする。図１では入力画素位置選択用フリップフロップ５３1〜５３8の出力がHighの時オン、Lowの時オフとしている。１Ｈ単位の画像データ入力前は入力画素位置選択用フリップフロップ５３1〜５３8はすべてLowに設定されている。
【００３８】
この入力選択パルスと画素データの格納動作を図３を用いて詳細に説明する。まず、入力画素データが最初に有効になった第１番目のクロックに同期して、画像データ入力端子１から画素データ値“１”を、入力画素位置選択用入力端子５２から入力選択パルス（High）を与えると、上段の網掛けされた入力画素位置選択用フリップフロップ５３1、５３2、５３3にHighの値が格納される。この時入力画素選択スイッチ２1、２2、２3がオンされ、入力用レジスタ３1、３2、３3に入力画素値“１”が格納される。
【００３９】
第２番目のクロックでは、図３の中段のように入力選択パルスは入力画素位置選択用フリップフロップ５３4、５３5に伝搬され、入力画素選択スイッチ２4、２5がオンされ、入力用レジスタ３4、３5に第２番目の入力画素値“２”が格納される。
【００４０】
第３番目のクロックでは、図３の下段のように入力選択パルスは入力画素位置選択用フリップフロップ５３6、５３7、５３8に伝搬され、入力画素選択スイッチ２6、２7、２8がオンされ、入力用レジスタ３6、３7、３8に第３番目の入力画素値“３”が格納される。
【００４１】
このようにして画像データの入力時点で、３画素分のデータが８つの入力用レジスタ３1〜３8に、入力パターン用フリップフロップ５１1〜５１7に設定された拡大パターンに応じて格納される。入力用レジスタ３1〜３8のデータは水平ブランキング期間に入力側メモリ４1〜４8に転送される。そして入力側メモリ４1、４4、４6に格納された画素データは原画素値をそのまま用い、その他の入力側メモリに格納された画素データは原画素値を元に補間生成することで拡大処理が実現できる。
【００４２】
ここで、原画素自体を用いない画素位置にも補間のために必要な原画素データのいずれかが格納されているため、補間のための原画素データの参照は、いずれか一方でよいことになる。これは参照すべき原画素が近傍になくなるような拡大倍率が大きい時には特に有効となる。なお、補間を行う必要のある画素に対して、アクセスすべき参照画素位置情報を与える必要があるが、これは例えば入力側メモリ４1〜４8に予め格納しておけばよい。
この参照画素位置情報を格納する時は、入力パターン用フリップフロップ５１1〜５１7にすべてHighを設定した状態で入力端子１から１H分すべての参照画素位置情報を入力し、入力側メモリ４1〜４8に転送しておけばよい。参照画素位置情報は変更されない限り保持しておく。
【００４３】
さらには、複数の原画素からの補間処理を必要としない単純法で拡大処理を行う場合は、原画素のデータを繰り返し生成するだけであるため、入力の時点で拡大のための画素生成が完了できる。
【００４４】
以上のように、本発明によれば予め拡大パターンを登録しておくことで、入力時に固定間隔ではなく任意の間隔で画素データを取り込めるため、画素の間隔が均等でなくなる倍率の拡大処理を行う場合に、個々の画素位置を変える動作を行わなくてすみ、また参照のためのデータアクセスも少なくてすむ。
【００４５】
なお、実施形態１ではプロセッサエレメントの数が８の例で動作の説明を行ったが、プロセッサエレメントの数は８以外でもよい。また、入力選択パルスは入力画素データが最初に有効になった第１番目のクロックに同期して与える例を示したが、選択パルスを有効データに先行して与えれば、任意のプロセッサエレメントから入力を開始できる。
【００４６】
実施の形態２．
本発明の第２の実施形態を図２に基づき説明する。図２では簡単のためプロセッサエレメントの数を８個（従来例ではＭ個）とし、入力画像を３／８倍に縮小する例を用い、本発明の特徴的部分であるデータ出力機構とその動作について説明する。その他の部分は従来装置と同様な構成、動作である。
尚、図中各フリップフロップに入力されるクロック信号は省略している。
【００４７】
縮小パターン登録用入力端子５５は、画像データを出力する前に予め出力すべき画像データの各画素データをどのプロセッサエレメントに接続されたレジスタ９1〜９8から読み出すかを決める信号用端子である。この入力信号は縮小パターン登録用シフトレジスタを構成するフリップフロップ５６1〜５６8（以下出力パターン用フリップフロップと呼ぶ）にシーケンシャルに設定される。この縮小パターン登録用シフトレジスタが出力位置設定手段になる。必要なフリップフロップ数の設定が終わると、設定モードを終了しこのパターンは次にパターン変更がないかぎり保持される。本実施形態では３／８倍パターンの一例が設定されている。
【００４８】
出力パターン用フリップフロップ５６1〜５６8に保持された信号は、次に説明する出力画素位置選択用フリップフロップ５８1〜５８8に格納するデータの転送パターンを決定する出力パターン設定用スイッチ５９1〜５９8の向きを指定する。例えば、図２では前段のフリップフロップの出力値を受ける場合には１（網掛けあり）を、前段より前のフリップフロップの出力値を受ける場合には０（網掛けなし）を保持しておく。
【００４９】
次に画像データの出力動作について説明する。画像データの出力時において、１水平期間（１Ｈ）分のデータの内、出力すべき最初のデータに同期して出力画素位置選択用入力端子５７から選択信号を入力する。この信号は出力画素位置選択用入力端子５７へ単一パルス（以下出力選択パルス）の形で与える。
【００５０】
出力選択パルスは、先に設定されている出力パターン用フリップフロップ５６1〜５６8によって接続の向きが設定されている出力パターン設定用スイッチ５９1〜５９8のパスに従ってクロックに同期して伝搬し、出力画素位置選択用フリップフロップ５８1〜５８8に格納されていく。この各出力画素位置選択用フリップフロップ５８1〜５８8の出力と出力パターン用フリップフロップ５６1〜５６8の出力が、出力端子１１から出力すべき各画素データをどの出力用レジスタ９1〜９8から読み出すかを選択する出力画素選択スイッチ１０1〜１０8をオンオフする。図２では出力画素位置選択用フリップフロップ５８1〜５８8の出力が１かつ出力パターン用フリップフロップ５６1〜５６8の出力が１の時オン、そのいずれか少なくとも一方が０の時オフとしている。
【００５１】
この出力選択パルスと画素データの読み出し動作を図４を用いて詳細に説明する。まず、出力すべき画素データを選択するため、クロックに同期して出力画素位置選択用入力端子５７から出力選択パルス（High）を与えると、上段の網掛けされた出力画素位置選択用フリップフロップ５８1にHighの値が格納される。この時、出力パターン用フリップフロップ５６1にもHighが格納されているため、出力画素選択スイッチ１０1だけがオンされ、出力用レジスタ９1に格納されていた画素値“１”が読み出され、出力端子１１から出力される。
【００５２】
第２番目のクロックでは、図４の中段のように出力選択パルスは出力画素位置選択用フリップフロップ５８2、５８3、５８4に伝搬される。この時、出力パターン用フリップフロップ５６4にHighが格納されているため、出力画素選択スイッチ１０4だけがオンされ、出力用レジスタ９4に格納されていた画素値“４”が読み出され、出力端子１１から出力される。
【００５３】
第３番目のクロックでは、図４の下段のように出力選択パルスは出力画素位置選択用フリップフロップ５８5、５８6、５８7、５８8に伝搬される。この時、出力パターン用フリップフロップ５６8にHighが格納されているため、出力画素選択スイッチ１０6だけがオンされ、出力用レジスタ９8に格納されていた画素値“８”が読み出され、出力端子１１から出力される。
【００５４】
このようにして第２の実施形態では、画像データを出力する際、出力パターン用フリップフロップ５６1〜５６8に設定された縮小パターンに応じて、８つの出力用レジスタ９1〜９8に格納された画素データのうちの３画素分のデータを出力できる。すなわち出力時に３／８の縮小処理を行える。なお、縮小処理の際周辺画素値との演算が必要な場合は、入力側メモリ４1〜４8あるいは出力側メモリ８1〜８8に画素データが格納されている間に処理を行っておけばよい。
【００５５】
また、複数の原画素からの補間処理を必要としない単純法で縮小処理を行う場合は、原画素のデータを単純に間引くだけであるため、出力の時点のみで縮小処理が実現できる。なお、補間のための参照画素位置情報の格納は実施形態１と同様に行えばよい。
【００５６】
以上のように、本発明によれば予め縮小パターンを登録しておくことで、出力時に任意の間隔で画素データを間引いて出力できるため、出力時に複雑な画素データの移動を行わなくてすむ。
【００５７】
なお、実施形態２ではプロセッサエレメントの数が８の例で動作の説明を行ったが、プロセッサエレメントの数は８以外でもよい。
【００５８】
実施の形態３．
本発明の第３の実施形態を図５に基づき説明する。図５では簡単のためプロセッサエレメントの数が８個（従来例ではＭ個）の例を用い、本発明の特徴的部分であるデータ転送機構とその動作について説明する。第３の実施形態は画像データが一旦プロセッサエレメント内に取り込まれ、処理されている途中で拡大処理を行い、その後他の処理を行うことができることを目的としている。
【００５９】
図５において、外部との画像データの入出力を行う入力用シリアル／パラレル変換器３１及び出力用パラレル／シリアル変換器３２の外部との入出力動作は、それぞれ単純なシフト動作のみで行なわれる。入力用シリアル／パラレル変換器３１にシーケンシャルに格納された画像データは入力側メモリ４1〜４8にパラレルに転送され、プロセッサエレメントで前演算処理される。また出力側メモリ８1〜８8の画像データはパラレルに出力用パラレル／シリアル変換器３２に転送される。転送用パラレル／シリアル変換器３６と拡大パターン発生用シリアル／パラレル変換器４０は、入力側メモリ４1〜４8にそれぞれ対応する８つのシフトレジスタ（図１の入出力部）から構成される。
【００６０】
プロセッサエレメントで前処理されたデータは、再び入力側メモリ４1〜４8に格納され、入力側メモリ４1〜４8からパラレルに読み出されたデータ（８個）は、第１のデータ転送フィールドである転送用パラレル／シリアル変換器３６に取り込まれ、出力画素位置選択用入力端子３５から入力される単一パルス（以下出力選択パルス）によって転送信号線３７を通してシーケンシャルに読み出され、第２のデータ転送フィールドである拡大パターン発生用シリアル／パラレル変換器４０に転送される。この拡大パターン発生用シリアル／パラレル変換器４０の構成及び、転送される各画素のデータが拡大パターン発生用シリアル／パラレル変換器４０に格納される動作は、先の実施形態１の画像データ入力機構および入力動作と同じである。
【００６１】
すなわち、拡大パターン発生用シリアル／パラレル変換器４０には、拡大パターン登録用入力端子３８と入力画素位置選択用入力端子３９が備わっており、内部には入力パターン用フリップフロップと入力パターン設定用スイッチと入力画素位置選択用フリップフロップと入力画素選択スイッチがある。転送用パラレル／シリアル変換器３６からシーケンシャルに出力されたデータは、拡大パターン登録用入力端子３８より予め登録されたパターンに従い、入力画素位置選択用入力端子３９から与えられた入力選択パルスで指定の画素位置にデータを格納する。従って実施形態１と同じ動作をする場合は、転送用パラレル／シリアル変換器３６から出力された３画素データが、拡大パターン発生用シリアル／パラレル変換器４０に格納される際８画素に拡大される。
【００６２】
この転送が完了すると、拡大パターン発生用シリアル／パラレル変換器４０に格納されている画素データは、また入力側メモリ４1〜４8に書き込まれ、プロセッサエレメントで後演算処理される。拡大により生成される補間画素の演算処理も、実施形態１と同様である。
【００６３】
なお実施形態３において、１Ｈ以内の時間で拡大処理とその他の処理を行う時間を確保するには、転送用パラレル／シリアル変換器３６から拡大パターン発生用シリアル／パラレル変換器４０にデータをシーケンシャルに転送するのに用いるクロックが、外部との入出力に必要なクロックより早ければよい。
【００６４】
また、実施形態３ではプロセッサエレメントの数が８の例で動作の説明を行ったが、プロセッサエレメントの数は８以外でもよく、転送用パラレル／シリアル変換器３６と拡大パターン発生用シリアル／パラレル変換器４０は出力側メモリに接続しても良い。
【００６５】
実施の形態４．
本発明の第４の実施形態を図６に基づき説明する。図６では簡単のためプロセッサエレメントの数が８個（従来例ではＭ個）の例を用い、本発明の特徴的部分であるデータ転送機構とその動作について説明する。第４の実施形態は画像データが一旦プロセッサエレメント内に取り込まれ、処理されている途中で縮小処理を行い、その後他の処理を行うことができることを目的としている。
【００６６】
図６において、外部との画像データの入出力を行う入力用シリアル／パラレル変換器３１及び出力用パラレル／シリアル変換器３２の外部の外部との入出力動作は、それぞれ単純なシフト動作のみで行なわれる。入力用シリアル／パラレル変換器３１にシーケンシャルに格納された画像データは入力側メモリ４1〜４8にパラレルに転送され、プロセッサエレメントで演算処理される。またプロセッサエレメントで演算処理の終わった出力側メモリ８1〜８8の画像データはパラレルに出力用パラレル／シリアル変換器３２に転送される。第２のデータ転送フィールドである転送用シリアル／パラレル変換器４６と第１のデータ転送フィールドである縮小パターン発生用パラレル／シリアル変換器４３は、出力側メモリ８1〜８8にそれぞれ対応する８つのシフトレジスタ（図２の入出力部）から構成される。
【００６７】
プロセッサエレメントで前演算処理され、出力側メモリ８1〜８8に格納されたデータ（８個）は、出力側メモリ８1〜８8からパラレルに読み出され、縮小パターン発生用パラレル／シリアル変換器４３に並列に取り込まれる。縮小パターン発生用パラレル／シリアル変換器４３の構成及び、各画素のデータを間引いて出力する動作は、先の実施形態２の画像データ出力機構および出力動作と同じである。縮小パターン発生用パラレル／シリアル変換器４３から出力される画素データは、転送信号線４４を通して転送用シリアル／パラレル変換器４６にシーケンシャルに格納される。
【００６８】
すなわち、縮小パターン発生用パラレル／シリアル変換器４３には、縮小パターン登録用入力端子４１と出力画素位置選択用入力端子４２が備わっており、内部には出力パターン用フリップフロップと出力パターン設定用スイッチと出力画素位置選択用フリップフロップと出力画素選択スイッチがある。従って実施形態２と同じ動作をする場合は、縮小パターン発生用パラレル／シリアル変換器４３に格納されていた８画素データが、３画素に縮小されて転送用シリアル／パラレル変換器４６にシーケンシャルに格納される。
【００６９】
この転送が完了すると、転送用シリアル／パラレル変換器４６に格納されている画素データは、再度出力側メモリ８1〜８3に書き込まれ、プロセッサエレメントに並列に入力され、縮小のために行う後演算処理をプロセッサエレメントで行なう。縮小のために行う後演算処理も、実施形態２と同様である。
【００７０】
なお実施形態４において、１Ｈ以内の時間で縮小処理とその他の処理を行う時間を確保するには、縮小パターン発生用パラレル／シリアル変換器４３から転送用シリアル／パラレル変換器４６にデータを転送するのに用いるクロックが、外部との入出力に必要なクロックより早ければよい。
【００７１】
また、実施形態４ではプロセッサエレメントの数が８の例で動作の説明を行ったが、プロセッサエレメントの数は８以外でもよく、縮小パターン発生用パラレル／シリアル変換器４３と転送用シリアル／パラレル変換器４６は入力側メモリに接続しても良い。
【００７２】
実施の形態５．
本発明の第５の実施形態を図７に基づき説明する。図７では簡単のためプロセッサエレメントの数が８個（従来例ではＭ個）の例を用い、本発明の特徴的部分であるデータ転送機構とその動作について説明する。第５の実施形態は画像データが一旦プロセッサエレメント内に取り込まれ、処理されている途中で縮小処理あるいは拡大処理を行い、その後他の処理を行うことができることを目的としている。
【００７３】
図７において、外部との画像データの入出力を行う入力用シリアル／パラレル変換器３１及び出力用パラレル／シリアル変換器３２は、それぞれ入力時及び出力時に単純なシフト動作のみを行う。すなわち隣接する画素データをシーケンシャルに入出力する機能のみを有する。第１のデータ転送フィールドである縮小パターン発生用パラレル／シリアル変換器４３と第２のデータ転送フィールドである拡大パターン発生用シリアル／パラレル変換器４０は、入力側メモリ４1〜４8にそれぞれ対応する８つのシフトレジスタ（図１および図２の入出力部）から構成される。
【００７４】
まず拡大動作について説明する。入力側メモリ４1〜４8からパラレルに読み出されたデータ（８個）は、縮小パターン発生用パラレル／シリアル変換器４３に取り込まれる。縮小パターン発生用パラレル／シリアル変換器４３に格納された画素データは転送信号線３７を通して拡大パターン発生用シリアル／パラレル変換器４０にシーケンシャルに転送される。この縮小パターン発生用シリアル／パラレル変換器４３からシーケンシャルに画素データを読み出す際、縮小動作を行わせない設定をする。つまり出力パターン登録用入力端子４１からすべての出力パターン用フリップフロップ５６1〜５６8（図１）にHighを設定しておけばよい。そして、拡大パターン発生用シリアル／パラレル変換器４０へ格納する際、拡大パターン設定入力端子３８にて設定された拡大パターンに応じて拡大されて格納する。この動作自体は第３の実施形態と同じである。
【００７５】
次に縮小動作について説明する。入力側メモリ４1〜４8からパラレルに読み出されたデータ（８個）は、縮小パターン発生用パラレル／シリアル変換器４３に取り込まれる。縮小パターン発生用パラレル／シリアル変換器４３から、縮小パターン設定入力端子４１にて設定された縮小パターンに応じて画素を間引いて出力する。縮小パターン発生用パラレル／シリアル変換器４３から出力される画素データは、転送信号線４７を通して拡大パターン発生用シリアル／パラレル変換器４０にシーケンシャルに格納される。この拡大パターン発生用シリアル／パラレル変換器４０へシーケンシャルに格納するは拡大動作を行わせない設定をする。つまり拡大パターン登録用入力端子３８からすべての入力パターン用フリップフロップ５１1〜５１7にHighを設定しておけばよい。この動作自体は第４の実施形態と同じである。
【００７６】
なお実施形態５において、１Ｈ以内の時間で縮小処理とその他の処理を行う時間を確保するには、縮小パターン発生用パラレル／シリアル変換器４３から拡大パターン発生用シリアル／パラレル変換器４０にデータを転送するのに用いるクロックが、外部との入出力に必要なクロックより早ければよい。
【００７７】
また、実施形態５ではプロセッサエレメントの数が８の例で動作の説明を行ったが、プロセッサエレメントの数は８以外でもよく、縮小パターン発生用パラレル／シリアル変換器４３と拡大パターン発生用シリアル／パラレル変換器４０は出力側メモリに接続しても良い。
【００７８】
実施の形態６．
本発明の第６の実施形態を図８に基づき説明する。図８では簡単のためプロセッサエレメントの数が８個（従来例ではＭ個）の例を用い、本発明の特徴的部分であるデータ転送機構とその動作について説明する。第６の実施形態は画像データが一旦プロセッサエレメント内に取り込まれ、処理されている途中で拡大処理を行う際、拡大のためのデータ転送時間の短縮を図り、その後他の処理を行うことができることを目的としている。
【００７９】
図８において、外部との画像データの入出力を行う入力用シリアル／パラレル変換器３１及び出力用パラレル／シリアル変換器３２は、それぞれ入力時及び出力時に単純なシフト動作のみを行う。すなわち隣接する画素データをシーケンシャルに入出力する機能のみを有する。転送用パラレル／シリアル変換器３６ａと拡大パターン発生用シリアル／パラレル変換器４０ａは、入力側メモリ４1〜４4にそれぞれ対応する４つのシフトレジスタ（図１の入出力部相当）から、また転送用パラレル／シリアル変換器３６ｂと拡大パターン発生用シリアル／パラレル変換器４０ｂは、入力側メモリ４4〜４8にそれぞれ対応する４つのシフトレジスタ（図１の入出力部相当）から構成される。
【００８０】
入力側メモリ４1〜４4からパラレルに読み出されたデータ（４個）は、転送用パラレル／シリアル変換器３６ａに取り込まれ、出力画素位置選択用入力端子３５ａから入力される出力選択パルスによって転送信号線３７ａを通してシーケンシャルに読み出され、拡大パターン発生用シリアル／パラレル変換器４０ａに転送される。またこれと対称形で入力側メモリ４5〜４8からパラレルに読み出されたデータ（４個）は、転送用パラレル／シリアル変換器３６ｂに取り込まれ、出力画素位置選択用入力端子３５ｂから入力される出力選択パルスによって転送信号線３７ｂを通してシーケンシャルに読み出され、拡大パターン発生用シリアル／パラレル変換器４０ｂに転送される。この拡大パターン発生用シリアル／パラレル変換器４０ａ、４０ｂの構成及び、転送される各画素のデータが拡大パターン発生用シリアル／パラレル変換器４０ａ、４０ｂに格納される動作は、先の実施形態３および実施形態５の拡大動作と同じである。本実施形態６の特徴的なことは、それぞれの転送フィールド（転送用パラレル／シリアル変換器３６ａと３６ｂおよび拡大パターン発生用シリアル／パラレル変換器４０ａと４０ｂ）が対称形であり、かつデータ転送方向も対称になることである。
【００８１】
実施形態６において拡大処理を行うには、入力用シリアル／パラレル変換器３１に画像データを入力する際、１Ｈ分の画像データをセンタリングして格納する。そしてこの配置状態で各プロセッサエレメントにて処理を行う。拡大処理を行う際には、左右対称な転送フィールドを用いる。ここで、左側のデータ転送フィールドは、右端のデータを基準に左向きにデータ転送を行いながら拡大処理を行い、同時に右側のデータ転送フィールドは、左端のデータを基準に右向きにデータ転送を行いながら拡大処理を行う。これによりデータ転送に要する時間が、実施形態３あるいは５に対し１／２の時間ですむ。つまり１Ｈ中の時間内においてデータ転送に費やされる時間を少なくすることができるため、他の処理に割り当てられる時間が増える。また、画像データをセンタリングして拡大する場合には、１ラインの中心を基準にして左右対象に拡大処理が行えるため、拡大後のセンタリング処理が不要になる。さらには拡大後の画像が記録あるいは表示領域を超えるような場合においてセンタリング機能が要求される場合には、左右の周辺画素を均等に削除することが可能となる。
【００８２】
この転送が完了すると、拡大パターン発生用シリアル／パラレル変換器４０に格納されている画素データは、再度入力側メモリ４1〜４8に書き込まれる。
拡大により生成される補間画素の演算処理は、実施形態１と同様である。
【００８３】
もちろん、原画像の１Ｈ分のサイズが２の倍数でない場合でも、左右いずれかのフィールドに１画素分のダミー画素をつけて処理すればよい。
【００８４】
また、実施形態６ではプロセッサエレメントの数が８の例で動作の説明を行ったが、プロセッサエレメントの数は８以外でもよく、転送用パラレル／シリアル変換器３６ａ、３６ｂと拡大パターン発生用シリアル／パラレル変換器４０ａ、４０ｂは出力側メモリに接続しても良い。
【００８５】
なお、実施形態６では、センタリングに容易に対応できるように、それぞれの転送フィールド（転送用パラレル／シリアル変換器３６ａと３６ｂおよび拡大パターン発生用シリアル／パラレル変換器４０ａと４０ｂ）が対称形となる例を示したが、左右のいずれかを基準として拡大処理を行う場合には、それぞれの転送フィールドは同じ形をとればよい。データ入力はセンタリングせずに行い、それぞれの転送フィールドは同じ方向でデータ転送を行う。この場合でも、データ転送に要する時間は実施形態３あるいは５に対し１／２の時間ですむ効果は同じである。
【００８６】
実施の形態７．
本発明の第７の実施形態を図９に基づき説明する。図９では簡単のためプロセッサエレメントの数が８個（従来例ではＭ個）の例を用い、本発明の特徴的部分であるデータ転送機構とその動作について説明する。第７の実施形態は画像データが一旦プロセッサエレメント内に取り込まれ、処理されている途中で縮小処理を行う際、縮小のためのデータ転送時間の短縮を図り、その後他の処理を行うことができることを目的としている。
【００８７】
図９において、外部との画像データの入出力を行う入力用シリアル／パラレル変換器３１及び出力用パラレル／シリアル変換器３２は、それぞれ入力時及び出力時に単純なシフト動作のみを行う。すなわち隣接する画素データをシーケンシャルに入出力する機能のみを有する。転送用シリアル／パラレル変換器４６ａと縮小パターン発生用パラレル／シリアル変換器４３ａは、出力側メモリ８1〜８4にそれぞれ対応する４つのシフトレジスタ（図１の入出力部相当）から、また転送用シリアル／パラレル変換器４６ｂと縮小パターン発生用パラレル／シリアル変換器４３ｂは、入力側メモリ８4〜８8にそれぞれ対応する４つのシフトレジスタ（図１の入出力部相当）から構成される。
【００８８】
出力側メモリ８1〜８4からパラレルに読み出されたデータ（４個）は、縮小パターン発生用パラレル／シリアル変換器４３ａに取り込まれる。縮小パターン発生用パラレル／シリアル変換器４３ａから間引かれて出力される画素データは、転送信号線４４ａを通して転送用シリアル／パラレル変換器４６ａにシーケンシャルに格納される。またこれと対称形で入力側メモリ８5〜８8からパラレルに読み出されたデータ（４個）は、縮小パターン発生用パラレル／シリアル変換器４３ｂに取り込まれる。縮小パターン発生用パラレル／シリアル変換器４３ｂから間引かれて出力される画素データは、転送信号線４４ｂを通して転送用シリアル／パラレル変換器４６ｂにシーケンシャルに格納される。この縮小パターン発生用パラレル／シリアル変換器４３ａ、４３ｂの構成及び、転送される各画素のデータが転送用シリアル／パラレル変換器４６ａ、４６ｂに格納される動作は、先の実施形態４および実施形態５の縮小動作と同じである。本実施形態７の特徴的なことは、それぞれの転送フィールド（転送用シリアル／パラレル変換器４６ａと４６ｂおよび縮小パターン発生用パラレル／シリアル変換器４３ａと４３ｂ）が対称形であり、かつデータ転送方向も対称になることである。
【００８９】
実施形態７において縮小処理を行うには、入力用シリアル／パラレル変換器３１に画像データを入力する際、１Ｈ分の画像データをセンタリングして格納する。そしてこの配置状態で各プロセッサエレメントにて処理を行う。縮小処理を行う際には、左右対称な転送フィールドを用いる。ここで、左側のデータ転送フィールドは、例えば右端のデータを基準に左向きにデータ転送を行いながら縮小処理を行い、同時に右側のデータ転送フィールドは、左端のデータを基準に右向きにデータ転送を行いながら縮小処理を行う。この場合は縮小された画像もセンタリングされた形で生成できる。これによりデータ転送に要する時間が、実施形態４あるいは５に対し１／２の時間ですむ。つまり１Ｈ中の時間内においてデータ転送に費やされる時間を少なくすることができるため、他の処理に割り当てられる時間が増える。
【００９０】
この転送が完了すると、転送用シリアル／パラレル変換器４６ａ、４６ｂに格納されている画素データは、再度入力側メモリ８1〜８8に書き込まれる。
【００９１】
もちろん、原画像の１Ｈ分のサイズが２の倍数でない場合でも、左右いずれかのフィールドに１画素分のダミー画素をつけて処理すればよい。
【００９２】
また、実施形態７ではプロセッサエレメントの数が８の例で動作の説明を行ったが、プロセッサエレメントの数は８以外でもよく、転送用シリアル／パラレル変換器４６ａ、４６ｂと縮小パターン発生用パラレル／シリアル変換器４３ａ、４３ｂは入力側メモリに接続しても良い。
【００９３】
なお、実施形態７では、センタリングに容易に対応できるように、それぞれの転送フィールド（転送用シリアル／パラレル変換器４６ａと４６ｂおよび縮小パターン発生用パラレル／シリアル変換器４３ａと４３ｂ）が対称形となる例を示したが、左右のいずれかを基準として縮小処理を行う場合には、それぞれの転送フィールドは同じ形をとればよい。データ入力はセンタリングせずに行い、それぞれの転送フィールドは同じ方向でデータ転送を行う。この場合でも、データ転送に要する時間は実施形態４あるいは５に対し１／２の時間ですむ効果は同じである。
【００９４】
実施の形態８．
本発明の第８の実施形態を図１０に基づき説明する。図１０では簡単のためプロセッサエレメントの数を８個（従来例ではＭ個）とし、入力画像を８／３倍に拡大する例を用い、本発明の特徴的部分であるデータ入力機構とその動作についてのみ説明する。尚、図中各フリップフロップに入力されるクロック信号は省略している。
【００９５】
拡大パターン登録用入力端子５０は、画像データを入力する前に予め入力した画像データの各画素データをどのプロセッサエレメントに接続される入力画素データ格納用フリップフロップ６０1〜６０8（以下入力データ用フリップフロップ）に格納するかを決める信号用端子である。この入力信号は拡大パターン登録用シフトレジスタを構成するフリップフロップ５１1〜５１7（以下入力パターン用フリップフロップ）にシーケンシャルに設定される。必要なフリップフロップ数の設定が終わると、設定モードを終了しこのパターンは次にパターン変更がないかぎり保持される。本実施形態では８／３倍パターンの一例が設定されている。
【００９６】
入力パターン用フリップフロップ５１1〜５１7に保持された信号は、入力データ用フリップフロップ６０1〜６０8に格納するデータの転送パターンを決定する入力パターン設定用スイッチ５４1〜５４8の向きを指定する。例えば、図１０では前段のフリップフロップの出力値を受ける場合にはHigh（網掛けあり）を、前段より前のフリップフロップの出力値を受ける場合にはLow（網掛けなし）を保持しておく。
【００９７】
次に画像データの入力動作について説明する。画像データの入力時は、１水平期間（１Ｈ）分の中で格納すべき最初のデータから順次クロックに同期して入力端子１から入力する。入力データは、先に設定されている入力パターン用フリップフロップ５１1〜５１7によって接続の向きが設定されている入力パターン設定用スイッチ５４1〜５４8のパスに従ってクロックに同期して伝搬し、入力データ用フリップフロップ６０1〜６０8に格納されていく。このようにして入力された画像データの配置は、先の実施形態１とは反対の順番になる以外は実施形態１とすべて同じである。すなわち１ライン分の画像データが入力データ用フリップフロップ６０1〜６０8に格納されたあとは、入力側メモリにパラレルに転送され処理を行う。
【００９８】
本発明の実施形態８の特徴的なことは、画像データを入力する機構として、先の実施形態１における入力画素位置選択用フリップフロップ５３1〜５３8が、入力データを格納するフリップフロップとして使用していることである。これによりフリップフロップの数が削減できる。
【００９９】
なお、実施形態８ではプロセッサエレメントの数が８の例で動作の説明を行ったが、プロセッサエレメントの数は８以外でもよい。
【０１００】
実施の形態９．
本発明の第９の実施形態を図１１に基づき説明する。図１１では簡単のためプロセッサエレメントの数を８個（従来例ではＭ個）とし、入力画像を３／８倍に縮小する例を用い、本発明の特徴的部分であるデータ出力機構とその動作についてのみ説明する。尚、図中各フリップフロップに入力されるクロック信号は省略している。
【０１０１】
縮小パターン登録用入力端子５５は、画像データを出力する前に予め出力すべき画像データの各画素データをどのプロセッサエレメントに接続された出力画素データ格納用フリップフロップ６１1〜６１8（以下出力データ用フリップフロップ）から読み出すかを決める信号用端子である。この入力信号は縮小パターン登録用シフトレジスタを構成するフリップフロップ５６1〜５６8（以下入力パターン用フリップフロップ）にシーケンシャルに設定される。必要なフリップフロップ数の設定が終わると、設定モードを終了しこのパターンは次にパターン変更がないかぎり保持される。本実施形態では３／８倍パターンの一例が設定されている。
【０１０２】
出力パターン用フリップフロップ５６1〜５６8に保持された信号は、出力データ用フリップフロップ６１1〜６１8から読み出すデータの転送パターンを決定する出力パターン設定用スイッチ５９1〜５９8の向きを指定する。例えば、図１１では前段のフリップフロップの出力値を受ける場合にはHigh（網掛けあり）を、前段より前のフリップフロップの出力値を受ける場合にはLow（網掛けなし）を保持しておく。
【０１０３】
次に画像データの出力動作について説明する。画像データの出力は、１水平期間（１Ｈ）分の中で読み出すべき最初のデータから順次クロックに同期して出力端子１１から入力される。出力データは、先に設定されている出力パターン用フリップフロップ５６1〜５６8によって接続の向きが設定されている入力パターン設定用スイッチ５９1〜５９8のパスに従ってクロックに同期して伝搬し、出力データ用フリップフロップ６１1〜６１8に格納されていく。このようにして出力される画像データの配置は、先の実施形態２とは反対の順番になる以外は実施形態２とすべて同じである。
【０１０４】
本発明の実施形態９の特徴的なことは、画像データを出力する機構として、先の実施形態２における出力画素位置選択用フリップフロップ５８1〜５８8が、出力データを読み出すフリップフロップとして使用していることである。これによりフリップフロップの数が削減できる。
【０１０５】
なお、実施形態９ではプロセッサエレメントの数が８の例で動作の説明を行ったが、プロセッサエレメントの数は８以外でもよい。
【０１０６】
【発明の効果】
請求項１の発明によれば、SIMD方式のプロセッサでは処理が複雑になるものに対し、入力時に上記プロセッサの処理に対応した画素間隔を設定することができるため、水平方向の画素移動が容易に実現可能となり、特に水平方向の任意の割合での拡大（画素間隔を広げる）処理に対し有効である。
【０１０８】
請求項２の発明によれば、SIMD方式のプロセッサでは処理が複雑になるものに対し、出力時に上記プロセッサの処理に対応した画素間隔を設定することができるため、水平方向の画素移動が容易に実現可能となり、特に水平方向の任意の割合での縮小（画素間隔を狭める）処理に対し有効である。
【０１１１】
請求項３の発明によれば、水平方向の画素間隔が変更できるように、画像データの処理の途中で１ラインのデータを内部で水平方向に転送し、その際に格納すべき画素位置を指定できる機構を備えていることにより、処理の途中で拡大を行うことができるようになる。これにより処理シーケンスの制約がなくなり、また画素データの移動処理が容易に行える。さらに、画素データの移動に要する時間が少なくてすむ。
【０１１３】
請求項４の発明によれば、水平方向の画素間隔がプロセッサエレメントの後演算処理内容に応じた指定の並びに変えられるように、画像データの処理の途中で１ラインのデータを内部で水平方向に転送し、その際に読み出すべき画素位置を指定できる機構を備えていることにより、処理の途中で所定の処理を行うことができるようになる。これにより処理シーケンスの制約がなくなり、また画素データの移動処理が容易に行える。
特に、処理の途中で 縮小処理を行う際に有効である。
【図面の簡単な説明】
【図１】  入力時に任意の間隔で画像データを取り込める画像処理プロセッサの構成図である。
【図２】  出力時に任意の間隔で画像データを間引ける画像処理プロセッサの構成図である。
【図３】  画素間隔を広げながらの入力動作を説明するための図である。
【図４】  画素を間引きながらの出力動作を説明するための図である。
【図５】  各プロセッサエレメントに取り込んだ画像データに対し任意に画素間隔を広げられるデータ転送フィールドを持った画像処理プロセッサの構成図である。
【図６】  各プロセッサエレメントに取り込んだ画像データに対し任意に画素を間引けるデータ転送フィールドを持った画像処理プロセッサの構成図である。
【図７】  各プロセッサエレメントに取り込んだ画像データに対し任意に画素間隔を広げたり画素を間引けるデータ転送フィールドを持った画像処理プロセッサの構成図である。
【図８】  各プロセッサエレメントに取り込んだ画像データに対し任意に画素間隔を広げられるデータ転送フィールドを複数持った画像処理プロセッサの構成図である。
【図９】  各プロセッサエレメントに取り込んだ画像データに対し任意に画素を間引けるデータ転送フィールドを複数持った画像処理プロセッサの構成図である。
【図１０】  各プロセッサエレメントに取り込んだ画像データに対し任意に画素間隔を広げられるデータ転送フィールドがシフトレジスタで構成される画像処理プロセッサの構成図である。
【図１１】  各プロセッサエレメントに取り込んだ画像データに対し任意に画素を間引けるデータ転送フィールドがシフトレジスタで構成される画像処理プロセッサの構成図である。
【図１２】  従来の並列プロセッサの構成図である。
【図１３】  別な従来の並列プロセッサの構成図である。
【符号の説明】
１：入力端子                          ２1〜２M：入力画素選択スイッチ
３1〜３M：入力用レジスタ              ４1〜４M：入力側メモリ
５、７：セレクタ（SEL）              ６1〜６M：演算回路
８1〜６M：出力側メモリ                    ９：出力用レジスタ
１０1〜１０M：出力画素選択スイッチ      １１：出力端子
１２：アドレスデコーダ                  １３：演算制御回路
１４、１６、２１、２３、２６、２８：スイッチオン信号入力端子
１５1〜１５M、１７1〜１７M、２２1〜２２M/2、２４1〜２４７M/2、
２７1〜２７M/2、２９1〜２９M/2：フリップフロップ
２５1〜２５M、３０1〜３０M：セレクタ
３１：入力用シリアル／パラレル変換器
３２：出力用パラレル／シリアル変換器
３３：入力側転送用シフトレジスタ
３４：出力側転送用シフトレジスタ
３５、３５ａ、３５ｂ：出力画素位置選択用入力端子
３６、３６ａ、３６ｂ：転送用パラレル／シリアル変換器
３７、３７ａ、３７ｂ：転送信号線
３８、３８ａ、３８ｂ：拡大パターン登録用入力端子
３９、３９ａ、３９ｂ：入力画素位置選択用入力端子
４０、４０ａ、４０ｂ：拡大パターン発生用シリアル／パラレル変換器
４１、４１ａ、４１ｂ：縮小パターン登録用入力端子
４２、４２ａ、４２ｂ：出力画素位置選択用入力端子
４３、４３ａ、４３ｂ：縮小パターン発生用パラレル／シリアル変換器
４４、４４ａ、４４ｂ：転送用信号線
４５、４５ａ、４５ｂ：入力画素位置選択用入力端子
４６、４６ａ、４６ｂ：転送用シリアル／パラレル変換器
５０：拡大パターン登録用入力端子
５１1〜５１7：入力パターン用フリップフロップ
５２：入力画素位置選択用入力端子
５３1〜５３8：入力画素位置選択用フリップフロップ
５４1〜５４8：入力パターン設定用スイッチ
５５：縮小パターン登録用入力端子
５６1〜５６8：出力パターン用フリップフロップ
５７：出力画素位置選択用入力端子
５８1〜５８8：出力画素位置選択用フリップフロップ
５９1〜５９8：出力パターン設定用スイッチ
６０1〜６０8：入力データ用フリップフロップ
６１1〜６１8：出力データ用フリップフロップ
【図１】
0003843477.tif 000002
【図２】
0003843477.tif 000003
【図３】
0003843477.tif 000004
【図４】
0003843477.tif 000005
【図５】
0003843477.tif 000006
【図６】
0003843477.tif 000007
【図７】
0003843477.tif 000008
【図８】
0003843477.tif 000009
【図９】
0003843477.tif 000010
【図１０】
0003843477.tif 000011
【図１１】
0003843477.tif 000012
【図１２】
0003843477.tif 000013
【図１３】
0003843477.tif 000014