(57)【要約】【課題】メモリーへのアクセスにおいて、オーバーヘッドの発生によるメモリーの総帯域の低下を抑制しつつ、データ転送レートを保証する必要があるマスターからのアクセス要求を優先的に処理できること。【解決手段】メモリーアクセス装置は、キューイングバッファーにそれぞれバッファー余裕情報を提供したマスターからの複数のアクセス要求のうち、余裕情報が限界状態に至った第１アクセス要求が存在せず、かつ、他の複数の第２アクセス要求が存在する場合に、直近に発行されたアクセスコマンドとの間でバンク競合によるオーバーヘッドが生じない第２アクセス要求をそうでない第２アクセス要求よりも優先処理する（Ｓ７〜Ｓ９）。【選択図】図３
2016085683.tif 000002
【特許請求の範囲】
【請求項１】
複数のバンクに区分されているとともに前記バンク各々が複数のページに区分されたデータ記憶領域を有するメモリーに対してアクセスコマンドを発行するメモリーアクセス装置であって、
複数のマスター各々から入力される前記メモリーに対するアクセス要求を一時記憶するキューイングバッファーと、
前記アクセス要求の要求元のデータバッファーにおけるデータのリード処理またはライト処理の余裕状況を示すバッファー余裕情報を前記要求元から取得するバッファー余裕情報取得部と、
前記バッファー余裕情報が取得されてからの経過時間に応じて前記バッファー余裕情報を更新する余裕情報更新部と、
前記要求元各々の前記バッファー余裕情報が予め定められた限界状態に至ったか否かを判定する限界判定部と、
前記キューイングバッファーに存在する前記アクセス要求の中からキャッシュコヒーレンシの維持を制約条件とする順番で１つずつ前記アクセス要求を選択する選択部と、
前記選択部により順次選択される前記アクセス要求に対応するアクセスコマンドを前記メモリーへ発行するコマンド発行部と、を備え、
前記選択部は、
前記キューイングバッファーにそれぞれ前記バッファー余裕情報に対応する複数の前記アクセス要求が存在する場合に、前記限界状態に至ったと判定された前記バッファー余裕情報に対応する第１アクセス要求を前記限界状態に至っていないと判定された前記バッファー余裕情報に対応する第２アクセス要求よりも優先して選択する第１選択部と、
前記キューイングバッファーに前記第１アクセス要求が存在せず、かつ、複数の前記第２アクセス要求が存在する場合に、直近に発行された前記アクセスコマンドとの間でバンク競合によるオーバーヘッドが生じない前記第２アクセス要求を前記バンク競合によるオーバーヘッドが生じる前記第２アクセス要求よりも優先して選択する第２選択部と、を含む、メモリーアクセス装置。
【請求項２】
前記第１選択部は、前記キューイングバッファーに複数の前記第１アクセス要求が存在する場合に、前記バンク競合によるオーバーヘッドが生じない前記第１アクセス要求を前記バンク競合によるオーバーヘッドが生じる前記第１アクセス要求よりも優先して選択する、請求項１に記載のメモリーアクセス装置。
【請求項３】
前記第２選択部は、前記キューイングバッファーに前記バンク競合によるオーバーヘッドが生じない前記第２アクセス要求が複数存在する場合に、前記限界状態により近い前記バッファー余裕情報に対応する前記第２アクセス要求を優先して選択する、請求項１または請求項２に記載のメモリーアクセス装置。
【請求項４】
前記選択部は、前記キューイングバッファーに前記バッファー余裕情報取得部に対して前記バッファー余裕情報を提供した前記要求元からの前記アクセス要求と前記バッファー余裕情報を提供しなかった前記要求元からの前記アクセス要求とが存在する場合に、前記バッファー余裕情報を提供した前記要求元からの前記アクセス要求を前記バッファー余裕情報を提供しなかった前記要求元からの前記アクセス要求よりも優先して選択する、請求項１から請求項３のいずれか１項に記載のメモリーアクセス装置。
【請求項５】
複数のバンクに区分されているとともに前記バンク各々が複数のページに区分されたデータ記憶領域を有するメモリーに対してアクセスコマンドを発行する際に、複数のマスター各々から入力される前記メモリーに対するアクセス要求を一時記憶するキューイングバッファーを参照し、前記アクセス要求に対応する前記アクセスコマンドを前記メモリーに発行する順序を制御するメモリーアクセス制御方法であって、
前記アクセス要求の要求元のデータバッファーにおけるデータのリード処理またはライト処理の余裕状況を示すバッファー余裕情報を前記要求元から取得する工程と、
前記バッファー余裕情報が取得されてからの経過時間に応じて前記バッファー余裕情報を更新する工程と、
前記要求元各々の前記バッファー余裕情報が予め定められた限界状態に至ったか否かを判定する工程と、
前記キューイングバッファーに存在する前記アクセス要求の中からキャッシュコヒーレンシの維持を制約条件とする順番で１つずつ前記アクセス要求を選択する工程と、
前記選択部により順次選択される前記アクセス要求に対応するアクセスコマンドを前記メモリーへ発行する工程と、を有し、
前記アクセス要求を選択する工程は、
前記キューイングバッファーに複数の前記アクセス要求が存在する場合に、前記限界状態に至ったと判定された前記バッファー余裕情報に対応する第１アクセス要求を前記限界状態に至っていないと判定された前記バッファー余裕情報に対応する第２アクセス要求よりも優先して選択する工程と、
前記キューイングバッファーに前記第１アクセス要求が存在せず、かつ、複数の前記第２アクセス要求が存在する場合に、直近に発行された前記アクセスコマンドとの間でバンク競合によるオーバーヘッドが生じない前記第２アクセス要求を前記バンク競合によるオーバーヘッドが生じる前記第２アクセス要求よりも優先して選択する工程と、を含む、メモリーアクセス制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリーアクセス装置およびメモリーアクセス制御方法に関する。
【背景技術】
【０００２】
一般に、ＳＤＲＡＭ（Synchronous Dynamic Random Access Memory）のデータ記憶領域は、複数のバンクに区分されており、前記バンク各々は複数のページに区分されている。前記ＳＤＲＡＭは、前記メモリーアクセス装置によって前記ページ単位で活性化され、活性化された前記ページがアクセス可能になる。
【０００３】
また、前記ＳＤＲＡＭにおいて、異なる前記バンク各々の前記ページを独立して活性化することが可能である。そのため、異なる前記バンクへのアクセスが続く場合、大きなオーバーヘッドが生じず、連続して高速なアクセスが可能である。
【０００４】
一方、１つの前記バンク内における異なる前記ページへのアクセスが続く場合、バンク競合による比較的大きなオーバーヘッドが生じる。即ち、１つの前記バンク内でのアクセスにおいては、先に活性化された前記ページのクローズ処理が終了した後に次の前記ページを活性化するステップが必要であり、このステップが前記バンク競合によるオーバーヘッドとなる。
【０００５】
一般に、前記ＳＤＲＡＭのようなメモリーに対するデータの書き込みおよび読み出しのためのアクセスは、メモリーアクセス装置によって制御される。前記メモリーアクセス装置は、マスターから入力される前記メモリーへのアクセス要求に対応するアクセスコマンドを前記メモリーへ発行する。前記マスターはクライアントなどとも称される。
【０００６】
前記メモリーへのアクセス制御において、それぞれデータ転送レートを保証する必要がある複数の前記マスターからの前記アクセス要求が競合する場合に、前記マスターにおけるデータバッファーのデータ蓄積状況に基づいて前記メモリーに対するアクセス権の調停を行うことが知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００２−１３２７０７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ところで、前記メモリーアクセス装置において、前記マスターにおけるデータバッファーにおけるデータ蓄積状況の余裕度がより小さい前記マスターからの前記アクセス要求がより優先的に処理される場合、前記メモリーの総帯域が低下してしまう場合がある。即ち、優先される前記要求コマンドの処理においてバンク競合による大きなオーバーヘッドが生じ、これが前記メモリーの総帯域を低下させるおそれがある。
【０００９】
本発明の目的は、ＳＤＲＡＭなどのメモリーへのアクセスにおいて、オーバーヘッドの発生によるメモリーの総帯域の低下を抑制しつつ、データ転送レートを保証する必要があるマスターからのアクセス要求を優先的に処理できるメモリーアクセス装置およびメモリーアクセス制御方法を提供することにある。
【課題を解決するための手段】
【００１０】
本発明の一の局面に係るメモリーアクセス装置は、メモリーに対してアクセスコマンドを発行する装置であり、キューイングバッファーと、バッファー余裕情報取得部と、余裕情報更新部と、限界判定部と、選択部と、コマンド発行部とを備える。前記メモリーは、複数のバンクに区分されているとともに前記バンク各々が複数のページに区分されたデータ記憶領域を有する。前記キューイングバッファーは、複数のマスター各々から入力される前記メモリーに対するアクセス要求を一時記憶するバッファーである。前記バッファー余裕情報取得部は、前記アクセス要求の要求元のデータバッファーにおけるデータのリード処理またはライト処理の余裕状況を示すバッファー余裕情報を前記要求元から取得する。前記余裕情報更新部は、前記バッファー余裕情報が取得されてからの経過時間に応じて前記バッファー余裕情報を更新する。前記限界判定部は、前記要求元各々の前記バッファー余裕情報が予め定められた限界状態に至ったか否かを判定する。前記選択部は、前記キューイングバッファーに存在する前記アクセス要求の中からキャッシュコヒーレンシの維持を制約条件とする順番で１つずつ前記アクセス要求を選択する。前記コマンド発行部は、前記選択部により順次選択される前記アクセス要求に対応するアクセスコマンドを前記メモリーへ発行する。前記選択部は、第１選択部および第２選択部を含む。前記第１選択部は、前記キューイングバッファーにそれぞれ前記バッファー余裕情報に対応する複数の前記アクセス要求が存在する場合に、第１アクセス要求を第２アクセス要求よりも優先して選択する。前記第１アクセス要求は、前記限界状態に至ったと判定された前記バッファー余裕情報に対応する前記アクセス要求である。前記第２アクセス要求は、前記限界状態に至っていないと判定された前記バッファー余裕情報に対応する前記アクセス要求である。前記第２選択部は、前記キューイングバッファーに前記第１アクセス要求が存在せず、かつ、複数の前記第２アクセス要求が存在する場合に、直近に発行された前記アクセスコマンドとの間でバンク競合によるオーバーヘッドが生じない前記第２アクセス要求を前記バンク競合によるオーバーヘッドが生じる前記第２アクセス要求よりも優先して選択する。
【００１１】
本発明の他の局面に係るメモリーアクセス制御方法は、前記メモリーに対して前記アクセスコマンドを発行する際に、前記キューイングバッファーを参照し、前記アクセス要求に対応する前記アクセスコマンドを前記メモリーに発行する順序を制御する方法であり、以下に示される各工程を有する。１つめの工程は、前記アクセス要求の要求元のデータバッファーにおけるデータのリード処理またはライト処理の余裕状況を示すバッファー余裕情報を前記要求元から取得する工程である。２つめの工程は、前記バッファー余裕情報が取得されてからの経過時間に応じて前記バッファー余裕情報を更新する工程である。３つめの工程は、前記要求元各々の前記バッファー余裕情報が予め定められた限界状態に至ったか否かを判定する工程である。４つめの工程は、前記キューイングバッファーに存在する前記アクセス要求の中からキャッシュコヒーレンシの維持を制約条件とする順番で１つずつ前記アクセス要求を選択する工程である。５つめの工程は、前記選択部により順次選択される前記アクセス要求に対応するアクセスコマンドを前記メモリーへ発行する工程である。前記アクセス要求を選択する工程は、以下に示される各工程を含む。前記アクセス要求を選択する工程の１つめは、前記キューイングバッファーに複数の前記アクセス要求が存在する場合に、前記第１アクセス要求を前記第２アクセス要求よりも優先して選択する工程である。前記アクセス要求を選択する工程の２つめは、前記キューイングバッファーに前記第１アクセス要求が存在せず、かつ、複数の前記第２アクセス要求が存在する場合に、直近に発行された前記アクセスコマンドとの間でバンク競合によるオーバーヘッドが生じない前記第２アクセス要求を前記バンク競合によるオーバーヘッドが生じる前記第２アクセス要求よりも優先して選択する工程である。
【発明の効果】
【００１２】
本発明によれば、ＳＤＲＡＭなどのメモリーへのアクセスにおいて、オーバーヘッドの発生によるメモリーの総帯域の低下を抑制しつつ、データ転送レートを保証する必要があるマスターからのアクセス要求を優先的に処理できるメモリーアクセス装置およびメモリーアクセス制御方法を提供することが可能になる。
【図面の簡単な説明】
【００１３】
【図１】図１は、本発明の実施形態に係るメモリーアクセス装置を備える画像処理装置のブロック図である。
【図２】図２は、本発明の実施形態に係るメモリーアクセス装置のブロック図である。
【図３】図３は、本発明の実施形態に係るメモリーアクセス装置におけるＳＤＲＡＭへのアクセスコマンドの発行手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下、添付図面を参照しながら、本発明の実施形態について説明する。なお、以下の実施形態は、本発明を具体化した一例であって、本発明の技術的範囲を限定する性格を有さない。
【００１５】
［画像形成装置の構成］
まず、図１を参照しつつ、本発明の実施形態に係るメモリーアクセス装置１０を備える画像処理装置１００の概略構成について説明する。画像処理装置１００は、メモリーアクセス装置１０の適用例の１つである。
【００１６】
図１が示す画像処理装置１００は、原稿から画像を読み取る画像読取装置の機能および記録シートへ画像を形成する画像形成装置の機能を兼ね備えた複合機である。なお、画像処理装置１００が、前記画像形成装置、前記画像読取装置、前記画像形成装置および前記画像読取装置の機能を備える複写機または前記画像読取装置の機能および画像送信機能を備えるファクシミリ装置などであることも考えられる。
【００１７】
画像処理装置１００は、ＳＤＲＡＭ９、メモリーアクセス装置１０、スキャン部２０、スキャン制御部３０、プリント部４０、プリント制御部５０、通信制御部６０および画像処理部７０などを備える。メモリーアクセス装置１０、スキャン制御部３０、プリント制御部５０、通信制御部６０および画像処理部７０は、それぞれバス８０に接続されおり、バス８０を通じて相互にデータの受け渡しが可能である。
【００１８】
スキャン部２０は、前記原稿に光を走査する不図示の光学系、および原稿からの反射光の光量を画素ごとに検出して原稿画像データを出力する不図示のイメージセンサーなどを備える。
【００１９】
スキャン制御部３０は、スキャン部２０を制御して前記原稿画像データを取得する。さらに、スキャン制御部３０は、メモリーアクセス装置１０を通じて前記原稿画像データをＳＤＲＡＭ９に書き込む処理なども実行する。例えば、スキャン制御部３０は、ＳＤＲＡＭ９を介して前記原稿画像データを画像処理部７０、プリント制御部５０または通信制御部６０などの他の機器に引き渡す場合がある。
【００２０】
プリント部４０は、周知の電子写真方式の画像形成処理によって前記記録シートに画像を形成する。プリント部４０は、不図示の像担持体およびその周辺機器を備え、前記像担持体から前記記録シートに現像剤の画像を転写するとともにその画像を前記記録シートに定着させる。
【００２１】
プリント制御部５０は、プリント部４０を制御する。プリント制御部５０は、他の機器から記録用画像データを取得し、その記録用画像データ基づく画像を前記記録シートに形成する処理をプリント部４０に実行させる。
【００２２】
通信制御部６０は、パーソナルコンピューターなどの外部装置との間でデータの送受信を行うとともに、バス８０を通じて他の機器とデータの受け渡しを行う。例えば、通信制御部６０は、前記外部機器から画像データを受信し、その画像データを前記記録用画像データとして前記プリント制御部５０に引き渡す。
【００２３】
また、通信制御部６０は、スキャン制御部３０から前記原稿画像データを取得し、その原稿画像データを含むデータを前記外部装置へ送信する。
【００２４】
画像処理部７０は、バス８０を通じて他の機器から得た画像データに対する画像処理を実行する。画像処理部７０による画像処理の対象は、例えば、スキャン制御部３０から前記通信制御部６０を通じて前記外部装置へ送信される画像データまたは前記スキャン制御部３０から前記プリント制御部５０へ引き渡される前記原稿画像データなどである。例えば、画像処理部７０は、他の機器から得た前記画像データに対し、画像回転処理、ハーフトーン処理またはサイズカット処理などの画像処理を施す。
【００２５】
ＳＤＲＡＭ９は、高速でデータの書き込みおよび読み出しが可能なメモリーである。ＳＤＲＡＭ９は、バス８０に接続された機器から発行されるアクセスコマンドの内容に従ってそのデータ領域へのデータの記録および前記データ領域に記録されているデータの出力を行う。
【００２６】
ＳＤＲＡＭ９の前記データ記憶領域は、複数のバンクに区分されており、前記バンク各々が複数のページに区分されている。ＳＤＲＡＭ９は、メモリーアクセス装置１０によって前記ページ単位で活性化され、活性化された前記ページがアクセス可能になる。
【００２７】
ＳＤＲＡＭ９において、１つの前記バンク内の前記ページと他の前記バンク内の前記ページとを独立して活性化することが可能である。そのため、異なる前記バンクへのアクセスが続く場合、大きなオーバーヘッドが生じず、連続して高速なアクセスが可能である。
【００２８】
一方、１つの前記バンク内における異なる前記ページへのアクセスが続く場合、バンク競合による比較的大きなオーバーヘッドが生じる。以下、前記バンク競合によるオーバーヘッドのことをバンク競合オーバーヘッドと称する。
【００２９】
例えば、同一の前記バンクにおける第１ページおよび第２ページ各々へのリードアクセスコマンドが連続して発行される場合を考える。この場合、先に活性化された前記第１ページのクローズ処理が終了した後に前記第２ページを活性化するステップが必要である。このステップにおいて、前記第１ページの前記クローズ処理に要する時間が比較的長いため、前記第２ページの活性化コマンドの発行までの待ち時間が、前記バンク競合オーバーヘッドとなる。
【００３０】
本実施形態では、主としてメモリーアクセス装置１０がＳＤＲＡＭ９に対して前記アクセスコマンドを発行する。この場合、スキャン制御部３０、プリント制御部５０、通信制御部６０および画像処理部７０の各々が、バス８０を通じてメモリーアクセス装置１０に向けてＳＤＲＡＭ９へのアクセス要求の列を含むアクセス要求トランザクションを出力する。
【００３１】
一般に、メモリーアクセス装置１０は、ＤＭＡＣ（Direct Memory Access Controller）などと称される。前記アクセス要求の１つはリードアクセス要求であり、これに対応する前記アクセスコマンドはリードアクセスコマンドである。前記アクセス要求の他の１つはライトアクセス要求であり、これに対応する前記アクセスコマンドはライトアクセスコマンドである。
【００３２】
以下の説明において、メモリーアクセス装置１０に対して前記アクセス要求トランザクションを出力する機器のことを、メモリーアクセス装置１０に対してマスターと称する。本実施形態における前記マスターは、スキャン制御部３０、プリント制御部５０、通信制御部６０および画像処理部７０の各々である。なお、前記マスターがクライアントと称される場合もある。
【００３３】
前記マスター各々は、リードデータバッファー８１およびライトデータバッファー８２を備える。リードデータバッファー８１は、前記マスターがメモリーアクセス装置１０に対して出力する前記リードアクセス要求に対応するリードデータを記憶するバッファーである。ライトデータバッファー８２は、前記マスターがメモリーアクセス装置１０に対して出力する前記ライトアクセス要求に対応するライトデータを記憶するバッファーである。
【００３４】
図１が示す例では、スキャン制御部３０が第１リードデータバッファー８１ａおよび第１ライトデータバッファー８２ａを備える。同様に、プリント制御部５０が第２リードデータバッファー８１ｂおよび第２ライトデータバッファー８２ｂを備える。同様に、画像処理部７０が第３リードデータバッファー８１ｃおよび第３ライトデータバッファー８２ｃを備える。同様に、通信制御部６０が第４リードデータバッファー８１ｄおよび第４ライトデータバッファー８２ｄを備える。
【００３５】
前記リードデータは、前記マスターが前記リードアクセス要求を出力したときにＳＤＲＡＭ９からバス８０を通じてリードデータバッファー８１へ転送される。さらに、前記リードデータは、前記マスターによって読み出されることによりリードデータバッファー８１から消去される。
【００３６】
前記ライトデータは、前記マスターが前記ライトアクセス要求を出力する際に前記マスターによってライトデータバッファー８２へ格納される。さらに、前記ライトデータは、ライトデータバッファー８２からバス８０を通じてＳＤＲＡＭ９へ転送されることによってライトデータバッファー８２から消去される。
【００３７】
前記リードアクセス要求を出力した前記マスターにおいて、リードデータバッファー８１における前記リードデータの残存量は、データのリード処理の余裕度を表す。即ち、リードデータバッファー８１における前記リードデータの残存量が少ないほど前記ロード処理におけるアンダーフローが生じやすくなる。前記アンダーフローは、ＳＤＲＡＭ９からリードデータバッファー８１への前記リードデータの転送が間に合わずに前記マスターによる前記リード処理が継続できなくなる状態である。
【００３８】
また、前記ライトアクセス要求を出力した前記マスターにおいて、ライトデータバッファー８２の空き容量は、データのライト処理の余裕度を表す。即ち、ライトデータバッファー８２の空き容量が少ないほど前記ライト処理におけるオーバーフローが生じやすくなる。前記オーバーフローは、ライトデータバッファー８２からＳＤＲＡＭ９への前記ライトデータの転送が間に合わずに前記マスターによる前記ライト処理が継続できなくなる状態である。
【００３９】
従って、リードデータバッファー８１における前記リードデータの残量は、前記リード処理におけるデータ蓄積状況の余裕度を示す。即ち、リードデータバッファー８１において、前記リードデータの残量が少ないほど前記リード処理におけるデータ蓄積状況の余裕度が小さい。
【００４０】
また、ライトデータバッファー８２の空き容量は、前記ライト処理におけるデータ蓄積状況の余裕度を示す。即ち、ライトデータバッファー８２において、空き容量が少ないほど前記ライト処理におけるデータ蓄積状況の余裕度が小さい。
【００４１】
メモリーアクセス装置１０は、ＳＤＲＡＭ９に対して前記アクセスコマンドを発行する装置である。メモリーアクセス装置１０は、前記マスターから入力されるアクセス要求トランザクションに含まれるアクセス要求キューを前記オーバーヘッドが減少するように並べ替え、並べ替え後の順序で前記アクセスコマンドをＳＤＲＡＭ９へ発行する。前記アクセス要求キューは、ＳＤＲＡＭ９に対する前記アクセス要求の列である。
【００４２】
メモリーアクセス装置１０は、データ転送レートを保証する必要がある前記アクセス要求トランザクションを受けた場合、それを他の前記アクセス要求トランザクションよりも優先して処理する必要がある。これにより、前記アンダーフローおよび前記オーバーフローの発生を防ぐことによるデータ転送レートの保証が可能になる。
【００４３】
以下の説明において、前記アクセス要求トランザクションに含まれる前記アクセス要求各々のことを要求パケットと称する場合がある。さらに、データ転送レートを保証する必要がある前記アクセス要求トランザクションにおける前記要求パケットのことを保証パケットと称する場合がある。
【００４４】
メモリーアクセス装置１０は、複数の前記保証パケットを受け取った場合にも、ＳＤＲＡＭ９に対するアクセス権の調停を行い、全ての前記保証パケットについてその要求元における前記アンダーフローおよび前記オーバーフローの発生を防ぐことが求められる。
【００４５】
例えば、前記マスターにおけるリードデータバッファー８１およびライトデータバッファー８２のデータ蓄積状況に基づいてＳＤＲＡＭ９に対するアクセス権の調停を行うことが知られている。
【００４６】
ところで、メモリーアクセス装置１０において、リードデータバッファー８１およびライトデータバッファー８２における前記余裕度がより小さい前記マスターからの前記保証パケット（アクセス要求）がより優先的に処理される場合、ＳＤＲＡＭ９の総帯域が低下してしまう場合がある。即ち、優先される前記保証パケットの処理において比較的大きな前記バンク競合オーバーヘッドが生じ、これがＳＤＲＡＭ９の総帯域を低下させるおそれがある。
【００４７】
一方、メモリーアクセス装置１０は、ＳＤＲＡＭ９へのアクセスにおいて、後述するアクセス調停処理を実行することによって前記バンク競合オーバーヘッドを隠蔽することができる。これにより、メモリーアクセス装置１０は、前記バンク競合のオーバーヘッドが発生することによるＳＤＲＡＭ９の総帯域の低下を抑制しつつ、データ転送レートを保証する必要がある前記保証パケットを優先的に処理できる。
【００４８】
［メモリーアクセス装置］
次に、図２，３を参照しつつ、メモリーアクセス装置１０について説明する。メモリーアクセス装置１０は、要求トランザクション入力部１と、アクセス要求分割部２と、複数のキューイングバッファー３と、アクセス要求選択部４と、コマンド発行部５とを備える。
【００４９】
キューイングバッファー３各々は、パケット記憶部３１と、余裕情報記憶部３２と、余裕情報更新部３３と、限界判定部３４と、滞留時間計時部３５とを含む。
【００５０】
メモリーアクセス装置１０は、例えばＡＳＩＣ（Application Specific Integrated Circuit）またはＤＳＰ（digital Signal Processor）などによって構成されている。
【００５１】
要求トランザクション入力部１は、ＳＤＲＡＭ９への前記アクセス要求の列を含むアクセス要求トランザクションを前記マスターから取得する処理を実行する。前記アクセス要求トランザクションは、バス８０を通じて前記マスターから要求トランザクション入力部１へ入力される。
【００５２】
前記アクセス要求トランザクションは、ＳＤＲＡＭ９に対して前記データ記憶領域に記憶されているデータを読み出す処理を要求する前記リードアクセス要求と、ＳＤＲＡＭ９に対して前記データ記憶領域にデータを記録する処理を要求する前記ライトアクセスとを含む。前記リードアクセス要求および前記ライトアクセス要求は、その要求の種類の情報と、前記データ記憶領域におけるアドレスを指定する行アドレス情報および列アドレス情報とを含む。
【００５３】
さらに、要求トランザクション入力部１は、データ転送レートを保証する必要がある前記アクセス要求である前記保証パケットの要求元からバッファー余裕情報を取得する。従って、前記アクセス要求トランザクションにおける複数の前記要求パケットのうち、対応する前記バッファー余裕情報が存在するものが前記保証パケットであり、そうでないものは前記保証パケットではない。
【００５４】
前記リードアクセス要求の前記バッファー余裕情報は、前記要求元におけるリードデータバッファー８１の前記リードデータの残量の情報である。前記ライトアクセス要求の前記バッファー余裕情報は、前記要求元におけるライトデータバッファー８２の空き容量の情報である。
【００５５】
即ち、要求トランザクション入力部１は、前記アクセス要求の要求元のデータバッファーにおけるデータのリード処理またはライト処理の余裕状況を示す前記バッファー余裕情報を前記要求元から取得する工程を実行する。なお、要求トランザクション入力部１はバッファー余裕情報取得部の一例である。
【００５６】
メモリーアクセス装置１０は、前記保証パケットを出力する可能性がある前記マスターとサイドバンド信号線８００で接続されている。以下の説明において、前記保証パケットを出力する前記マスターのことを保証要求マスターと称する。前記保証要求マスターは、メモリーアクセス装置１０に対して前記バッファー余裕情報を提供した前記マスターである。
【００５７】
要求トランザクション入力部１は、前記保証要求マスターからサイドバンド信号線８００を通じて前記バッファー余裕情報を取得する。サイドバンド信号線８００を通じて前記保証要求マスターからメモリーアクセス装置１０へ伝送される前記バッファー余裕情報は、そのバッファー余裕情報に対応する前記アクセス要求が前記保証パケットであることを通知する情報でもある。
【００５８】
従って、メモリーアクセス装置１０は、キューイングバッファー３に存在する前記要求パケット（前記アクセス要求）のうち、余裕情報記憶部３２内に対応する前記バッファー余裕情報が存在するものを前記保証パケットであると判定し、それ以外のものを前記保証パケットではないと判定する。以下の説明において、前記保証パケットではない前記アクセス要求（前記要求パケット）のことを通常パケットと称する。
【００５９】
前記通常パケットの出力元は、メモリーアクセス装置１０に対して前記バッファー余裕情報を提供しなかった前記アクセス要求の要求元である。以下、前記バッファー余裕情報を提供しなかった前記アクセス要求の要求元のことを通常要求マスターと称する。
【００６０】
アクセス要求分割部２は、前記マスターから入力される前記アクセス要求トランザクションを前記要求パケットごとに分割してキューイングバッファー３のパケット記憶部３１に格納する。さらに、アクセス要求分割部２は、前記保証パケットに対応する前記バッファー余裕情報を前記保証パケットの格納先であるキューイングバッファー３の余裕情報記憶部３２に格納する。
【００６１】
キューイングバッファー３のパケット記憶部３１は、前記マスター各々から入力される前記アクセス要求トランザクションにおける前記要求パケット（前記アクセス要求）各々を一時記憶する。キューイングバッファー３の余裕情報記憶部３２は、パケット記憶部３１内の前記要求パケットに対応する前記バッファー余裕情報を一時記憶する。
【００６２】
キューイングバッファー３の余裕情報更新部３３は、余裕情報記憶部３２内の前記バッファー余裕情報を、前記バッファー余裕情報が取得されてからの経過時間に応じて更新する工程を実行する。前記保証要求マスターから得られる前記バッファー余裕情報は、それを取得した時点における前記保証要求マスターの状況を示す情報である。前記保証要求マスターの状況は、リードデータバッファー８１およびライトデータバッファー８２へのアクセス処理が進行することにより時間の経過とともに変化する。
【００６３】
例えば、余裕情報更新部３３は、予め定められた周期で前記バッファー余裕情報の値を予め定められた単位減算値ずつ減算することによって前記バッファー余裕情報を更新する。前記単位減算値は、前記周期の期間における前記リード処理または前記ライト処理の進行に伴う前記リードデータバッファー８１または前記ライトデータバッファー８２の蓄積データの変化量に相当する。
【００６４】
なお、余裕情報更新部３３が、最新の前記バッファー余裕情報を前記保証要求マスターから随時取得し、前記余裕情報記憶部３２の情報を取得した前記バッファー余裕情報に更新することも考えられる。
【００６５】
限界判定部３４は、余裕情報記憶部３２に記憶されている最新の前記バッファー余裕情報が予め定められた限界状態に至ったか否かを判定する工程を実行する。限界判定部３４は、最新の前記バッファー余裕情報が前記限界状態に至ったと判定した場合、その判定結果をアクセス要求選択部４へ通知する。
【００６６】
前記限界状態は、前記保証要求マスターにおいて前記アンダーフローおよび前記オーバーフローを引き起こさないためにパケット記憶部３１内の前記保証パケットに対応する前記アクセスコマンドをＳＤＲＡＭ９へ発行すべきタイミングの限界が来ている状態を意味する。但し、前記限界状態と判定されるタイミングは、真の限界のタイミングに対して若干の余裕が見込まれたタイミングである。
【００６７】
従って、パケット記憶部３１内の前記保証パケットに対応する前記アクセスコマンドの発行が、少なくとも前記バッファー余裕情報が前記限界状態であると判定された時点またはその時点から若干の余裕時間内に行われれば、前記保証要求マスターにおけるデータ転送レートが保証される。
【００６８】
滞留時間計時部３５は、パケット記憶部３１における前記要求パケットの滞留時間を計時する。前記滞留時間は、前記要求パケットがメモリーアクセス装置１０に入力されてからの経過時間でもある
【００６９】
さらに、滞留時間計時部３５は、前記限界状態であると判定された前記バッファー余裕情報に対応する前記保証パケットがパケット記憶部３１に残留している場合に、前記限界状態の判定結果が得られてからの経過時間も計時する。以下、この計時時間のことを限界後滞留時間と称する。
【００７０】
前記滞留時間および前記限界後滞留時間は、滞留時間計時部３５からアクセス要求選択部４へ通知される。
【００７１】
アクセス要求選択部４は、キューイングバッファー３各々に存在する前記要求パケット（前記アクセス要求）の中からキャッシュコヒーレンシの維持を制約条件とする予め定められた選択ルールに従った順番で１つずつ前記要求パケットを選択するパケット選択工程を実行する。
【００７２】
即ち、アクセス要求選択部４は、ＳＤＲＡＭ９に対して前記アクセスコマンドを発行する際に、キューイングバッファー３を参照し、前記要求パケット（前記アクセス要求）に対応する前記アクセスコマンドをＳＤＲＡＭ９に発行する順序を制御する。
【００７３】
前記制約条件は、ＳＤＲＡＭ９の前記データ記憶領域における同一アドレスをアクセス対象とする前記要求パケットが存在する場合に、前記要求トランザクションにおけるそれらの前後の関係を維持した順番で前記要求パケットを選択することである。前記パケット選択工程の詳細については後述する。
【００７４】
コマンド発行部５は、アクセス要求選択部４により順次選択される前記要求パケットに対応する前記アクセスコマンドをＳＤＲＡＭ９へ発行するコマンド発行工程を実行する。以下の説明において、最後に発行された前記要求パケットに対応する前記アクセスコマンドのことを直近発行コマンドと称する。
【００７５】
さらに、コマンド発行部５は、前記要求コマンドに対応する前記リードアクセスコマンドおよび前記ライトアクセスコマンドの一方に付随して必要な活性化コマンドおよびプリチャージコマンドもＳＤＲＡＭ９に発行する。
【００７６】
より具体的には、コマンド発行部５は、前記行アドレス情報を含む前記活性化コマンドを発行した後に、前記列アドレス情報を含む前記リードアクセスコマンドまたは前記ライトアクセスコマンドを発行し、さらに前記プリチャージコマンドを発行する。コマンド発行部５は、ＳＤＲＡＭ９の仕様によって予め定められたタイミングで各コマンドを発行する。
【００７７】
コマンド発行部５によって発行された前記アクセスコマンドに対応する前記要求パケット、即ち、アクセス要求選択部４がコマンド発行用に選択した前記要求パケットは、キューイングバッファー３から消去される。
【００７８】
［アクセスコマンド発行順序の具体例］
続いて、図３を参照しつつ、前記アクセス要求トランザクションにおける各アクセス要求に対応するコマンドの発行順序の具体例について説明する。図３は、メモリーアクセス装置１０におけるＳＤＲＡＭ９への前記アクセスコマンドの発行手順の一例を示すフローチャートである。より具体的には、図３は、アクセス要求選択部４がキューイングバッファー３に存在する複数の前記要求コマンドから前記アクセスコマンドの発行の対象を選択するルールの一例を示す。
【００７９】
以下の説明において、Ｓ１，Ｓ２，・・・は、アクセス要求選択部４またはコマンド発行部５が実行する各工程の識別符号を表す。
【００８０】
＜工程Ｓ１＞
まず、アクセス要求選択部４は、複数のキューイングバッファー３に存在する複数の前記要求パケットについてコヒーレンシを維持するという前記制約条件を満たすために必要なコマンド発行順序の制約状況を判定する。そして、アクセス要求選択部４は、次のコマンド発行の対象とするとコヒーレンシが維持されなくなる前記要求パケット（前記アクセス要求）を、以下に示される工程Ｓ２〜Ｓ９における判定処理および選択処理の対象から除外する。
【００８１】
＜工程Ｓ２＞
さらに、アクセス要求選択部４は、複数のキューイングバッファー３のいずれに前記保証パケットが存在するかを判定する。例えば、アクセス要求選択部４は、本工程において、前記保証パケットを記憶するキューイングバッファー３の識別情報のリストと、前記通常パケットを記憶するキューイングバッファー３の識別情報のリストとを作成する。
【００８２】
そして、アクセス要求選択部４は、複数のキューイングバッファー３のいずれかに前記保証パケットが存在する場合に、実行する処理を後述する工程Ｓ３〜Ｓ９へ移行させる。一方、前記保証パケットが存在しない場合、アクセス要求選択部４は、実行する処理を後述する工程Ｓ１０〜Ｓ１２へ移行させる。
【００８３】
工程Ｓ３〜Ｓ９の処理は、前記保証要求マスターからの前記要求パケット（前記保証パケット）をコマンド発行の対象として選択する処理である。一方、工程Ｓ１０〜Ｓ１２の処理は、前記通常要求マスターからの前記要求パケット（前記通常パケット）をコマンド発行の対象として選択する処理である。
【００８４】
従って、アクセス要求選択部４が実行する工程Ｓ２〜Ｓ９は、前記保証要求マスターからの前記要求パケットを前記通常要求マスターからの前記要求パケットよりも優先して選択する工程の一例である。
【００８５】
＜工程Ｓ３＞
前記保証パケットが存在する場合、アクセス要求選択部４は、複数のキューイングバッファー３に前記バッファー余裕情報が前記限界状態に至ったと判定された前記保証パケットが存在するか否かを判定する。以下の説明において、前記限界状態であると判定された前記バッファー余裕情報に対応する前記保証パケットのことを限界パケットと称する。
【００８６】
そして、アクセス要求選択部４は、複数のキューイングバッファー３のいずれかに前記限界パケットが存在する場合に、実行する処理を後述する工程Ｓ４〜Ｓ６へ移行させる。一方、前記限界パケットが存在しない場合、アクセス要求選択部４は、実行する処理を後述する工程Ｓ７〜Ｓ９へ移行させる。
【００８７】
工程Ｓ４〜Ｓ６の処理は、前記限界パケットをコマンド発行の対象として選択する処理である。一方、工程Ｓ７〜Ｓ９の処理は、前記限界パケット以外の前記保証パケットをコマンド発行の対象として選択する処理である。
【００８８】
従って、工程Ｓ３〜Ｓ９は、キューイングバッファー３に複数の前記要求パケットが存在する場合に、前記限界パケットを前記限界パケット以外の前記保証パケットよりも優先して選択する処理である。
【００８９】
工程Ｓ３〜Ｓ９を実行するアクセス要求選択部４は、キューイングバッファー３に複数の前記保証パケットが存在する場合に、前記限界状態に至ったと判定された前記バッファー余裕情報に対応する前記限界パケット（第１アクセス要求）をその他の前記保証パケット（第２アクセス要求）よりも優先して選択する（第１選択部の一例）。
【００９０】
＜工程Ｓ４＞
前記限界パケットが存在する場合、アクセス要求選択部４は、キューイングバッファー３に前記直近発行コマンドとの間で前記バンク競合オーバーヘッドが生じない前記限界パケットが存在するか否かを判定する。前記直近発行コマンドとの間で前記バンク競合オーバーヘッドが生じない前記限界パケットのことを非競合限界パケットと称する。また、前記直近発行コマンドとの間で前記バンク競合オーバーヘッドが生じる前記限界パケットのことを競合限界パケットと称する。
【００９１】
＜工程Ｓ５＞
前記非競合限界パケットが存在する場合、アクセス要求選択部４は、前記非競合限界パケットをコマンド発行対象として選択する。これに応じて、コマンド発行部５が、選択された前記非競合限界パケットに対応する前記アクセスコマンドをＳＤＲＡＭ９へ発行する。その後、処理が工程Ｓ１へ移行される。
【００９２】
工程Ｓ５において、複数の前記非競合限界パケットが存在する場合、アクセス要求選択部４は、予め定められた非競合限界パケット選択ルールに従って、前記非競合限界パケットを１つずつ選択する。例えば、前記非競合限界パケット選択ルールは、複数の前記非競合限界パケットの中から前記限界後滞留時間がより長いもの先に選択するというルールであることが考えられる。
【００９３】
＜工程Ｓ６＞
前記限界パケットが存在し、かつ、前記非競合限界パケットが存在しない場合、即ち、存在する前記限界パケットの全てが前記競合限界パケットである場合、アクセス要求選択部４は、前記競合限界パケットをコマンド発行対象として選択する。これに応じて、コマンド発行部５が、選択された前記競合限界パケットに対応する前記アクセスコマンドをＳＤＲＡＭ９へ発行する。その後、処理が工程Ｓ１へ移行される。
【００９４】
工程Ｓ６において、複数の前記競合限界パケットが存在する場合、アクセス要求選択部４は、予め定められた競合限界パケット選択ルールに従って、前記競合限界パケットを１つずつ選択する。例えば、前記競合限界パケット選択ルールは、複数の前記競合限界パケットの中から前記限界後滞留時間がより長いもの先に選択するというルールであることが考えられる。
【００９５】
工程Ｓ４〜Ｓ６を実行するアクセス要求選択部４は、キューイングバッファー３に複数の前記限界パケット（第１アクセス要求）が存在する場合に、前記直近発行コマンドとの間で前記バンク競合オーバーヘッドが生じない前記限界パケットを前記バンク競合オーバーヘッドが生じる前記限界パケットよりも優先して選択する（第１選択部の一例）。
【００９６】
＜工程Ｓ７＞
キューイングバッファー３に前記保証パケットが存在し、かつ、前記限界パケットが存在しない場合、アクセス要求選択部４は、キューイングバッファー３に前記直近発行コマンドとの間で前記バンク競合オーバーヘッドが生じない前記保証パケットが存在するか否かを判定する。前記限界パケット以外の前記保証パケットのうち、前記直近発行コマンドとの間で前記バンク競合オーバーヘッドが生じないものを非競合保証パケットと称し、その他の前記保証パケットのことを競合保証パケットと称する。
【００９７】
＜工程Ｓ８＞
前記非競合保証パケットが存在する場合、アクセス要求選択部４は、前記非競合保証パケットをコマンド発行対象として選択する。これに応じて、コマンド発行部５が、選択された前記非競合保証パケットに対応する前記アクセスコマンドをＳＤＲＡＭ９へ発行する。その後、処理が工程Ｓ１へ移行される。
【００９８】
工程Ｓ８において、複数の前記非競合保証パケットが存在する場合、アクセス要求選択部４は、予め定められた非競合保証パケット選択ルールに従って、前記非競合保証パケットを１つずつ選択する。例えば、前記非競合保証パケット選択ルールは、複数の前記非競合保証パケットの中から前記限界状態により近い前記バッファー余裕情報に対応する前記非競合保証パケットを優先して選択するというルールであることが考えられる。
【００９９】
＜工程Ｓ９＞
前記保証パケットが存在し、かつ、前記限界パケットが存在せず、かつ、前記非競合保証パケットが存在しない場合、即ち、存在する前記保証パケットの全てが前記競合保証パケットである場合、アクセス要求選択部４は、前記競合保証パケットをコマンド発行対象として選択する。これに応じて、コマンド発行部５が、選択された前記競合保証パケットに対応する前記アクセスコマンドをＳＤＲＡＭ９へ発行する。その後、処理が工程Ｓ１へ移行される。
【０１００】
工程Ｓ９において、複数の前記競合保証パケットが存在する場合、アクセス要求選択部４は、予め定められた競合保証パケット選択ルールに従って、前記競合保証パケットを１つずつ選択する。例えば、前記競合保証パケット選択ルールは、複数の前記競合保証パケットの中から前記限界状態により近い前記バッファー余裕情報に対応する前記競合保証パケットを優先して選択するというルールであることが考えられる。
【０１０１】
工程Ｓ７〜Ｓ９を実行するアクセス要求選択部４は、キューイングバッファー３に前記限界パケット（第１アクセス要求）が存在せず、かつ、複数の前記保証パケット（第２アクセス要求）が存在する場合に、前記直近発行マンドとの間で前記バンク競合オーバーヘッドが生じない前記保証パケットを前記バンク競合オーバーヘッドが生じる前記保証パケットよりも優先して選択する（第２選択部の一例）。
【０１０２】
前述の例示では、工程Ｓ８，Ｓ９を実行するアクセス要求選択部４は、キューイングバッファー３に前記直近発行コマンドとの間で前記バンク競合オーバーヘッドが生じない前記限界パケット以外の前記保証パケット（第２アクセス要求）が複数存在する場合に、前記限界状態により近い前記バッファー余裕情報に対応する前記保証パケットを優先して選択する（第２選択部の一例）。
【０１０３】
＜工程Ｓ１０＞
キューイングバッファー３に前記保証パケットが存在しない場合、即ち、キューイングバッファー３に存在する前記要求パケットの全てが前記通常パケットである場合、アクセス要求選択部４は、キューイングバッファー３に前記直近発行コマンドとの間で前記バンク競合オーバーヘッドが生じない前記通常パケットが存在するか否かを判定する。前記通常パケットのうち、前記直近発行コマンドとの間で前記バンク競合オーバーヘッドが生じないものを非競合通常パケットと称し、その他の前記通常パケットのことを競合通常パケットと称する。
【０１０４】
＜工程Ｓ１１＞
前記非競合通常パケットが存在する場合、アクセス要求選択部４は、前記非競合通常パケットをコマンド発行対象として選択する。これに応じて、コマンド発行部５が、選択された前記非競合通常パケットに対応する前記アクセスコマンドをＳＤＲＡＭ９へ発行する。その後、処理が工程Ｓ１へ移行される。
【０１０５】
工程Ｓ１１において、複数の前記非競合通常パケットが存在する場合、アクセス要求選択部４は、予め定められた非競合通常パケット選択ルールに従って、前記非競合通常パケットを１つずつ選択する。例えば、前記非競合通常パケット選択ルールは、複数の前記非競合通常パケットの中から前記滞留時間がより長いもの先に選択するというルールであることが考えられる。
【０１０６】
＜工程Ｓ１２＞
前記保証パケットが存在せず、かつ、前記非競合通常パケットが存在しない場合、即ち、存在する前記通常パケットの全てが前記競合通常パケットである場合、アクセス要求選択部４は、前記競合通常パケットをコマンド発行対象として選択する。これに応じて、コマンド発行部５が、選択された前記競合保証パケットに対応する前記アクセスコマンドをＳＤＲＡＭ９へ発行する。その後、処理が工程Ｓ１へ移行される。
【０１０７】
工程Ｓ１２において、複数の前記競合通常パケットが存在する場合、アクセス要求選択部４は、予め定められた競合通常パケット選択ルールに従って、前記競合通常パケットを１つずつ選択する。例えば、前記競合通常パケット選択ルールは、複数の前記競合通常パケットの中から前記滞留時間がより長いもの先に選択するというルールであることが考えられる。
【０１０８】
アクセス要求選択部４およびコマンド発行部５は、入力された前記アクセス要求トランザクションにおける全ての前記要求コマンドの選択および選択された前記要求コマンドに対応する前記アクセスコマンドの発行が終了するまで、工程Ｓ１からの処理を繰り返す。
【０１０９】
以上に示したように、本実施形態におけるアクセス要求選択部４およびコマンド発行部５は、キューイングバッファー３に複数の前記保証パケットが存在する場合に、前記限界パケットを他の前記保証パケットよりも優先して処理する（Ｓ３〜Ｓ６）。これにより、前記アンダーフローおよび前記オーバーフローの発生を防ぐことによるデータ転送レートの保証が可能になる。
【０１１０】
また、キューイングバッファー３に前記保証パケットと前記通常パケットとが存在する場合に、アクセス要求選択部４およびコマンド発行部５は、前記保証パケットを前記通常パケットよりも優先して処理する。従って、データ転送レートを保証する必要がある前記保証要求マスターからの前記アクセス要求が、それ以外の前記アクセス要求（前記通常パケット）の処理によって滞ることがない。
【０１１１】
さらに、アクセス要求選択部４およびコマンド発行部５は、キューイングバッファー３に前記限界パケットが存在せず、かつ、複数の前記保証パケットが存在する場合に、前記直近発行コマンドとの間で前記バンク競合オーバーヘッドが生じない前記保証パケットを前記バンク競合オーバーヘッドが生じる前記保証パケットよりも優先して処理する（Ｓ７〜Ｓ９）。その結果、前記バンク競合オーバーヘッドの発生によるＳＤＲＡＭ９の総帯域の低下を抑制することができる。
【０１１２】
また、アクセス要求選択部４およびコマンド発行部５は、複数の前記限界パケットが存在する場合においても、前記直近発行コマンドとの間で前記バンク競合オーバーヘッドが生じない前記限界パケットを優先して処理する（Ｓ４〜Ｓ６）。これにより、前記バンク競合オーバーヘッドの発生によるＳＤＲＡＭ９の総帯域の低下を抑制する効果がより高まる。
【０１１３】
また、前述したように、前記限界パケット以外の前記保証パケットが複数存在する場合に、アクセス要求選択部４が、前記限界状態により近い前記バッファー余裕情報に対応する前記保証パケットを優先して選択することが考えられる（Ｓ８，Ｓ９）。これにより、前記アンダーフローおよび前記オーバーフローの発生をより確実に防ぐことができる。
【０１１４】
＜応用例＞
メモリーアクセス装置１０において、余裕情報更新部３３、限界判定部３４および滞留時間計時部３５のうちの一部または全部が、キューイングバッファー３とは別個に設けられることが考えられる。例えば、限界判定部３４および滞留時間計時部３５のうちの一部または全部が、アクセス要求選択部４に含まれることなどが考えられる。
【０１１５】
メモリーアクセス装置１０において、キューイングバッファー３に前記限界パケットが存在せず、かつ、前記限界パケット以外の前記保証パケットおよび前記滞留時間が予め定められた上限を超えた前記通常パケットとが存在する場合が考えられる。この場合に、アクセス要求選択部４が、前記滞留時間が前記上限を超えた前記通常パケットを前記保証パケットよりも優先して選択することが考えられる。図３に示される例では、そのような選択を行う工程は、処理が工程Ｓ３から工程Ｓ７へ移行する間に追加される。
【０１１６】
メモリーアクセス装置１０が、例えば携帯情報端末などの画像処理装置１００以外の情報処理装置に適用されることも考えられる。
【０１１７】
なお、本発明に係るメモリーアクセス装置およびメモリーアクセス制御方法は、各請求項に記載された発明の範囲において、以上に示された実施形態および応用例を自由に組み合わせること、或いは実施形態および応用例を適宜、変形するまたは一部を省略することによって構成されることも可能である。
【符号の説明】
【０１１８】
１      ：要求トランザクション入力部
２      ：アクセス要求分割部
３      ：キューイングバッファー
４      ：アクセス要求選択部（選択部）
５      ：コマンド発行部
９      ：ＳＤＲＡＭ（メモリー）
１０    ：メモリーアクセス装置
２０    ：スキャン部
３０    ：スキャン制御部
３１    ：パケット記憶部
３２    ：余裕情報記憶部
３３    ：余裕情報更新部
３４    ：限界判定部
３５    ：滞留時間計時部
４０    ：プリント部
５０    ：プリント制御部
６０    ：通信制御部
７０    ：画像処理部
８０    ：バス
８１    ：リードデータバッファー
８２    ：ライトデータバッファー
１００  ：画像処理装置
８００  ：サイドバンド信号線
【図１】
2016085683.tif 000003
【図２】
2016085683.tif 000004
【図３】
2016085683.tif 000005