JP2010092261A - メモリモジュール、および、メモリ用補助モジュール - Google Patents

メモリモジュール、および、メモリ用補助モジュール Download PDF

Info

Publication number
JP2010092261A
JP2010092261A JP2008261521A JP2008261521A JP2010092261A JP 2010092261 A JP2010092261 A JP 2010092261A JP 2008261521 A JP2008261521 A JP 2008261521A JP 2008261521 A JP2008261521 A JP 2008261521A JP 2010092261 A JP2010092261 A JP 2010092261A
Authority
JP
Japan
Prior art keywords
memory
operation mode
address
bits
memory controller
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
Application number
JP2008261521A
Other languages
English (en)
Other versions
JP5481823B2 (ja
Inventor
Ko Yuasa
香 湯浅
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.)
Buffalo Inc
Original Assignee
Buffalo Inc
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 Buffalo Inc filed Critical Buffalo Inc
Priority to JP2008261521A priority Critical patent/JP5481823B2/ja
Priority to CN2009101773932A priority patent/CN101719380B/zh
Priority to US12/572,886 priority patent/US8103818B2/en
Publication of JP2010092261A publication Critical patent/JP2010092261A/ja
Application granted granted Critical
Publication of JP5481823B2 publication Critical patent/JP5481823B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0615Address space extension
    • G06F12/0623Address space extension for memory modules

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Dram (AREA)
  • Memory System (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

【課題】メモリモジュールにおいて、メモリコントローラから出力されるバンクアドレス、ロウアドレス、カラムアドレスのビット数が、それぞれ、アクセス対象となるメモリセルを特定するためのバンクアドレス、ロウアドレス、カラムアドレスのビット数と整合していない場合でも、メモリモジュールのすべてのメモリセルにアクセス可能にするとともに、メモリモジュールを正常に動作させる。
【解決手段】メモリモジュール100において、アドレス生成回路120は、メモリコントローラ12から出力されたロウアドレスの最上位ビットを用いて、アクセス対象となるメモリセルを特定するために不足するバンクアドレスの最上位ビットB2を生成し、これをSDRAM110に出力する。動作モード検出部130は、メモリコントローラ12の動作モードを検出する。スイッチ制御部140は、検出された動作モードに基づいて、スイッチ128を切り換える。
【選択図】図2

Description

本発明は、メモリモジュール、および、メモリ用補助モジュールに関するものである。
従来、複数の半導体メモリチップを基板に装着して配線し、コンピュータに接続するための接続端子を設けたメモリモジュールが普及している。このメモリモジュールに備えられるメモリには、SDRAM(Synchronous Dynamic Random Access Memory)がある。そして、SDRAMでは、内部が複数のバンクに分割されており、各バンクは、それぞれ独立して動作可能となっている。このSDRAMにおいて、アクセス対象となるメモリセルは、コンピュータが備えるメモリコントローラから出力されたバンクアドレスと、ロウアドレスと、カラムアドレスとによって特定される。なお、バンクアドレスは、バンクアドレス用の信号線を用いてSDRAMに入力され、ロウアドレス、および、カラムアドレスは、共通の信号線を用いてSDRAMに入力される。また、ロウアドレス、および、カラムアドレスは、ロウアドレス、カラムアドレスの順に、2回に分けてSDRAMに入力される。
ところで、メモリモジュールにおけるメモリの大容量化に伴い、メモリセルの数が増加するので、アクセス対象となるメモリセルを特定するためのバンクアドレスのビット数や、ロウアドレスのビット数や、カラムアドレスのビット数が変化する。例えば、バンクの数が2倍になれば、バンクアドレスのビット数が1ビット増加する。このため、大容量のメモリを備えるメモリモジュールを、このメモリモジュールに対応していないメモリコントローラを備えるコンピュータに接続した場合、すなわち、メモリコントローラが出力する各アドレスのビット数と、アクセス対象となるメモリセルを特定するための各アドレスのビット数とが整合していない場合には、コンピュータ(メモリコントローラ)は、メモリモジュールの一部のメモリセルにしかアクセスできないという不具合があった。
そこで、メモリモジュールにおいて、メモリコントローラが出力する各アドレスのビット数が、それぞれ、アクセス対象となるメモリセルを特定するための各アドレスのビット数と整合していない場合であっても、メモリモジュールのすべてのメモリセルにアクセス可能とする技術が提案されている(例えば、下記特許文献1,2参照)。
特開2005−62914号公報 特開2004−94785号公報
しかし、上記特許文献に記載された技術によっても、メモリモジュールを正常に動作させることができない場合があった。
本発明は、上述の課題を解決するためになされたものであり、メモリモジュールにおいて、メモリコントローラから出力されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数とが、それぞれ、アクセス対象となるメモリセルを特定するためのバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数と整合していない場合でも、メモリモジュールのすべてのメモリセルにアクセス可能にするとともに、メモリモジュールを正常に動作させることを目的とする。
本発明は、上述の課題の少なくとも一部を解決するために以下の形態又は適用例として実現することが可能である。
[適用例1]メモリモジュールであって、マトリクス状に配列された複数のメモリセルを備えるバンクを複数有し、メモリコントローラから入力された所定のビット数のバンクアドレスと、所定のビット数のロウアドレスと、所定のビット数のカラムアドレスとに基づいて、アクセス対象となるメモリセルが特定されるメモリと、前記メモリコントローラから出力されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和が、前記アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和と等しく、かつ、前記メモリコントローラから出力されるロウアドレスのビット数が、前記アクセス対象となるメモリセルの特定に利用されるロウアドレスのビット数よりも1ビット多く、かつ、前記メモリコントローラから出力されるバンクアドレスのビット数が、前記アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数よりも1ビット少ないときに、前記メモリコントローラから出力されたロウアドレスの最上位ビットを用いて、前記アクセス対象となるメモリセルの特定に利用されるバンクアドレスの最上位ビットを生成して、前記メモリに出力することが可能なアドレス生成回路と、前記メモリコントローラから前記メモリへのアクセスの動作モードが、第1の動作モードであるか、第2の動作モードであるかを検出する動作モード検出部と、前記動作モード検出部によって検出された動作モードに基づいて、前記アドレス生成回路を制御する制御部と、を備えるメモリモジュール。
適用例1のメモリモジュールでは、メモリコントローラから出力されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和が、アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和と等しく、かつ、メモリコントローラから出力されるロウアドレスのビット数が、アクセス対象となるメモリセルの特定に利用されるロウアドレスのビット数よりも1ビット多く、かつ、メモリコントローラから出力されるバンクアドレスのビット数が、アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数よりも1ビット少ないときに、アドレス生成回路によって、アクセス対象となるメモリセルを特定するために不足するバンクアドレスの最上位ビットを生成し、この生成されたバンクアドレスの最上位ビットをメモリに出力することができる。したがって、メモリコントローラから出力される各アドレスのビット数が、それぞれ、アクセス対象となるメモリセルの特定に利用される各アドレスのビット数と整合していない場合であっても、上記条件下で、メモリコントローラからメモリモジュールのすべてのメモリセルにアクセス可能にするとともに、メモリモジュールを正常に動作させることができる。
なお、上記アドレス生成回路による上記バンクアドレスの最上位ビットの生成、出力には、所定時間を要するため、メモリコントローラからメモリへのアクセスの動作モードが比較的高速アクセス可能な動作モードである場合には、上記バンクアドレスの最上位ビットの生成、出力が間に合わずに、メモリコントローラからメモリへのアクセスが正常に行われない場合が生じる。このため、メモリコントローラからメモリへのアクセスの動作モードが比較的高速アクセス可能な動作モードである場合には、アドレス生成回路による上記バンクアドレスの最上位ビットの生成、出力を行わないように、アドレス生成回路を制御する、すなわち、アドレス生成回路の制御モードを切り換えることが好ましい。ここで、アドレス生成回路を制御するとは、上記生成を行うか否か、あるいは、上記出力を行うか否かを切り換えることを意味している。
適用例1のメモリモジュールは、上記動作モード検出部と、制御部とを備えるので、ユーザ自らがアドレス生成回路の制御モードの切り換えの要否を判断することなく、メモリコントローラからメモリへのアクセスの動作モードが第1の動作モードであるか第2の動作モードであるかに応じて、上記切り換えを行うことができる。
[適用例2]適用例1記載のメモリモジュールであって、前記第1の動作モードは、前記メモリコントローラから発行されるコマンドが前記メモリコントローラから出力されるクロック信号の1周期ごとに変更され得る動作モードであり、前記第2の動作モードは、前記メモリコントローラから発行されるコマンドが前記メモリコントローラから出力されるクロック信号の2周期ごとに変更され得る動作モードであり、前記制御部は、前記動作モード検出部によって検出された動作モードが、前記第1の動作モードであるときに、前記バンクアドレスの最上位ビットの前記メモリへの出力を禁止するように、前記アドレス生成回路を制御し、前記動作モード検出部によって検出された動作モードが、前記第2の動作モードであるときに、前記バンクアドレスの最上位ビットを前記メモリに出力するように、前記アドレス生成回路を制御する、メモリモジュール。
[適用例3]適用例1または2記載のメモリモジュールであって、前記アドレス生成回路は、前記メモリコントローラから出力されたロウアドレスの最上位ビットを一時的に記憶するレジスタと、前記メモリコントローラから出力されたロウアドレスの最上位ビット、または、前記レジスタに記憶された前記ロウアドレスの最上位ビットを、前記アクセス対象となるメモリセルの特定に利用されるバンクアドレスの最上位ビットとして、前記メモリに出力する出力選択部と、前記メモリコントローラから出力されたロウ・アドレス・ストローブ信号と、カラム・アドレス・ストローブ信号と、ライト・イネーブル信号とに基づいて、前記メモリに対するアクセス方法を指定するコマンドを解析し、該解析されたコマンドを、前記レジスタ、および、前記出力選択部に出力するコマンド解析部と、を備え、前記レジスタは、前記コマンド解析部から入力されたコマンドに基づいて、前記ロウアドレスの最上位ビットの記憶、および、リセットを行い、前記出力選択部は、前記コマンド解析部から入力されたコマンドに基づいて、前記メモリコントローラから出力されたロウアドレスの最上位ビット、または、前記レジスタに記憶された前記ロウアドレスの最上位ビットを出力する、メモリモジュール。
[適用例4]メモリモジュールであって、マトリクス状に配列された複数のメモリセルを備えるバンクを複数有し、メモリコントローラから入力された所定のビット数のバンクアドレスと、所定のビット数のロウアドレスと、所定のビット数のカラムアドレスとに基づいて、アクセス対象となるメモリセルが特定されるメモリと、前記メモリコントローラから出力されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和が、前記アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和と等しく、かつ、前記メモリコントローラから出力されるロウアドレスのビット数が、前記アクセス対象となるメモリセルの特定に利用されるロウアドレスのビット数よりも1ビット多く、かつ、前記メモリコントローラから出力されるカラムアドレスのビット数が、前記アクセス対象となるメモリセルの特定に利用されるカラムアドレスのビット数よりも1ビット少ないときに、前記メモリコントローラから出力されたロウアドレスの最上位ビットを用いて、前記アクセス対象となるメモリセルの特定に利用されるカラムアドレスの最上位ビットを生成するアドレス生成回路と、前記メモリコントローラから前記メモリへのアクセスの動作モードが、第1の動作モードであるか、第2の動作モードであるかを検出する動作モード検出部と、前記動作モード検出部によって検出された動作モードに基づいて、前記アドレス生成回路を制御する制御部と、を備えるメモリモジュール。
適用例4のメモリモジュールでは、メモリコントローラから出力されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和が、アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和と等しく、かつ、メモリコントローラから出力されるロウアドレスのビット数が、アクセス対象となるメモリセルの特定に利用されるロウアドレスのビット数よりも1ビット多く、かつ、メモリコントローラから出力されるカラムアドレスのビット数が、アクセス対象となるメモリセルの特定に利用されるカラムアドレスのビット数よりも1ビット少ないときに、アドレス生成回路によって、アクセス対象となるメモリセルを特定するために不足するカラムアドレスの最上位ビットを生成し、この生成されたカラムアドレスをメモリに出力することができる。したがって、メモリコントローラから出力される各アドレスのビット数が、それぞれ、アクセス対象となるメモリセルの特定に利用される各アドレスのビット数と整合していない場合であっても、上記条件下で、メモリコントローラからメモリモジュールのすべてのメモリセルにアクセス可能にするとともに、メモリモジュールを正常に動作させることができる。
なお、上記アドレス生成回路による上記カラムアドレスの最上位ビットの生成、出力には、所定時間を要するため、メモリコントローラからメモリへのアクセスの動作モードが比較的高速アクセス可能な動作モードである場合には、上記カラムアドレスの最上位ビットの生成、出力が間に合わずに、メモリコントローラからメモリへのアクセスが正常に行われない場合が生じる。このため、メモリコントローラからメモリへのアクセスの動作モードが比較的高速アクセス可能な動作モードである場合には、アドレス生成回路による上記カラムアドレスの最上位ビットの生成、出力を行わないように、アドレス生成回路を制御する、すなわち、アドレス生成回路の制御モードを切り換えることが好ましい。ここで、アドレス生成回路を制御するとは、上記生成を行うか否か、あるいは、上記出力を行うか否かを切り換えることを意味している。
適用例4のメモリモジュールは、上記動作モード検出部と、制御部とを備えるので、ユーザ自らがアドレス生成回路の制御モードの切り換えの要否を判断することなく、メモリコントローラからメモリへのアクセスの動作モードが第1の動作モードであるか第2の動作モードであるかに応じて、上記切り換えを行うことができる。
[適用例5]適用例4記載のメモリモジュールであって、前記第1の動作モードは、前記メモリコントローラから発行されるコマンドが前記メモリコントローラから出力されるクロック信号の1周期ごとに変更され得る動作モードであり、前記第2の動作モードは、前記メモリコントローラから発行されるコマンドが前記メモリコントローラから出力されるクロック信号の2周期ごとに変更され得る動作モードであり、前記制御部は、前記動作モード検出部によって検出された動作モードが、前記第1の動作モードであるときに、前記カラムアドレスの最上位ビットの前記メモリへの出力を禁止するように、前記アドレス生成回路を制御し、前記動作モード検出部によって検出された動作モードが、前記第2の動作モードであるときに、前記カラムアドレスの最上位ビットを前記メモリに出力するように、前記アドレス生成回路を制御する、メモリモジュール。
[適用例6]適用例4または5記載のメモリモジュールであって、前記アドレス生成回路は、前記メモリコントローラから出力されたロウアドレスの最上位ビットを一時的に記憶するレジスタと、前記メモリコントローラから出力されたロウアドレスの最上位ビット、または、前記レジスタに記憶された前記ロウアドレスの最上位ビットを、前記アクセス対象となるメモリセルの特定に利用されるカラムアドレスの最上位ビットとして、前記メモリに出力する出力選択部と、前記メモリコントローラから出力されたロウ・アドレス・ストローブ信号と、カラム・アドレス・ストローブ信号と、ライト・イネーブル信号とに基づいて、前記メモリに対するアクセス方法を指定するコマンドを解析し、該解析されたコマンドを、前記レジスタ、および、前記出力選択部に出力するコマンド解析部と、を備え、前記レジスタは、前記コマンド解析部から入力されたコマンドに基づいて、前記ロウアドレスの最上位ビットの記憶、および、リセットを行い、前記出力選択部は、前記コマンド解析部から入力されたコマンドに基づいて、前記メモリコントローラから出力されたロウアドレスの最上位ビット、または、前記レジスタに記憶された前記ロウアドレスの最上位ビットを出力する、メモリモジュール。
[適用例7]適用例1ないし6のいずれかに記載のメモリモジュールであって、さらに、前記動作モード検出部によって検出された動作モードと対応付けられた所定のパラメータ値を記憶する不揮発性メモリを備えており、前記制御部は、前記不揮発性メモリに記憶されたパラメータ値を読み出し、該パラメータ値に基づいて、前記アドレス生成回路を制御する、メモリモジュール。
適用例7のメモリモジュールでは、不揮発性メモリ(例えば、EEPROM(Electrically Erasable and Programmable Read Only Memory)等)に記憶された上記パラメータ値に基づいて、上記アドレス生成回路の制御モードを切り換えることができる。なお、上記パラメータ値としては、例えば、上記アドレス制御回路の制御モードを用いるようにしてもよいし、上記動作モードを用いるようにしてもよい。
[適用例8]適用例7記載のメモリモジュールであって、前記制御部は、前記メモリモジュールがコンピュータに装着された後であって、該コンピュータが最初に起動されたときに、前記パラメータ値を、前記不揮発性メモリに記憶し、前記コンピュータが2回目以降に起動されたときに、前記パラメータ値を読み出す、メモリモジュール。
メモリモジュールがコンピュータに装着された後、すなわち、メモリコントローラに接続された後には、コンピュータにおけるメモリコントローラ、メモリモジュールの構成が大きく変更されない限り、一般に、メモリコントローラからメモリへのアクセスの動作モードは固定される。
適用例8のメモリモジュールでは、メモリモジュールがコンピュータに装着された後、1度、上記動作モードの検出を行えば、その後、動作モードの検出を行わなくても、メモリコントローラからメモリへのアクセスを正常に行うことができる。なお、上記不揮発性メモリには、メモリモジュールがコンピュータに装着された後であって、コンピュータが最初に起動されたときに用いられるデフォルトのパラメータ値が予め記憶されており、メモリモジュールがコンピュータに装着された後であって、コンピュータが最初に起動されたときには、デフォルトのパラメータ値が用いられる。
[適用例9]適用例1ないし8のいずれかに記載のメモリモジュールであって、前記動作モード検出部は、前記メモリコントローラから出力されたクロック信号と、チップセレクト信号と、ロウ・アドレス・ストローブ信号と、カラム・ドレス・ストローブ信号と、ライト・イネーブル信号とに基づいて、前記動作モードが第1の動作モードであるか第2の動作モードであるかを検出する、メモリモジュール。
[適用例10]適用例9記載のメモリモジュールであって、前記動作モード検出部は、前記クロック信号の立ち上がりエッジごとに、前記チップセレクト信号と、前記ロウ・アドレス・ストローブ信号と、前記カラム・アドレス・ストローブ信号と、前記ライト・イネーブル信号とを取得するとともに、該各信号を保持し、前記取得したチップセレクト信号が“L”であるときに取得したロウ・アドレス・ストローブ信号と、カラム・アドレス・ストローブ信号と、ライト・イネーブル信号とのうちの少なくとも1つが、前回取得したロウ・アドレス・ストローブ信号と、カラム・アドレス・ストローブ信号と、ライト・イネーブル信号と異なる場合に、前記動作モードが前記第1の動作モードであるものと検出し、前記取得したチップセレクト信号が“L”であるときに取得したロウ・アドレス・ストローブ信号と、カラム・アドレス・ストローブ信号と、ライト・イネーブル信号とが、それぞれ、前回取得したロウ・アドレス・ストローブ信号と、カラム・アドレス・ストローブ信号と、ライト・イネーブル信号と等しく、かつ、前回取得したロウ・アドレス・ストローブ信号と、カラム・アドレス・ストローブ信号と、ライト・イネーブル信号とのうちの少なくとも1つが、前々回取得したロウ・アドレス・ストローブ信号と、カラム・アドレス・ストローブ信号と、ライト・イネーブル信号と異なる場合に、前記動作モードが前記第2の動作モードであるものと検出する、メモリモジュール。
適用例10のメモリモジュールによって、クロック信号と、チップセレクト信号と、ロウ・アドレス・ストローブ信号と、カラム・ドレス・ストローブ信号と、ライト・イネーブル信号とを用いて、比較的容易に、上記動作モードの検出を行うことができる。
[適用例11]適用例10記載のメモリモジュールであって、前記動作モード検出部は、前記動作モードの検出を複数回行い、前記第1の動作モードの検出回数、または、前記第2の動作モードの検出回数が、前記複数回の過半数よりも多い所定回数以上であるときに、該所定回数以上検出された動作モードを前記動作モードとして確定する、メモリモジュール。
適用例11のメモリモジュールによって、上記動作モードの確定を、精度よく行うことができる。
[適用例12]マトリクス状に配列された複数のメモリセルを備えるバンクを複数有し、メモリコントローラから入力された所定のビット数のバンクアドレスと、所定のビット数のロウアドレスと、所定のビット数のカラムアドレスとに基づいて、アクセス対象となるメモリセルが特定されるメモリを備えるメモリモジュールと、前記メモリコントローラとに接続され、前記メモリコントローラと前記メモリモジュールとの間における信号およびデータのやり取りを中継するメモリ用補助モジュールであって、前記メモリ用補助モジュールは、前記メモリコントローラから出力されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和が、前記アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和と等しく、かつ、前記メモリコントローラから出力されるロウアドレスのビット数が、前記アクセス対象となるメモリセルの特定に利用されるロウアドレスのビット数よりも1ビット多く、かつ、前記メモリコントローラから出力されるバンクアドレスのビット数が、前記アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数よりも1ビット少ないときに利用されるメモリ用補助モジュールであり、前記メモリコントローラから出力されたロウアドレスの最上位ビットを用いて、前記アクセス対象となるメモリセルの特定に利用されるバンクアドレスの最上位ビットを生成して、前記メモリモジュールに出力することが可能なアドレス生成回路と、前記メモリコントローラから前記メモリへのアクセスの動作モードが、第1の動作モードであるか、第2の動作モードであるかを検出する動作モード検出部と、前記動作モード検出部によって検出された動作モードに基づいて、前記アドレス生成回路を制御する制御部と、を備えるメモリ用補助モジュール。
適用例12のメモリ用補助モジュールでは、メモリコントローラから出力されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和が、アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和と等しく、かつ、メモリコントローラから出力されるロウアドレスのビット数が、アクセス対象となるメモリセルの特定に利用されるロウアドレスのビット数よりも1ビット多く、かつ、メモリコントローラから出力されるバンクアドレスのビット数が、アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数よりも1ビット少ないときに、アドレス生成回路によって、アクセス対象となるメモリセルを特定するために不足するバンクアドレスの最上位ビットを生成し、この生成されたバンクアドレスの最上位ビットをメモリモジュールに出力することができる。したがって、メモリコントローラから出力される各アドレスのビット数が、それぞれ、アクセス対象となるメモリセルの特定に利用される各アドレスのビット数と整合していない場合であっても、上記条件下で、メモリコントローラからメモリモジュールのすべてのメモリセルにアクセス可能にするとともに、メモリモジュールを正常に動作させることができる。さらに、ユーザ自らがアドレス生成回路の制御モードの切り換えの要否を判断することなく、メモリコントローラからメモリへのアクセスの動作モードが第1の動作モードであるか第2の動作モードであるかに応じて、上記切り換えを行うことができる。なお、適用例12のメモリ用補助モジュールにおいても、前述した適用例1のメモリモジュールと同様に、先に示したに種々の付加的要素を適用することが可能である。
[適用例13]マトリクス状に配列された複数のメモリセルを備えるバンクを複数有し、メモリコントローラから入力された所定のビット数のバンクアドレスと、所定のビット数のロウアドレスと、所定のビット数のカラムアドレスとに基づいて、アクセス対象となるメモリセルが特定されるメモリを備えるメモリモジュールと、前記メモリコントローラとに接続され、前記メモリコントローラと前記メモリモジュールとの間における信号およびデータのやり取りを中継するメモリ用補助モジュールであって、前記メモリ用補助モジュールは、前記メモリコントローラから出力されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和が、前記アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和と等しく、かつ、前記メモリコントローラから出力されるロウアドレスのビット数が、前記アクセス対象となるメモリセルの特定に利用されるロウアドレスのビット数よりも1ビット多く、かつ、前記メモリコントローラから出力されるカラムアドレスのビット数が、前記アクセス対象となるメモリセルの特定に利用されるカラムアドレスのビット数よりも1ビット少ないときに利用されるメモリ用補助モジュールであり、前記メモリコントローラから出力されたロウアドレスの最上位ビットを用いて、前記アクセス対象となるメモリセルの特定に利用されるカラムアドレスの最上位ビットを生成して、前記メモリモジュールに出力することが可能なアドレス生成回路と、前記メモリコントローラから前記メモリへのアクセスの動作モードが、第1の動作モードであるか、第2の動作モードであるかを検出する動作モード検出部と、前記動作モード検出部によって検出された動作モードに基づいて、前記アドレス生成回路を制御する制御部と、を備えるメモリ用補助モジュール。
適用例13のメモリ用補助モジュールでは、メモリコントローラから出力されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和が、アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和と等しく、かつ、メモリコントローラから出力されるロウアドレスのビット数が、アクセス対象となるメモリセルの特定に利用されるロウアドレスのビット数よりも1ビット多く、かつ、メモリコントローラから出力されるカラムアドレスのビット数が、アクセス対象となるメモリセルの特定に利用されるカラムアドレスのビット数よりも1ビット少ないときに、アドレス生成回路によって、アクセス対象となるメモリセルを特定するために不足するカラムアドレスの最上位ビットを生成し、この生成されたカラムアドレスの最上位ビットをメモリモジュールに出力することができる。したがって、メモリコントローラから出力される各アドレスのビット数が、それぞれ、アクセス対象となるメモリセルの特定に利用される各アドレスのビット数と整合していない場合であっても、上記条件下で、メモリコントローラからメモリモジュールのすべてのメモリセルにアクセス可能にするとともに、メモリモジュールを正常に動作させることができる。さらに、ユーザ自らがアドレス生成回路の制御モードの切り換えの要否を判断することなく、メモリコントローラからメモリへのアクセスの動作モードが第1の動作モードであるか第2の動作モードであるかに応じて、上記切り換えを行うことができる。なお、適用例13のメモリ用補助モジュールにおいても、前述した適用例4のメモリモジュールと同様に、先に示した種々の付加的要素を適用することが可能である。
本発明は、上述した種々の特徴の一部を、適宜、組み合わせて構成することができる。例えば、適用例1のメモリモジュールにおけるアドレス生成回路と、適用例4のメモリモジュールにおけるアドレス生成回路との双方を備えるメモリモジュールを構成し、適宜、両者を使い分けるようにしてもよい。
以下、本発明の実施の形態について、実施例に基づき説明する。
A.第1実施例:
図1、および、図2は、本発明の第1実施例としてのメモリモジュール100の概略構成を示す説明図である。図1に、メモリモジュール100がメモリコントローラ10に接続されているときの様子を示した。また、図2に、メモリモジュール100がメモリコントローラ12に接続されているときの様子を示した。これらの差異については後述する。
このメモリモジュール100は、図示するように、SDRAM110と、アドレス生成回路120と、動作モード検出部130と、スイッチ制御部140と、EEPROM150と、を備えている。まず、メモリモジュール100のうちの、SDRAM110と、アドレス生成回路120と、これらの典型的な動作について説明し、後から、動作モード検出部130と、スイッチ制御部140と、EEPROM150と、これらの動作について説明する。
本実施例では、SDRAM110として、1ギガビット(64メガワード×16ビット)のDDR2(Double Data Rate 2)SDRAMを用いるものとした。このSDRAM110は、後述するように、内部が8つのバンクに分割されており、各バンクは、それぞれ独立して動作可能である。そして、SDRAM110には、3ビットのバンクアドレス(BA0〜BA2)と、13ビットのロウアドレス(A0〜A12)と、10ビットのカラムアドレス(A0〜A9)とが入力され、これらのアドレスに基づいて、アクセス対象となるメモリセルが特定される。ロウアドレス、および、カラムアドレスは、共通の信号線を用いて、ロウアドレス、カラムアドレスの順に、2回に分けてSDRAM100に入力されるので、ロウアドレス、および、カラムアドレスの符号の頭には、共通する「A」を付すものとした。
なお、SDRAM110には、上記各アドレスの他に、チップセレクト信号(CS)や、ロウ・アドレス・ストローブ信号(RAS)や、カラム・アドレス・ストローブ信号(CAS)や、ライト・イネーブル信号(WE)や、図示しないクロック信号や、クロック・イネーブル信号等のSDRAM110の動作に用いられる各種信号が入力される。また、メモリモジュール100は、メモリコントローラとSDRAM110との間でのデータの入出力を行うための図示しないデータ入出力ピン、および、配線も備えている。
図1、および、図2に示すように、本実施例のメモリモジュール100は、メモリコントローラ10、または、メモリコントローラ12に接続され得る。
メモリコントローラ10は、1ギガビット(64メガワード×16ビット)のDDR2SDRAM(SDRAM110)に対応しており、図1に示したように、3ビットのバンクアドレス(BA0〜BA2)や、13ビットのロウアドレス(A0〜A12)や、10ビットのカラムアドレス(A0〜A9)等を出力する。つまり、メモリコントローラ10から出力される各アドレスのビット数と、アクセス対象となるメモリセルの特定に利用される各アドレスのビット数とは整合している。
一方、メモリコントローラ12は、内部が4つのバンクに分割された、512メガビット(64メガワード×8ビット)のDDR2SDRAMに対応しており、図2に示したように、2ビットのバンクアドレス(BA0,BA1)や、14ビットのロウアドレス(A0〜A13)や、10ビットのカラムアドレス(A0〜A9)等を出力する。つまり、メモリコントローラ12から出力される各アドレスのビット数と、アクセス対象となるメモリセルの特定に利用される各アドレスのビット数とは整合しておらず、メモリコントローラ12から出力される各アドレスのビット数の総和は、SDRAM100においてアクセス対象となるメモリセルの特定に利用される各アドレスのビット数の総和と等しく、かつ、メモリコントローラ12から出力されるロウアドレスのビット数は、アクセス対象となるメモリセルの特定に利用されるロウアドレスのビット数よりも1ビット多く、かつ、メモリコントローラ12から出力されるバンクアドレスのビット数は、アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数よりも1ビット少ない。メモリモジュール100が備えるアドレス生成回路120は、メモリモジュール100がメモリコントローラ12に接続されたときに、メモリコントローラ12から出力される各アドレスとSDRAM110に入力される各アドレスとのビット数の不整合を解消するためのものである。
アドレス生成回路120は、レジスタ122と、出力選択部124と、コマンド解析部126と、スイッチ128とを備えている。
コマンド解析部126は、メモリコントローラ12から出力されたロウ・アドレス・ストローブ信号(RAS)と、カラム・アドレス・ストローブ信号(CAS)と、ライト・イネーブル信号(WE)とに基づいて、SDRAM110に対するアクセス方法を指定するコマンドを解析し、解析されたコマンドを、レジスタ122、および、出力選択部124に出力する。このコマンドは、SDRAMの動作制御に用いられる周知のコマンドであり、コマンドとしては、例えば、全バンク・プリチャージ、指定バンク・プリチャージ、リフレッシュ、モード・レジスタ・セット、アクティブ、リード、ライト等が挙げられる。
レジスタ122は、コマンド解析部126から入力されたコマンドに基づいて、メモリコントローラ12から出力されたロウアドレスの最上位ビット(A13)を一時的に記憶したり、リセットしたりする。また、レジスタ122には、クロック信号(CLK)、および、チップセレクト信号(CS)が入力され、レジスタ122は、入力されたチップセレクト信号(CS)が“L”であるときに、クロック信号(CLK)の立ち上がりエッジでコマンド解析部126から入力されたコマンドを確定する。なお、メモリコントローラ12は、後述するように、SDRAM110の8つのバンクを、4つのバンクとして扱うので、図示は省略されているが、アドレス生成回路120には、これらにそれぞれ対応した4つのレジスタ122が備えられている。
出力選択部124は、コマンド解析部126から入力されたコマンドに基づいて、メモリコントローラ12から出力されたロウアドレスの最上位ビット、または、レジスタ122に記憶されたロウアドレスの最上位ビットを、アクセス対象となるメモリセルを特定するために不足するバンクアドレスの最上位ビット(B2)として、SDRAM110に出力する。
このようなアドレス生成回路120をメモリモジュール100が備えることによって、メモリモジュール100が、SDRAM110(1ギガビット(64メガワード×16ビット)のDDR2SDRAM)に対応していないメモリコントローラ12に接続されている場合であっても、メモリコントローラ10に接続されている場合と同様に、SDRAM110には、アクセス対象となるメモリセルを特定するための各アドレスがすべて入力されるので、SDRAM110は、正常に動作することができる。
なお、本実施例では、図2に示したように、アドレス生成回路120によって生成されたバンクアドレスの最上位ビットB2をSDRAM110に出力するメモリモジュール100の制御モードを、「バーチャルモード」と呼ぶものとする。また、図1に示したように、アドレス生成回路120によって生成されたバンクアドレスの最上位ビットB2をSDRAM110に出力しないメモリモジュール100の制御モードを、「ノーマルモード」と呼ぶものとする。
図3は、512メガビット(64メガワード×8ビット)のDDR2SDRAMのバンク構成を示す説明図である。図示するように、SDRAMの内部は、4つのバンク(Bank0〜Bank3)に分割されている。なお、各バンクがそれぞれ動作可能なように、バンクごとに、図示しないロウデコーダや、カラムデコーダや、センスアンプ等が備えられている。そして、メモリコントローラ12は、2ビットのバンクアドレスBA0,BA1によって、4つのバンクの中から、アクセス対象となるメモリセルを有するバンクを特定し、さらに、ロウアドレス、および、カラムアドレスによって、特定されたバンク内のメモリセルを特定する。
図4は、1ギガビット(64メガワード×16ビット)のDDR2SDRAM(SDRAM110)のバンク構成を示す説明図である。図示するように、SDRAM110の内部は、8つのバンク(Bank0〜Bank7)に分割されている。なお、各バンクがそれぞれ独立して動作可能なように、バンクごとに、図示しないロウデコーダや、カラムデコーダや、センスアンプ等が備えられている。このようなSDRAM110を直接的にメモリコントローラ12に接続した場合、先に説明したように、メモリコントローラ12から出力される各アドレスのビット数と、アクセス対象となるメモリセルの特定に用いられる各アドレスのビット数とが整合していないため、メモリコントローラ12は、SDRAM110を正常に動作させることができない。これに対し、本実施例では、メモリモジュール100が先に説明したアドレス生成回路120を備えることによって、メモリコントローラ12は、図3に示した、内部が4つのバンクに分割された、512メガビット(64メガワード×8ビット)のDDR2SDRAMを備えるメモリモジュールが接続されているときと同様に、メモリモジュール100が備えるSDRAM110にアクセスすることができる。
すなわち、本実施例では、メモリコントローラ12は、SDRAM110の内部の、Bank0とBank4とからなるブロックと、Bank1とBank5とからなるブロックと、Bank2とBank6とからなるブロックと、Bank3とBank7とからなるブロックとが、4つのバンクであるものとして扱うことができる。例えば、メモリコントローラ12から出力されたバンクアドレスBA0,BA1が、それぞれ、BA0=0,BA1=0である場合には、メモリコントローラ12は、Bank0とBank4とからなるブロックを1つのバンクとして扱うことができる。一方、SDRAM110では、メモリコントローラ12から出力されたバンクアドレスB0,B1によって、ブロックが特定され、さらに、アドレス生成回路120から出力されたバンクアドレスBA2(メモリコントローラ12から出力されたロウアドレスの最上位ビットA13)によって、ブロック内のいずれかのバンクが特定される。
図5は、メモリモジュール100における初期化ルーチンの流れを示すフローチャートである。この初期化ルーチンは、メモリモジュール100に電源が投入されるごとに実行される。ここでは、メモリモジュール100がメモリコントローラ12に接続されているときの初期化ルーチンについて説明する。
まず、メモリコントローラ12から「全バンク・プリチャージ」コマンドが発行されると、SDRAM110は、全バンクのプリチャージを行う(ステップS100)。このとき、アドレス生成回路120が備えるレジスタ122の値は、ゼロにリセットされる。次に、メモリコントローラ12から「リフレッシュ」コマンドが発行されると、SDRAM110は、リフレッシュ動作を行う(ステップS110)。次に、メモリコントローラ12から「モード・レジスタ・セット」コマンドが発行されると、SDRAM110は、入力されたアドレスのビット配列に従って、動作モードの切り替えを行う(ステップS120)。このとき、アドレス生成回路120が備える出力選択部124は、レジスタ122の値(ゼロ)をBA2としてSDRAM110に出力する。以上の動作によって、初期化ルーチンは終了し、SDRAM110は、アイドル状態となる。
図6は、メモリモジュール100における通常動作ルーチンの流れの一例を示すフローチャートである。この通常動作ルーチンは、上述した初期化ルーチンが終了した後に実行される。ここでは、メモリモジュール100がメモリコントローラ12に接続されているときの通常動作ルーチンについて説明する。
まず、メモリコントローラ12から「アクティブ」コマンドが発行されると、SDRAM110は、メモリコントローラ12から出力されたバンクアドレスBA0,BA1、および、ロウアドレスA0〜A12と、アドレス生成回路120が備える出力選択部124から出力されたバンクアドレスBA2(メモリコントローラ12から出力されたロウアドレスの最上位ビットA13)とに基づいて、活性化を行う(ステップS200)。このとき、アドレス生成回路120が備えるレジスタ122は、メモリコントローラ12から出力されたロウアドレスの最上位ビットA13を記憶する。
次に、メモリコントローラ12から「リード」コマンド、または、「ライト」コマンドが発行されると、SDRAM110は、メモリコントローラ12から出力されたバンクアドレスBA0,BA1、および、カラムアドレスA0〜A9と、アドレス生成回路120が備える出力選択部124から出力されたバンクアドレスBA2(レジスタ122に記憶されたロウアドレスの最上位ビットA13)とに基づいて、アクセス対象として特定されたメモリセルからのデータの読み出し、または、アクセス対象として特定されたメモリセルへのデータの書き込みを行う(ステップS210)。
次に、メモリコントローラ12から「指定バンク・プリチャージ」コマンドが発行されると(ステップS220:YES)、SDRAM110は、メモリコントローラ12から出力されたバンクアドレスBA0,BA1と、アドレス生成回路120が備える出力選択部124から出力されたバンクアドレスBA2(レジスタ122に記憶されたロウアドレスの最上位ビットA13)とに基づいて、指定されたバンクのプリチャージを行う(ステップS230)。また、メモリコントローラ12から「全バンク・プリチャージ」コマンドが発行されると(ステップS220:YES)、SDRAM110は、全バンクのプリチャージを行う(ステップS230)。このとき、アドレス生成回路120が備えるレジスタ122の値は、ゼロにリセットされる。ステップS230の動作が終了すると、SDRAM110は、アイドル状態となる。なお、ステップS210に引き続き、メモリコントローラ12から「リード」コマンド、または、「ライト」コマンドが発行された場合には(ステップS220:NO)、ステップS210に戻る。
以上説明した第1実施例のメモリモジュール100によれば、メモリコントローラ12から出力されるバンクアドレスのビット数(2ビット)と、ロウアドレスのビット数(14ビット)と、カラムアドレスのビット数(10ビット)との総和(26ビット)が、アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数(3ビット)と、ロウアドレスのビット数(13ビット)と、カラムアドレスのビット数(10ビット)との総和(26ビット)と等しく、かつ、メモリコントローラ12から出力されるロウアドレスのビット数が、アクセス対象となるメモリセルの特定に利用されるロウアドレスのビット数よりも1ビット多く、かつ、メモリコントローラ12から出力されるバンクアドレスのビット数が、アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数よりも1ビット少ないときに、アドレス生成回路120によって、アクセス対象となるメモリセルを特定するために不足するバンクアドレスの最上位ビットBA2を生成し、この生成されたバンクアドレスの最上位ビットBA2をSDRAM110に出力することができる。したがって、メモリコントローラから出力される各アドレスのビット数が、それぞれ、アクセス対象となるメモリセルの特定に利用される各アドレスのビット数と整合していない場合であっても、上記条件下で、メモリコントローラからメモリモジュール100のすべてのメモリセルにアクセス可能にするとともに、メモリモジュール100を正常に動作させることができる。
ところで、メモリコントローラ10,12からメモリモジュール100が備えるSDRAM110へのアクセスの動作モードには、1T動作、および、2T動作がある。
図7は、1T動作、および、2T動作を示す説明図である。1T動作は、図7(a)に示したように、クロック信号(CLK)の1周期ごとにコマンドアドレス(RAS,CAS,WE)が変更され得る動作モードであり、比較的高速アクセス可能な動作モードである。この1T動作は、コマンドアドレスの切り替わりから確定までのマージンが比較的少ないため、同一のメモリチャネルに1枚しかメモリモジュールが装着されていないときのみ可能である。一方、2T動作は、図7(b)に示したように、クロック信号(CLK)の2周期ごとにコマンドアドレスが変更され得る動作モードであり、比較的アクセス速度が遅い動作モードである。この2T動作は、コマンドアドレスの切り替わりから確定までのマージンが比較的多いので、同一のメモリチャネルに複数のメモリモジュールが装着された場合であっても、安定した動作が見込める。
本実施例のメモリモジュール100では、アドレス生成回路120によって、先に説明した不足するバンクアドレスの最上位ビットBA2を生成して、SDRAM110に出力可能であるが、アドレス生成回路120の動作には所定時間を要するため、メモリコントローラ10,12の動作モードが1T動作である場合には、メモリモジュール100の制御モードをバーチャルモードにすると、不足するバンクアドレスの最上位ビットBA2の生成、出力が間に合わずに、SDRAM110へのアクセスが正常に行われない場合が生じる。そこで、本実施例では、以下に説明するように、メモリモジュール100の動作、すなわち、メモリモジュール100の制御モードを、種々のケースに応じて、適切に切り換えることができるようにしている。
図8は、種々のケースに応じたメモリモジュール100の動作状況を示す説明図である。なお、この図の最上段の「環境」の項目における「混在可PC」とは、1ギガビットSDRAMを備えるメモリモジュールと、512メガビットのSDRAMを備えるメモリモジュールとを混在させて接続することを許容するメモリコントローラが搭載されたPC(パーソナルコンピュータ)を表している。また、「混在不可PC」とは、1ギガビットSDRAMを備えるメモリモジュールと、512メガビットのSDRAMを備えるメモリモジュールとを混在させて接続することを許容しないメモリコントローラが搭載されたPC(パーソナルコンピュータ)を表している。
「混在可PC」にメモリモジュール100、および、512メガビットのSDRAMを備えるメモリモジュールを混在させて装着し、メモリコントローラの動作モードが1T動作である場合(ケース1)、メモリモジュール100の制御モードがノーマルモードである場合には、正常動作する。しかし、メモリモジュール100の制御モードがバーチャルモードである場合には、先に説明したように、アドレス生成回路120の動作が間に合わず、異常動作(ハングアップ等)する。したがって、ケース1では、メモリモジュール100の制御モードをノーマルモードにすることが必須である。
また、「混在可PC」にメモリモジュール100、および、512メガビットのSDRAMを備えるメモリモジュールを混在させて装着し、メモリコントローラの動作モードが2T動作である場合(ケース2)、メモリモジュール100の制御モードがノーマルモードである場合であってもバーチャルモードであっても正常動作する。
また、「混在不可PC」にメモリモジュール100、および、512メガビットのSDRAMを備えるメモリモジュールを混在させて装着し、メモリコントローラの動作モードが1T動作である場合(ケース3)、メモリモジュール100の制御モードがノーマルモードである場合には、正常動作する。しかし、メモリモジュール100の制御モードがバーチャルモードである場合には、先に説明したように、アドレス生成回路120の動作が間に合わず、異常動作(ハングアップ等)する。したがって、ケース3では、メモリモジュール100の制御モードをノーマルモードにすることが必須である。
また、「混在不可PC」にメモリモジュール100、および、512メガビットのSDRAMを備えるメモリモジュールを混在させて装着し、メモリコントローラの動作モードが2T動作である場合(ケース4)、メモリモジュール100の制御モードがノーマルモードである場合には、PCとしては正常動作するが、512メガビットのSDRAMを備えるメモリモジュールを認識しないという不具合がある。一方、メモリモジュール100の制御モードがバーチャルモードである場合には、正常動作する。したがって、ケース4では、メモリモジュール100の制御モードをバーチャルモードにすることが必須である。
以上のことから、512メガビットのSDRAMを備えるメモリモジュールと混在して、メモリモジュール100が装着されるPCが、「混在可PC」であるか「混在不可PC」であるかに関わらず、メモリコントローラの動作モードが1T動作である場合には、メモリモジュール100の制御モードをノーマルモードとし、メモリコントローラの動作モードが2T動作である場合には、メモリモジュール100の制御モードをバーチャルモードとすれば、すべてのケースで正常動作させることができることが分かる。
図9は、メモリコントローラの動作モード(1T動作/2T動作)に基づくメモリモジュール100の制御モードの設定の流れを示すフローチャートである。
まず、メモリモジュール100がコンピュータに装着された後、最初に電源が投入されると(ステップS300)、スイッチ制御部140によって、EEPROM150に予め記憶されているデフォルトの制御モード(=ノーマルモード)を読み出し(ステップS310)、このデフォルトの制御モードに基づいて、スイッチ128を制御する(ステップS320)。すなわち、メモリモジュール100の制御モードをノーマルモードに設定する。デフォルトの制御モードをノーマルモードとしているのは、先に説明したように、メモリコントローラが1T動作するときに、メモリモジュール100の制御モードをバーチャルモードにした場合には、ハングアップ等の異常動作となるが、ノーマルモードにした場合には、PCとしてハングアップ等のおそれがなく起動できるからである。
次に、動作モード検出部130によって、メモリコントローラの動作モードを検出する(ステップS330)。
図10は、メモリコントローラの動作モードの検出方法を示す説明図である。本実施例では、動作モード検出部130は、クロック信号(CLK)の立ち上がりエッジごとにチップセレクト信号(CS)、および、コマンドアドレス(RAS,CAS,WE)を、順次、取得して、3回分のコマンドアドレスを保持し、これらを、順次、比較することによって、メモリコントローラの動作モードを検出する。
すなわち、動作モード検出部130は、図10(a)に示したように、取得したチップセレクト信号(CS)が“L”である時刻t(0)において取得したコマンドアドレスが、前回、時刻t(−1)において取得したコマンドアドレスと異なる場合に、メモリコントローラの動作モードが1T動作であるものと判定する。また、動作モード検出部130は、図10(b)に示したように、取得したチップセレクト信号(CS)が“L”である時刻t(0)において取得したコマンドアドレスが、前回、時刻t(−1)において取得したコマンドアドレスと等しく、かつ、前回、t(−1)において取得したコマンドアドレスが、前々回、t(−2)において取得したコマンドアドレスと異なる場合に、メモリコントローラの動作モードが2T動作であるものと判定する。
そして、本実施例では、動作モード検出部130は、上述した判定を複数回行い、いずれかの動作モードの検出回数が、複数回の過半数よりも多い所定回数以上(例えば、5回のうちの3回以上)であるときに、所定回数以上検出された動作モードをメモリコントローラの動作モードとして確定する。こうすることによって、メモリコントローラの動作モードの確定を、精度よく行うことができる。
図9に戻り、メモリモジュール100の制御モードの設定について説明する。ステップS330においてメモリコントローラの動作モードが検出(確定)されると、スイッチ制御部140は、検出された動作モードに基づいて、次回の制御モードをEEPROM150に記憶する(ステップS340)。検出された動作モードが1T動作である場合には、スイッチ制御部140は、次回の制御モードとして、1T動作に対応するノーマルモード(図8参照)をEEPROM150に記憶する。一方、検出された動作モードが2T動作である場合には、スイッチ制御部140は、次回の制御モードとして、2T動作に対応するバーチャルモード(図8参照)を記憶する。
その後、ユーザによってコンピュータが再起動されると(ステップS350)、スイッチ制御部140は、EEPROM150から、次回の制御モードとして記憶された制御モードを読み出し(ステップS360)、読み出した制御モードに基づいて、スイッチ128を制御する(ステップS370)。
以上説明した第1実施例のメモリモジュール100によれば、ユーザ自らがスイッチ128の切り換えの要否を判断することなく、メモリコントローラの動作モードが1T動作であるか2T動作であるかを検出し、検出された動作モードに応じて、スイッチ128、すなわち、メモリモジュール100の制御モードを適切に切り換えることができる。
B.第2実施例:
図11は、本発明の第2実施例としてのメモリ用補助モジュール200の概略構成を示す説明図である。
このメモリ用補助モジュール200は、図示するように、ユーザが、メモリモジュール100Aが備えるSDRAM110を、SDRAM110に対応していないメモリコントローラ12によって動作させたいときに、メモリコントローラ12とメモリモジュール100Aとの間における信号およびデータのやり取りを中継させるために、メモリコントローラ12とメモリモジュール100Aとに接続するものである。そして、メモリモジュール100Aは、第1実施例のメモリモジュール100からアドレス生成回路120と、動作モード検出部130と、スイッチ制御部140と、EEPROM150とを除いたものである。また、メモリ用補助モジュール200は、第1実施例のメモリモジュール100におけるアドレス生成回路120と、動作モード検出部130と、スイッチ制御部140と、EEPROM150とを備えるアダプタである。
なお、第2実施例において、メモリ用補助モジュール200が備えるアドレス生成回路120と、動作モード検出部130と、スイッチ制御部140と、EEPROM150の動作は、第1実施例のメモリモジュール100と同じである。したがって、本実施例では、これらの動作についての説明は省略する。
以上説明した第2実施例のメモリ用補助モジュール200によれば、メモリコントローラ12から出力されるバンクアドレスのビット数(2ビット)と、ロウアドレスのビット数(14ビット)と、カラムアドレスのビット数(10ビット)との総和(26ビット)が、アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数(3ビット)と、ロウアドレスのビット数(13ビット)と、カラムアドレスのビット数(10ビット)との総和(26ビット)と等しく、かつ、メモリコントローラ12から出力されるロウアドレスのビット数が、アクセス対象となるメモリセルの特定に利用されるロウアドレスのビット数よりも1ビット多く、かつ、メモリコントローラ12から出力されるバンクアドレスのビット数が、アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数よりも1ビット少ないときに、アドレス生成回路120によって、アクセス対象となるメモリセルを特定するために不足するバンクアドレスの最上位ビットBA2を生成し、この生成されたバンクアドレスの最上位ビットBA2をメモリモジュール100Aに出力することができる。したがって、メモリコントローラから出力される各アドレスのビット数が、それぞれ、アクセス対象となるメモリセルの特定に利用される各アドレスのビット数と整合していない場合であっても、上記条件下で、メモリコントローラからメモリモジュール100Aのすべてのメモリセルにアクセス可能にするとともに、メモリモジュール100Aを正常に動作させることができる。
また、第2実施例のメモリ用補助モジュール200によれば、第1実施例のメモリモジュール100と同様に、ユーザ自らがスイッチ128の切り換えの要否を判断することなく、メモリコントローラの動作モードが1T動作であるか2T動作であるかを検出し、検出された動作モードに応じて、スイッチ128、すなわち、メモリ用補助モジュール200の制御モードを適切に切り換えることができる。
C.変形例:
以上、本発明のいくつかの実施の形態について説明したが、本発明はこのような実施の形態になんら限定されるものではなく、その要旨を逸脱しない範囲内において種々なる態様での実施が可能である。例えば、以下のような変形が可能である。
C1.変形例1:
上記実施例では、メモリコントローラから出力されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和が、アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和と等しく、かつ、メモリコントローラから出力されるロウアドレスのビット数が、アクセス対象となるメモリセルの特定に利用されるロウアドレスのビット数よりも1ビット多く、かつ、メモリコントローラから出力されるバンクアドレスのビット数が、アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数よりも1ビット少ないときについて説明したが、本発明は、これに限られない。図示、および、詳細な説明は省略するが、本発明は、メモリコントローラから出力されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和が、アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和と等しく、かつ、メモリコントローラから出力されるロウアドレスのビット数が、アクセス対象となるメモリセルの特定に利用されるロウアドレスのビット数よりも1ビット多く、かつ、メモリコントローラから出力されるカラムアドレスのビット数が、アクセス対象となるメモリセルの特定に利用されるカラムアドレスのビット数よりも1ビット少ないときにも適用することができる。この場合、アドレス生成回路が、メモリコントローラから出力されたロウアドレスの最上位ビットを用いて、アクセス対象となるメモリセルを特定するために不足するカラムアドレスの最上位ビットを生成し、生成されたカラムアドレスの最上位ビットをSDRAMに出力するようにすればよい。こうすることによっても、上記実施例と同様に、メモリコントローラから出力される各アドレスのビット数が、それぞれ、アクセス対象となるメモリセルの特定に利用される各アドレスのビット数と整合していない場合であっても、上記条件下で、メモリコントローラからメモリモジュールのすべてのメモリセルにアクセス可能にするとともに、メモリモジュールを正常に動作させることができる。
C2.変形例2:
上記実施例では、アドレス生成回路120において、スイッチ128は、出力選択部124の後段に設けられているものとしたが、本発明は、これに限られない。アドレス生成回路120は、メモリコントローラから出力されたロウアドレスの最上位ビットを用いて、アクセス対象となるメモリセルの特定に利用されるバンクアドレスの最上位ビットを生成して、SDRAM110に出力することが可能であればよく、スイッチ128を他の部位に設けるようにしてもよい。
C3.変形例3:
上記実施例のメモリモジュール100では、SDRAM110として、DDR2SDRAMを用いるものとしたが、本発明は、これに限られない。DDR2SDRAMの代わりに、例えば、DDRSDRAMや、DDR3SDRAM等の複数のバンクを有する他のSDRAMを用いるものとしてもよい。
本発明の第1実施例としてのメモリモジュール100の概略構成を示す説明図である。 本発明の第1実施例としてのメモリモジュール100の概略構成を示す説明図である。 512メガビット(64メガワード×8ビット)のDDR2SDRAMのバンク構成を示す説明図である。 1ギガビット(64メガワード×16ビット)のDDR2SDRAM(SDRAM110)のバンク構成を示す説明図である。 メモリモジュール100における初期化ルーチンの流れを示すフローチャートである。 メモリモジュール100における通常動作ルーチンの流れの一例を示すフローチャートである。 1T動作、および、2T動作を示す説明図である。 種々のケースに応じたメモリモジュール100の動作状況を示す説明図である。 メモリコントローラの動作モード(1T動作/2T動作)に基づくメモリモジュール100の制御モードの設定の流れを示すフローチャートである。 メモリコントローラの動作モードの検出方法を示す説明図である。 本発明の第2実施例としてのメモリ用補助モジュール200の概略構成を示す説明図である。
符号の説明
10,12…メモリコントローラ
100,100A…メモリモジュール
110…SDRAM
120…アドレス生成回路
122…レジスタ
124…出力選択部
126…コマンド解析部
128…スイッチ
130…動作モード検出部
140…スイッチ制御部
150…EEPROM
200…メモリ用補助モジュール

Claims (13)

  1. メモリモジュールであって、
    マトリクス状に配列された複数のメモリセルを備えるバンクを複数有し、メモリコントローラから入力された所定のビット数のバンクアドレスと、所定のビット数のロウアドレスと、所定のビット数のカラムアドレスとに基づいて、アクセス対象となるメモリセルが特定されるメモリと、
    前記メモリコントローラから出力されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和が、前記アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和と等しく、かつ、
    前記メモリコントローラから出力されるロウアドレスのビット数が、前記アクセス対象となるメモリセルの特定に利用されるロウアドレスのビット数よりも1ビット多く、かつ、
    前記メモリコントローラから出力されるバンクアドレスのビット数が、前記アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数よりも1ビット少ないときに、
    前記メモリコントローラから出力されたロウアドレスの最上位ビットを用いて、前記アクセス対象となるメモリセルの特定に利用されるバンクアドレスの最上位ビットを生成して、前記メモリに出力することが可能なアドレス生成回路と、
    前記メモリコントローラから前記メモリへのアクセスの動作モードが、第1の動作モードであるか、第2の動作モードであるかを検出する動作モード検出部と、
    前記動作モード検出部によって検出された動作モードに基づいて、前記アドレス生成回路を制御する制御部と、
    を備えるメモリモジュール。
  2. 請求項1記載のメモリモジュールであって、
    前記第1の動作モードは、前記メモリコントローラから発行されるコマンドが前記メモリコントローラから出力されるクロック信号の1周期ごとに変更され得る動作モードであり、
    前記第2の動作モードは、前記メモリコントローラから発行されるコマンドが前記メモリコントローラから出力されるクロック信号の2周期ごとに変更され得る動作モードであり、
    前記制御部は、
    前記動作モード検出部によって検出された動作モードが、前記第1の動作モードであるときに、前記バンクアドレスの最上位ビットの前記メモリへの出力を禁止するように、前記アドレス生成回路を制御し、
    前記動作モード検出部によって検出された動作モードが、前記第2の動作モードであるときに、前記バンクアドレスの最上位ビットを前記メモリに出力するように、前記アドレス生成回路を制御する、
    メモリモジュール。
  3. 請求項1または2記載のメモリモジュールであって、
    前記アドレス生成回路は、
    前記メモリコントローラから出力されたロウアドレスの最上位ビットを一時的に記憶するレジスタと、
    前記メモリコントローラから出力されたロウアドレスの最上位ビット、または、前記レジスタに記憶された前記ロウアドレスの最上位ビットを、前記アクセス対象となるメモリセルの特定に利用されるバンクアドレスの最上位ビットとして、前記メモリに出力する出力選択部と、
    前記メモリコントローラから出力されたロウ・アドレス・ストローブ信号と、カラム・アドレス・ストローブ信号と、ライト・イネーブル信号とに基づいて、前記メモリに対するアクセス方法を指定するコマンドを解析し、該解析されたコマンドを、前記レジスタ、および、前記出力選択部に出力するコマンド解析部と、を備え、
    前記レジスタは、前記コマンド解析部から入力されたコマンドに基づいて、前記ロウアドレスの最上位ビットの記憶、および、リセットを行い、
    前記出力選択部は、前記コマンド解析部から入力されたコマンドに基づいて、前記メモリコントローラから出力されたロウアドレスの最上位ビット、または、前記レジスタに記憶された前記ロウアドレスの最上位ビットを出力する、
    メモリモジュール。
  4. メモリモジュールであって、
    マトリクス状に配列された複数のメモリセルを備えるバンクを複数有し、メモリコントローラから入力された所定のビット数のバンクアドレスと、所定のビット数のロウアドレスと、所定のビット数のカラムアドレスとに基づいて、アクセス対象となるメモリセルが特定されるメモリと、
    前記メモリコントローラから出力されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和が、前記アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和と等しく、かつ、
    前記メモリコントローラから出力されるロウアドレスのビット数が、前記アクセス対象となるメモリセルの特定に利用されるロウアドレスのビット数よりも1ビット多く、かつ、
    前記メモリコントローラから出力されるカラムアドレスのビット数が、前記アクセス対象となるメモリセルの特定に利用されるカラムアドレスのビット数よりも1ビット少ないときに、
    前記メモリコントローラから出力されたロウアドレスの最上位ビットを用いて、前記アクセス対象となるメモリセルの特定に利用されるカラムアドレスの最上位ビットを生成して、前記メモリに出力することが可能なアドレス生成回路と、
    前記メモリコントローラから前記メモリへのアクセスの動作モードが、第1の動作モードであるか、第2の動作モードであるかを検出する動作モード検出部と、
    前記動作モード検出部によって検出された動作モードに基づいて、前記アドレス生成回路を制御する制御部と、
    を備えるメモリモジュール。
  5. 請求項4記載のメモリモジュールであって、
    前記第1の動作モードは、前記メモリコントローラから発行されるコマンドが前記メモリコントローラから出力されるクロック信号の1周期ごとに変更され得る動作モードであり、
    前記第2の動作モードは、前記メモリコントローラから発行されるコマンドが前記メモリコントローラから出力されるクロック信号の2周期ごとに変更され得る動作モードであり、
    前記制御部は、
    前記動作モード検出部によって検出された動作モードが、前記第1の動作モードであるときに、前記カラムアドレスの最上位ビットの前記メモリへの出力を禁止するように、前記アドレス生成回路を制御し、
    前記動作モード検出部によって検出された動作モードが、前記第2の動作モードであるときに、前記カラムアドレスの最上位ビットを前記メモリに出力するように、前記アドレス生成回路を制御する、
    メモリモジュール。
  6. 請求項4または5記載のメモリモジュールであって、
    前記アドレス生成回路は、
    前記メモリコントローラから出力されたロウアドレスの最上位ビットを一時的に記憶するレジスタと、
    前記メモリコントローラから出力されたロウアドレスの最上位ビット、または、前記レジスタに記憶された前記ロウアドレスの最上位ビットを、前記アクセス対象となるメモリセルの特定に利用されるカラムアドレスの最上位ビットとして、前記メモリに出力する出力選択部と、
    前記メモリコントローラから出力されたロウ・アドレス・ストローブ信号と、カラム・アドレス・ストローブ信号と、ライト・イネーブル信号とに基づいて、前記メモリに対するアクセス方法を指定するコマンドを解析し、該解析されたコマンドを、前記レジスタ、および、前記出力選択部に出力するコマンド解析部と、を備え、
    前記レジスタは、前記コマンド解析部から入力されたコマンドに基づいて、前記ロウアドレスの最上位ビットの記憶、および、リセットを行い、
    前記出力選択部は、前記コマンド解析部から入力されたコマンドに基づいて、前記メモリコントローラから出力されたロウアドレスの最上位ビット、または、前記レジスタに記憶された前記ロウアドレスの最上位ビットを出力する、
    メモリモジュール。
  7. 請求項1ないし6のいずれかに記載のメモリモジュールであって、さらに、
    前記動作モード検出部によって検出された動作モードと対応付けられた所定のパラメータ値を記憶する不揮発性メモリを備えており、
    前記制御部は、前記不揮発性メモリに記憶されたパラメータ値を読み出し、該パラメータ値に基づいて、前記アドレス生成回路を制御する、
    メモリモジュール。
  8. 請求項7記載のメモリモジュールであって、
    前記制御部は、
    前記メモリモジュールがコンピュータに装着された後であって、該コンピュータが最初に起動されたときに、前記パラメータ値を、前記不揮発性メモリに記憶し、
    前記コンピュータが2回目以降に起動されたときに、前記パラメータ値を読み出す、
    メモリモジュール。
  9. 請求項1ないし8のいずれかに記載のメモリモジュールであって、
    前記動作モード検出部は、前記メモリコントローラから出力されたクロック信号と、チップセレクト信号と、ロウ・アドレス・ストローブ信号と、カラム・ドレス・ストローブ信号と、ライト・イネーブル信号とに基づいて、前記動作モードが第1の動作モードであるか第2の動作モードであるかを検出する、
    メモリモジュール。
  10. 請求項9記載のメモリモジュールであって、
    前記動作モード検出部は、前記クロック信号の立ち上がりエッジごとに、前記チップセレクト信号と、前記ロウ・アドレス・ストローブ信号と、前記カラム・アドレス・ストローブ信号と、前記ライト・イネーブル信号とを取得するとともに、該各信号を保持し、
    前記取得したチップセレクト信号が“L”であるときに取得したロウ・アドレス・ストローブ信号と、カラム・アドレス・ストローブ信号と、ライト・イネーブル信号とのうちの少なくとも1つが、前回取得したロウ・アドレス・ストローブ信号と、カラム・アドレス・ストローブ信号と、ライト・イネーブル信号と異なる場合に、前記動作モードが前記第1の動作モードであるものと検出し、
    前記取得したチップセレクト信号が“L”であるときに取得したロウ・アドレス・ストローブ信号と、カラム・アドレス・ストローブ信号と、ライト・イネーブル信号とが、それぞれ、前回取得したロウ・アドレス・ストローブ信号と、カラム・アドレス・ストローブ信号と、ライト・イネーブル信号と等しく、かつ、前回取得したロウ・アドレス・ストローブ信号と、カラム・アドレス・ストローブ信号と、ライト・イネーブル信号とのうちの少なくとも1つが、前々回取得したロウ・アドレス・ストローブ信号と、カラム・アドレス・ストローブ信号と、ライト・イネーブル信号と異なる場合に、前記動作モードが前記第2の動作モードであるものと検出する、
    メモリモジュール。
  11. 請求項10記載のメモリモジュールであって、
    前記動作モード検出部は、前記動作モードの検出を複数回行い、前記第1の動作モードの検出回数、または、前記第2の動作モードの検出回数が、前記複数回の過半数よりも多い所定回数以上であるときに、該所定回数以上検出された動作モードを前記動作モードとして確定する、
    メモリモジュール。
  12. マトリクス状に配列された複数のメモリセルを備えるバンクを複数有し、メモリコントローラから入力された所定のビット数のバンクアドレスと、所定のビット数のロウアドレスと、所定のビット数のカラムアドレスとに基づいて、アクセス対象となるメモリセルが特定されるメモリを備えるメモリモジュールと、前記メモリコントローラとに接続され、前記メモリコントローラと前記メモリモジュールとの間における信号およびデータのやり取りを中継するメモリ用補助モジュールであって、
    前記メモリ用補助モジュールは、
    前記メモリコントローラから出力されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和が、前記アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和と等しく、かつ、
    前記メモリコントローラから出力されるロウアドレスのビット数が、前記アクセス対象となるメモリセルの特定に利用されるロウアドレスのビット数よりも1ビット多く、かつ、
    前記メモリコントローラから出力されるバンクアドレスのビット数が、前記アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数よりも1ビット少ないときに利用されるメモリ用補助モジュールであり、
    前記メモリコントローラから出力されたロウアドレスの最上位ビットを用いて、前記アクセス対象となるメモリセルの特定に利用されるバックアドレスの最上位ビットを生成して、前記メモリモジュールに出力することが可能なアドレス生成回路と、
    前記メモリコントローラから前記メモリへのアクセスの動作モードが、第1の動作モードであるか、第2の動作モードであるかを検出する動作モード検出部と、
    前記動作モード検出部によって検出された動作モードに基づいて、前記アドレス生成回路を制御する制御部と、
    を備えるメモリ用補助モジュール。
  13. マトリクス状に配列された複数のメモリセルを備えるバンクを複数有し、メモリコントローラから入力された所定のビット数のバンクアドレスと、所定のビット数のロウアドレスと、所定のビット数のカラムアドレスとに基づいて、アクセス対象となるメモリセルが特定されるメモリを備えるメモリモジュールと、前記メモリコントローラとに接続され、前記メモリコントローラと前記メモリモジュールとの間における信号およびデータのやり取りを中継するメモリ用補助モジュールであって、
    前記メモリ用補助モジュールは、
    前記メモリコントローラから出力されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和が、前記アクセス対象となるメモリセルの特定に利用されるバンクアドレスのビット数と、ロウアドレスのビット数と、カラムアドレスのビット数との総和と等しく、かつ、
    前記メモリコントローラから出力されるロウアドレスのビット数が、前記アクセス対象となるメモリセルの特定に利用されるロウアドレスのビット数よりも1ビット多く、かつ、
    前記メモリコントローラから出力されるカラムアドレスのビット数が、前記アクセス対象となるメモリセルの特定に利用されるカラムアドレスのビット数よりも1ビット少ないときに利用されるメモリ用補助モジュールであり、
    前記メモリコントローラから出力されたロウアドレスの最上位ビットを用いて、前記アクセス対象となるメモリセルの特定に利用されるカラムアドレスの最上位ビットを生成して、前記メモリモジュールに出力することが可能なアドレス生成回路と、
    前記メモリコントローラから前記メモリへのアクセスの動作モードが、第1の動作モードであるか、第2の動作モードであるかを検出する動作モード検出部と、
    前記動作モード検出部によって検出された動作モードに基づいて、前記アドレス生成回路を制御する制御部と、
    を備えるメモリ用補助モジュール。
JP2008261521A 2008-10-08 2008-10-08 メモリモジュール、および、メモリ用補助モジュール Expired - Fee Related JP5481823B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2008261521A JP5481823B2 (ja) 2008-10-08 2008-10-08 メモリモジュール、および、メモリ用補助モジュール
CN2009101773932A CN101719380B (zh) 2008-10-08 2009-09-30 存储模块以及存储用辅助模块
US12/572,886 US8103818B2 (en) 2008-10-08 2009-10-02 Memory module and auxiliary module for memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008261521A JP5481823B2 (ja) 2008-10-08 2008-10-08 メモリモジュール、および、メモリ用補助モジュール

Publications (2)

Publication Number Publication Date
JP2010092261A true JP2010092261A (ja) 2010-04-22
JP5481823B2 JP5481823B2 (ja) 2014-04-23

Family

ID=42076717

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008261521A Expired - Fee Related JP5481823B2 (ja) 2008-10-08 2008-10-08 メモリモジュール、および、メモリ用補助モジュール

Country Status (3)

Country Link
US (1) US8103818B2 (ja)
JP (1) JP5481823B2 (ja)
CN (1) CN101719380B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012043342A (ja) * 2010-08-23 2012-03-01 Buffalo Inc メモリモジュール

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120132278A (ko) * 2011-05-26 2012-12-05 삼성전자주식회사 메모리 칩, 메모리 시스템, 및 메모리 칩에 대한 액세스 방법
US10162406B1 (en) * 2017-08-31 2018-12-25 Micron Technology, Inc. Systems and methods for frequency mode detection and implementation
US11216373B2 (en) 2020-05-29 2022-01-04 Advanced Micro Devices, Inc. Memory access commands with near-memory address generation
US20230195618A1 (en) * 2021-12-21 2023-06-22 Advanced Micro Devices, Inc. Approach for performing efficient memory operations using near-memory compute elements

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07200385A (ja) * 1993-12-20 1995-08-04 Motorola Inc 低電力動作モードを備えたメモリを有するデータ処理システムおよびその方法
JPH09293015A (ja) * 1996-04-24 1997-11-11 Mitsubishi Electric Corp メモリシステムおよびそれに用いられる半導体記憶装置
JP2005062914A (ja) * 2003-08-08 2005-03-10 Melco Holdings Inc メモリモジュールおよびメモリ用補助モジュール

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5761694A (en) * 1995-11-30 1998-06-02 Cirrus Logic, Inc. Multi-bank memory system and method having addresses switched between the row and column decoders in different banks
JP2004094785A (ja) 2002-09-03 2004-03-25 Buffalo Inc メモリモジュールおよびメモリ用補助モジュール
US7234099B2 (en) * 2003-04-14 2007-06-19 International Business Machines Corporation High reliability memory module with a fault tolerant address and command bus
US7136322B2 (en) * 2004-08-05 2006-11-14 Analog Devices, Inc. Programmable semi-fusible link read only memory and method of margin testing same
US7755967B2 (en) * 2008-09-29 2010-07-13 Qimonda North America Corp. Memory device refresh method and apparatus

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07200385A (ja) * 1993-12-20 1995-08-04 Motorola Inc 低電力動作モードを備えたメモリを有するデータ処理システムおよびその方法
JPH09293015A (ja) * 1996-04-24 1997-11-11 Mitsubishi Electric Corp メモリシステムおよびそれに用いられる半導体記憶装置
JP2005062914A (ja) * 2003-08-08 2005-03-10 Melco Holdings Inc メモリモジュールおよびメモリ用補助モジュール

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012043342A (ja) * 2010-08-23 2012-03-01 Buffalo Inc メモリモジュール

Also Published As

Publication number Publication date
JP5481823B2 (ja) 2014-04-23
CN101719380A (zh) 2010-06-02
US20100088487A1 (en) 2010-04-08
CN101719380B (zh) 2012-10-31
US8103818B2 (en) 2012-01-24

Similar Documents

Publication Publication Date Title
US6381190B1 (en) Semiconductor memory device in which use of cache can be selected
US6625079B2 (en) Semiconductor memory device
US8060705B2 (en) Method and apparatus for using a variable page length in a memory
JPH09147551A (ja) メモリデバイス回路及びマルチバンクメモリアレイのマルチバンク列の同時アドレス方法
US20120155200A1 (en) Memory device, memory system including the same, and control method thereof
US7840744B2 (en) Rank select operation between an XIO interface and a double data rate interface
JP5481823B2 (ja) メモリモジュール、および、メモリ用補助モジュール
JP2009230776A (ja) マルチポートメモリ、および該マルチポートメモリを備えるコンピュータシステム
JP4229958B2 (ja) メモリ制御システムおよびメモリ制御回路
US7042800B2 (en) Method and memory system in which operating mode is set using address signal
JP2746222B2 (ja) 半導体記憶装置
JP2005116167A (ja) アドレス信号によって動作モードを設定するメモリシステム及び方法
JP2011048876A (ja) 半導体記憶装置及びその制御方法
US20060221744A1 (en) Refresh circuit for use in semiconductor memory device and operation method thereof
JP5363060B2 (ja) メモリモジュール、および、メモリ用補助モジュール
US6937537B2 (en) Semiconductor memory with address decoding unit, and address loading method
KR100444703B1 (ko) 네트워크 상 높은 버스 효율을 갖는 메모리 장치 및 그동작 방법, 그리고 이를 포함하는 메모리 시스템
US8027221B2 (en) Memory device
JP5398664B2 (ja) 半導体メモリ
JP5040306B2 (ja) 記憶制御装置及び記憶制御方法
US9508418B1 (en) Semiconductor device
JP2004206850A (ja) 半導体記憶装置
US6751130B2 (en) Integrated memory device, method of operating an integrated memory, and memory system having a plurality of integrated memories
JP2003151273A (ja) 記憶装置、記憶装置の内部制御方法、システム、及びシステムにおける記憶手段の制御方法
JP2004281002A (ja) 半導体記憶装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111005

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130417

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130507

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130625

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130917

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131210

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20131217

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: 20140121

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140203

R150 Certificate of patent or registration of utility model

Ref document number: 5481823

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

LAPS Cancellation because of no payment of annual fees