(57)【要約】【課題】少ない回路追加のみで回転処理などの各ＰＥが異なったアドレスのデータを参照する処理を高速に行うことが出来るＳＩＭＤ型マイクロプロセッサ、プロセッサシステムおよびＳＩＭＤ型マイクロプロセッサのデータ処理方法を提供する。【解決手段】ＳＩＭＤ型マイクロプロセッサ２に、プロセッサエレメントグループ６のレジスタファイル１４とのみデータの入出力が行われるＰＥ−ＲＡＭ２０と、ＰＥ−ＲＡＭ２０とレジスタファイル１４とのデータ転送の制御を行うＤＭＡ装置２２を設け、ＤＭＡ装置２２で、各ＰＥ４４のＲ３１レジスタに格納されている独立したアドレス値をＰＥ番号順に順次読み出していき、ＰＥ−ＲＡＭ２０に格納されていたデータを順次Ｒ３１レジスタに書き戻す。【選択図】図３
2013161325.tif 000002
【特許請求の範囲】
【請求項１】
所定のアドレスによってリードまたはライトアクセス可能な複数のレジスタを備えたプロセッサエレメントを複数有するＳＩＭＤ型マイクロプロセッサにおいて、
前記プロセッサエレメントとのみデータの入出力が可能かつ、少なくとも２以上の前記プロセッサエレメントが同時にアクセス可能なデータビット幅を有したメモリと、
前記複数のレジスタのうちの一つのレジスタに格納されている値を前記プロセッサエレメントごとに順次読み出すととともに、該読み出された値を前記メモリのアドレスとして出力するデータ転送手段と、
前記メモリから読み出されたデータを、少なくとも該データに対応するアドレスが読み出された前記プロセッサエレメントの前記レジスタに格納する制御を行う書き込み制御手段と、
を備えたことを特徴とするＳＩＭＤ型マイクロプロセッサ。
【請求項２】
前記書き込み制御手段が、前記一つのレジスタに格納されている値のうち、同じ値が連続する場合は、一度の読み出しで前記同じ値が格納されている前記プロセッサエレメントの前記レジスタに書き込むように制御し、以降の前記同じ値に対応する前記プロセッサエレメントの前記レジスタへの書き込みは規制するように制御することを特徴とする請求項１に記載のＳＩＭＤ型マイクロプロセッサ。
【請求項３】
前記データ転送手段が、前記一つのレジスタに格納されている値のうち、同じ値が連続する数に応じて、前記一つのレジスタに格納されている値を読み出す前記プロセッサエレメントをスキップさせることを特徴とする請求項２に記載のＳＩＭＤ型マイクロプロセッサ。
【請求項４】
前記データ転送手段が、前記レジスタから読み出したアドレスに対するオフセット値を設定するレジスタおよび乗数を設定するレジスタのうち少なくともいずれか一方と、前記オフセット値を設定するレジスタおよび前記乗数を設定するレジスタと前記レジスタから読み出した値との演算を行う演算器と、を備えていることを特徴とする請求項１乃至３のうちいずれか一項に記載のＳＩＭＤ型マイクロプロセッサ。
【請求項５】
外部とのデータ転送制御を行う外部インタフェースを備えたＳＩＭＤ型マイクロプロセッサと、前記外部インタフェースデータからデータの書き込みまたは読み出しが可能な外部メモリと、を有するプロセッサシステムにおいて、
前記ＳＩＭＤ型マイクロプロセッサが、請求項１乃至４のうちいずれか一項に記載のＳＩＭＤ型マイクロプロセッサであることを特徴とするプロセッサシステム。
【請求項６】
所定のアドレスによってリードまたはライトアクセス可能な複数のレジスタを備えたプロセッサエレメントを複数有するＳＩＭＤ型マイクロプロセッサのデータ処理方法において、
前記複数のレジスタのうち一つのレジスタに格納されている値を前記プロセッサエレメントごとに読み出し、
該読み出された値を、前記プロセッサエレメントとのみデータの入出力が可能かつ、少なくとも２以上の前記プロセッサエレメントが同時にアクセス可能なデータビット幅を有したメモリのアドレスとし、
前記メモリから読み出されたデータを、少なくとも該データに対応するアドレスが読み出された前記プロセッサエレメントの前記レジスタに格納する
ことを特徴とするＳＩＭＤ型マイクロプロセッサのデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、１つの演算命令により画像データ等の複数のデータを並列処理するＳＩＭＤ（Single Instruction-stream Multiple Data-stream）型マイクロプロセッサと、ＳＩＭＤ型マイクロプロセッサを有するプロセッサシステムおよびＳＩＭＤ型マイクロプロセッサのデータ処理方法に関する。
【背景技術】
【０００２】
ＳＩＭＤ型マイクロプロセッサでは１つの命令で複数のデータに対して同時に同じ演算処理が実行可能である。この構造により画像処理等を行うべき多くのデータに対して同一の演算を行う用途に使用されている。
【０００３】
ＳＩＭＤ型マイクロプロセッサにおいて、通常の演算処理は複数の演算器を並べ同じ演算を同時に複数のデータに対して実行することで実現できるが、演算処理が式で表すことができない非線形な処理は演算対象のデータによって演算式が変更となるため同じ処理を同時に実行できない。
【０００４】
この種の非線形の画像処理の一例として回転という処理が挙げられる。これは、デジタルコピー機などにおいて原稿がコンタクトガラスに対して歪んで置かれた場合に水平面に対して歪んでいる角度分だけスキャンした画像を回転することで適正な画像を得るという処理である。
【０００５】
特許文献１では、回転処理において回転前の元データに対して、回転角度に応じて副走査方向のずれ量を算出して回転後のデータをサンプリングしていき、バイリニアあるいはバイキュービックで補間演算することで回転処理を実現することが記載されている。
【０００６】
特許文献２や３には、ＳＩＭＤ型マイクロプロセッサが備える各プロセッサエレメント（ＰＥ）に個別のＳＲＡＭ（Static Random Access Memory）を持った構成となっており、それぞれのＰＥで副走査方向のずれ量を計算した値をアドレスとしてデータを参照することが可能である。
【０００７】
特許文献４は、各ＰＥに独立したＳＲＡＭを持つことなくＬＵＴ（Look Up Table）に代表される非線形処理を高速に行う構成が記載されている。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
特許文献１に記載された発明をＳＩＭＤ型マイクロプロセッサで行うためにはＰＥからアクセス可能なメモリに格納されているデータをＰＥ番号の順にアドレスをインクリメントさせながら逐次で読み出していくしかなく、これを命令として実行させるとサイクル数が膨大にかかるという問題があった。
【０００９】
特許文献２、３に記載された発明は、全てのＰＥに内蔵しているＳＲＡＭはアドレスデコーダをそれぞれが持つ構成であるためにＰＥ数が多いＳＩＭＤ型マイクロプロセッサでは回路規模が増大しコストが増大してしまうという問題があった。
【００１０】
特許文献４は、ガンマ補正のように各ＰＥで同一の参照メモリを用いた処理にしか適用できないという問題があった。
【００１１】
本発明はかかる問題を解決することを目的としている。
【００１２】
すなわち、本発明は、少ない回路追加のみで回転処理などの各ＰＥが異なったアドレスのデータを参照する処理を高速に行うことが出来るＳＩＭＤ型マイクロプロセッサ、プロセッサシステムおよびＳＩＭＤ型マイクロプロセッサのデータ処理方法を提供することを目的としている。
【課題を解決するための手段】
【００１３】
上記に記載された課題を解決するために請求項１に記載された発明は、所定のアドレスによってリードまたはライトアクセス可能な複数のレジスタを備えたプロセッサエレメントを複数有するＳＩＭＤ型マイクロプロセッサにおいて、前記プロセッサエレメントとのみデータの入出力が可能かつ、少なくとも２以上の前記プロセッサエレメントが同時にアクセス可能なデータビット幅を有したメモリと、前記複数のレジスタのうちの一つのレジスタに格納されている値を前記プロセッサエレメントごとに順次読み出すととともに、該読み出された値を前記メモリのアドレスとして出力するデータ転送手段と、前記メモリから読み出されたデータを、少なくとも該データに対応するアドレスが読み出された前記プロセッサエレメントの前記レジスタに格納する制御を行う書き込み制御手段と、を備えたことを特徴とするＳＩＭＤ型マイクロプロセッサである。
【発明の効果】
【００１４】
請求項１に記載の発明によれば、複数のレジスタのうち一つのレジスタに格納されている値を前記プロセッサエレメントごとに読み出し、該読み出された値を、前記プロセッサエレメントとのみデータの入出力が可能かつ、少なくとも２以上の前記プロセッサエレメントが同時にアクセス可能なデータビット幅を有したメモリのアドレスとし、前記メモリから読み出されたデータを、少なくとも該データに対応するアドレスが読み出された前記プロセッサエレメントの前記レジスタに格納するので、各プロセッサエレメントにそれぞれ独立したアドレスデコーダを持ったメモリを備えることなく、少ない回路追加のみで回転処理などの各プロセッサエレメントが異なったアドレスのデータを参照する処理を高速に行うことが可能となる。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１の実施形態にかかるプロセッサシステムの構成図である。
【図２】ＳＩＭＤ型マイクロプロセッサの特にプロセッサエレメントグループのより詳細な構成を示すブロック図である。
【図３】図１に示されたＳＩＭＤ型マイクロプロセッサの要部構成図である。
【図４】図３に示されたＲ３１レジスタにアドレス設定値を記載した説明図である。
【図５】図３に示されたＳＩＭＤ型マイクロプロセッサのＰＥ−ＲＡＭからのデータ読み出し動作を示したタイミングチャートである。
【図６】図３に示されたＳＩＭＤ型マイクロプロセッサのＰＥ−ＲＡＭからのデータ読み出し動作を示したフローチャートである。
【図７】本発明の第２の実施形態にかかるＳＩＭＤ型マイクロプロセッサの要部構成図である。
【図８】図７に示されたデコーダの構成を示した構成図である。
【図９】図８に示された書き込みデコーダのデコード条件を示した説明図である。
【図１０】図７に示されたＳＩＭＤ型マイクロプロセッサのＲ３０レジスタに格納するアドレス設定値の例と、その例に対してデータ整形を施した後のデータを示した説明図である。
【図１１】図７に示されたＳＩＭＤ型マイクロプロセッサのＰＥ−ＲＡＭからのデータ読み出し動作を示したタイミングチャートである。
【図１２】本発明の第３の実施形態にかかるＳＩＭＤ型マイクロプロセッサの要部構成図である。
【発明を実施するための形態】
【００１６】
（第１実施形態）
以下、本発明の第１の実施形態を、図１乃至図６を参照して説明する。図１は、本発明の第１の実施形態にかかるプロセッサシステムの構成図である。図２は、ＳＩＭＤ型マイクロプロセッサの特にプロセッサエレメントグループのより詳細な構成を示すブロック図である。図３は、図１に示されたＳＩＭＤ型マイクロプロセッサの要部構成図である。図４は、図３に示されたＲ３１レジスタにアドレス設定値を記載した説明図である。図５は、図３に示されたＳＩＭＤ型マイクロプロセッサのＰＥ−ＲＡＭからのデータ読み出し動作を示したタイミングチャートである。図６は、図３に示されたＳＩＭＤ型マイクロプロセッサのＰＥ−ＲＡＭからのデータ読み出し動作を示したフローチャートである。
【００１７】
図１に本発明の第１の実施形態にかかるプロセッサシステム１を示す。プロセッサシステム１は、本発明の第１の実施形態にかかるＳＩＭＤ型マイクロプロセッサ２と、メモリコントローラ１０と、メモリ１２と、を備えている。
【００１８】
ＳＩＭＤ型マイクロプロセッサ２は、グローバルプロセッサ４と、プロセッサエレメントグループ６と、外部インタフェース８と、ＤＭＡ装置２２と、を備えている。
【００１９】
グローバルプロセッサ（ＧＰ）４は、所謂ＳＩＳＤ（Single Instruction Stream, Single Data Stream）タイプのプロセッサであり、プログラムＲＡＭとデータＲＡＭを内蔵し、プログラムを解読し各種制御信号を生成する。この制御信号は、内蔵する各種ブロックの制御以外にも、後述するレジスタファイル１４、演算アレイ１６、メモリコントローラ１０およびＤＭＡ装置２２に供給される。また、ＧＰ４で実行される命令であるＧＰ命令実行時は、内蔵する汎用レジスタ、ＡＬＵ（算術論理演算器）等を使用して各種演算処理、プログラム制御処理を行う。
【００２０】
プロセッサエレメントグループ６は、レジスタファイル１４と、演算アレイ１６と、ＰＥ−ＲＡＭ２０と、を備えている。
【００２１】
レジスタファイル１４は、プロセッサエレメント（ＰＥ）命令で処理されるデータを保持するレジスタ群（ファイル）である。つまり、各ＰＥ（図２参照）のレジスタ部分の集合体である。ＰＥ命令は、ＳＩＭＤ（Single Instruction Stream, Multiple Data Stream）タイプの命令であり、レジスタファイル１４に保持されている複数のデータに対して、同時に同じ処理を行う命令である。このレジスタファイル１４からのデータの読み出し／書き込みの制御は、ＧＰ４からの制御によって行われる。読み出されたデータは、後述する演算アレイ１６に送られ、演算アレイ１６での演算処理後にレジスタファイル１４に書き込まれる。
【００２２】
また、レジスタファイル１４は、外部インタフェース８を介してＳＩＭＤ型マイクロプロセッサ２外部のメモリコントローラ１０からのアクセスが可能であり、ＧＰ４の制御とは別に外部から特定のレジスタに対する読み出し／書き込みが行われる。さらに、レジスタファイル１４の一部のレジスタは、後述するＤＭＡ装置２２からの制御により、ＰＥ−ＲＡＭ２０から読み出されたデータが書き込まれる。
【００２３】
演算アレイ１６は、ＰＥ命令の演算処理が行われるブロックである。つまり、各ＰＥ（図２参照）の（ＡＬＵを含む）演算部の集合体である。処理の制御はすべてＧＰ４から行われる。
【００２４】
外部インタフェース８は、レジスタファイル１４とメモリコントローラ１０との間のデータや制御信号等の入出力のインタフェースを行う。
【００２５】
メモリコントローラ１０は、外部ポート１８にクロックとアドレス、リード／ライト制御信号を出力し、シングルポートメモリ１２にクロックとアドレス、リード／ライト制御信号を出力することで、任意のＰＥのレジスタとシングルポートメモリ１２との間で、データ転送が行われる。処理の制御はすべてＧＰ４から行われる。
【００２６】
図２は、ＳＩＭＤ型マイクロプロセッサ２の特にプロセッサエレメントグループ６のより詳細な構成を示すブロック図である。
【００２７】
ＧＰ４には、ＧＰ４のプログラム格納用のプログラムＲＡＭ２３と演算データ格納用のデータＲＡＭ２４を備えている。更に、プログラムのアドレスを保持するプログラムカウンタ（ＰＣ）２５、演算処理のデータ格納のための汎用レジスタであるＧ０〜Ｇ３レジスタ（２６、２８、３０、３２）、レジスタ退避、復帰時に退避先データＲＡＭのアドレスを保持しているスタックポインタ（ＳＰ）３４、サブルーチンコール時にコール元のアドレスを保持するリンクレジスタ（ＬＳ）３６、同じく割り込み（ＩＲＱ）時とマスク不可割り込み（ＮＭＩ）時の分岐元アドレスを保持するＬＩレジスタ３８、ＬＮレジスタ４０、プロセッサの状態を保持しているプロセッサステータスレジスタ（Ｐ）４２を備えている。
【００２８】
これらのレジスタと、図示していない命令デコーダ、ＡＬＵ、メモリ制御回路、割り込み制御回路、外部インタフェース制御回路、及びＧＰ演算制御回路を使用してＧＰ命令の実行が行われる。また、ＰＥ命令実行時は命令デコーダ、図示していないレジスタファイル制御回路、ＰＥ演算制御回路を使用して、レジスタファイル１４の制御と演算アレイ１６の制御を行う。
【００２９】
次に、レジスタファイル１４には、１つのＰＥ単位に８ビットのレジスタ５０が３２本内蔵されており、２５６ＰＥ分の組がアレイ構成になっている（一つのＰＥは、符号４４で示される一点鎖線の枠内に相当する部位であり、レジスタ４６と演算部４８とからなる）。レジスタ５０は、ＰＥ毎にレジスタＲ０、レジスタＲ１、レジスタＲ２、…、Ｒ３１レジスタと３２本が備えられている。夫々のレジスタ５０は、演算部４８に対して１つの読み出しポートと１つの書き込みポートを備えており、８ビットのリード／ライト兼用のバスで演算部４８からアクセスされる。３２本のレジスタ５０の内、２４本は外部インタフェース８を介してプロセッサ外部からアクセス可能であり、外部からクロックとアドレス、リード／ライト制御信号が入力されて指定されたレジスタ５０が読み書きされる。即ち、ＰＥ４４は、所定のアドレスによってリードまたはライトアクセス可能な複数のレジスタを備えている。
【００３０】
レジスタ５０の外部からのアクセスでは、１つの外部ポートで各ＰＥの１つのレジスタ５０がアクセス可能であり、外部から入力されたアドレスでＰＥの番号（０〜２５５）が指定される（ＰＥには、図２の左側から順に０〜２５５の番号がＰＥ番号として付されている。ＰＥ番号はＰＥアドレスともいう。）。したがって、レジスタアクセスのための外部ポートは、全部で２４組搭載されている。
【００３１】
演算部４８は、７対１のマルチプレクサ５８と、シフト拡張回路（シフタ）６０と、２対１のマルチプレクサ（ＭＰＸ）６１と、１６ビットＡＬＵ５２と、Ａレジスタ５４と、及びＦレジスタ５６と、を備えている。
【００３２】
７対１のマルチプレクサ５８は、レジスタ５０と演算部４８との接続部分に設けられており、ＰＥ並列方向で前方（ＰＥ番号の小さい方）に１、２、３つ離れたレジスタ５０のデータと、後方（ＰＥ番号の大きい方）に１、２、３つ離れたレジスタ５０のデータと、中央の（即ち、同一ＰＥの）レジスタ５０のデータを演算対象として選択できるように設定されている。また、レジスタ５０の８ビットのデータは、シフト拡張回路６０により任意ビット分左シフトされてＡＬＵ５２に入力することができる。
【００３３】
１６ビットＡＬＵ５２は、ＰＥ命令による演算では、レジスタ５０から読み出されたデータ、ＧＰ４から与えられたデータ（２対１のマルチプレクサ６１の出力）、若しくはＦレジスタ５６から読み出されたデータを１６ビットＡＬＵ５２の片側の入力とし、もう片側にはＡレジスタ５４の内容を入力として、結果をＡレジスタ５４に格納する。したがって、Ａレジスタ５４と、Ｒ０〜Ｒ３１レジスタもしくはＧＰ４から与えられたデータとの演算が行われることになる。なお、Ｆレジスタ５６はテンポラリレジスタとも呼ばれ、Ａレジスタ５４に格納されている演算結果の退避などに用いられるレジスタであり、Ｆレジスタ５６の結果を１６ビットＡＬＵ５２による演算に使用することも可能である。さらに、図示していない８ビットの条件レジスタ（Ｔレジスタともいう）により、ＰＥ４４ごとに演算実行の無効／有効の制御を可能とし、特定のＰＥ４４だけを演算対象として選択できる。
【００３４】
ＰＥ−ＲＡＭ２０は、演算処理途中のデータなどを格納するためのワークメモリであり、図３に示すように、レジスタファイル１４（レジスタ４６）に保持されているデータを一度に読み出しまたは書き込むことができる。つまり、ＰＥ−ＲＡＭ２０は全ＰＥ分のデータビット幅（８ビット×２５６）となっている。また、アドレスや読み出しまたは書き込みの制御はＤＭＡ装置２２から行われる。ＤＭＡ装置２２から入力されるアドレス等の制御信号はアドレスデコーダ２２ａに入力され、指定されたアドレスのデータが読み出しまたは書き込まれる。即ち、ＰＥ−ＲＡＭ２０は、ＰＥ４４とのみデータの入出力が可能かつ、少なくとも２以上のＰＥ４４が同時にアクセス可能なデータビット幅を有し、１つのアドレスで複数（本実施形態では全部）のＰＥ４４分のデータが読み出される。
【００３５】
ＤＭＡ装置２２は、カウンタ２２ａと、ＦＦ２２ｂと、を備えている。ＤＭＡ装置２２は、ＧＰ４からのＤＭＡＳｔａｒｔ信号によりＰＥ−ＲＡＭ２０へのアクセスを行う。ＰＥ−ＲＡＭ２０と、ＧＰ４およびＤＭＡ装置２２間にはマルチプレクサ（ＭＰＸ）２２ｃ、２２ｄ、２２ｅが設けられている。マルチプレクサ２２ｃはＰＥ−ＲＡＭ２０に対するアドレス（Ａ）をＧＰ４またはＤＭＡ装置２２のいずれかから出力されたものに切り替える。マルチプレクサ２２ｄはＰＥ−ＲＡＭ２０に対するリード／ライト制御信号（Ｒ／Ｗ）をＧＰ４またはＤＭＡ装置２２のいずれかから出力されたものに切り替える。マルチプレクサ２２ｅはＰＥ−ＲＡＭ２０に対するチップセレクト（ＣＳ）をＧＰ４またはＤＭＡ装置２２のいずれかから出力されたものに切り替える。
【００３６】
各マルチプレクサ（２２ｃ、２２ｄ、２２ｅ）の切り替えは、ＤＭＡ装置２２から出力されるＤＭＡ信号（図５参照）により切り替えられる。ＤＭＡ信号はＤＭＡＳｔａｒｔ信号が入力されるとＨｉレベル、データ転送が終了するとＬｏｗレベルになる信号であり、Ｈｉレベルの場合は、各マルチプレクサはＤＭＡ装置２２が出力する信号がＰＥ−ＲＡＭ２０に供給されるようになっている。
【００３７】
カウンタ２２ａは、詳細な動作は後述するが、ＰＥアドレスが設定され順次インクリメントする。つまり、初期値は“０”が設定され順次インクリメントして“２５５”までカウントする。ＦＦ２２ｂは、共通データバス５１から入力されるレジスタファイル１４のＲ３１レジスタから出力されたデータが格納されるレジスタ（フリップフロップ）であり、このＦＦ２２ｂに格納された後にＰＥ−ＲＡＭ２０のアドレスとしてマルチプレクサ２２ｃに出力される。
【００３８】
また、図３に示したように、各ＰＥ４４のレジスタファイル４６のＲ３１レジスタは、ＰＥ−ＲＡＭ２０から読み出されたデータが書き込み可能となっており、そのために、カウンタ２２ａおよびＤＭＡ装置２２内で生成されるＲ／Ｗ信号が出力されるＰＥ指定アドレス線５３およびＲ／Ｗ制御信号線５５が入力されてＲ３１レジスタの読み出しおよび書き込み制御を行うデコーダ５７が各ＰＥ４４のＲ３１レジスタに対応して設けられている。
【００３９】
図４は、図３に対して、ＰＥ番号０が付与されているＰＥ４４（ＰＥ（０）とする）のＲ３１レジスタにＡ０、ＰＥ（１）のＲ３１レジスタにＡ１、…、ＰＥ（２５５）のＲ３１レジスタにＡ２５５がそれぞれ格納されていることを示した図である。本実施形態では、予めこのように各Ｒ３１レジスタに異なる値をセットし、図５のタイミングチャートに示したように、その後ＧＰ４からのＤＭＡＳｔａｒｔ信号が入力されると、カウンタ２２ａから初期値“０”をＰＥ指定アドレス線５３に出力するとともに、Ｒ／Ｗ制御信号線５５をリードを示す値を出力する。すると、ＰＥ（０）のＲ３１レジスタの値（Ａ０）が共通データバス５１に読み出される。
【００４０】
次のサイクル（図５では２クロック後）で、カウンタ２２ａがインクリメントされ、ＰＥ（１）のＲ３１レジスタの値（Ａ１）が共通データバス５１に読み出されるとともに、ＦＦ２２ｂに前のサイクルで読み出したＰＥ（０）のＲ３１レジスタの値（Ａ０）が格納されてその値（Ａ０）がＰＥ−ＲＡＭ２０のアドレスとして与えられてＰＥ−ＲＡＭからはアドレスＡ０に格納されているデータが出力される。即ち、ＤＭＡ装置２２が、Ｒ３１レジスタに格納されている値をＰＥ４４ごとに順次読み出すととともに、該読み出された値をＰＥ−ＲＡＭ２０のアドレスとして出力するデータ転送手段として機能している。
【００４１】
ＰＥ−ＲＡＭ２０から出力されたアドレスＡ０のデータは、当該サイクルの最後でＰＥ（０）のＲ３１レジスタに書き込まれる。デコーダ５７は、内部にパイプラインレジスタを持ち、ＰＥ指定アドレス線５３から入力されたリードアドレスは、ＰＥ−ＲＡＭ２０からデータが読み出されるタイミング分遅延してライトイネーブル信号を生成し、Ｒ３１レジスタに供給する。このようにすることで、実質的にＰＥ指定アドレス線５３のみで、リード時とライト時の制御を行うことができる。なお、ライトイネーブル信号は、各ＰＥ４４のデコーダ５７で遅延させる方法以外に、ＰＥ（０）のみ遅延させて、ＰＥ（１）以降は、サイクル単位でＰＥ間をシフトさせるようにしてもよい。即ち、デコーダ５７が、ＰＥ−ＲＡＭ２０から読み出されたデータを、少なくとも該データのアドレスが読み出されたＰＥ４４のＲ３１レジスタに格納する制御を行う書き込み制御手段として機能している。
【００４２】
そして、上述したサイクルを繰り返すことで、Ｒ３１レジスタに格納されている各ＰＥ４４で独立したアドレス値Ａ０〜Ａ２５５の値をＰＥ（０）から順次読み出していき、ＰＥ−ＲＡＭ２０に格納されていたデータを順次Ｒ３１レジスタに書き戻すことが従来よりも短いサイクル数で出来る。従来は、このようなことをする場合、ＧＰ４による命令でＰＥ４４の指定、指定されたＰＥ４４のアドレスの設定、ＰＥ−ＲＡＭ２０からの読み出し、といったことを行う必要があり、多くのサイクルがかかっていいた。
【００４３】
上述した動作を図６のフローチャートにまとめる。まず、ＰＥ命令などを用いて各ＰＥ４４のＲ３１レジスタにアドレスを設定し（ステップＳ１）、ＧＰ４からＤＭＡＳｔａｒｔ信号が入力されるとＤＭＡ装置２２が動作を開始し（ステップＳ２）、ＰＥ指定アドレス線５３で指定したＰＥ４４のＲ３１レジスタからアドレス値を読み出して（ステップＳ３）、ＰＥ−ＲＡＭ２０へ出力し当該アドレスのデータを読み出して、対応するＰＥ４４のＲ３１レジスタに格納している（ステップＳ４）。
【００４４】
そして、カウンタ２２ａの値を判断し（ステップＳ５）、カウンタ２２ａの値が最後のＰＥ番号を示していた場合は終了し、最後でない場合はカウンタ２２ａをインクリメントして（ステップＳ６）次のＰＥ４４についてステップＳ３とＳ４を繰り返す。最後のＰＥ番号か否かは、例えばＤＭＡ装置２２内に予めＰＥ数を設定し、その設定値と比較することでＤＭＡ装置２２内の制御回路等（不図示）が判断すればよい。
【００４５】
本実施形態によれば、ＳＩＭＤ型マイクロプロセッサ２に、プロセッサエレメントグループ６のレジスタファイル１４とのみデータの入出力が行われるＰＥ−ＲＡＭ２０と、ＰＥ−ＲＡＭ２０とレジスタファイル１４とのデータ転送の制御を行うＤＭＡ装置２２を設け、ＤＭＡ装置２２で、各ＰＥ４４のＲ３１レジスタに格納されている独立したアドレス値をＰＥ番号順に順次読み出していき、ＰＥ−ＲＡＭ２０に格納されていたデータを順次Ｒ３１レジスタに書き戻すようにするために、少ない回路追加のみで回転処理などの各ＰＥ４４が異なったアドレスのデータを参照する処理を高速に行うことが可能となる。
【００４６】
また、ＧＰ４や各ＰＥ４４は、ＤＭＡ装置２２によるデータ転送中は、ＰＥ−ＲＡＭ２０が関わらない他の処理をすることができるために、ＳＩＭＤ型マイクロプロセッサ２の処理効率を向上させることができる。
【００４７】
（第２実施形態）
次に、本発明の第２の実施形態を図７乃至図１１を参照して説明する。なお、前述した第１の実施形態と同一部分には、同一符号を付して説明を省略する。図７は、本発明の第２の実施形態にかかるＳＩＭＤ型マイクロプロセッサの要部構成図である。図８は、図７に示されたデコーダの構成を示した構成図である。図９は、図８に示された書き込みデコーダのデコード条件を示した説明図である。図１０は、図７に示されたＳＩＭＤ型マイクロプロセッサのＲ３０レジスタに格納するアドレス設定値の例と、その例に対してデータ整形を施した後のデータを示した説明図である。図１１は、図７に示されたＳＩＭＤ型マイクロプロセッサのＰＥ−ＲＡＭからのデータ読み出し動作を示したタイミングチャートである。
【００４８】
図７に示したように、本実施形態では、ＤＭＡ装置２２の構成と、デコーダ５７の構成が第１の実施形態と異なる。また、本実施形態では、レジスタファイル１４のＲ３０レジスタにアドレス値を設定し、Ｒ３１レジスタにＰＥ−ＲＡＭ２０から読み出されたデータを格納する。
【００４９】
ＤＭＡ装置２２は、カウンタ２２ａに代えて加算器２２ｇが設けられている。加算器２２ｇはカウンタ２２ａのインクリメント機能に加えて、加算機能も備えた回路である。また、ＤＭＡ装置２２には、デコーダ２２ｆが設けられている。デコーダ２２ｆは、ＦＦ２２ｂに格納されたＲ３１レジスタから読み出された値に応じて加算器２２ｇへの演算制御信号（インクリメントまたは加算、加算値）を出力する。
【００５０】
本実施形態のデコーダ５７（５７´）は、図８に示すように、読み出し用デコーダ（Ｒｅａｄ−ＤＥＣ）５７ａと、書き込み用デコーダ（Ｗｒｉｔｅ−ＤＥＣ）５７ｂと、ＦＦ５７ｃと、ＡＮＤ回路５７ｄと、を備えている。
【００５１】
読み出し用デコーダ５７ａは、第１の実施形態と同様に、ＰＥ指定アドレス線５３（ＤＭＡ装置２２のＰＥＡ端子）から入力されるアドレス値に基づいて自ＰＥ番号を示している場合はＲｅａｄ用デコード信号（リードイネーブル信号）をアサートしてＲ３０レジスタに出力する。
【００５２】
書き込み用デコーダ５７ｂは、自ＰＥ番号がＰＥ指定アドレス線５３から入力される値以上である場合に真となり、それ以外は偽となる。図９に各ＰＥ４４ごとの条件を示す。図９の「＝＝」は左辺と右辺が等しいことを意味し、「＜＝」は右辺が左辺以上であることを意味している。つまり、自ＰＥ番号がＰＥ指定アドレス線５３から入力される値以上であるとの条件が成立した場合に出力がアクティブ（Ｈｉ）となる。
【００５３】
ＦＦ５７ｃは、書き込み用デコーダ５７ｂの出力を遅延されるためのパイプラインレジスタである。なお、図８では１段のように記載しているが、ＰＲ−ＲＡＭ２０からの読み出しタイミングに合わせて段数は適宜調整すればよい。
【００５４】
ＡＮＤ回路５７ｄは、ＦＦ５７ｃの出力と、Ｒ／Ｗ制御信号線５５と、ＦＦ２２ｂの最上位ビット（ＭＳＢ）との論理積演算をする回路である。なお、Ｒ／Ｗ制御信号線５５と、ＦＦ２２ｂの最上位ビットは、それぞれ論理レベルを反転した信号で演算をする。即ち、ＦＦ５７ｃがＨｉレベルで、Ｒ／Ｗ制御信号線５５がＬｏｗレベルで、ＦＦ２２ｂの最上位ビットがＬｏｗレベルの場合にＷｒｉｔｅ用デコード信号（ライトイネーブル信号）がアサートされＲ３１レジスタに出力される。
【００５５】
本実施形態では、Ｒ３０レジスタに格納したアドレスのうち読み出す順序で同じアドレスが連続する場合は、一度のアクセスで同じアドレスのＰＥ４４のＲ３１レジスタにデータを書き込むようにしている。例えば、図１０（ａ）に示すようなアドレス値が各ＰＥ４４のＲ３０レジスタに格納されていた場合、まず以下の１０命令をプロセッサエレメントグループ６に対して実行する。即ち、Ｒ３０レジスタに格納されているアドレスのうち、同じアドレスが連続する場合は、当該アドレスが最初にＰＥ−ＲＡＭのアドレスとして出力された際に同じアドレスを示しているＰＥ４４のＲ３１レジスタに書き込むように制御し、以降の同じ値に対応するＰＥ４４への書き込みは規制するように制御している。
【００５６】
（１）Ｒ３０レジスタの値がＰＥ番号が１つ前のＰＥ４４と同じ値という条件が真ならば、テンポラリレジスタ（Ｆレジスタ５６）の値を“８１ｈ”に設定する。
（２）（１）の条件が真で、かつＰＥ番号が１つ後ろのＰＥとＲ３０レジスタの値が等しければ、テンポラリレジスタの値を“１”加算する。
（３）（１）の条件が真で、かつＰＥ番号が２つ後ろのＰＥとＲ３０レジスタの値が等しければ、テンポラリレジスタの値を“１”加算する。
（４）（１）の条件が真で、かつＰＥ番号が３つ後ろのＰＥとＲ３０レジスタの値が等しければ、テンポラリレジスタの値を“１”加算する。
（５）（１）の条件が真で、かつＰＥ番号が４つ後ろのＰＥとＲ３０レジスタの値が等しければ、テンポラリレジスタの値を“１”加算する。
（６）（１）の条件が真で、かつＰＥ番号が５つ後ろのＰＥとＲ３０レジスタの値が等しければ、テンポラリレジスタの値を“１”加算する。
（７）（１）の条件が真で、かつＰＥ番号が６つ後ろのＰＥとＲ３０レジスタの値が等しければ、テンポラリレジスタの値を“１”加算する。
（８）（１）の条件が真で、かつＰＥ番号が７つ後ろのＰＥとＲ３０レジスタの値が等しければ、テンポラリレジスタの値を“１”加算する。
（９）（１）の条件が偽ならば、元データの値をテンポラリレジスタに設定する。
（１０）テンポラリレジスタの値をＲ３０レジスタに転送する。
【００５７】
上記した１０個の命令は順次ＰＥ命令として各ＰＥ４４で実行することにより、図１０（ａ）のデータが、図１０（ｂ）に示すようなデータに整形される。図１０（ｂ）のデータ整形欄には、ＭＳＢ，元データ値または命令によりテンポラリレジスタに積算された値の順に記載されている。上述するように動作させることで、本実施形態では、レジスタ８ビットのうち、ＭＳＢをアドレスか連続数かを識別するコード、以下の７ビットをアドレスまたは連続数が格納される領域としている。
【００５８】
例えば、ＰＥ（０）の場合は、１０命令の結果（１）〜（８）の命令の条件が偽で、（９）と（１０）の命令の条件が真となりＲ３０レジスタには元データの値であるＡ０が設定される（ＭＳＢが“０”で、残り７ビットが“Ａ０”）。ＰＥ（１）の場合は、１０命令の結果（２）〜（９）の命令の条件が偽で、（１）と（１０）の命令の条件が真となりＲ３０レジスタには“８１ｈ”が設定される（ＭＳＢが“１”で、残り７ビットが“１”）。つまり、ＰＥ（０）はアドレス、ＰＥ（１）は連続数が格納される。なお、上記では１０命令であるが、参照する範囲は、１命令でＰＥ４４が参照可能な範囲である必要があるので、プロセッサエレメントグループ６の構成により命令数は変動する場合がある。
【００５９】
図１１に本実施形態の動作のタイミングチャートを示す。Ｒ３０レジスタには、上記１０命令によりデータ整形後の値が格納されている。その後ＧＰ４からのＤＭＡＳｔａｒｔ信号が入力されると、加算器２２ｇから初期値“０”をＰＥ指定アドレス線５３に出力するとともに、Ｒ／Ｗ制御信号線５５をリードを示す値を出力する。すると、ＰＥ（０）のＲ３１レジスタの値（０，Ａ０）が共通データバス５１に読み出される（サイクルＴ１）。
【００６０】
次のサイクルＴ２（図１１では２クロック後）では、加算器２２ｇがインクリメントされＰＥ（１）のＲ３０レジスタの値（１，１）が共通データバス５１に読み出されるとともに、ＦＦ２２ｂに前のサイクルで読み出したＰＥ（０）のＲ３０レジスタの値（０，Ａ０）が格納されてその値（０，Ａ０）がＰＥ−ＲＡＭ２０のアドレスとして与えられてＰＥ−ＲＡＭ２０からはアドレスＡ０に格納されているデータが出力される。なお、本サイクルで、Ｒ／Ｗ制御信号線５５はライトを示す値に切り替える。
【００６１】
ＰＥ−ＲＡＭ２０から出力されたアドレスＡ０のデータは、当該サイクルの最後でＰＥ（０）〜（２５５）のＲ３１レジスタに書き込まれる。書き込みデコーダ５７ｂは、上述したように、自ＰＥ番号がＰＥ指定アドレス線５３から入力される値以上である場合に真となるため、ＰＥ指定アドレス線５３が“０”の場合は、ＰＥ（０）〜（２５５）の書き込みデコーダ５７ｂで前記条件が成立する。したがって、ＰＥ（０）〜（２５５）のＲ３１レジスタに対してライトイネーブル信号がアサートされ書込みが行われる。
【００６２】
次のサイクルＴ３では、加算器２２ｇがインクリメントされ、ＰＥ（２）のＲ３０レジスタの値（０，Ａ２）が共通データバス５１に読み出されるとともに、ＦＦ２２ｂに前のサイクルで読み出したＰＥ（１）のＲ３０レジスタの値（１，１）が格納される。この値（１，１）は、ＰＥ−ＲＡＭ２０にはアドレスとして与えられるものの、図８に示したデコーダ５７´の構成からＦＦ２２ｂのＭＳＢが“１”の場合はＡＮＤ回路５７ｄによってライトイネーブル信号がアサートされないため、ＰＥ−ＲＡＭ２０読み出されたデータはいずれのＰＥ４４のＲ３１レジスタにも書き込まれない。
【００６３】
次のサイクルＴ４では、加算器２２ｇがインクリメントされ、ＰＥ（３）のＲ３０レジスタの値（０，Ａ３）が共通データバス５１に読み出されるとともに、ＦＦ２２ｂに前のサイクルで読み出したＰＥ（２）のＲ３０レジスタの値（０，Ａ２）が格納されてその値（Ａ２）がＰＥ−ＲＡＭ２０のアドレスとして与えられてＰＥ−ＲＡＭ２０からはアドレスＡ２のデータが出力される。このときも、アドレスＡ０のデータを書き込んだ際と同様に、当該サイクルの最後でＰＥ（２）〜（２５５）のＲ３１レジスタにＰＥ−ＲＡＭ２０から読み出されたデータが書き込まれる。
【００６４】
次のサイクルＴ５では、加算器２２ｇがインクリメントされＰＥ（４）のＲ３０レジスタの値（１，２）が共通データバス５１に読み出されるとともに、ＦＦ２２ｂに前のサイクルで読み出したＰＥ（３）のＲ３０レジスタの値（０，Ａ３）が格納されてその値（０，Ａ３）がＰＥ−ＲＡＭ２０のアドレスとして与えられてＰＥ−ＲＡＭ２０からはアドレスＡ３のデータが出力される。このときも、アドレスＡ０やＡ２のデータを書き込んだ際と同様に、当該サイクルの最後でＰＥ（３）〜（２５５）のＲ３１レジスタにＰＥ−ＲＡＭ２０から読み出されたデータが書き込まれる。
【００６５】
次のサイクルＴ６では、加算器２２ｇがインクリメントされ、ＰＥ（５）のＲ３０レジスタの値（１，１）が共通データバス５１に読み出されるとともに、ＦＦ２２ｂに前のサイクルで読み出したＰＥ（４）のＲ３０レジスタの値（１，２）が格納される。この値（１，２）は、サイクルＴ３と同様に、ＰＥ−ＲＡＭ２０にはアドレスとして与えられるものの、図８に示したデコーダ５７´からライトイネーブル信号がアサートされないため、ＰＥ−ＲＡＭ２０読み出されたデータはいずれのＰＥ４４のＲ３１レジスタにも書き込まれない。次のサイクルＴ７も同様である。
【００６６】
次のサイクルＴ８では、加算器２２ｇがインクリメントされＰＥ（７）のＲ３０レジスタの値（１，３）が共通データバス５１に読み出されるとともに、ＦＦ２２ｂに前のサイクルで読み出したＰＥ（７）のＲ３０レジスタの値（０，Ａ６）が格納されてその値（０，Ａ６）がＰＥ−ＲＡＭ２０のアドレスとして与えられてＰＥ−ＲＡＭ２０からはアドレスＡ６のデータが出力される。このときも、アドレスＡ０やＡ２やＡ３のデータを書き込んだ際と同様に、当該サイクルの最後でＰＥ（６）〜（２５５）のＲ３１レジスタにＰＥ−ＲＡＭ２０から読み出されたデータが書き込まれる。
【００６７】
次のサイクルＴ９では、加算器２２ｇがインクリメントされ、ＰＥ（８）のＲ３０レジスタの値（１，２）が共通データバス５１に読み出されるとともに、ＦＦ２２ｂに前のサイクルで読み出したＰＥ（７）のＲ３０レジスタの値（１，３）が格納される。この値（１，３）は、サイクルＴ３やＴ６、Ｔ７と同様に、ＰＥ−ＲＡＭ２０にはアドレスとして与えられるものの、図８に示したデコーダ５７´からライトイネーブル信号がアサートされないため、ＰＥ−ＲＡＭ２０読み出されたデータはいずれのＰＥ４４のＲ３１レジスタにも書き込まれない。
【００６８】
また、サイクルＴ９では、ＦＦ２２ｂのＭＳＢが“１”でかつ該ＦＦ２２ｂ下位７ビットの値が３以上であるので、下位７ビットの値から“１”を減じたものを加算器２２ｇにおいて加算している。つまり、下位７ビットの値である“３”から“１”を減じた“２”を加算器２２ｇに加算するようにデコーダ２２ｆが制御する。加算器２２ｇは、前記したＦＦ２２ｂのＭＳＢが“１”でかつ該ＦＦ２２ｂ下位７ビットの値が３以上との条件が成立する場合以外はインクリメント動作を行う。
【００６９】
次のサイクルＴ１０では、加算器２２ｇには前のサイクル演算された値が格納されるためＰＥ（１０）の値（０，Ａ１０）が共通データバス５１に読み出される。つまり、サイクルＴ９からサイクルＴ１０に移行する際にＰＥ番号が１つ飛ばされている（スキップされている）。この飛ばされたＰＥ（９）は、図１０（ａ）に示されているように、アドレスが“Ａ６”であり、アドレスＡ６から読み出した値はサイクルＴ８ですでに当該ＰＥ（９）のＲ３１レジスタにも書き込まれているので飛ばしても問題は無い。即ち、Ｒ３０レジスタに格納されているアドレスのうち、同じアドレスが連続する数に応じて、Ｒ３０レジスタに格納されているアドレスを読み出すＰＥ番号をスキップさせている。
【００７０】
上述したように動作させることで、ＰＥ（０）、（１）のＲ３１レジスタにはアドレスＡ０のデータが書き込まれ、ＰＥ（２）のＲ３１レジスタにはアドレスＡ２のデータが書き込まれ、ＰＥ（３）〜（５）のＲ３１レジスタにはアドレスＡ３のデータが書き込まれ、ＰＥ（６）〜（９）のＲ３１レジスタにはアドレスＡ６のデータが書き込まれて、図１０（ａ）に示したとおりのアドレスのデータが各ＰＥ４４に書き込まれる。
【００７１】
本実施形態によれば、まず、予めＲ３０レジスタに格納されているアドレス値に対して、データ整形を行って、アドレス値そのものと、同じアドレスが連続することを示すデータと、のいずれかが格納されるようにし、アドレス値の場合は、自ＰＥ番号がＤＭＡ装置２２から入力されているＰＥ番号以上との条件が成立するＰＥ４４のみＰＥ−ＲＡＭ２０から読み出されたデータがＲ３１レジスタに書き込まれるようにし、同じアドレスが連続することを示すデータの場合は、Ｒ３１レジスタへの書き込みを行わないようにしているので、同じアドレスが連続する場合に一度でデータの書込みを終了させることができる。
【００７２】
また、同じアドレスが連続することを示すデータには、連続数を含み、その連続数が３以上の場合は、その連続数から１を減じた値をＰＥ番号を指定する加算器に加算しているので、同じアドレスが連続することが長く続く場合は、ＰＥ番号を飛ばす（スキップする）ことができ、データ転送にかかるサイクル数を削減することができる。特に、微小角回転のような画像処理では同一のアドレスにアクセスするＰＥ数が比較的多いため本実施形態の構成は当該画像処理のサイクル数の削減に有効である。
【００７３】
（第３実施形態）
次に、本発明の第３の実施形態を図１２を参照して説明する。なお、前述した第１、第２の実施形態と同一部分には、同一符号を付して説明を省略する。図１２は、本発明の第３の実施形態にかかるＳＩＭＤ型マイクロプロセッサの要部構成図である。
【００７４】
本実施形態では、第２の実施形態に対して、ＤＭＡ装置２２に、スケール設定レジスタ２２ｈと、オフセット設定レジスタ２２ｉと、乗算器２２ｊと、加算器２２ｋと、ＦＦ２２ｍと、が追加されている点が異なる。
【００７５】
スケール設定レジスタ２２ｈは、Ｒ３０レジスタから読み出されたアドレス値に対するスケール値（乗数）を設定するレジスタである。オフセット設定レジスタ２２ｉは、Ｒ３０レジスタから読み出されたアドレス値に対するオフセット値（加算数）を設定するレジスタである。なお、スケール設定レジスタ２２ｈと、オフセット設定レジスタ２２ｉは、ＧＰ４で実行される命令や、図示しないデータバス等によって値が設定可能となっている。
【００７６】
乗算器２２ｊは、ＦＦ２２ｂに格納された値とスケール設定レジスタ２２ｈに設定されたスケール値との乗算を行う。加算器２２ｋは、乗算器２２ｊの出力に対して、オフセット設定レジスタ２２ｉに設定されたオフセット値を加算する。
【００７７】
ＦＦ２２ｍは、加算器２２ｊの出力が格納されるレジスタ（フリップフロップ）であり、ＦＦ２２ｍの出力がＰＥ−ＲＡＭ２０のアドレスとして、ＤＭＡ装置２２から出力される。なお、乗算器２２ｊ、加算器２２ｋを経て出力されるデータのビット幅はＰＥ−ＲＡＭ２０に与えるアドレスのビット幅と同じになっているのはいうまでもない。
【００７８】
本実施形態によれば、スケール設定レジスタ２２ｈにスケールを設定でき、オフセット設定レジスタ２２ｉにオフセット値を設定できるようにしたので、Ｒ３０レジスタに設定するアドレスのビット幅が、例えば、７ビットであったとしても、それ以上範囲の領域のアドレスを指定することが可能となる。また、例えば、Ｒ３０レジスタから読み出した値を２倍した値をアドレスとするなど、ＰＥ−ＲＡＭ２０からの多様なデータの読み出し方（データの格納方法）が可能となる。即ち、少ないビット幅のレジスタでもＰＥ−ＲＡＭ２０のアドレスとして実効アドレスのビット幅を増やすことが可能となる。
【００７９】
なお、上述した第３の実施形態において、スケールを設定するレジスタ２２ｈとオフセットを設定するレジスタ２２ｉは、いずれか一方のみ設けてもよい。勿論その場合は、乗算器２２ｊと加算器２２ｋも対応する回路のみが設けられる。
【００８０】
なお、本発明は上記実施形態に限定されるものではない。即ち、本発明の骨子を逸脱しない範囲で種々変形して実施することができる。
【符号の説明】
【００８１】
１          プロセッサシステム
２          ＳＩＭＤ型マイクロプロセッサ
８          外部インタフェース
１２        メモリ（外部メモリ）
２０        ＰＥ−ＲＡＭ（メモリ）
２２        ＤＭＡ装置（データ転送手段）
２２ｈ      スケール設定レジスタ（乗数を設定するレジスタ）
２２ｉ      オフセット設定レジスタ（オフセット値を設定するレジスタ）
Ｒ３０、Ｒ３１     レジスタ（所定のアドレスによってリードまたはライトアクセス可能な複数のレジスタ）
【先行技術文献】
【特許文献】
【００８２】
【特許文献１】特許４５０４８６１号公報
【特許文献２】特開平０３−２１１６８８号公報
【特許文献３】特開２００５−２６９５０２号公報
【特許文献４】特許４２９４１９０号公報
【図１】
2013161325.tif 000003
【図２】
2013161325.tif 000004
【図３】
2013161325.tif 000005
【図４】
2013161325.tif 000006
【図５】
2013161325.tif 000007
【図６】
2013161325.tif 000008
【図７】
2013161325.tif 000009
【図８】
2013161325.tif 000010
【図９】
2013161325.tif 000011
【図１０】
2013161325.tif 000012
【図１１】
2013161325.tif 000013
【図１２】
2013161325.tif 000014