JP2004507817A - Dram制御回路 - Google Patents
Dram制御回路 Download PDFInfo
- Publication number
- JP2004507817A JP2004507817A JP2002521719A JP2002521719A JP2004507817A JP 2004507817 A JP2004507817 A JP 2004507817A JP 2002521719 A JP2002521719 A JP 2002521719A JP 2002521719 A JP2002521719 A JP 2002521719A JP 2004507817 A JP2004507817 A JP 2004507817A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- memory
- series
- data
- predetermined number
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1673—Details of memory controller using buffers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
Abstract
本発明は、同時にアクセスできない少なくとも2つのゾーン(A、B)を備える記憶装置(4)の制御回路に関し、この回路は、読取り命令および/または書込み命令のシリーズを前記のゾーンごとに別々に格納するための第1の手段(14、16)と、第1のゾーンにアドレス指定された第1の命令が、第1のゾーンが他の命令を受け取ることができない周期がその後に続かなければならない所定の命令であることを検出するための第2の手段(18)と、前記の周期中にその記憶装置の別のゾーンに命令を供給するための第3の手段(20)とを備える。
Description
【0001】
本発明は、メモリ制御回路に関し、より詳細には複数の記憶域を含む、SDRAM型、DDR型、またはRAMBUS型の外部メモリを制御するための回路に関する。
【0002】
多くの電子システムは、大量のデータをメモリ内に格納する必要があり、こうしたデータに高速にアクセスしなければならない。ダイナミックRAM型またはDRAM型のメモリは一般に、高速のデータ転送速度でキャッシュを介してアクセスすることができる複数の記憶域を備え、この種の使用に適している。通常こうしたメモリは、離散型集積回路(外部メモリ)であり、残りの電子システムに接続するために、メモリ制御回路に接続されなければならない。
【0003】
図1に、制御バスCOMおよびデータ・バスDATを介してDRAM型メモリ4に接続されたメモリ制御回路2を概略的に示す。メモリ4は、2つの記憶域A、Bを備え、各記憶域は、キャッシュBUFA、BUFBをそれぞれ介してデータ・バスDATに接続される。メモリ4は、クロック信号CKによって速度が決められる。記憶域A、Bはどちらも、複数のメモリ・ページ(図示せず)に編成され、各記憶域は所定数のワードを含む。キャッシュBUFA、BUFBは、制御バスCOMによって回路2に接続される。回路2は、ブロック(図示せず)からの読取りおよび/または書込み要求を受け取るように接続された優先権管理ブロック8を備えており、さらにメモリ4とデータをやり取りするためにバスDATに接続される。ブロック8は、一方または他方の記憶域向けの書込みおよび/または読取り要求を受け取る。ブロック8は、2つのブロックから供給される2つの要求を同時に受け取ったとき、2つのブロックのうち他方より高い優先権を保持するブロックから受け取った要求を優先して処理する。こうしたブロックの優先順位は通常、回路の初期設定時にプログラムされている。さらに回路2は、ブロック8の出力端とバスCOMの間に接続されたブロック10を備えており、このブロック10は、ブロック8から受け取った要求を、回路2特有の通信プロトコルからメモリ4特有の通信プロトコルに変換する。メモリが受け入れるプロトコルは、そのメモリのタイプおよび製造者によって決まる。
【0004】
図2に、ブロック10によってクロック信号CKの速度で供給される2つの命令シリーズを概略的に示す。図示したこの例では、ブロック10は、あるワードを記憶域AのページA1のアドレスA1’に書き込むための第1の要求を受け取り、次いであるワードを記憶域BのページB1内のアドレスB1’に書き込むための第2の要求を受け取る。図示したこの例では、こうした書込み要求は、それぞれ問題とするキャッシュのデータを以前に処理したページに再度書き込むこと(キャッシュの事前ロード、命令PRE)から始まり、それに続いてその問題とするページを前記キャッシュに書き込み(キャッシュ活動化、命令ACT)、次いでこの問題とするワードを前記キャッシュに書き込む(命令WR)。
【0005】
第1の書込み要求の開始時に相当する時刻t0に、ブロック10は、キャッシュBUFAを事前ロードするための命令PRE A0をバスCOMに供給する。この事前ロード命令は、クロック信号CKの周期T中にキャッシュBUFAに供給されるが、事前ロード動作は、1周期だけでは実行できないことに留意されたい。この事前ロード実行速度は、メモリ4の一特性である。図示した例では、メモリ4は、3周期で事前ロード動作を実行する。したがって事前ロード命令を受け取ってから2周期中は、キャッシュは、他の命令を受け取ることができず、ブロック10は、事前ロード命令と次の活動化命令の間に非命令「NOP」を2つ供給しなけれならない。時刻t0から周期Tが3つ経過した後の時刻t1に、ブロック10は、記憶域A内のアドレスのページA1を読み取るようキャッシュBUFAに要求するページ活動化制御信号ACT A1をバスCOMに供給する。この活動化命令は、1つの周期T中にキャッシュBUFAに供給されるが、活動化動作は、3周期で実行され、ブロック10は、この活動化命令とその次の書込み命令の間にNOP命令を2つ供給する必要がある。時刻t1から周期Tが3つ経過した後の時刻t2に、ブロック10は、アドレスがA1’であるワードをキャッシュBUFAに書き込むための命令WR A1’を供給する。命令WR A1’が供給されるとき、アドレスA1’に書き込まれるワードがデータ・バスDATに供給されることに留意されたい。書込み動作を実行するのに単一の周期が必要である。時刻t2から周期Tが1つ経過した後の時刻t3で、ページA1のアドレスA1’のワードを記憶域Aに書き込む動作は終了する。
【0006】
第2の書込み要求は、第1の書込み要求と同様に処理される。時刻t3に、ブロック10は、キャッシュBUFBを事前ロードするための命令PRE B0を供給する。時刻t3から周期Tが3つ経過した後の時刻t4に、ブロック10は、記憶域B内のアドレスのページB1を活動化するための命令ACT B1を供給する。最後に、時刻t4から周期Tが3つ経過した後の時刻t5に、ブロック10は、ページB1のアドレスのワードB1’を書き込むための命令WR B1’を供給する。
【0007】
第1および第2の書込み要求を、同じページで続けて実行しなければならないとき、使用したキャッシュはすでに、第1の書込み後に一致したページを格納しており、第2の書込み要求を実行して、ブロック10が前記のページの事前ロード命令および活動化命令を再び供給する必要がないことに留意されたい。自動的にあるキャッシュのワードに書込み、それに続いて一続きの書込み動作をそのキャッシュの次のワードに書き込むためのいくつかのメモリが設けられていることにも留意されたい。こうした書込みシーケンスを、バースト・モードでの書込みと言う。バースト書込みでは、使用したキャッシュは、他のどの命令を受け取ることもできず、ブロック10は、命令NOPを供給する。バースト書込みは従来技術では、事前ロード命令などの所定の命令の割り込みを受ける。
【0008】
記憶域のページからあるワードを読み取るための要求の実行は、前述のワード書込み要求の実行と類似しており、ワード読取り命令(RD)は、ワード書込み命令(WR)に置き換わる。
【0009】
最近の技術的進歩により、800MHzまでに及ぶ非常に高い周波数で動作するDRAMが開発可能になってきている。現在までに、特に単純で高速のアーキテクチャを用いて、こうしたメモリの制御命令を供給できる制御回路を開発することが可能となってきている。しかし、このメモリとやりとりされるデータの速度を、さらに高速にすることが求められている。メモリにアクセスする速度を高速にすることは可能であるが、より高速のクロック信号で動作する制御回路を開発するには、多くの問題、特に開発コストがかかり電力消費が多いといった問題がある。非常に広い制御バスおよびデータ・バスを使用することにより、データ速度を高速にすることも可能であるが、そうした解決策では、それぞれがバスの一部に接続される複数のメモリを使用する必要があるが、複数のメモリを使用すると高価になる。
【0010】
本発明の一目的は、高速のデータ転送速度で、少なくとも2つの区域を含むDRAM型のメモリにアクセス可能な制御回路を実現することである。
【0011】
本発明の他の目的は、標準の幅を有する制御バスおよびデータ・バスを用いたこうした制御回路を実現することである。
【0012】
本発明の他の目的は、低い周波数のクロック信号で動作するこうした回路を実現することである。
【0013】
本発明の他の目的は、最大動作周波数が低い安価なメモリと共に動作することができるこうした回路を実現することである。
【0014】
上記および他の目的を実現するために、本発明は、同時にアクセスできない少なくとも2つの区域を備えるメモリを制御するための回路を提供する。この回路は、読取り命令および/または書込み命令のシリーズを前記の区域ごとに別々に格納するための第1の手段と、第1の区域向けの第1の命令が、第1の区域が他の命令を受け取ることができない周期がその後に続く、所定の命令であることを検出するための第2の手段と、前記の周期中に別の記憶域に命令を供給するための第3の手段とを備える。
【0015】
本発明の一実施形態によれば、各記憶域は、特定のキャッシュを介してアクセスすることができる。
【0016】
本発明の一実施形態によれば、さらにこの回路は、読取りおよび/または書込み要求を受け取り、こうした要求のそれぞれを命令シリーズの形で第1の手段に書き込むための第4の手段を備え、この命令シリーズはそれぞれ所定数のデータを含む。
【0017】
本発明の一実施形態によれば、前記命令シリーズの所定数のデータは、第1の手段に格納された命令シリーズそれぞれの間に存在する優先順位の指示を含む。
【0018】
本発明の一実施形態によれば、前記命令シリーズの所定数のデータは、この命令シリーズがメモリからの読取りを目的としているか、それともメモリへの書込みを目的としているかの指示を含む。
【0019】
本発明の一実施形態によれば、前記命令シリーズの所定数のデータは、前記命令シリーズが対象とするアドレスを含む。
【0020】
本発明の一実施形態によれば、前記命令シリーズの所定数のデータは、前記命令シリーズを形成する命令を含む。
【0021】
本発明の一実施形態によれば、前記命令シリーズの所定数のデータは、前記命令シリーズを実行するのに必要な持続時間も含む。
【0022】
本発明の一実施形態によれば、第1の手段は、メモリの区域ごとに所定数のレジスタを備える。
【0023】
本発明の一実施形態によれば、前記所定数のレジスタは、それぞれ第4および第2の手段による前記所定数のレジスタの他方のレジスタの書込みおよび読取りを管理するための指標レジスタを備える。
【0024】
本発明の上記その他の目的、特徴および利点は、添付図面に関連して、以下の特定の実施形態についての非限定的な説明で詳細に論じる。
【0025】
図3に、本発明による、メモリ4に接続されたメモリ制御回路を概略的に示す。本発明によれば、この制御回路は、メモリ4とデータをやり取りするバスDATに接続されたこの回路のブロック(図示せず)から書込みおよび/または読取り要求を受け取るように接続された認識ブロック12を備える。この制御回路はさらに、ブロック12から供給されるデータを記憶するために設けられた、2個のレジスタ・セット14(A’)、16(B’)を備える。判断ブロック18は、レジスタ・セット14、16の出力端に接続される。ブロック18の出力は、制御バスCOMに接続された状態機械20に供給される。状態機械20は、メモリ4と同じクロック信号CKによって速度が決められる。
【0026】
ブロック12が、記憶域Aまたは記憶域B向けの要求を受け取るとき、その要求をこの後で分かるように、命令およびデータに翻訳する。こうした命令/データは、区域A向けかまたは区域B向けかに従って、それぞれレジスタ・セット14または16に格納される。ブロック12が、2つの回路ブロックから2つの要求を同時に受け取る場合、従来の優先権管理に従って、最初に最も高い優先権を保持するブロックからの要求を処理する。セット14、16に格納された命令は、ブロック18によって分析され、対象とするキャッシュが他の命令を受け取ることができない周期がその後に続く命令かどうかが判定される。そうした命令が、レジスタ・セットのうちの一方に存在する場合、ブロック18は、他方のレジスタ・セットに格納された命令/データを分析して、前記の周期中、他方のレジスタ・セットから他方のキャッシュに命令を供給することが可能かどうかを判定する。状態機械20は、クロック信号を判断ブロック18に供給して、クロック信号CKの新しい周期ごとに、メモリ・キャッシュの一方または他方に供給される命令を受け取る。命令を供給してはいけない場合、状態機械20は命令NOPを生成する。状態機械20は、ブロック18から供給された命令をメモリ4が受け入れる基本コード化命令に翻訳する。
【0027】
図4に、状態機械20によってクロック信号CKの速度で供給される2つの命令シリーズを概略的に示す。前述のように、2つの命令シリーズは、それぞれ記憶域AのページA1内のアドレスA1’にあるワードを書き込むための第1の要求、および記憶域BのページB1内のアドレスB1’にあるワードを書き込むための第2の要求に相当する。前述のように各要求は、ページ事前ロード命令から始まり、次いでページ活動化命令、ワード書込み命令が続く。
【0028】
記憶域A向けの事前ロード命令PRE A0、活動化命令ACT A1、および書込み命令WR A1は、前述のように、3つの周期Tの間隔で、それぞれ時刻t0、時刻t1、および時刻t2に供給される。しかし、本発明によれば、時刻t0から周期Tが1つ経過した後の時刻t0’に、記憶域B向けの事前ロード命令PRE B0がバスCOMに供給される。時刻t0’は、命令PRE A0の後に続く周期の開始時であり、この周期中にはキャッシュBUFAは他の命令を受け取ることはできない。同様に、時刻t1から周期Tが2つ経過した後の時刻t1’に、記憶域B向けの活動化命令ACT B1が、バスCOMに供給される。したがって、命令ACT A1と命令ACT B1の間に命令NOPが1つ挿入されることに留意されたい。このような命令NOPの挿入は、構成により2つの命令ACTを続けて受け取ることができないほとんどのメモリにとって必要である。しかし、2つの命令ACTを続けて受け取ることができるメモリの場合、時刻t1’は、時刻t1から周期Tが1つ経過した後に発生するかもしれない。最後に、時刻t2から周期Tが1つ経過した後の時刻t2’に、記憶域B向けの書込み命令WR B1’が供給される。ワードの書込みB1の前にワードの書込みA1が行われており、すなわち、レジスタ・セット14、16に供給されている書込み要求の優先順位が尊重されていることに留意されたい。
【0029】
図示した例では、本発明により、クロック信号CKの8周期内に、2つの書込み要求をメモリ4に供給できるようになる。この数を、従来技術によって同じメモリに同じ要求を供給するのに必要な14周期のクロック信号と比較すべきである。この速度利得は、示されていないが、そのメモリに供給することができる他方の書込み/読取り要求にも一般化することができる。本発明により、従来技術によるクロック信号よりも高速の信号を使用せずに、データ転送速度を高速にすることができる。したがって、本発明によるメモリ制御回路を用いて、従来技術による周波数よりも低い周波数のクロック信号を使用しながら、従来技術による制御回路を用いたものよりもデータ転送速度を高速化することが可能である。さらに、本発明による制御回路では、低い周波数で動作するメモリを用いてデータ転送速度を高速にすることができるので、本発明により安価のメモリを使用できるようになる。
【0030】
本発明はまた、バースト書込みおよび読取り動作を実施するメモリ制御回路に適合される。メモリが、第1のキャッシュ上で、書込みまたは読取り動作のバースト・シーケンスを実施するとき、前記キャッシュは、他の命令を受け取ることはできず、制御バスCOMは、自由に第2のキャッシュに命令を供給することができる。しかし、データ・バスDATは、書込みまたは読取り動作によって使用されている。したがって、ブロック18は、キャッシュ内でバースト書込み/読取り動作中には、他方のキャッシュに命令を供給することのみが行われ、データ・バスDATを使用するようにはならない(前述の事前ロードおよび活動化動作と同様)。
【0031】
図5に、レジスタ・セット14を概略的に示す。レジスタ・セット16も同一の構造である。レジスタ・セット14は、タイプ・レジスタ(TYP)、順位レジスタ(ORD)、アドレス・レジスタ(ADR)、制御レジスタ(CMD)、サイズ・レジスタ(SIZ)、バイト・イネーブル・レジスタ(BE)、書込み指標レジスタ(WRI)、および読取り指標レジスタ(RDI)を備える。書込み指標レジスタは、ブロック12によって更新されたアドレスを含む。読取り指標レジスタは、ブロック18によって更新されたアドレスを含む。タイプ・レジスタ、順位レジスタ、アドレス・レジスタ、制御レジスタ、サイズ・レジスタ、およびバイト・イネーブル・レジスタは、FIFOタイプのものであり、各レジスタは、アドレスによってそれぞれ位置を見付けることができる、等しい数のデータを含む。FIFOレジスタは、書込み指標レジスタに格納されたアドレスにブロック12によって書き込み、読取り指標レジスタに格納されたアドレスからブロック18によって読み取られるように接続される。書込み指標レジスタと読取り指標レジスタに格納されたアドレスを比較することにより、FIFOレジスタの充填速度を知ることができるようになる。FIFOレジスタのアドレスがすべて使用されている場合、これ以上要求に関するデータをレジスタ・セットに格納することはできず、エラー・メッセージが生成される。
【0032】
ブロック12が受け取る各要求により、データがFIFOレジスタに書き込まれ、書込み指標レジスタのアドレスが増分される。
【0033】
タイプ・レジスタは、要求が読取り要求か、それとも書込み要求かを示すデータを受け取る。
【0034】
順位レジスタは、要求が制御回路に供給された時刻を示す絶対時間を受け取る。この示された時間によって、回路18はどの命令を先に送るか、選択できるようになる。
【0035】
アドレス・レジスタは、要求が実行されなければならないページおよびワードのアドレスを受け取る。
【0036】
制御レジスタは、要求を実行するのに必要な命令を含む。例えば、新しいページに書き込む要求の場合には、命令PRE、命令ACT、命令WRであり、すでに活動化されたページに書き込む要求の場合には命令WRである。要求を実行するのに必要な命令は特に、その要求が対象とするページのアドレスに従って、そのアドレスを先行する要求が対象としたページのアドレスと比較して決定される。これを達成するために、ブロック12は、図示されていない接続によって制御レジスタからの読取りを行うことができる。
【0037】
サイズ・レジスタは、要求を実行するのに必要な周期数を受け取る。
【0038】
バイト・イネーブル・レジスタは、各要求に関与するデータ・バイト数を受け取る(例えば、あるワードのバイトをすべて書き込み、読み取る必要のない場合)。
【0039】
ブロック12の全体的な動作を確実に高速にするためには、前記ブロックは、要求に関するデータが特に処理するのが簡単で時間を要しないとき、次の要求を処理し始める。FIFOレジスタ・セットに格納できるデータ数により、ブロック18が事前に分析できる要求数が決定する。
【0040】
本発明には当然、前述の説明を読めば、様々な変更形態、修正形態、および改良形態が当業者には容易に思い付くであろう。特に、書込み要求を特定の方式で実行する制御回路を説明してきたが、当業者なら、同じ要求を別の形で実行する制御回路に本発明を容易に適合させるであろう。例えば、書込み要求は、書込み命令および事前ロード命令がその後に続く活動化命令に対応するものでもよい。
【0041】
さらに、本発明は、2つの記憶域を備えたメモリに関して説明してきたが、当業者なら、より多数の記憶域を備えたメモリに本発明を容易に適合させるであろう。次いで本発明による制御回路は、そのメモリが有するメモリ区域と同じ数のレジスタ・セットを備えることができる。
【図面の簡単な説明】
【図1】先に説明した、従来のDRAM制御回路を示す概略図である。
【図2】先に説明した、図1の制御回路の動作を示す図である。
【図3】本発明による制御回路を示す概略図である。
【図4】図3の制御回路の動作を示す概略図である。
【図5】本発明による制御回路のレジスタ・セットの構成を示す概略図である。
本発明は、メモリ制御回路に関し、より詳細には複数の記憶域を含む、SDRAM型、DDR型、またはRAMBUS型の外部メモリを制御するための回路に関する。
【0002】
多くの電子システムは、大量のデータをメモリ内に格納する必要があり、こうしたデータに高速にアクセスしなければならない。ダイナミックRAM型またはDRAM型のメモリは一般に、高速のデータ転送速度でキャッシュを介してアクセスすることができる複数の記憶域を備え、この種の使用に適している。通常こうしたメモリは、離散型集積回路(外部メモリ)であり、残りの電子システムに接続するために、メモリ制御回路に接続されなければならない。
【0003】
図1に、制御バスCOMおよびデータ・バスDATを介してDRAM型メモリ4に接続されたメモリ制御回路2を概略的に示す。メモリ4は、2つの記憶域A、Bを備え、各記憶域は、キャッシュBUFA、BUFBをそれぞれ介してデータ・バスDATに接続される。メモリ4は、クロック信号CKによって速度が決められる。記憶域A、Bはどちらも、複数のメモリ・ページ(図示せず)に編成され、各記憶域は所定数のワードを含む。キャッシュBUFA、BUFBは、制御バスCOMによって回路2に接続される。回路2は、ブロック(図示せず)からの読取りおよび/または書込み要求を受け取るように接続された優先権管理ブロック8を備えており、さらにメモリ4とデータをやり取りするためにバスDATに接続される。ブロック8は、一方または他方の記憶域向けの書込みおよび/または読取り要求を受け取る。ブロック8は、2つのブロックから供給される2つの要求を同時に受け取ったとき、2つのブロックのうち他方より高い優先権を保持するブロックから受け取った要求を優先して処理する。こうしたブロックの優先順位は通常、回路の初期設定時にプログラムされている。さらに回路2は、ブロック8の出力端とバスCOMの間に接続されたブロック10を備えており、このブロック10は、ブロック8から受け取った要求を、回路2特有の通信プロトコルからメモリ4特有の通信プロトコルに変換する。メモリが受け入れるプロトコルは、そのメモリのタイプおよび製造者によって決まる。
【0004】
図2に、ブロック10によってクロック信号CKの速度で供給される2つの命令シリーズを概略的に示す。図示したこの例では、ブロック10は、あるワードを記憶域AのページA1のアドレスA1’に書き込むための第1の要求を受け取り、次いであるワードを記憶域BのページB1内のアドレスB1’に書き込むための第2の要求を受け取る。図示したこの例では、こうした書込み要求は、それぞれ問題とするキャッシュのデータを以前に処理したページに再度書き込むこと(キャッシュの事前ロード、命令PRE)から始まり、それに続いてその問題とするページを前記キャッシュに書き込み(キャッシュ活動化、命令ACT)、次いでこの問題とするワードを前記キャッシュに書き込む(命令WR)。
【0005】
第1の書込み要求の開始時に相当する時刻t0に、ブロック10は、キャッシュBUFAを事前ロードするための命令PRE A0をバスCOMに供給する。この事前ロード命令は、クロック信号CKの周期T中にキャッシュBUFAに供給されるが、事前ロード動作は、1周期だけでは実行できないことに留意されたい。この事前ロード実行速度は、メモリ4の一特性である。図示した例では、メモリ4は、3周期で事前ロード動作を実行する。したがって事前ロード命令を受け取ってから2周期中は、キャッシュは、他の命令を受け取ることができず、ブロック10は、事前ロード命令と次の活動化命令の間に非命令「NOP」を2つ供給しなけれならない。時刻t0から周期Tが3つ経過した後の時刻t1に、ブロック10は、記憶域A内のアドレスのページA1を読み取るようキャッシュBUFAに要求するページ活動化制御信号ACT A1をバスCOMに供給する。この活動化命令は、1つの周期T中にキャッシュBUFAに供給されるが、活動化動作は、3周期で実行され、ブロック10は、この活動化命令とその次の書込み命令の間にNOP命令を2つ供給する必要がある。時刻t1から周期Tが3つ経過した後の時刻t2に、ブロック10は、アドレスがA1’であるワードをキャッシュBUFAに書き込むための命令WR A1’を供給する。命令WR A1’が供給されるとき、アドレスA1’に書き込まれるワードがデータ・バスDATに供給されることに留意されたい。書込み動作を実行するのに単一の周期が必要である。時刻t2から周期Tが1つ経過した後の時刻t3で、ページA1のアドレスA1’のワードを記憶域Aに書き込む動作は終了する。
【0006】
第2の書込み要求は、第1の書込み要求と同様に処理される。時刻t3に、ブロック10は、キャッシュBUFBを事前ロードするための命令PRE B0を供給する。時刻t3から周期Tが3つ経過した後の時刻t4に、ブロック10は、記憶域B内のアドレスのページB1を活動化するための命令ACT B1を供給する。最後に、時刻t4から周期Tが3つ経過した後の時刻t5に、ブロック10は、ページB1のアドレスのワードB1’を書き込むための命令WR B1’を供給する。
【0007】
第1および第2の書込み要求を、同じページで続けて実行しなければならないとき、使用したキャッシュはすでに、第1の書込み後に一致したページを格納しており、第2の書込み要求を実行して、ブロック10が前記のページの事前ロード命令および活動化命令を再び供給する必要がないことに留意されたい。自動的にあるキャッシュのワードに書込み、それに続いて一続きの書込み動作をそのキャッシュの次のワードに書き込むためのいくつかのメモリが設けられていることにも留意されたい。こうした書込みシーケンスを、バースト・モードでの書込みと言う。バースト書込みでは、使用したキャッシュは、他のどの命令を受け取ることもできず、ブロック10は、命令NOPを供給する。バースト書込みは従来技術では、事前ロード命令などの所定の命令の割り込みを受ける。
【0008】
記憶域のページからあるワードを読み取るための要求の実行は、前述のワード書込み要求の実行と類似しており、ワード読取り命令(RD)は、ワード書込み命令(WR)に置き換わる。
【0009】
最近の技術的進歩により、800MHzまでに及ぶ非常に高い周波数で動作するDRAMが開発可能になってきている。現在までに、特に単純で高速のアーキテクチャを用いて、こうしたメモリの制御命令を供給できる制御回路を開発することが可能となってきている。しかし、このメモリとやりとりされるデータの速度を、さらに高速にすることが求められている。メモリにアクセスする速度を高速にすることは可能であるが、より高速のクロック信号で動作する制御回路を開発するには、多くの問題、特に開発コストがかかり電力消費が多いといった問題がある。非常に広い制御バスおよびデータ・バスを使用することにより、データ速度を高速にすることも可能であるが、そうした解決策では、それぞれがバスの一部に接続される複数のメモリを使用する必要があるが、複数のメモリを使用すると高価になる。
【0010】
本発明の一目的は、高速のデータ転送速度で、少なくとも2つの区域を含むDRAM型のメモリにアクセス可能な制御回路を実現することである。
【0011】
本発明の他の目的は、標準の幅を有する制御バスおよびデータ・バスを用いたこうした制御回路を実現することである。
【0012】
本発明の他の目的は、低い周波数のクロック信号で動作するこうした回路を実現することである。
【0013】
本発明の他の目的は、最大動作周波数が低い安価なメモリと共に動作することができるこうした回路を実現することである。
【0014】
上記および他の目的を実現するために、本発明は、同時にアクセスできない少なくとも2つの区域を備えるメモリを制御するための回路を提供する。この回路は、読取り命令および/または書込み命令のシリーズを前記の区域ごとに別々に格納するための第1の手段と、第1の区域向けの第1の命令が、第1の区域が他の命令を受け取ることができない周期がその後に続く、所定の命令であることを検出するための第2の手段と、前記の周期中に別の記憶域に命令を供給するための第3の手段とを備える。
【0015】
本発明の一実施形態によれば、各記憶域は、特定のキャッシュを介してアクセスすることができる。
【0016】
本発明の一実施形態によれば、さらにこの回路は、読取りおよび/または書込み要求を受け取り、こうした要求のそれぞれを命令シリーズの形で第1の手段に書き込むための第4の手段を備え、この命令シリーズはそれぞれ所定数のデータを含む。
【0017】
本発明の一実施形態によれば、前記命令シリーズの所定数のデータは、第1の手段に格納された命令シリーズそれぞれの間に存在する優先順位の指示を含む。
【0018】
本発明の一実施形態によれば、前記命令シリーズの所定数のデータは、この命令シリーズがメモリからの読取りを目的としているか、それともメモリへの書込みを目的としているかの指示を含む。
【0019】
本発明の一実施形態によれば、前記命令シリーズの所定数のデータは、前記命令シリーズが対象とするアドレスを含む。
【0020】
本発明の一実施形態によれば、前記命令シリーズの所定数のデータは、前記命令シリーズを形成する命令を含む。
【0021】
本発明の一実施形態によれば、前記命令シリーズの所定数のデータは、前記命令シリーズを実行するのに必要な持続時間も含む。
【0022】
本発明の一実施形態によれば、第1の手段は、メモリの区域ごとに所定数のレジスタを備える。
【0023】
本発明の一実施形態によれば、前記所定数のレジスタは、それぞれ第4および第2の手段による前記所定数のレジスタの他方のレジスタの書込みおよび読取りを管理するための指標レジスタを備える。
【0024】
本発明の上記その他の目的、特徴および利点は、添付図面に関連して、以下の特定の実施形態についての非限定的な説明で詳細に論じる。
【0025】
図3に、本発明による、メモリ4に接続されたメモリ制御回路を概略的に示す。本発明によれば、この制御回路は、メモリ4とデータをやり取りするバスDATに接続されたこの回路のブロック(図示せず)から書込みおよび/または読取り要求を受け取るように接続された認識ブロック12を備える。この制御回路はさらに、ブロック12から供給されるデータを記憶するために設けられた、2個のレジスタ・セット14(A’)、16(B’)を備える。判断ブロック18は、レジスタ・セット14、16の出力端に接続される。ブロック18の出力は、制御バスCOMに接続された状態機械20に供給される。状態機械20は、メモリ4と同じクロック信号CKによって速度が決められる。
【0026】
ブロック12が、記憶域Aまたは記憶域B向けの要求を受け取るとき、その要求をこの後で分かるように、命令およびデータに翻訳する。こうした命令/データは、区域A向けかまたは区域B向けかに従って、それぞれレジスタ・セット14または16に格納される。ブロック12が、2つの回路ブロックから2つの要求を同時に受け取る場合、従来の優先権管理に従って、最初に最も高い優先権を保持するブロックからの要求を処理する。セット14、16に格納された命令は、ブロック18によって分析され、対象とするキャッシュが他の命令を受け取ることができない周期がその後に続く命令かどうかが判定される。そうした命令が、レジスタ・セットのうちの一方に存在する場合、ブロック18は、他方のレジスタ・セットに格納された命令/データを分析して、前記の周期中、他方のレジスタ・セットから他方のキャッシュに命令を供給することが可能かどうかを判定する。状態機械20は、クロック信号を判断ブロック18に供給して、クロック信号CKの新しい周期ごとに、メモリ・キャッシュの一方または他方に供給される命令を受け取る。命令を供給してはいけない場合、状態機械20は命令NOPを生成する。状態機械20は、ブロック18から供給された命令をメモリ4が受け入れる基本コード化命令に翻訳する。
【0027】
図4に、状態機械20によってクロック信号CKの速度で供給される2つの命令シリーズを概略的に示す。前述のように、2つの命令シリーズは、それぞれ記憶域AのページA1内のアドレスA1’にあるワードを書き込むための第1の要求、および記憶域BのページB1内のアドレスB1’にあるワードを書き込むための第2の要求に相当する。前述のように各要求は、ページ事前ロード命令から始まり、次いでページ活動化命令、ワード書込み命令が続く。
【0028】
記憶域A向けの事前ロード命令PRE A0、活動化命令ACT A1、および書込み命令WR A1は、前述のように、3つの周期Tの間隔で、それぞれ時刻t0、時刻t1、および時刻t2に供給される。しかし、本発明によれば、時刻t0から周期Tが1つ経過した後の時刻t0’に、記憶域B向けの事前ロード命令PRE B0がバスCOMに供給される。時刻t0’は、命令PRE A0の後に続く周期の開始時であり、この周期中にはキャッシュBUFAは他の命令を受け取ることはできない。同様に、時刻t1から周期Tが2つ経過した後の時刻t1’に、記憶域B向けの活動化命令ACT B1が、バスCOMに供給される。したがって、命令ACT A1と命令ACT B1の間に命令NOPが1つ挿入されることに留意されたい。このような命令NOPの挿入は、構成により2つの命令ACTを続けて受け取ることができないほとんどのメモリにとって必要である。しかし、2つの命令ACTを続けて受け取ることができるメモリの場合、時刻t1’は、時刻t1から周期Tが1つ経過した後に発生するかもしれない。最後に、時刻t2から周期Tが1つ経過した後の時刻t2’に、記憶域B向けの書込み命令WR B1’が供給される。ワードの書込みB1の前にワードの書込みA1が行われており、すなわち、レジスタ・セット14、16に供給されている書込み要求の優先順位が尊重されていることに留意されたい。
【0029】
図示した例では、本発明により、クロック信号CKの8周期内に、2つの書込み要求をメモリ4に供給できるようになる。この数を、従来技術によって同じメモリに同じ要求を供給するのに必要な14周期のクロック信号と比較すべきである。この速度利得は、示されていないが、そのメモリに供給することができる他方の書込み/読取り要求にも一般化することができる。本発明により、従来技術によるクロック信号よりも高速の信号を使用せずに、データ転送速度を高速にすることができる。したがって、本発明によるメモリ制御回路を用いて、従来技術による周波数よりも低い周波数のクロック信号を使用しながら、従来技術による制御回路を用いたものよりもデータ転送速度を高速化することが可能である。さらに、本発明による制御回路では、低い周波数で動作するメモリを用いてデータ転送速度を高速にすることができるので、本発明により安価のメモリを使用できるようになる。
【0030】
本発明はまた、バースト書込みおよび読取り動作を実施するメモリ制御回路に適合される。メモリが、第1のキャッシュ上で、書込みまたは読取り動作のバースト・シーケンスを実施するとき、前記キャッシュは、他の命令を受け取ることはできず、制御バスCOMは、自由に第2のキャッシュに命令を供給することができる。しかし、データ・バスDATは、書込みまたは読取り動作によって使用されている。したがって、ブロック18は、キャッシュ内でバースト書込み/読取り動作中には、他方のキャッシュに命令を供給することのみが行われ、データ・バスDATを使用するようにはならない(前述の事前ロードおよび活動化動作と同様)。
【0031】
図5に、レジスタ・セット14を概略的に示す。レジスタ・セット16も同一の構造である。レジスタ・セット14は、タイプ・レジスタ(TYP)、順位レジスタ(ORD)、アドレス・レジスタ(ADR)、制御レジスタ(CMD)、サイズ・レジスタ(SIZ)、バイト・イネーブル・レジスタ(BE)、書込み指標レジスタ(WRI)、および読取り指標レジスタ(RDI)を備える。書込み指標レジスタは、ブロック12によって更新されたアドレスを含む。読取り指標レジスタは、ブロック18によって更新されたアドレスを含む。タイプ・レジスタ、順位レジスタ、アドレス・レジスタ、制御レジスタ、サイズ・レジスタ、およびバイト・イネーブル・レジスタは、FIFOタイプのものであり、各レジスタは、アドレスによってそれぞれ位置を見付けることができる、等しい数のデータを含む。FIFOレジスタは、書込み指標レジスタに格納されたアドレスにブロック12によって書き込み、読取り指標レジスタに格納されたアドレスからブロック18によって読み取られるように接続される。書込み指標レジスタと読取り指標レジスタに格納されたアドレスを比較することにより、FIFOレジスタの充填速度を知ることができるようになる。FIFOレジスタのアドレスがすべて使用されている場合、これ以上要求に関するデータをレジスタ・セットに格納することはできず、エラー・メッセージが生成される。
【0032】
ブロック12が受け取る各要求により、データがFIFOレジスタに書き込まれ、書込み指標レジスタのアドレスが増分される。
【0033】
タイプ・レジスタは、要求が読取り要求か、それとも書込み要求かを示すデータを受け取る。
【0034】
順位レジスタは、要求が制御回路に供給された時刻を示す絶対時間を受け取る。この示された時間によって、回路18はどの命令を先に送るか、選択できるようになる。
【0035】
アドレス・レジスタは、要求が実行されなければならないページおよびワードのアドレスを受け取る。
【0036】
制御レジスタは、要求を実行するのに必要な命令を含む。例えば、新しいページに書き込む要求の場合には、命令PRE、命令ACT、命令WRであり、すでに活動化されたページに書き込む要求の場合には命令WRである。要求を実行するのに必要な命令は特に、その要求が対象とするページのアドレスに従って、そのアドレスを先行する要求が対象としたページのアドレスと比較して決定される。これを達成するために、ブロック12は、図示されていない接続によって制御レジスタからの読取りを行うことができる。
【0037】
サイズ・レジスタは、要求を実行するのに必要な周期数を受け取る。
【0038】
バイト・イネーブル・レジスタは、各要求に関与するデータ・バイト数を受け取る(例えば、あるワードのバイトをすべて書き込み、読み取る必要のない場合)。
【0039】
ブロック12の全体的な動作を確実に高速にするためには、前記ブロックは、要求に関するデータが特に処理するのが簡単で時間を要しないとき、次の要求を処理し始める。FIFOレジスタ・セットに格納できるデータ数により、ブロック18が事前に分析できる要求数が決定する。
【0040】
本発明には当然、前述の説明を読めば、様々な変更形態、修正形態、および改良形態が当業者には容易に思い付くであろう。特に、書込み要求を特定の方式で実行する制御回路を説明してきたが、当業者なら、同じ要求を別の形で実行する制御回路に本発明を容易に適合させるであろう。例えば、書込み要求は、書込み命令および事前ロード命令がその後に続く活動化命令に対応するものでもよい。
【0041】
さらに、本発明は、2つの記憶域を備えたメモリに関して説明してきたが、当業者なら、より多数の記憶域を備えたメモリに本発明を容易に適合させるであろう。次いで本発明による制御回路は、そのメモリが有するメモリ区域と同じ数のレジスタ・セットを備えることができる。
【図面の簡単な説明】
【図1】先に説明した、従来のDRAM制御回路を示す概略図である。
【図2】先に説明した、図1の制御回路の動作を示す図である。
【図3】本発明による制御回路を示す概略図である。
【図4】図3の制御回路の動作を示す概略図である。
【図5】本発明による制御回路のレジスタ・セットの構成を示す概略図である。
Claims (10)
- メモリ(4)を制御するための回路であって、同時にアクセスできない少なくとも2つの区域(A、B)を備え、
前記区域ごとに別々に読取り命令および/または書込み命令のシリーズを格納する第1の手段(14、16)と、
第1の区域向けの第1の命令が、第1の区域が他の命令を受け取ることができない周期がその後に続く所定の命令であることを検出するための第2の手段(18)と、
前記の周期中に別の記憶域に命令を供給するための第3の手段(20)とを備えることを特徴とする回路。 - メモリの前記記憶域のそれぞれが、特定のキャッシュ(BUFA、BUFB)を介してアクセスすることができる、請求項1に記載のメモリを制御するための回路。
- 読取りおよび/または書込み要求を受け取り、そうした要求のそれぞれを命令シリーズの形で第1の手段に書き込むための第4の手段(12)をさらに備え、この命令シリーズはそれぞれ所定数のデータを含む、請求項1または2に記載の回路。
- 前記命令シリーズの所定数のデータが、前記第1の手段に格納された命令シリーズそれぞれの間に存在する優先順位の指示(ORD)を特に含む、請求項3に記載の回路。
- 前記命令シリーズの所定数のデータが、前記命令シリーズがメモリからの読取りを目的としているか、それともメモリへの書込みを目的としているかの指示(TYP)を含む、請求項3に記載の回路。
- 前記命令シリーズの所定数のデータが、前記命令シリーズが対象とするアドレス(ADR)を含む、請求項3に記載の回路。
- 前記命令シリーズの所定数のデータが、前記命令シリーズを形成する命令(COM)を含む、請求項3に記載の回路。
- 前記命令シリーズの所定数のデータが、前記命令シリーズを実行するのに必要な持続時間(SIZ)を含む、請求項3に記載の回路。
- 第1の手段が、前記メモリの区域ごとに所定数のレジスタを備える、請求項4から8のいずれかに記載の回路。
- 前記所定数のレジスタが、それぞれ第4および第2の手段による前記所定数のレジスタの他方のレジスタの書込みおよび読取りを管理するための指標レジスタ(WRI、RDI)を備える、請求項9に記載の回路。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0010943A FR2813427B1 (fr) | 2000-08-25 | 2000-08-25 | Circuit de commande d'une memoire dram |
PCT/FR2001/002669 WO2002017095A1 (fr) | 2000-08-25 | 2001-08-24 | Circuit de commande d'une memoire dram |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004507817A true JP2004507817A (ja) | 2004-03-11 |
Family
ID=8853733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002521719A Withdrawn JP2004507817A (ja) | 2000-08-25 | 2001-08-24 | Dram制御回路 |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP1311962A1 (ja) |
JP (1) | JP2004507817A (ja) |
FR (1) | FR2813427B1 (ja) |
WO (1) | WO2002017095A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011243274A (ja) * | 2010-04-30 | 2011-12-01 | Micron Technology Inc | メモリデバイスに対するインデックスレジスタアクセス |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE60238987D1 (de) | 2001-03-15 | 2011-03-03 | Neogenix Oncology Inc | Behandlung von bauchspeicheldrüsenkrebs mit einem monoklonalen antikörper |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5822772A (en) * | 1996-03-22 | 1998-10-13 | Industrial Technology Research Institute | Memory controller and method of memory access sequence recordering that eliminates page miss and row miss penalties |
US6385708B1 (en) * | 1998-11-16 | 2002-05-07 | Infineon Technologies Ag | Using a timing-look-up-table and page timers to determine the time between two consecutive memory accesses |
-
2000
- 2000-08-25 FR FR0010943A patent/FR2813427B1/fr not_active Expired - Fee Related
-
2001
- 2001-08-24 WO PCT/FR2001/002669 patent/WO2002017095A1/fr active Application Filing
- 2001-08-24 EP EP01965353A patent/EP1311962A1/fr not_active Withdrawn
- 2001-08-24 JP JP2002521719A patent/JP2004507817A/ja not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011243274A (ja) * | 2010-04-30 | 2011-12-01 | Micron Technology Inc | メモリデバイスに対するインデックスレジスタアクセス |
Also Published As
Publication number | Publication date |
---|---|
EP1311962A1 (fr) | 2003-05-21 |
FR2813427A1 (fr) | 2002-03-01 |
FR2813427B1 (fr) | 2002-11-29 |
WO2002017095A1 (fr) | 2002-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7149824B2 (en) | Dynamically setting burst length of memory device by applying signal to at least one external pin during a read or write transaction | |
CN1333353C (zh) | 支持不同脉冲时间存取而无须变更模式寄存器中脉冲时间设定的dram | |
US8369168B2 (en) | Devices and system providing reduced quantity of interconnections | |
US20110289269A1 (en) | Memory system and method having point-to-point link | |
JP2007012270A (ja) | ダイナミック・ランダム・アクセス・メモリ・システム | |
JP4199658B2 (ja) | 読出及び書込動作でバースト順序が異なるアドレッシングを行うメモリデバイス | |
JPH04230544A (ja) | ダイナミックメモリシステムのタイミングを動的に設定するデータ処理装置 | |
US6091667A (en) | Semiconductor memory device and a data reading method and a data writing method therefor | |
US6028805A (en) | Volatile memory and embedded dynamic random access memory | |
US6725344B2 (en) | Sram with tag and data arrays for private external microprocessor bus | |
US5841731A (en) | Semiconductor device having externally settable operation mode | |
US7395399B2 (en) | Control circuit to enable high data rate access to a DRAM with a plurality of areas | |
KR100298955B1 (ko) | 데이타처리시스템 | |
JP2004507817A (ja) | Dram制御回路 | |
JP4220351B2 (ja) | データ読み取り動作及び書き込み動作を同時に実行可能な集積回路及び方法 | |
US6356976B1 (en) | LSI system capable of reading and writing at high speed | |
US20040210730A1 (en) | Dram control circuit | |
US6751130B2 (en) | Integrated memory device, method of operating an integrated memory, and memory system having a plurality of integrated memories | |
US5752267A (en) | Data processing system for accessing an external device during a burst mode of operation and method therefor | |
US5946703A (en) | Method for reading data in data reading and writing system | |
JPH05210572A (ja) | メモリ制御装置 | |
JP3563340B2 (ja) | メモリコントローラ | |
JP4772975B2 (ja) | 半導体記憶装置 | |
JPH10105457A (ja) | メモリ制御システムおよびメモリ制御回路 | |
JPH10301839A (ja) | メモリ制御方式および半導体装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20081104 |