JP2004234438A - Memory control circuit - Google Patents
Memory control circuit Download PDFInfo
- Publication number
- JP2004234438A JP2004234438A JP2003023603A JP2003023603A JP2004234438A JP 2004234438 A JP2004234438 A JP 2004234438A JP 2003023603 A JP2003023603 A JP 2003023603A JP 2003023603 A JP2003023603 A JP 2003023603A JP 2004234438 A JP2004234438 A JP 2004234438A
- Authority
- JP
- Japan
- Prior art keywords
- signal
- access
- access request
- memory
- specific
- 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.)
- Granted
Links
Images
Abstract
Description
【0001】
【産業上の利用分野】
この発明は、メモリ制御回路に関し、特にたとえばアクセス要求に応答してメモリにアクセス可能な第1状態に遷移させ、この第1状態に遷移したメモリに当該アクセス要求に従ってアクセスし、そして第1状態への遷移後の特定タイミングでメモリをアクセス不可能な第2状態に遷移させる、メモリ制御回路に関する。
【0002】
【従来技術】
従来のメモリ制御回路の一例が、特許文献1に開示されている。この従来技術によれば、CPU(Central Processing Unit)からメモリに対してバーストモードでアクセスが行われるとき、最初のアドレスの下位桁がカウンタ(カウンタ手段)にセットされる。カウンタは、CPUによるリードサイクルよりも早いタイミングでカウントアップを行い、カウントアップされた下位桁のアドレスおよび残りの上位桁のアドレスに基づいてメモリからデータが読み出され、読み出されたデータはラッチ(データ保持手段)に保持される。CPUは、このラッチからデータを読み込む。つまり、CPUによるリードサイクルよりも早いタイミングで順次データが読み出され、言わば先読みされるので、より一層高速なアクセスが可能となる。
【0003】
【特許文献1】
特開平9−34827号公報
【0004】
【発明が解決しようとする課題】
一方、CPUの構成によっては、バーストモードでのアクセスが可能な場合でも、換言すればメモリ内の連続するアドレスがアクセス先とされる場合でも、あえて単独転送モードでアクセスが行われることがある。単独転送モードにおけるCPUの動作はバーストモードにおける動作よりも単純であるため、たとえばキャッシュメモリが内蔵されていないような比較的に簡単な構成のCPUにおいて、かかる単独転送モードが多用される。しかし、単独転送モードでは、それぞれのアドレスについて個別にアクセス要求が発行され、このアクセス要求に従って個別にアクセスが実行されるので、いわゆるオーバヘッドが増大し、その結果、アクセス速度が低下する。これに対し、上述の従来技術は、バーストモードを前提とするため、かかる単独転送モードにおいては上述のような効果を発揮できない。
【0005】
それゆえに、この発明の主たる目的は、個々のアドレスについて個別にアクセス要求が発行される場合でも高速アクセスを実現できる、メモリ制御回路を提供することである。
【0006】
【課題を解決するための手段】
第1の発明は、アクセス要求に応答してメモリにアクセス可能な第1状態に遷移させ、第1状態に遷移したメモリに当該アクセス要求に従ってアクセスし、そして第1状態への遷移後の特定タイミングでメモリをアクセス不可能な第2状態に遷移させるメモリ制御回路において、特定タイミングが到達する前に特定条件を満たす特定アクセス要求が発行されたとき特定アクセス要求に従ってメモリにアクセスするアクセス手段を備え、特定条件はアクセス要求に従うアクセス先アドレスと特定アクセス要求に従うアクセス先アドレスとが互いに連続するというアドレス条件を含むことを特徴とする、メモリ制御回路である。
【0007】
第2の発明は、第1の発明のメモリ制御回路を備える、ディジタルカメラである。
【0008】
【作用】
この発明では、メモリは、アクセス要求に応答して第1状態に遷移し、このアクセス要求に従ってアクセスされる。そして、第1状態への遷移後の特定タイミングが到達すると、メモリは、アクセス不可能な第2状態に遷移する。ただし、特定タイミングが到達する前に、特定条件、具体的には先に発行されたアクセス要求に従うアクセス先アドレスに連続するアドレスをアクセス先とするという条件、を満たす特定アクセス要求が発行されたときは、アクセス手段が、先のアクセス要求に従って実行されたメモリへのアクセスに続いて当該特定アクセス要求に従うアクセスを実行する。
【0009】
この発明のある実施例では、特定タイミングが到達する前に特定アクセス要求が発行されたときは、遅延手段によって当該特定タイミングが遅延される。
【0010】
具体的には、第1状態への遷移後に、カウント手段によってクロックがカウントされる。このカウント手段のカウント値が特定値を示すとき、そのタイミングが特定タイミングとされる。遅延手段は、カウント手段を一時的に不能化することで、特定タイミングを遅延させる。
【0011】
【発明の効果】
この発明によれば、メモリがアクセス可能な第1状態にあるときに、特定条件を満たす特定アクセス要求が発行されると、先のアクセス要求に従って実行されたメモリへのアクセスに続いて当該特定アクセス要求に従うアクセスが実行される。つまり、個々のアドレスについて個別にアクセス要求が発行される場合でも、特定条件が満たされる場合には、連続してアクセスが行われ、その結果、高速アクセスが実現される。
【0012】
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【0013】
【実施例】
図1を参照して、この実施例のメモリアクセス回路10は、ディジタルカメラに適用されるものであり、CPU12,主記憶装置としてのSDRAM14,およびCPU12によるSDRAM14へのアクセスを制御するメモリコントローラ16を含む。なお、CPU12およびメモリコントローラ16は、ASIC(Application Specified IC)18によって一体に形成されている。
【0014】
CPU12およびメモリコントローラ16間では、ADDR(Address)信号,WRITE信号,READYin信号,TRANS信号,SEL信号,READYout信号,WDATA信号およびRDATA信号が、やり取りされる。このうち、ADDR信号は、CPU12からメモリコントローラ16に与えられる32ビットの信号であり、このADDR信号によってCPU12によるSDRAM14内のアクセス先アドレスが指定される。
【0015】
WRITE信号は、制御信号の1つであり、CPU12からメモリコントローラ16に与えられる。このWRITE信号が“H(ハイ)”レベルおよび“L(ロー)”レベルのいずれであるかによって、CPU12がデータの書き込み(ライト)および読み出し(リード)のいずれを指示しているのかが表される。具体的には、WRITE信号が“H(ハイ)”レベルであるときは、データの書き込みを表し、“L(ロー)”レベルであるときは、データの読み出しを表す。
【0016】
READYin信号もまた、CPU12からメモリコントローラ16に与えられる制御信号であり、このREADYin信号は、メモリコントローラ16から見てCPU12がいわゆるコマンド待ち(待機)状態にあるか否かを表す。たとえば、READYin信号が“H”レベルのとき、CPU12がコマンド待ち状態、言い換えれば何らかのコマンドが与えられるとそのコマンドに応答して直ちに動作できる状態にあることが表される。一方、READYin信号が“L”レベルのときは、CPU12が何らかの処理を実行中であり、他のコマンドを受け付けることができない状態にあることが表される。
【0017】
TRANS信号は、データの転送方式を表す信号であり、CPU12からメモリコントローラ16に与えられる。CPU12が単独転送モードでアクセスするときは、このTRANS信号によって後述する“NON(Non Sequence)”という情報が示される。そして、この“NON”という情報の後、“IDOL”という情報が示される。なお、バーストモードでアクセスするときは、このTRANS信号によって最初に“NON”という情報が示され、その後、“SEQ(Sequence)”という情報がバースト長に応じた数だけ連続して示される。
【0018】
SEL信号は、CPU12のメモリコントローラ16に対するいわゆるチップセレクト信号であり、ここではアクティブ“H”の信号とされている。つまり、CPU12は、メモリコントローラ16に対してアクセス要求を発行するとき、このSEL信号を“H”レベルとする。
【0019】
READYout信号は、メモリコントローラ16からCPU12に与えられる制御信号であり、メモリコントローラ16がCPU12からのアクセス要求を受け付けることができる状態にあるか否かを表す信号である。具体的には、READYout信号が“H”レベルのときは、メモリコントローラ16はCPU12からのアクセス要求を受け付けることができる状態にあり、“L”レベルのときは、当該アクセス要求を受け付けることができない状態にあることが表される。
【0020】
WDATA信号は、SDRAM14への書き込み対象となるデータを表す32ビット(1ワード)の信号であり、CPU12からメモリコントローラ16に与えられる。そして、RDATA信号は、SDRAM14から読み出されたデータを表す32ビットの信号であり、メモリコントローラ16からCPU12に与えられる。
【0021】
一方、メモリコントローラ16およびSDRAM14(ASIC18)は、アドレスバス100,コントロールバス102およびデータバス104を介して互いに接続されている。
【0022】
ところで、この実施例におけるCPU12は、キャッシュメモリを内蔵していない比較的に簡単な構成のものであり、バーストモードによるアクセスが可能な場合、換言すればSDRAM14内の連続するアドレスがアクセス先とされる場合でも、あえて単独転送モードによってアクセスすることがある。なお、図には示さないが、この実施例では、いわゆる外付けのキャッシュメモリが設けられている。
【0023】
ここで、かかる単独転送モードによるアクセス要求に応答して、たとえばメモリアクセス回路10がそれぞれのアドレスに対して個別にアクセスするとすると、上述したようにオーバヘッドが増大し、メモリアクセス回路10全体としてのアクセス速度が低下する。そこで、この実施例におけるメモリアクセス回路10は、単独転送モードによるアクセス要求であっても、連続するアドレスがアクセス先として指定された場合には、バーストモードと同様の高速アクセスを実現するべく、次のように構成されている。
【0024】
すなわち、メモリコントローラ16は、REQ(Request)信号生成回路20,ACCESS信号生成回路制22,制御信号生成回路24,カウンタ26,READY信号生成回路28,ACK(Acknowledge)信号生成回路30,アドレスコンバータ32,フリップフロップ(F/F)34,ラッチ回路36,3つのフリップフロップ群38,40,42,3つのラッチ回路群44,46,48,セレクタ50および入出力切換回路52を含む。さらに、入出力切換回路52は、出力ゲート回路群54および入力ゲート回路群56を含む。
【0025】
なお、ADDR信号が入力されるフリップフロップ群38は、当該ADDR信号のビット数と同じ数(32個)のフリップフロップで構成されており、このフリップフロップ群38の出力信号が入力されるラッチ回路群44もまた、同数(32個)のラッチ回路によって構成されている。そして、WDATA信号が入力されるラッチ回路群46および48の各々は、当該WDATA信号のビット数と同じ数(32個)のラッチ回路で構成されており、これらのラッチ回路群46および48の出力信号がセレクタ50を介して入力されるフリップフロップ群40もまた、同数のフリップフロップによって構成されている。さらに、RDATA信号を出力するフリップフロップ群42も、当該RDATA信号のビット数と同数(32個)のフリップフロップによって構成されている。そして、出力ゲート回路群54および入力ゲート回路群56の各々も、32個のゲート回路で構成されている。
【0026】
図2を参照して、CPU12からの単独転送モードによるアクセス要求に応答してSDRAM14にデータを書き込むときのメモリコントローラ16の動作について説明する。なお、CPU12,SDRAM14およびメモリコントローラ16(回路20〜56)は、図示しない発振回路から出力される矩形波信号であるシステムクロック信号(以下、CLK信号と言う。)に同期して動作する。
【0027】
たとえば今、図2(a)に示すCLK信号の或る立ち上がり時点t0において、CPU12からメモリコントローラ16に対しデータの書き込みを要求する旨のアクセス要求が行われたとする。具体的には、図2(b)のTRANS信号が“NON”を示しており、かつ図2(c)のSEL信号が“H”レベルであり、しかも図2(d)のREADYin信号が“H”レベルであるとする。なお、このとき、WRITE信号は、図2(e)に示すように“H”レベルであり、ADDR信号は、図2(f)に示すように任意のアドレス“A”を表す。
【0028】
TRANS信号,SEL信号およびREADYin信号は、メモリコントローラ16内のREQ信号生成回路20に入力され、REQ信号生成回路20は、これを受けて図2(g)に示すようにアクティブ“L”のREQ信号をCLK信号の1クロック期間にわたって出力する。このREQ信号は、READY信号生成回路28に入力され、READY信号生成回路28は、このREQ信号を受けて図2(h)に示すように“L”レベルのREADYout信号を出力する。このREADYout信号は、CPU12に入力され、これによって、CPU12は、メモリコントローラ16が新たなアクセス要求を受け付けることができなくなったことを認識する。
【0029】
REQ信号は、ACCESS信号生成回路22にも入力され、ACCESS信号生成回路22は、このREQ信号が入力されたこと、厳密にはREQ信号が“L”レベルになったことを受けて、図2(i)に示すように時点t0の次のCLK信号の立ち上がり時点t1においてアクティブ“H”のACCESS信号を出力する。つまり、ACCESS信号をアサートする。なお、後述するが、このアサート状態は、メモリコントローラ16による一連のアクセス処理が終了するまで継続される。
【0030】
さらに、REQ信号は、ラッチ回路群44にも入力され、ラッチ回路群44は、このREQ信号の立ち上がりに同期してフリップフロップ群38の出力信号をラッチする。この結果、フリップフロップ群38によってCLK信号の1クロック分だけ遅延させられたADDR信号で表される上述の“A”というアドレスが、ラッチ回路群44に保持される。
【0031】
REQ信号はまた、ラッチ回路36にも入力され、ラッチ回路36は、このREQ信号の立ち上がりに同期してフリップフロップ34の出力信号をラッチする。フリップフロップ34にはWRITE信号が入力されており、これによって、ラッチ回路36には“H”レベルのWRITE信号が保持される。
【0032】
なお、時点t1においては、図2(j)に示すように、上述のアドレス“A”に対応する“D0”というWDATA信号がCPU12から出力される。そして、このWDATA信号は、2つのラッチ回路群46および48にそれぞれ入力される。
【0033】
ACCESS信号生成回路22から出力されたACCESS信号は、ACK信号生成回路30に入力される。ACK信号生成回路30は、図2(k)に示すように、ACCESS信号の立ち上がりからCLK信号の2つめの立ち上がり時点t2においてアクティブ“L”のACK信号を出力する。つまり、ACK信号をアサートする。なお、このようにACCESS信号の立ち上がりからCLK信号の2つめの立ち上がり時点でACK信号をアサートするということは、メモリコントローラ16の設計時に予め決められる。
【0034】
ACK信号は、READY信号生成回路28に入力され、READY信号生成回路28は、このACK信号がアサートされたことを受けて、図2(h)に示すように時点t2の次のCLK信号の立ち上がり時点t3においてREADYout信号を“H”レベルとする。これによって、CPU12は、メモリコントローラ16がアクセス要求を受け付けることができる状態になったことを認識する。また、このREADYout信号が“H”レベルとなったことを受けて、CPU12は、図2(d)に示すようにREADYin信号を“H”レベルとする。
【0035】
ACK信号はまた、カウンタ26にも入力される。カウンタ26は、ACK信号がアサートされたことを受けて、図2(m)に示すように時点t3において自身に初期値として“3”という値をセットする。なお、後述するが、この実施例のメモリコントローラ16においては、SDRAM14へのデータの書き込み時に当該SDRAM14に対しアクティブコマンドが発行されてからCLK信号の“3”クロック後にライトコマンドが発行されるよう設計されており、かかる設計の意図から当該“3”という値がカウンタ26の初期値としてセットされる。カウンタ26は、セットされた値をCLK信号の立ち上がり毎に“1”ずつディクリメントし、つまりカウントダウンし、そのカウント値が“0”になるとカウント動作を停止する。
【0036】
カウンタ26によるカウント値は、制御信号生成回路24に入力され、制御信号生成回路24は、当該カウント値として初期値“3”がセットされたときに、換言すればACK信号がアサートされた後の次のCLK信号の立ち上がり時点t3で、図2(n)に示すように上述のアクティブ(Actv)コマンドを発行する。そして、このアクティブコマンドを発行してからCLK信号の3クロック後に、上述のライト(Write)コマンドを発行する。この制御信号生成回路24によって発行されたコマンドは、コントロールバス102を介してSDRAM14に入力される。
【0037】
上述のREADY信号生成回路28から出力されるREADYout信号は、ラッチ回路群46にも入力される。ラッチ回路群46は、このREADYout信号が“H”レベルになったことを受けて、当該“H”レベルになった時点t3の次のCLK信号の立ち上がり時点t4においてWDATA信号をラッチする。これによって、図2(o)に示すようにアドレス“A”に対応するデータ“D0”がラッチ回路群46によって保持される。また、この時点t4においては、カウンタ26によるカウント値は“2”となる。
【0038】
さて、時点t4において(厳密には時点t4よりも少し遅れて)、CPU12からメモリコントローラ16に対して、アドレス“A”に続くアドレス“A+4(バイト)”を書き込み先として指定するアクセス要求が発せられ、このアクセス要求が時点t4の次のCLK信号の立ち上がり時点t5において認識されたとする。具体的には、時点t5において、図2(b)のTRANS信号が“NON”を示し、かつ図2(c)のSEL信号が“H”レベルであり、しかも図2(d)のREADYin信号が“H”レベルであり、さらにWRITE信号が“H”レベルであるとする。
【0039】
これらTRANS信号,SEL信号およびREADYin信号は、上述したようにREQ信号生成回路20に入力され、これによってREQ信号生成回路20はアクセス要求が発行されたことを認識する。ただし、REQ信号生成回路20には、ACCESS信号生成回路22からACCESS信号も入力されており、REQ信号生成回路20は、当該ACCESS信号がアサートされているとき、つまり前回のアクセス要求に対するアクセス処理が終了していないときは、たとえ新たにアクセス要求が発行されたとしてもREQ信号を出力しない(“L”レベルとしない)。
【0040】
上述のTRANS信号,SEL信号およびREADYin信号は、カウンタ26にも入力され、これによってカウンタ26もまたCPU12から新たなアクセス要求が成されたことを認識する。また、カウンタ26には、CPU12からADDR信号が入力されるとともに、ラッチ回路群44から前回のアクセス要求に従うADDR信号も入力されており、カウンタ26は、これらのADDR信号を互いに比較することで、前回のアクセス要求による指定アドレス“A”と今回のアクセス要求による指定アドレス“A+4”とが連続するか否かを判定する。
【0041】
ここで、カウンタ26は、前回のアクセス要求による指定アドレス“A”と今回のアクセス要求による指定アドレス“A+4”とが連続するアドレスであり、しかも自身のカウント値が“0”ではないと判断すると、図2(m)に示すようにカウント動作を保留する。そして、時点t5の次のCLK信号の立ち上がり時点t6において、ラッチ回路群48を有効化するための制御信号を生成する。これによって、図2(p)に示すようにアドレス“A+4”に対応するデータ“D1”がラッチ回路48によって保持される。
【0042】
時点t6は、制御信号生成回路24から上述のアクティブコマンドが発行されてからCLK信号の3クロック後のタイミングに相当するので、制御信号生成回路24はこのタイミングに合わせてライトコマンドを発行する。これと同時に、制御信号生成回路24は、ラッチ回路群46の出力信号(WD−0信号)がセレクタ50,フリップフロップ群40,入出力切換回路52(出力ゲート回路群54)およびデータバス104を介してSDRAM14に入力されるよう、セレクタ50および入出力切換回路52を制御する。これによって、図2(q)に示すように最初のアクセス要求に従うデータ“D0”がSDRAM14に転送される。なお、SDRAM14には、上述のラッチ回路群44に保持されているADDR信号、つまり最初のアクセス要求に従うADDR信号が、アドレスコンバータ32およびアドレスバス100を介して入力されている。したがって、SDRAM14に入力されたデータ“D0”は、当該最初のアクセス要求によって指定されたアドレス“A”の領域に書き込まれる。
【0043】
そして、時点t6の次のCLK信号の立ち上がり時点t7において、制御信号生成回路24は、ラッチ回路群48の出力信号(WD−1信号)がセレクタ50,フリップフロップ群40,入出力切換回路52(出力ゲート回路群54)およびデータバス104を介してSDRAM14に入力されるよう、セレクタ50および入出力切換回路52を制御する。これによって、図2(q)に示すように2回目のアクセス要求に従うデータ“D1”がSDRAM14に転送される。なお、このとき、制御信号生成回路24は特にコマンドを発効しないので、SDRAM14内においては書き込み先アドレスが通常のバーストモード時と同様に1ワード(=4バイト)分更新され、“A+4”というアドレスに指定される。したがって、2回目のアクセス要求に従うデータ“D0”は、当該2回目のアクセス要求に従うアドレス“A+4”の領域に書き込まれる。
【0044】
この時点t7において、カウンタ26によるカウント値は“0”になる。このカウント値は、ACK信号生成回路30にも入力され、ACK信号生成回路30は、当該カウント値が“0”になったことを次のCLK信号の立ち上がり時点t8で認識する。そして、この時点t8において、図2(k)に示すようにACK信号を“H”レベルにネゲートする。
【0045】
また、カウンタ26によるカウント値が“0”になったことを受けて、制御信号生成回路24は、図2(n)に示すように時点t8においてバーストストップ(BST)コマンドを発行する。このバーストストップコマンドが発行されたことは、ACCESS信号生成回路22にも伝えられる。
【0046】
ACCESS信号生成回路22は、バーストストップコマンドが発行されたことを受けて、時点t8の次のCLK信号の立ち上がり時点t9でACCESS信号を“L”レベルにネゲートする。同時に、制御信号生成回路24は、プリチャージ(PALL)コマンドを発行する。これによって、一連のアクセス処理が終了する。
【0047】
以上の説明から判るように、この実施例によれば、単独転送モードに基づくアクセス要求が行われた後、カウンタ26によるカウント値が“0”になるまでの間、つまり当該アクセス要求に従うデータ(D0)がSDRAM14に転送されるまでの間に、新たなアクセス要求が行われ、これらのアクセス要求で指定されたアドレスが連続する場合には、当該各アクセス要求に従うデータ(D0およびD1)はバーストモードと同様に連続して転送される。つまり、単独転送モードでのアクセス要求に対しても、バーストモードと同様の高速アクセスを実現できる。
【0048】
なお、メモリコントローラ16がたとえばCPU12からの個々のアクセス要求に応答してSDRAM14に対し個別にアクセスするとすると、上述の2回目のアクセス要求に従うデータ“D1”は、図2(q)に符号200で示すように、最初のアクセス要求に従うデータ“D0”が転送されてからCLK信号の数クロック分だけ遅れたタイミングで転送される。つまり、この実施例のような高速アクセスを実現することができない。
【0049】
また、この実施例では、CPU12からSDRAM14にデータを書き込む場合について説明したが、SDRAM14からCPU12にデータを読み出すときも同様である。ただし、この場合、SDRAM14から読み出されたデータは、データバス104,入出力切換回路52(入力ゲート回路群56)およびフリップフロップ群42を介してCPU12に転送される。
【0050】
そして、この実施例では、連続して2つのデータ(D0およびD1)を転送させる場合について説明したが、それ以上の数のデータを連続して転送させることもできる。ただし、この場合、ラッチ回路群46または48と同様のラッチ回路群が、連続して転送させようとするデータの数(連続数)と同じ数だけ必要となる。
【0051】
さらに、この実施例では、ディジタルカメラにこの発明を適用する場合について説明したが、ディジタルカメラ以外の電子機器にもこの発明を適用できることは言うまでもない。
【0052】
また、CPU12およびメモリコントローラ16は、ASIC18によって一体に形成されたものとしたが、各々個別の構成としてもよい。
【図面の簡単な説明】
【図1】この発明の一実施例の概略構成を示すブロック図である。
【図2】図1の実施例においてデータ書き込み時の各要部の動作を示すタイミング図である。
【符号の説明】
10…メモリアクセス回路
12…CPU
14…SDRAM
16…メモリコントローラ
20…REQ信号生成回路
24…制御信号生成回路
26…カウンタ
46,48…ラッチ回路群[0001]
[Industrial applications]
The present invention relates to a memory control circuit, and more particularly to, for example, making a transition to a first state accessible to a memory in response to an access request, accessing the memory that has transitioned to the first state in accordance with the access request, and going to the first state. And a memory control circuit that causes the memory to transition to the inaccessible second state at a specific timing after the transition.
[0002]
[Prior art]
An example of a conventional memory control circuit is disclosed in
[0003]
[Patent Document 1]
JP-A-9-34827
[0004]
[Problems to be solved by the invention]
On the other hand, depending on the configuration of the CPU, access may be performed in the single transfer mode even when access in the burst mode is possible, in other words, even when continuous addresses in the memory are accessed. Since the operation of the CPU in the single transfer mode is simpler than the operation in the burst mode, the single transfer mode is frequently used in a CPU having a relatively simple configuration without a cache memory, for example. However, in the single transfer mode, an access request is issued individually for each address, and accesses are individually executed in accordance with the access requests. Therefore, so-called overhead increases, and as a result, the access speed decreases. On the other hand, the above-described conventional technique is based on the premise of the burst mode, and cannot exert the above-described effects in the single transfer mode.
[0005]
Therefore, a main object of the present invention is to provide a memory control circuit capable of realizing high-speed access even when an access request is individually issued for each address.
[0006]
[Means for Solving the Problems]
According to a first aspect, a transition is made to a first state in which a memory can be accessed in response to an access request, a memory that has transitioned to the first state is accessed in accordance with the access request, and a specific timing after the transition to the first state. A memory control circuit for causing the memory to transition to a second state in which the memory is inaccessible, wherein when a specific access request that satisfies a specific condition is issued before a specific timing arrives, an access unit that accesses the memory in accordance with the specific access request; The memory control circuit is characterized in that the specific condition includes an address condition that an access destination address according to the access request and an access destination address according to the specific access request are continuous with each other.
[0007]
A second invention is a digital camera including the memory control circuit according to the first invention.
[0008]
[Action]
According to the present invention, the memory transitions to the first state in response to the access request, and is accessed according to the access request. When the specific timing after the transition to the first state arrives, the memory transitions to the inaccessible second state. However, when a specific access request that satisfies a specific condition, specifically, a condition that an address following an access destination address according to an access request issued earlier is set as an access destination before a specific timing arrives, is issued. The access means executes an access according to the specific access request, following an access to the memory executed according to the previous access request.
[0009]
In one embodiment of the present invention, when the specific access request is issued before the specific timing has arrived, the specific timing is delayed by the delay unit.
[0010]
Specifically, after the transition to the first state, the clock is counted by the counting means. When the count value of the counting means indicates a specific value, the timing is set as the specific timing. The delay unit delays the specific timing by temporarily disabling the counting unit.
[0011]
【The invention's effect】
According to the present invention, when a specific access request that satisfies a specific condition is issued when the memory is in the first accessible state, the specific access is performed following the access to the memory executed in accordance with the previous access request. Access according to the request is performed. That is, even when an access request is individually issued for each address, if a specific condition is satisfied, access is performed continuously, and as a result, high-speed access is realized.
[0012]
The above and other objects, features and advantages of the present invention will become more apparent from the following detailed description of embodiments with reference to the drawings.
[0013]
【Example】
Referring to FIG. 1, a
[0014]
An ADDR (Address) signal, a WRITE signal, a READYin signal, a TRANS signal, a SEL signal, a READYout signal, a WDATA signal, and an RDATA signal are exchanged between the
[0015]
The WRITE signal is one of the control signals, and is provided from the
[0016]
The READYin signal is also a control signal provided from the
[0017]
The TRANS signal is a signal indicating a data transfer method, and is given from the
[0018]
The SEL signal is a so-called chip select signal for the
[0019]
The READYout signal is a control signal provided from the
[0020]
The WDATA signal is a 32-bit (1 word) signal representing data to be written to the
[0021]
On the other hand, the
[0022]
By the way, the
[0023]
Here, if the
[0024]
That is, the
[0025]
The flip-
[0026]
Referring to FIG. 2, the operation of
[0027]
For example, it is assumed that an access request is issued from the
[0028]
The TRANS signal, the SEL signal, and the READYin signal are input to the REQ
[0029]
The REQ signal is also input to the ACCESS
[0030]
Further, the REQ signal is also input to the
[0031]
The REQ signal is also input to the
[0032]
At time t1, as shown in FIG. 2 (j), the
[0033]
The ACCESS signal output from the ACCESS
[0034]
The ACK signal is input to the READY
[0035]
The ACK signal is also input to the
[0036]
The count value of the
[0037]
The READYout signal output from the above-described READY
[0038]
At time t4 (strictly, slightly later than time t4), the
[0039]
These TRANS signal, SEL signal and READYin signal are input to the REQ
[0040]
The above-described TRANS signal, SEL signal and READYin signal are also input to the
[0041]
Here, when the
[0042]
The time point t6 corresponds to a timing three clocks after the CLK signal from the issuance of the above-mentioned active command from the control
[0043]
Then, at the rising time point t7 of the CLK signal following the time point t6, the control
[0044]
At this time point t7, the count value of the
[0045]
Further, in response to the count value of the
[0046]
In response to the issuance of the burst stop command, the ACCESS
[0047]
As can be understood from the above description, according to this embodiment, after the access request based on the single transfer mode is made, the data (in accordance with the access request) is kept until the count value of the
[0048]
If the
[0049]
In this embodiment, the case where data is written from the
[0050]
In this embodiment, the case where two data (D0 and D1) are continuously transferred has been described. However, more data can be continuously transferred. However, in this case, the same number of latch circuit groups as the
[0051]
Furthermore, in this embodiment, the case where the present invention is applied to a digital camera has been described, but it goes without saying that the present invention can be applied to electronic devices other than the digital camera.
[0052]
Further, the
[Brief description of the drawings]
FIG. 1 is a block diagram showing a schematic configuration of an embodiment of the present invention.
FIG. 2 is a timing chart showing an operation of each main part at the time of data writing in the embodiment of FIG.
[Explanation of symbols]
10 Memory access circuit
12 ... CPU
14 ... SDRAM
16 ... Memory controller
20 REQ signal generation circuit
24 ... Control signal generation circuit
26 ... Counter
46, 48 ... Latch circuit group
Claims (4)
前記特定タイミングが到達する前に特定条件を満たす特定アクセス要求が発行されたとき前記特定アクセス要求に従って前記メモリにアクセスするアクセス手段を備え、
前記特定条件は前記アクセス要求に従うアクセス先アドレスと前記特定アクセス要求に従うアクセス先アドレスとが互いに連続するというアドレス条件を含むことを特徴とする、メモリ制御回路。In response to an access request, a transition is made to a first state in which a memory is accessible, the memory that has transitioned to the first state is accessed according to the access request, and the memory is accessed at a specific timing after the transition to the first state. In a memory control circuit that causes the state to transition to the inaccessible second state,
An access unit for accessing the memory according to the specific access request when a specific access request satisfying a specific condition is issued before the specific timing arrives,
The memory control circuit, wherein the specific condition includes an address condition that an access destination address according to the access request and an access destination address according to the specific access request are continuous with each other.
前記特定タイミングは前記カウント手段のカウント値が特定値を示すタイミングであり、
前記遅延手段は前記カウント手段を一時的に不能化する、請求項2記載のメモリ制御回路。A counting unit that counts a clock after the transition to the first state;
The specific timing is a timing at which the count value of the counting means indicates a specific value,
3. The memory control circuit according to claim 2, wherein said delay means temporarily disables said counting means.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003023603A JP4093872B2 (en) | 2003-01-31 | 2003-01-31 | Memory control circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003023603A JP4093872B2 (en) | 2003-01-31 | 2003-01-31 | Memory control circuit |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004234438A true JP2004234438A (en) | 2004-08-19 |
JP4093872B2 JP4093872B2 (en) | 2008-06-04 |
Family
ID=32952360
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003023603A Expired - Fee Related JP4093872B2 (en) | 2003-01-31 | 2003-01-31 | Memory control circuit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4093872B2 (en) |
-
2003
- 2003-01-31 JP JP2003023603A patent/JP4093872B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP4093872B2 (en) | 2008-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5629819B2 (en) | Apparatus and method for using variable clock gating hysteresis in communication port | |
JP4733877B2 (en) | Semiconductor device | |
US7889578B2 (en) | Single-strobe operation of memory devices | |
JP2002539527A (en) | Microprocessing device with programmable wait state | |
EP2808801B1 (en) | Multiple data rate memory with read timing information | |
US20110082956A1 (en) | Information processing system and control method thereof | |
US6957399B2 (en) | Controlling the propagation of a digital signal by means of variable I/O delay compensation using delay-tracking | |
KR100288177B1 (en) | Memory access control circuit | |
JP2005518042A (en) | Data transfer between buses with different clocks | |
JP4093872B2 (en) | Memory control circuit | |
JP2002024156A (en) | Dma controller and transfer method therefor | |
JP4114749B2 (en) | MEMORY CONTROL DEVICE AND ELECTRONIC DEVICE | |
JP4377567B2 (en) | Semiconductor memory device and apparatus and method for setting burst mode in memory device | |
JP2000215154A (en) | Dma controller | |
JP2001209573A (en) | Memory address converter | |
JP2000132451A (en) | Memory control circuit | |
JP3353368B2 (en) | Bus relay device | |
KR20050122973A (en) | Apparatus for reducing power consumption of advanced micro-controller bus architecture(amba) | |
JPH03132852A (en) | Bus asynchronous control system | |
CN112527717A (en) | AHB-to-APB conversion bridge for distinguishing write-in operation of host | |
JP2635863B2 (en) | Central processing unit | |
JPH0551931B2 (en) | ||
JP2003233584A (en) | Data transfer device | |
JPH1063566A (en) | Memory arbitrating circuit and electronic circuit | |
JP2001188749A (en) | Bus controller |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051130 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070820 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070828 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071026 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071225 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080109 |
|
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: 20080206 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080304 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110314 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110314 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110314 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130314 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140314 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140314 Year of fee payment: 6 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140314 Year of fee payment: 6 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |