JPH11167514A - 動作速度が異なるdramに対処できるメモリ制御機能を備えたコンピュータ・システム - Google Patents

動作速度が異なるdramに対処できるメモリ制御機能を備えたコンピュータ・システム

Info

Publication number
JPH11167514A
JPH11167514A JP10229070A JP22907098A JPH11167514A JP H11167514 A JPH11167514 A JP H11167514A JP 10229070 A JP10229070 A JP 10229070A JP 22907098 A JP22907098 A JP 22907098A JP H11167514 A JPH11167514 A JP H11167514A
Authority
JP
Japan
Prior art keywords
memory
computer system
data
processor
buffer
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.)
Pending
Application number
JP10229070A
Other languages
English (en)
Inventor
Sompong P Olarig
サンポン・ピー・オラリグ
Christopher J Pettey
クリストファー・ジェイ・ペティ
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.)
Compaq Computer Corp
Original Assignee
Compaq Computer Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Compaq Computer Corp filed Critical Compaq Computer Corp
Publication of JPH11167514A publication Critical patent/JPH11167514A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1694Configuration of memory controller to different memory types

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)

Abstract

(57)【要約】 【課題】 異なる周波数で動作する非同期ダイナミック
・ランダム・アクセス・メモリ(SDRAM)のリード
/ライト動作を最適化する。 【解決手段】 コンピュータ・システムは、初期化時
に、存在している全てのメモリのクロック周波数を含む
BIOSデータを判定し記憶する。メモリ・クロック発
生器500は、使用すべきメモリのBIOSデータに基
づいて、システム・クロックから、該メモリのクロック
周波数に一致するメモリ・クロック1、2又は3を生成
する。メモリ制御部206及びプロセッサ制御部202
は、発生されたメモリ・クロックを用いて、メモリ、プ
ロセッサ、及び周辺デバイスとの間でバスを介してデー
タ転送を行う。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ダイナミック・ラ
ンダム・アクセス・メモリ(DRAM)アレイからなる
システム・メモリを含むコンピュータ・システムに関す
る。更に特定すれば、本発明は、コンピュータ・コンポ
ーネントとダイナミック・ランダム・アクセス・メモリ
との間のデータ転送を制御するメモリ・コントローラに
関するものである。更に一層特定すれば、本発明は、メ
モリ・アレイ内において異なる速度のDRAMデバイス
に対応可能なメモリ・コントローラに関するものであ
る。
【0002】
【従来の技術】パーソナル・コンピュータは、通常、一
般的にシステム・メモリと呼ばれているダイナミック・
ランダム・アクセス・メモリ(「DRAM」)チップを
含む。DRAMメモリは非同期的に動作する。即ち、こ
れは、リード要求(読出要求)及びライト要求(書込要
求)が、クロック信号と必ずしも一致しないことを意味
する。更に、DRAMメモリは、当該チップ内に格納さ
れているデータを維持するために、周期的にリフレッシ
ュしなければならない。通常、システム・メモリは、D
RAMデバイスのバンクを含む。各メモリ・バンクは、
8つ又は9つ程度のメモリ・チップを含む場合がある。
コンピュータ・システム内に設けられるバンクの数は、
様々であるが、通常1つないし8つのバンクの範囲であ
る。
【0003】一般に、DRAMバンクは、システム・プ
ロセッサの作業用メモリを含む。DRAMアレイは、メ
モリ・バスを通じて、メモリ・コントローラに接続され
る。メモリ・バスは、メモリ・アドレス・ライン、メモ
リ・データ・ライン、及び種々の制御ラインを含んでい
る。データは、通常、2段階でDRAMアレイとその他
の構成要素との間で転送される。最初に、アクセスする
側の構成要素が、所望のメモリ位置の行アドレスを表す
信号をアドレス・ライン上に発生する。この信号は、行
アドレス・ストローブ(RAS)信号がアサートされた
ときに、DRAM内にラッチされる。次のクロック・サ
イクル、即ち、続くクロック・サイクルにおいて、DR
AMは、列アドレス・ストローブ(CAS)信号がアサ
ートされたときに、列アドレス信号をラッチする。メモ
リ・アドレスが決定された後、メモリ・アレイは、リー
ド/ライト(R/W)制御信号のステータスにしたがっ
て、データをラッチするか、又はデータを出力する。
【0004】メモリ・デバイスの速度は、あるタイミン
グ・パラメータを基準としている。これらのパラメータ
は、メモリ動作を行うときに、ある期間を必要とする。
これらのタイミング・パラメータのために、DRAM回
路で構成されたメモリは、プロセッサによって割り当て
られる時間期間内に常にメモリ・アクセスに応答できる
訳ではない。この場合、外部回路が、データがデータ・
バス上で用意ができる前に、又はデータ・バス上のデー
タをメモリに格納可能となる前に、補足のプロセッサ・
サイクル、即ち、待機状態が必要であることを、プロセ
ッサに知らせなければならない。待機状態は、システム
・プロセッサを低速化することに加えて、通常CPUの
ホスト・バスの使用を必要とするので、他のシステム構
成要素がそのバスを使用するのを制限することになる。
【0005】最近では、メモリ・デバイスの製造者は同
期DRAM(「SDRAM」)を導入し、従来のDRA
Mデバイスを使用する場合に発生するメモリのボトルネ
ックを軽減しようとしている。SDRAMデバイスは、
制御入力信号としてクロック信号を必要とする。SDR
AMデバイスは、DRAMチップと同様に、一般的にア
レイ構成のメモリ・バンクに組織化される。今日入手可
能なコンピュータ・システムの多くは、メモリ・アレイ
内に8つものバンクを含むことを許している。SDRA
Mデバイスの名称は、入力信号(又はコマンド)の全て
が、クロック信号の立ち上がりエッジでDRAMデバイ
スに受け入れられ、したがってクロック信号と「同期」
するという事実から由来したものである。また、クロッ
ク信号は、メモリ・アレイ内においてデータのパイプラ
イン処理も可能とし、更にデータを連続ストリーム状に
出力することも可能としている。
【0006】SDRAMは、異なる速度で使用可能であ
る(速度は、通常、メガヘルツのような周波数の単位で
測定され、当該デバイスの1秒当たりのサイクル数を表
す)。今日、SDRAMデバイスは、66MHz素子又
は100MHz素子として入手可能であるが、更なる高
速化が予測される。SDRAMデバイスの価格は、おお
むね周波数で決まり、高速な素子ほど、高価である。プ
ロセッサとDRAMデバイスとの間のアドレス、データ
及び制御信号の転送及びタイミングは、メモリ・コント
ローラによって制御される。メモリ・コントローラは、
システム・メモリと、中央演算装置を含むコンピュータ
・システム内の他の構成要素との間のトランザクション
を制御する。コンピュータ・システムの中には、メモリ
・コントローラが周辺構成要素相互接続(「PCI」)
バスに結合し、PCIバス上のマスタに、システム・メ
モリへのサイクルを実行させるものがある。一般に、メ
モリ制御装置は、SDRAMメモリ・アレイ内の各バン
クに、クロック信号を供給する。多くの場合、負荷の問
題及びその他のために、メモリ・コントローラは2つの
別個の出力クロック信号を供給し、8つまでのメモリ・
バンクを駆動する。各クロック信号は、4つまでのメモ
リ・バンクに接続される。
【0007】
【発明が解決しようとする課題】高速化されたマイクロ
プロセッサが入手可能となり、コンピュータ設計に組み
込まれるに連れて、メモリ・デバイスは一層速く動作
し、プロセッサの待機状態を最少に抑え、かつ、プロセ
ッサとの互換性を維持しなければならない。メモリ・デ
バイスのコストを考慮して、消費者は、古いコンピュー
タからメモリ・デバイスを取り出し、それらのメモリ・
デバイスを新しいコンピュータ・システムにおいて再利
用する。しかしながら、新しいコンピュータ・システム
に高速化されたプロセッサが用いられていると、旧式で
遅いメモリの使用が不可能になる。したがって、コンピ
ュータ製造者が高速化したコンピュータ・システムを提
供すると、コンピュータ所有者は古いコンピュータから
のメモリ・デバイスを再利用することができなくなる。
ファイル・サーバのような大型コンピュータ・システム
では、システム・メモリに関する出費は、相当な投資を
意味する。
【0008】新しいコンピュータ・システムにアップグ
レードする際に、古いメモリ・デバイスを使用可能なコ
ンピュータ・システムを開発することができれば、有利
であろう。この目標を達成するために、少なくとも1つ
の選択肢が示唆されている。その選択肢は、最も遅いメ
モリ・デバイスの速度でコンピュータ・システムを実行
させることである。高速のメモリ・デバイスは速度を落
として動作するが、コンピュータ全体の処理能力は損な
われる。これは、メモリ・アレイとのデータ通信は、高
速メモリ・デバイスが動作可能な速度よりも遅い速度で
行われるためである。したがって、動作速度が異なるメ
モリ・デバイスを実装可能なコンピュータ・システムを
提供することが望まれている。このとき、そのコンピュ
ータ・システムが、各メモリ回路で可能な限り高速でト
ランザクションを実行することにより、各メモリ・デバ
イスの処理能力を最適化することができることが望まし
い。各メモリ・デバイスの最大速度でトランザクション
を実行することにより、コンピュータ全体の処理能力は
向上するであろう。異なる速度のSDRAMデバイスと
共に動作可能なコンピュータ・システムの利点は明らか
であるが、今日まで、このようなシステムは構築されて
いない。
【0009】
【課題を解決するための手段】上記した従来例の問題点
は、同期ダイナミック・ランダム・アクセス・メモリ
(SDRAM)デバイスの複数のバンクへのメモリ・サ
イクルを制御するために特別に構成されたメモリ・コン
トローラを含む本発明のコンピュータ・システムによっ
て解決される。SDRAMメモリ・デバイスは、各SD
RAMデバイスに適した異なる周波数で動作することが
でき、プロセッサと同じ周波数で動作する必要はない。
好適な実施形態によれば、メモリ・コントローラは、異
なるSDRAMメモリ・デバイスによる使用のための、
周波数が異なる多数のクロック信号を発生する。
【0010】メモリ・コントローラは、非同期データ・
キューを含み、SDRAMメモリ・アレイと、プロセッ
サあるいはPCIバス又はその他のシステム・バス上の
マスタとの間のデータ転送に便宜を図ることが好まし
い。初期化時に、コンピュータ・システムは、メモリ・
アレイ内にあるSDRAMデバイスの形式を判定し、そ
の情報をメモリ・コントローラに提供する。メモリ・コ
ントローラは、それに応答して、メモリ・アレイ内の種
々のSDRAMデバイスにクロック信号を発生する。メ
モリ・コントローラが供給するクロック信号の周波数
は、コンピュータ・システム内のSDRAMに適したも
のである。好適な実施例によれば、各SDRAMデバイ
スに格納されている情報は、メモリ回路の形式を識別
し、コンピュータ・システム内に含まれているSDRA
Mの形式を判定するために用いられる。本発明のこれら
及びその他の利点は、以下の本発明の詳細な説明を読む
ことによって、当業者には明白となろう。
【0011】
【発明の実施の形態】これより図1を参照すると、好適
な実施形態にしたがって構成されたコンピュータ・シス
テム100は、CUPホスト・バス104を通じてメモ
リ/PCIブリッジ・コントローラ200に結合された
プロセッサ102を含んでいる。メモリ/PCIブリッ
ジ・コントローラ200は、メモリ・コントローラを含
み、メモリ・バス112を通じてシステム・メモリ・ア
レイ(メモリ)114とのデータ転送を調整する。ま
た、メモリ/PCIブリッジ・コントローラ200は、
周辺要素相互接続(PCI)バス106へのバス・ブリ
ッジとしても機能する。グラフィックス・カード10
8、ローカル・エリア・ネットワーク(「LAN」)・
インターフェース110、又はその他のあらゆるPCI
バス・デバイスのような、種々のデバイスをPCIバス
106に結合することができる。かかるPCIデバイス
は、好ましくは、公知の技法にしたがってマスタシップ
・モード(mastership mode)で動作し、メモリ・アレイ
114との間でデータ・ライト(データ書込)及びデー
タ・リード(データ読出)を行う。
【0012】プロセッサ102は、MMXTM技術によ
るペンティアム(登録商標)プロセッサ、ペンティアム
IIプロセッサ、K-6又はパーソナル・コンピュータにお
いて使用可能な任意のプロセッサのような、マイクロプ
ロセッサを含むことができる。更に、プロセッサは1つ
だけ示されているが、当業者には、多数のプロセッサを
コンピュータ・システムに備えてもよいことは明らかで
あろう。同様に、CPUホスト・バス104及びPCI
バス106は、パーソナル・コンピュータにおいて共通
して使用されているバス・アーキテクチャを含む。
【0013】メモリ・アレイ114は、NECが製造する
μPD4516421SDRAM、又は他のSDRAMデバイス
のような、同期ダイナミック・ランダム・アクセス・メ
モリ(「SDRAM」)デバイスを備えることが好まし
い。メモリ・アレイ114は、通常の慣習にしたがっ
て、バンクに組織化すればよい。SDRAMメモリの各
バンクは、同一の又は異なるタイミング及び速度特性の
SDRAMデバイスを有することができる。更に、SD
RAMデバイスのクロック周波数は、プロセッサ・クロ
ックの周波数とは異なっていてもよい。メモリ/CPI
ブリッジ・コントローラ200は、たとえメモリ・アレ
イが異なる速度のSDRAMデバイスの混成を含む場合
でも、コンピュータ・システム100がシステム・メモ
リ・アレイ114との間でデータ・ライト及びデータ・
リードを実行可能とする。異なる速度のSDRAMとの
通信を可能とするメモリ/PCIブリッジ・コントロー
ラ200を備えることにより、種々の速度のSDRAM
デバイスと通信するために、プロセッサ102及びPC
Iバス106に結合されるデバイスを変更したり、ある
いは特別に設計することは不要となる。
【0014】図2に示すように、メモリ/PCIブリッ
ジ・コントローラ200は、好ましくは、プロセッサ制
御インターフェース(プロセッサ制御部)202、PC
Iバス制御インターフェース(PCIバス制御部)20
4、及びメモリ制御部206を含む。プロセッサ制御部
202は、コントローラ200をシステム・プロセッサ
102(図1)にインターフェースするためのロジック
を備える。同様に、PCI制御部204は、コントロー
ラ200をPCIバス106にインターフェースするた
めのロジックを備え、メモリ制御部206は、コントロ
ーラ200をメモリ・バス112にインターフェースす
るためのロジックを含む。データ及びアドレス信号は、
プロセッサ−メモリ・データ・キュー(P2MQ)30
0及びメモリ−プロセッサ・データ・キュー(M2P
Q)350を介して、プロセッサ制御部202とメモリ
制御部206との間で転送される。メモリ・アレイに書
き込まれるデータは、一時的にP2MQ300に格納さ
れ、一方、メモリ・アレイから読み出されたデータは一
時的にM2PQ350に格納される。同様に、PCIバ
ス制御部204によってメモリに書き込まれるデータ
は、PCI−メモリ・キュー(PCI2MQ)400に
バッファ記憶され、PCI制御部204によってメモリ
から読み出されたデータは、メモリ−PCIキュー(M
2PCIQ)450にバッファ記憶される。
【0015】また、メモリ/PCIブリッジ・コントロ
ーラ200は、多数のメモリ・クロック信号を発生する
メモリ・クロック発生器500も含む。図2には、メモ
リ・クロック1、メモリ・クロック2及びメモリ・クロ
ック3として、3つのクロック信号が示されている。3
つに限定されるものではないことは言うまでもない。メ
モリ・クロック発生器500は、メモリ/PCIブリッ
ジ・コントローラ200の一部として示されているが、
別個のコンポーネントとして構成してもよい。以下で説
明するように、メモリ・クロック信号は、システム・ク
ロック(プロセッサ・バス・クロックとも呼ぶ)から生
成される。メモリ・クロック信号は、異なる周波数を含
んでもよく、これにより、コンピュータ・システム10
0において異なる速度のSDRAMを使用することを可
能とする。メモリ・クロック発生器500は、該発生器
への入力として供給されるBIOSデータに基づいて、
適切なクロック周波数を供給するようにプログラムされ
ている。BIOSデータは、各バンク内に含まれている
SDRAMの形式を識別する。
【0016】SDRAMデバイスがプロセッサ102と
は異なる速度で動作する場合があるので、データ・キュ
ーP2MQ300、M2PQ350、PCI2MQ40
0及びM2PCIQ450は、メモリ・アレイとプロセ
ッサ102との間、及びメモリ・アレイ114とPCI
バス・マスタのと間のデータ・フローの同期を取るよう
に機能する。したがって、コンピュータ・システム10
0は、SDRAMデバイスの各バンクに対して、1組の
データ・キュー300、350、400、450を含む
ことが好ましい。図2において、メモリ/PCIブリッ
ジ・コントローラ200は、SDRAMデバイスの1つ
のバンクに対するデータ・キューのみを含むように示さ
れているが、メモリ/PCIブリッジ・コントローラ2
00は、更に別のSDRAMがメモリ・アレイ114に
含まれている場合には、追加のデータ・キューのセット
(300、350、400、450)を含むことができ
る。データ・キュー及びメモリ・クロック発生器500
の動作については、以下で更に詳しく説明する。
【0017】プロセッサ−メモリ・キュー(P2MQ) 図2及び図3を参照する。システム・プロセッサ102
(図1)からメモリへ114(図1)のライト・サイク
ルの間、データ及びアドレス信号は、プロセッサ−メモ
リ・キューP2MQ300を通過する。図3に示すよう
に、P2MQ300は、入力キュー・ロジック304、
出力キュー・ロジック308、キュー・ライト・バッフ
ァ320、及び信号同期部(信号シンセサイザ)302
を含む。データ及びアドレス信号に加えて、プロセッサ
102は、プロセッサ・クロック信号及び非同期レディ
信号を含む、所定の制御信号もプロセッサ−メモリ・キ
ューP2MQ300に伝達する。また、プロセッサ10
2は、サイクル終了信号及びバッファ・フル信号を含む
2つの制御信号をP2MQ300から受け取る。メモリ
制御部206は、メモリ・クロック信号及びサイクル終
了信号をP2MQ300に供給する。P2MQ300
は、非同期レディ制御信号を一次コントローラすなわち
プロセッサ制御部202に供給する。
【0018】プロセッサ制御部202は、データ、アド
レス及びサイクル情報を、P2MQ300及びバス32
1に転送する。サイクル情報は、通常、バイト・イネー
ブル、ライト・バック・ビット、及びバースト・ビット
のような情報を含み、既知の技法にしたがってリード及
びライトに用いられる。キュー・ライト・バッファ32
0は、バス321に接続しており、好ましくは、4つの
バッファ、即ち、バッファ0、バッファ1、バッファ
2、及びバッファ3を含む。キュー・ライト・バッファ
320の各バッファは、幅が1キャッシュ・ラインであ
ることが好ましく、これにより、アドレス及びサイクル
情報と共に、32バイトのデータを保持することができ
る。しかしながら、キュー・ライト・バッファ320
は、いずれの数のバッファでも含むことができ、各バッ
ファの幅はいずれのビット数でもよいことは言うまでも
ない。
【0019】入力キュー・ロジック304は、キュー・
ライト・バッファ320内のどのバッファが、バス32
1上のライト・データを受け取るのかについて判定を行
う。入力キュー・ロジック304は、入力キュー・ポイ
ンタ307をキュー・ライト・バッファ320に供給
し、4つのバッファ0〜3のどれから、プロセッサ制御
部202は書き込むべきデータを受け取るのかを識別す
る。このとき、バッファ0が満杯になると、入力キュー
・ポインタ307はポイントを増分してバッファ1を示
し、これにより、バッファ1にはプロセッサ制御部20
2からのデータが格納される。入力キュー・ロジック3
04は、いつ入力キュー・ポインタ307を増分すべき
かを判定するロジックを含む。バッファが満杯になった
とき、プロセッサ制御部202は、ライン305上の非
同期レディ信号をアサートする。非同期レディ信号は、
入力キュー・ロジック304及び信号同期部302への
入力として供給される。非同期レディ信号が各バッファ
0〜3関連付けられて供給される。バッファに関連付け
られた非同期レディ信号は、メモリ制御部206に中継
され、関連するバッファが、メモリ制御部206が読み
取るべきデータを含むことを示す。アサートされた非同
期レディ信号の検出時に、入力キュー・ロジック304
は入力キュー・ポインタ307を増分する。
【0020】入力キュー・ロジック304は、レジスタ
318も含み、レジスタ318は、キュー・ライト・バ
ッファ320内のバッファの各々に対応するステータス
・ビットを含む。各バッファ・ステータス・ビットは、
関連するバッファがメモリ制御部206によって読み出
されたか否かを示す。プロセッサ制御部202によって
バッファにデータが供給されると、レジスタ318内の
対応するバッファ・ステータス・ビットがセットされ
て、当該バッファ内にデータがあり、メモリ制御部20
6はバッファから未だデータを読み取っていないことを
示す。レジスタ318内の各バッファ・ステータス・エ
ンピィティ・ビットは、メモリ制御部206が、当該バ
ッファ・ビットに関連するバッファからデータを読み取
ったときにクリアされる。レジスタ318内のバッファ
・ステータス・ビットの状態を更新し監視することによ
って、入力キュー・ロジック304は、いつキュー・ラ
イト・バッファ320が満杯になったかを判定すること
ができるので、プロセッサ制御部202は、メモリ制御
部206が未だ読み出していない有効なバッファ・デー
タを上書きしてしまうことはない。満杯のキュー・ライ
ト・バッファ320を検出すると、入力キュー・ロジッ
ク304はライン310上にバッファ・フル信号をアサ
ートし、プロセッサ制御部202にバッファの満杯状態
を通知する。これに応答して、プロセッサ制御部202
は、メモリ制御部206がバッファ0〜3の1つからデ
ータを読み出し終わるまで、キュー・ライト・バッファ
320に追加のデータを書き込まない。そして、読み出
しが終了すると、1つのライト・バッファを新しいライ
ト・データのために解放する。入力キュー・ロジック3
04は、メモリ制御部206が既に満杯になっていたバ
ッファからデータを読み出すと、バッファ・フル信号を
ディアサートする。
【0021】更に図2及び図3を参照する。出力キュー
・ロジック308は、レジスタ319及び出力キュー・
ポインタ309を含む。レジスタ319は、キュー・ラ
イト・バッファ320内の各バッファに対する有効ビッ
トを含む。レジスタ319内の各バッファ有効ビット
は、関連するバッファに、メモリ制御部206が未だ読
み出していないデータがあるか否かについての識別を行
う。プロセッサ制御部202によってデータがバッファ
に書き込まれると、ライン305上の非同期レディ信号
が、プロセッサ制御部202によってアサートされる。
非同期レディ信号は、ライン306上においても信号同
期部302によってアサートされ、メモリ制御部206
及び出力キュー・ロジック308に供給される。出力キ
ュー・ロジック308は、非同期レディ信号を用いて、
この非同期レディ信号に関連する有効ビットをセット
し、メモリ制御部206が読み取るべきデータがバッフ
ァに含まれていることを示す。一旦メモリ制御部206
がバッファからデータを読み出したならば、レジスタ3
20内の対応する有効ビットがクリアされ、これによ
り、メモリ制御部206が既に読み出されたバッファに
戻って再度読み出すのを防止する。このように、バッフ
ァが読み取られる前及び読み取られるときに、当該バッ
ファの有効ビットの状態を確認し、このバッファを読み
出すか否かについて判定を行う。
【0022】出力キュー・ポインタ309により、メモ
リ制御部206がデータを読み出すバッファを識別す
る。リセットされると、入力及び出力キュー・ポインタ
は同じバッファを指し示す。メモリ制御部206がバッ
ファ0〜3の1つからのデータ読み出しを完了したと
き、出力キュー・ロジック308は出力キュー・ポイン
タ309を増分する。したがって、出力キュー・ポイン
タ309は、メモリ制御部206が読み出すべき次のバ
ッファを指し示す。一旦メモリ制御部206がバッファ
0〜3の1つからのデータ読み出しを完了したなら、メ
モリ制御部206は、信号同期部302に至るライン3
31上のサイクル終了信号をアサートする。好適な実施
形態では、1つのサイクル終了信号が、キュー・ライト
・バッファ320内の各バッファ毎に供給される。ま
た、サイクル終了信号は、ライン301上においても信
号同期部302によってアサートされ、プロセッサ制御
部202に供給され、メモリ制御部206が、サイクル
終了信号によって識別されたバッファからデータを読み
出したことを示す。
【0023】本発明は、プロセッサがシステム・メモリ
内の1つ以上のSDRAMバンクに対してデータの読み
出し及び書き込みを行うことを可能とし、更に各SDR
AMバンクがプロセッサ・クロックとは異なるクロック
周波数で動作することも可能とする。P2MQ300
は、ライン311上のプロセッサ・クロック信号及びラ
イン312上のメモリ・クロック信号を受け取る。入力
キュー・ロジック304は、プロセッサ・クロック信号
を用いて、データをキュー・ライト・バッファ320に
転送する。信号同期部302及び入力キュー・ロジック
304は、ライン311に接続し、プロセッサ・クロッ
ク信号を受け取る。同様に、信号同期部302及び出力
キュー・ロジック308はライン312に接続し、メモ
リ・クロック信号を受け取る。システム・プロセッサと
P2MQ300との間のインターフェースは、プロセッ
サ・クロック領域で行われる。しかしながら、メモリ・
アレイとP2MQ300との間のインターフェースは、
メモリ・クロック領域で行われる。メモリ・クロックは
出力キュー・ロジック308に供給され、データは、メ
モリ・クロック信号を用いるメモリ制御部206によっ
て、キュー・ライト・バッファ320から読み出され
る。P2MQ300はプロセッサ制御部202及びメモ
リ制御部206とのインターフェースを、それらの各ク
ロック信号を用いて行うので、プロセッサ102は、プ
ロセッサ102とは異なる周波数で動作するSDRAM
回路にデータを書き込むことができる。
【0024】信号同期部 信号同期部302は、データ・バッファを備え、プロセ
ッサ制御部202とメモリ制御部206とのクロック非
同期動作を可能とすることに加えて、P2MQ300
は、2つの異なるクロック領域(プロセッサ・クロック
及びメモリ・クロック)の同期を取るように機能する。
再度図2及び図3を参照する。信号同期部302は、好
ましくは、非同期レディ信号及びサイクル終了信号の同
期を取ることが好ましい。信号同期部302は、プロセ
ス・クロック領域においてアサートされた信号が、メモ
リ・クロック領域において動作するメモリ制御部206
によって検出可能であり、メモリ・クロック領域におい
てアサートされた信号が高精度でプロセッサ制御部20
2によって検出可能であることを、保証する。
【0025】同期を取る際、好ましくは、信号を伸長す
ることにより、追加のクロック・パルスの期間にわたっ
てアサートされるようにする。図3及び図4の(a)に
示すように、信号同期部302は、好ましくは、タイミ
ング・ロジック332、及び直列接続された2つのフリ
ップ・フロップ334、335を含む。フリップ・フロ
ップ334、335は、D型ラッチで構成することが好
ましいが、他のデバイスも同様に使用可能である。図4
の(a)には、ライン331上のサイクル終了信号をプ
ロセッサ・クロックに同期させるための回路を示すが、
非同期レディ信号のような他の信号を同期させるために
も、同等の回路を用いることが好ましいことは理解され
よう。
【0026】図4の(b)は、図4の(a)のタイミン
グ・ロジック回路332の信号発生タイミングを示す。
サイクル終了信号は、メモリ・クロック領域においてメ
モリ制御部206によってアサートされ、タイミング・
ロジック332はサイクル終了信号を伸長し、図4の
(b)において破線333a、333bで示すように、
2つのメモリ・クロックの立ち上がりエッジを含ませ
る。この伸長は、サイクル終了信号が十分な時間幅を有
し、プロセッサ制御部202が確実に検出できるように
するために必要である。ライン333上の伸長サイクル
終了信号は、フリップ・フロック334、335にクロ
ックに同期して入力され、プロセッサ制御部202に至
るライン301上の出力信号として与えられる。フリッ
プ・フロップ334、335は双方とも、プロセッサ・
クロック311を用いて駆動される。好適な実施形態で
は、フリップ・フロップ334、335は、立ち上がり
クロック・エッジでトリガされるが、立ち下がりエッジ
でトリガされるフリップ・フロップも使用可能である。
【0027】このようにして、サイクル終了信号がメモ
リ制御部206によってアサートされ、タイミング・ロ
ジック332によって伸長された後、フリップ・フロッ
プ334は、ライン311上のプロセッサ・クロックの
立ち上がりエッジによって駆動される。次いで、プロセ
ッサ・クロックの次の立ち上がりエッジ上で、伸長サイ
クル終了信号は、フリップ・フロップ335を通過する
ように駆動される。2つの順次駆動されるフリップ・フ
ロップを用いることによって、設定及び保持タイミング
の問題を回避する。この問題は、(元々メモリ・クロッ
ク領域においてアサートされた)サイクル終了信号が十
分長い間アサートされず、(プロセッサ・クロック領域
で駆動される)フリップ・フロップが信号をその出力ピ
ンにラッチできない場合に発生し得るものである。した
がって、単一のフリップ・フロップのみを用いる場合、
該フリップ・フロップは疑似安定状態(metastable stat
e)に入るが、デュアル・クロック・フリップ・フロップ
の使用により、この問題が回避される。
【0028】尚、伸長サイクル終了信号がメモリ・クロ
ックの2サイクルを有する場合、プロセッサ・クロック
のサイクルTpは、メモリ・クロックのサイクルTmの
2倍からフリップ・フロップのステップアップ(サンプ
リング)/ホールド時間Tfを減算した値未満としなけ
ればならないことは秋からであろう。即ち、 Tp≦2Tm−Tf (1) となる。例えば、100MHzのメモリ・クロックは、
1/(100x106)、即ち、10ナノ秒(ns)が
1サイクルとなる。フリップ・フロップのサンプリング
/ホールド時間が2ナノ秒の場合、プロセッサ・クロッ
クの期間は、2(10ns)−2ns=18ns未満と
しなければならない。18nsの期間は、1/18x1
-9、即ち、55.6MHzのプロセッサ・クロック周
波数に対応する。したがって、メモリ/PCIブリッジ
・コントローラ200は、プロセッサ102及びPCI
マスタ・デバイス108、110が、異なる周波数で動
作するSDRAMデバイスと通信することを可能にする
が、式(1)は、プロセッサ・クロックの周波数に対す
る下限を規定する。
【0029】図4の(a)の回路は、プロセッサ・クロ
ック領域における非同期レディ信号をメモリ・クロック
領域と同期させるためにも用いられる。しかしながら、
この場合、プロセッサ・クロックを用いてフリップ・フ
ロップ302a、302bを駆動する代わりに、メモリ
・クロックを用い、メモリ・クロックのサイクルTm
は、以下の式を満たさなければならない。 Tm≦2Tp−Tf (2) 信号をPCIバスに同期させる場合、2倍を4倍に置き
換えることを除いて、式(1)及び(2)を用いること
ができる。プロセッサ・クロック及びメモリ・クロック
が同相である場合、非同期レディ信号及びサイクル終了
信号は、信号同期部302によって同期を取る必要はな
い。したがって、この場合、非同期レディ信号及びサイ
クル終了信号は信号同期部302を迂回する。プロセッ
サ・クロック及びメモリ・クロックが同相となるのは、
それらの立ち上がりエッジが揃う場合であり、これが見
られるのは、これらクロックの周波数が同一である場
合、又は一方のクロック信号の周波数が他方のクロック
信号の周波数の整数倍である場合である。同様に、プロ
セッサ・クロック及びメモリ・クロックが同相の場合、
buff_rdy信号(図5)も、信号同期部302を迂回して
よい。
【0030】次に、図2及び図5を参照する。メモリ−
プロセッサ・キュー(M2PQ)350は、好ましく
は、入力キュー・ロジック355、出力キュー・ロジッ
ク360、キュー・リード・バッファ370、及び信号
同期部302を含む。キュー・リード・バッファ370
は、2つのデータ・バッファ、即ち、バッファ0及びバ
ッファ1を含むことが好ましい。メモリ・アレイからシ
ステム・プロセッサへ読み出されたデータは、キュー・
リード・バッファ370内のデータ・バッファ0、バッ
ファ1の一方に一時的に格納することが好ましい。デー
タは、メモリ制御部206によってデータ・バッファ0
及びバッファ1内に格納され、かつプロセッサ制御部2
02によって読み出される。
【0031】キュー・リード・バッファ370内のバッ
ファ0、バッファ1は、好ましくは、4つのセグメン
ト、即ち、キュー・ワード371、372、373、3
74を含む。各セグメントは、好ましくは、8ビット幅
であり、したがってバッファ0、1はそれぞれ32バイ
ト幅となる。入力キュー・ロジック355は、メモリ制
御部206からメモリ−プロセッサ・レディ(M2PR
DY)信号を受け取り、入力バッファ・ポインタ356
及び入力キュー・ワード・ポインタ357をキュー・リ
ード・バッファ370に供給する。入力バッファ・ポイ
ンタ356は、バッファを識別し、一方、入力キュー・
ワード・ポインタ357は、メモリ制御部206によっ
てデータが内部に記憶されたキュー・ワードを識別す
る。メモリ制御部206がデータをキュー・リード・バ
ッファ370に供給すると、メモリ制御部206は、入
力キュー・ロジック355へのM2PRDY信号をアサ
ートする。これに応答して、入力キュー・ロジック35
5は、データを格納すべきバッファ及びバッファ位置を
識別する。バッファは、入力バッファ・ポインタ356
によって識別される。入力キュー・ロジック355は、
入力キュー・ワード・ポインタ357を増分し、データ
の次のワードがメモリ制御部206によって駆動され
る、キュー・ワードを識別する。一旦バッファ内におけ
るトランザクションのためのデータが受け取られたなら
ば、メモリ制御部206は、信号同期部302へのバッ
ファ・レディ(buff_rdy)信号をアサートし、一方、信号
同期部302は、buff_rdy信号をプロセッサ制御部20
2に伝達する。buff_rdy信号は、プロセッサ制御部20
2に、バッファが満杯であり、プロセッサ制御部202
が読み出す準備ができていることを示す。
【0032】出力キュー・ロジック360は、同様に、
出力バッファ・ポインタ361及び出力キュー・ワード
・ポインタ362を出力し、プロセッサ制御部202が
キュー・リード・バッファ370から適切なデータを読
み取ることができるようにする。プロセッサ制御部20
2は、ポインタ増分信号を出力キュー・ロジックに供給
する。このポインタ増分信号は、プロセッサ制御部20
2がアサートされたbuff_rdy信号を検出したときに出力
される。ポインタ増分信号に応答して、出力キュー・ロ
ジック360は、出力バッファ・ポインタ361を増分
し、プロセッサ制御部202が、適切なバッファからの
データの最初のキュー・ワードを読み出すことができる
ようにする。次に、出力キュー・ロジック360は、出
力キュー・ワード・ポインタ362を増分し、プロセッ
サ制御部202がデータの後続キュー・ワードを読み出
すことができるようにする。
【0033】PCIバス上のデバイスとSDRAMメモ
リ114(図2)との間のデータ・リード及びデータ・
ライトは、プロセッサ及びメモリ間のリード及びライト
に関してこれまでに説明したものと同様のロジックを用
いる。PCI−メモリ・キュー(PCI2MQ)400
は、好ましくは図3におけるP2MQ300と同様に構
成し、メモリ−PCIキュー(M2PCIQ)450
は、好ましくは図5におけるM2PQ350と同様に構
成する。PCIバス制御部204は適切なPCIプロト
コル信号を伝達しかつ受け取り、PCIバス上に位置す
る構成要素とのインターフェースを行うことは当業者に
は明らかであろう。信号同期を必要とする範囲において
は(即ち、PCIクロック及びメモリ・クロックが位相
外れの場合)、信号同期部302を用いる。
【0034】再び図1を参照するが、コンピュータ・シ
ステム100は、異なるクロック周波数及び別のタイミ
ング・パラメータを必要とするSDRAMデバイスのバ
ンクとの通信を可能にすることが好ましい。メモリ/P
CIブリッジ・コントローラ200がメモリ・アレイ1
14に対するデータ・ライト及びデータ・リードを実行
するためには、コンピュータ・システム100は、シス
テム・メモリ内にあるSDRAMデバイスの形式を判定
する必要がある。メモリ形式情報は、メモリ/PCIブ
リッジ・コントローラ200に供給され、該コントロー
ラ200は、この情報を用いて、適切な周波数のクロッ
クをSDRAM114の各バンクに駆動すると共に、メ
モリ・チップの各バンク毎に適した他のタイミング・パ
ラメータを出力する。
【0035】システム・メモリ内にあるSDRAMデバ
イスの形式を判定するためには種々の技法が可能である
が、コンピュータ・システム100は、SDRAM形式
のメモリ・アレイ114内に格納されているシリアル存
在検出(SPD:Serial Presence Detect)情報を用い
ることが好ましい。SPD規格は、メモリ・デバイスの
種々の特徴を定義し、その情報を永久的にメモリ・デバ
イスに記憶しておく。SPD情報を収容するメモリ・デ
バイス内の位置は、通常のリード・サイクルによってア
クセスすることができる。好適な実施形態によれば、コ
ンピュータ・システム100は、システムの初期化の間
に、メモリ・アレイ114の全てのバンクからSPD情
報を読み出し、コンピュータ内のBIOS機構を用い
て、この情報をメモリ/PCIブリッジ・コントローラ
200に供給する。SPD規格は、SPD規格にしたが
って設計される全てのメモリ・デバイスが以下の情報を
備えていることを必要としている。
【0036】
【表1】
【0037】このようにして、コンピュータ・システム
100は、基本メモリ形式に対応するSPD情報(表1
に示す)の第2バイトを読み取ることによって、SDR
AMデバイスがあるか否かについて判定することができ
る。SPD規格によれば、SDRAMデバイスは、SP
D情報の第2バイトにある16進値によって識別する。
更に、バイト73〜90内の製造者の部品番号のような
他のSPD情報にアクセスすることによって、コンピュ
ータ・システム100は、存在するSDRAMデバイス
の具体的な形式を判定することができ、したがって、回
路が好適なクロック周波数及びタイミング特性を有する
ことを判定することができる。
【0038】図6に示されるように、メモリ・クロック
発生器500は、BIOSデータ・インタープリタ51
0、バンク速度制御レジスタ520、及びメモリ・タイ
ミング制御レジスタ522を含む。初期化時にSDRA
Mバンクに対するSPD情報にアクセスしたなら、その
情報は、メモリ/PCIブリッジ・コントローラ200
のメモリ・クロック発生器500にBIOSデータとし
て供給される。図6に示すように、SDRAMデバイス
の各バンク毎の具体的な情報を、BIOSデータ・イン
タープリタ510に供給する。メモリ特定BIOS情報
は、BIOSデータ・インタープリタ510によって解
釈され、当該メモリ・デバイスに適切なメモリ・クロッ
ク周波数を判定し、そのクロック周波数情報をバンク速
度制御レジスタ520に格納する。バンク速度制御レジ
スタ520のサイズは、コンピュータ・システム100
内に実装可能なバンク数、及びメモリ・クロック発生器
500が供給可能な異なるクロック周波数の数によって
異なる。一例として、バンク速度制御レジスタ520
は、16ビット・レジスタとし、各2ビットを8つのメ
モリ・バンクに対する速度制御定義専用とすることがで
きる。2ビットのバンク速度制御定義によって、4つの
異なるメモリ・クロック周波数の1つを選択することが
できる。コンピュータ・システム100内で5つ以上の
メモリ・クロック周波数が使用可能である場合、バンク
速度制御レジスタ520を拡張し、速度制御情報の追加
ビットを含ませることができる。表2は、バンク速度制
御レジスタ520内の速度制御定義を2ビットとした場
合の、SDRAMデバイスの各バンク毎に可能な4つの
クロック周波数を示している。
【0039】
【表2】
【0040】各メモリ速度0〜3は、66MHz、10
0MHz又はその他のあらゆる適切なSDRAMクロッ
ク周波数のような、任意のSDRAMクロック周波数と
することも可能である。図6に示すように、メモリ・ク
ロック発生器500には、クロック発生器がSDRAM
クロック周波数を得る元となるシステム・クロックが供
給される。多数の周波数乗算器501、502及び分周
器504を、マルチプレクサ506、530と共に用
い、適切なクロック周波数を選択する。図6に示す乗算
器及び分周器の組み合わせは、一例に過ぎず、クロック
発生器500が供給可能でなければならない特定のSD
RAM周波数に応じて、追加の乗算器及び分周器を用い
てもよい。
【0041】図示のように、乗算器501、502は、
システム・クロックの周波数を係数n及びmとそれぞれ
乗算する。ここで、m及びnは任意の整数又は分数とす
ることができる。同様に、分周器504は、それらの入
力周波数を、任意の整数又は分数pで分割する。したが
って、分周器504からのライン503上の出力周波数
は、システム・クロックの周波数をmで乗算し、pで除
算した値となる(即ち、システム・クロック周波数×m
/p)。したがって、m、n、及びpの選択によって、
メモリ・クロック信号に使用可能な周波数が決定され
る。4種類の異なる周波数を有するクロックは、ライン
503、505、507、509上の入力信号として、
マルチプレクサ506、530に供給される。ライン5
03上のクロックの周波数は、システム・クロックをm
/p倍した値である。ライン505上のクロックの周波
数は、システム・クロックをm倍した値である。ライン
507上のクロック信号の周波数は、システム・クロッ
ク周波数をn倍した値である。最後に、システム・クロ
ック周波数も、ライン509上で、マルチプレクサ50
6、530への入力として供給される。メモリ・クロッ
ク発生器500に、追加のクロック信号を発生する能力
を備えることが望ましい場合、マルチプレクサ506、
530は追加の入力を含むことになる。
【0042】ライン526、527上のクロック切り換
え制御信号は、マルチプレクサ506、530の4つの
入力クロックの内どれを、関連するSDRAMバンクへ
出力クロックとして供給すべきかについて判定を行う。
尚、4入力1出力(4:1)マルチプレクサ(図6に示
す)では、2つの制御ビットが出力信号を判定するため
に必要である。マルチプレクサ506が5つ以上の入力
信号を含む場合、制御ビット数の増大が必要となる。例
えば、8:1マルチプレクサでは、3つの切り換え制御
ビットが必要となる。ライン526、527上のクロッ
ク切り換え制御信号は、クロック切り換えロジック52
5によって発生する。クロック切り換えロジック525
は、バンク制御速度レジスタ520によって定義される
ように、適切な制御信号を生成する。各バンクに関連す
る2つの速度制御ビットを読み込むことによって、クロ
ック切り換えロジック525は、適切な切り換え制御ビ
ットを発生し、各マルチプレクサ506に、速度制御ビ
ットに対応するクロック周波数を供給させる。好適な実
施形態では、クロック切り換えロジックは、いずれの時
点においても、各マルチプレクサ毎に異なる周波数を選
択可能であることが好ましい。
【0043】マルチプレクサ535は、マルチプレクサ
506、530と同様に構成され、制御切り換えロジッ
ク525からの、ライン529上の信号によって制御さ
れる。マルチプレクサ535からの出力クロックの周波
数は状態機械(状態マシン)540に供給され、メモリ
/PCIブリッジ・コントローラ200の動作を、適切
に制御する。尚、状態機械540は、各SDRAMがリ
ード・サイクル又はライト・サイクルのためにアクセス
される際に、各SDRAMの速度を一致させなければな
らないことは明らかであろう。したがって、クロック切
り換えロジック525は、制御ライン529をセット
し、現リード・サイクル又はライト・サイクルのため
に、マルチプレクサ506又は530のいずれかによっ
て選択されたクロック周波数と同じ周波数のクロックを
マルチプレクサ535から選択する。例えば、マルチプ
レクサ506によってメモリ・クロック1が供給される
SDRAMバンクに対するリード・サイクルが保留とな
っている場合、制御切り換えロジック525は、マルチ
プレクサ535に、その同じクロック周波数を状態機械
540に供給するように指令する。
【0044】適切なメモリ・クロック周波数を発生し選
択することに加えて、他のメモリ・タイミング・パラメ
ータも決定しなければならない。BIOSデータ・イン
タープリタ510は、受け取ったSPD BIOS情報
に基づいてこれらタイミング・パラメータを決定し、メ
モリ・タイミング制御レジスタ522をプログラムす
る。表3は、メモリ・タイミング制御レジスタ・ビット
定義の一例を示す。別個のメモリ・タイミング・レジス
タを各SDRAMバンク毎に備えることが好ましく、各
タイミング・レジスタが当該バンクにタイミング特定情
報を供給する。
【0045】
【表3】
【図面の簡単な説明】
【図1】本発明の一実施例のコンピュータ・システムの
ブロック図である。
【図2】図1の実施例におけるメモリ/PCIブリッジ
・コントローラのブロック図である。
【図3】図2メモリ/PCIブリッジ・コントローラに
具備されるプロセッサ−メモリ・データ・キューを更に
詳細に示すブロック図である。
【図4】2つのクロック領域間で信号を変換するための
デュアル・フリップ・フロップ回路を示すブロック図、
及びそのタイミング図である。
【図5】図2のメモリ/PCIブリッジ・コントローラ
に具備されるメモリ−プロセッサ・データ・キューを更
に詳細に示すブロック図である。
【図6】図2のメモリ/PCIブリッジ・コントローラ
に具備されるメモリ・クロック発生器のブロック図であ
る。
───────────────────────────────────────────────────── フロントページの続き (71)出願人 591030868 20555 State Highway 249,Houston,Texas 77070,United States o f America (72)発明者 クリストファー・ジェイ・ペティ アメリカ合衆国テキサス州77070,ヒュー ストン,ロジャース・ロード 9327

