JP2009003632A - 画像処理システム - Google Patents

画像処理システム Download PDF

Info

Publication number
JP2009003632A
JP2009003632A JP2007162772A JP2007162772A JP2009003632A JP 2009003632 A JP2009003632 A JP 2009003632A JP 2007162772 A JP2007162772 A JP 2007162772A JP 2007162772 A JP2007162772 A JP 2007162772A JP 2009003632 A JP2009003632 A JP 2009003632A
Authority
JP
Japan
Prior art keywords
image processing
processing system
memory
memory space
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2007162772A
Other languages
English (en)
Inventor
Mika Nishigaki
美香 西垣
Masahiro Ogawa
雅裕 小川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Original Assignee
Panasonic Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp filed Critical Panasonic Corp
Priority to JP2007162772A priority Critical patent/JP2009003632A/ja
Publication of JP2009003632A publication Critical patent/JP2009003632A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Image Processing (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

【課題】デジタルカメラなど、画像処理を行うシステムでは、画像を一次記憶するための外部記憶装置としてDRAMが多く用いられている。しかし、DRAMは構造上、SRAMと比較してアクセス待ち時間が長いため、DRAMからのデータ転送にかかる時間が要因となり、画像処理速度が遅くなることが多い。
【解決手段】外部記憶装置13への書き込み、読み出しの制御を行うメモリコントローラ110と、外部記憶装置13に記憶されているデータを用いて処理を行うプロセッサ部140と、メモリコントローラ110とプロセッサ部140との間に配置され、外部記憶装置13とデータの転送を行う複数のメモリ空間151〜155と、これらのメモリ空間151〜155とプロセッサ部140との間に配置され、プロセッサ部140がアクセスするメモリ空間を切り替えるメモリ空間コントローラ160とを備える。
【選択図】図1

Description

本発明は、外部記憶装置とデータの転送を行うためのメモリ空間を備える、デジタルカメラなどの画像処理システムに関するものである。
デジタルカメラなど、画像処理を行うシステムでは、画像を一次記憶するための外部記憶装置としてDRAMが多く用いられている。しかし、DRAMは構造上、SRAMと比較してアクセス待ち時間が長いため、DRAMからのデータ転送にかかる時間が要因となり、画像処理速度が遅くなることが多い。
この問題を解決するため、外部記憶装置とプロセッサ部との間にメモリ空間を配置し、画像処理速度を高速化する方法が知られている。また、ヒット率を向上させるため、メモリ空間へ次に使用すると推測されるデータを先読みしておく機能も知られている。
ある従来技術によれば、キャッシュメモリへ先読みするデータのアドレスを、画像処理のパターンに応じて演算する。これにより、プロセッサ部にとって有用なデータを先読みできるため、ヒット率の向上が期待できる(特許文献1参照)。
また、外部記憶装置には画像データのみでなく、システムを制御するためのプログラムも配置されることが一般的である。画像処理の一部をプログラムで実装し、プロセッサ部が処理することもある。
特開2006−72832号公報
画像とプログラムとが共に外部記憶装置に配置されており、プロセッサ部でプログラムに記述された画像処理を行う場合、プログラムが配置されているアドレス領域へのアクセスと、画像データが配置されているアドレス領域へのアクセスとが発生し、プロセッサ部から外部記憶装置にアクセスするアドレスが規則的に変化しない。そのため、先読みアドレスをパターン化することが困難になり、先読み機能を使用しても、メモリ空間でのヒット率が向上せず、高速化を図ることができない。
本発明は、上記に鑑みてなされた発明であり、画像とプログラムとが共に外部記憶装置に配置されている場合でも、メモリ空間でのヒット率を向上させることを課題とする。
上記課題を解決するために、本発明の画像処理システムは、外部記憶装置への書き込み、読み出しの制御を行うメモリコントローラと、前記外部記憶装置に記憶されているプログラムを実行し、かつ前記外部記憶装置に記憶されているデータを用いて画像処理を行うプロセッサ部と、前記外部記憶装置に記憶されているデータを用いて処理を行うプロセッサ部と、前記メモリコントローラと前記プロセッサ部との間に配置され、前記外部記憶装置とデータの転送を行う複数のメモリ空間と、前記メモリ空間と前記プロセッサ部との間に配置され、識別情報をもとに、前記プロセッサ部がアクセスするメモリ空間を切り替えるメモリ空間コントローラとを備えたことを特徴とする。
更に、本発明の画像処理システムにおける前記識別情報は、前記プロセッサ部から前記メモリ空間コントローラに接続されるアドレス情報に付加するメモリ空間特定情報であることを特徴とする。
また、本発明の画像処理システムは、前記識別情報を用いて前記メモリ空間への先読み機能を制御することを特徴とする。
本発明によれば、プロセッサ部からのアクセスに応じてメモリ空間への先読みを効果的に制御できるため、ヒット率を向上させることが可能である。
以下、図面を参照して本発明の実施の形態について説明する。なお、以下で説明する実施の形態はあくまで一例であり、様々な改変を行うことが可能である。
《システム構成》
図1は、本発明に係る画像処理システムを備えた固体撮像装置の構成を示す図である。図1の固体撮像装置は、画像処理を行うDSP10と、画像取り込みのためのレンズ11及びイメージセンサ12と、画像やプログラムを一次記憶する外部記憶装置13とを備えている。
DSP10は、本発明に必要な構成要素として、外部記憶装置13へのデータの書き込み及び読み出しを行うメモリコントローラ110と、外部記憶装置13に記憶されるデータを用いて処理を行うプロセッサ部140と、プロセッサ部140とメモリコントローラ110との間に配置されてデータの受け渡しを行う5つのメモリ空間151〜155(以下、メモリ空間1〜5という。)からなるバッファメモリ150と、メモリ空間1〜5とプロセッサ部140との間に配置されてプロセッサ部140がアクセスするメモリ空間1〜5を切り替えるメモリ空間コントローラ160とがある。
そのほかに、図1中のDSP10は、イメージセンサ12からの出力データ等の入力画像を受け取り、所定のフォーマット(YCフォーマット等)へデータの変換処理を行う画像取り込み部100と、所定のフォーマット(JPEG等)への画像圧縮や、伸張を行う画像圧縮部120と、LCD又はTVモニタに画像を出力するための表示画像出力部130とを備えている。
プロセッサ部140からメモリ空間コントローラ160へは、外部記憶装置13へアクセスするためのアドレス情報を渡している。本実施の形態では、アドレス情報バスは32ビットで構成され、外部記憶装置13のアドレスは25ビットで表されるものとする。
メモリ空間コントローラ160は、プロセッサ部140がアクセスするメモリ空間1〜5を切り替える処理を行うが、詳細は後述する。
外部記憶装置13とDSP10との間で、連続アクセス可能なバイト数の単位をページと呼ぶ場合、メモリ空間1〜5は各々2ページのデータが記憶可能なメモリで構成されるものとする。本実施形態の構成では、1ページを16バイト単位とする。各ページは、下位4ビットが0000であるアドレスからスタートし、同じく下位4ビットが1111であるアドレスまでを同一ページと呼ぶ。
メモリコントローラ110は各メモリ空間1〜5をリード専用、リード/ライト共用、ライト専用と、用途を指定できるものとする。
プロセッサ部140からメモリ空間1〜5へのアクセス時にミスヒットが発生した場合、プロセッサ部140からのリクエストがあったアドレスを含むページを該当メモリ空間に転送する。このとき、当該メモリ空間の、更新タイミングが一番古いページにデータを転送する。
また、メモリコントローラ110は、メモリ空間1〜5上のプロセッサ部140がアクセスしていないページに、データを先読みする機能を備えている。先読み機能のオン/オフは、メモリ空間1〜5ごとにメモリコントローラ110に備えるレジスタで切り替えることができる。
また、メモリコントローラ110に備えるレジスタで、メモリ空間1〜5ごとに先読みアドレスの生成パターンを切り替えることができる。本実施形態では、先読みするアドレスの生成パターンは、連続アドレス先読み機能、オフセット先読み機能、ラインオフセット先読み機能の3つのパターンを備えている。
連続アドレス先読み機能は、プロセッサ部140がアクセスしているメモリ空間に存在する最終アドレス+1から1ページ分のデータを先読みする。当該メモリ空間でヒットしている間は先読みを続け、ミスヒットした場合は、該当ページのデータを読み出し、その後連続先読みを再開し、機能がオフになるまで先読みを行う。
オフセット先読み機能は、プロセッサ部140がアクセスしているメモリ空間に読み出したアドレスにオフセットを加算したページのデータを先読みする。オフセットはページ単位で指定する。当該メモリ空間でヒットしている間は、連続してオフセットを加算したページの先読みを続ける。ミスヒットした場合は、該当ページのデータを読み出し、その後、連続してオフセットを加算したページの先読みを続ける。
ラインオフセット先読み機能は、ラインオフセット先読み機能が選択されてから、最初にプロセッサ部140がアクセスしたページから、メモリコントローラ110に備えるラインオフセット指定レジスタで指定されるページ数分、連続先読みを行う。その後、連続先読みの最終ページにラインオフセットで指定されるページ数をオフセットとして加算したページの先読みを行い、そこからまたラインオフセットで指定されるページ数だけ連続先読みを行う。該当メモリ空間にヒットしている間はこの処理を繰り返し行う。当該メモリ空間でミスヒットが起こった場合、指定のページを外部記憶装置13から読み出し、最初の連続先読み処理に戻る。
また、外部記憶装置13への書き込み方式をメモリ空間1〜5ごとにライトスルー、ライトバックを指定できるものとする。ライトバック方式では、プロセッサ部140からライトアクセスがあった場合、該当メモリ空間のページ1にデータを書き込む。同一ページ内のアドレスへのアクセスであれば、ページ1にデータを書き込んでいく。16バイト全てのデータが更新されたら、ページ1のデータをページ2にコピーし、ページ2から外部記憶装置13への書き込みを行う。もし、16バイト全てのデータ更新がされる前に、異なるページへのアクセスが行われた場合も、それまでのページ1のデータをページ2にコピーし、外部記憶装置13への書き込みを行う。
図2は、本実施形態におけるプロセッサ部140からメモリ空間コントローラ160へ接続されるアドレスバスのビット割り当てを示す図である。アドレス情報バスの上位ビットを利用し、メモリ空間特定情報を識別情報として割り当てる。プロセッサ部140は、この識別情報を用いて、アクセスするメモリ空間を指定する。メモリ空間コントローラ160は、プロセッサ部140から外部記憶装置13へのアクセスリクエストがあったら、アドレス情報の解析を行い、識別情報で指定されたメモリ空間に、プロセッサ部140がアクセスを行うよう制御する。なお、処理形態に応じてメモリ空間1〜5のうちの所要数が用いられる。
《第1の処理形態》
図3は、第1の処理形態における外部記憶装置13に配置される画像データ及びプログラムのイメージ図である。外部記憶装置13上には、画像データ1(IMG1)、画像データ2(IMG2)、プロセッサ部140が行う処理が記述されたプログラムが配置され、プロセッサ部140が処理した結果の画像を格納する画像データ3(IMG3)の領域が確保されている。
画像のサイズはどちらもm画素×nラインであるとする。画像データは輝度成分(Y)と色成分(C)とで構成され、どちらも1ページにl画素分のデータを格納し、m画素分、つまり1ラインのY、Cはそれぞれk(=m/l)ページのデータで構成されるとする。本処理形態では、画像データは1ライン目のYデータ1〜m、Cデータ1〜m、2ライン目のY、C・・・、nライン目のY、Cの順に配置されるものとする。
プログラムには各画素のIMG1とIMG2のY、Cを用いて、所定の割合でデータを合成し、IMG3の画素を生成する処理が記述されている。画像の合成は、外部記憶装置13に配置されているデータ並び順、つまり1ライン目のYデータ1〜m、Cデータ1〜m・・・の順に演算していく。
ここでは4つのメモリ空間1〜4が使用され、合成処理を行うときに、メモリ空間1はIMG1のリード専用メモリ空間、メモリ空間2はIMG2のリード専用メモリ空間、メモリ空間3はプログラムのリード/ライトメモリ空間、メモリ空間4はIMG3のライトメモリ空間として使用するよう、アドレス情報を制御する。
本処理形態ではメモリ空間1〜3は先読みオン、連続先読み機能を利用するものとする。メモリ空間3はライトスルーであり、メモリ空間4はライトバック方式で外部記憶装置13へデータを書き込む。
ここで、IMG1のYデータのうち、yライン目のx画素のデータをIMG1_Y(x,y)と表すものとすると、プロセッサ部140は、IMG3_Y(x,y)を演算するときには、その処理を記述したプログラムをフェッチしながら、IMG1_Y(x,y)、IMG2_Y(x,y)へのアクセスを行う。
1ライン1画素目の演算を開始するとき、メモリ空間1のページ1には、IMG1_Y(1,1)〜IMG1_Y(l,1)のデータが、外部記憶装置13から読み出される。同様に、メモリ空間2のページ1にはIMG2_Y(1,1)〜IMG2_Y(l,1)が、メモリ空間3にはプログラムの1ページがそれぞれ読み出される。
また、連続先読み機能を利用するので、メモリコントローラ110は外部記憶装置13へのアクセスがない期間を利用し、各メモリ空間1、2、3のページ2に、それぞれページ1に格納されているデータの次のページが読み出される。
IMG3_Y(1,1)のデータ生成が完了すると、プロセッサ部140は、メモリ空間4を介して、外部記憶装置13にデータを書き込む処理を行う。メモリ空間4は、ライトバック方式が選択されているので、1ページ分のデータが書き込まれるまで外部記憶装置13への書き込みを待つ。つまりIMG3_Y(1,1)〜IMG3_Y(l,1)のデータ生成が完了した段階で、メモリ空間4から外部記憶装置13への書き込みが行われる。
l画素分の演算が終了すると、プロセッサ部140はIMG1_Y(l+1,1)、IMG2_Y(l+1,1)のデータが必要になるが、連続先読み機能を利用してメモリ空間1、2のページ2にそれぞれ読み出されているため、プロセッサ部140は、メモリ空間1、2へのアクセス時間のみで処理を継続することができる。
また、このタイミングで、メモリ空間1、2のページ1には、それぞれIMG1_Y(2l+1,1)〜IMG1_Y(3l,1)のデータが読み出されており、その後の演算もメモリ空間1、2へのアクセス時間のみで処理を継続することができる。
図4は、プロセッサ部140が行う処理の流れとメモリ空間を複数備えている場合と備えていない場合に、プロセッサ部140がIMG1とIMG2のデータを取得する際のアクセスイメージ図である。外部記憶装置13からデータを取得するのに必要な時間をt1、メモリ空間1、2からデータを取得するのに必要な時間をt2とする。メモリ空間を複数備えていない場合は、プロセッサ部140が異なるページにアクセスを行うと、再度外部記憶装置13からデータを取得しなければならない。そのため、l画素の演算を行う際にプロセッサ部140がデータを取得するのに要する時間は、(t1−t2)×(l−1)の差が出ることになる。また、図4では画像データのみのデータ取得について記載したが、プログラムのフェッチも考慮すると、更に差が出ることは明らかである。
このように、用途別にメモリ空間1〜4を使い分けることで、連続先読み機能の効果が発揮され、バッファメモリ150でのヒット率が向上する。
《第2の処理形態》
図5は、第2の処理形態における外部記憶装置13に配置される画像データ及びプログラムのイメージ図である。外部記憶装置13上には、画像データ1(IMG1)、プロセッサ部140が行う処理が記述されたプログラムが配置され、プロセッサ部140が処理した結果の画像を格納する画像データ2(IMG2)の領域が確保されている。
画像のサイズはどちらもm画素×nラインであるとする。画像データは輝度成分(Y)と色成分(C)で構成され、どちらも1ページにl画素分のデータを格納し、m画素分、つまり1ラインのY、Cはそれぞれk(=m/l)ページのデータで構成されるとする。本処理形態では、画像データは1ライン目のYデータ1〜m、Cデータ1〜m、2ライン目のY、C・・・、nライン目のY、Cの順に配置されるものとする。
プログラムには各画素のIMG1のY、Cの成分を1/2にしたIMG2の画素を生成する処理が記述されている。画像の生成は、1ライン目のYデータ1、Cデータ1、Yデータ2、Cデータ2・・・の順に演算していく。
ここでは5つのメモリ空間1〜5が使用され、メモリ空間1はIMG1のY成分のリード専用メモリ空間、メモリ空間2はIMG1のC成分のリード専用メモリ空間、メモリ空間3はプログラムのリード/ライトメモリ空間、メモリ空間4はIMG2のY成分のライトメモリ空間、メモリ空間5はIMG2のC成分のライトメモリ空間として使用するよう、アドレス情報を制御する。
本処理形態では、メモリ空間1、2はラインオフセット先読み機能を、メモリ空間3は連続先読み機能を使用するものとする。メモリ空間1、2のラインオフセットにはkを指定する。メモリ空間3はライトスルー、メモリ空間4、5はライトバックを指定する。
プロセッサ部140は、先読み機能をオンにし、1ライン1画素目の演算を開始する。このとき、メモリ空間1のページ1には、IMG1_Y(1,1)〜IMG1_Y(l,1)のデータが、メモリ空間2のページ1には、IMG1_C(1,1)〜IMG1_C(l,1)のデータが外部記憶装置13から読み出される。
メモリ空間1、2はラインオフセット先読み機能を使用するので、kページ分つまりIMG1_Y(m,1)、IMG1_C(m,1)まで、両メモリ空間1、2は連続して先読みを行う。その後、ラインオフセットで指定されたページ分オフセットを加算したページ、つまり2ライン目のYデータ及びCデータの最初の1ページをそれぞれ先読みする。メモリ空間1はIMG1_Y(1,2)〜IMG1_Y(l,2)を、メモリ空間2はIMG1_C(1,2)〜IMG1_C(l,2)を、それぞれ先読みする。この構成によって、1ライン目最終画素のCデータの演算が終了し、2ライン目の先頭画素Yデータの演算に移る際も、メモリ空間1、2でヒットさせることができる。
プロセッサ部140は、メモリ空間4、メモリ空間5を介して、外部記憶装置13にデータを書き込む処理を行う。メモリ空間4は、ライトバック方式が選択されているので、1ページ分のデータが書き込まれるまで外部記憶装置13への書き込みを待つ。つまりIMG2_Y(1,1)〜IMG2_Y(l,1)のデータ生成が完了した段階で、メモリ空間4から外部記憶装置13への書き込みが行われる。Cデータについても同様に、l画素のデータ生成が完了した段階で、外部記憶装置13への書き込みが行われる。
1ライン目のYデータ1、Cデータ1、Yデータ2、Cデータ2・・・、2ライン目のYデータ1、Cデータ1・・・の順に演算していく際に、画像データは常にメモリ空間1、2でヒットするため、プロセッサ部140はメモリ空間1、2へのアクセス時間のみで処理を終了することができる。
このように、用途別にメモリ空間1〜5を使い分けることで、先読み機能の効果が発揮され、バッファメモリ150でのヒット率が向上する。
《第3の処理形態》
図6は、第3の処理形態における外部記憶装置13に配置される画像データ及びプログラムのイメージ図である。外部記憶装置13上には、アドレスAから画像データ1(IMG1)、アドレスBから画像データ2(IMG2)、アドレスDからプロセッサ部140が行う処理が記述されたプログラムが配置され、プロセッサ部140が処理した結果の画像を格納するアドレスCから画像データ3(IMG3)の領域が確保されている。
本処理形態の構成では、4つのメモリ空間1〜4を用いるものとする。各メモリ空間1〜4は、メモリコントローラ110に備えるレジスタにて、外部記憶装置13へのアクセス領域が指定されており、メモリ空間1はアドレスAからアドレスB−1、メモリ空間2は、アドレスBからアドレスC−1、メモリ空間3はアドレスDから最終アドレス、メモリ空間4はアドレスCからアドレスD−1がそれぞれアクセス範囲となっている。
また、メモリ空間1、メモリ空間2はリード専用、メモリ空間4はライト専用、メモリ空間3はリード/ライトメモリ空間として使用するものとする。メモリ空間1〜3は先読みオン、連続先読み機能を利用するものとする。メモリ空間3はライトスルー方式であり、メモリ空間4はライトバック方式で外部記憶装置13へデータを書き込む。なお、先読みするアドレスがメモリ空間1、2、3の各々のアクセス範囲を超えてしまうときは、先読みを中止するものとする。
プロセッサ部140からメモリ空間コントローラ160へ渡すアドレス情報は、外部記憶装置13のアドレスそのものである。メモリ空間コントローラ160は、プロセッサ部140からアクセスリクエストがあったら、アドレス情報がいずれのメモリ空間のアクセス範囲かを判断し、アクセスするメモリ空間を決定する。
IMG1、IMG2の画像サイズはどちらもm画素×nラインであるとする。画像データは輝度成分(Y)と色成分(C)で構成され、どちらも1ページにl画素分のデータを格納し、m画素分、つまり1ラインのY、Cはそれぞれk(=m/l)ページのデータで構成されるとする。本処理形態では、画像データは1ライン目のYデータ1〜m、Cデータ1〜m、2ライン目のY、C・・・、nライン目のY、Cの順に配置されるものとする。
プログラムには各画素のIMG1とIMG2のY、Cを用いて、所定の割合でデータを合成し、IMG3の画素を生成する処理が記述されている。画像の合成は、外部記憶装置13に配置されているデータ並び順、つまり1ライン目のYデータ1〜m、Cデータ1〜m・・・の順に演算していく。
ここで、IMG1のYデータのうち、yライン目のx画素のデータをIMG1_Y(x,y)と表すものとすると、プロセッサ部140は、IMG3_Y(x,y)を演算するときには、その処理を記述したプログラムをフェッチしながら、IMG1_Y(x,y)、IMG2_Y(x,y)へのアクセスを行う。
1ライン1画素目の演算を開始するとき、メモリ空間1のページ1には、IMG1_Y(1,1)〜IMG1_Y(l,1)のデータが、外部記憶装置13から読み出される。同様に、メモリ空間2のページ1にはIMG2_Y(1,1)〜IMG2_Y(l,1)、メモリ空間3にはプログラムの1ページがそれぞれ読み出される。
また、連続先読み機能を利用するので、各メモリ空間1、2、3のページ2には、それぞれページ1に格納されているデータの次のページが読み出される。
IMG3_Y(1,1)のデータ生成が完了すると、プロセッサ部140は、メモリ空間4を介して、外部記憶装置13にデータを書き込む処理を行う。メモリ空間4は、ライトバック方式が選択されているので、1ページ分のデータが書き込まれるまで外部記憶装置13への書き込みを待つ。つまりIMG3_Y(1,1)〜IMG3_Y(l,1)のデータ生成が完了した段階で、メモリ空間4から外部記憶装置13への書き込みが行われる。
l画素分の演算が終了すると、プロセッサ部140はIMG1_Y(l+1,1)、IMG2_Y(l+1,1)のデータが必要になるが、連続先読み機能を利用してメモリ空間1、2のページ2にそれぞれ読み出されているため、プロセッサ部140は、メモリ空間1、2へのアクセス時間のみで処理を継続することができる。
また、このタイミングで、メモリ空間1、2のページ1には、それぞれIMG1_Y(2l+1,1)〜IMG1_Y(3l,1)のデータが読み出されており、その後の演算もメモリ空間1、2へのアクセス時間のみで処理を継続することができる。
このように、用途別にメモリ空間1〜4を使い分けることで、連続先読み機能の効果が発揮され、バッファメモリ150でのヒット率が向上する。
《第4の処理形態》
図7は、第4の処理形態でプロセッサ部140が実行する画像処理のイメージを示している。m画素×nラインで構成されるIMG1を右に90°回転させ、n画素×mラインで構成されるIMG2を生成する。
図8は、本処理形態における外部記憶装置13のイメージ図である。外部記憶装置13上には、画像データ1(IMG1)、プロセッサ部140が行う処理が記述されたプログラムが配置され、プロセッサ部140が処理した結果の画像を格納する画像データ2(IMG2)の領域が確保されている。
どちらの画像も輝度成分(Y)と色成分(C)で構成され、どちらも1ページにl画素分のデータを格納する。IMG1では1ラインのY、Cはそれぞれk(=m/l)ページのデータで構成される。IMG2では1ラインのY、Cはそれぞれj(=n/l)ページのデータで構成される。また図8に示すように、Y、Cのデータは1画像分のY及びCデータをそれぞれまとめて、Y1〜Yn(IMG2ではmライン)ライン、C1〜Cn(IMG2ではmライン)の順に配置される。
本処理形態では、5つのメモリ空間1〜5を用い、メモリ空間1はIMG1のY成分のリード専用メモリ空間、メモリ空間2はIMG1のC成分のリード専用メモリ空間、メモリ空間3はプログラムのリード/ライトメモリ空間、メモリ空間4はIMG2のY成分のライトメモリ空間、メモリ空間5はIMG2のC成分のライトメモリ空間として使用するよう、各メモリ空間1〜5のアクセス範囲を指定する。また、メモリ空間1、2、3はオフセット先読み機能を使用するものとし、オフセットには、kページを指定する。外部記憶装置13への書き込み動作は、メモリ空間3はライトスルー、メモリ空間4、5はライトバックを指定する。なお、先読みするアドレスがメモリ空間1、2、3の各々のアクセス範囲を超えてしまうときは、先読みを中止するものとする。
プロセッサ部140は、まず、IMG1の左上端にあたる画素データを読み出し、この画素データがIMG2の右上端に位置するよう、外部記憶装置13に書き込む。このとき、外部記憶装置13への書き込みの効率が良くなるよう、ページ単位つまりl画素単位で書き込むよう処理を行う。したがって、図7に示すように、l画素×lラインのブロックごとに、データの並べ替え処理を行い、回転させた結果をl画素単位で外部記憶装置13へ書き込む。また、YとCの並べ替えは同時に行うものとする。プログラム上でl画素×lラインのブロックデータを格納するメモリを確保し、このメモリには、IMG2のデータ順に並べ替えた結果を格納するものとする。
先読み機能をオンにし、プロセッサ部140はまず、IMG1_Y(1,1)〜IMG1_Y(l,1)のデータを取得し、データの並べ替えを行い、メモリに格納しておく。このとき、メモリ空間1のページ1にはIMG1_Y(1,1)〜IMG1_Y(l,1)が外部記憶装置13から読み出され、プロセッサ部140がデータを取得する。オフセット先読み機能を使用しているので、ページ2には、オフセットkページを加算したページ、つまりIMG1_Y(1,2)〜IMG1_Y(l,2)のデータが読み出されている。プロセッサ部140は、IMG1の1ライン目1〜l画素のデータを並べ替え終えると、IMG1の2ライン目1〜l画素のデータを取得して並べ替える処理を行うが、このときメモリ空間2に既にデータが読み出されているため、メモリ空間2へのアクセス時間のみでデータを取得することができる。このように順次lラインのデータを読み出し、並べ替えを行うが、全てメモリ空間1でヒットするため、メモリ空間1へのアクセス時間のみで処理を行うことができる。また、垂直方向へとブロックの走査を進めていくことで、nライン分のデータ並べ替えの間は、メモリ空間1でヒットさせることができる。
Cデータについても、メモリ空間2を使用して同様の処理を行う。また、YデータとCデータとで別々のメモリ空間1、2を使用しているので、並列に処理を行う場合でも、メモリ空間1、2でのヒット率は向上する。
以上説明してきたとおり、本発明は、デジタルカメラなど、外部記憶装置にプログラム及び画像などのデータを一次記憶する画像処理システムに利用可能性がある。
本発明に係る画像処理システムを備えた固体撮像装置の構成図である。 図1中のプロセッサ部とメモリ空間コントローラとの間のアドレス情報バスにおけるビット割り当て図である。 第1の処理形態における外部記憶装置のイメージ図である。 第1の処理形態における従来技術との比較図である。 第2の処理形態における外部記憶装置のイメージ図である。 第3の処理形態における外部記憶装置のイメージ図である。 第4の処理形態における画像処理イメージ図である。 第4の処理形態における外部記憶装置のイメージ図である。
符号の説明
10 DSP
11 レンズ
12 イメージセンサ
13 外部記憶装置
100 画像取り込み部
110 メモリコントローラ
120 画像圧縮部
130 表示画像出力部
140 プロセッサ部
150 バッファメモリ
151 メモリ空間1
152 メモリ空間2
153 メモリ空間3
154 メモリ空間4
155 メモリ空間5
160 メモリ空間コントローラ

Claims (21)

  1. 外部記憶装置への書き込み、読み出しの制御を行うメモリコントローラと、
    前記外部記憶装置に記憶されているプログラムを実行し、かつ前記外部記憶装置に記憶されているデータを用いて画像処理を行うプロセッサ部と、
    前記メモリコントローラと前記プロセッサ部との間に配置され、前記外部記憶装置とデータの転送を行う複数のメモリ空間と、
    前記メモリ空間と前記プロセッサ部との間に配置され、識別情報をもとに、前記プロセッサ部がアクセスするメモリ空間を切り替えるメモリ空間コントローラとを備えたことを特徴とする画像処理システム。
  2. 請求項1に記載の画像処理システムにおいて、
    前記識別情報は、前記プロセッサ部から前記メモリ空間コントローラに接続されるアドレス情報に付加するメモリ空間特定情報であることを特徴とする画像処理システム。
  3. 請求項1に記載の画像処理システムにおいて、
    前記メモリ空間コントローラは、前記メモリ空間がそれぞれアクセスする範囲を指定できる範囲指定レジスタを持ち、前記識別情報は、前記範囲指定レジスタと前記プロセッサ部がアクセスするアドレスとを解析した結果であることを特徴とする画像処理システム。
  4. 請求項2又は3に記載の画像処理システムにおいて、
    前記メモリ空間は、前記外部記憶装置への連続アクセス可能なバイト数の単位をページとし、2ページ以上のデータを蓄積できるメモリを備え、前記メモリコントローラは、前記プロセッサ部がアクセスしていないページにデータを先読みする、先読み機能を備えたことを特徴とする画像処理システム。
  5. 請求項4に記載の画像処理システムにおいて、
    連続したページの先読みを行う連続先読み機能を備えたことを特徴とする画像処理システム。
  6. 請求項5に記載の画像処理システムにおいて、
    前記メモリコントローラは、前記メモリ空間からのアクセスが連続したページであった場合に、前記連続先読み機能を自動的にオンにすることを特徴とする画像処理システム。
  7. 請求項5に記載の画像処理システムにおいて、
    前記メモリコントローラは、メモリ空間ごとに前記連続先読み機能のオン/オフを切り替える連続先読み機能制御レジスタを備えたことを特徴とする画像処理システム。
  8. 請求項4に記載の画像処理システムにおいて、
    先読みを開始したアドレスにオフセットを加減算したページの先読みを行うオフセット先読み機能を備え、
    前記メモリコントローラは、メモリ空間ごとに前記オフセット先読み機能のオン/オフを切り替えるオフセット先読み機能制御レジスタを備えたことを特徴とする画像処理システム。
  9. 請求項8に記載の画像処理システムにおいて、
    前記メモリコントローラは、メモリ空間ごとに前記オフセットの量を指定できるレジスタを備えたことを特徴とする画像処理システム。
  10. 請求項9に記載の画像処理システムにおいて、
    前記プロセッサ部は、処理パターンに応じて、前記オフセットの量を切り替えて使用することを特徴とする画像処理システム。
  11. 請求項4に記載の画像処理システムにおいて、
    ラインオフセットで1ラインのページ数を指定し、先読みを開始したアドレスを起点として、前記ラインオフセット分のページの連続先読みが完了したら、そのアドレスに前記ラインオフセットを加算したページデータの先読みを行うラインオフセット先読み機能を備えたことを特徴とする画像処理システム。
  12. 請求項11に記載の画像処理システムにおいて、
    前記メモリコントローラは、メモリ空間ごとに前記ラインオフセット先読み機能のオン/オフを切り替えるラインオフセット先読み機能制御レジスタを備えたことを特徴とする画像処理システム。
  13. 請求項11に記載の画像処理システムにおいて、
    前記メモリコントローラは、メモリ空間ごとに前記ラインオフセットの量を指定できるレジスタを備えたことを特徴とする画像処理システム。
  14. 請求項13に記載の画像処理システムにおいて、
    前記プロセッサ部は、処理パターンに応じて、前記ラインオフセットの量を切り替えて使用することを特徴とする画像処理システム。
  15. 請求項5〜14のいずれか1項に記載の画像処理システムにおいて、
    前記メモリコントローラは、メモリ空間ごとに先読み機能がオンの場合に、連続先読み機能、オフセット先読み機能、ラインオフセット先読み機能を選択するレジスタを有し、指定された先読みを実施することを特徴とする画像処理システム。
  16. 請求項1〜15のいずれか1項に記載の画像処理システムにおいて、
    前記プロセッサ部が2以上の画像を利用して処理を行うとき、前記メモリ空間を3つ以上備え、前記メモリ空間のうち少なくとも1つは第1の画像のみに、前記メモリ空間のうち他の少なくとも1つは第2の画像のみにアクセスするよう、前記識別情報を制御することを特徴とする画像処理システム。
  17. 請求項16に記載の画像処理システムにおいて、
    前記メモリ空間を4つ以上備え、前記メモリ空間のうち少なくとも1つは、書き込み専用のメモリ空間として使用するよう、前記識別情報を制御することを特徴とする画像処理システム。
  18. 請求項1〜14のいずれか1項に記載の画像処理システムにおいて、
    前記メモリ空間を3つ以上備え、画像データはm個(mは整数)の成分で構成され、前記プロセッサ部は、前記メモリ空間のうち少なくとも1つは画像の第1の成分に、前記メモリ空間のうち他の少なくとも1つは画像の第2の成分にアクセスするよう、前記識別情報を制御することを特徴とする画像処理システム。
  19. 請求項18に記載の画像処理システムにおいて、
    前記メモリ空間を4つ以上備え、前記メモリ空間のうち少なくとも1つは、書き込み用のメモリ空間として使用するよう、前記識別情報を制御することを特徴とする画像処理システム。
  20. 請求項18に記載の画像処理システムにおいて、
    前記メモリ空間を5つ以上備え、前記メモリ空間のうち少なくとも1つは、画像の第1成分の書き込み用のメモリ空間として、前記メモリ空間のうち他の少なくとも1つは、画像の第2成分の書き込み用のメモリ空間として使用するよう、前記識別情報を制御することを特徴とする画像処理システム。
  21. 請求項1〜20のいずれか1項に記載の画像処理システムと、
    イメージセンサと、
    外部記憶装置とを備えた固体撮像装置。
JP2007162772A 2007-06-20 2007-06-20 画像処理システム Pending JP2009003632A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007162772A JP2009003632A (ja) 2007-06-20 2007-06-20 画像処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007162772A JP2009003632A (ja) 2007-06-20 2007-06-20 画像処理システム

Publications (1)

Publication Number Publication Date
JP2009003632A true JP2009003632A (ja) 2009-01-08

Family

ID=40319967

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007162772A Pending JP2009003632A (ja) 2007-06-20 2007-06-20 画像処理システム

Country Status (1)

Country Link
JP (1) JP2009003632A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104932994A (zh) * 2015-06-17 2015-09-23 青岛海信信芯科技有限公司 一种数据处理方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104932994A (zh) * 2015-06-17 2015-09-23 青岛海信信芯科技有限公司 一种数据处理方法及装置
WO2016201793A1 (zh) * 2015-06-17 2016-12-22 青岛海信信芯科技有限公司 一种数据处理方法及装置

Similar Documents

Publication Publication Date Title
US20080285652A1 (en) Apparatus and methods for optimization of image and motion picture memory access
EP1880277B1 (en) Command execution controlling apparatus, command execution instructing apparatus and command execution controlling method
US20080147980A1 (en) Enhancing Performance of a Memory Unit of a Data Processing Device By Separating Reading and Fetching Functionalities
JP2006318178A (ja) データ転送調停装置およびデータ転送調停方法
JP2010505158A (ja) 複数のメモリーバンクを有するデータ処理
CN102055973B (zh) 存储器地址映射方法及存储器地址映射电路
CN104981838B (zh) 优化图像存储器访问
JP5194703B2 (ja) データ処理装置及び共有メモリのアクセス方法
EP1721298A2 (en) Embedded system with 3d graphics core and local pixel buffer
JP4699036B2 (ja) グラフィクスハードウェア
JP2004005287A (ja) コプロセッサを搭載したプロセッサシステム
JP5721970B2 (ja) リアルタイムストリーミングを行う装置及びバス制御方法
JP2010146084A (ja) キャッシュメモリ制御部を備えるデータ処理装置
JP2007018222A (ja) メモリアクセス制御回路
JP2008172410A (ja) 撮像装置、画像処理装置、画像処理方法、画像処理方法のプログラム及び画像処理方法のプログラムを記録した記録媒体
JP2009003632A (ja) 画像処理システム
JP4266900B2 (ja) 画像処理システム
US20180103174A1 (en) Image processing apparatus and method for controlling the same
JP4970378B2 (ja) メモリコントローラおよび画像処理装置
JP5191193B2 (ja) 画像表示駆動装置
JP3683657B2 (ja) グラフィックス表示装置およびグラフィックスプロセッサ
JP4137903B2 (ja) グラフィックス表示装置およびグラフィックスプロセッサ
JP2007333892A (ja) メモリ制御装置、バス制御装置及び表示デバイス制御システム
JP4983160B2 (ja) 動画像処理装置
JP2014013506A (ja) 情報処理装置、制御方法、及びプログラム