JP5396169B2 - データアクセス制御装置 - Google Patents

データアクセス制御装置 Download PDF

Info

Publication number
JP5396169B2
JP5396169B2 JP2009148063A JP2009148063A JP5396169B2 JP 5396169 B2 JP5396169 B2 JP 5396169B2 JP 2009148063 A JP2009148063 A JP 2009148063A JP 2009148063 A JP2009148063 A JP 2009148063A JP 5396169 B2 JP5396169 B2 JP 5396169B2
Authority
JP
Japan
Prior art keywords
module
data access
data
access
memory
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.)
Active
Application number
JP2009148063A
Other languages
English (en)
Other versions
JP2011003160A (ja
JP2011003160A5 (ja
Inventor
成康 小林
晃 上野
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.)
Olympus Corp
Original Assignee
Olympus 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 Olympus Corp filed Critical Olympus Corp
Priority to JP2009148063A priority Critical patent/JP5396169B2/ja
Priority to US12/818,571 priority patent/US20100325375A1/en
Priority to CN2010102117789A priority patent/CN101930414A/zh
Publication of JP2011003160A publication Critical patent/JP2011003160A/ja
Publication of JP2011003160A5 publication Critical patent/JP2011003160A5/ja
Application granted granted Critical
Publication of JP5396169B2 publication Critical patent/JP5396169B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • G06F13/1626Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by reordering requests

Description

本発明は、メモリとしてSDRAM(シンクロナス・ダイナミックRAM)を備えるデジタルカメラ等の電子機器に適用可能なデータアクセス制御装置およびデータアクセス制御方法に関する。
近年、SDRAMは、パソコンに限らず、デジタルカメラ等の各種電子機器に利用されている。SDRAMのアクセスは、バースト長(例えば、8Wordや4Wordのデータ長さ)と呼ばれるデータ転送単位で行うことで転送効率が向上している。また、SDRAMは、複数のバンクを有するアドレス空間からなり、これらの複数のバンクに順次アクセスするバンクインターリーブと称される機能により、さらに転送効率が向上している。これは、先にアクセスしたバンクにデータ転送している間に、次のバンクのアドレスの取り込みを並行して行うことができるためである。
しかしながら、バンクインターリーブ機能は、同一のバンクに連続してアクセスした場合には、先のアクセスに従うデータ転送中に次のアクセスに従うアドレスの取り込みを並行して行うことができず、受付け再処理を行わなくてはならないペナルティ処理時間が発生し、データアクセスの効率が悪くなってしまう欠点がある。適用されるシステム構成にもよるが、SDRAMへアクセスするモジュールとして、例えば、異なる処理を行うためのデータをアクセスするためのDMA(Direct Memory Access)要求信号生成部が少なくとも2つ接続されている場合には、SDRAMの同一バンクへの連続アクセスが発生しやすく、効率的な転送を行うのが難しいという問題があった。
SDRAMは、複数のモジュールとの転送が要求される場合には、複数のモジュールのアクセス要求を調停するアービタを有するSDRAMコントローラを用いることが多い。この場合、SDRAMコントローラへ接続するモジュールは、システムの重要度に応じてSDRAMへアクセスする優先度を設定し、優先度の高いモジュールからのアクセスを優先させて処理するようにしている。モジュールの優先度は、システムにより異なるが、外部デバイスとの通信レートが一定なモジュールの優先度を高くする必要がある。例えば、デジタルカメラの場合であれば、CCD等の撮像素子は、一定のレートで大量の画像データをSDRAMに保存させなければならないため、撮像素子用のモジュールは優先度の高いモジュールとなる。一方、後段で行う画像処理などは、システム構成によるが、SDRAMに既に保存されている画像データを用いることから、画像処理用のモジュールは一般に優先度を低く設定することができる。
SDRAMコントローラは、バンクインターリーブ機能を効率よく行うために、アクセスアドレスの下位数ビットをバンクのセレクタとして使用することで、効率よくバンク切換えを行えるようにしている。また、SDRAMコントローラは、複数のモジュールのアクセスアドレスを分析し、優先度と前アクセスバンクが同じであるか否かで処理するアクセスを選択する機能を有している。
また、特許文献1によれば、複数のチャンネル(モジュール)の一つからDMA要求を受付けると、所定単位のデータを予め設定された数だけ連続して転送する期間を設けることで、どのチャンネルでも連続してデータ転送できるようにした技術が開示されている。
特開平5−120206号公報
しかしながら、データアクセスの優先度の異なる複数のモジュールを備えるシステム構成においては、バンクインターリーブ機能により、データアクセスの優先度に沿った処理が正しく行われなくなる場合がある。特許文献1に示される技術も、データアクセスの優先度に沿った正しい処理を意図したものではない。よって、従来技術によると、データアクセスの優先度の高いモジュールのデータ転送に滞りが生じ、一定のレートによる適正なデータ転送を確実に行うことができず、システムが破綻してしまう可能性がある。
本発明は、上記に鑑みてなされたものであって、データアクセスの優先度の異なる複数のモジュールを備えるシステム構成において、優先度の高いモジュールのデータ転送を確実に行うことができるデータアクセス制御装置およびデータアクセス制御方法を提供することを目的とする。
上述した課題を解決するために、本発明にかかるデータアクセス制御装置は、複数のバンクを有するアドレス空間からなるメモリに対して、データアクセス要求を行う際の連続する書き込み要求数が設定可能な複数のモジュールからデータアクセスを行うデータアクセス制御装置であって、前記複数のモジュールのうち、前記メモリに対するデータアクセスの優先度が相対的に高いデータを出力する高速モジュールと、前記複数のモジュールのうち、前記メモリに対するデータアクセスの優先度が相対的に低いデータを出力する低速モジュールと、前記各モジュールから前記メモリへのデータアクセスの要求を受付け、該要求の優先度に応じてデータアクセス要求を許可する信号を対応する前記モジュールへ送信するとともに、許可した該モジュールから要求されたメモリアクセス条件に基づいて前記メモリへのデータアクセスを制御するメモリ制御部と、を備え、前記高速モジュールは、前記連続する書き込み要求数を、転送レートとデータ量とに基づいて、前記メモリのバンク数の整数倍に設定し、前記メモリ制御部に対して、前記複数バンクへの書き込み要求数だけ連続したデータアクセス要求を、隣接する要求で異なるバンクに連続して行い、アクセス要求元モジュールから前記メモリへ連続的にデータ書き込みを行う場合において、前記メモリの異なる複数のバンクへのアクセスであって、かつこれらのアクセスが最短時間となるような書き込みデータが所定以上溜まったときに、前記アクセス要求元モジュールから前記メモリ制御部への書き込み要求信号が発せられることを特徴とする。
また、本発明にかかるデータアクセス制御装置は、上記発明において、前記高速モジュールを含むデータアクセスの優先度が相対的に高い複数のモジュールを1グループとして扱い、グループ外の他のモジュールよりもデータアクセスの優先度を高くしたことを特徴とする。
また、本発明にかかるデータアクセス制御装置は、上記発明において、前記メモリ制御部は、グループ化された前記複数のモジュールの全てのデータアクセス要求がなくなるまで該グループに前記バスを占有させ、グループ外の他のモジュールのデータアクセス要求をマスクすることを特徴とする。
また、本発明にかかるデータアクセス制御装置は、上記発明において、前記マスク処理は、前記メモリ制御部の設定によりグループ別に行うことを特徴とする。
本発明によれば、データアクセス優先度の異なる複数のモジュールを備えるシステム構成において、優先度の高いモジュールのデータ転送を確実に行うことができるデータアクセス制御装置およびデータアクセス制御方法を提供することができる。
図1は、本発明の実施の形態1のデジタルカメラのデータアクセス制御装置周りの構成例を示す概略ブロック図である。 図2−1は、優先度に応じた理想的なアクセス例を示すタイミングチャートである。 図2−2は、実施の形態1による対策を講じていない場合のアクセス例を示すタイミングチャートである。 図2−3は、実施の形態1による対策を講じた場合のアクセス例を示すタイミングチャートである。 図3は、SDRAM転送アクセス単位を示すタイミングチャートである。 図4−1は、図2−2と同じ同バンクアクセス発生のある場合の詳細例を示すタイミングチャートである。 図4−2は、実施の形態1による対策を講じた場合の詳細例を示すタイミングチャートである。 図5は、同一時間軸上で実施の形態1の連続処理方式の効率のよさを示すタイミングチャートである。 図6は、本発明の実施の形態2のアクセス処理方式を示すタイミングチャートである。
以下、図面を参照して、本発明を実施するための形態について説明する。本実施の形態は、電子機器として撮像システム、例えばデジタルカメラに搭載されたデータアクセス制御装置の例で説明する。
(実施の形態1)
図1は、本実施の形態1のデジタルカメラのデータアクセス制御装置周りの構成例を示す概略ブロック図である。本実施の形態1のデータアクセス制御装置1は、SDRAM10と、メモリ制御部11と、複数のDMA要求信号生成部13,14,…,15とを備える。
SDRAM10は、複数、例えば4つのバンクA〜Dを有するアドレス空間からなる。
また、DMA要求信号生成部13(モジュール1)は、メモリ制御部11に対してデータ転送を要求(Req1)すると同時にアクセスアドレス(Adr1)を出力し、メモリ制御部11はデータ転送が可能であれば転送許可(Ack1)をした後に、データ有効を示す信号(Valid1)を出力する。DMA要求信号生成部13(モジュール1)は、Valid1信号に合わせて転送データ(Data1)をライト時には送信、リード時には受信する。ここで、DMA要求信号生成部13から転送されるデータが、優先度が相対的に高い高速モジュールである。優先度が高いとは、例えば、CCD等の固体撮像素子を用いた撮像部21の出力から生成した画像データを転送するなど、常に一定のレートで所定量のデータ転送を確実に行う場合が当てはまる。
一方、DMA要求信号生成部14(モジュール2)は、メモリ制御部11に対してデータ転送を要求(Req2)すると同時にアクセスアドレス(Adr2)を出力し、メモリ制御部11はデータ転送が可能であれば転送許可(Ack2)をした後に、データ有効を示す信号(Valid2)を出力する。DMA要求信号生成部14(モジュール2)は、Valid2信号に合わせて転送データ(Data2)をライト時には送信、リード時には受信する。ここで、DMA要求信号生成部14から転送されるデータは、SDRAM10に保存された画像データに対して色補正処理、ガンマ処理等の各種の画像処理を施す画像処理部22より出力される画像データである。よって、DMA要求信号生成部14は、常に一定のレートでのデータ転送を必要としないデータアクセス優先度が相対的に低い低速モジュールである。
また、DMA要求信号生成部15(モジュールN)は、メモリ制御部11に対してデータ転送を要求(ReqN)すると同時にアクセスアドレス(AdrN)を出力し、メモリ制御部11はデータ転送が可能であれば転送許可(AckN)をした後に、データ有効を示す信号(ValidN)を出力する。DMA要求信号生成部15(モジュールN)は、ValidN信号に合わせて転送データ(DataN)をライト時には送信、リード時には受信する。ここで、DMA要求信号生成部15から転送されるデータは、デジタルカメラ1が備えるLCD等を用いた表示部23に対して出力される画像データである。よって、DMA要求信号生成部15は、常に一定のレートで所定量のデータ転送を確実に行わなければならない優先度が相対的に高い高速モジュールである。
また、メモリ制御部11は、SDRAM10やDMA要求信号生成部13,14が接続されたバスを実質的に表しており、DMA要求信号生成部13,14,…,15からSDRAM10へのデータ転送の要求(Req1,Req2,…,ReqN)を要求Reqとして受付け、この要求Reqに対して要求のデータアクセス優先度に応じてデータ転送要求を許可する信号Ackを対応するDMA要求信号生成部13,14,…,15へ許可信号Ack1、Ack2、…,またはAckNとして送信する。また、許可したDMA要求信号生成部13,14,…,または15から要求された転送アドレス等のメモリアクセス条件に基づいてSDRAM10の各バンクA〜Dへのデータアクセスをバンクインターリーブ機能により制御する。なお、DMA要求信号生成部13,14,…,15に関するデータアクセスの優先度の設定は、CPU30によってメモリ制御部11側で行われる。また、メモリ制御部11は、上記の制御を、デジタルカメラ全体の制御を受け持つCPU30とは独立して実行する。また、メモリ制御部11は、複数のDMA要求信号生成部13,14,…,15からのデータ転送要求の調停を行う。
ここで、データアクセス優先度の高いDMA要求信号生成部13(モジュール1)は、SDRAM10のバンク数分の転送(8Wordバースト×バンク数×M:Mは整数)を1回のデータアクセス要求で連続して行う機能を有する。このため、DMA要求信号生成部13(モジュール1)は、アクセス回数(複数バンクへの書き込み要求数)設定用のレジスタ13aを有し、CPU30等のレジスタ制御部によって1回のアクセス数が設定されるように構成されている。このアクセス回数のレジスタ13aへの設定値は、バンク数×M倍、すなわちバンク数に対して整数倍に設定される。また、レジスタ設定値は、転送レートとデータ量に基づき設定される。例えば、SDRAM10が4バンク構成で、レジスタ13aに“4”が設定された場合には、DMA要求信号生成部13(モジュール1)は、1転送=8Wordバースト×4なるデータ量を連続して転送させる。すなわち、DMA要求信号生成部13(モジュール1)は、転送データ量が上記のレジスタ13aに設定されたアクセス回数分(8Wordバースト×レジスタ設定値)のデータが溜まり次第、メモリ制御部11にアクセス要求を発行し、保持する。これに対応して、メモリ制御部11は、該DMA要求信号生成部13(モジュール1)からアクセス要求がある限り、DMA要求信号生成部13(モジュール1)にバスを占有させる。よって、“連続アクセス”とは、メモリ制御部11が他のモジュールアクセスを選択しないタイミングで、DMA要求信号生成部の1つかデータアクセス要求を連続して出力することを意味する。
また、DMA要求信号生成部13(モジュール1)は、このような連続アクセスに際して、バンクインターリーブ機能におけるバンク切換えがスムーズに行えるアドレスでアクセスを行う。すなわち、DMA要求信号生成部13(モジュール1)がアクセスする先頭アドレスをDMA要求信号生成部14(モジュール2)とは異なるバンクにアクセスするアドレス位置に設定される。例えば、モジュール2側がバンクCやバンクBにアクセスする場合、モジュール1がアクセスする先頭アドレスは、異なるバンクAやバンクDとなるように設定される。また、連続アクセスにおいて8Wordバースト転送毎にアクセスアドレスを変更する。例えば、アクセスアドレスの下位2ビットが“0”の場合にはバンクA、“1”の場合にはバンクB、“2”の場合にはバンクC、“0”の場合にはバンクDとしてバンク切換えが行われる。
このようにして、本実施の形態1では、データアクセスの優先度の高いDMA要求信号生成部13(モジュール1)は、メモリ制御部11に対して、1回のデータアクセス要求で、複数バンクA〜Dへの書き込み要求数だけ連続したデータアクセス要求を、隣接する要求で異なるバンクに連続して行う。また、優先度の高いDMA要求信号生成部13(モジュール1)は、アクセスする先頭アドレスを優先度の低いDMA要求信号生成部14(モジュール2)とは異なるバンクにアクセスするアドレス位置に設定したデータをメモリ制御部11にアクセス要求として送信する。
また、DMA要求信号生成部13(モジュール1)と同様に優先度の高いDMA要求信号生成部15(モジュールN)も、アクセス回数(複数バンクへの書き込み要求数)設定用のレジスタ15aを有し、連続転送機能を有する。なお、優先度の低いDMA要求信号生成部14(モジュール2)も、同一構成でアクセス回数設定用のレジスタ15aを有するが、本実施の形態1では、アクセス回数は設定されていない。
このような構成において、モジュールとして、優先度の高いDMA要求信号生成部13(モジュール1)と優先度の低いDMA要求信号生成部14(モジュール2)との2つが使用される場合を例に挙げ、SDRAM10に対するアクセスについて説明する。
図2−1は、優先度に応じた理想的なアクセス例(各モジュールからの転送要求Reqの出力タイミングに対するメモリ制御部受付Ackの出力タイミング)を示すタイミングチャートである。図中、A〜Dは、SDRAM10のバンクを示し、優先度の高いDMA要求信号生成部13(モジュール1)側によるアクセス要求は数字1を付加して示し、優先度の低いDMA要求信号生成部14(モジュール2)側によるアクセス要求は数字2を付加して示す(以降の図面でも同様とする)。
図2−1では、優先度の高いモジュール1側からメモリアクセス要求がバンクA1→B1→C1→D1…の如く一定のレートで出力されているのに対して、優先度の低いモジュール2側からはモジュール1によるバンクB1,C1のメモリアクセス要求間のタイミングでバンクC2に対するメモリアクセス要求が出力される状況を示している。この場合、時点Toで、メモリ制御部11は、優先度の高いアクセス(A1→B1→C1→D1)を優先して処理し、モジュール2に対する処理(C2)は、モジュール1の処理が完了してから行う。
図2−2は、本実施の形態1による対策を講じていない場合のアクセス例を示すタイミングチャートである。図2−2に示すように、メモリ制御部11は、モジュール1に基づくバンクB1へのアクセス要求を処理した後、時点Toではモジュール1からのメモリアクセス要求はないと判断して、モジュール2に基づくバンクC2へのアクセス要求を処理する。ついで、モジュール1に基づくバンクC1へのアクセス要求の処理に移行しようとするが、バンクCに関して同バンクアクセス状態となる。これにより、バンクC1へのアクセス要求の受付けは、受付け再処理に伴うペナルティ処理時間Tpの処理後となってしまい、優先度の高いモジュール1に基づくバンクC1へのデータ転送に滞りが生じてしまう。
これに対して、図2−3は、本実施の形態1による対策を講じた場合のアクセス例を示すタイミングチャートである。モジュール1のメモリアクセスを4バンク分連続して行い、この連続アクセス期間Tcはバスが開放されずモジュール1が占有する。よって、メモリ制御部11は、モジュール1のメモリアクセス要求を4バンク分連続して受付けるので、モジュール2のバンクC2に対するメモリアクセス要求は、モジュール1のアクセス要求がない状態後となる。これにより、優先度の高いモジュール1の優先処理を活かしつつ同バンクアクセスを回避して優先度の低いモジュール2の処理も行われるため、データ転送を効率よく行うことができる。すなわち、複数のモジュール1,2が同時期にアクセスする状況にあっても、優先度の高いモジュール1に関しては、バンク数分の連続アクセスを1セットとし、各バンクA〜Dを連続して順次アクセスするので、優先度の低いモジュール2との間で同バンクアクセスが発生しにくくなり、バンクインターリーブ機能を有効に作用させることができる。
上述したタイミングチャート例について、別の観点から説明する。図3は、SDRAM転送アクセス単位を示すタイミングチャートである。アクセス単位とは、ここでは1バーストを示す。図3(a)の入力例は、入力2回分で1転送分のデータ量であることを示している。図3(b)は、図2−2に示したような本実施の形態1による対策を講じていない場合のモジュール1の転送処理例を示し、SDRAM転送アクセス単位にて単発の転送が頻繁に発生している様子を示している。入力が一定である場合、転送要求ReqはTa間隔で頻繁に出力する。この場合、各転送間の隙間Taが殆どないため、モジュール2からのアクセスが入りにくい。
一方、図3(c)は、図2−3に示したような本実施の形態1による対策を講じた場合のモジュール1の転送処理例を示し、SDRAM転送アクセス単位による4連続転送が周期的に発生している様子を示している。この場合、連続転送間Tb1およびTb2が十分に広いため、優先度の低いモジュール2からのアクセスも入りやすいことを示している。つまり、連続転送間においては、優先度の低いモジュール2からのアクセスを処理しやすなる。
図4−1〜図4−2は、図2−2〜図2−3に対応する要求信号Req、応答信号Ackの実際の波形による詳細例を示すタイミングチャートである。いずれの場合も、1転送=1バースト(例えば、8Word)を前提とする。図4−1は、図2−2に示した例と同じで、モジュール1からのバンクC1へのデータ転送の要求に対してはモジュール2からのバンクC2へのデータ転送の要求と同バンクアクセスが発生しているため、ペナルティ処理時間Tpが発生している場合を示している。
一方、図4−2は、図2−3に示した連続アクセス方式の例に対応するもので、モジュール1からのアクセス要求は、バンクA1〜D1分がバス占有状態で連続して処理されるため、モジュール2からのバンクC2へのデータ転送の要求のタイミングにかかわらず、バンクC2へのデータ転送の要求は、モジュール1の処理後に行われることを示している。このように、図4−2でも、モジュール2からのデータアクセス要求のタイミングに関わらず、アクセス優先度の高いモジュール1からのアクセス要求を確実に連続処理することができる。
また、図5は、本実施の形態1の連続処理方式の効率のよさを示すタイミングチャートである。図5は、同一時間軸上で、従来の単発方式と本実施の形態1の連続方式との処理時間の長短を比較して示すものである。連続方式によれば、処理時間Teを単発方式の処理時間Tdに比して十分短縮することができ、データ転送効率がよい。
このように本実施の形態1によれば、データアクセスの優先度の異なる複数のモジュール1,2を備えるシステム構成において、優先度の高いモジュール1のデータ転送を一定のレートにより確実に行うことができ、システムの破綻を防止することができる。また、連続アクセスを行う1回のアクセス数(書き込み又は読み出し要求数)をモジュール1のレジスタ13aに設定するようにしたので、SDRAM10の種類を変更した場合でも作成し直す必要がなく、汎用性を持たせることができる。
(実施の形態2)
つづいて、本発明の実施の形態2について説明する。本実施の形態2は、前述の実施の形態1に加えて、メモリ制御部11に接続されるモジュール数が、より多くなる場合に好適な適用例を示す。ここで、図1中には特に図示しないが、本実施の形態2では、モジュール1,2,Nに加えて、モジュール(DMA要求信号生成部)3を備えるものとする。このモジュール3から転送されるデータは、SDRAM10に保存された画像データを例えばカード式の記録媒体(メディア)に記憶させるためのものである。よって、モジュール3は、常に一定のレートでのデータ転送を必要としないデータアクセス優先度が相対的に低い低速モジュールである。
このようにデータアクセスの優先度が相対的に高い複数のモジュールを含む状況の下、本実施の形態2では、SDRAM10にアクセスする4つのモジュール1,2,3,Nを、2つのグループ1,2に分ける。ここで、グループ1は、前述したように、常に一定なレートでの転送を確実に行わなければならないデータアクセスの優先度が相対的に高いモジュール1とモジュールNとを1グループとして扱い、グループ2は、グループ1外の他のモジュール、例えば一定なレートでの転送を必要とせずデータアクセスの優先度が相対的に低いモジュール2とモジュール3とを1グループとして扱うものである。そして、グループ1,2に対してグループ単位での優先度を設定し、グループ1の優先度を、グループ2の優先度よりも高く設定するとともに、個々のモジュールのデータアクセスの優先度や、インターリーブ機能によるバンク切換え選択の優先度よりも高い最優先の優先度に設定する。このようなモジュール1,2,3,Nに関するグループ化の設定は、CPU30によってメモリ制御部11側で行われる。
なお、グループ1内においては、モジュール1,N間のデータアクセスの優先度に差があり、例えば、モジュール1の方がモジュールNよりもデータアクセスの優先度が高く設定されている。同様に、グループ2内においても、モジュール2,3間のデータアクセスの優先度に差があり、例えば、モジュール2の方がモジュール3よりもデータアクセスの優先度が高く設定されている。
メモリ制御部11は、このようなグループ分けによるグループ優先度に従い、優先度の高いグループ1中のモジュール1,Nのいずれかのデータアクセス要求を受付けた段階では、グループ2内の全てのモジュール2,3のデータアクセス要求をマスクすることで、グループ2側のデータアクセス要求の参照を行わないように制御する。そして、メモリ制御部11は、グループ1内のモジュール1またはNによるデータアクセス要求を処理する。ここで、同じグループ1内のモジュール1,Nから同時期にデータアクセス要求があった場合には、モジュール1,Nの優先度に従ってデータアクセス要求を順次処理する。
メモリ制御部11は、優先度の高いグループ1からのデータアクセス要求がないタイミングでのみ、グループ2側に対するマスクを解除して、優先度の低いグループ2のデータアクセス要求の受付を再開するように制御する。そして、メモリ制御部11は、グループ2内のモジュール2または3によるデータアクセス要求を処理する。ここで、同じグループ2内のモジュール2,3から同時期にデータアクセス要求があった場合には、モジュール2,3の優先度に従ってデータアクセス要求を順次処理する。
すなわち、メモリ制御部11は、優先度の高いグループ1としてグループ化されたモジュール1,Nの全てのデータアクセス要求がなくなるまでグループ1にバスを占有させ、グループ1外の他のモジュール2,3のデータアクセス要求をマスクするように制御する。
このような構成において、具体的なアクセス処理の一例を、図6を参照して説明する。図6は、本発明の実施の形態2のアクセス処理方式を要求信号Req、応答信号Ackを用いて示すタイミングチャートである。まず、グループ1に属するモジュール1からのアクセス要求は、実施の形態1の場合と同様に、バンクA1〜D1分がバス占有状態で連続して処理されるため、優先度の低いグループ2に属するモジュール2からのバンクA2へのデータ転送の要求のタイミングにかかわらず、バンクA2へのデータ転送の要求は、モジュール1(グループ1)の処理後に行われることを示している。すなわち、メモリ制御部11は、グループ1に属するモジュール1からのアクセス要求中は、グループ2側のアクセス要求をマスクして参照せず、モジュール1からのアクセスがなくなってからマスクを解除して、モジュール2から発生しているバンクAへのアクセス要求を再開して、応答信号Ack2により受付ける。そして、メモリ制御部11は、モジュール2からのアクセス要求に従って処理を行う。
図6は、次のタイミングでは、優先度の高いグループ1に属するモジュールNからバンクA〜Dへの連続アクセス要求と、優先度の低いグループ2に属するモジュール3からバンクCへのアクセス要求とが同時に発生している状況を示している。
この際、メモリ制御部11は、モジュールがグループ分けされていない場合であれば、直前にモジュール2からのバンクAへのアクセスがあるので、モジュール単位の優先度よりも優先度の高いバンクインターリーブ機能により、同バンク発生とならないよう優先度の低いモジュール3からのアクセス要求が選択されてしまう。このような状態が度々発生すると、優先度の高いモジュールNのデータ転送が滞り、システムに重大な影響を及ぼす。たとえば、モジュールNは、表示部23における画像表示用であり、モジュールNのデータ転送の滞りにより液晶画面に画像が正しく表示されない場合が発生する危険性がある。
この点、本実施の形態2では、相対的に優先度が高い複数のモジュール1,Nを、優先度が最優先に高いグループ1として扱っている。このため、メモリ制御部11は、このような同時期に発生した複数のアクセス要求において、同バンク指定によるペナルティ時間Tpを発生させても、優先度の高いグループ1に属するモジュールNからのアクセス要求を先に受付ける。これにより、バンクAN〜DN分のアクセス要求がバス占有状態で連続して処理されるため、優先度の低いグループ2に属するモジュール3からのバンクC3へのデータ転送の要求は、モジュールN(グループ1)の処理後に行われる。すなわち、メモリ制御部11は、グループ1に属するモジュールNからのアクセス要求中は、グループ2側のモジュール3からのアクセス要求をマスクして参照せず、モジュール1からのアクセスがなくなった後でマスクを解除して、モジュール2から発生しているバンクCへのアクセス要求を再開して、応答信号Ack3により受付ける。そして、メモリ制御部11は、モジュール3からのアクセス要求に従って処理を行う。
なお、メモリ制御部11内にモジュール1,2,3,N側と同じレジスタ(図示せず)を追加し、マスク処理を、CPU30からのメモリ制御部11内のレジスタの設定によりグループ別に行うようにしてもよい。
このように本実施の形態2によれば、実施の形態1の効果に加えて、相対的に優先度が高い複数のモジュールを、優先度が最優先に高い1つのグループとして扱うことで、同バンクアクセスを避けるバンクインターリーブ機能による切換えよりも、グループ化による優先度を最優先させたアクセス制御が行われるため、バンクインターリーブ機能により優先度の高いモジュールのアクセス要求が阻害されることを回避でき、システムの破綻を防止できる。
なお、本実施の形態2では、グループ1に属するモジュールを2個としたが、3個以上であってもよい。また、相対的に優先度の低いモジュールに関しては、グループ2のようにグループ化してもよく、個々のモジュールのままとしてもよく、さらには、1つのみのモジュールであってもよい。
また、実施の形態1,2の説明は、モジュールとSDRAMの間のデータ読み書きの何れにおいても利用できるものであり、SDRAM10へのデータ書き込みのみに限定されるものではない。さらには、デジタルカメラに限らず、SDRAMとともに複数のモジュールを備える各種電子機器についても適用可能である。
1 データアクセス制御装置
10 SDRAM
11 メモリ制御部
13 DMA要求信号生成部
14 DMA要求信号生成部
15 DMA要求信号生成部
A〜D バンク

Claims (4)

  1. 複数のバンクを有するアドレス空間からなるメモリに対して、データアクセス要求を行う際の連続する書き込み要求数が設定可能な複数のモジュールからデータアクセスを行うデータアクセス制御装置であって、
    前記複数のモジュールのうち、前記メモリに対するデータアクセスの優先度が相対的に高いデータを出力する高速モジュールと、
    前記複数のモジュールのうち、前記メモリに対するデータアクセスの優先度が相対的に低いデータを出力する低速モジュールと、
    前記各モジュールから前記メモリへのデータアクセスの要求を受付け、該要求の優先度に応じてデータアクセス要求を許可する信号を対応する前記モジュールへ送信するとともに、許可した該モジュールから要求されたメモリアクセス条件に基づいて前記メモリへのデータアクセスを制御するメモリ制御部と、
    を備え、
    前記高速モジュールは、
    前記連続する書き込み要求数を、転送レートとデータ量とに基づいて、前記メモリのバンク数の整数倍に設定し、
    前記メモリ制御部に対して、前記複数バンクへの書き込み要求数だけ連続したデータアクセス要求を、隣接する要求で異なるバンクに連続して行い、アクセス要求元モジュールから前記メモリへ連続的にデータ書き込みを行う場合において、前記メモリの異なる複数のバンクへのアクセスであって、かつこれらのアクセスが最短時間となるような書き込みデータが所定以上溜まったときに、前記アクセス要求元モジュールから前記メモリ制御部への書き込み要求信号が発せられることを特徴とするデータアクセス制御装置。
  2. 前記高速モジュールを含むデータアクセスの優先度が相対的に高い複数のモジュールを1グループとして扱い、グループ外の他のモジュールよりもデータアクセスの優先度を高くしたことを特徴とする請求項1に記載のデータアクセス制御装置。
  3. 前記メモリ制御部は、グループ化された前記複数のモジュールの全てのデータアクセス要求がなくなるまで該グループにバスを占有させ、グループ外の他のモジュールのデータアクセス要求をマスクすることを特徴とする請求項2に記載のデータアクセス制御装置。
  4. 前記マスク処理は、前記メモリ制御部の設定によりグループ別に行うことを特徴とする請求項3に記載のデータアクセス制御装置。
JP2009148063A 2009-06-22 2009-06-22 データアクセス制御装置 Active JP5396169B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2009148063A JP5396169B2 (ja) 2009-06-22 2009-06-22 データアクセス制御装置
US12/818,571 US20100325375A1 (en) 2009-06-22 2010-06-18 Data-access control device and data-access control method
CN2010102117789A CN101930414A (zh) 2009-06-22 2010-06-22 数据存取控制装置及数据存取控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009148063A JP5396169B2 (ja) 2009-06-22 2009-06-22 データアクセス制御装置

Publications (3)

Publication Number Publication Date
JP2011003160A JP2011003160A (ja) 2011-01-06
JP2011003160A5 JP2011003160A5 (ja) 2012-06-28
JP5396169B2 true JP5396169B2 (ja) 2014-01-22

Family

ID=43355296

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009148063A Active JP5396169B2 (ja) 2009-06-22 2009-06-22 データアクセス制御装置

Country Status (3)

Country Link
US (1) US20100325375A1 (ja)
JP (1) JP5396169B2 (ja)
CN (1) CN101930414A (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5744650B2 (ja) 2011-07-06 2015-07-08 オリンパス株式会社 バスモニタ装置、バスモニタ方法、およびプログラム
US20130097433A1 (en) * 2011-10-18 2013-04-18 Stec, Inc. Systems and methods for dynamic resource management in solid state drive system
US9134919B2 (en) * 2012-03-29 2015-09-15 Samsung Electronics Co., Ltd. Memory device including priority information and method of operating the same
JP2014035549A (ja) * 2012-08-07 2014-02-24 Ricoh Co Ltd バス制御装置、画像処理装置及びバス制御方法
JP6210743B2 (ja) 2013-06-10 2017-10-11 オリンパス株式会社 データ処理装置およびデータ転送制御装置
JP6210742B2 (ja) 2013-06-10 2017-10-11 オリンパス株式会社 データ処理装置およびデータ転送制御装置
JP6883764B2 (ja) * 2018-09-28 2021-06-09 パナソニックIpマネジメント株式会社 コマンド制御システム、車両、コマンド制御方法及びプログラム
US11551746B2 (en) * 2020-11-19 2023-01-10 Micron Technology, Inc. Apparatuses including memory regions having different access speeds and methods for using the same

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1270338C (en) * 1985-09-11 1990-06-12 DATA PROCESSING SYSTEM FOR PROCESSING UNITS WITH DIFFERENT RATES
JPH01303543A (ja) * 1988-05-31 1989-12-07 Fujitsu Ltd メモリアクセス制御装置
JPH10334037A (ja) * 1997-05-30 1998-12-18 Sanyo Electric Co Ltd 通信dma装置
JP4234829B2 (ja) * 1998-12-03 2009-03-04 パナソニック株式会社 メモリ制御装置
JP2000251470A (ja) * 1999-03-01 2000-09-14 Hitachi Ltd 半導体集積回路
JP2002328837A (ja) * 2001-04-27 2002-11-15 Fujitsu Ltd メモリ・コントローラ
JP4820566B2 (ja) * 2005-03-25 2011-11-24 パナソニック株式会社 メモリアクセス制御回路
US8307190B2 (en) * 2006-12-25 2012-11-06 Panasonic Corporation Memory control device, memory device, and memory control method
JP2008269348A (ja) * 2007-04-20 2008-11-06 Toshiba Corp メモリ制御装置およびメモリ制御方法
US20110010494A1 (en) * 2008-04-08 2011-01-13 Kazuhito Tanaka Memory control circuit and memory control method

Also Published As

Publication number Publication date
CN101930414A (zh) 2010-12-29
JP2011003160A (ja) 2011-01-06
US20100325375A1 (en) 2010-12-23

Similar Documents

Publication Publication Date Title
JP5396169B2 (ja) データアクセス制御装置
US10241721B2 (en) Image processing device and image processing method
EP0935199B1 (en) Memory control unit and memory control method and medium containing program for realizing the same
WO2005109218A1 (en) Memory controller with command look-ahead
JP2006260472A (ja) メモリアクセス装置
TWI753063B (zh) 資料傳送裝置及資料傳送方法
US20190079881A1 (en) Memory access control device, image processing device, and imaging device
JP5591022B2 (ja) バス帯域モニタ装置およびバス帯域モニタ方法
US6317813B1 (en) Method for arbitrating multiple memory access requests in a unified memory architecture via a non unified memory controller
JP2010277216A (ja) メモリコントローラ、システムおよび半導体メモリのアクセス制御方法
JP6210743B2 (ja) データ処理装置およびデータ転送制御装置
US9026703B2 (en) Bus monitoring device, bus monitoring method, and program
JP2011003160A5 (ja)
JP5993267B2 (ja) 画像処理装置
US7774513B2 (en) DMA circuit and computer system
JP2007213055A (ja) シンクロナスダイナミックランダムアクセスメモリを用いたフレームデータの転送方法及びフレームデータのソースドライバへの転送方法並びにタイミング制御モジュール
US9767054B2 (en) Data transfer control device and memory-containing device
JP2009251713A (ja) キャッシュメモリ制御装置
JP2009110600A (ja) メモリアクセス方法およびメモリ制御装置
KR100938338B1 (ko) 반도체 장치 및 버퍼 제어 회로
JP5360594B2 (ja) Dma転送装置及び方法
JP2011003161A (ja) データ伝送制御装置およびデータ伝送制御方法
US8099530B2 (en) Data processing apparatus
JP4850504B2 (ja) 信号処理装置、撮像装置およびデータ転送方法
US20140009478A1 (en) Image processing apparatus and control method

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20110214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20110216

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120515

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120515

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130717

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130730

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130920

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131015

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131021

R151 Written notification of patent or utility model registration

Ref document number: 5396169

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250