Claims (39)

    【特許請求の範囲】
  1. 【請求項1】 コンピュータ・システムであって、 プロセッサと、 ホスト・バスを通じて、前記プロセッサに結合されたメ
    モリ・コントローラと、 SDRAMメモリの少なくとも第1及び第2のバンクを
    含むメモリ・アレイとから成り、 前記メモリ・コントローラが、第1のクロック信号を発
    生して、これをSDRAMメモリの第1のバンクに供給
    し、前記メモリ・コントローラが、第2のクロック信号
    を発生して、これをSDRAMメモリの第2のバンクに
    供給することを特徴とするコンピュータ・システム。
  2. 【請求項2】 請求項1記載のコンピュータ・システム
    において、前記メモリ・コントローラが、SDRAMメ
    モリの第1及び第2のバンクの各々と前記プロセッサと
    の間を転送されるデータをバッファ記憶するための第1
    のデータ・キューを含むことを特徴とするコンピュータ
    ・システム。
  3. 【請求項3】 請求項2記載のコンピュータ・システム
    において、前記第1のデータ・キューが、前記プロセッ
    サからSDRAMメモリのバンクへのライト・サイクル
    の間、一時的にデータを格納することを特徴とするコン
    ピュータ・システム。
  4. 【請求項4】 請求項3記載のコンピュータ・システム
    において、該システムは更に、前記SDRAMメモリか
    ら前記プロセッサへのリード・サイクルの間、データ信
    号をバッファ記憶する第2のデータ・キューを含むこと
    を特徴とするコンピュータ・システム。
  5. 【請求項5】 請求項4記載のコンピュータ・システム
    において、前記メモリ・コントローラが、前記第1及び
    第2のクロック信号を発生するメモリ・クロック発生器
    を含むことを特徴とするコンピュータ・システム。
  6. 【請求項6】 請求項1記載のコンピュータ・システム
    において、前記第1のクロック信号が第1の周波数で動
    作し、前記第2のクロック信号が、前記第1の周波数と
    は異なる第2の周波数で動作することを特徴とするコン
    ピュータ・システム。
  7. 【請求項7】 請求項5記載のコンピュータ・システム
    において、前記第1及び前記第2データ・キューが、前
    記第1及び前記第2のクロック信号間で信号の同期を取
    るための信号同期部を含むことを特徴とするコンピュー
    タ・システム。
  8. 【請求項8】 請求項7記載のコンピュータ・システム
    において、前記信号同期部が、従属接続された2つのフ
    リップ・フロップからなることを特徴とするコンピュー
    タ・システム。
  9. 【請求項9】 請求項8記載のコンピュータ・システム
    において、前記フリップ・フロップが、双方とも、プロ
    セッサ・バス・クロック信号によって駆動されることを
    特徴とするコンピュータ・システム。
  10. 【請求項10】 請求項8記載のコンピュータ・システ
    ムにおいて、前記フリップ・フロップが、双方とも、メ
    モリ・クロック信号によって駆動されることを特徴とす
    るコンピュータ・システム。
  11. 【請求項11】 請求項8記載のコンピュータ・システ
    ムにおいて、前記第1のデータ・キューが、前記プロセ
    ッサからのライト・データを格納するための複数のライ
    ト・バッファを含み、システム・クロック信号を用い
    て、前記ライト・データを前記ライト・バッファに格納
    することを特徴とするコンピュータ・システム。
  12. 【請求項12】 請求項11記載のコンピュータ・シス
    テムにおいて、前記ライト・データは、メモリ・クロッ
    ク信号を用いて、前記ライト・バッファから前記SDR
    AMに書き込まれることを特徴とするコンピュータ・シ
    ステム。
  13. 【請求項13】 請求項12記載のコンピュータ・シス
    テムにおいて、前記第1のデータ・キューが入力キュー
    ・ロジック及び出力キュー・ロジックを含み、前記入力
    キュー・ロジックが、前記ライト・バッファに対する入
    力キュー・ポインタを含み、前記出力キュー・ロジック
    が前記ライト・バッファに対する出力キュー・ポインタ
    を含むことを特徴とするコンピュータ・システム。
  14. 【請求項14】 請求項13記載のコンピュータ・シス
    テムにおいて、前記入力キュー・ロジックが、各ライト
    ・バッファに関連付けられたバッファ・ステータス・ビ
    ットを含み、該バッファ・ステータス・ビットにより、
    関連するバッファ内のライト・データがSDRAMメモ
    リに書き込まれたか否かを示すことを特徴とするコンピ
    ュータ・システム。
  15. 【請求項15】 請求項14記載のコンピュータ・シス
    テムにおいて、前記出力キュー・ロジックが、各ライト
    ・バッファに関連付けられた有効ビットを含み、該有効
    ビットにより、関連するバッファ内のライト・データが
    SDRAMメモリに書き込まれたか否かを示すことを特
    徴とするコンピュータ・システム。
  16. 【請求項16】 請求項15記載のコンピュータ・シス
    テムにおいて、前記第2のデータ・キューが、リード・
    データを格納するための複数のリード・バッファを含
    み、前記メモリ・クロック信号を用いて、前記リード・
    データを前記リード・バッファに格納し、前記システム
    ・クロック信号を用いて、該リード・バッファに格納し
    たリード・データを前記リード・バッファから抽出し、
    前記プロセッサに供給することを特徴とするコンピュー
    タ・システム。
  17. 【請求項17】 請求項16記載のコンピュータ・シス
    テムにおいて、前記第2のデータ・キューが、前記リー
    ド・バッファに対するポインタを含み、前記第2のデー
    タ・キューによって、アサートされたメモリ・レディ信
    号が受け取られるときに、前記ポインタを増分すること
    を特徴とするコンピュータ・システム。
  18. 【請求項18】 コンピュータ・システムであって、 プロセッサ・バス・クロック信号と同期して動作するプ
    ロセッサと、 ホスト・バスを通じて、前記プロセッサに結合されたメ
    モリ・コントローラと、 メモリ・クロック信号に基づいて動作する少なくとも1
    つのSDRAMメモリの少なくとも1つのバンクと、 システム・クロック信号を受け取って、前記メモリ・ク
    ロック信号を発生するメモリ・クロック発生器とからな
    ることを特徴とするコンピュータ・システム。
  19. 【請求項19】 請求項18記載のコンピュータ・シス
    テムにおいて、SDRAMメモリは複数のバンクを備え
    ており、前記メモリ・クロック発生器が、SDRAMメ
    モリの各バンクに結合されたマルチプレクサを含み、該
    マルチプレクサが、複数のメモリ・クロック信号から選
    択してSDRAMメモリの各バンクに供給することを特
    徴とするコンピュータ・システム。
  20. 【請求項20】 請求項19記載のコンピュータ・シス
    テムにおいて、前記メモリ・クロック発生器が、バンク
    速度制御レジスタと、メモリ・タイミング制御レジスタ
    とを含むことを特徴とするコンピュータ・システム。
  21. 【請求項21】 請求項20記載のコンピュータ・シス
    テムにおいて、SDRAMの各バンクに関連付けられた
    シリアル存在検出情報が、各SDRAMメモリ・バンク
    に格納され、前記メモリ・クロック発生器が、各SDR
    AMメモリ・バンクから前記シリアル存在検出情報を受
    け取るデータ・インタープリタを含み、該データ・イン
    タープリタが、前記バンク速度制御レジスタにおける速
    度を表す値と、前記メモリ・タイミング制御レジスタ内
    のタイミング・パラメータを格納することを特徴とする
    コンピュータ・システム。
  22. 【請求項22】 請求項21記載のコンピュータ・シス
    テムにおいて、前記マルチプレクサが、クロック切り換
    え制御信号によって制御され、前記クロック切り換え制
    御信号の状態が、前記バンク速度制御レジスタ内に格納
    された速度を表す値によって決定されることを特徴とす
    るコンピュータ・システム。
  23. 【請求項23】 コンピュータ・システムであって、 プロセッサと、 ホスト・バスによって前記プロセッサに結合されたメモ
    リ・コントローラと、 前記メモリ・コントローラに結合され、少なくとも第1
    及び第2のバンクを含むSDRAMメモリのメモリ・ア
    レイと、 前記メモリ・コントローラに含まれ、プロセッサ・バス
    ・クロック信号を与えるプロセッサ制御回路と、 メモリ・クロック信号を与えるメモリ制御回路と、 前記システム・クロック信号及び前記メモリ・クロック
    信号を受け取り、前記プロセッサ・バス・クロック信号
    と同期して前記プロセッサ制御回路にデータを転送し、
    前記メモリ・クロック信号と同期して前記メモリ・コン
    トローラにデータを転送するデータ・キューとからなる
    ことを特徴とするコンピュータ・システム。
  24. 【請求項24】 請求項23記載のコンピュータ・シス
    テムにおいて、前記メモリ・コントローラが、前記SD
    RAMメモリのバンクと連動して選択的に使用される多
    数のメモリ・クロック信号を発生するメモリ・クロック
    発生器を含むことを特徴とするコンピュータ・システ
    ム。
  25. 【請求項25】 請求項24記載のコンピュータ・シス
    テムにおいて、データ・キューが、前記プロセッサから
    前記SDRAMメモリへのライト・サイクルの間に、デ
    ータを一時的に格納することを特徴とするコンピュータ
    ・システム。
  26. 【請求項26】 請求項24記載のコンピュータ・シス
    テムにおいて、データ・キューが、前記SDRAMメモ
    リから前記プロセッサへのリード・サイクルの間に、デ
    ータを一時的に格納することを特徴とするコンピュータ
    ・システム。
  27. 【請求項27】 請求項26記載のコンピュータ・シス
    テムにおいて、前記多数のクロック信号が、異なる周波
    数を有することを特徴とするコンピュータ・システム。
  28. 【請求項28】 請求項27記載のコンピュータ・シス
    テムにおいて、SDRAMメモリの第1のバンクが、第
    1の周波数を有するクロック信号に基づいて動作し、第
    2のバンクが、第2の周波数を有するクロック信号に基
    づいて動作することを特徴とするコンピュータ・システ
    ム。
  29. 【請求項29】 請求項28記載のコンピュータ・シス
    テムにおいて、第2のデータ・キューが、前記プロセッ
    サ・バス・クロックと前記メモリ・クロックとの間で信
    号の同期を取る信号同期部を含むことを特徴とするコン
    ピュータ・システム。
  30. 【請求項30】 請求項29記載のコンピュータ・シス
    テムにおいて、前記信号同期部が、従属接続された、2
    つのフリップ・フロップを含むことを特徴とするコンピ
    ュータ・システム。
  31. 【請求項31】 請求項30記載のコンピュータ・シス
    テムにおいて、前記フリップ・フロップが、双方共、前
    記プロセッサ・バス・クロック信号によって駆動される
    ことを特徴とするコンピュータ・システム。
  32. 【請求項32】 請求項30記載のコンピュータ・シス
    テムにおいて、前記フリップ・フロップが、双方とも、
    前記メモリ・クロック信号によって駆動されることを特
    徴とするコンピュータ・システム。
  33. 【請求項33】 請求項30記載のコンピュータ・シス
    テムにおいて、前記データ・キューが、前記プロセッサ
    からのデータを格納するための複数のライト・バッファ
    を含み、前記システム・クロック信号を用いて、前記デ
    ータを前記ライト・バッファに格納することを特徴とす
    るコンピュータ・システム。
  34. 【請求項34】 請求項33記載のコンピュータ・シス
    テムにおいて、前記メモリ・クロック信号を用いて、前
    記データを前記ライト・バッファから前記SDRAMメ
    モリに書き込むことを特徴とするコンピュータ・システ
    ム。
  35. 【請求項35】 請求項34記載のコンピュータ・シス
    テムにおいて、前記データ・キューが入力キュー・ロジ
    ック及び出力キュー・ロジックを含み、前記入力キュー
    ・ロジックが、前記ライト・バッファに対する入力ポイ
    ンタを含み、前記出力キュー・ロジックが前記ライト・
    バッファに対する出力キュー・ポインタを含むことを特
    徴とするコンピュータ・システム。
  36. 【請求項36】 請求項35記載のコンピュータ・シス
    テムにおいて、前記入力キュー・ロジックが、各ライト
    ・バッファに関連付けられたバッファ・ステータス・ビ
    ットを含み、該バッファ・ステータス・ビットが、前記
    関連するバッファ内のライト・データが前記SDRAM
    メモリに書き込まれたか否かを示すことを特徴とするコ
    ンピュータ・システム。
  37. 【請求項37】 請求項36記載のコンピュータ・シス
    テムにおいて、前記出力キュー・ロジックが、各ライト
    ・バッファに関連付けられた有効ビットを含み、該有効
    ビットが、前記関連するバッファ内のライト・データが
    前記SDRAMメモリに書き込まれたか否かを示すこと
    を特徴とするコンピュータ・システム。
  38. 【請求項38】 請求項30記載のコンピュータ・シス
    テムにおいて、前記第2のデータ・キューが、前記SD
    RAMメモリからのデータを格納するための複数のリー
    ド・バッファを含み、前記メモリ・クロック信号を用い
    て、前記リード・データを前記リード・バッファに格納
    し、前記システム・クロック信号を用いて、該リード・
    バッファに格納した前記リード・データを前記リード・
    バッファから抽出して前記プロセッサに供給することを
    特徴とするコンピュータ・システム。
  39. 【請求項39】 請求項38記載のコンピュータ・シス
    テムにおいて、前記第2のデータ・キューが、前記リー
    ド・バッファに対するポインタを含み、前記第2のデー
    タ・キューによって、アサートされたメモリ・レディ信
    号が受け取られるときに、前記ポインタを増分すること
    を特徴とするコンピュータ・システム。
JP10229070A 1997-08-13 1998-08-13 動作速度が異なるdramに対処できるメモリ制御機能を備えたコンピュータ・システム Pending JPH11167514A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/910,847 US6134638A (en) 1997-08-13 1997-08-13 Memory controller supporting DRAM circuits with different operating speeds
US910847 1997-08-13

Publications (1)

Publication Number Publication Date
JPH11167514A true JPH11167514A (ja) 1999-06-22

Family

ID=25429399

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10229070A Pending JPH11167514A (ja) 1997-08-13 1998-08-13 動作速度が異なるdramに対処できるメモリ制御機能を備えたコンピュータ・システム

Country Status (3)

Country Link
US (1) US6134638A (ja)
EP (1) EP0897154A3 (ja)
JP (1) JPH11167514A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008226211A (ja) * 2007-02-13 2008-09-25 Megachips Lsi Solutions Inc メモリコントローラ
JP2010113435A (ja) * 2008-11-05 2010-05-20 Sanyo Electric Co Ltd メモリアクセス装置

Families Citing this family (106)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3092557B2 (ja) * 1997-09-16 2000-09-25 日本電気株式会社 半導体記憶装置
AU9604698A (en) 1997-10-10 1999-05-03 Rambus Incorporated Method and apparatus for two step memory write operations
AU9798798A (en) * 1997-10-10 1999-05-03 Rambus Incorporated Power control system for synchronous memory device
US6401167B1 (en) 1997-10-10 2002-06-04 Rambus Incorporated High performance cost optimized memory
US6330627B1 (en) 1998-01-20 2001-12-11 Kabushiki Kaisha Toshiba System for fast data transfer between memory modules and controller using two clock lines each having a go line portion and a return line portion
US6314527B1 (en) * 1998-03-05 2001-11-06 Micron Technology, Inc. Recovery of useful areas of partially defective synchronous memory components
US6154821A (en) * 1998-03-10 2000-11-28 Rambus Inc. Method and apparatus for initializing dynamic random access memory (DRAM) devices by levelizing a read domain
US7558472B2 (en) 2000-08-22 2009-07-07 Tivo Inc. Multimedia signal processing system
US6233389B1 (en) 1998-07-30 2001-05-15 Tivo, Inc. Multimedia time warping system
US6434684B1 (en) * 1998-09-03 2002-08-13 Micron Technology, Inc. Method and apparatus for coupling signals across different clock domains, and memory device and computer system using same
US6366989B1 (en) 1998-09-17 2002-04-02 Sun Microsystems, Inc. Programmable memory controller
US6418518B1 (en) * 1998-09-18 2002-07-09 National Semiconductor Corporation Decoupled address and data access to an SDRAM
US6456502B1 (en) 1998-09-21 2002-09-24 Compaq Computer Corporation Integrated circuit device/circuit board connection apparatus
US6490638B1 (en) * 1999-08-23 2002-12-03 Advanced Micro Devices, Inc. General purpose bus with programmable timing
US6321282B1 (en) 1999-10-19 2001-11-20 Rambus Inc. Apparatus and method for topography dependent signaling
FR2806236B1 (fr) * 2000-03-07 2003-07-11 Canon Kk Procede et dispositif de transfert d'un paquet de donnees dans un reseau de communication
TW522297B (en) * 2000-03-17 2003-03-01 Micro Star Int Co Ltd Automatic over-clock method for CPU
US7236489B1 (en) * 2000-04-27 2007-06-26 Mosaid Technologies, Inc. Port packet queuing
JP3457628B2 (ja) 2000-05-19 2003-10-20 Necエレクトロニクス株式会社 Cpuシステムおよび周辺lsi
CA2316590A1 (en) * 2000-08-23 2002-02-23 Celestica International Inc. System and method for using a synchronous device with an asynchronous memory controller
US6636955B1 (en) * 2000-08-31 2003-10-21 Hewlett-Packard Development Company, L.P. Mechanism for synchronizing multiple skewed source-synchronous data channels with automatic initialization feature
GB2372603A (en) * 2000-12-14 2002-08-28 Psion Digital Ltd Method of synchronising a digital component with a synchronous memory device at power up
US6766413B2 (en) 2001-03-01 2004-07-20 Stratus Technologies Bermuda Ltd. Systems and methods for caching with file-level granularity
US20020144173A1 (en) * 2001-03-30 2002-10-03 Micron Technology, Inc. Serial presence detect driven memory clock control
US6763444B2 (en) 2001-05-08 2004-07-13 Micron Technology, Inc. Read/write timing calibration of a memory array using a row or a redundant row
US6661554B2 (en) * 2001-08-23 2003-12-09 Cyoptics (Israel) Ltd. Biasing of an electro-optical component
US6983354B2 (en) * 2002-05-24 2006-01-03 Micron Technology, Inc. Memory device sequencer and method supporting multiple memory device clock speeds
US6643216B1 (en) * 2002-08-02 2003-11-04 Nanoamp Solutions, Inc Asynchronous queuing circuit for DRAM external RAS accesses
US6948043B2 (en) * 2002-08-12 2005-09-20 Hewlett-Packard Development Company, L.P. Management of a memory subsystem
US7142416B2 (en) 2002-12-20 2006-11-28 Hewlett-Packard Development Company, L.P. Method and apparatus for determining the physical configuration of a multi-component system
US20040181367A1 (en) * 2003-03-11 2004-09-16 Nguyen Minh H. Diagnostic display
US6865135B2 (en) * 2003-03-12 2005-03-08 Micron Technology, Inc. Multi-frequency synchronizing clock signal generator
US20040193763A1 (en) * 2003-03-28 2004-09-30 Fujitsu Limited Inter-bus communication interface device and data security device
US7330991B2 (en) * 2003-05-15 2008-02-12 Lsi Logic Corporation Method and/or apparatus for paging to a dynamic memory array
KR20050022798A (ko) * 2003-08-30 2005-03-08 주식회사 이즈텍 유전자 어휘 분류체계를 이용하여 바이오 칩을 분석하기위한 시스템 및 그 방법
US7225303B2 (en) * 2003-09-22 2007-05-29 Micron Technology, Inc. Method and apparatus for accessing a dynamic memory device by providing at least one of burst and latency information over at least one of redundant row and column address lines
US7127584B1 (en) * 2003-11-14 2006-10-24 Intel Corporation System and method for dynamic rank specific timing adjustments for double data rate (DDR) components
US7054987B1 (en) * 2003-12-19 2006-05-30 Nvidia Corporation Apparatus, system, and method for avoiding data writes that stall transactions in a bus interface
US8250295B2 (en) 2004-01-05 2012-08-21 Smart Modular Technologies, Inc. Multi-rank memory module that emulates a memory module having a different number of ranks
US7532537B2 (en) 2004-03-05 2009-05-12 Netlist, Inc. Memory module with a circuit providing load isolation and memory domain translation
US7289386B2 (en) 2004-03-05 2007-10-30 Netlist, Inc. Memory module decoder
US7916574B1 (en) 2004-03-05 2011-03-29 Netlist, Inc. Circuit providing load isolation and memory domain translation for memory module
US7180520B2 (en) * 2004-03-08 2007-02-20 Intel Corporation Queue partitioning mechanism
JP4616586B2 (ja) * 2004-06-30 2011-01-19 富士通株式会社 メモリ初期化制御装置
TWI253079B (en) * 2004-08-27 2006-04-11 Via Tech Inc Method for deciding parameters of dram
US7327612B2 (en) * 2005-01-31 2008-02-05 Hewlett-Packard Development Company, L.P. Method and apparatus for providing the proper voltage to a memory
US20060179183A1 (en) * 2005-02-09 2006-08-10 International Business Machines Corporation Single burst completion of multiple writes at buffered DIMMs
US20060277355A1 (en) * 2005-06-01 2006-12-07 Mark Ellsberry Capacity-expanding memory device
US9171585B2 (en) 2005-06-24 2015-10-27 Google Inc. Configurable memory circuit system and method
US8438328B2 (en) 2008-02-21 2013-05-07 Google Inc. Emulation of abstracted DIMMs using abstracted DRAMs
US8055833B2 (en) 2006-10-05 2011-11-08 Google Inc. System and method for increasing capacity, performance, and flexibility of flash storage
US8335894B1 (en) 2008-07-25 2012-12-18 Google Inc. Configurable memory system with interface circuit
US8130560B1 (en) 2006-11-13 2012-03-06 Google Inc. Multi-rank partial width memory modules
US8081474B1 (en) 2007-12-18 2011-12-20 Google Inc. Embossed heat spreader
US8327104B2 (en) 2006-07-31 2012-12-04 Google Inc. Adjusting the timing of signals associated with a memory system
US8089795B2 (en) 2006-02-09 2012-01-03 Google Inc. Memory module with memory stack and interface with enhanced capabilities
US20080082763A1 (en) 2006-10-02 2008-04-03 Metaram, Inc. Apparatus and method for power management of memory circuits by a system or component thereof
US8397013B1 (en) 2006-10-05 2013-03-12 Google Inc. Hybrid memory module
US9507739B2 (en) 2005-06-24 2016-11-29 Google Inc. Configurable memory circuit system and method
US9542352B2 (en) 2006-02-09 2017-01-10 Google Inc. System and method for reducing command scheduling constraints of memory circuits
US8090897B2 (en) 2006-07-31 2012-01-03 Google Inc. System and method for simulating an aspect of a memory circuit
US7392338B2 (en) 2006-07-31 2008-06-24 Metaram, Inc. Interface circuit system and method for autonomously performing power management operations in conjunction with a plurality of memory circuits
US10013371B2 (en) 2005-06-24 2018-07-03 Google Llc Configurable memory circuit system and method
US8244971B2 (en) 2006-07-31 2012-08-14 Google Inc. Memory circuit system and method
US7590796B2 (en) * 2006-07-31 2009-09-15 Metaram, Inc. System and method for power management in memory systems
US20080028136A1 (en) 2006-07-31 2008-01-31 Schakel Keith R Method and apparatus for refresh management of memory modules
US8359187B2 (en) 2005-06-24 2013-01-22 Google Inc. Simulating a different number of memory circuit devices
US7386656B2 (en) 2006-07-31 2008-06-10 Metaram, Inc. Interface circuit system and method for performing power management operations in conjunction with only a portion of a memory circuit
US8077535B2 (en) 2006-07-31 2011-12-13 Google Inc. Memory refresh apparatus and method
US8796830B1 (en) 2006-09-01 2014-08-05 Google Inc. Stackable low-profile lead frame package
US8619452B2 (en) 2005-09-02 2013-12-31 Google Inc. Methods and apparatus of stacking DRAMs
US8041881B2 (en) 2006-07-31 2011-10-18 Google Inc. Memory device with emulated characteristics
US8060774B2 (en) 2005-06-24 2011-11-15 Google Inc. Memory systems and memory modules
US8111566B1 (en) 2007-11-16 2012-02-07 Google, Inc. Optimal channel design for memory devices for providing a high-speed memory interface
US8386722B1 (en) 2008-06-23 2013-02-26 Google Inc. Stacked DIMM memory interface
KR100714396B1 (ko) * 2005-07-18 2007-05-04 삼성전자주식회사 메모리의 처리속도를 향상시킨 컴퓨터 시스템
KR100660546B1 (ko) * 2005-11-10 2006-12-22 삼성전자주식회사 반도체 디스크 제어 장치
US20070147404A1 (en) * 2005-12-27 2007-06-28 Lucent Technologies, Inc. Method and apparatus for policing connections using a leaky bucket algorithm with token bucket queuing
US9632929B2 (en) 2006-02-09 2017-04-25 Google Inc. Translating an address associated with a command communicated between a system and memory circuits
US8121237B2 (en) 2006-03-16 2012-02-21 Rambus Inc. Signaling system with adaptive timing calibration
US20080005385A1 (en) * 2006-06-30 2008-01-03 Seagate Technology Llc Passive mirroring through concurrent transfer of data to multiple target devices
US7724589B2 (en) 2006-07-31 2010-05-25 Google Inc. System and method for delaying a signal communicated from a system to at least one of a plurality of memory circuits
KR100845525B1 (ko) * 2006-08-07 2008-07-10 삼성전자주식회사 메모리 카드 시스템, 그것의 데이터 전송 방법, 그리고반도체 메모리 장치
US7886122B2 (en) * 2006-08-22 2011-02-08 Qimonda North America Corp. Method and circuit for transmitting a memory clock signal
WO2008076737A2 (en) * 2006-12-13 2008-06-26 Cypress Semiconductor Corp. Memory interface configurable for asynchronous and synchronous operation and for accessing storage from any clock domain
US8209479B2 (en) 2007-07-18 2012-06-26 Google Inc. Memory circuit system and method
US8080874B1 (en) 2007-09-14 2011-12-20 Google Inc. Providing additional space between an integrated circuit and a circuit board for positioning a component therebetween
US8516185B2 (en) 2009-07-16 2013-08-20 Netlist, Inc. System and method utilizing distributed byte-wise buffers on a memory module
US8154901B1 (en) 2008-04-14 2012-04-10 Netlist, Inc. Circuit providing load isolation and noise reduction
US8417870B2 (en) 2009-07-16 2013-04-09 Netlist, Inc. System and method of increasing addressable memory space on a memory board
WO2010144624A1 (en) 2009-06-09 2010-12-16 Google Inc. Programming of dimm termination resistance values
US9128632B2 (en) 2009-07-16 2015-09-08 Netlist, Inc. Memory module with distributed data buffers and method of operation
WO2011106049A1 (en) 2010-02-23 2011-09-01 Rambus Inc. Time multiplexing at different rates to access different memory types
US20120254500A1 (en) * 2011-03-28 2012-10-04 Byungcheol Cho System architecture based on ddr memory
US20120254501A1 (en) * 2011-03-28 2012-10-04 Byungcheol Cho System architecture based on flash memory
WO2013083191A1 (en) * 2011-12-07 2013-06-13 Huawei Technologies Co., Ltd. Queuing apparatus
US9436634B2 (en) * 2013-03-14 2016-09-06 Seagate Technology Llc Enhanced queue management
US10324841B2 (en) 2013-07-27 2019-06-18 Netlist, Inc. Memory module with local synchronization
US9225322B2 (en) 2013-12-17 2015-12-29 Micron Technology, Inc. Apparatuses and methods for providing clock signals
KR102344834B1 (ko) * 2014-09-24 2021-12-29 삼성전자주식회사 솔리드 스테이트 드라이브 및 이를 포함하는 컴퓨팅 시스템
US9990138B2 (en) * 2015-03-31 2018-06-05 Toshiba Memory Corporation Out of order SGL read sorting in a mixed system with PRP read or system that supports only SGL reads
US9697884B2 (en) 2015-10-08 2017-07-04 Rambus Inc. Variable width memory module supporting enhanced error detection and correction
KR20170111572A (ko) * 2016-03-29 2017-10-12 삼성전자주식회사 반도체 메모리 장치 및 이의 동작 방법
US10579517B2 (en) 2018-03-19 2020-03-03 Dell Products, Lp System and method for providing per channel frequency optimization in a double data rate memory system
US11461030B2 (en) 2019-07-15 2022-10-04 Micron Technology, Inc. Transferring data between clock domains using pulses across a queue
GB202203061D0 (en) * 2022-03-04 2022-04-20 Nordic Semiconductor Asa Interface circuit portions

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4233390A (en) * 1979-07-20 1980-11-11 Polychrome Corporation Lithographic printing plate having dual photosensitive layering
AU545651B2 (en) * 1980-04-11 1985-07-25 Sony Corporation Charge transfer filter circuit
JP2531802B2 (ja) * 1989-09-28 1996-09-04 甲府日本電気株式会社 リクエストバッファ制御システム
JPH04137081A (ja) * 1990-09-28 1992-05-12 Fuji Photo Film Co Ltd Eepromを有するicメモリカード
US5448715A (en) * 1992-07-29 1995-09-05 Hewlett-Packard Company Dual clock domain interface between CPU and memory bus
JP3077866B2 (ja) * 1993-11-18 2000-08-21 日本電気株式会社 メモリモジュール
US5630096A (en) * 1995-05-10 1997-05-13 Microunity Systems Engineering, Inc. Controller for a synchronous DRAM that maximizes throughput by allowing memory requests and commands to be issued out of order
KR0170723B1 (ko) * 1995-12-29 1999-03-30 김광호 단일 ras 신호에 의해 동시 동작이 가능한 이중 뱅크를 갖는 반도체 메모리 장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008226211A (ja) * 2007-02-13 2008-09-25 Megachips Lsi Solutions Inc メモリコントローラ
JP2010113435A (ja) * 2008-11-05 2010-05-20 Sanyo Electric Co Ltd メモリアクセス装置

