説明

データ処理装置およびデータ処理方法

【課題】データの転送効率を維持した状態で、データ転送に係る消費電力を低減することができるデータ処理装置およびデータ処理方法を提供する。
【解決手段】データバスのバス幅を第1のビット範囲と第2のビット範囲とに分割し、同じ種類の情報を持つ入力データの同一ビットがデータバスの同一ビットで連続して転送されるように、第1のビット範囲用の第1のデータを生成する第1のデータ生成部と、第2のビット範囲用の第2のデータを生成する第2のデータ生成部と、第1のデータと第2のデータとを結合した変換データを生成するデータ結合部と、を具備し、順次入力された複数の入力データを、予め定められたビット数のデータバスと同じビット数の変換データに変換して順次転送する際に、1つの変換データを1つの転送単位とし、予め定められた数の転送単位を1つの変換単位として、入力データを変換単位毎に配置するデータ変換部、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ処理装置およびデータ処理方法に関する。
【背景技術】
【0002】
静止画用カメラ、動画用カメラ、医療用内視鏡カメラ、または産業用内視鏡カメラなどの撮像装置では、撮像装置の画素数や速度の向上に伴って、膨大な画素のデータ(以下、「画素データ」という)が含まれる画像データを処理している。このような撮像装置においては、撮像装置内の各処理ブロックが撮影によって得られた画像データを処理する際に、データを一時的に記憶するメモリが利用されている。メモリには、各処理段階の画像データが一時記憶される。
【0003】
図14は、従来の撮像装置の概略構成を示したブロック図である。例えば、図14に示した撮像装置における撮影動作では、以下のような手順で画像データの処理が行われている。
(手順1):まず、撮像処理部が、例えば、CCD(Charge Coupled Device:電荷結合素子)型の固体撮像素子によって得られた画像データを、出力DMA(Direct Memory Access)部を介してメモリに転送して一時記憶する。
(手順2):続いて、画像処理部が、メモリに一時記憶している画像データを、入力DMA部を介して読み出す。そして、画像処理部は、読み出した画像データに対して記録用の画像処理や、表示用の画像処理を行う。その後、画像処理した後の画像データを、出力DMA部を介してメモリに転送して一時記憶する。
(手順3):続いて、表示処理部が、表示用の画像処理がされた画像データを、入力DMA部を介して読み出し、表示デバイスに表示させる。
【0004】
このように、撮像装置では、前段の処理ブロックが、画像データをメモリに一時記憶する。そして、後段の処理ブロックが、メモリに記録されている画像データを読み出して、次の処理を行う。このように、撮像装置内の各処理ブロックが、メモリを介して処理対象の画像データの受け渡しを行うことによって、撮像装置の全体の処理を順次行っている。
【0005】
近年、静止画用カメラ、動画用カメラなどの撮像装置においては、長い時間連続して使用できることが望まれており、撮像装置内の電気回路の消費電力を低減させる技術が必要とされている。撮像装置の消費電力を低減させるための1つの方法として、各処理ブロック(電気回路)とメモリとの間での画像データの転送速度を高速にする方法が挙げられる。画像データの転送速度の高速化は、例えば、撮像装置が動作するクロックの周波数を高くしたり、各処理ブロックとメモリ間の画像データの転送期間を短縮させたりすることによって実現することができる。これらの方法は、画像データの転送速度を高速にすることによって、画像データの転送に係る消費電力を低減させるものである。
【0006】
処理ブロックとメモリ間の画像データの転送期間を短縮させるための技術として、特許文献1に開示されているようなパッキングという技術が知られている。特許文献1で開示されたパッキング技術は、画像データ内の各画素データをメモリに転送する際に使用されるデータバスのバス幅を拡張し、隣接する複数の画素データをデータバスに配置(パッキング)することによって、複数の画素データを一度に転送するという技術である。この技術によって、全ての画素データを転送するために要するデータ転送の回数を、画素データを1画素毎に転送する以前のデータ転送に比べて少なくすることができ、画像データのデータ転送に係る期間を短縮することができる。例えば、図15に示したような、16行×16列のベイヤー配列のCCDから得られた画素データをメモリに転送する場合、特許文献1で開示されたパッキング技術では、4画素分の画素データを一度に転送する単位とすることによって、画像データの転送期間を1/4に短縮することができる。これにより、画素データを1画素ずつメモリに転送する場合に比べて、撮像装置内の電気回路の消費電力を低減させることができる。
【0007】
また、さらに画像データの転送期間を短縮する技術として、DMAのバースト転送を利用したパッキング方法が考えられる。これは、予め定められた一定のサイクル数でメモリにアクセスする単位である1バーストを、画素データをパッキングする単位として考える方法である。図16に画素データのパッキングの一例を示す。図16(a)は、特許文献1で開示されたパッキング方法で図15に示した画素データをパッキングした場合の一例を示し、図16(b)は、バーストの単位で図15に示した画素データをパッキングした場合の一例を示している。なお、図16では、画素データをメモリに転送する際に使用するデータバス(以下、「メモリバス」という)のバス幅(以下、「メモリバス幅」という)を32bitとし、バースト転送における1サイクル分のメモリアクセス(以下、「1転送」という)を4回、すなわち、4転送で1回のバースト転送を行う場合の例を示している。そして、図16(a)および図16(b)では、それぞれ上から順に、1画素の画素データの分解能、すなわち、画素データのビット数が、9bit、10bit、12bit、および14bitである場合の一例を示している。
【0008】
図16からわかるように、図16(a)に示した特許文献1で開示されたパッキング方法では、1転送あたり2画素分の画素データがメモリバスに配置され、1バーストあたり8画素分の画素データをメモリに転送することができる。これに対して図16(b)に示したバースト単位でのパッキング方法では、それぞれ、14画素分、12画素分、10画素分、および9画素分の画素データをメモリに転送することができる。これは、特許文献1で開示されたパッキング方法は、メモリバス幅、すなわち、1転送の単位で画素データを配置(パッキング)するため、配置する複数の画素データのビット数の合計がメモリバス幅を超えないようにする必要がある。このため、特許文献1で開示されたパッキング方法では、メモリバス幅内に画素データを割り当てることができないビット(以下、「未使用ビット」という)が多く存在してしまう。これに対し、バースト単位でのパッキング方法は、1バーストの単位で画素データを配置(パッキング)するため、図16(b)のように、配置する複数の画素データのビット数の合計がメモリバス幅を超えてしまう場合でも、1バーストを超えなければ次の転送に画素データを配置(パッキング)することができる。すなわち、バースト単位でのパッキング方法では、メモリバス幅が画素データの分解能の整数倍ではない場合においても、1転送の単位を跨いで画素データを配置(マッピング)することができるため、未使用ビットを少なくすることができるのである。このことにより、バースト単位でのパッキング方法は、特許文献1で開示されたパッキング方法よりも、同じ時間で多くの画素データをメモリに転送する、すなわち、画像データの転送期間を短縮することができ、撮像装置内の電気回路の消費電力を、さらに低減させることができる。
【先行技術文献】
【特許文献】
【0009】
【特許文献1】特開2007−312358号公報
【発明の概要】
【発明が解決しようとする課題】
【0010】
一般的に、データの変化(データの“0”→“1”、もしくは“1”→“0”の変化(反転))が少ない方が、消費電力が少ないことが知られている。このため、撮像装置内の各処理ブロック(電気回路)とメモリとの間のメモリバス上のデータの変化を少なくすることによって、撮像装置の消費電力を低減させることも考えられる。図17は、撮像装置内の処理ブロックとメモリとの間のデータバス(メモリバス)上のデータの変化と消費電力との関係を説明する図である。図17(a)は、図14に示した撮像装置における撮像処理部とメモリとの間のメモリバスのバス幅が32bitである場合の一例を示している。そして、図17(b−1)〜(b−3)では、メモリバス上のデータの変化を模式的に示している。図17の一例においては、メモリバス上のデータの変化がない図17(b−1)の場合が、最も消費電力が少なく、メモリバス上のデータの変化が最も多い図17(b−3)の場合が、最も消費電力が多くなる。
【0011】
このことから、撮像装置内の各処理ブロックとメモリ間のバースト転送において、連続する2転送間の画素データ(例えば、図16に示した各バースト転送の1転送目と2転送目との画素データ)の変化が多いと、画像データの転送に係る消費電力も多くなってしまうことがわかる。すなわち、メモリバス上の同一ビットが2転送間で変化している個数(ビット数)に比例して、画像データの転送に係る消費電力が変化する。
【0012】
一般的に、画像データは、隣接する画素間でデータの変化量が小さく、隣接する画素のそれぞれの画素データの同一のビットで比較すると、値が反転しているビットの方が、値が反転していないビットよりも少ないことが予想される。ここで、図16に示した、特許文献1で開示されたパッキング方法と、バースト単位でのパッキング方法とを比較すると、図18に示したように、同一色の画素データで同一のビットが揃っている、特許文献1で開示されたパッキング方法の方が、画像データの転送に係る消費電力が少ないと考えられる。なお、図18は、図16に示した特許文献1で開示されたパッキング方法と、バースト単位でのパッキング方法とにおいて、1画素の画素データのビット数が9bitである場合を示している。
【0013】
より具体的には、図18(a)に示した特許文献1で開示されたパッキング方法では、範囲Aに示したメモリバスの最下位ビットは、全て同一色の画素データの同一ビット(最下位ビット)である。これに対して、図18(b)に示したバースト単位でのパッキング方法では、範囲Bに示したメモリバスの最下位ビットは、全て異なる色の画素データの異なるビットである。このことから、バースト単位で画像データをパッキングすることによって、メモリバス上に配置される画素データのビットの位置が、連続する2転送間で異なってしまうと、メモリバス上の同一ビットの変化量が多くなり、画像データの転送に係る消費電力を増加させてしまうことがわかる。
【0014】
すなわち、図18(a)に示した特許文献1で開示されたパッキング方法は、画像データの転送に係る消費電力が少ないが、データの転送効率が低い。また、図18(b)に示したバースト単位でのパッキング方法は、データの転送効率はよいが、画像データの転送に係る消費電力が多い。
【0015】
このように、バースト単位での画素データのパッキングでは、より多くの画素データをメモリバスに配置することによって、結果的に画素データの転送期間を短縮し、画像データの転送に係る消費電力を低減させることができるが、メモリバス上に配置される画素データのビットの位置が、連続する2転送間で異なっているため、画像データの転送に係る消費電力の低減効果を十分に得ることができていない、という問題がある。
【0016】
また、特許文献1で開示されたパッキング方法においては、例えば、図19に示したように、画素データをパッキングする1転送内に、3画素分の画素データを配置(パッキング)することができる。しかし、この場合には、例えば、範囲Cに示したメモリバスの最下位ビットが、画素データの同一ビット(最下位ビット)ではあるが、異なる色の画素データになってしまう。画素データは、色が異なるとその値が大きく異なる可能性が高く、特許文献1で開示されたパッキング方法でも、1転送内の画素データの配置によっては、画像データの転送に係る消費電力を低減できていないことになってしまう。
【0017】
本発明は、上記の課題認識に基づいてなされたものであり、データの転送効率を維持した状態で、データ転送に係る消費電力を低減することができるデータ処理装置およびデータ処理方法を提供することを目的としている。
【課題を解決するための手段】
【0018】
上記の課題を解決するため、本発明のデータ処理装置は、順次入力された複数の入力データを、予め定められたビット数のデータバスと同じビット数の変換データに変換して順次転送する際に、1つの前記変換データを1つの転送単位とし、予め定められた数の前記転送単位を1つの変換単位として、前記入力データを前記変換単位毎に配置するデータ変換部、を備え、前記データ変換部は、前記データバスのバス幅を、予め定めた第1のビット数からなる第1のビット範囲と、前記データバスの全てのビット数から前記第1のビット数を減算した第2のビット数からなる第2のビット範囲とに分割し、複数の前記入力データにおいて同じ種類の情報を持つ前記入力データの同一のビットが、前記データバスの同一のビットで連続して転送されるように、予め定められた第1の数の入力データを前記第1のビット範囲に割り当てた第1のデータを順次生成する第1のデータ生成部と、前記第1のデータに割り当てられていない前記入力データの内、予め定められた第2の数の入力データを前記第2のビット範囲に割り当てた第2のデータを生成する第2のデータ生成部と、前記第1のデータと前記第2のデータとを結合して、前記データバスのバス幅のビット数を持つ前記変換データを生成するデータ結合部と、を具備する、ことを特徴とする。
【0019】
また、本発明の前記第2のデータ生成部は、前記第2の数の前記入力データを、同一の前記変換単位に含まれる複数の前記転送単位の前記第2のデータ内で連続するように、前記第2のビット範囲の各ビットに前記入力データの各ビットを順次割り当てる、ことを特徴とする。
【0020】
また、本発明の前記第2のデータ生成部は、前記第2の数の前記入力データのそれぞれを、前記第2のビット数の上位ビットの入力データと、前記入力データの全てのビット数から前記上位ビットの入力データのビット数を減算したビット数の下位ビットの入力データとに分割し、該分割した上位ビットの入力データの内、同じ種類の情報を持つ2つの前記上位ビットの入力データの同一のビットが、同一の前記変換単位に含まれる連続する2つの前記転送単位の前記第2のデータで同一のビットに割り当てられるように、前記第2のビット範囲の各ビットに前記上位ビットの入力データの各ビットを割り当て、前記上位ビットの入力データを割り当てた後、残っている同一の前記変換単位に含まれる前記第2のデータで連続するように、前記第2のビット範囲の各ビットに前記下位ビットの入力データの各ビットを順次割り当てる、ことを特徴とする。
【0021】
また、本発明の前記第2のデータ生成部は、前記入力データを割り当てた後、残っている前記第2のデータの各ビットに、同一の前記変換単位に含まれる直前の前記転送単位の前記第2のデータの同一のビットと同じデータをそれぞれ割り当てる、ことを特徴とする。
【0022】
また、本発明の前記データ変換部は、前記入力データを予め定められたビット数の上位ビットの入力データと、前記入力データの全てのビット数から前記上位ビットの入力データのビット数を減算したビット数の下位ビットの入力データとに分割する入力データ分割部を、さらに備え、前記第1のデータ生成部は、前記第1のビット範囲の各ビットに前記上位ビットの入力データの各ビットを割り当て、第2のデータ生成部は、前記第2のビット範囲の各ビットに前記下位ビットの入力データの各ビットを割り当てる、ことを特徴とする。
【0023】
また、本発明のデータ処理装置は、複数の入力データを、予め定められたビット数のデータバスと同じビット数の変換データに変換し、1つの前記変換データを1つの転送単位とし、予め定められた数の前記転送単位を1つの変換単位として、前記変換単位毎に順次転送されてきた変換データを順次逆変換して、複数の元の前記入力データに復元するデータ逆変換部、を備え、前記データ逆変換部は、前記データバスのバス幅が、予め定めた第1のビット数からなる第1のビット範囲と、前記データバスの全てのビット数から前記第1のビット数を減算した第2のビット数からなる第2のビット範囲とに分割され、複数の前記入力データにおいて同じ種類の情報を持つ前記入力データの同一のビットが、前記データバスの同一のビットで連続して転送されるように、予め定められた第1の数の入力データを前記第1のビット範囲に割り当てた第1のデータと、前記第1のデータに割り当てられていない前記入力データの内、予め定められた第2の数の入力データを前記第2のビット範囲に割り当てた第2のデータと、を含む前記変換データを、前記第1のデータと前記第2のデータとに順次分割するデータ分割部と、前記第1のデータに含まれる前記第1の数の前記入力データを、それぞれの前記入力データに分離する第1のデータ復元部と、前記第2のデータに含まれる前記第2の数の前記入力データを、それぞれの前記入力データに分離する第2のデータ復元部と、前記分離されたそれぞれの前記入力データを選択するデータ選択部と、を具備する、ことを特徴とする。
【0024】
また、本発明の前記第2のデータは、同一の前記変換単位に含まれる複数の前記転送単位の前記第2のデータ内で連続するように、前記第2のビット範囲の各ビットに前記第2の数の前記入力データの各ビットが順次割り当てられている、ことを特徴とする。
【0025】
また、本発明の前記第2のデータは、前記第2の数の前記入力データのそれぞれが、前記第2のビット数の上位ビットの入力データと、前記入力データの全てのビット数から前記上位ビットの入力データのビット数を減算したビット数の下位ビットの入力データとに分割され、該分割された上位ビットの入力データの内、同じ種類の情報を持つ2つの前記上位ビットの入力データの同一の各ビットが、同一の前記変換単位に含まれる連続する2つの前記転送単位の前記第2のビット範囲の同一の各ビットに割り当てられ、該分割された下位ビットの入力データの各ビットが、前記上位ビットの入力データの各ビットに割り当てられた後、残っている同一の前記変換単位に含まれる前記第2のビット範囲の各ビットに、前記第2のビット範囲で連続するように順次割り当てられている、ことを特徴とする。
【0026】
また、本発明の前記第2のデータは、同一の前記変換単位に含まれる直前の前記転送単位の前記第2のデータの同一のビットと同じデータが割り当てられている、ことを特徴とする。
【0027】
また、本発明の前記データ逆変換部は、前記第1のビット範囲の各ビットに割り当てられた前記入力データの予め定められたビット数の上位ビットの入力データと、前記第2のビット範囲の各ビットに割り当てられた前記入力データの全てのビット数から前記上位ビットの入力データのビット数を減算したビット数の下位ビットの入力データとを結合する入力データ結合部を、さらに備え、前記データ選択部は、前記結合されたそれぞれの前記入力データを選択する、ことを特徴とする。
【0028】
また、本発明のデータ処理方法は、順次入力された複数の入力データを、予め定められたビット数のデータバスと同じビット数の変換データに変換して順次転送する際に、1つの前記変換データを1つの転送単位とし、予め定められた数の前記転送単位を1つの変換単位として、前記入力データを前記変換単位毎に配置するデータ変換ステップ、を含み、前記データ変換ステップは、前記データバスのバス幅を、予め定めた第1のビット数からなる第1のビット範囲と、前記データバスの全てのビット数から前記第1のビット数を減算した第2のビット数からなる第2のビット範囲とに分割し、複数の前記入力データにおいて同じ種類の情報を持つ前記入力データの同一のビットが、前記データバスの同一のビットで連続して転送されるように、予め定められた第1の数の入力データを前記第1のビット範囲に割り当てた第1のデータを順次生成する第1のデータ生成ステップと、前記第1のデータに割り当てられていない前記入力データの内、予め定められた第2の数の入力データを前記第2のビット範囲に割り当てた第2のデータを生成する第2のデータ生成ステップと、前記第1のデータと前記第2のデータとを結合して、前記データバスのバス幅のビット数を持つ前記変換データを生成するデータ結合ステップと、を含む、ことを特徴とする。
【0029】
また、本発明のデータ処理方法は、複数の入力データを、予め定められたビット数のデータバスと同じビット数の変換データに変換し、1つの前記変換データを1つの転送単位とし、予め定められた数の前記転送単位を1つの変換単位として、前記変換単位毎に順次転送されてきた変換データを順次逆変換して、複数の元の前記入力データに復元するデータ逆変換ステップ、を含み、前記データ逆変換ステップは、前記データバスのバス幅が、予め定めた第1のビット数からなる第1のビット範囲と、前記データバスの全てのビット数から前記第1のビット数を減算した第2のビット数からなる第2のビット範囲とに分割され、複数の前記入力データにおいて同じ種類の情報を持つ前記入力データの同一のビットが、前記データバスの同一のビットで連続して転送されるように、予め定められた第1の数の入力データを前記第1のビット範囲に割り当てた第1のデータと、前記第1のデータに割り当てられていない前記入力データの内、予め定められた第2の数の入力データを前記第2のビット範囲に割り当てた第2のデータと、を含む前記変換データを、前記第1のデータと前記第2のデータとに順次分割するデータ分割ステップと、前記第1のデータに含まれる前記第1の数の前記入力データを、それぞれの前記入力データに分離する第1のデータ復元ステップと、前記第2のデータに含まれる前記第2の数の前記入力データを、それぞれの前記入力データに分離する第2のデータ復元ステップと、前記分離されたそれぞれの前記入力データを選択するデータ選択ステップと、を含む、ことを特徴とする。
【発明の効果】
【0030】
本発明によれば、データの転送効率を維持した状態で、データ転送に係る消費電力を低減することができるという効果が得られる。
【図面の簡単な説明】
【0031】
【図1】本発明の実施形態における撮像装置の概略構成を示したブロック図である。
【図2】本実施形態の撮像装置に備えた第1の構成のデータ変換部の概略構成を示したブロック図である。
【図3】本実施形態の撮像装置に備えた第1の構成のデータ逆変換部の概略構成を示したブロック図である。
【図4】本第1の構成のデータ変換部における第1のデータ配置方法を説明する図である。
【図5】本第1の構成のデータ変換部における第2のデータ配置方法を説明する図である。
【図6】本第1の構成のデータ変換部における第3のデータ配置方法を説明する図である。
【図7】本実施形態の撮像装置に備えた第2の構成のデータ変換部の概略構成を示したブロック図である。
【図8】本実施形態の撮像装置に備えた第2の構成のデータ逆変換部の概略構成を示したブロック図である。
【図9】本第2の構成のデータ変換部における第4のデータ配置方法を説明する図である。
【図10】本実施形態の撮像装置に備えたデータ変換部によるデータ配置方法を、別の画像データに適用した場合の一例を示した図である。
【図11】本実施形態の撮像装置に備えたデータ変換部によるデータ配置方法を、さらに別の画像データに適用した場合の一例を示した図である。
【図12】本実施形態の撮像装置に備えたデータ変換部によるデータ配置方法を、さらに別の画像データに適用した場合の一例を示した図である。
【図13】本実施形態の撮像装置に備えたデータ変換部によるデータ配置方法を、別のデータに適用した場合の一例を示した図である。
【図14】従来の撮像装置の概略構成を示したブロック図である。
【図15】画像データの配列の一例を示した図である。
【図16】従来のデータパッキングの一例を示した図である。
【図17】データバス上のデータの変化と消費電力との関係を説明する図である。
【図18】従来のデータパッキング方法におけるデータ配置の状態の一例を示した図である。
【図19】従来のデータパッキング方法におけるデータ配置の状態の別の一例を示した図である。
【発明を実施するための形態】
【0032】
以下、本発明の実施形態について、図面を参照して説明する。図1は、本実施形態における撮像装置の概略構成を示したブロック図である。図1に示した撮像装置1は、CPU10と、メモリ20と、CCD30と、撮像処理部40と、画像処理部50と、表示処理部60と、表示デバイス70と、データ変換部41および51と、データ逆変換部52および62と、出力DMA部45および55と、入力DMA部56および66と、を備えている。なお、撮像装置1は、撮影した画像データを記録する機能も有しているが、説明を容易にするため、以下の説明においては、撮影した画像データを表示する場合について説明する。また、図1においては、撮像装置1内の各構成要素(処理ブロック)間での画素データの受け渡しに係るデータバスであるメモリバスの接続のみを示している。
【0033】
CPU10は、撮像装置1の全体の制御を行う制御装置である。
メモリ20は、撮像装置1内の各処理ブロックが処理する画素データを一時的に記憶する、例えば、DRAM(Dynamic Random Access Memory)などのメモリである。メモリ20には、撮像装置1内の各処理ブロックによる各処理段階の画素データが一時記憶される。
【0034】
CCD30は、入射した被写体光を画像信号に変換する、例えば、ベイヤー配列の固体撮像素子である。CCD30は、被写体の画素信号を撮像処理部40に出力する。
撮像処理部40は、CCD30から入力された画素信号に対して、予め定められた信号処理を行った画像データを生成する。
【0035】
画像処理部50は、撮像処理部40が生成した画像データに対して、撮像装置1における種々の画像処理を行った画像データを生成する。
表示処理部60は、画像処理部50によって画像処理された画像データを、表示デバイス70に応じた表示データに変換する。表示処理部60は、変換した表示データを表示デバイス70に出力する。
表示デバイス70は、表示データを表示する、例えば、液晶などの表示装置である。
【0036】
本実施形態の撮像装置1では、CCD30によって撮像された被写体の画素信号を、撮像処理部40、画像処理部50、表示処理部60が順次処理し、表示デバイス70に表示させる。このとき、各処理段階の画像データは、メモリ20を介して各処理ブロック間で受け渡される。撮像装置1内のデータ変換部41および51と、データ逆変換部52および62と、出力DMA部45および55と、入力DMA部56および66とは、各処理段階の画像データの受け渡しに係る処理ブロックである。
【0037】
データ変換部41および51は、前段の処理ブロック(図1に示した本実施形態においては、撮像処理部40または画像処理部50)から入力された画像データ内の各画素データを、予め定められた配置(パッキング)方法で、メモリバスの各ビットに配置する。データ変換部41および51の構成と、データ変換部41および51による画素データのパッキング方法に関する詳細な説明は、後述する。
【0038】
出力DMA部45および55は、データ変換部41または51によってメモリバスの各ビットにパッキングされた画素データからなる画像データを、DMAアクセスによってメモリ20に書き込む(記憶させる)。
入力DMA部56および66は、メモリ20に記憶されている画像データをDMAアクセスによって読み出し、読み出した画像データを、データ逆変換部52または62に出力する。
【0039】
データ逆変換部52および62は、入力DMA部56または66から入力された画像データに含まれる画素データを、予め定められた配置(パッキング)方法と逆の方法で元の画像データに戻し、後段の処理ブロック(図1に示した本実施形態においては、画像処理部50または表示処理部60)に出力する。データ逆変換部52および62の構成に関する詳細な説明は、後述する。
【0040】
ここで、図1に示した撮像装置1における画像データの処理について説明する。撮像装置1における撮影動作では、以下のような手順で画像データの処理が行われる。
(手順1):まず、撮像処理部40は、CCD30によって撮像された被写体の画素信号に対して、予め定められた信号処理を行った画像データ(例えば、CCD30の画素の配列に応じた画像データ)を生成する。そして、生成した画像データを、データ変換部41および出力DMA部45を介して、メモリ20に転送して一時記憶する。
(手順2):続いて、画像処理部50は、メモリ20に一時記憶している画像データを、入力DMA部56およびデータ逆変換部52を介して読み出す。そして、画像処理部50は、読み出した画像データに対して記録用の画像処理や、表示用の画像処理を行った画像データ(例えば、RGBデータや、YC422点順次フォーマットのYCbCrデータ)を生成する。その後、生成した画像データを、再びデータ変換部51および出力DMA部55を介してメモリ20に転送して一時記憶する。
(手順3):続いて、表示処理部60は、画像処理部50によって表示用の画像処理がされた画像データや、別途、メモリ20に記憶しているOSD(On−Screen Display)表示用の画像データを、入力DMA部66およびデータ逆変換部62を介して読み出し、表示デバイス70に表示させる。
【0041】
なお、撮像装置1が撮影した画像データを記録する場合には、画像データの記録処理を行う図示しない記録処理部が、画像処理部50によって記録用の画像処理がされた画像データを、図示しない入力DMA部およびデータ逆変換部を介して読み出し、読み出した記録用の画像データをメモリカードなどの図示しない画像データ記録部に記録する。また、撮像装置1に、例えば、音を入出力する機能を備えている場合には、音声処理を行う図示しない音声処理部が、撮影時の音声データを、図示しないデータ変換部および出力DMA部を介してメモリ20に記憶する。また、音声処理部が、メモリ20に記憶している音声データを、図示しない入力DMA部およびデータ逆変換部を介して読み出し、読み出した音声データに応じた音声を、スピーカーなどの図示しない音出力部に出力させる。
【0042】
<第1の構成>
次に、撮像装置1内のデータ変換部について説明する。なお、上記に述べたように、データ変換部41とデータ変換部51とは、接続される前段の処理ブロックと後段の処理ブロックが異なるのみである。より具体的には、図1に示したように、データ変換部41は、前段の撮像処理部40と後段の出力DMA部45との間に配置され、データ変換部51は、前段の撮画像処理部50と後段の出力DMA部55との間に配置されている。従って、データ変換部41とデータ変換部51とは、入力される画像データと出力する画像データとのデータ形式(フォーマット)が異なるのみである。以下の説明においては、代表してデータ変換部41について説明する。
【0043】
図2は、本実施形態の撮像装置1に備えた本第1の構成のデータ変換部41の概略構成を示したブロック図である。図2に示したように、データ変換部41は、パック領域1データ生成部411と、パック領域2データ生成部412と、データ結合部413と、を備えている。
【0044】
なお、以下の説明においては、データ変換部41に、図15に示したような、16行×16列のベイヤー配列の画像データ(以下、「ベイヤーデータ」という)が入力され、ベイヤーデータ内の各画素データをパッキングする単位を4転送とし、4転送を1回のバースト転送の単位とする、すなわち、1バーストを画素データのパッキング単位とする場合について説明する。また、ベイヤーデータ内の各画素データのビット数は11bitであり、メモリバスのバス幅(メモリバス幅)は32bitであるものとして説明する。なお、図15に示したベイヤーデータでは、各画素データの数字がCCD30内の画素の位置を表しており、数字の前の「R」,「G」,「B」がCCD30内の画素の色を表している。より具体的には、「R」がCCD30の赤色の画素の画素データ、「G」がCCD30の緑色の画素の画素データ、「B」がCCD30の青色の画素の画素データを表している。
【0045】
データ変換部41は、撮像処理部40から入力された11bitの画素データの各ビットのデータを、予め定められた後述するパッキング方法のいずれか1つの方法で、メモリバス上の各ビットに配置した32bitのパックデータを出力する。データ変換部41は、パッキング単位を、画素データの連続する各ビットをそのままメモリバス上の連続する各ビットに配置する22bitの領域(以下、「パック領域1」という)と、画素データが配置されずに残っているメモリバス上のビットに画素データの各ビットを分割して配置する10bitの領域(以下、「パック領域2」という)とに分けて、メモリバス上の各ビットに画素データの各ビットを配置する。
【0046】
なお、データ変換部41におけるパック領域1に配置される画素データとパック領域2に配置される画素データとは、撮像処理部40から入力されるデータイネーブル信号に基づいて判別される。このデータイネーブル信号は、データ変換部41に入力された画素データが、CCD30の何色の画素のデータであるかを表す情報を含んでいる信号である。
【0047】
パック領域1データ生成部411は、撮像処理部40から入力されたデータイネーブル信号に基づいて、パック領域1のデータバス(このデータバスはメモリバスの各ビットに対応しているため、以下の説明においては、「メモリバス」として説明する)の各ビットに、2画素分の画素データを、例えば、メモリバスの下位ビットに対応した位置のビットから、順次配置する。そして、画素データを順次配置したメモリバス幅以下のビット数(図2においては、22bit)のパック領域1の画素データ(以下、「パック領域1データ」という)をデータ結合部413に出力する。なお、パック領域1データ生成部411は、画素データをメモリ20にバースト転送する際の連続する2転送間のデータにおいて、隣接する同一色の画素データが、メモリバス上の同一ビットに配置されるように、パック領域1データを配置する。
【0048】
パック領域2データ生成部412は、撮像処理部40から入力されたデータイネーブル信号に基づいて、パック領域2のデータバス(このデータバスもメモリバスの各ビットに対応しているため、以下の説明においては、「メモリバス」として説明する)の各ビットに、3画素分の画素データを配置する。そして、画素データを配置したメモリバス幅以下のビット数(図2においては、10bit)のパック領域2の画素データ(以下、「パック領域2データ」という)をデータ結合部413に出力する。なお、パック領域2データ生成部412は、予め定められた後述するパッキング方法に応じて、パック領域2データを配置する。
【0049】
データ結合部413は、パック領域1データ生成部411から入力されたパック領域1データと、パック領域2データ生成部412から入力されたパック領域2データとを結合したパックデータを生成する。そして、データ結合部413は、生成したパックデータを順次、出力DMA部45に出力する。なお、データ結合部413内には、例えば、22bitのパック領域1データを一時的に保持するメモリ部を備え、撮像処理部40から入力されたデータイネーブル信号に基づいて、22bitのパック領域1データと、10bitのパック領域2データとのタイミングの整合をとって、32bitのパックデータを生成する。
【0050】
次に、撮像装置1内のデータ逆変換部について説明する。なお、上記に述べたように、データ逆変換部52とデータ逆変換部62とは、接続される前段の処理ブロックと後段の処理ブロックが異なるのみである。より具体的には、図1に示したように、データ逆変換部52は、前段の入力DMA部56と後段の画像処理部50との間に配置され、データ逆変換部62は、前段の入力DMA部66と後段の表示処理部60との間に配置されている。従って、データ逆変換部52とデータ逆変換部62とは、入力される画像データと出力する画像データとのデータ形式(フォーマット)が異なるのみである。以下の説明においては、代表してデータ逆変換部52について説明する。
【0051】
図3は、本実施形態の撮像装置1に備えた本第1の構成のデータ逆変換部52の概略構成を示したブロック図である。図3に示したように、データ逆変換部52は、データ分割部521と、パック領域1データ復元部522と、パック領域2データ復元部523と、データ選択部524と、を備えている。
【0052】
なお、以下の説明においては、データ逆変換部52に、データ変換部41によってパッキングされた、4転送をパッキング単位とした1バーストのパックデータが、入力DMA部56を介して入力され、入力されたパックデータを、図15に示したベイヤーデータに戻す場合について説明する。従って、ベイヤーデータ内の各画素データのビット数は11bitであり、メモリバス幅は32bitであるものとして説明する。
【0053】
データ逆変換部52は、入力DMA部56から入力された32bitのパックデータの各ビットに配置されたデータを、予め定められた後述するパッキング方法のいずれか1つの方法と逆の方法で、画像処理部50が画像処理する元の画像データ(ベイヤーデータ)に戻した11bitの画素データを出力する。データ逆変換部52では、元の画素データの連続する各ビットがそのままメモリバス上の連続する各ビットに配置された22bitのパック領域1と、元の画素データの各ビットが分割してメモリバス上のビットに配置された10bitのパック領域2とに分けて、メモリバス上の各ビットのデータを、それぞれ元の画素データの各ビットに分配する。
【0054】
なお、データ逆変換部52におけるパック領域1に配置された元の画素データとパック領域2に配置された元の画素データとは、画像処理部50から入力されるデータイネーブル信号に基づいて判別される。このデータイネーブル信号は、画像処理部50に出力する元の画素データが、CCD30の何色の画素のデータであるかを表す情報を含んでいる信号である。
【0055】
データ分割部521は、パックデータをパック領域1データとパック領域2データとに分割する。そして、データ分割部521は、分割したパック領域1データ(図3においては、22bitのパック領域1データ)をパック領域1データ復元部522に、パック領域2データ(図3においては、10bitのパック領域2データ)をパック領域2データ復元部523に、それぞれ出力する。
【0056】
パック領域1データ復元部522は、データ分割部521から入力されたパック領域1データの各ビットに順次配置された、2画素分の元の画素データを、例えば、パック領域1データの上位側のビット(図3においては、11bit)の画素データと、下位側のビット(図3においては、11bit)の画素データとに分割する。そして、分割したそれぞれの画素データを、データ選択部524に出力する。
【0057】
パック領域2データ復元部523は、画像処理部50から入力されたデータイネーブル信号に基づいて、データ分割部521から入力されたパック領域2データの各ビットに配置された、3画素分の画素データをそれぞれの画素データに分割する。そして、分割したそれぞれの画素データ(図3においては、11bit)を、データ選択部524に出力する。
【0058】
なお、パック領域2データ復元部523は、予め定められた後述するパッキング方法と逆の方法で、それぞれの画素データに分割する。なお、パック領域2データ復元部523内には、例えば、パッキング単位(4転送)分のパック領域2データを一時的に保持するメモリ部を備え、画像処理部50から入力されたデータイネーブル信号に基づいて、パック領域2データ内で分割して配置されている11bitの画素データを揃えて、データ選択部524に出力する。
【0059】
データ選択部524は、画像処理部50から入力されたデータイネーブル信号に基づいて、パック領域1データ復元部522またはパック領域2データ復元部523から入力された画素データを順次選択し、データ逆変換部52が分割(アンパッキング)した元の画素データとして、画像処理部50に出力する。なお、データ選択部524内には、パック領域1データ復元部522およびパック領域2データ復元部523からそれぞれ入力された、11bitの画素データをそれぞれ一時的に保持するメモリ部を備え、画像処理部50から入力されたデータイネーブル信号に基づいて、画素データの出力タイミングの整合をとって、それぞれの画素データを順次、画像処理部50に出力する。
【0060】
次に、画素データの配置(パッキング)方法について説明する。本実施形態の撮像装置1では、データ変換部41および51が入力された画素データをメモリバスに配置したパックデータを生成し、データ逆変換部52および62が入力されたパックデータを元の画素データに戻す。なお、以下の説明においては、データ変換部41に、図15に示したベイヤーデータ内の各画素データが順次入力され、4転送を1つのパッキング単位とした1バーストのパックデータにパッキングする場合について説明する。また、ベイヤーデータ内の各画素データのビット数は11bitであり、メモリバス幅は32bitであるものとする。
【0061】
なお、データ逆変換部52および62によるパックデータを元の画素データに戻す方法は、データ変換部41および51による画素データのパッキング方法と逆の方法であるため、詳細な説明は省略する。
【0062】
<第1のデータ配置方法>
図4は、本第1の構成のデータ変換部41における本第1のデータ配置方法(パッキング方法)を説明する図である。図4(a)は、パックデータ内の画素データの配置を示し、図4(b)は、パックデータ内のパック領域2の画素データの各ビットの配置を示している。
【0063】
上記に述べたように、画像データは、通常、隣接する画素同士の方が画素データの変化量が小さい。このため、パックデータを構築する際には、バースト転送時にメモリバスの各ビットの変化量が最も小さくなるように、隣接する画素の画素データの同一ビットを、各転送におけるメモリバスの同一のビットに配置することが望ましい。
【0064】
また、ベイヤー、RGB、またはYC422点順次など、画像処理部50が画像処理する際の画像のフォーマットによって、画像データ内の各画素データが表す色の情報が異なる。このため、パックデータを構築する際には、バースト転送時にメモリバスの各ビットの変化量が最も小さくなるように、同一色の画素データを、各転送におけるメモリバスの同一のビットに配置することが望ましい。
【0065】
本第1のパッキング方法では、パック領域1データ生成部411が、パックデータ内のパック領域1の連続する2転送間のデータにおいて、隣接する同一色の画素データが、メモリバス上の同一ビットに配置されるように、パック領域1データを配置する。
【0066】
また、パック領域2データ生成部412が、画素データが配置されずに残っているパックデータ内のパック領域2の連続する4転送間で、画素データがラスター順となるように、画素データの各ビットを詰めてパック領域2データを配置する。
【0067】
より具体的には、パック領域1データ生成部411は、ベイヤーデータ内の各画素データ(「R0」,「G1」,「R2」,「G3」,「R4」,「G5」,「R6」,「G7」)を、図4(a)に示したように、1転送目に「R0」および「G1」、2転送目に「R2」および「G3」、3転送目に「R4」および「G5」、4転送目に「R6」および「G7」を、それぞれメモリバスの最下位ビットから順次配置(パッキング)する。
【0068】
また、パック領域2データ生成部412は、ベイヤーデータ内の各画素データ(「R8」,「G9」,「R10」)を、図4(b)に示したように、1転送目に「R8」のビット[0]〜ビット[9]、2転送目に「R0」のビット[10]および「G9」のビット[0]〜ビット[8]、3転送目に「G9」のビット[9]〜ビット[10]および「R10」のビット[0]〜ビット[7]、4転送目に「R10」のビット[8]〜ビット[10]を、それぞれパック領域2のメモリバスの下位ビットから順次パッキングする。
【0069】
なお、パック領域2内に画素データの全てのビットを配置することができない場合には、次の画素データ(例えば、ベイヤーデータ内の画素データ「G11」)をパッキングしない。これは、データ変換部41は、パッキング単位で各画素データをパッキングするため、「G11」の画素データの一部をパッキングすると、「G11」のデータがパッキング単位を跨いでしまうことになるためである。従って、画素データが配置されなかったパック領域2内のデータバスのビット(図4においては、4転送目のデータバスのビット[31]〜ビット[25])は、未使用ビットとする。なお、未使用ビットには、全て同じ値のデータ(例えば、全て“1”または全て“0”のデータ)を配置する構成とすることもできる。
【0070】
このようにして、パックデータを生成することによって、本第1のパッキング方法では、各転送間での画素データのビット位置のずれが、メモリバス幅全体のうち、パック領域2のビットに限定される。さらに、本第1のパッキング方法では、隣接する同一色の画素データが、メモリバス上の同一ビットに配置されるように、パック領域1内の画素データを配置している。これにより、バースト転送時におけるメモリバスの各ビットの変化量を少なくすることができる。このことにより、本第1のパッキング方法では、従来のバースト単位でのパッキング方法と同様に、画像データの転送効率を維持すると共に、従来のバースト単位でのパッキング方法よりも、画像データの転送に係る消費電力を低減させることができる。
【0071】
<第2のデータ配置方法>
図5は、本第1の構成のデータ変換部41における本第2のデータ配置方法(パッキング方法)を説明する図である。図5(a)は、パックデータ内の画素データの配置を示し、図5(b)は、パックデータ内のパック領域2の画素データの各ビットの配置を示している。
【0072】
本第2のパッキング方法では、パック領域1データ生成部411が、第1のパッキング方法と同様に、パックデータ内のパック領域1の連続する2転送間のデータにおいて、隣接する同一色の画素データが、メモリバス上の同一ビットに配置されるように、パック領域1データを配置する。なお、第2のパッキング方法におけるパック領域1のパックデータの配置方法は、第1のパッキング方法と同様であるため、詳細な説明は省略する。
【0073】
また、パック領域2データ生成部412が、画素データが配置されずに残っているパックデータ内のパック領域2内で、同一のビット位置を境界として画素データを分割する。そして、分割した画素データの隣接する同一色の画素データが、連続する2転送間でメモリバス上の同一ビットに配置されるように、パック領域2データを配置する。また、分割した残りのビットは、4転送目に配置する。
【0074】
より具体的には、パック領域2データ生成部412は、ベイヤーデータ内の各画素データ(「R8」,「G9」,「R10」)を、図5(b)に示したように、1転送目に「R8」のビット[1]〜ビット[10]、2転送目に「R10」のビット[1]〜ビット[10]、3転送目に「G9」のビット[1]〜ビット[10]を、それぞれパック領域2のメモリバスの下位ビットから順次パッキングする。また、4転送目に「R8」のビット[0]、「G9」のビット[0]、「R10」のビット[0]を、それぞれパック領域2のメモリバスの下位ビットから順次パッキングする。
【0075】
なお、パック領域2内に画素データの全てのビットを配置することができない場合においては、第1のパッキング方法と同様に、画素データが配置されなかったパック領域2内のデータバスのビット(図5においては、4転送目のデータバスのビット[31]〜ビット[25])は、未使用ビットとする。
【0076】
このようにして、本第2のパッキング方法では、パック領域2においても、メモリバス上の同一ビットに各画素データの同一ビットを配置している(図5における1転送目〜3転送目参照)。また、隣接する同一色の画素データを、連続する2転送間に配置している(図5における1転送目および2転送目参照)。そして、1転送目〜3転送目に配置されなかった各画素データのビットを、4転送目に配置している。これにより、第1のパッキング方法よりもさらにバースト転送時におけるメモリバスの各ビットの変化量、特に、パック領域2の各ビットの変化量を少なくすることができる。このことにより、本第2のパッキング方法では、第1のパッキング方法よりもさらに、画像データの転送に係る消費電力を低減させることができる。
【0077】
なお、図5に示した第2のパッキング方法では、パック領域2に各画素データを配置する際に、各画素データのビット[0]をまとめて配置している場合について説明したが、これは、パック領域2のメモリバス幅が10bitであり、画素データのビット数は11bitであるためである。すなわち、メモリバス上に画素データを配置するとき、1転送内のメモリバスに配置することができなかった各画素データの最下位の1bit(図5においては、各画素データのビット[0])を、4転送目にまとめて配置したのである。従って、1転送内のメモリバスに配置することができなかった各画素データが複数ビットある場合には、その複数ビットの各画素データを、4転送目にまとめて配置することになる。なお、4転送目にまとめて配置する各画素のビットは、下位ビットが望ましい。これは、画像データは、通常、画素データの下位ビットの方が、隣接する画素同士でも、例えば、撮像装置1内のノイズ成分によって値が異なることが予想されるためである。
【0078】
<第3のデータ配置方法>
図6は、本第1の構成のデータ変換部41における本第3のデータ配置方法(パッキング方法)を説明する図である。図6(a)は、パックデータ内の画素データの配置を示し、図6(b)は、パックデータ内のパック領域2の画素データの各ビットの配置を示している。
【0079】
本第3のパッキング方法では、パック領域1データ生成部411が、第1のパッキング方法および第2のパッキング方法と同様に、パックデータ内のパック領域1の連続する2転送間のデータにおいて、隣接する同一色の画素データが、メモリバス上の同一ビットに配置されるように、画素データを配置する。なお、第3のパッキング方法におけるパック領域1のパックデータの配置方法は、第1のパッキング方法および第2のパッキング方法と同様であるため、詳細な説明は省略する。
【0080】
また、パック領域2データ生成部412が、第2のパッキング方法と同様に、画素データが配置されずに残っているパックデータ内のパック領域2内で、同一のビット位置を境界として画素データを分割して配置する。さらに、本第3のパッキング方法では、パック領域2データ生成部412が、パック領域2内の未使用ビットに、直前の1転送で配置した画素データと同一ビットの画素データを再度配置、すなわち、コピーして配置する。なお、第3のパッキング方法におけるパック領域2の未使用ビット以外のパックデータの配置方法は、第2のパッキング方法と同様であるため、詳細な説明は省略する。
【0081】
ここで、パック領域2データ生成部412による未使用ビットの画素データの配置について、より具体的に説明する。パック領域2データ生成部412は、4転送目の未使用ビット(図6においては、4転送目のデータバスのビット[31]〜ビット[25])に、3転送目のデータバスのビット[31]〜ビット[25]に配置した画素データ(図6においては、画素データ「G9」のビット[4]〜ビット[10])を、コピーして、再度配置する。
【0082】
このようにして、本第3のパッキング方法では、パック領域2内の未使用ビットに、直前の1転送で配置した画素データと同一の値を配置している(図6における4転送目参照)。これにより、第2のパッキング方法よりもさらにバースト転送時におけるメモリバスの各ビットの変化量、特に、パック領域2の未使用ビットの変化量を少なくすることができる。このことにより、本第3のパッキング方法では、第2のパッキング方法よりもさらに、画像データの転送に係る消費電力を低減させることができる。
【0083】
上記に述べたように、本第1の構成のデータ変換部41および51では、バースト転送時におけるメモリバスの各ビットの変化量が少なくなるように、画素データを配置することができる。これにより、本第1の構成のデータ変換部41および51では、従来のバースト単位でのパッキング方法と同様に、画像データの転送効率を維持すると共に、従来のバースト単位でのパッキング方法よりも、画像データの転送に係る消費電力を低減させることができる。このことにより、撮像装置1内の各構成要素(処理ブロック)とメモリ20との間での画素データの転送、すなわち、撮像装置1内の各構成要素間での画素データの受け渡しに係る消費電力を低減させることができる。
【0084】
<第2の構成>
次に、本第2の構成のデータ変換部について説明する。図7は、本実施形態の撮像装置1に備えた本第2の構成のデータ変換部43の概略構成を示したブロック図である。図7に示したデータ変換部43は、第1の構成のデータ変換部41の代わりに、撮像装置1に備えられる。従って、データ変換部43は、データ変換部51の代わりに撮像装置1に備えることもできる。図7に示したように、データ変換部43は、ビット分割部430と、パック領域1データ生成部431と、パック領域2データ生成部432と、データ結合部433と、を備えている。
【0085】
なお、以下の説明においては、第1の構成と同様に、データ変換部43に、図15に示したような、16行×16列のベイヤーデータが入力され、4転送をベイヤーデータ内の各画素データのパッキング単位とし、メモリバス幅は32bitである場合について説明する。なお、図7においては、第2の構成と異なり、ベイヤーデータ内の各画素データのビット数が9bitであるものとして説明する。
【0086】
データ変換部43は、撮像処理部40から入力された9bitの画素データの各ビットのデータを、予め定められた後述するパッキング方法で、メモリバス上の各ビットに配置した32bitのパックデータを出力する。データ変換部43は、第1の構成のデータ変換部41と同様に、パッキング単位をパック領域1とパック領域2とに分けてメモリバス上の各ビットに画素データの各ビットを配置する。ただし、メモリバス上の各ビットに画素データの各ビットを配置する方法は、第1の構成のデータ変換部41と異なる。データ変換部43によるメモリバスへの画素データの配置方法に関する詳細な説明は、後述する。
【0087】
ビット分割部430は、入力されたそれぞれの画素データを、例えば、上位8ビットの画素データ(以下、「上位画素データ」という)と下位1ビットの画素データ(以下、「下位画素データ」という)とに分割する。そして、分割した上位画素データを、パック領域1データ生成部431に出力する。またビット分割部430は、分割した下位画素データを、パック領域2データ生成部432に出力する。
【0088】
パック領域1データ生成部431は、撮像処理部40から入力されたデータイネーブル信号に基づいて、パック領域1のデータバス(このデータバスはメモリバスの各ビットに対応しているため、以下の説明においては、「メモリバス」として説明する)の各ビットに、4画素分の上位画素データを、例えば、メモリバスの下位ビットに対応した位置のビットから、順次配置する。そして、上位画素データを順次配置したメモリバス幅のビット数(図7においては、32bit)のパック領域1データをデータ結合部433に出力する。また、パック領域1データ生成部431が、4転送目のパック領域1データをデータ結合部433に出力する際には、2画素分の上位画素データを、例えば、メモリバスの下位ビットに対応した位置のビットから、順次配置した16bitのパック領域1データをデータ結合部433に出力する。なお、パック領域1データ生成部431は、上位画素データをメモリ20にバースト転送する際の連続する2転送間のデータにおいて、隣接する同一色の画素データが、メモリバス上の同一ビットに配置されるように、パック領域1データを配置する。
【0089】
パック領域2データ生成部432は、撮像処理部40から入力されたデータイネーブル信号に基づいて、パック領域2のデータバス(このデータバスもメモリバスの各ビットに対応しているため、以下の説明においては、「メモリバス」として説明する)の各ビットに、14画素分の下位画素データを配置する。そして、下位画素データを配置したメモリバス幅以下のビット数(図7においては、16bit)のパック領域2データをデータ結合部433に出力する。なお、パック領域2データ生成部432内には、例えば、16個の1bitの画素データをそれぞれ一時的に保持するメモリ部を備え、撮像処理部40から入力されたデータイネーブル信号に基づいて画素データの出力タイミングの整合をとり、4転送目のタイミングでパック領域2データをデータ結合部433に出力する。
【0090】
データ結合部433は、パック領域1データ生成部431から入力されたパック領域1データと、パック領域2データ生成部432から入力されたパック領域2データとを結合したパックデータを生成する。そして、データ結合部433は、生成したパックデータを順次、出力DMA部45に出力する。なお、データ結合部433は、1転送目〜3転送目までは、パック領域1データ生成部431から入力されたパック領域1データを、パックデータとして順次出力DMA部45に出力する。また、データ結合部433は、4転送目で、パック領域1データ生成部431から入力された16bitのパック領域1データと、パック領域2データ生成部432から入力された16bitのパック領域2データとを結合したパックデータを出力DMA部45に出力する。
【0091】
なお、データ結合部433内には、例えば、16bitのパック領域1データを一時的に保持するメモリ部を備え、撮像処理部40から入力されたデータイネーブル信号に基づいて、16bitの4転送目のパック領域1データと、16bitの4転送目のパック領域2データとのタイミングの整合をとって、32bitのパックデータを生成する。
【0092】
次に、本第2の構成のデータ逆変換部について説明する。図8は、本実施形態の撮像装置1に備えた本第2の構成のデータ逆変換部54の概略構成を示したブロック図である。図8に示したデータ逆変換部54は、第1の構成のデータ逆変換部52の代わりに、撮像装置1に備えられる。従って、データ逆変換部54は、データ逆変換部62の代わりに撮像装置1に備えることもできる。図8に示したように、データ逆変換部54は、データ分割部541と、パック領域1データ復元部542と、パック領域2データ復元部543と、ビット結合部540と、データ選択部544と、を備えている。
【0093】
なお、以下の説明においては、第1の構成と同様に、データ逆変換部54に、データ変換部43によってパッキングされた、4転送をパッキング単位とした1バーストのパックデータが、入力DMA部56を介して入力され、入力されたパックデータを、図15に示したベイヤーデータに戻す場合について説明する。従って、ベイヤーデータ内の各画素データのビット数は9bitであり、メモリバス幅は32bitであるものとして説明する。
【0094】
データ逆変換部54は、入力DMA部56から入力された32bitのパックデータの各ビットに配置されたデータを、予め定められた後述するパッキング方法と逆の方法で、画像処理部50が画像処理する元の画像データ(ベイヤーデータ)に戻した9bitの画素データを出力する。データ逆変換部54は、第1の構成のデータ逆変換部52と同様に、パッキング単位をパック領域1とパック領域2とに分けて、メモリバス上の各ビットのデータを、それぞれ元の画素データの各ビットに分配する。
【0095】
データ分割部541は、パックデータをパック領域1データとパック領域2データとに分割する。そして、データ分割部541は、分割したパック領域1データ(図8においては、32bitのパック領域1データ、または16bitのパック領域1データ)をパック領域1データ復元部542に出力する。また、データ分割部541は、パック領域2データ(図8においては、16bitのパック領域2データ)をパック領域2データ復元部543に出力する。
【0096】
パック領域1データ復元部542は、データ分割部541から入力されたパック領域1データの各ビットに順次配置された、4画素分の元の上位画素データを、例えば、パック領域1データの4つの上位画素データ(図8においては、8bit)に分割する。そして、分割したそれぞれの上位画素データを、ビット結合部540に出力する。
【0097】
パック領域2データ復元部543は、画像処理部50から入力されたデータイネーブル信号に基づいて、データ分割部541から入力されたパック領域2データの各ビットに配置された、14画素分の下位画素データをそれぞれの画素データに分割する。そして、分割したそれぞれの下位画素データ(図8においては、1bit)を、ビット結合部540に順次出力する。なお、パック領域2データ復元部543は、予め定められた後述するパッキング方法と逆の方法で、それぞれの下位画素データに分割する。
【0098】
ビット結合部540は、パック領域1データ復元部542から入力された上位画素データと、パック領域2データ復元部543から入力された下位画素データとをそれぞれ結合し、結合した画素データをデータ選択部544に出力する。なお、ビット結合部540内には、例えば、パッキング単位(4転送)分の上位画素データを一時的に保持するメモリ部を備え、パック領域2データ復元部543から下位画素データが入力される毎に、入力された下位画素データに対応する上位画素データを結合して、パック領域1データとパック領域2データとに分割して配置されている9bitの画素データを揃えて、データ選択部544に出力する。
【0099】
データ選択部544は、画像処理部50から入力されたデータイネーブル信号に基づいて、ビット結合部540から入力された画素データを順次選択し、データ逆変換部54が分割(アンパッキング)した元の画素データとして、画像処理部50に出力する。なお、データ選択部544内には、ビット結合部540からそれぞれ入力された、9bitの画素データをそれぞれ一時的に保持するメモリ部を備え、画像処理部50から入力されたデータイネーブル信号に基づいて、画素データの出力タイミングの整合をとって、それぞれの画素データを順次、画像処理部50に出力する。
【0100】
次に、本第2の構成における画素データの配置(パッキング)方法について説明する。本実施形態の撮像装置1では、例えば、データ変換部43が入力された画素データをメモリバスに配置したパックデータを生成し、データ逆変換部54が入力されたパックデータを元の画素データに戻す。なお、以下の説明においては、データ変換部43に、図15に示したベイヤーデータ内の各画素データが順次入力され、4転送を1つのパッキング単位とした1バーストのパックデータにパッキングする場合について説明する。また、ベイヤーデータ内の各画素データのビット数は9bitであり、メモリバス幅は32bitであるものとする。
【0101】
なお、データ逆変換部54によるパックデータを元の画素データに戻す方法は、データ変換部43による画素データのパッキング方法と逆の方法であるため、詳細な説明は省略する。
【0102】
<第4のデータ配置方法>
図9は、本第2の構成のデータ変換部43における本第4のデータ配置方法(パッキング方法)を説明する図である。図9(a)は、上述した第2のパッキング方法によって、9bitの画素データをメモリバス上に配置した場合の一例を示し、図9(b)は、本第4のパッキング方法によるパックデータ内の画素データの配置を示し、図9(c)は、本第4のパッキング方法によるパックデータ内のパック領域2の画素データの各ビットの配置を示している。
【0103】
第4のパッキング方法では、パックデータ内のパック領域1の連続する2転送間のデータにおいて、隣接する同一色の画素データが、メモリバス上の同一ビットに配置されるように、パック領域1データを配置する。また、パックデータ内のパック領域2内で、同一のビット位置を境界として画素データを分割し、分割した画素データの隣接する同一色の画素データが、連続する2転送間でメモリバス上の同一ビットに配置されるように、パック領域2データを配置する。
【0104】
このことから、第2のパッキング方法では、図9(a)に示したように、ベイヤーデータ内の各画素データ(「R0」,「G1」,「R2」,「G3」,「R4」,「G5」,「R6」,「G7」,「R8」,「R10」,「R12」)が、パック領域1に配置され、ベイヤーデータ内の各画素データ(「G9」,「G11」,「G13」)が、パック領域2に配置されることになる。
【0105】
図9(a)に示した第2のパッキング方法でも、バースト転送時のメモリバスの各ビットの変化量が少なくなっているため、画像データの転送に係る消費電力を低減させることができるが、3転送目におけるメモリバスのビット[27]〜ビット[31]と、4転送目におけるメモリバスのビット[19]〜ビット[26]とで消費電力が上昇することが予想される。
【0106】
画像データは、隣接する画素間で画素データの変化量が小さい場合、画素データの上位ビットは変化せず、下位ビットだけが変化することが予想される。このため、画素データを上位ビットと下位ビットとに分割し、変化量の少ない上位ビットをパック領域1に配置し、変化量が多い下位ビットをパック領域2に配置してパックデータを構築した方が、さらにバースト転送時のメモリバスの各ビットの変化量が少なくなる場合がある。
【0107】
本第4のパッキング方法では、ビット分割部431が、画素データを上位画素データと下位画素データとに分割する。そして、パック領域1データ生成部431が、分割した上位画素データを、パックデータ内のパック領域1の連続する2転送間のデータにおいて、隣接する同一色の上位画素データが、メモリバス上の同一ビットに配置されるように、パック領域1データを配置する。また、パック領域2データ生成部432が、分割した下位画素データを、4転送目に配置する。
【0108】
より具体的には、ビット分割部431が、ベイヤーデータ内の各画素データを、上位画素データ(ビット[8]〜ビット[1])と、下位画素データ(ビット[0])とに分割する。そして、パック領域1データ生成部431は、図9(b)に示したように、1転送目に「R0」、「G1」、「R8」、および「G9」、2転送目に「R2」、「G3」、「R10」、および「G11」、3転送目に「R4」、「G5」、「R12」、および「G13」、4転送目に「R6」および「G7」の上位画素データを、それぞれメモリバスの最下位ビットから順次配置(パッキング)する。
【0109】
また、パック領域2データ生成部432は、「R0」、「G1」、「R2」、「G3」、「R4」、「G5」、「R6」、「G7」、「R8」、「G9」、「R10」、「G11」、「R12」および「G13」の下位画素データを、それぞれパック領域2のメモリバスの下位ビットから順次パッキングする。なお、4転送目におけるメモリバスのビット[30]およびビット[31]は、未使用ビットとする。これは、第1の構成と同様の理由である。
【0110】
このようにして、パックデータを生成することによって、本第4のパッキング方法では、第1の構成と同様に、各転送間での画素データのビット位置のずれが、メモリバス幅全体のうち、パック領域2のビットに限定される。さらに、本第4のパッキング方法では、パック領域2が4転送目のみに限定されため、メモリバスに占めるパック領域2の割合を少なくすることができる。これにより、バースト転送時におけるメモリバスの各ビットの変化量を、さらに少なくすることができる。このことにより、本第4のパッキング方法では、第1の構成のパッキング方法(第1〜第3のパッキング方法)よりもさらに、画像データの転送に係る消費電力を低減させることができる。
【0111】
なお、本第4のパッキング方法においても、第3のパッキング方法と同様に、図9に示した未使用ビットに、3転送目のデータバスのビット[30]〜ビット[31]に配置した画素データ(図9においては、画素データ「G13」のビット[7]〜ビット[8])を、コピーして、再度配置することにより、さらに画像データの転送に係る消費電力を低減させることができる。
【0112】
上記に述べたように、本第2の構成のデータ変換部43では、バースト転送時におけるメモリバスの各ビットの変化量が少なくなるように、画素データを配置することができる。これにより、本第2の構成のデータ変換部43でも、従来のバースト単位でのパッキング方法と同様に、画像データの転送効率を維持すると共に、従来のバースト単位でのパッキング方法よりも、画像データの転送に係る消費電力を低減させることができる。このことにより、第1の構成のデータ変換部41および51と同様に、撮像装置1内の各構成要素(処理ブロック)とメモリ20との間での画素データの転送、すなわち、撮像装置1内の各構成要素間での画素データの受け渡しに係る消費電力を低減させることができる。
【0113】
なお、上記に述べた実施形態においては、ベイヤーデータに本実施形態のパッキング方法を適用した場合について説明したが、本実施形態のパッキング方法は、ベイヤーデータへの適用に限定されるものではなく、RGBデータ、YC422点順次やYC444点順次フォーマットのYCbCrデータ、またはOSDデータなど、様々な画像データに適用することができる。また、本実施形態のパッキング方法は、画像データへの適用に限定されるものではなく、音声データなど、他の形式のデータに適用することもできる。
【0114】
<適用例>
次に、本実施形態のパッキング方法を、他の形式の画像データや、画像データ以外のデータに適用した場合の一例について説明する。まず、本実施形態のパッキング方法をRGBデータに適用した場合の一例について説明する。図10は、本実施形態の撮像装置1に備えたデータ変換部41によるデータ配置方法(パッキング方法)を、別の画像データ(RGBデータ)に適用した場合の一例を示した図である。なお、図10では、8bitのRGBデータに、従来のバースト単位でのパッキング方法を適用した一例(図10(a)参照)と、第3のパッキング方法を適用した一例(図10(b)参照)とを、それぞれ示している。
【0115】
図10(a)に示したように、従来のバースト単位でのパッキング方法によって、RGBデータ(8bit×3色=24bit)を単純に配置すると、32bitのメモリバスの全てのビットが、異なる色の画素データになってしまう。これに対して、図10(b)に示した第3のパッキング方法では、パック領域1のメモリバスの各ビットは、4つの転送とも同一色の画素データの同一ビットとなる。また、パック領域2の4転送目のメモリバスの各ビットの値は、3転送目のメモリバスの各ビットの値を同じ値になる。これにより、パック領域1では、バースト転送時のメモリバスの各ビットの変化量を少なくすることができ、パック領域2では、3転送目と4転送目とのメモリバスの各ビットの変化量をなくすことができる。このことにより、画像データの転送に係る消費電力を低減させることができる。
【0116】
図11は、本実施形態の撮像装置1に備えたデータ変換部41によるデータ配置方法(パッキング方法)を、さらに別の画像データ(YCbCrデータ)に適用した場合の一例を示した図である。なお、図11では、図11(a)に示したような、10bitのY、8bitのCbおよびCrデータに、従来のバースト単位でのパッキング方法を適用した一例(図11(b)参照)と、第1のパッキング方法を適用した一例(図11(c)参照)とを、それぞれ示している。
【0117】
図11(b)に示したように、従来のバースト単位でのパッキング方法によって、YCbCrデータを単純に配置すると、メモリバスの全てのビットが、異なる色を表す画素データになってしまう。これに対して、図11(c)に示した第1のパッキング方法では、パック領域1のメモリバスの各ビットは、同一の色を表す画素データの同一ビットとなる。これにより、パック領域1では、バースト転送時のメモリバスの各ビットの変化量を少なくすることができ、画像データの転送に係る消費電力を低減させることができる。また、図11に示した例からもわかるように、本実施形態のパッキング方法では、それぞれのデータのビット数が異なる場合でも、同様に適用することができる。
【0118】
図12は、本実施形態の撮像装置1に備えたデータ変換部41によるデータ配置方法(パッキング方法)を、さらに別の画像データ(OSDデータ)に適用した場合の一例を示した図である。なお、図12では、6bitのOSDデータに、従来のバースト単位でのパッキング方法を適用した一例(図12(a)参照)と、第2のパッキング方法を適用した一例(図10(b)参照)とを、それぞれ示している。
【0119】
図12(a)に示したように、従来のバースト単位でのパッキング方法によって、OSDデータを単純に配置すると、メモリバスの全てのビットが、異なる表示データの異なるビットになってしまう。これに対して、図12(b)に示した第2のパッキング方法では、パック領域1のメモリバスの各ビットは、表示データの同一ビットとなる。これにより、パック領域1では、バースト転送時のメモリバスの各ビットの変化量を少なくすることができ、画像データの転送に係る消費電力を低減させることができる。また、図12(b)をみてもわかるように、本実施形態のパッキング方法では、32bitのメモリバス幅のほとんどがパック領域1であるため、より多くの消費電力の低減効果を得ることができる。
【0120】
図13は、本実施形態の撮像装置1に備えたデータ変換部41によるデータ配置方法(パッキング方法)を、別のデータ(音声データ)に適用した場合の一例を示した図である。なお、図13では、それぞれ24bitのR(右)データおよびL(左)データを64bitのメモリバスに適用した場合を示している。そして、図13(a)には、従来のバースト単位でのパッキング方法を適用した一例を示し、図13(b)には、第2のパッキング方法を適用した一例を示している。
【0121】
図13(a)に示したように、従来のバースト単位でのパッキング方法によって、音声データを単純に配置すると、64bitのメモリバスの全てのビットが、異なるビットの音声データになってしまう。これに対して、図13(b)に示した第2のパッキング方法では、パック領域1のメモリバスの各ビットは、同じ側の音声データの同一ビットとなる。これにより、パック領域1では、バースト転送時のメモリバスの各ビットの変化量を少なくすることができ、画像データ以外の他の形式のデータでも、転送に係る消費電力を低減させることができる。
【0122】
上記に述べたとおり、本発明を実施するための形態によれば、メモリバス幅をパック領域1とパック領域2とに分ける。そして、パック領域1のメモリバス上の各ビットには、転送するデータの各ビットを、ほぼそのまま配置する。また、パック領域2のメモリバス上の各ビットには、転送するデータの各ビットを分割して配置する。これにより、バースト転送時におけるメモリバスの各ビットの変化量を少なくすることができる。しかも、データの転送効率は、従来と同等のデータ転送効率を維持することができる。これにより、像装置内の各構成要素(処理ブロック)とメモリとの間でのデータの受け渡しに係る消費電力の低減効果を十分に得ることができる。
【0123】
なお、本実施形態においては、4転送を1回のバースト転送の単位とし、1バーストをデータのパッキング単位とした場合について説明したが、1回のバースト転送における転送の回数や、データのパッキングの単位は、本発明を実施するための形態に限定されるものではない。例えば、64転送を1回のバースト転送の単位とし、1バースト内の16転送をデータのパッキングの単位とする、すなわち、1バースト内に4つのパッキング単位が含まれる構成にすることもできる。また、例えば、16転送をデータのパッキングの単位とし、8転送を1回のバースト転送の単位とする、すなわち、パッキング単位が2回のバースト転送に跨っている構成にすることもできる。
【0124】
また、本実施形態においては、撮像装置内の構成要素間でデータの受け渡しを行う場合のパッキング方法を、いくつかのデータに適用した場合について説明したが、本実施形態のパッキング方法を適用することができる範囲は、本発明を実施するための形態に限定されるものではなく、各構成要素間でデータの受け渡しを行うシステムであれば、どのようなシステムにも適用することができる。
【0125】
また、本実施形態においては、例えば、データ変換部を出力DMA部の前段の処理ブロックとして配置し、データ逆変換部を入力DMA部の後段の処理ブロックとして配置した場合の一例について説明したが、データ変換部およびデータ逆変換部の配置は、本発明を実施するための形態に限定されるものではない。例えば、データ変換部を出力DMA部内の構成要素とすることや、データ逆変換部を入力DMA部内の構成要素とすることもできる。また、例えば、データ変換部を前段の撮像処理部内の構成要素とすることや、データ逆変換部を後段の画像処理部内の構成要素とすることもできる。
【0126】
以上、本発明の実施形態について、図面を参照して説明してきたが、具体的な構成はこの実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲においての種々の変更も含まれる。
【符号の説明】
【0127】
1・・・撮像装置(データ処理装置)
10・・・CPU(データ処理装置)
20・・・メモリ(データ処理装置)
30・・・CCD
40・・・撮像処理部
50・・・画像処理部
60・・・表示処理部
70・・・表示デバイス
41,51・・・データ変換部(データ処理装置)
411・・・パック領域1データ生成部(第1のデータ生成部)
412・・・パック領域2データ生成部(第2のデータ生成部)
413・・・データ結合部
52,62・・・データ逆変換部(データ処理装置)
521・・・データ分割部
522・・・パック領域1データ復元部(第1のデータ復元部)
523・・・パック領域2データ復元部(第2のデータ復元部)
524・・・データ選択部
45,55・・・出力DMA部
56,66・・・入力DMA部
43・・・データ変換部(データ処理装置)
430・・・ビット分割部(画素データ分割部)
431・・・パック領域1データ生成部(第1のデータ生成部)
432・・・パック領域2データ生成部(第2のデータ生成部)
433・・・データ結合部
54・・・データ逆変換部(データ処理装置)
541・・・データ分割部
542・・・パック領域1データ復元部(第1のデータ復元部)
543・・・パック領域2データ復元部(第2のデータ復元部)
540・・・ビット結合部(画素データ結合部)
544・・・データ選択部

