(57)【要約】【課題】プリフェッチヒット比率を高め得るシステムオンチップ及びその動作方法を提供する。【解決手段】本発明のシステムオンチップ（ＳｏＣ）は、プリフェッチ方向情報及びメモリ管理ユニット割り当て情報を設定するＣＰＵと、少なくとも１つの作業セットを処理するＩＰコアと、作業セット毎に割り当てられて各作業セットに対する仮想アドレスを物理アドレスにアドレス変換する少なくとも１つのメモリ管理ユニットと、メモリ管理ユニット割り当て情報を保存し、メモリ管理ユニット割り当て情報に基づいてアドレス変換を行うメモリ管理ユニットを割り当てるアドレス分配器と、データに対する物理アドレス情報及びデータを保存するメモリ装置と、を備え、メモリ管理ユニットは、プリフェッチ方向情報に基づいて、ページテーブルからページテーブルエントリーをプリフェッチする。【選択図】図７
2014175017.tif 000002
【特許請求の範囲】
【請求項１】
プリフェッチ方向を設定するＣＰＵと、
少なくとも１つの作業セットを処理するＩＰコアと、
前記作業セットに対する仮想アドレスと物理アドレスとの間のアドレス変換時に、前記プリフェッチ方向に基づいて、次にアクセスするページテーブルエントリーをプリフェッチする少なくとも１つのメモリ管理ユニットと、を備えることを特徴とするシステムオンチップ。
【請求項２】
前記システムオンチップは、複数の前記ページテーブルエントリーを含むページテーブルを有するメモリ装置を更に含み、
前記メモリ管理ユニットは、
前記仮想アドレスと前記物理アドレスとのマッピング情報を保存するＴＬＢと、
設定された前記プリフェッチ方向を保存する保存部と、
前記次にアクセスするページテーブルエントリーを保存するプリフェッチバッファと、を含むことを特徴とする請求項１に記載のシステムオンチップ。
【請求項３】
前記ＣＰＵは、前記メモリ管理ユニットの割り当て情報を設定し、
前記メモリ管理ユニットは、前記ＩＰコアからデータ要請を受信すると、前記割り当て情報に基づいて前記作業セット別に割り当てられてアドレス変換を行うことを特徴とする請求項１に記載のシステムオンチップ。
【請求項４】
前記システムオンチップは、前記ＣＰＵによって設定された前記各作業セットに割り当てられる前記メモリ管理ユニットの割り当て情報を保存し、前記ＩＰコアから受信したデータ要請が発生すると、前記割り当て情報に基づいて前記データ要請に相応する前記メモリ管理ユニットを割り当てるアドレス分配器を更に含むことを特徴とする請求項１に記載のシステムオンチップ。
【請求項５】
前記システムオンチップは、複数の前記ページテーブルエントリーを含むページテーブルを有するメモリ装置を更に含み、
前記ページテーブルエントリーのそれぞれは、物理ページアドレス、オフセット、及び設定された前記プリフェッチ方向を保存するプリフェッチ方向フィールドを含むことを特徴とする請求項１に記載のシステムオンチップ。
【請求項６】
前記システムオンチップは、複数の前記ページテーブルエントリーを含むページテーブルを有するメモリ装置を更に含み、
前記ページテーブルエントリーのそれぞれは、物理ページアドレス、オフセット、及び設定された前記プリフェッチ方向によって、前記次にアクセスするページテーブルエントリーを保存するプリフェッチターゲットエントリーナンバーフィールドを含むことを特徴とする請求項１に記載のシステムオンチップ。
【請求項７】
前記プリフェッチ方向の情報は、前記作業セットのそれぞれによってイメージデータに対する前記物理アドレスがアクセスされるパターン情報であることを特徴とする請求項１に記載のシステムオンチップ。
【請求項８】
ＣＰＵ、少なくとも１つのＩＰコア、及びメモリ管理ユニットを含むシステムオンチップ（ＳｏＣ）の動作方法であって、
（ａ）前記ＣＰＵが、プリフェッチ方向及びメモリ管理ユニット割り当て情報を設定する段階と、
（ｂ）前記ＩＰコアが、複数の作業セットのそれぞれに応じてメモリ管理ユニットにデータアクセスを要請する段階と、
（ｃ）前記メモリ管理ユニットが、前記データアクセスの要請に応じたアドレス変換のページテーブルウォーク時に、前記プリフェッチ方向に基づいて、次にアクセスするページテーブルエントリーをプリフェッチする段階と、
（ｄ）前記メモリ管理ユニットが、前記ページテーブルエントリーによって、前記作業セットのそれぞれに対する仮想アドレスを物理アドレスに変換してデータにアクセスする段階と、を有することを特徴とするＳｏＣの動作方法。
【請求項９】
前記（ａ）段階は、
前記メモリ管理ユニットが、前記作業セット毎に予め設定された前記プリフェッチ方向を保存する段階と、
前記ＣＰＵが、前記作業セットのそれぞれに対応して前記メモリ管理ユニット割り当て情報を設定する段階と、を含むことを特徴とする請求項８に記載のＳｏＣの動作方法。
【請求項１０】
前記メモリ管理ユニット割り当て情報は、
前記作業セットのそれぞれに対する仮想アドレスによって割り当てられる前記メモリ管理ユニットのインジケーター情報を含み、
前記（ｂ）段階は、
前記インジケーター情報に基づいて、前記データアクセスの要請に含まれる前記仮想アドレスに対応する前記メモリ管理ユニットに前記データアクセスの要請を伝送することを特徴とする請求項８に記載のＳｏＣの動作方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリ管理ユニットを含むシステムオンチップ（ｓｙｓｔｅｍ  ｏｎ  ｃｈｉｐ：ＳｏＣ）に係り、より詳細には、複数個の作業セットに対して動作するメモリ管理ユニットを含むシステムオンチップ及びその動作方法に関する。
【背景技術】
【０００２】
ディスプレイ装置を含む電子装置（例えば、モバイルフォン、タッチ型ＰＣなどのモバイル機器）で、電子装置を回転して横（ｌａｎｄｓｃａｐｅ）又は縦（ｐｏｒｔｒａｉｔ）方向で画像を見るユーザ作業が多くなっている。
【０００３】
メモリ管理ユニット（Ｍｅｍｏｒｙ  Ｍａｎａｇｅｍｅｎｔ  Ｕｎｉｔ；以下、ＭＭＵと称する）は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＧＰＵ（Ｇｒａｐｈｉｃ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等に代表されるダイレクトメモリアクセス（ＤＭＡ）ユニット、即ちＩＰ（Ｉｎｔｅｌｌｅｃｔｕａｌ  Ｐｒｏｐｅｒｔｉｅｓ）コア（以下、単に「ＩＰ」とも称する）によって要求されるメモリアクセス（Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）を処理するためのハードウェアコンポーネントである。ＭＭＵは、ページメモリ管理ユニット（Ｐａｇｅ  Ｍｅｍｏｒｙ  Ｍａｎａｇｅｍｅｎｔ  Ｕｎｉｔ：ＰＭＭＵ）とも呼ばれる。
【０００４】
ディスプレイ装置で、ローテーション（ｒｏｔａｔｉｏｎ）動作は、単純なイメージサイズ変化、及びＸ軸回転、Ｙ軸回転、９０°回転、ＸＹ軸回転など、様々な場合によって、ソースイメージ（Ｓｏｕｒｃｅ  Ｉｍａｇｅ）に再アクセスしてリードし、デスティネーションイメージ（Ｄｅｓｔｉｎａｔｉｏｎ  Ｉｍａｇｅ又はＲｏｔａｔｅｄ  Ｉｍａｇｅ）を生成しなければならない。この際、ソースイメージへの再アクセス時に、上記のようなローテーション角度によって、データアクセスのための仮想アドレスは、常に順次に増加するものではない。
【０００５】
ＭＭＵは、ソースイメージへの再アクセス時に、高速化を図るためにＭＭＵ内のキャッシュの一種であるＴＬＢ（Ｔｒａｎｓｌａｔｉｏｎ  Ｌｏｏｋａｓｉｄｅ  Ｂｕｆｆｅｒ）を先に検索して仮想アドレスと物理アドレスとの間のアドレス変換を試み、要求したアドレスがＴＬＢに無いＴＬＢミス（ＴＬＢ  ｍｉｓｓ）時に、アドレス変換のためにメモリ装置内のページテーブルを読み取り算出したページアドレスを辿るページテーブルウォーク（Ｐａｇｅ  Ｔａｂｌｅ  Ｗａｌｋ：ＰＴＷ）を行う。このとき、順次に増加しない仮想アドレスによって、装置でＴＬＢミス（ｍｉｓｓ）が多く起こる場合、無視できないミスペナルティー（ｍｉｓｓ  ｐｅｎａｌｔｙ）のために、装置の性能が低下する。
【０００６】
ミスペナルティーを解決するために、ＭＭＵを含む装置は、次のアクセスする可能性があるページテーブル情報を予めＭＭＵ内のプリフェッチバッファ（ｐｒｅｆｅｔｃｈ  ｂｕｆｆｅｒ）にプリフェッチすることができる。しかし、複数の作業セットがあり、各作業セットが、それぞれ異なるアクセスパターンを有する場合には、プリフェッチバッファに対するプリフェッチヒット比率（Ｐｒｅｆｅｔｃｈ  ｈｉｔ  ｒａｔｉｏ）が落ちる。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明は、上記従来の問題点に鑑みてなされたものであって、本発明の目的は、ＩＰコアが複数の作業セットを処理する場合、プリフェッチヒット比率を高め得るシステムオンチップ及びその動作方法を提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するためになされた本発明の一態様によるシステムオンチップ（Ｓｙｓｔｅｍ  Ｏｎ  Ｃｈｉｐ：ＳｏＣ）は、プリフェッチ方向（Ｐｒｅｆｅｔｃｈ  Ｄｉｒｅｃｔｉｏｎ）を設定するＣＰＵと、少なくとも１つの作業セットを処理するＩＰ（Ｉｎｔｅｌｌｅｃｔｕａｌ  Ｐｒｏｐｅｒｔｉｅｓ）コアと、前記作業セットに対する仮想アドレスと物理アドレスとの間のアドレス変換時に、前記プリフェッチ方向に基づいて、次にアクセスするページテーブルエントリー（Ｎｅｘｔ  Ｐａｇｅ  Ｔａｂｌｅ  Ｅｎｔｒｙ）をプリフェッチする少なくとも１つのメモリ管理ユニットと、を備える。
【０００９】
前記メモリ管理ユニット（ＭＭＵ）は、ＩＰコアから要請された複数の作業セットのそれぞれの仮想アドレスを物理アドレスに変換するためのマッピング情報を保存するＴＬＢ（Ｔｒａｎｓｌａｔｉｏｎ  Ｌｏｏｋａｓｉｄｅ  Ｂｕｆｆｅｒ）と、前記作業セット毎に予め設定されたプリフェッチ方向を保存するＳＦＲ（Ｓｐｅｃｉａｌ  Ｆｕｎｃｔｉｏｎ  Ｒｅｇｉｓｔｅｒ）と、ページテーブルウォーク時に、前記プリフェッチ方向に基づいて、メモリ装置から次にアクセスするページテーブルエントリーをプリフェッチするプリフェッチバッファと、を含み得る。
【００１０】
上記目的を達成するためになされた本発明の一態様によるＣＰＵ、少なくとも１つのＩＰコア、及びメモリ管理ユニットを含むシステムオンチップ（Ｓｙｓｔｅｍ  Ｏｎ  Ｃｈｉｐ：ＳｏＣ）の動作方法は、（ａ）前記ＣＰＵが、プリフェッチ方向及びメモリ管理ユニット割り当て情報を設定する段階と、（ｂ）前記ＩＰコアが、複数の作業セットのそれぞれに応じてメモリ管理ユニットにデータアクセスを要請する段階と、（ｃ）前記メモリ管理ユニットが、前記データアクセスの要請に応じたアドレス変換のページテーブルウォーク時に、前記プリフェッチ方向に基づいて、次にアクセスするページテーブルエントリーをプリフェッチ（Ｐｒｅｆｅｔｃｈ）する段階と、（ｄ）前記メモリ管理ユニットが、前記ページテーブルエントリーによって、前記作業セットのそれぞれに対する仮想アドレスを物理アドレスに変換してデータにアクセスする段階と、を有する。
【発明の効果】
【００１１】
本発明によるシステムオンチップ及びその動作方法によれば、メモリ管理ユニットにプリフェッチ方向を知らせ、プリフェッチ方向に基づいてページテーブルエントリーをプリフェッチすることによって、プリフェッチヒット（Ｐｒｅｆｅｔｃｈ  ｈｉｔ）比率を高めてその性能を向上させることができる。
【図面の簡単な説明】
【００１２】
【図１】ソースイメージをそれぞれ設定される方向に回転させる回転イメージ（デスティネーションイメージ）を示す図である。
【図２】本発明の一実施形態によるメモリ管理ユニットを含む電子装置のブロック図である。
【図３】図２に示したＳｏＣのブロック図である。
【図４】図２に示したメモリ管理ユニットの動作を説明するための概略ブロック図である。
【図５】図４に示したページテーブルによる仮想アドレスと物理アドレスとのマッピングを示す概念図である。
【図６】図２に示したメモリ管理ユニットの一実施形態による概略ブロック図である。
【図７】図２に示したメモリ管理ユニットの他の実施形態による概略ブロック図である。
【図８】図４に示したページテーブルのフィールド構成を示す図である。
【図９】本発明の一実施形態によるメモリ管理ユニットの動作方法を示すフローチャートである。
【図１０】図２に示したＳｏＣを含む電子装置の一実施形態を示す図である。
【図１１】図２に示したＳｏＣを含む電子装置の他の実施形態を示す図である。
【発明を実施するための形態】
【００１３】
以下、本発明を実施するための形態の具体例を、図面を参照しながら詳細に説明する。
【００１４】
図１は、ソースイメージをそれぞれ設定される方向に回転させる回転イメージ（デスティネーションイメージ）を示す図である。
【００１５】
図１を参照すると、ソースイメージは、ディスプレイ装置の設定、ユーザの設定、又はシステム設定などによってさまざまに回転し得る。
【００１６】
多様な実施形態によって、ソースイメージは、Ｘ軸基準に逆位相に回転（Ｘ  Ｆｌｉｐ）、Ｙ軸基準に逆位相に回転（Ｙ  Ｆｌｉｐ）、ＸＹ軸基準に逆位相に回転することがある（ＸＹ  Ｆｌｉｐ（１８０°））。
【００１７】
また、多様な実施形態によって、ソースイメージは、時計回り方向に９０°回転（９０°）、Ｘ軸基準に逆位相で時計回り方向に９０°又は２７０°回転（９０°＋Ｘ  Ｆｌｉｐ、２７０°＋Ｘ  Ｆｌｉｐ）、単純に時計回り方向に２７０°回転することもある（２７０°）。
【００１８】
回転したイメージは、デスティネーションイメージであって、場合毎にローテーションによるアドレスアクセスパターンが、上記のように定められる。
【００１９】
図２は、本発明の一実施形態によるメモリ管理ユニットを含む電子装置のブロック図である。図２を参照すると、ＰＣ（パーソナルコンピュータ）、タブレットＰＣ、ネットブック、ｅリーダー、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、ＰＭＰ（Ｐｏｒｔａｂｌｅ  Ｍｕｌｔｉｍｅｄｉａ  Ｐｌａｙｅｒ）、ＭＰ３プレーヤー、又はＭＰ４プレーヤーのようなデータ処理装置として具現可能な電子装置１００は、電子装置１００の全般的な動作を制御するＳｏＣ（システムオンチップ）１を含む。
【００２０】
ＳｏＣ１は、一例として、プロセッサとして具現可能であり、プロセッサは、プログラム命令（ｐｒｏｇｒａｍ  ｉｎｓｔｒｕｃｔｉｏｎｓ）を読み出して実行するユニットである。ＳｏＣ１は、メモリ管理ユニット（ＭＭＵ）１０を含む。
【００２１】
例えば、ＳｏＣ１は、プログラム命令（例えば、入力装置１２０を介して入力された入力信号によって生成されたプログラム命令）を実行する。ＳｏＣ１は、メモリ装置１１０に保存されたデータをリードし、リードされたデータを、ディスプレイ１３０を介して表示する。メモリ装置１１０は、ＳｏＣ１から受信した要請に応じてデータを処理する。
【００２２】
メモリ装置１１０は、仮想アドレスに対応する物理アドレスに変換するためのページテーブル１１５を含む。メモリ装置１１０は、多様な実施形態によって、ＳｏＣ１の内部に具現しても良いし、ＳｏＣ１の外部に具現しても良い。
【００２３】
例えば、入力装置１２０は、タッチパッド又はコンピュータマウスのようなポインティング装置（ｐｏｉｎｔｉｎｇ  ｄｅｖｉｃｅ）、キーパッド、又はキーボードとして具現可能である。
【００２４】
図３は、図２に示したＳｏＣのブロック図である。図２及び図３を参照すると、ＳｏＣ１は、ＣＰＵ３、キャッシュ５、及びメモリ管理ユニット（ＭＭＵ）１０などを含む。
【００２５】
ＣＰＵ３は、プログラム命令を読み出して実行する動作を行うプロセッサ部分である。ＭＭＵ１０は、ディスプレイコントローラ８０から出力される仮想アドレスを物理アドレスに変換するために使われる。
【００２６】
キャッシュ５は、メモリ装置１１０からデータをより迅速にリード／ライトするために、データを保存するコンポーネント（ｃｏｍｐｏｎｅｎｔ）である。ＣＰＵ３は、ページの内容をメモリ装置１１０からリード（Ｒｅａｄ又はＰａｇｅ  Ｉｎ）してキャッシュ５に保存する。ＣＰＵ３は、キャッシュ５に保存されたページの内容をメモリ装置１１０にライト（Ｗｒｉｔｅ又はＰａｇｅ  Ｏｕｔ）する。
【００２７】
ＭＭＵ１０は、ＣＰＵ３によって要求されるメモリ装置１１０のアクセスを処理するためのハードウェアコンポーネントである。
【００２８】
ＭＭＵ１０の機能は、ＣＰＵ３、ＧＰＵ、ディスプレイコントローラ８０、又はマルチメディア加速ユニット（ｍｕｌｔｉｍｅｄｉａ  ａｃｃｅｌｅｒａｔｉｏｎ  ｕｎｉｔ）６０内のグラフィックエンジン６２による要請に対する仮想アドレス（ｖｉｒｔｕａｌ  ａｄｄｒｅｓｓｅｓ）と物理アドレス（ｐｈｙｓｉｃａｌ  ａｄｄｒｅｓｓｅｓ）との間のアドレス変換（ｔｒａｎｓｌａｔｉｏｎ）、メモリ保護、キャッシュ５の制御、バス仲裁（ｂｕｓ  ａｒｂｉｔｒａｔｉｏｎ）、及びバンクスイッチングを含む。
【００２９】
ＳｏＣ１は、システム周辺ユニット５０、マルチメディア加速ユニット６０、接続ユニット７０、ディスプレイコントローラ８０、及びメモリインターフェースユニット９０を更に含む。
【００３０】
システム周辺ユニット５０、マルチメディア加速ユニット６０、接続ユニット７０、ディスプレイコントローラ８０、及びメモリインターフェースユニット９０のそれぞれは、システムバス４０を通じてデータや命令を送受信する。
【００３１】
システムバス４０は、複数のチャネルを含む。例えば、複数のチャネルは、ＡＸＩ（Ａｄｖａｎｃｅｄ  ｅＸｔｅｎｓｉｂｌｅ  Ｉｎｔｅｒｆａｃｅ）チャネル規格によって、リードデータチャネル（Ｒ）、リードアドレスチャネル（ＡＲ）、ライトアドレスチャネル（ＷＲ）、ライト応答チャネル（Ｂ）、及びライトデータチャネル（Ｗ）を含む。
【００３２】
システム周辺ユニット５０は、リアルタイムクロック（ＲＴＣ）、位相同期ループ（ＰＬＬ）、及びウォッチドッグタイマ（Ｗａｔｃｈ  Ｄｏｇ  Ｔｉｍｅｒ）を含む。
【００３３】
マルチメディア加速ユニット６０は、グラフィックエンジン６２を含む。マルチメディア加速ユニット６０は、カメラインターフェース６１、グラフィック計算を行うためのフレームバッファ又は他のビデオディスプレイ回路と集積されたグラフィックエンジン６２、及び圧縮されていないデジタルデータを伝送するためのオーディオ／ビデオインターフェースであるＨＤＭＩ（登録商標）（Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）６３を含む。
【００３４】
ＭＭＵ１０は、グラフィックエンジン６２から出力される作業セットに対する仮想アドレスを物理アドレスに変換するために使われる。
【００３５】
実施形態によって、マルチメディア加速ユニット６０は、ＨＤＭＩ（登録商標）６３の代わりに、アナログテレビエンコーディングシステムであるＮＴＳＣ（Ｎａｔｉｏｎａｌ  Ｔｅｌｅｖｉｓｉｏｎ  Ｓｙｓｔｅｍ  Ｃｏｍｍｉｔｔｅｅ）／ＰＡＬ（Ｐｈａｓｅ  Ａｌｔｅｒｎａｔｅ  Ｌｉｎｅ）を含み得る。
【００３６】
接続ユニット７０は、オーディオインターフェース、ＡＴＡ（Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ）のようなストレージインターフェース、及び接続インターフェースを含む。例えば、接続ユニット７０は、入力装置１２０と通信を行わせる。
【００３７】
ディスプレイコントローラ８０は、データをディスプレイ１３０に表示するように制御する。ＭＭＵ１０は、ディスプレイコントローラ８０から出力された仮想アドレスを物理アドレスに変換するために使われる。
【００３８】
メモリインターフェースユニット９０は、メモリ装置１１０の種類（例えば、フラッシュメモリ、又はＤＲＡＭ）によってメモリ装置１１０をアクセス可能にするインターフェースである。
【００３９】
説明の便宜上、上述したように、ＣＰＵ３、グラフィックエンジン、ディスプレイコントローラ８０などの、作業セット単位でデータを処理するプロセッサをＩＰコア（Ｍａｓｔｅｒ  Ｉｎｔｅｌｌｅｃｔｕａｌ  Ｐｒｏｐｅｒｔｙ：マスタＩＰと称する）とする。
【００４０】
ＩＰコアは、作業セット単位で動作し、同時に複数個の作業セットを処理することができる。作業セット（Ｗｏｒｋｉｎｇ  Ｓｅｔ）とは、メモリ装置１１０に保存されるデータセットであってＩＰコアがメモリ装置１１０から頻繁に参照するページの集合、又は１つのＩＰコアからメモリ装置１１０に書き込むページの量に対応する。この際、ＩＰコアにおける各作業セットは、他の作業セットと独立して運用される。１つの作業セットは、連続した仮想アドレスのデータである。
【００４１】
図４は、図２に示したメモリ管理ユニットの動作を説明するための概略ブロック図である。
【００４２】
図２〜図４を参照すると、ＭＭＵ１０は、ＴＬＢ１２を含み、マスタＩＰ４及びメモリ装置１１０と複数のチャネル（Ｒ、ＡＲ、ＡＷ、Ｂ、及びＷ）に連結される。
【００４３】
マスタＩＰ４は、複数の作業セットを処理するために、データアクセスを要請する。マスタＩＰ４は、データアクセスのために、各作業セットに対応する要請をＭＭＵ１０又はキャッシュ５に出力する。この際、マスタＩＰ４が出力する要請には、アクセスしようとするデータに関する情報、即ちメモリ装置１１０内の当該作業セットに対する仮想アドレスＶＡが含まれる。
【００４４】
マスタＩＰ４の要請に応じて仮想アドレスＶＡを用いてページ物理アドレスＰＡを計算して出力する。ページ物理アドレスＰＡは、仮想アドレスＶＡのページ番号（ＰＮ）とオフセット（例えば、ページテーブルポインター）とを結合することで算出され、ページテーブル１１５にインデックスとしてアクセスするためのアドレスである。
【００４５】
ＭＭＵ１０内のＴＬＢ１２は、仮想アドレス変換速度（ｖｉｒｔｕａｌ  ａｄｄｒｅｓｓ  ｔｒａｎｓｌａｔｉｏｎ  ｓｐｅｅｄ）を向上させるために使われるメモリ管理ハードウェアであり、ページ番号（ＰＮ）とフレーム番号（ＦＮ）とがマッピングされる。即ち、ＴＬＢ１２は、マスタＩＰ４が参照したページに対して仮想アドレスＶＡと物理アドレスＰＡとをマッピングして保存する。仮想アドレスを物理アドレスにアドレス変換を試みる時、ＭＭＵ１０は、ＴＬＢ１２を先に確認する。
【００４６】
マスタＩＰ４の要請に対応する仮想アドレスＶＡに対してＴＬＢ１２にマッピング情報がある場合、ＭＭＵモジュール１０は、メモリ装置１１０にアクセスする必要なしに、直ちにアドレス変換を処理する（ＴＬＢヒット）。
【００４７】
しかし、マスタＩＰ４の要請に対する仮想アドレスＶＡに対してＴＬＢ１２にマッピング情報がない場合（ＴＬＢミス）、ページテーブルウォーク（ＰＴＷ）が行われる。
【００４８】
ページテーブルウォーク（ＰＴＷ）とは、ＴＬＢミスである時（即ち、仮想アドレスＶＡにマッピングされる物理アドレスＰＡ情報がＴＬＢにない時）、メモリ装置１１０内のページテーブル１１５にアクセスして仮想アドレスＶＡのページ番号（ＰＮ）とフレーム番号（ＦＮ）とが存在するか否かを探す過程（ｐｒｏｃｅｓｓ）を意味する。
【００４９】
ページテーブル１１５は、メモリ装置１１０内のデータのそれぞれの仮想アドレスと物理アドレスとをマッピングした情報を保存する。
【００５０】
キャッシュ５は、マスタＩＰ４がリードしようとする命令又はデータの物理アドレスＰＡにリードを試みる時、当該物理アドレスの命令やデータがキャッシュ５内に存在する場合、メモリ装置１１０にアクセスする必要なしに、直ちに命令やデータをマスタＩＰ４に出力する（キャッシュヒット）。
【００５１】
しかし、マスタＩＰ４がリードしようとする命令又はデータの物理アドレスにリードを試みても、当該命令やデータがキャッシュ５内に存在しない場合、メモリ装置１１０のデータ／命令保存部１１７にアクセスして、当該命令やデータを読み取る（キャッシュミス）。
【００５２】
データ／命令保存部１１７は、メモリ装置１１０内のデータ／命令のそれぞれに関する情報を保存する。
【００５３】
図５は、図４に示したページテーブルによる仮想アドレスと物理アドレスとのマッピングを示す概念図である。説明の便宜上、ＴＬＢミス後、ＭＭＵ１０が、ページテーブルウォークを遂行中であるとする。
【００５４】
図５を参照すると、ソースイメージをリードする第１作業セットに対してＩＰコアは、仮想アドレスＶＡ（６）〜ＶＡ（９）のソースイメージ領域に対してリード要請を行う。ＭＭＵ１０は、第１作業セットの仮想アドレスＶＡ（６）〜ＶＡ（９）に対応する物理アドレス情報がＴＬＢ１２にない場合（ＴＬＢミス）、ページテーブル１１５にアクセスしてページテーブルウォークを行う。
【００５５】
ページテーブル１１５は、ページの仮想アドレスにマッピングされる物理アドレス情報、即ち複数のページテーブルエントリーを含む。メモリ装置１１０は、物理アドレスＰＡ（１）にページテーブル１１５に関する情報を保存する。
【００５６】
ページテーブル１１５は、ページテーブルエントリーｐｔｅ６〜ｐｔｅ９に保存された第１作業セットの仮想アドレスＶＡ（６）〜ＶＡ（９）に対応する物理アドレス情報をＭＭＵ１０に知らせる。ＭＭＵ１０は、ページテーブル１１５に、受信した物理アドレス情報に基づいて、物理アドレスＰＡ（８）、ＰＡ（１１）、ＰＡ（９）、及びＰＡ（６）にアクセスし、物理アドレスＰＡ（８）、ＰＡ（１１）、ＰＡ（９）、及びＰＡ（６）に保存されたデータをリードして、ソースイメージ領域に対してリード要請を行ったＩＰコアに伝送する。
【００５７】
ソースイメージと同じ方式で、デスティネーションイメージをリードする第２作業セットに対してＩＰコアは、仮想アドレスＶＡ（１２）〜ＶＡ（１５）のデスティネーションイメージ領域に対してリード要請を行う。ＭＭＵ１０は、第２作業セットの仮想アドレスＶＡ（１２）〜ＶＡ（１５）に対応する物理アドレス情報がＴＬＢ１２にない場合（ＴＬＢミス）、ページテーブル１１５にアクセスしてページテーブルウォークを行う。
【００５８】
ページテーブル１１５は、ページテーブルエントリーｐｔｅ１２〜ｐｔｅ１５に保存された第２作業セットの仮想アドレスＶＡ（１２）〜ＶＡ（１５）に対応する物理アドレス情報をＭＭＵ１０に知らせる。ＭＭＵ１０は、ページテーブル１１５に、受信した物理アドレス情報に基づいて、物理アドレスＰＡ（１４）、ＰＡ（５）、ＰＡ（１０）、及びＰＡ（１２）にアクセスし、物理アドレスＰＡ（１４）、ＰＡ（５）、ＰＡ（１０）、及びＰＡ（１２）に保存されたデータをリードして、デスティネーションイメージ領域に対してリード要請を行ったＩＰコアに伝送する。
【００５９】
図６は、図２に示したメモリ管理ユニットの一実施形態による概略ブロック図である。説明の便宜上、ＣＰＵ３、マスタＩＰ４、ＭＭＵ１０’、バス４１、及びメモリ装置１１０のみを図示する。
【００６０】
マスタＩＰ４は、作業セット単位で動作する。マスタＩＰ４は、複数の作業セットに対する動作を行う。この際、メモリ装置１１０内の複数の作業セットのそれぞれは、互いに独立し、マスタＩＰ４は、各作業セットを独立して運用する。
【００６１】
マスタＩＰ４は、一例として、ＧＰＵ、グラフィックエンジン６２であり、実施形態によって、他のダイレクトメモリアクセス（ＤＭＡ）が可能なプロセッシングユニットであり得る。
【００６２】
マスタＩＰ４は、各作業セットを処理する時、データアクセス要請（ｒｅｑｕｅｓｔ）をＭＭＵモジュール１０に出力する。
【００６３】
一実施形態として、図６に示した実施形態のように、マスタＩＰ４が、メモリ装置１１０のデータに対してリード動作を行う場合を説明する。図示した例で、マスタＩＰ４は、Ａ作業セット及びＢ作業セットを処理する。例えば、Ａ作業セットは、図１に示したように、ソースイメージを９０°回転する場合とし、Ｂ作業セットは、ソースイメージを１８０°回転する場合と仮定する。
【００６４】
マスタＩＰ４のデータアクセス要請前に、ＣＰＵ３は、メモリ装置１１０にページテーブル１１５を書き込む。ページテーブルは、仮想アドレスと物理アドレスとがマッピングされたページテーブルエントリーを複数個含む。
【００６５】
ＣＰＵ３は、プリフェッチ方向情報を設定する。図６に示した実施形態で、ＣＰＵ３は、ＳＦＲ２０３にＡ作業セットに対応するＡプリフェッチ方向情報及びＢ作業セットに対応するＢプリフェッチ方向情報をそれぞれ設定する。
【００６６】
ＭＭＵ１０’が、マスタＩＰ４からデータアクセス要請を受信すると、アクセス要請に含まれる各仮想アドレスによって、どの作業セットであるかを確認する。ＭＭＵ１０’は、ＴＬＢ１２’に仮想アドレスに対応する物理アドレス情報の存否を確認し、存在しない場合（ＴＬＢミス）、ページテーブルウォークを行う。
【００６７】
ＭＭＵ１０’は、作業セット別に割り当てられるプリフェッチバッファを含む。ＭＭＵ１０’は、各作業セット別にＡプリフェッチバッファ２０１、及びＢプリフェッチバッファ２０２を含む。プリフェッチバッファ２０１、２０２は、ＭＭＵ１０’がアクセスするページテーブルエントリーをフェッチ及びプリフェッチして一時保存する。
【００６８】
例えば、Ａ作業セットである場合、ＭＭＵ１０’は、ＳＦＲ２０３に設定されたＡプリフェッチ方向に基づいて、ページテーブル１１５からページテーブルエントリーをフェッチ（ｆｅｔｃｈ）してＡ作業セットのアドレス変換を行い、ＳＦＲ２０３に設定されたＡプリフェッチ方向に基づいて、次にアクセスするページテーブルエントリーをプリフェッチバッファ２０１に保存する。ＭＭＵ１０’は、Ａ作業セットに対してフェッチされたページテーブルエントリーによるアドレス変換後、プリフェッチされたページテーブルエントリーによってアドレス変換を行う。Ｂ作業セットも、Ａ作業セットのような方法でＳＦＲ２０３に設定されたＢプリフェッチ方向に基づいて、ページテーブルエントリーをフェッチ及びプリフェッチしてアドレス変換を行う。ＭＭＵ１０’は、Ａ作業セット及びＢ作業セットのそれぞれの変換された物理アドレスにアクセスして、メモリ装置１１０からＡ作業セットデータ及びＢ作業セットデータをリードする。その結果、ＳＦＲ２０３にアクセス方向をセッティングして置くことによって、フェッチ後、次にアクセスするプリフェッチ方向を探すのに必要な時間を節約して、ＳｏＣの性能及び処理速度を向上させることができる。
【００６９】
説明の便宜上、作業セットのリード動作を説明したが、多様な実施形態によって、ライト動作、イレーズ動作も含まれる。
【００７０】
図７は、図２に示したメモリ管理ユニットの他の実施形態による概略ブロック図である。説明の便宜上、ＣＰＵ３、マスタＩＰ４、複数のＭＭＵ（１１Ａ、１１Ｂ）、バスインターコネクタ（４３、４４）、及びメモリ装置１１０のみを図示する。
【００７１】
図７を参照すると、マスタＩＰ４は、作業セット単位で動作する。マスタＩＰ４は、複数の作業セットに対する動作を行う。この際、メモリ装置１１０内の複数の作業セットに対応するデータセットは、互いに独立し、マスタＩＰ４は、作業セット毎に独立して運用する。マスタＩＰ４は、各作業セットに対するデータアクセス要請をＭＭＵ（１１Ａ、１１Ｂ）に出力する。
【００７２】
一実施形態として、図７に示した実施形態のように、マスタＩＰ４が、メモリ装置１１０のデータに対してリード動作を行う場合を説明する。図示した例で、マスタＩＰ４は、Ａ作業セット及びＢ作業セットを処理する。例えば、Ａ作業セットは、図１に示したように、ソースイメージを９０°回転する場合とし、Ｂ作業セットは、ソースイメージを１８０°回転する場合と仮定する。
【００７３】
マスタＩＰ４のデータアクセス要請前に、ＣＰＵ３は、メモリ装置１１０にページテーブル１１５を書き込む。ページテーブルは、物理アドレスに対するページテーブルエントリーを複数個含む。
【００７４】
ＣＰＵ３は、プリフェッチ方向情報を設定する。図７に示した実施形態で、ＣＰＵ３は、ＳＦＲ（３０３、３１３）にＡ作業セットに対応するＡプリフェッチ方向情報及びＢ作業セットに対応するＢプリフェッチ方向情報をそれぞれ設定する。
【００７５】
ＣＰＵ３は、作業セット別にアドレス変換を行うＭＭＵ（１１Ａ、１１Ｂ）を割り当てる。図７に示した実施形態で、ＣＰＵ３は、ＭＭＵ  Ａ（１１Ａ）とＭＭＵ  Ｂ（１１Ｂ）とでＡ作業セットとＢ作業セットのそれぞれのアドレス変換を行うように、各作業セットのアドレス情報をセッティングする。即ち、アドレス分配器（Ａｄｄｒｅｓｓ  Ｄｉｓｔｒｉｂｕｔｏｒ）に各作業セットに対するＭＭＵ割り当て情報をセッティングする。実施形態によって、アドレス分配器は、作業セットに対応する仮想アドレスの開始と終了とを知らせるインジケーター情報を含む。
【００７６】
アドレス分配器は、マスタＩＰ４がデータアクセス要請を行うと、要請に含まれる作業セットに対する仮想アドレスＶＡに対応して、当該作業セットが割り当てられたＭＭＵ  ＩＤを第１バスインターコネクタ４３に送る。第１バスインターコネクタ４３は、ＭＭＵ  ＩＤに対応するＭＭＵ（１１Ａ、１１Ｂ）をマスタＩＰ４に連結して、データアクセス要請を伝送する。
【００７７】
例えば、マスタＩＰ４が、Ａ作業セットに対するデータアクセス要請を行う場合、アドレス分配器は、Ａ作業セットに割り当てられたＭＭＵ  ＡのＩＤを第１バスインターコネクタ４３に伝送する。第１バスインターコネクタ４３は、Ａチャネルを開いて、マスタＩＰ４のＡ作業セットに対するデータアクセス要請をＭＭＵ  Ａ（１１Ａ）に伝送する。
【００７８】
ＭＭＵ（１１Ａ、１１Ｂ）が、マスタＩＰ４からデータアクセス要請を受信すると、ＭＭＵ（１１Ａ、１１Ｂ）は、ＴＬＢ（１２Ａ、１２Ｂ）に仮想アドレスに対応する物理アドレス情報の存否を確認し、存在しない場合（ＴＬＢミス）、ページテーブルウォークを行う。
【００７９】
図７の実施形態は、図６の実施形態とは異なり、ＭＭＵ  Ａ（１１Ａ）、ＭＭＵ  Ｂ（１１Ｂ）のそれぞれのＳＦＲ  Ａ（３０３）、ＳＦＲ  Ｂ（３１３）には、ＣＰＵ３によって設定された単一のプリフェッチ方向のみがセッティングされる。即ち、ＳＦＲ  Ａ（３０３）は、Ａプリフェッチ方向に関する情報のみを保存し、Ｂプリフェッチ方向に関する情報を保存しない。ＳＦＲ  Ｂ（３１３）は、Ｂプリフェッチ方向に関する情報のみを保存し、Ａプリフェッチ方向に関する情報を保存しない。また、各プリフェッチバッファ（３０２、３１２）も、自身が属するＭＭＵに割り当てられた当該作業セットに対してプリフェッチされる次のページテーブルエントリーのみを保存する。
【００８０】
例えば、Ａ作業セットである場合、ＭＭＵ  Ａ（１１Ａ）は、ＳＦＲ  Ａ（３０３）に設定されたＡプリフェッチ方向に基づいて、ページテーブル１１５からページテーブルエントリーをフェッチしてＡ作業セットのアドレス変換を行い、次にアクセスするページテーブルエントリーをプリフェッチバッファ３０２に保存する。ＭＭＵ（１１Ａ）は、Ａ作業セットに対してフェッチされたページテーブルエントリーによるアドレス変換後、プリフェッチされたページテーブルエントリーによってアドレス変換を行う。
【００８１】
Ｂ作業セットも、Ａ作業セットのような方法で、ＭＭＵ  Ｂ（１１Ｂ）のＳＦＲ  Ｂ（３１３）に設定されたＢプリフェッチ方向に基づいて、ページテーブルエントリーをフェッチ及びプリフェッチしてアドレス変換を行う。
【００８２】
ＭＭＵ（１１Ａ、１１Ｂ）は、Ａ作業セット及びＢ作業セットのそれぞれの変換された物理アドレスにアクセスして、メモリ装置１１０からＡ作業セットデータ及びＢ作業セットデータをリードする。
【００８３】
説明の便宜上、作業セットのリード動作を説明したが、多様な実施形態によって、ライト動作、イレーズ動作も含まれる。
【００８４】
図８は、図４に示したページテーブルのフィールド構成を示す図である。図８を参照すると、ページテーブルは、複数のページテーブルエントリー（Ｐａｇｅ  Ｔａｂｌｅ  Ｅｎｔｒｙ  ＃１〜＃Ｎ）を含む。一例として、ページテーブルエントリーは、６４ビット（ｂｉｔ）で構成される。
【００８５】
図８に示したページテーブルエントリーは、図６及び図７のページテーブルとは異なり、第１上位ビット［３１：１２］は、仮想ページアドレスに対する物理ページアドレス（Ｐｈｙｓｉｃａｌ  Ｐａｇｅ  Ｎｕｍｂｅｒ：ＰＰＮ）である。下位ビット［１１：０］は、最近アクセスしたページであるか否か、アクセス権限、リード／ライト可否、ページが物理アドレス上にロードされているか否かなどを表わす。
【００８６】
そして、第２上位ビット［３１：１２］は、次にアクセスするページ情報（Ｎｅｘｔ  ＶＰＮ）を表わす。
【００８７】
一実施形態として、第２上位ビット［３１：１２］は、プリフェッチ方向フィールド（ｐｒｅｆｅｔｃｈ  ｄｉｒｅｃｔｉｏｎ  ｆｉｅｌｄ）である。
【００８８】
即ち、ＭＭＵ１０が、ページテーブルウォーク遂行時に、ページテーブルエントリーをフェッチすると、該フェッチされたページテーブルエントリーに含まれる第２上位ビット、即ちプリフェッチ方向フィールドに基づいて、次のプリフェッチをどこで行うかが分かる。
【００８９】
他の実施形態として、第２上位ビット［３１：１２］は、プリフェッチターゲットナンバーフィールド（ｐｒｅｆｅｔｃｈ  ｔａｒｇｅｔ  ｎｕｍｂｅｒ  ｆｉｅｌｄ）であり得る。
【００９０】
即ち、ＭＭＵ１０が、ページテーブルウォーク遂行時に、ページテーブルエントリーをフェッチすると、該フェッチされたページテーブルエントリーに含まれる第２上位ビット、即ちプリフェッチターゲットナンバーフィールドに基づいて、次のページテーブルエントリーにアクセスすることができる。
【００９１】
プリフェッチ方向フィールド又はプリフェッチターゲットナンバーフィールドは、ＣＰＵ３によってページテーブル内に書き込まれる。
【００９２】
図９は、本発明の一実施形態によるメモリ管理ユニットの動作方法を示すフローチャートである。図９を参照すると、先ず、ＣＰＵ３は、メモリ装置１１０にページテーブルを書き込みする（ステップＳ１１）。例えば、メインプロセッサ３は、図５に示したように、ＰＡ（１）にページテーブル情報を書き込むように制御する。
【００９３】
ＣＰＵ３は、ＭＭＵ１０の割り当て情報を設定する（ステップＳ１２）。即ち、マスタＩＰ４が、少なくとも１つ以上の作業セットに対して動作する場合、少なくとも１つ以上のＭＭＵのうち、作業セット毎に、アドレス変換を担当するＭＭＵの割り当て情報を設定する。一例として、図７に示したように、マスタＩＰ４が、２つの作業セットで動作する場合、各作業セットの仮想アドレスに基づいて、アドレス変換を行うＭＭＵ１０を割り当てるように、ＣＰＵ３は、アドレス分配器にＭＭＵ割り当て情報を設定する。実施形態によって、アドレス分配器は、アドレスレジスタ（Ａｄｄｒｅｓｓ  Ｒｅｇｉｓｔｅｒ）を含む。この場合、ＣＰＵ３は、作業セットの各仮想アドレスについてのＭＭＵマッピング情報をアドレスレジスタに設定する。
【００９４】
ＣＰＵ３は、ＭＭＵ１０毎にプリフェッチ方向を設定する（ステップＳ１３）。例えば、ソースイメージの９０°回転に対する作業セットに割り当てられたＭＭＵである場合、ＣＰＵ３は、ＭＭＵ１０がソースイメージを９０°回転してリードするために、次回にアクセスするデータの仮想アドレスを予測するのに必要なプリフェッチ方向をＭＭＵ１０に設定する。実施形態によって、プリフェッチ方向は、ＳＦＲに設定されることもあり、ページテーブル１１５のページテーブルエントリーにプリフェッチ方向フィールドとして定義されることもあり、或いはページテーブルエントリーにプリフェッチターゲットエントリーナンバーフィールドと定義されることもある。
【００９５】
一実施形態として、ＣＰＵ３は、ＭＭＵ１０が１つである場合、ＳＦＲに作業セットの個数によって複数のプリフェッチ方向をＭＭＵ内の１つのＳＦＲに設定して保存する。他の実施形態として、ＣＰＵ３は、ＭＭＵ１０が複数個である場合、各ＭＭＵ１０に属するＳＦＲ毎に割り当てられた作業セットに対するプリフェッチ方向を設定して保存する。
【００９６】
マスタＩＰ４が、少なくとも１つ以上の作業セットで動作すると、ＭＭＵ１０を通じて作業セットに該当するデータに対してアクセスを要請する（ステップＳ１４）。例えば、リード要請である場合、マスタＩＰ４は、リード命令及びリードするデータの仮想アドレスをＭＭＵ１０に伝送する。
【００９７】
ＭＭＵ１０は、マスタＩＰ４からのアクセス要請に応じて、当該作業セットのアドレス変換を行う（ステップＳ１５）。先ず、ＴＬＢ１２に当該作業セットの仮想アドレスに対応するマッピング情報の存否を確認し、ＴＬＢ１２に当該作業セットの仮想アドレスに対応するマッピング情報がある場合、仮想アドレスに対応するメモリ装置１１０の物理アドレスにアクセスしてデータにアクセスする（ステップＳ１６）。しかし、ＴＬＢ１２に当該作業セットの仮想アドレスに対応するマッピング情報がない場合、ページテーブル１１５にアクセスしてページテーブルウォークを行う（ステップＳ１７）。
【００９８】
ＭＭＵ１０は、ページテーブル１１５にアクセスしてページテーブルエントリーをフェッチし、設定されたプリフェッチ方向によって、次のページテーブルエントリーをプリフェッチしてプリフェッチバッファ（Ｐｂｕｆ）に保存する（ステップＳ１８）。ＭＭＵ１０は、フェッチされたページテーブルエントリー及びプリフェッチされた次のページテーブルエントリーによって、当該作業セットの仮想アドレスを物理アドレスに変換して、当該物理アドレスのデータにアクセスする（ステップＳ１９）。
【００９９】
ＭＭＵ１０は、アクセスされたデータをマスタＩＰ４に伝送する（ステップＳ２０）。
【０１００】
図１０は、図２に示したＳｏＣを含む電子装置の一実施形態を示す図である。
【０１０１】
図１０を参照すると、電子装置４００は、携帯電話、スマートフォン、タブレットＰＣ、ＰＤＡ、ＰＭＰ、又は無線通信装置として具現可能である。電子装置４００は、データを保存するメモリ装置４１０を含む。メモリ装置４１０は、不揮発性メモリとメモリコントローラとを含む。メモリコントローラは、ＳｏＣ１の制御によって不揮発性メモリのデータアクセス動作、例えばプログラム動作、イレーズ動作、又はリード動作を制御する。
【０１０２】
無線送受信器４２０は、アンテナ（ＡＮＴ）を通じて無線信号を送受信する。例えば、無線送受信器４２０は、アンテナ（ＡＮＴ）を通じて受信した無線信号をＳｏＣ１で処理される信号に変更する。
【０１０３】
従って、ＳｏＣ１は、無線送受信器４２０から出力された信号を処理し、処理された信号をメモリ装置４１０又はディスプレイ４４０に伝送する。メモリコントローラは、ＳｏＣ１によって処理された信号を不揮発性メモリ装置にプログラム又はライトする。
【０１０４】
また、無線送受信器４２０は、ＳｏＣ１から出力された信号を無線信号に変更し、変更された無線信号を、アンテナ（ＡＮＴ）を通じて外部装置に出力する。
【０１０５】
入力装置４３０は、ＳｏＣ１の動作を制御するための制御信号又はＳｏＣ１によって処理されたデータを入力する装置であり、タッチパッドとコンピュータマウスのようなポインティング装置、キーパッド、又はキーボードとして具現可能である。
【０１０６】
ＳｏＣ１は、メモリ装置４１０から出力されたデータ、無線送受信器４２０から出力されたデータ、又は入力装置４３０から出力されたデータが、ディスプレイ４４０を通じて表示されるように、ディスプレイ４４０の動作を制御する。
【０１０７】
実施形態によって、不揮発性メモリ装置の動作を制御するメモリコントローラは、ＳｏＣ１の一部として具現されるか、或いはＳｏＣ１と別途のチップとして具現可能である。
【０１０８】
図１１は、図２に示したＳｏＣを含む電子装置の他の実施形態を示す図である。
【０１０９】
図１１に示した電子装置５００は、イメージ処理装置、例えばデジタルカメラ、デジタルカメラ付き携帯電話、デジタルカメラ付きスマートフォン、又はデジタルカメラ付きタブレットＰＣとして具現可能である。
【０１１０】
電子装置５００は、メモリ装置５２０を含む。メモリ装置５２０は、不揮発性メモリ及び不揮発性メモリのデータ処理動作、例えばプログラム動作、イレーズ動作、又はリード動作を制御するメモリコントローラを含む。
【０１１１】
電子装置５００のイメージセンサー５１０は、光学イメージをデジタルイメージに変換し、変換されたデジタルイメージは、ＳｏＣ１又はメモリ装置５２０に伝送される。ＳｏＣ１の制御によって、変換されたデジタルイメージは、ディスプレイ５３０を通じて表示されるか、又はメモリ装置５２０に保存される。
【０１１２】
また、メモリ装置５２０に保存されたデータは、ＳｏＣ１又はメモリコントローラの制御によってディスプレイ５３０を通じて表示される。
【０１１３】
実施形態によって、不揮発性メモリの動作を制御するメモリコントローラは、ＳｏＣ１の一部として具現されるか、或いはＳｏＣ１と別個のチップとして具現可能である。
【０１１４】
以上、本発明の実施形態について図面を参照しながら詳細に説明したが、本発明は、上述の実施形態に限定されるものではなく、本発明の技術的範囲から逸脱しない範囲内で多様に変更実施することが可能である。
【符号の説明】
【０１１５】
１    システムオンチップ（ＳｏＣ）
３    ＣＰＵ
４    ＩＰコア（マスタＩＰ）
５    キャッシュ
１０、１０’、１１Ａ、１１Ｂ    メモリ管理ユニット（ＭＭＵ）
１２、１２’、１２Ａ、１２Ｂ    ＴＬＢ（Ｔｒａｎｓｌａｔｉｏｎ  Ｌｏｏｋａｓｉｄｅ  Ｂｕｆｆｅｒ）
４０、４１    システムバス
４３、４４    （第１、第２）バスインターコネクタ
５０    システム周辺ユニット
６０    マルチメディア加速ユニット
６１    カメラインターフェース
６２    グラフィックエンジン
６３    ＨＤＭＩ（登録商標）
７０    接続ユニット
８０    ディスプレイコントローラ
９０    メモリインターフェースユニット
１１０、４１０、５２０    メモリ装置
１１５    ページテーブル
１１７    データ／命令保存部
１２０、４３０    入力装置
１３０、４４０、５３０    ディスプレイ
１００、４００、５００    電子装置
２０１、２０２、３０２、３１２    プリフェッチバッファ（Ｐｂｕｆ）
２０３、３０３、３１３    ＳＲＦ（Ｓｐｅｃｉａｌ  Ｆｕｎｃｔｉｏｎ  Ｒｅｇｉｓｔｅｒ）
４２０    無線送受信器
５１０    イメージセンサー
【図１】
2014175017.tif 000003
【図２】
2014175017.tif 000004
【図３】
2014175017.tif 000005
【図４】
2014175017.tif 000006
【図５】
2014175017.tif 000007
【図６】
2014175017.tif 000008
【図７】
2014175017.tif 000009
【図８】
2014175017.tif 000010
【図９】
2014175017.tif 000011
【図１０】
2014175017.tif 000012
【図１１】
2014175017.tif 000013