Also Published As

Publication number Publication date
US6134638A (en) 2000-10-17
EP0897154A2 (en) 1999-02-17
EP0897154A3 (en) 2000-02-02

Similar Documents

Publication Publication Date Title
JPH11167514A (ja) 動作速度が異なるdramに対処できるメモリ制御機能を備えたコンピュータ・システム
US5239639A (en) Efficient memory controller with an independent clock
US6553435B1 (en) DMA transfer method for a system including a single-chip processor with a processing core and a device interface in different clock domains
US5353423A (en) Memory controller for use with write-back cache system and multiple bus masters coupled to multiple buses
EP1046111B1 (en) Data transferring in source-synchronous and common clock protocols
US7822904B2 (en) Capturing read data
US5220651A (en) Cpu-bus controller for accomplishing transfer operations between a controller and devices coupled to an input/output bus
JP2573566B2 (ja) バスコンバータ
US5919254A (en) Method and apparatus for switching between source-synchronous and common clock data transfer modes in a multiple processing system
JP3403284B2 (ja) 情報処理システム及びその制御方法
EP0426329A1 (en) Combined synchronous and asynchronous memory controller
JPH04230544A (ja) ダイナミックメモリシステムのタイミングを動的に設定するデータ処理装置
US8145805B2 (en) Method for re-sequencing commands and data between a master and target devices utilizing parallel processing
US5287457A (en) Computer system DMA transfer
US5897667A (en) Method and apparatus for transferring data received from a first bus in a non-burst manner to a second bus in a burst manner
US6321233B1 (en) Apparatus for controlling pipelined memory access requests
US5809549A (en) Burst SRAMs for use with a high speed clock
US5768624A (en) Method and apparatus for employing ping-pong buffering with one level deep buffers for fast DRAM access
US5922076A (en) Clocking scheme for digital signal processor system
US5175826A (en) Delayed cache write enable circuit for a dual bus microcomputer system with an 80386 and 82385
JPH04350754A (ja) データチャンネルに対するインターフェースを含むワークステーションまたは類似のデータ処理システム
EP1041492A2 (en) Method and system for optimizing of peripheral component interconnect (PCI) bus transfers
US5590316A (en) Clock doubler and smooth transfer circuit
US6292807B1 (en) Method for controlling pipelined memory access requests
US5745731A (en) Dual channel FIFO circuit with a single ported SRAM

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050809

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050809

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080729

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080731

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081031

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081216

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090511