【特許請求の範囲】
【請求項1】
順次入力された複数の入力データを、予め定められたビット数のデータバスと同じビット数の変換データに変換して順次転送する際に、1つの前記変換データを1つの転送単位とし、予め定められた数の前記転送単位を1つの変換単位として、前記入力データを前記変換単位毎に配置するデータ変換部、
を備え、
前記データ変換部は、
前記データバスのバス幅を、予め定めた第1のビット数からなる第1のビット範囲と、前記データバスの全てのビット数から前記第1のビット数を減算した第2のビット数からなる第2のビット範囲とに分割し、複数の前記入力データにおいて同じ種類の情報を持つ前記入力データの同一のビットが、前記データバスの同一のビットで連続して転送されるように、予め定められた第1の数の入力データを前記第1のビット範囲に割り当てた第1のデータを順次生成する第1のデータ生成部と、
前記第1のデータに割り当てられていない前記入力データの内、予め定められた第2の数の入力データを前記第2のビット範囲に割り当てた第2のデータを生成する第2のデータ生成部と、
前記第1のデータと前記第2のデータとを結合して、前記データバスのバス幅のビット数を持つ前記変換データを生成するデータ結合部と、
を具備する、
ことを特徴とするデータ処理装置。
【請求項2】
前記第2のデータ生成部は、
前記第2の数の前記入力データを、同一の前記変換単位に含まれる複数の前記転送単位の前記第2のデータ内で連続するように、前記第2のビット範囲の各ビットに前記入力データの各ビットを順次割り当てる、
ことを特徴とする請求項1に記載のデータ処理装置。
【請求項3】
前記第2のデータ生成部は、
前記第2の数の前記入力データのそれぞれを、前記第2のビット数の上位ビットの入力データと、前記入力データの全てのビット数から前記上位ビットの入力データのビット数を減算したビット数の下位ビットの入力データとに分割し、
該分割した上位ビットの入力データの内、同じ種類の情報を持つ2つの前記上位ビットの入力データの同一のビットが、同一の前記変換単位に含まれる連続する2つの前記転送単位の前記第2のデータで同一のビットに割り当てられるように、前記第2のビット範囲の各ビットに前記上位ビットの入力データの各ビットを割り当て、
前記上位ビットの入力データを割り当てた後、残っている同一の前記変換単位に含まれる前記第2のデータで連続するように、前記第2のビット範囲の各ビットに前記下位ビットの入力データの各ビットを順次割り当てる、
ことを特徴とする請求項1に記載のデータ処理装置。
【請求項4】
前記第2のデータ生成部は、
前記入力データを割り当てた後、残っている前記第2のデータの各ビットに、同一の前記変換単位に含まれる直前の前記転送単位の前記第2のデータの同一のビットと同じデータをそれぞれ割り当てる、
ことを特徴とする請求項2または請求項3に記載のデータ処理装置。
【請求項5】
前記データ変換部は、
前記入力データを予め定められたビット数の上位ビットの入力データと、前記入力データの全てのビット数から前記上位ビットの入力データのビット数を減算したビット数の下位ビットの入力データとに分割する入力データ分割部を、
さらに備え、
前記第1のデータ生成部は、
前記第1のビット範囲の各ビットに前記上位ビットの入力データの各ビットを割り当て、
第2のデータ生成部は、
前記第2のビット範囲の各ビットに前記下位ビットの入力データの各ビットを割り当てる、
ことを特徴とする請求項1に記載のデータ処理装置。
【請求項6】
複数の入力データを、予め定められたビット数のデータバスと同じビット数の変換データに変換し、1つの前記変換データを1つの転送単位とし、予め定められた数の前記転送単位を1つの変換単位として、前記変換単位毎に順次転送されてきた変換データを順次逆変換して、複数の元の前記入力データに復元するデータ逆変換部、
を備え、
前記データ逆変換部は、
前記データバスのバス幅が、予め定めた第1のビット数からなる第1のビット範囲と、前記データバスの全てのビット数から前記第1のビット数を減算した第2のビット数からなる第2のビット範囲とに分割され、複数の前記入力データにおいて同じ種類の情報を持つ前記入力データの同一のビットが、前記データバスの同一のビットで連続して転送されるように、予め定められた第1の数の入力データを前記第1のビット範囲に割り当てた第1のデータと、前記第1のデータに割り当てられていない前記入力データの内、予め定められた第2の数の入力データを前記第2のビット範囲に割り当てた第2のデータと、を含む前記変換データを、前記第1のデータと前記第2のデータとに順次分割するデータ分割部と、
前記第1のデータに含まれる前記第1の数の前記入力データを、それぞれの前記入力データに分離する第1のデータ復元部と、
前記第2のデータに含まれる前記第2の数の前記入力データを、それぞれの前記入力データに分離する第2のデータ復元部と、
前記分離されたそれぞれの前記入力データを選択するデータ選択部と、
を具備する、
ことを特徴とするデータ処理装置。
【請求項7】
前記第2のデータは、
同一の前記変換単位に含まれる複数の前記転送単位の前記第2のデータ内で連続するように、前記第2のビット範囲の各ビットに前記第2の数の前記入力データの各ビットが順次割り当てられている、
ことを特徴とする請求項6に記載のデータ処理装置。
【請求項8】
前記第2のデータは、
前記第2の数の前記入力データのそれぞれが、前記第2のビット数の上位ビットの入力データと、前記入力データの全てのビット数から前記上位ビットの入力データのビット数を減算したビット数の下位ビットの入力データとに分割され、
該分割された上位ビットの入力データの内、同じ種類の情報を持つ2つの前記上位ビットの入力データの同一の各ビットが、同一の前記変換単位に含まれる連続する2つの前記転送単位の前記第2のビット範囲の同一の各ビットに割り当てられ、
該分割された下位ビットの入力データの各ビットが、前記上位ビットの入力データの各ビットに割り当てられた後、残っている同一の前記変換単位に含まれる前記第2のビット範囲の各ビットに、前記第2のビット範囲で連続するように順次割り当てられている、
ことを特徴とする請求項6に記載のデータ処理装置。
【請求項9】
前記第2のデータは、
同一の前記変換単位に含まれる直前の前記転送単位の前記第2のデータの同一のビットと同じデータが割り当てられている、
ことを特徴とする請求項7または請求項8に記載のデータ処理装置。
【請求項10】
前記データ逆変換部は、
前記第1のビット範囲の各ビットに割り当てられた前記入力データの予め定められたビット数の上位ビットの入力データと、前記第2のビット範囲の各ビットに割り当てられた前記入力データの全てのビット数から前記上位ビットの入力データのビット数を減算したビット数の下位ビットの入力データとを結合する入力データ結合部を、
さらに備え、
前記データ選択部は、
前記結合されたそれぞれの前記入力データを選択する、
ことを特徴とする請求項6に記載のデータ処理装置。
【請求項11】
順次入力された複数の入力データを、予め定められたビット数のデータバスと同じビット数の変換データに変換して順次転送する際に、1つの前記変換データを1つの転送単位とし、予め定められた数の前記転送単位を1つの変換単位として、前記入力データを前記変換単位毎に配置するデータ変換ステップ、
を含み、
前記データ変換ステップは、
前記データバスのバス幅を、予め定めた第1のビット数からなる第1のビット範囲と、前記データバスの全てのビット数から前記第1のビット数を減算した第2のビット数からなる第2のビット範囲とに分割し、複数の前記入力データにおいて同じ種類の情報を持つ前記入力データの同一のビットが、前記データバスの同一のビットで連続して転送されるように、予め定められた第1の数の入力データを前記第1のビット範囲に割り当てた第1のデータを順次生成する第1のデータ生成ステップと、
前記第1のデータに割り当てられていない前記入力データの内、予め定められた第2の数の入力データを前記第2のビット範囲に割り当てた第2のデータを生成する第2のデータ生成ステップと、
前記第1のデータと前記第2のデータとを結合して、前記データバスのバス幅のビット数を持つ前記変換データを生成するデータ結合ステップと、
を含む、
ことを特徴とするデータ処理方法。
【請求項12】
複数の入力データを、予め定められたビット数のデータバスと同じビット数の変換データに変換し、1つの前記変換データを1つの転送単位とし、予め定められた数の前記転送単位を1つの変換単位として、前記変換単位毎に順次転送されてきた変換データを順次逆変換して、複数の元の前記入力データに復元するデータ逆変換ステップ、
を含み、
前記データ逆変換ステップは、
前記データバスのバス幅が、予め定めた第1のビット数からなる第1のビット範囲と、前記データバスの全てのビット数から前記第1のビット数を減算した第2のビット数からなる第2のビット範囲とに分割され、複数の前記入力データにおいて同じ種類の情報を持つ前記入力データの同一のビットが、前記データバスの同一のビットで連続して転送されるように、予め定められた第1の数の入力データを前記第1のビット範囲に割り当てた第1のデータと、前記第1のデータに割り当てられていない前記入力データの内、予め定められた第2の数の入力データを前記第2のビット範囲に割り当てた第2のデータと、を含む前記変換データを、前記第1のデータと前記第2のデータとに順次分割するデータ分割ステップと、
前記第1のデータに含まれる前記第1の数の前記入力データを、それぞれの前記入力データに分離する第1のデータ復元ステップと、
前記第2のデータに含まれる前記第2の数の前記入力データを、それぞれの前記入力データに分離する第2のデータ復元ステップと、
前記分離されたそれぞれの前記入力データを選択するデータ選択ステップと、
を含む、
ことを特徴とするデータ処理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate


【公開番号】特開2012−203542(P2012−203542A)
【公開日】平成24年10月22日(2012.10.22)
【国際特許分類】
【出願番号】特願2011−66058(P2011−66058)
【出願日】平成23年3月24日(2011.3.24)
【出願人】(000000376)オリンパス株式会社 (11,466)
【Fターム(参考)】