(57)【要約】【課題】２つ以上の異なるデータ形式のチャンクを含むデータユニットをデインターリーブするための改良されたシステム及び方法を提供すること。【解決手段】装置ＭＰＵ及びＤＭＡハードウェアは、両方とも、圧縮データ及び非圧縮データの両方のチャンクを含むデータユニットをデインターリーブするのに使用される。装置ＭＰＵは、インターリーブされたデータのバッファから圧縮データのバッファへ圧縮データを転送するのに使用され、一方、ＤＭＡハードウェアは、インターリーブされたデータのバッファから圧縮データのバッファへ非圧縮データを転送するのに使用される。ＭＰＵ及びＤＭＡハードウェアの両方を使用することにより、データ転送プロセスの全体的な効率が改善される。【選択図】図６
2009530890.tif 000002
【特許請求の範囲】
【請求項１】
第１形式の複数のデータチャンク及び第２形式の複数のデータチャンクを含むインターリーブされたデータユニットを処理する方法において、
マイクロプロセッサユニットを使用して、前記データユニットにおける第１形式の第１データチャンクを第１バッファへコピーするステップと、
直接メモリアクセスハードウェアを使用して、前記データユニットにおける第２形式の第１データチャンクを第２バッファへコピーするステップと、
前記第１形式の第１データチャンクのコピーが完了したときに、前記マイクロプロセッサユニットを使用して、前記データユニットにおける前記第１形式の次のデータチャンクを前記第１バッファへコピーするステップと、
前記第２形式の第１データチャンクのコピーが完了した後に、前記直接メモリアクセスハードウェアを使用して、前記データユニットにおける前記第２形式の次のデータチャンクを前記第２バッファへコピーするステップと、
前記データユニットの全てのデータチャンクがコピーされるまで、前記マイクロプロセッサユニット及び前記直接メモリアクセスハードウェアを使用して、前記データユニットの第１形式及び第２形式の後続データチャンクを、各々、前記第１バッファ及び第２バッファへコピーし続けるステップと、
を備えた方法。
【請求項２】
前記第１形式の前記複数のデータチャンクは、圧縮データのチャンクを含む、請求項１に記載の方法。
【請求項３】
前記第２形式の前記複数のデータチャンクは、非圧縮データのチャンクを含む、請求項２に記載の方法。
【請求項４】
前記非圧縮データのチャンクは、映像プレビューデータを含む、請求項３に記載の方法。
【請求項５】
前記データユニットにおける前記第２形式の全てのデータチャンクが前記第２バッファへコピーされた後に、前記映像プレビューデータを使用して、映像をユーザへ表示するステップを更に備えた、請求項４に記載の方法。
【請求項６】
前記データユニットにおける第１形式のデータチャンクを第１バッファへコピーする前記ステップは、ＭＰＵを使用して、前記第１形式の次の非コピーデータチャンクが始まる場所を指示するマーカーをサーチすることを含む、請求項２に記載の方法。
【請求項７】
前記第１形式及び第２形式の複数のデータチャンクが、インターリーブされたデータのバッファからコピーされる、請求項１に記載の方法。
【請求項８】
前記インターリーブされたデータのバッファは、第１データバッファを含み、前記第２形式の個々のデータチャンクは、前記第１形式のデータチャンクのコピー中に前記インターリーブされたデータのバッファにオーバーライトされる、請求項７に記載の方法。
【請求項９】
前記データユニットは、カメラモジュールによる映像の捕獲から発生される、請求項１に記載の方法。
【請求項１０】
前記第１形式の複数のデータチャンクは、非均一長さのデータのチャンクを含む、請求項１に記載の方法。
【請求項１１】
第１形式の複数のデータチャンク及び第２形式の複数のデータチャンクを含むインターリーブされたデータユニットを処理するためのコンピュータプログラム製品において、
マイクロプロセッサユニットを使用して、前記データユニットにおける第１形式の第１データチャンクを第１バッファへコピーするためのコンピュータコードと、
直接メモリアクセスハードウェアを使用して、前記データユニットにおける第２形式の第１データチャンクを第２バッファへコピーするためのコンピュータコードと、
前記第１形式の第１データチャンクのコピーが完了したときに、前記マイクロプロセッサユニットを使用して、前記データユニットにおける前記第１形式の次のデータチャンクを前記第１バッファへコピーするためのコンピュータコードと、
前記第２形式の第１データチャンクのコピーが完了した後に、前記直接メモリアクセスハードウェアを使用して、前記データユニットにおける前記第２形式の次のデータチャンクを前記第２バッファへコピーするためのコンピュータコードと、
前記データユニットの全てのデータチャンクがコピーされるまで、前記マイクロプロセッサユニット及び前記直接メモリアクセスハードウェアを使用して、前記データユニットの第１形式及び第２形式の後続データチャンクを、各々、前記第１バッファ及び第２バッファへコピーし続けるためのコンピュータコードと、
を備えたコンピュータプログラム製品。
【請求項１２】
前記第１形式の前記複数のデータチャンクは、圧縮データのチャンクを含む、請求項１１に記載のコンピュータプログラム製品。
【請求項１３】
前記第２形式の前記複数のデータチャンクは、非圧縮データのチャンクを含む、請求項１２に記載のコンピュータプログラム製品。
【請求項１４】
前記データユニットにおける前記第２形式の全てのデータチャンクが前記第２バッファへコピーされた後に、前記非圧縮データを使用して、映像をユーザへ表示するためのコンピュータコードを更に備えた、請求項１３に記載のコンピュータプログラム製品。
【請求項１５】
前記データユニットにおける第１形式のデータチャンクを第１バッファへコピーすることは、ＭＰＵを使用して、前記第１形式の次の非コピーのデータチャンクが始まる場所を指示するマーカーをサーチすることを含む、請求項１１に記載のコンピュータプログラム製品。
【請求項１６】
前記第１形式及び第２形式の複数のデータチャンクは、インターリーブされたデータのバッファからコピーされる、請求項１１に記載のコンピュータプログラム製品。
【請求項１７】
前記インターリーブされたデータのバッファは、第１データバッファを含み、前記第２形式の個々のデータチャンクは、前記第１形式のデータチャンクのコピー中に前記インターリーブされたデータのバッファにオーバーライトされる、請求項１６に記載のコンピュータプログラム製品。
【請求項１８】
マイクロプロセッサユニットと、
前記マイクロプロセッサユニットに作動的に接続され、第１バッファ及び第２バッファを含むメモリユニットと、
前記メモリユニットに作動的に接続された直接メモリアクセスハードウェアと、
を備え、前記メモリユニットは、第１形式の複数のデータチャンク及び第２形式の複数のデータチャンクを含むインターリーブされたデータユニットを処理するためのコンピュータプログラム製品を備え、該コンピュータプログラム製品は、
前記マイクロプロセッサユニットを使用して、前記データユニットにおける第１形式の第１データチャンクを第１バッファへコピーするためのコンピュータコードと、
前記直接メモリアクセスハードウェアを使用して、前記データユニットにおける第２形式の第１データチャンクを第２バッファへコピーするためのコンピュータコードと、
前記第１形式の第１データチャンクのコピーが完了したときに、前記マイクロプロセッサユニットを使用して、前記データユニットにおける前記第１形式の次のデータチャンクを前記第１バッファへコピーするためのコンピュータコードと、
前記第２形式の第１データチャンクのコピーが完了した後に、前記直接メモリアクセスハードウェアを使用して、前記データユニットにおける前記第２形式の次のデータチャンクを前記第２バッファへコピーするためのコンピュータコードと、
前記データユニットの全てのデータチャンクがコピーされるまで、前記マイクロプロセッサユニット及び前記直接メモリアクセスハードウェアを使用して、前記データユニットの第１形式及び第２形式の後続データチャンクを、各々、前記第１バッファ及び第２バッファへコピーし続けるためのコンピュータコードと、
を含むものである、電子装置。
【請求項１９】
前記第１形式の複数のデータチャンクは、圧縮データのチャンクを含む、請求項１８に記載の電子装置。
【請求項２０】
前記第２形式の複数のデータチャンクは、非圧縮データのチャンクを含む、請求項１９に記載の電子装置。
【請求項２１】
前記コンピュータプログラム製品は、前記データユニットにおける前記第２形式の全てのデータチャンクが前記第２バッファへコピーされた後に、前記非圧縮データを使用して、映像をユーザへ表示するためのコンピュータコードを更に備えた、請求項２０に記載の電子装置。
【請求項２２】
前記データユニットにおける第１形式のデータチャンクを第１バッファへコピーすることは、ＭＰＵを使用して、前記第１形式の次の非コピーのデータチャンクが始まる場所を指示するマーカーをサーチすることを含む、請求項１８に記載の電子装置。
【請求項２３】
前記第１形式及び第２形式の複数のデータチャンクは、インターリーブされたデータのバッファからコピーされる、請求項１８に記載の電子装置。
【請求項２４】
前記インターリーブされたデータのバッファは、第１データバッファを含み、前記第２形式の個々のデータチャンクは、前記第１形式のデータチャンクのコピー中に前記インターリーブされたデータのバッファにオーバーライトされる、請求項２３に記載の電子装置。
【請求項２５】
マイクロプロセッサ部分と、
前記マイクロプロセッサ部分に作動的に接続され、第１バッファ及び第２バッファを含むメモリ部分と、
前記メモリ部分に作動的に接続された直接メモリアクセスハードウェア部分と、
を備え、前記メモリ部分は、第１形式の複数のデータチャンク及び第２形式の複数のデータチャンクを含むインターリーブされたデータユニットを処理するためのコンピュータプログラム製品を備え、該コンピュータプログラム製品は、
前記マイクロプロセッサ部分を使用して、前記データユニットにおける第１形式の第１データチャンクを第１バッファへコピーするためのコンピュータコードと、
前記直接メモリアクセスハードウェア部分を使用して、データユニットにおける第２形式の第１データチャンクを第２バッファへコピーするためのコンピュータコードと、
前記第１形式の第１データチャンクのコピーが完了したときに、前記マイクロプロセッサ部分を使用して、前記データユニットにおける前記第１形式の次のデータチャンクを前記第１バッファへコピーするためのコンピュータコードと、
前記第２形式の第１データチャンクのコピーが完了した後に、前記直接メモリアクセスハードウェア部分を使用して、前記データユニットにおける前記第２形式の次のデータチャンクを前記第２バッファへコピーするためのコンピュータコードと、
前記データユニットの全てのデータチャンクがコピーされるまで、前記マイクロプロセッサ部分及び前記直接メモリアクセスハードウェア部分を使用して、前記データユニットの第１形式及び第２形式の後続データチャンクを、各々、前記第１バッファ及び第２バッファへコピーし続けるためのコンピュータコードと、
を含むものである、集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、電子装置におけるデータの処理に係る。より詳細には、本発明は、カメラモジュールを内蔵した移動電話のような移動電子装置において異なる形式のデータをデインターリーブすることに係る。
【背景技術】
【０００２】
近年、移動電話には、内蔵カメラモジュールが益々装備されてきている。これらカメラモジュールは、ユーザがデジタル写真を撮ってそれを友人や家族に素早く送信できるようにする。
【０００３】
移動電話又は他の電子装置の一部分である一般のデジタルカメラシステムが図１に１０で示されている。このデジタルカメラ１０は、少なくとも１つのレンズ１２及び少なくとも１つの映像センサ１８を収容するハウジング１１を備え、映像センサ１８は、メモリユニット１４及びプロセッサ又はコントローラ１６に作動的に接続され、これらは、両方とも、カメラモジュール１０の外部であって、且つカメラモジュール１０が収容された移動電話又は他の電子装置の内部に配置される。メモリユニット１４は、デジタル映像を記憶すると共に、デジタルカメラ１０の種々の機能を遂行し且つ本発明を実施するためのコンピュータソフトウェアを記憶するのに使用できる。映像センサ１８は、電荷結合装置（ＣＣＤ）、相補的金属酸化物半導体（ＣＭＯＳ）、又は別のシステムである。
【０００４】
移動電話に使用されるカメラモジュールは、通常、多くの理由で、小型で安価に設計される。その結果として、典型的な映像センサ１８は、カメラモジュール１０内にフレームメモリを含んでいない。むしろ、捕獲された映像からの映像データは、それがセンサから読み取られるや否や、電話エンジンへ出力されねばならない。さもなければ、映像データが失われてしまう。映像センサ１８は、典型的に、ラインごとの形態で読み取られ、そしてデータは、同じ順序で電話エンジンへ送信され、そこには、データを記憶するに充分なメモリが存在する。
【０００５】
カメラモジュール１０と電話エンジンとの間で映像データを送信するのに必要な帯域巾を減少するために、映像センサ１８は、しばしば、データを更に送信する前にそれを圧縮する。電話エンジンにおける処理要件を緩和するために、多くのカメラモジュールは、この段階では、ＪＰＥＧ圧縮を使用する。というのは、映像は、おそらく、いずれの場合もＪＰＥＧフォーマットで終了し、電話エンジンがＪＰＥＧエンコーディングに付加的な時間を費やす必要がないからである。
【０００６】
利用性の観点から、カメラ映像を処理してメモリにセーブするだけでは不充分である。というのは、エンドユーザは、例えば、映像が満足のいくクオリティであるかどうか判断するために、撮影したばかりの映像を電話のスクリーンで見たいからである。又、ユーザの観点から、プレビュー映像をユーザに示すのに付加的な遅延がないことも望まれる。
【０００７】
しかしながら、不都合にも、圧縮データからプレビュー映像を作るのは、即座の動作ではなく、ある程度の付加的な時間がかかることは避けられない。この問題に対して多数の異なる潜在的な解決策があるが、その各々は、それ自身の重大な欠点を有している。１つのこのような解決策は、電話のディスプレイに表示されるべき小さなプレビュー映像の素早く構成できるフォーマットで捕獲映像のデータをカメラモジュール１０が出力できるようにすることを含む。実際に、これは、映像データに対して非圧縮フォーマットを使用することを意味する。しかしながら、この解決策の問題は、高解像度のカメラでは、データを転送するに充分な帯域巾が取れないことである。
【０００８】
この問題に対する別の潜在的な解決策は、同じ映像を、最初は、表示に適したサイズの映像として、次いで、セーブする目的で全解像度映像として、２回、送信できるに充分なフレームメモリを含むカメラモジュールを使用することである。この解決策に伴う問題は、この解決策を実際に実施するには付加的なメモリが単純に高過ぎることである。
【０００９】
上述した問題に対する別の潜在的な解決策は、セーブするための圧縮映像と、見るための非圧縮のプレビュー映像とをインターリーブすることを含む。たとえ全映像フレームのためのメモリがカメラモジュールになくても、カメラ内のＪＰＥＧエンコーダは、８ラインの映像のためのメモリがあることを要求する。これは、圧縮された全解像度の映像データ内に非圧縮のプレビュー映像データをインターリーブすることを可能にする。プレビューデータは、移動電話のディスプレイに意図されたものであるから（その解像度は、カメラセンサの解像度より実質的に低い）、ダウンスケールされたプレビュー映像をインターリーブしても、帯域巾要件を多量に増加することはない。２つの形式のデータがチャンクに分割されて順次に送信されるインターリーブのプロセスが図２に示されている。図２において、白及び黒のダイヤモンドは、各形式のチャンクの開始をマークする特定のマーカーを表す。実際に、これらマーカーは、データそれ自体に現れることがないように選択されねばならない。或いは又、チャンクの長さに関する情報を各マーカーに含ませることもできる。しかしながら、例えば、ＪＰＥＧエンコーディングでは、エンコーディングが行われる前に出力データのサイズを知ることは一般的に不可能である。それ故、カメラは、この解決策のための付加的なバッファを装備しなければならない。
【００１０】
１つの映像フレームの全てのデータを送信するには、プレビューデータ及び圧縮データの多数のチャンクを送信する必要がある。１つのチャンクは、カメラモジュールが所与の時間にバッファできるのと同程度の情報を含むことができる。例えば、ＪＰＥＧエンコーダが、ある種のバッファに８本のラインが得られねばならないことを要求する場合には、少なくともこれら８本のラインのためのデータを含むチャンクを使用することができる。カメラモジュールには、ある付加的なバッファ能力があってもよいことに注意されたい。
【００１１】
又、図２は、どのようにしてプレビュー映像データのチャンクが常に同じ長さを有する一方、圧縮データチャンクの長さが変化し得るかを示している。これは、圧縮効率が映像コンテンツに依存し、１つの単一の映像内でも変化するためである。他方、プレビューデータは、非圧縮であり、それ故、常に同じ量のプレビューデータを１つのチャンクにおいて送信することになる。この理由で、プレビューデータチャンクの後のマーカー（圧縮データチャンクの始めにおける）は、必須のものではない。というのは、プレビューデータチャンクの長さが常に既知だからである。
【００１２】
圧縮及び非圧縮データのインターリーブは、上述した他の潜在的な解決策で生じる多くの問題に対処するが、依然として顕著な不備がある。この解決策では、記憶の目的で圧縮データが得られ、表示の目的でプレビューデータが得られたとしても、インターリーブされたデータは、それを使用する前に、先ずデインターリーブされねばならない。換言すれば、圧縮データをプレビューデータから抽出しなければならないか、或いはプレビューデータを圧縮データから抽出した後に、圧縮データをセーブし、プレビューデータを見なければならない。
【００１３】
カメラモジュールを内蔵したほとんどの従来の移動電話では、電話エンジン内のメモリに全ての映像データが受け取られると、それが電話プロセッサによって処理され又は更にコピーされて、映像内に含まれた全てのデータが順次にアドレスされるようにする。インターリーブされたデータの場合には、データが処理の際に２つのバッファの１つにコピーされる。一方のバッファは、プレビュー（非圧縮）データの記憶に専用であり、他方のバッファは、圧縮データの記憶に専用である。実際には、オリジナルのインターリーブされたデータがもはや必要とされず、それにオーバーライトできる場合には、これら２つのバッファの一方がオリジナルバッファと同じでもよいことに注意されたい。しかしながら、このプロセスは、時間及び処理パワーの両方を消費する。
【発明の開示】
【発明が解決しようとする課題】
【００１４】
それ故、より迅速で且つ効率的な送信を可能にすると共に、移動電話又は他の電子装置において圧縮及び非圧縮の両映像データを得られるようにするシステムを開発することが望まれる。
【課題を解決するための手段】
【００１５】
本発明は、マイクロプロセッサユニット（ＭＰＵ）及び直接メモリアクセス（ＤＭＡ）ハードウェアの組合せを使用することによりインターリーブされたデータを効率的にデインターリーブするためのシステム及び方法を提供する。データを同時に処理するためにＭＰＵ及びＤＭＡの両ハードウェアが使用されるので、全体的な処理時間は、圧縮データ及びプレビューデータのチャンクの相対的な長さに基づいて著しく減少することができる。
【００１６】
本発明は、従来のシステムに勝る多数の効果を発揮する。本発明では、ＭＰＵは、プレビューデータを処理する必要が全くなく、サイズが前もって分かっている全てのプレビューデータチャンクをスキップすることができる。その結果、ＭＰＵは、システムにおいて他の機能を遂行するための時間をより多く有する。更に、ＤＭＡハードウェア及びＭＰＵは、両方とも、同時にデータを処理するので、デインターリーブ動作は、慣習的なＭＰＵのみの解決策より非常に迅速に終了する。更に、ＤＭＡハードウェアが適切に構成されると、オペレーション中の付加的な構成は、ほとんど必要ない。ＤＭＡハードウェアに基づく最適な状況では、新たな読み取りアドレスを指示し、データの転送を再び可能にするだけでよい。本発明は、広範な様々な形式のインターリーブされたデータに関連して使用することができ、その１つの形式は、固定長さを有し、映像データのみに限定されない。
【００１７】
本発明のこれら及び他の効果並びに特徴は、その動作の編成及び態様と共に、多数の図面にわたり同じ部分が同じ番号で示された添付図面を参照した以下の詳細な説明から明らかとなろう。
【発明を実施するための最良の形態】
【００１８】
本発明は、ＭＰＵ及びＤＭＡ処理能力の組合せを使用することにより、インターリーブされた圧縮及び非圧縮映像データをデインターリーブするシステムを提供する。ＭＰＵ及びＤＭＡハードウェアは、データを同時に処理するので、全体的な処理時間は、圧縮データ及びプレビューデータのチャンクの相対的な長さに基づいて５０％以上減少することができる。
【００１９】
図３及び４は、本発明を実施できる１つの代表的な移動電話１１２を示す。しかしながら、本発明は、任意の形式の電子装置に限定されず、パーソナルデジタルアシスタント、パーソナルコンピュータ及び他の装置のような装置に合体できることに注意するのが重要である。本発明は、種々様々な移動電話１１２に合体できることを理解されたい。図３及び４の移動電話１１２は、ハウジング１３０、液晶ディスプレイの形態のディスプレイ１３２、キーパッド１３４、マイクロホン１３６、イヤホン１３８、バッテリ１４０、赤外線ポート１４２、アンテナ１４４、本発明の一実施形態によるユニバーサル集積回路カード（ＵＩＣＣ）の形態のスマートカード１４６、カードリーダー１４８、無線インターフェイス回路１５２、コーデック回路１５４、コントローラ１６、及びメモリユニット１４を含む。個々の回路及びエレメントは、全て、例えば、ノキアの範囲の移動電話においてこの技術で良く知られた形式のものである。
【００２０】
図５は、本発明の一実施形態に含まれる種々のコンポーネントを示す図である。図５は、インターリーブされたデータのバッファ２００、圧縮データのバッファ２１０、及び非圧縮データのバッファ２２０を示す。圧縮データのバッファ２１０又は非圧縮データのバッファ２２０は、オリジナルデータが送信後にもはや必要なくオーバーライトできる場合には、インターリーブされたデータのバッファ２００と同じメモリエリアを使用してもよいことに注意されたい。インターリーブされたデータのバッファ２００、圧縮データのバッファ２１０及び非圧縮データのバッファ２２０の各々は、図３及び４に示す電子装置のメモリ１５８に含ませることができる。又、システムは、ＭＰＵ２３０及びＤＭＡハードウェア２４０も備えている。図４に示すシステムのコントローラ１６を構成するＭＰＵ２３０は、システムソフトウェアを実行すると共に、システムソフトウェアにより指定されるオペレーションを遂行するのに使用される。ＤＭＡハードウェア２４０は、ＭＰＵ２３０とは独立してメモリ内のある場所からメモリ内の別の場所へデータを移動できるハードウェアコントローラである。ＭＰＵ２３０、ＤＭＡハードウェア２４０、及びメモリユニット１４は、個別のコンポーネントで構成されてもよいし、又は単一の集積回路へと結合されてもよいことに注意されたい。
【００２１】
図６は、本発明の一実施形態を示すフローチャートである。図６のステップ３００は、データユニットをデインターリーブするスタート点を表す。この点において、映像が捕獲され、インターリーブされたデータのバッファ２００は、オリジナルのインターリーブされたデータユニットを含む。従って、圧縮データのバッファ２１０及び非圧縮データのバッファ２２０は、圧縮データ及びプレビューデータを連結形態で記憶するために予約されている。又、オペレーション中に変化することのないＤＭＡの構成もこの点において遂行される。
【００２２】
図６のステップ３１０において、データユニットが圧縮データで開始されると仮定すれば、ＭＰＵ２３０は、データユニットの開始からインターリーブされたデータユニットの検査を開始する。ＭＰＵ２３０は、次のプレビューデータチャンクが開始する場所を指示するマーカーをサーチする。この動作を遂行する間に、ＭＰＵ２３０は、プレビューデータの開始を指示するマーカーまで（該マーカーは含まず）、圧縮データを圧縮データのバッファ２１０へコピーする。データユニットがプレビューデータで開始される場合には、このステップがスキップされることに注意されたい。
【００２３】
ステップ３２０において、ＤＭＡハードウェア２４０は、プレビューデータの新たに見つかった開始から非圧縮データのバッファ２２０へのメモリ対メモリコピーを遂行するために初期化される。このメモリコピーにはマーカーが含まれないことに注意されたい。ＤＭＡ転送のサイズは、それがプレビューデータチャンクの固定サイズであるので、既知である。
【００２４】
ステップ３３０では、ＤＭＡハードウェア２４０がバックグランドにおいてデータを転送するときに、ＭＰＵ２３０は、プレビューデータチャンクをスキップし（そのサイズが既知であるから）、そして今やスキップされたプレビューチャンクに続くデータの検査をスタートする。圧縮データに対する任意のマーカーが予想され見つかる場合、又は任意のマーカーは使用されず、処理すべきより多くのデータがある場合には、ＭＰＵ２３０は、プレビューデータのマーカーが見つかるまでデータの検査を続行する。この動作を遂行する間に、ＭＰＵ２３０は、圧縮データを圧縮データのバッファ２１０へコピーし、圧縮データのバッファ２１０へ以前に移動されたデータの直後にそれを入れる。
【００２５】
ステップ３４０では、ＤＭＡハードウェア２４０が、ステップ３２０でコピーされた映像データチャンクのコピーを終了しており、又はシステムがＤＭＡハードウェア２４０の状態を特にチェックし、そして転送が終了するまで待機する、と仮定することができる。前記事象のいずれかにおいて、ＤＭＡハードウェア２４０は、次のプレビューデータチャンクに対するメモリ対メモリコピーを遂行して、非圧縮データのバッファ２２０へデータをコピーし、非圧縮データのバッファ２２０へ以前に移動されたデータの直後にそれを入れるために、再初期化される。
【００２６】
ＤＭＡハードウェアは、データを素早く移動するように特に設計され、又、ＭＰＵは、それがコピーするデータを更に検査しなければならないので、ＤＭＡハードウェア２４０は、同じ時間周期に、ＭＰＵ２３０より多くのデータを処理できねばならないことに注意されたい。新たなＤＭＡ転送を開始すべき点においてＤＭＡ転送が終了しないおそれがある場合には、別の解決策は、２つ以上のＤＭＡチャンネルを使用して、異なるチャンネルに対して連続するＤＭＡ要求が常になされるようにすることを含む。
【００２７】
ステップ３５０において、全データユニットがコピーされたかどうか決定する。全データユニットがコピーされた場合には、ステップ３６０においてプレビュー映像を表示することができ、そして圧縮データのバッファ２１０に圧縮データがセーブされる。全データユニットがコピーされない場合には、全データユニットが処理されて、各々、圧縮データのバッファ２１０及び非圧縮データのバッファ２２０に入れられるまで、ステップ３３０及び３４０が繰り返される。
【００２８】
上述したように、図６に示すプロセスは、圧縮データのバッファ２１０がインターリーブされたデータのバッファ２００と同じである状況においても機能できる。データユニットが図２に示すように順序付けされた場合には、ＤＭＡハードウェア２４０がそのデータチャンクを非圧縮データのバッファ２２０へ転送するのとほぼ同時に、ＭＰＵ２３０が第１のプレビューデータチャンクをオーバーライトし始めることに注意されたい。しかしながら、ほとんどのケースでは、ＤＭＡハードウェア２４０がデータを盲目的にコピーし、それを分析する時間を費やす必要がないので、ＤＭＡハードウェア２４０は、ＭＰＵ２３０より高速で動作すると安全に仮定することができる。それ故、ＤＭＡハードウェア２４０は、プレビューデータを、それが次のチャンクからの圧縮データでオーバーライトされる前に読み取ることができる。
【００２９】
ＤＭＡ転送のサイズは常に同じであるから、新たなデータ転送の初期化は、最初の構成がなされた後に２つのアクションしか必要としない。第１のアクションは、ＤＭＡ読み取りスタートアドレスを構成することであり、第２のアクションは、ＤＭＡ転送を可能にすることである。これは、ＤＭＡハードウェア２４０が、転送の進行中に自動的に増加される書き込みポインタを含むと仮定する。それ故、書き込みポインタは、新たなプレビューデータチャンクがコピーされるときに、非圧縮データのバッファ２２０内の正しい位置を自動的に指す。
【００３０】
本発明の別の実施形態では、３つ以上の異なる形式のデータチャンクがある。この状況では、ＭＰＵ２３０は、サイズが変化する全てのチャンクを取り扱うことができ、一方、ＤＭＡハードウェア２４０は、全ての固定サイズチャンクの処理を続ける。固定長さをもつ２つ以上の形式のチャンクがある場合には、ＤＭＡハードウェア２４０に、２つ以上のＤＭＡチャンネルを使用することができる。これら複数のチャンネルは、各ＤＭＡチャンネルが他のチャンネルとは独立して動作できるので、次の転送を開始できる前に１つのＤＭＡ転送の完了を待機する必要がないことを保証するために使用される。
【００３１】
広範な種々のチャンクマーカーを本発明に関連して使用でき、且つ本発明は、特定形式のマーカーに制限されないことに注意されたい。更に、図６に示すプロセスにおいて各チャンクの始めにチャンクマーカーが使用されたとしても、このマーカーは、各チャンクの終り、又は各チャンクの始めと終わりの両方に使用することもできる。
【００３２】
本発明は、ネットワーク環境内でコンピュータにより実行されるプログラムコードのようなコンピュータ実行可能なインストラクションを含むプログラム製品により一実施形態で具現化される方法ステップの一般的状況において説明された。
【００３３】
一般に、プログラムモジュールは、特定のタスクを実行するか又は特定のアブストラクトデータ形式を具現化するルーチン、プログラム、オブジェクト、コンポーネント、データ構造、等を含む。コンピュータ実行可能なインストラクション、関連データ構造、及びプログラムモジュールは、ここに開示する方法のステップを実行するためのプログラムコードの例を表わす。このような実行可能なインストラクション又は関連データ構造の特定シーケンスは、このようなステップにおいて説明されるファンクションを具現化するための対応するアクションの例を示す。
【００３４】
本発明のソフトウェア及びウェブの具現化は、種々のデータベースサーチステップ、相関ステップ、比較ステップ、及び判断ステップを実行するためのルールベースのロジック及び他のロジックを伴う標準的なプログラミング技術で達成することができる。又、この説明及び特許請求の範囲で使用する「コンポーネント」及び「モジュール」という語は、１ライン以上のソフトウェアコードを使用する具現化、及び／又はハードウェア具現化、及び／又は手動入力を受け取るための装置を包含することに注意されたい。
【００３５】
本発明の実施形態の以上の説明は、例示及び説明のためのものである。これは、本発明を余すところなく説明するものでもないし、又、ここに開示した正確な形態に制限するものでもなく、前記教示に鑑み又は本発明を実施することから、種々の変更や修正が可能であろう。前記実施形態は、本発明の原理及びその実際の応用を説明するために選択され、記述されたもので、当業者であれば、種々の実施形態において本発明を利用し、且つ意図された特定の用途に適するように種々の変更をなすことができるであろう。
【図面の簡単な説明】
【００３６】
【図１】一般的なデジタルカメラシステムの断面側面図である。
【図２】圧縮データ及び非圧縮映像プレビューデータの両方をどのようにインターリーブして映像センサから電話エンジンへ転送できるかを示す図である。
【図３】本発明の原理を合体できる電子装置の斜視図である。
【図４】図３の電子装置の回路を示す回路図である。
【図５】本発明の一実施形態に含まれる種々のコンポーネントを示す図である。
【図６】本発明の一実施形態を示すフローチャートである。
【図１】
2009530890.tif 000003
【図２】
2009530890.tif 000004
【図３】
2009530890.tif 000005
【図４】
2009530890.tif 000006
【図５】
2009530890.tif 000007
【図６】
2009530890.tif 000008
【国際調査報告】
2009530890.tif 000009
2009530890.tif 000010
2009530890.tif 000011