(57)【要約】【課題】既存のメモリ・システム等において最小限の設計変更でシステム・パフォーマンスを大幅に向上させることができるマイクロプロセッサ・システム・アーキテクチャを提供する。【解決手段】各々が関連されたアドレスを有する複数のメモリ要素を有するメモリ装置であって、アドレス・ストローブ信号の遷移に応じて前記メモリ装置の外部のソースからアドレスの少なくとも第１部分を受け取ることができると共に、前記アドレス・ストローブ信号の次の遷移に応じて前記アドレスを所定アドレス・シーケンスで進めることができるアドレス指定回路と、バースト読取りアクセスで前記アドレス・ストローブ信号の複数の遷移の後にだけ前記メモリ装置からデータを駆逐することができる出力バッファ回路と、を少なくとも含んで構成される。【選択図】図４
2005011485.tif 000002
【特許請求の範囲】
【請求項１】
各々が関連されたアドレスを有する複数のメモリ要素を有するメモリ装置であって、
アドレス・ストローブ信号の遷移に応じて前記メモリ装置の外部のソースからアドレスの少なくとも第１部分を受け取ることができると共に、前記アドレス・ストローブ信号の次の遷移に応じて前記アドレスを所定アドレス・シーケンスで進めることができるアドレス指定回路と、
バースト読取りアクセスで前記アドレス・ストローブ信号の複数の遷移の後にだけ前記メモリ装置からデータを駆逐することができる出力バッファ回路と、
を含むメモリ装置。
【請求項２】
前記出力バッファ回路が、前記アドレス・ストローブ信号の単一の遷移に応じて、論理低データ値及び論理高データ値の間で交替することができる、請求項１に記載のメモリ装置。
【請求項３】
前記出力バッファ回路が、更に、前記アドレス・ストローブ信号の立ち下がりエッジの後に前記メモリ装置から論理出力低データ値を駆逐し、次いで、前記アドレス・ストローブ信号の立ち上がりエッジの後に前記メモリ装置から論理出力高データ値を駆逐することができる、請求項１に記載のメモリ装置。
【請求項４】
前記メモリ装置の読取りサイクル及び書込みサイクルの間の選択を為すことができる書込みイネーブル信号を受信する書込みイネーブル信号ノードを更に含み、前記メモリ装置のバースト・アクセスが前記書込みイネーブル信号の遷移に応じて終了させられる、請求項１に記載のメモリ装置。
【請求項５】
前記出力バッファ回路が前記アドレス・ストローブ信号のプログラマブル数の遷移の後に前記メモリ装置からデータを駆逐できる、請求項１に記載のメモリ装置。
【請求項６】
出力イネーブル信号を受信して、データが前記メモリ装置から駆逐されることをイネーブルする出力イネーブル信号ノードと、
データが駆逐されることをイネーブルするために、前記出力イネーブル信号ノードが前記出力イネーブル信号の状態を規定する供給ポテンシャル・ノードと接続されている一方で、バースト読取りアクセス・サイクル及びバースト書込みアクセス・サイクルを実行する手段と、
を更に含む、請求項１に記載のメモリ装置。
【請求項７】
前記第１アドレスの列部を受信するアドレス・ラッチを含む前記メモリ装置が、
行アドレス・ストローブ信号を受信する行アドレス・ストローブ信号ノードと、
前記行アドレス・ストローブ信号ノードと結合されて、前記行アドレス・ストローブ信号に応じて１つの行アドレスをラッチする行アドレス・ラッチと、
制御信号を受信する制御信号ノードと、
前記制御信号ノード及び前記行アドレス・ストローブ信号ノードと電気的に連絡して、前記行アドレス・ストローブ信号の遷移に及んで、前記メモリ装置のバースト・モード及び非バースト・モードの間での選択を為すべく使用される前記制御信号の状態をラッチするモード制御ラッチと、
を更に含む、請求項１に記載のメモリ装置。
【請求項８】
前記制御信号ノードが書込みサイクル・イネーブル信号ノードである、請求項７に記載のメモリ装置。
【請求項９】
前記アドレス回路が、前記アドレス・ストローブ信号の第１遷移に応じて第１列アドレスをラッチし、前記アドレス・ストローブ信号の第２遷移に応じて前記第１列アドレスを進めて第２列アドレスを生成する、請求項１に記載のメモリ装置。
【請求項１０】
書込みイネーブル信号を受信する書込みイネーブル信号ノードを更に含み、前記メモリ装置のバースト・アクセスが前記書込みイネーブル信号の遷移に応じて中断される、請求項６に記載のメモリ装置。
【請求項１１】
アドレス・ラッチ、アドレス・カウンタ、列アドレス・ストローブを受信するアドレス・ストローブ・ノード、出力データ・ドライバ、並びに、メモリ要素から成るアレイを有するメモリ装置からデータを読取り方法であって、
前記アドレス・ストローブ・ノードに第１列アドレス・ストローブを付与して、第１列アドレスをラッチする段階と、
前記第１列アドレスにおける前記アレイの内の第１メモリ要素にアクセスする段階と、
前記アドレス・ストローブ・ノードに第２列アドレス・ストローブを付与して、前記メモリ装置内の前記列アドレスを進めて第２列アドレスを指定する段階と、
前記第２列アドレスにおける前記アレイの内の第２メモリ要素にアクセスする段階と、
前記列アドレス・ストローブの単一遷移に応じて外部データ・ノードへ駆逐されるデータを論理低レベルから論理高レベルへ交替する段階と、
少なくとも前記第２列アドレス・ストローブを付与する前記段階まで、前記出力データ・ドライバに対して高インピーダンス状態を維持する段階と、
の諸段階を含む方法。
【請求項１２】
前記アドレス・ストローブ・ノードに第３列アドレス・ストローブを付与して、前記列アドレスを進めて第３列アドレスを指定する段階と、
前記第３列アドレス・ストローブと同期して前記第１列アドレスから前記メモリ装置の出力をラッチする段階と、
を更に含む、請求項１１に記載の方法。
【請求項１３】
前記第１列アドレス・ストローブの前記付与に先行して、前記メモリ装置の動作のバースト・モードを選択する段階を更に含む、請求項１１に記載の方法。
【請求項１４】
前記バースト・アクセス中に前記書込みイネーブル信号をトグルすることによって前記メモリ装置の前記バースト・アクセスを終了させることを更に含む、請求項１１に記載の方法。
【請求項１５】
前記バースト・アクセス中の前記書込みイネーブル信号のトグルに応じてバースト長カウンタをリセットすることを更に含む、請求項１４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はマイクロプロセッサ・システム・アーキテクチャに関する。具体的には、メモリ・サブシステム・アーキテクチャ、メモリとマイクロプロセッサとのインタフェース設計、コンピュータ・マザーボード（母板）設計、およびプロセッサ・ドータボード（娘板）設計に係わる。
【背景技術】
【０００２】
パーソナル・コンピュータの進歩に伴い、より高速でより高密度でしかも標準ＤＲＡＭと同じように低コストなメモリ・デバイス又はメモリ装置を必要とするようになっている。高速ページ・モードＤＲＡＭは現在最も普及している標準ＤＲＡＭである。高速ページ・モード動作では、行アドレス・ストローブ（／ＲＡＳ）を使用して多重化ＤＲＡＭアドレスの行アドレス部分をラッチする。列アドレス・ストローブ（／ＣＡＳ）の複数の発生又はオカレンスがそれぞれ１つの列アドレスをラッチし、／ＲＡＳがアクティブの間に選択された行内のデータにランダムにアクセスする。／ＣＡＳの立ち下がりでアドレスがラッチされ、ＤＲＡＭ出力がイネーブルにされる。／ＣＡＳが高に遷移すると、ＤＲＡＭ出力は高インピーダンス状態（トライステート）になる。集積回路の製造技術の進歩に伴って、ＤＲＡＭの内部回路の動作は以前より高速化している。この高速回路によって、より高速のページ・モード・サイクル時間が可能になってきている。装置が最小の高速ページ・モード・サイクル時間で動作する場合、ＤＲＡＭの読取りに問題がある。／ＣＡＳが１５ナノ秒という短い時間だけ低であり、／ＣＡＳから有効出力データまでのデータ・アクセス時間（ｔＣＡＣ）が最高１５ナノ秒である場合がある。したがって、最悪の場合、出力データをメモリ装置の外部にラッチする時間がない。仕様が要求するよりも高速で動作する装置の場合、データは数ナノ秒間だけ有効であるに過ぎない場合もある。負荷の大きいマイクロプロセッサ・メモリ・バスで、数ナノ秒間しか有効でない非同期信号をラッチしようとするのはきわめて困難である。３５ナノ秒ごとに新しいアドレスを供給する場合でも、システム内でかなりの量の電気雑音を生じさせる大型のアドレス・ドライバを必要とする。メモリ・システムのデータ・スループットを向上させるために、共通バス上に複数の装置を配置することによって複数のメモリ装置をインタリーブすることが通例になってきている。たとえば、共通アドレスおよびデータ・バスに２つの高速ページ・モードＤＲＡＭを接続することができる。一方のＤＲＡＭには奇数アドレスのデータを格納し、他方には偶数アドレスを格納する。この手法の欠点は、メモリ・サイクル中に一方のメモリ装置をオフにしてから他方のメモリ装置をオンにするための余分の時間を要することである。また、特定のデータ帯域幅を実現するためには最低限の数のインタリーブ装置が必要であり、必要メモリ容量はよりそれより少い装置数で満たされる。
【０００３】
現在のパーソナル・コンピュータ・システムに組み込むための戦略を提供する、より高速で高密度なランダム・アクセス・メモリ集積回路を求められる需要がある。この需要を満たそうとして、標準ＤＲＡＭアーキテクチャに対して多くの代替策が提案されている。高速ページ・モード・サイクル時間を増大させずにＤＲＡＭの出力でデータの有効期間を長くする１つの方法は、エクステンデット・データ・アウト（ＥＤＯ）モード又は拡張データ出力モードと呼ばれる。ＥＤＯ  ＤＲＡＭでは、高速ページ・モード動作中、データ線は読取りサイクル間でトライステートにされない。その代わりに、データは／ＣＡＳが高になった後、次の／ＣＡＳ低パルスが発生してからしばらく後まで、または／ＲＡＳまたは出力イネーブル（／ＯＥ）が高になるまで有効のまま保持される。高速ページ・モードまたはＥＤＯ  ＤＲＡＭの出力にいつ有効データが到着するかの決定は、列アドレス入力が有効な時点と、／ＣＡＳが下がる時点と、／ＯＥの状態と、直前のサイクルで／ＣＡＳが上がった時点との複雑な関数になり得る。制御線信号（特に／ＣＡＳ）に関してデータが有効な期間は、様々なＤＲＡＭ製造会社によって調整されたＥＤＯモードの特定の実施態様によって決まる。ＥＤＯ  ＤＲＡＭは、ページ・モード動作中に有効データ出力の窓をより長くすることによってメモリのより高い周波数動作を可能にし、まさにこの特徴のために前述のインタリーブ・メモリ・アーキテクチャとの互換性を相当に低くしている。
【０００４】
メモリ・アクセス・サイクルをさらに短縮する方法は、追加の回路と、追加の制御ピンと、被標準装置・ピン配列とを必要とする傾向がある。たとえば提案されている業界標準シンクロナスＤＲＡＭ（ＳＤＲＡＭ）には、システム・クロック信号を受信するための追加のピンがある。このシステム・クロックはメモリ・システム内の各装置に接続されているため、負荷が高く、すべての装置内の回路を常にトグルしている。また、ＳＤＲＡＭには、クロック・イネーブル・ピン、チップ選択ピン、並びにデータ・マスク・ピンもある。標準ＤＲＡＭ上に見られるものと同様の名前のように思われる他の信号は、ＳＤＲＡＭでは大幅に異なる機能を有する。いくつかの制御ピンの追加によって、装置のピン配列は標準ＤＲＡＭからの逸脱を必要としており、それによってこれらの新しい装置を使用するための設計作業がさらに複雑化する。ＳＤＲＡＭ装置では膨大な数の追加回路が必要であり、その結果装置製造コストが上がる。
【０００５】
既存のコンピュータ・システムが非標準ピン配列を有する改良型装置を使用するためには、それらのシステムを大幅に修正しなければならない。さらに既存のコンピュータ・システム・メモリ・アーキテクチャは、信号線上の容量性負荷が大きいため、制御信号とアドレス信号が新しいメモリ装置を高速で動作させるのに必要な周波数で切り替わることができないような設計になっている。シングル・インライン・メモリ・モジュール（ＳＩＭＭ）は、コンピュータ・システムにおけるパッケージング・メモリの業界標準形式となっている例である。ＳＩＭＭでは、すべてのアドレス線がすべてのＤＲＡＭに接続している。さらに、ＳＩＭＭでは行アドレス・ストローブ（／ＲＡＳ）と書込みイネーブル（／ＷＥ）が各ＤＲＡＭに接続されることが多い。これらの線は、駆動する装置入力の数の結果として本質的に容量性負荷が高い。また、ＳＩＭＭ装置は一般に出力イネーブル（／ＯＥ）ピンを接地するため、／ＯＥはメモリ装置に拡張機能を持たせるための候補としては魅力がない。
【０００６】
ＳＩＭＭを使用しているコンピュータの数が膨大なため、標準ＳＩＭＭ設計から逸脱するどのような提案に対しても大きな抵抗がある。標準からの極端な逸脱に対する業界の抵抗と、現行システムが新型のメモリ装置に対応することができないことで、新型装置が広く受け入れられるのを遅らせている。したがって、極端に異なるアーキテクチャを有する装置は、当初は限られた数量しか製造されないであろう。この限られた製造量のため、大量生産に伴う製造上の改善と効率化によって一般的に実現されるコストの低減が妨げられている。
【０００７】
パーソナル・コンピュータやワークステーションなどにみられるような典型的なマイクロプロセッサ・システム構成は、メモリ・コントローラと高速スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）とに結合されたマイクロプロセッサを含む。マイクロプロセッサ・バスにはメモリ・コントローラと、アドレス・バッファと、データ・バッファとを介して大容量のメイン・メモリが結合されている。メイン・メモリとしては、典型的には、比較的大きいデータ帯域幅とランダム・アクセスを高密度データ記憶装置と組み合わせるＤＲＡＭである。データ・バッファはトランシーバ、レジスタ、レジスタ・トランシーバ、ラッチなどとすることができる。バッファは、ローカル・マイクロプロセッサ・バスにかかる負荷を、マイクロプロセッサ信号ドライバが扱うことができるレベルに制限するために必要なレベルの分離を行う。典型的なシステムの説明は下記の特許文献１を参照のこと。
【特許文献１】米国特許第５，２４９，２７７号
【０００８】
マルチメディア装置とソフトウェア・アプリケーションの進歩に伴って、ますます多くの周辺装置が広く入手可能になっている。本出願では、周辺装置は回路ボード内の内部付加機構またはホスト・システムと通信する外部装置とすることができるが、これらには限定されない。これらの装置は、マイクロプロセッサとメイン・メモリにも間接的に結合される。これらの周辺装置には、ＣＤ  ＲＯＭドライブや磁気ハード・ドライブなどの大容量データ記憶装置、フロッピィ・ディスク・ドライブ、キーボードおよびマウス装置用の入出力ポート、サウンド・カード、ファックスおよびモデム装置、表示装置、およびその他の装置を含めることができる。信号駆動の制約のためにこれらの周辺サブシステムのすべてを直接一緒に結合することはできない。残念ながら、これらのサブシステムをマイクロプロセッサ・バスからバッファリング、多重化および分離すると、遅延が生じ、それによってシステム・パフォーマンスが低下する。ＥＤＯメモリの説明は、下記の非特許文献１を参照のこと
【非特許文献１】「ＨＹＰＥＲ  ＰＡＧＥ  ＭＯＤＥ  ＤＲＡＭ」（ＥＬＥＣＴＲＯＮＩＣ  ＥＮＧＩＮＥＥＲＩＮＧ，ｖｏｌ．６６，ｎｏ．８１３，１  Ｓｅｐｔｅｍｂｅｒ  １９９４、ｐ．４７〜４８  ＣＰ０００４４５４００  Ｂａｒｇｅｒｙ  Ｃ．）
【０００９】
パフォーマンスを最大限にするために、マイクロプロセッサが最も頻繁に必要とするシステム資源は、マイクロプロセッサが最少の遅延時間でアクセスすることができる資源でなければならない。システム・パフォーマンスにおける主要な要素は、マイクロプロセッサとメモリとのインタフェース帯域幅である。このため、メモリ・サブシステムは一般にアクセス可能度が高くなるように設計されるが、インタフェースと周辺装置はＰＣＩバス（周辺装置構成部品相互接続）、ＶＬバス（ビデオ・エレクトロニクス標準協会（ＶＥＳＡ）ローカル・バス）、またはＩＳＡ（業界標準アーキテクチャ）バスなどのシステム・バスを介してアクセスすることができる。
【００１０】
マイクロプロセッサは、システム・タスクを行うために命令とデータを必要とする。命令とデータは、一般にはＤＲＡＭであるメイン・メモリに記憶される。マイクロプロセッサが最も頻繁に使用する命令とデータを内部または外部のＳＲＡＭキャッシュに格納して、システム・パフォーマンスを大幅に向上させることができる。キャッシュ内のデータはメイン・メモリ内のデータのコピーであるため、キャッシュ・メモリはデータへの高速アクセスを実現するが、システムのメモリ容量は増大させない。高速ＳＲＡＭ装置は残念ながら所与のメモリ密度について最もコストのかかるメモリ装置である。高いコストと限られた装置密度のため、ほとんどのメイン・メモリ適用分野では高速ＳＲＡＭを使用することができない。プロセッサが必要とする情報がキャッシュに入っている確率は高いため、比較的容量の少ないキャッシュ・メモリで従来のシステムのパフォーマンスを大幅に向上させることができる。しかし、キャッシュ・メモリの「ヒット率」の向上は、キャッシュ容量がメインメモリの容量に近づくよりかなり前に鈍る傾向があり、そのため大容量のＳＲＡＭキャッシュは不経済である。ＤＲＡＭはそれより経済的なメイン・メモリ解決策であるが、それでも最高のシステム・パフォーマンスを得るにはかなりの数のＤＲＡＭチップを必要とする。これは、それらのチップをマイクロプロセッサ・バスからバッファリングすることを意味する。このバッファリングは、ＳＲＡＭと比較してＤＲＡＭの初期アクセス時間が比較的遅いことと相まってシステム・パフォーマンスを制限する。
【発明の開示】
【発明が解決しようとする課題】
【００１１】
マイクロプロセッサからメモリまでの帯域幅を増大させ、中ないし高パフォーマンスのシステムにおけるＳＲＡＭキャッシュを不要にし、ＳＲＡＭキャッシュを使用してシステムにおけるパフォーマンスを強化する新しいシステム・アーキテクチャが必要である。メイン・メモリのアクセス時間と帯域幅の向上によって、従来のシステム・アーキテクチャのパフォーマンスが向上し続ける。しかし、信号負荷、バッファ遅延、メモリとマイクロプロセッサとの間の非同期タイミングによって、現在のシステム・アーキテクチャがこのようなより帯域幅の大きいメモリ装置を利用する能力は限られている。さらに、マイクロプロセッサ以外のシステム要素にもメモリ帯域幅の増大が必要である。
【００１２】
高速データ・アクセスと、既存のメモリ・システムとの互換性とのために、標準ＤＲＡＭピン配列を具備する集積回路メモリ装置（メモリ・デバイス）が設計されている。高速バースト動作モードが提供されて、１回の列アドレス指定の後に複数の順次アクセスを行い、／ＣＡＳ制御信号を基準にした読取りデータが出力される。バースト動作モードでは、アドレスが装置内部で増分され、外部アドレス線が高周波数で切り替わる必要がない。１バースト・アクセス当たり１回、読取り／書込みコマンドが発せられ、読取り／書込み制御線を高速でトグルする必要性を除去している。内部アドレス・カウンタとデータ入出力ラッチをクロックするために、１メモリ・チップについて１つの制御線（／ＣＡＳ）だけが動作周波数でトグルしなければならない。各／ＣＡＳは、一般に、１バイト幅のデータ・バスだけを制御するため、各／ＣＡＳ上の負荷は一般には他の制御信号（／ＲＡＳ、／ＷＥ、および／ＯＥ）上の負荷より少ない。メモリ装置の内部回路は、既存の拡張データ出力（ＥＤＯ）ＤＲＡＭとの互換性が高い。この類似性により、限られた数の追加回路を使用するだけでこの２つの部品タイプを１つのダイ上で製造することができる。標準非バースト・モードと高速バースト・モードとを切り換えることができるため、この装置を使用して標準装置を置き換えることができ、より複雑な高速メモリ装置を切り換える必要がなくなる。内部アドレス生成により、高速ページ・モードまたはＥＤＯ  ＤＲＡＭで可能なよりも高速のデータ・アクセス時間が実現される。このバーストＥＤＯ装置の高速動作により、高速データ・スループットを達成するためにメモリ装置をインタリーブする必要がなくなる。３０メガヘルツで動作可能でわずか数ナノ秒のデータ有効期間しかない標準ＤＲＡＭ装置とは異なり、このバーストＥＤＯ装置は１００メガヘルツで予測可能に動作することができ、５ナノ秒のデータ有効期間がある。この装置は、既存のメモリ・モジュール・ピン配列と互換性がある。メモリ・モジュールには、シングル・インライン・メモリ・モジュール（ＳＩＭＭ）、マルチチップ・モジュール（ＭＣＭ）、デュアル・インライン・メモリ・モジュール（ＤＩＭＭ）などが含まれるが、これらには限定されない。この機構の組み合わせにより、最小限の設計変更でシステム・パフォーマンスを大幅に向上させることができる。
【課題を解決するための手段】
【００１３】
本発明の一実施例では、新規なシステム・アーキテクチャが２つのメイン・メモリ・サブシステムに分かれたメイン・メモリを有する。メイン・メモリの第１の部分は、最適パフォーマンスのためにマイクロプロセッサ・データ・バスに密結合されたバースト・アクセスＤＲＡＭで構成され、メイン・メモリの第２の部分はデータ・バッファを介してマイクロプロセッサ・データ・バスに疎結合されている。密結合部分は、プロセッサに広帯域幅と、高密度データと、プロセッサ・クロックと同期させることができる情報記憶とを提供する。第２の部分は、追加のメモリ容量を提供し、プロセッサ・バスの負荷がそれに比例して増大することはない。好ましい実施例では、両方のサブシステムは取り外し可能であり、メモリサブシステムの容量／パフォーマンスを容易にアップグレードすることができる。他の好ましい実施例では疎結合システムだけが取り外し可能で、密結合システムはコンピュータのマザー・ボードに直接装着され、最大限のパフォーマンスのために制御された信号伝播特性を実現する。
【００１４】
第２の部分は、周辺装置およびサブシステムがより大きな帯域幅のメモリ・アクセスを行えるようにする。第２の部分の一部は、表示情報をリフレッシュするためにきわめて大きな帯域幅のデータ・アクセスを必要とする可能性があるディスプレイ・バッファとして使用することができる。好ましい実施例では、ディスプレイ・バッファは、マイクロプロセッサが密結合システムにアクセスしている間に、疎結合システムにアクセスすることができる。この実施例では、メイン・メモリ内のディスプレイ・フレーム・バッファの場所に付随するパフォーマンスの犠牲がほとんどないか、あるいはまったくない。メイン・メモリをディスプレイ・バッファとして使用することにより、別個のディスプレイ・バッファに伴う追加コストがなくなる。特にビデオＲＡＭを使用するとコンピュータ・システムのコストが大幅に増す可能性がある。メイン・メモリのディスプレイ・バッファの他の利点としては、複数のディスプレイ解像度選択肢という柔軟性が含まれ、その場合、ディスプレイのために使用されないメモリをシステムが追加のメイン・メモリとして使用することができる。
【００１５】
マイクロプロセッサによるアクセスを迅速にするために、最も頻繁に必要とされる情報は第１のメイン・メモリ部分に記憶する必要がある。ＳＲＡＭキャッシュを使用するシステムの場合、マイクロプロセッサは最も頻繁に必要となる情報をキャッシュから入手することができる。キャッシュ・ミスの場合（要求したデータがキャッシュに存在しない時）、情報はメイン・メモリの密結合部分で入手可能である可能性が高い。メイン・メモリの第２の部分に入っている情報が必要になる時間の割合は少ないため、ほとんどの適用分野で第２の部分の疎結合性に関係するパフォーマンスの不利によって全体的システム・パフォーマンスが大幅に低下することはない。
【００１６】
グラフィカル・ユーザ・インタフェース環境では、同時に複数のアプリケーションを開く（ユーザがアプリケーションの動作を開始している）ことができる。場合によっては、１つのアプリケーションがバックグランドで動作している間に、他のアプリケーションがフォーグランドで動作することができる。開いている各アプリケーションはより多くのメイン・メモリを必要とする。本発明の好ましい実施例では、密結合メイン・メモリに最低のメイン・メモリ・アドレス空間を割り当て、疎結合メモリはそれより高いアドレス空間に割り当てる。たとえば、１４４メガバイトのメモリを有するシステムでは、メイン・メモリのアドレス空間の最初の１６メガバイトを密結合メイン・メモリに割り当て、追加の１２８メガバイトをより高いアドレス値の疎結合メイン・メモリに割り当てる。オペレーティング・システムがメモリを割り振るとき、より低いアドレスのメモリが先に使用される。ユーザが２、３個のアプリケーションしか開いていない場合、アプリケーションのコードとデータはすべて密結合メモリに記憶することができ、速度に関するシステム・パフォーマンスが最適化される。ユーザが多くのアプリケーションを開いている場合、いくつかのアプリケーション・コードを疎結合メイン・メモリに入ることになる可能性がある。マイクロプロセッサが疎結合メイン・メモリにアクセスする場合、システムのパフォーマンスが低下することがあるが、同時に多くのアプリケーションを開くという柔軟性は、最高計算速度で動作する必要性よりも重要である。このシステムでは、限られた密結合メイン・メモリの使用によって達成可能な速度で、大メモリ容量コンピュータの柔軟性が得られる。
【００１７】
このシステムでは、システム内に同時に複数のタイプのメモリを存在させることができる。たとえばメモリの第１の密結合部分をバーストＥＤＯメモリとし、第２の疎結合部分をＥＤＯメモリとすることができる。バーストＥＤＯ形式の第１の部分に第１のアクセス・レートでアクセスし、ＥＤＯ形式の第２の部分には第２のアクセス・レートでアクセスするようにメモリ・コントローラをプログラムする。これによって、ユーザは大きなメモリ容量と、少なくともメモリの一部への高速アクセスとを得ることができる。メイン・メモリの第２の部分をさらに複数のメモリ・バンクに分けることができる。第２の部分の第１のバンクは、主として第１の密結合部分に収まらない情報のための追加容量になるＥＤＯメモリとすることができる。第２の部分の第２のバンクは、バーストＥＤＯメモリとすることができ、追加のシステム・メモリ容量を提供するほかに、高解像度情報ディスプレイをサポートするのに十分な帯域幅を持つディスプレイ・フレーム・バッファとしても使用される。ＳＤＲＡＭまたはその他のバースト・アクセス・メモリ装置も第１のメモリ部分用として使用することができる。
【００１８】
システムは電源投入時またはリセット時に、各メモリ・バンクにあるメモリのタイプと量とを判断することができ、それに従ってメモリ・アクセス信号タイミング・パラメータを調整することができる。あるいは、ユーザは特定のメモリ・バンクに特定のタイプのメモリを入れる必要がある場合がある。特定のメモリ・バンクをいくつかのタイプのメモリのうちの１つとすることができる場合、ユーザは最も経済的または最高のパフォーマンスあるいはその両方を備えたメモリ・サブシステムをその特定のコンピュータ使用要件のために選択することによって、システムの価格／パフォーマンス特性をより自由に左右することができる。
【００１９】
本発明の特徴と目的および利点は、請求の範囲と実施例の詳細な説明と添付図面とを参照すれば最もよくわかるであろう。
【発明を実施するための最良の形態】
【００２０】
図１は、１６メガビットのバースト・アクセス拡張データ出力ダイナミック・ランダム・アクセス・メモリ（ＢＥＤＯ  ＤＲＡＭ）を示す図である。この装置は、メモリ・アレイ１２に２，０９７，１５２バイトの情報を供給する８ビットのデータ入出力経路１０を有する２メガ×８ＢＥＤＯ  ＤＲＡＭとして構成されている。好ましい実施例では、図１の装置（又はデバイス）は８ビット幅のＥＤＯ  ＤＲＡＭ用の業界標準ピン配列を有する。アクティブ・低行アドレス・ストローブ（／ＲＡＳ）信号１４を使用して、多重化メモリ・アドレスの第１の部分をアドレス入力１６からラッチ１８にラッチする。ラッチされた行アドレス２０は行デコーダ２２でデコード（復号）される。デコードされた行アドレスを使用してメモリ・アレイ１２の行を選択する。列アドレス・ストローブ（／ＣＡＳ）信号２４を使用して、メモリ・アドレスの第２の部分をアドレス入力１６から列アドレス・カウンタ２６にラッチする。ラッチされた列アドレス２８は列アドレス・デコーダ３０でデコード（復号）される。デコードされた列アドレスを使用してメモリ・アレイ１２の列を選択する。
【００２１】
バースト読取りサイクル中、行アドレス・デコーダと列アドレス・デコーダによって選択された行アドレスと列アドレス位置にあるメモリ・アレイ内のデータがメモリ・アレイから読み出され、データ経路３２を通って出力ラッチ３４に送られる。バーストＥＤＯ  ＤＲＡＭから駆動されたデータ１０を、所定の数の／ＣＡＳサイクル遅延（レーテンシイ又は待ち時間）後に／ＣＡＳと同期させて装置の外部でラッチさせることができる。２サイクル待ち時間の設計の場合、第１の／ＣＡＳ立ち下がりを使用してバースト・アクセスの初期アドレスをラッチする。メモリからの第１のバースト・データは第２の／ＣＡＳ立ち下がり後にメモリから駆動され、第３の／ＣＡ立ち下がりの間、有効状態を維持する。メモリ装置がバースト読取りサイクルでデータの出力を開始した後は、出力イネーブル４２および書込みイネーブル３６（／ＯＥおよび／ＷＥ）制御線の状態に応じて出力ドライバ３４が／ＣＡＳ高期間中にデータ出力をトライステート又は３状態にすることなくデータ線を駆動し続け、したがってシステムが出力データをラッチする追加の時間ができる。行アドレスと列アドレスが選択されると、／ＣＡＳ信号の追加の遷移を使用して列アドレス・カウンタ内の列アドレスを所定の順序で進める。／ＯＥが低に維持され、／ＷＥが高に維持される場合、バーストＥＤＯ  ＤＲＡＭの出力でバースト・データが有効になる時点は／ＣＡＳ信号のタイミングにのみ依存する。出力データ信号レベルは、標準ＣＭＯＳ、ＴＴＬ、ＬＶＴＴＬ、ＧＴＬ、またはＨＳＴＬ出力レベル仕様に従って駆動することができるが、これらには限定されない。
【００２２】
全体的なシステム要件とのコンパティビリティ又は互換性を最大限にするため、アドレスは線形またはインタリーブ方式で進めることができる。図２は、バースト長が２、４、および８サイクルの場合の線形アドレス指定（アドレッシング）・シーケンスとインタリーブ・アドレス指定（アドレッシング）・シーケンスとを示す表である。表中の開始アドレスＡ１およびＡ２の「Ｖ」は、バースト・シーケンスを通じて変化しないアドレス値を表す。列アドレスは各／ＣＡＳ遷移、各パルス、または各列アドレスで複数のデータ・ワードを読み取る場合は複数の／ＣＡＳパルスを使用して進めることができる。／ＣＡＳ信号の各遷移を使用してアドレスを進める場合、装置遅延に続く各遷移後にもこの部分からデータが駆動され、／ＣＡＳ信号の各エッジで参照される。これによって、各メモリ・サイクルで最高のスイッチング制御線（／ＣＡＳ）が（高から低または低から高に）１回しかトグルしないバースト・アクセス・サイクルが可能になる。これは、各サイクルで／ＣＡＳが低になってから高になる必要がある標準ＤＲＡＭや、各メモリ・サイクルごとに全クロック・サイクル（高と低の遷移）を必要とするシンクロナスＤＲＡＭとは対照的である。既存のＥＤＯ  ＤＲＡＭ装置との互換性を最大化するために、／ＣＡＳ信号の立ち下がりで列アドレスをラッチし進めるように設計された装置を参照しながら本発明について説明する。
【００２３】
第１の／ＣＡＳ立ち下がりの後に列アドレスをラッチし増分して、ラッチされ増分された両方のアドレスをアクセス・サイクル中の最も早い機会にアレイに適用することが望ましい。たとえば、１サイクルに２つのデータ・ワードにアクセスするように装置を設計することができる（プリフェッチ・アーキテクチャ）。プリフェッチ（先取り）・アーキテクチャ装置のメモリ・アレイは、奇数アレイ・ハーフと偶数アレイ・ハーフに分割することができる。列アドレスの最下位ビットを使用して奇数ハーフと偶数ハーフのどちらかが選択され、同時に他の列アドレス・ビットは各アレイ・ハーフ内の列を選択する。列アドレス１を有するインタリーブ・アクセス・モードでは、ＳＤＲＡＭ仕様に記載されている標準インタリーブ・アドレス指定に応じて、列０および１のデータが読み取られ、列０のデータの後に続いて列１のデータが出力されることとなる。線形アクセス・モードでは、列アドレス１が、奇数アレイ・ハーフに適用され、偶数アレイ・ハーフにアクセスするためにアドレス２に増分され、２語アクセスが遂行されることとなる。この種の装置アーキテクチャを実施する１つの方法は、列アドレス・カウンタと偶数アレイ・ハーフとの間に列アドレス増分回路を設けることである。増分回路は、バースト・アクセス・サイクル中の最初の列アドレスが奇数であり、アドレス・モードが線形である場合にのみ列アドレスを増分することになる。そうでない場合、増分回路は、列アドレスを変更なしで通過させることになる。１サイクル当たり２回のデータ・アクセスのプリフェッチを使用する設計では、列アドレスが、／ＣＡＳ信号の２つのアクティブ・エッジごとに１度だけ進められることになる。３個以上のデータ・ワードにアクセスするプリフェッチ・アーキテクチャも可能である。
【００２４】
本発明に適用可能なその他のメモリ・アーキテクチャには、メモリ・アクセスは順次に行われるが、各アクセスが完了するのに複数のサイクルを必要とするパイプライン・アーキテクチャが含まれる。パイプライン・アーキテクチャでは、メモリの全体的なスループットは１サイクル当たり１アクセスに近づくが、パイプラインの長さまたは／ＣＡＳからの所望の待ち時間あるいはその両方によるサイクル数だけメモリのデータ出力はオフセットされることがある。
【００２５】
バースト・アクセス・メモリ装置では、アドレス入力１６で追加の列アドレスを使用する必要なしに、列アドレス・カウンタからの新しい各列アドレスをデコードして使用し、メモリ・アレイ内の追加のデータにアクセスする。このバースト・データ・シーケンスは、バースト長に等しい所定のデータ・アクセス数が行われるまで各／ＣＡＳ立ち下がりごとに続く。最後のバースト・アドレスが生成された後に受け取った／ＣＡＳ立ち下がりによって、アドレス入力１６から他の列アドレスがラッチされ、新しいバースト・シーケンスが開始される。第１／ＣＡＳ待ち時間後の／ＣＡＳの各立ち下がりで読取りデータがラッチされ、出力される。
【００２６】
バースト書込みサイクルの場合、入力データ・ラッチ３４でデータ１０がラッチされる。第１の列アドレスがラッチされると、行アドレスと列アドレスによって指定された第１のアドレスにある目的データが／ＣＡＳ信号でラッチされる（書込みデータ待ち時間はゼロである）。その他の書込みサイクル・データ待ち時間値も可能であるが、現在のメモリ・システムではゼロが好ましい。増分された列アドレス位置に記憶する追加の入力データ・ワード（語）は、連続する／ＣＡＳパルス上の／ＣＡＳによってラッチされる。入力ラッチ３４からの入力データがデータ経路３２を通してメモリ・アレイに渡され、行アドレス・デコーダと列アドレス・デコーダによって選択された記憶位置に記憶される。前述のバースト読取りサイクルのように、所定数のバースト・アクセス書込みが、アドレス線１６で追加の列アドレスを提供する必要性なしに行われる。所定数のバースト書込みが行われた後、後続の／ＣＡＳパルスが新しい開始列アドレスをラッチし、別のバースト読取りまたは書込みアクセスが開始する。
【００２７】
図１のメモリ装置には、バーストＥＤＯ動作モードと標準ＥＤＯ動作モードを切り換えるオプションを含めることができる。この場合、行アドレス・ラッチ時（／ＲＡＳ立ち下がり、／ＣＡＳ高）に書込みイネーブル信号／ＷＥ３６を使用して、その行のメモリ・アクセスがバースト・モード・サイクルであるかページ・モード・サイクルであるかを決定することができる。／ＲＡＳの立ち下がりで／ＷＥが低の場合、バースト・アクセス・サイクルが選択される。／ＲＡＳの立ち下がりで／ＷＥが高の場合、標準拡張データ出力（ＥＤＯ）ページ・モード・サイクルが選択される。バースト・モード・サイクルとＥＤＯページ・モード・サイクルは両方とも、／ＲＡＳが低の間にデータ読取りサイクル間でデータ出力ドライバ３４によってデータ線１０を高インピーダンス状態にしなくても、メモリ装置の動作周波数を高くすることができる。ＤＲＡＭ制御回路３８は、標準ＤＲＡＭ制御機能を実行するほかに、／ＲＡＳの立ち下がり時に／ＷＥによって選択されたモードに従ってＩ／Ｏ回路３４と列アドレス・カウンタ／ラッチ２６を制御する。バースト・モード専用ＤＲＡＭ、またはバースト・アクセス・サイクルと非バースト・アクセス・サイクルとを切り換える他の方法を使用して設計された装置では、／ＲＡＳ立ち下がり時の／ＷＥの状態を使用して、インタリーブ・アドレス指定モード対線形アドレス指定モードなど、その他の可能なモードに切り換えることができる。あるいは、動作モードを選択するために／ＲＡＳ立ち下がりでの／ＷＥの状態を使用しない場合は、／ＷＥに関して「ドントケア(don’t care)」として、お構いなしとすることもできる。
【００２８】
バースト・サイクルの初期列アドレスを／ＣＡＳによってラッチするとき、バースト・アクセス・サイクル中に書込みイネーブル信号を使用して読取りバースト・アクセスか書込みバースト・アクセスかを選択することができる。列アドレス・ラッチ時に／ＷＥ低の場合、バースト書込みアクセスが選択される。列アドレス・ラッチ時に／ＷＥ高の場合、バースト読取りアクセスが選択される。／ＷＥ信号のレベルは、バースト・アクセスの間中、読取りバースト・アクセスの場合は高、書込みバースト・アクセスの場合は低に維持されなければならない。バースト書込みアクセス中に低から高に遷移すると、バースト・アクセスは終了し、それ以上書込みが行われなくなる。バースト読取りアクセス中に／ＷＥ上で高から低への遷移があると、バースト読取りアクセスは終了し、データ出力１０が高インピーダンス状態になる。偽の書込みサイクルがトリガされる可能性を少なくするために、アクセス・サイクル中の重大なタイミング期間中に／ＷＥ信号の遷移をロックアウトすることができる。重大なタイミング期間後、バースト・アクセスを継続するか開始するかまたは終了するか、／ＷＥの状態で決定される。バースト・アクセスが終了するとバースト長カウンタがリセットされ、ＤＲＡＭが別のバースト・アクセス・コマンドを受け取る状態になる。バースト・アクセス中に／ＲＡＳと／ＣＡＳが両方とも高になった場合も、バースト・アクセス・サイクルが終了し、データ・ドライバが高インピーダンス出力状態になり、バースト長カウンタがリセットされる。隠れたリフレッシュ・サイクルとの互換性を持たせるために、／ＣＡＳがアクティブの間に／ＲＡＳのみが高になった場合、読取りデータを装置出力で有効なまま保持することができ、それ以外の場合は／ＲＡＳのみが高の状態を使用してバースト・アクセスを終了することができる。バースト・アクセス間の遅延を最小にして、１つのバースト読取りを終了させてから別のバースト読取りを開始したい場合、または別のバースト書込みを行う前にバースト書込みを終了させたい場合は、最小限の書込みイネーブル・パルス幅しか必要としない。バースト読取りの場合、／ＷＥは高から低に遷移して第１のバースト読取りを終了させ、その後、新しいバースト読取りサイクルを指定するために／ＣＡＳの次の立ち下がりの前に／ＷＥが高に戻る。バースト書込みの場合、／ＷＥは高に遷移して現行バースト書込みアクセスを終了させ、その後、／ＣＡＳの次の立ち下がりの前に低に戻って別のバースト書込みアクセスを開始する。
【００２９】
図１の装置の基本実施態様は、固定バースト長４と、固定／ＣＡＳ待ち時間２と、バースト・アドレスの固定インタリーブ・シーケンスとを含むことができる。この基本実施態様は、標準ＥＤＯページ・モードＤＲＡＭの追加回路をほとんど必要とせず、標準ＥＤＯページ・モードとバーストＥＤＯ  ＤＲＡＭの両方の機能を提供するように大量生産することができる。この装置では、多くのＳＩＭＭモジュール設計との互換性が得られるように出力イネーブル・ピン（／ＯＥ）を接地させることもできる。／ＯＥは、ディスエーブルされていない（グラウンドに結合される）とき、非同期制御であり、／ＣＡＳが立ち下がる前にイナクティブ(inactive)（高）になり／ＣＡＳが立ち上がった後もイナクティブのままでいる場合に、データが読取りサイクルのその部分からドライブされるのを妨げる。これらのセットアップ条件およびホールド条件が満たされない場合、読取りサイクルのある部分の間読取りデータがドライブされる。／ＯＥ信号と／ＣＡＳとの同期をとることは可能であるが、この場合、通常／ＣＡＳからデータ有効までの遅延時間が長くなり、普通なら不要な追加／ＣＡＳ低パルスなしに／ＲＡＳ高の前に読取りデータをディスエーブルすることができなくなる。好ましい実施形態では、／ＯＥが読取りサイクル中のある時間に高に遷移した場合、出力は、／ＯＥ信号の次の遷移にはかかわらずに／ＣＡＳの次の立ち下がりまで高インピーダンス状態のままである。
【００３０】
バースト長、／ＣＡＳ待ち時間、アドレス・シーケンスをプログラム可能にするには、書込み−／ＣＡＳ−前−／ＲＡＳ（ＷＣＢＲ）プログラミング・サイクルの受信時に１つまたは複数のアドレス入力信号１６またはデータ信号１０の状態をラッチするモード・レジスタ４０を使用することができる。そのような装置では、モード・レジスタからの出力４４が、ＤＲＡＭ上の必要な回路を制御する。２、４、８のバースト長オプションと、全ページと、１、２、３の／ＣＡＳ待ち時間を確保することができる。装置の動作速度が増加しコンピュータ・アーキテクチャが進歩するにつれて、他のバースト長オプションおよび待ち時間オプションを与えることができる。図１の装置は、ＷＣＢＲサイクル中の最下位アドレス・ビットの状態をラッチすることによってアドレス・シーケンスをプログラム可能にすることができる。この特定の実施形態のバースト長および／ＣＡＳ待ち時間は一定である。このＤＲＡＭのフィーチャ・セットの他の可能な変更には、固定バースト・モードしか有さないことと、標準高速ページ・モード（非ＥＤＯ）とバースト・モードのどちらかを選択することと、出力イネーブル・ピン（／ＯＥ）４２を／ＲＡＳと組み合わせて使用して動作モードを選択することが含まれる。また、ＷＣＢＲリフレッシュ・サイクルを使用して、制御信号と／ＲＡＳの組合せではなく動作モードを選択することができる。より複雑なメモリ装置は、／ＲＡＳ立ち下がり時間での／ＷＥと／ＯＥの様々な組合せを使用することによって高速ページ・モード、ＥＤＯページ・モード、静的列モード、バースト動作の切り換えなど追加動作モードを与えることができる。複数のアドレス線またはデータ線を使用して所望のモードを符号化するＷＣＢＲサイクルを使用することによって、同様な１組のモードから１つのモードを選択することができる。別法として、複数の動作モードを有する装置は、ワイヤ・ボンド位置、プログラム可能なヒューズ、または装置の動作モードをプログラムするために使用できる不揮発性メモリ素子を有することができる。
【００３１】
本発明の教示によって設計された１６ビット幅バーストＥＤＯモードＤＲＡＭの好ましい実施形態は、２本の列アドレス・ストローブ入力ピン／ＣＡＳＨおよび／ＣＡＳＬを有する。読取りサイクルでは、１つの／ＣＡＳ信号がトグルするだけでよい。第２の／ＣＡＳは、高のままでいることも、あるいは他方の／ＣＡＳと共にトグルすることもできる。バースト読取りサイクル中、一方の／ＣＡＳがイナクティブのままでいる場合でも読取りサイクル中の一部から１６データ・ビットがすべてドライブされる。通常のシステム応用例では、マイクロプロセッサが、各読取りサイクル中にデータ・バス上のすべてのデータ・ビットを読み取り、書込みサイクルであるデータ・バイトしか書き込まない。１つの／ＣＡＳ制御信号が読取りサイクル中に静的なままでいるようにすると、システム内の全体的な電力消費量および雑音を低減させる助けとなる。バースト書込みアクセス・サイクルでは、各／ＣＡＳ信号（ＣＡＳＨおよび／ＣＡＳＬ）は、８ビット幅のデータに対する書込みイネーブルとして働く。２つの／ＣＡＳがＡＮＤ関数において組み合わされて単一の内部／ＣＡＳが与えられ、このＣＡＳは、第１の外部／ＣＡＳが立ち下がったときに低になり、最後の外部／ＣＡＳが高になった後に高に戻る。第１の／ＣＡＳ信号が低に遷移したときにすべての１６個のデータ入力がラッチされる。１つの／ＣＡＳ信号しか低に遷移しない場合、高のままであった／ＣＡＳに関連付けられた８ビット・データはメモリに記憶されない。
【００３２】
いくつかの好ましい実施形態を参照して本発明を説明した。高速ページ・モードＤＲＡＭおよびＥＤＯ  ＤＲＡＭがｘ１データ幅、ｘ４データ幅、ｘ８データ幅、ｘ１６データ幅や、１メガビット密度、４メガビット密度、１６メガビット密度、６４メガビット密度を含め多数の構成で使用できるのとまったく同じように、本発明のメモリ装置は、多数の異なるメモリ構成の形をとることができる。集積回路メモリ設計の当業者なら、本明細書の助けで、本発明の趣旨から逸脱しない様々なメモリ装置を設計できると考えられる。したがって、本発明に適用できる様々なメモリ装置構成の詳細な説明は不要であると考えられる。
【００３３】
バーストＥＤＯメモリ装置の好適なピン配列が図３に示されている。このピン配列が、標準ＥＤＯ  ＤＲＡＭのピン配列と同じであってよいことに留意されたい。この共通のピン配列のために、この新しい装置は、最小の設計変更によって既存のメモリ設計で使用することができる。この共通のピン配列によって、標準ＥＤＯ  ＤＲＡＭピン配列に精通した当業者は新しい設計を容易に行うこともできる。標準ＥＤＯ  ＤＲＡＭピン配列を維持する前述の発明の変形形態には、システム・クロック信号を用いて／ＣＡＳピンを駆動し、メモリ・装置のデータ・アクセスとシステム・クロックとの同期をとることが含まれる。この実施形態では、／ＲＡＳが立ち下がった後の第１の／ＣＡＳアクティブ・エッジを使用して行アドレスをラッチすることが望ましく、遅いエッジを使用してバースト・アクセス・サイクルの第１の列アドレスをラッチすることができる。装置内に行アドレスおよび列アドレスがラッチされた後、アドレスを内部で増分し、システム・クロックに同期したバースト・アクセス・サイクルを与えることができる。他のピン機能代替策には、／ＯＥピン上のバースト・アドレス増分信号をドライブすることが含まれる。これは、この部分のこのピン上ではデータ出力ディスエーブル機能が必要とされないからである。／ＯＥピンの他の代替使用法でも、装置は標準ＥＤＯピン配列を維持することができるが、バースト・モード・アクセスなど機能が増加する。／ＯＥピンを使用して、有効な列開始アドレスの存在を知らせることも、あるいはバースト・アクセスを終了することもできる。これらの実施形態はそれぞれ、最小量の再設計によって現行のメモリ・システムで使用できる高速バースト・アクセス・メモリ装置を与える。
【００３４】
図４は、バースト読取りを行い、その後に図１の装置のバースト書込みを行うことに関するタイミング図である。図４で、／ＲＡＳ信号によって行アドレスがラッチされる。／ＷＥピンの状態を使用して／ＲＡＳ時のバースト・アクセス・サイクルを指定する設計実施形態では、／ＲＡＳが立ち下がったときに／ＷＥが低になる。次に、／ＷＥが高になると／ＣＡＳが低にドライブされてバースト読取りアクセスが開始され、最初の列アドレスがラッチされる。データ出力信号（ＤＱ’ｓ）は第１の／ＣＡＳサイクルではドライブされない。／ＣＡＳ信号の第２の立ち下がりで、内部アドレス生成回路は列アドレスを進め、アレイの別のアクセスを開始し、そして、／ＣＡＳからデータ・アクセスまでの時間（ｔＣＡＣ）の後に、装置から第１のデータ出力がドライブされる。指定されたバースト長が４である装置では、新しいバースト読取りアクセスに関する新しい列アドレスをラッチする／ＣＡＳの第５の立ち下がりまで追加バースト・アクセス・サイクルが継続する。第５の／ＣＡＳサイクルで／ＷＥが立ち下がると、バースト・アクセスが終了し、装置が追加バースト・アクセスのために初期設定される。／ＷＥが低になったときの／ＣＡＳの第６の立ち下がりを使用して新しいバースト・アドレスがラッチされ、入力データがラッチされ、装置のバースト書込みアクセスが開始される。バースト・アクセスが終了するまで、連続／ＣＡＳ立ち下がりで追加データ値がラッチされる。
【００３５】
図５は、バースト書込みアクセス・サイクルの後にバースト読取りサイクルを行うタイミング図である。図４の場合のように／ＲＡＳ信号を使用して行アドレスをラッチする。しかし本発明のこの実施例では、／ＷＥは／ＲＡＳの立ち下がり時にドントケアである。／ＣＡＳの最初の立ち下がりが／ＷＥの低と組合わさってバースト書込みアクセスが開始され、最初のデータがラッチされる。連続する／ＣＡＳ立ち下がりによってさらにデータ値がラッチされ、装置内部でメモリ・アドレスがインタリーブ方式または順次方式で進められる。５番目の／ＣＡＳ立ち下がりで、新しい列アドレスとそれに伴う書込みデータがラッチされる。６番目の／ＣＡＳサイクルで／ＷＥ信号が高になるまでバースト書込みアクセス・サイクルが続く。／ＷＥ信号の遷移によってバースト書込みアクセスが終了する。／ＣＡＳの７番目の低遷移によって、新しい列アドレスがラッチされ、バースト読取りアクセスが開始する（／ＷＥは高である）。バースト読取りはバースト・サイクルが終了するまで続く。
【００３６】
図４及び図５から、バースト読取りサイクル中、短いデータ遷移期間を除いて、／ＯＥピンが低であるかぎり装置出力上のデータが有効なままであることに留意されたい。また、／ＣＡＳが立ち下がる前、あるいは／ＣＡＳが立ち下がるときに／ＷＥピンは低なので、データ入出力線は書込みサイクル中のその部分からはドライブされず、／ＯＥピンは「ｄｏｎ’ｔ  ｃａｒｅ」である。／ＣＡＳ信号およびデータ信号のみが比較的高い周波数でトグルし、１／ＣＡＳサイクル時間以下の間、／ＣＡＳ以外の制御信号はアクティブ状態になる必要も、あるいはイナクティブ状態になる必要もない。これは、多くの場合、行アドレス・ストローブ、列アドレス・ストローブ、データ・マスク、読取り／書込み制御信号が様々な装置機能に関して１クロック・サイクル以下の間有効であることを必要とするＳＤＲＡＭとは対称的である。通常のＤＲＡＭでは、列アドレスが、／ＣＡＳが立ち下がる前にアレイ内を伝搬しデータ・アクセスを開始することもできる。これは、アドレスが、／ＣＡＳが立ち下がる前に、データがアレイからアクセスされるのに十分な期間にわたって有効であった場合に、／ＣＡＳ立ち下がりから高速データ・アクセスを行えるようにするために行われる。このような設計では、／ＣＡＳが立ち下がる前に列アドレスが変更された場合に、アドレス遷移検出回路を使用してメモリ・アクセスが再開される。この方法では実際には、新しい列アドレスに備えるために、最後のアドレス遷移の後、各メモリ・サイクルの始めにある期間を確保しなければならないので、メモリ・アクセスを行うための追加時間が必要である。／ＣＡＳが立ち下がる直前に列アドレスが変更されると、アクセス時間が約５ナノ秒だけ増加する。本発明の実施形態では、列アドレスは、／ＣＡＳが立ち下がらないうちはアレイ内で伝搬することはできない。これによって、アドレス遷移検出回路が不要になり、／ＣＡＳに対する固定アレイ・アクセス時間が確保される。／ＣＡＳの立ち下がり遷移までは列アドレスがアレイに伝播しないように妨げると同時に、／ＣＡＳの立ち上がりでカウンタを進めて、次の／ＣＡＳの立ち下がりに備えて有効列アドレスを供給する。
【００３７】
図６は、本発明により設計されたシングル・インライン・メモリ・モジュール（ＳＩＭＭ）の概略図である。このＳＩＭＭは、既存のシステムおよびソケットとの物理的互換性を持たせるために標準ＳＩＭＭモジュール・ピン配列を有する。２メガ×８メモリ装置１０、１２、１４、および１６のそれぞれをＥＤＯページ・モードで動作させた場合、ＥＤＯページ・モードＳＩＭＭとの機能上の互換性が維持される。／ＣＡＳ信号１８、２０、２２および２４のそれぞれが１バイト幅の３２ビット・データ・バス２６、２８、３０、および３２を制御する。／ＲＡＳ３４信号を使用して各メモリ装置内の行アドレスをラッチし、／ＷＥ３６と組み合わせて使用して、ページ・モード・アクセス・サイクルとバースト・モード・アクセス・サイクルの両方のモードで動作可能な装置で２つのモードの間の選択を行う。アドレス信号３８がＳＩＭＭ上の各メモリ装置に多重化行および列アドレスを供給する。バースト・モードでは、アクティブ／ＣＡＳ制御線だけを装置の動作周波数でトグルするか、または、前述のように／ＣＡＳ信号の各エッジを使用する場合はその半分の周波数でトグルする必要がある。データ線は／ＣＡＳ線の半分の周波数または同じ周波数で切換え可能である必要があり、その他の制御信号およびアドレス信号は、／ＣＡＳ線およびデータ線より低い周波数で切り替わる。図６に示すように、各／ＣＡＳ信号および各データ線は１つのメモリ装置に接続され、他の制御信号およびアドレス信号より高い周波数で切り換わることができるようになっている。各メモリ装置１０、１２、１４および１６は本発明により設計されて、バースト動作モードが可能であり、第１の行および列アドレスがラッチされた後で／ＣＡＳ制御線を基準にしたタイミングによって複数のメモリ・アドレス場所からの順次またはインタリーブ・データ・アクセスを行うように内部アドレス生成を実現する。
【００３８】
図７に、本発明により設計された他のＳＩＭＭの前面図を示す。このＳＩＭＭ上の各装置は１メガ×４に構成された４メガビットＤＲＡＭである。この構成では、１つの／ＣＡＳが２つのメモリ装置を制御して１バイト幅のデータ・バスへのアクセスを実現する。図の８個の装置は３２ビット幅で４メガバイトのＳＩＭＭを形成する。３２ビット幅で８メガバイトのＳＩＭＭの場合、裏側にさらに８個の装置（図示せず）がある。
【００３９】
図８に、図７の装置に従って設計されたメモリ・モジュールの好ましいピン配列を示す。このピン配列は、高速ページ・モードＳＩＭＭおよびＥＤＯ  ＳＩＭＭのピン配列と互換性がある。ピン６６にはＥＤＯ動作を示すために存在検出ピンが設けてあり、標準ＥＤＯ部品タイプに従って、ピン４６に／ＯＥ入力が設けてある。
【００４０】
図６、図７、および図８のＳＩＭＭモジュールの代替実施例には、標準ＳＩＭＭモジュール・ピン配列に従ってそれぞれの／ＲＡＳ信号が１６ビット幅のデータ・バスを制御する２つの／ＲＡＳ信号の使用が含まれる。図６の装置にさらに４個の２Ｍ×８ＥＤＯバースト・モードＤＲＡＭを追加して４Ｍ×３２ビットのＳＩＭＭを実現することもできる。１６ビット幅のＤＲＡＭも使用することができ、それらのＤＲＡＭは典型的には２つの／ＣＡＳ信号を有し、各／ＣＡＳ信号が８ビット・データ幅を制御する。パリティ・ビットまたは誤り検出および修正回路を組み込むことにより、他の可能なＳＩＭＭモジュール構成が実現される。誤り検出や修正を行う方法は、当業者には周知であり、本出願ではそのような回路の詳細な説明は記載しない。当業者なら本明細書を読めば、本発明の新規なメモリ・装置を使用したその他のＳＩＭＭ設計も設計することができる。本発明についてＳＩＭＭ設計を参照しながら説明したが、本発明はＳＩＭＭには限定されない。本発明は、デュアル・インライン・メモリ・モジュール（ＤＩＭＭ）およびマルチチップ・モジュール（ＭＣＭ）を含む他のタイプのメモリ・モジュールにも等しく適用可能である。
【００４１】
図９は、本発明により設計されたデータ処理システムの概略図である。本明細書ではマイクロプロセッサとは、マイクロプロセッサ、マイクロコントローラ、ディジタル信号プロセッサ、算術演算プロセッサ、または中央演算処理装置（ＣＰＵ）とすることができるが、これらには限定されない。図９では、マイクロプロセッサ１１２はアドレスおよび制御信号１１６とデータ信号１１８とから成るマイクロプロセッサ・ローカル・バス１１４に接続されている。マイクロプロセッサは、タイミングおよび制御回路１２０を介していくつかの資源にアクセスすることができる。たとえば、タイミングおよび制御回路は、マイクロプロセッサからアドレス信号と制御信号を受け取り、スタティック・ランダム・アクセス・メモリ・キャッシュ１１７と、密結合非キャッシュ・バースト・アクセスＤＲＡＭ１１９と、疎結合ＤＲＡＭ１３２とに制御信号を供給する。
【００４２】
マイクロプロセッサ・メモリのアクセス速度と帯域幅は、マイクロプロセッサ・システムのパフォーマンスにとってきわめて重要なパラメータである。これらのパラメータを最大化するため、ＳＲＡＭキャッシュを使用する場合は一般には中間データ・バッファやラッチなしでマイクロプロセッサ・ローカル・バス１１４に直接接続する。典型的にはＤＲＡＭであるメイン・メモリは大量のデータ記憶容量を備える必要がある。マイクロプロセッサのバス駆動能力は限られているため、２、３個以上のメモリ・チップから成るメイン・メモリをアドレス・バッファおよびデータ・バッファを介してマイクロプロセッサから分離する必要がある。図９のシステムでは、マイクロプロセッサ・アドレス・バスは疎結合メイン・メモリ１３２に制御回路１２０を介して、さらに任意選択で追加のバッファ１３０を介して結合される。一般には、制御回路１２０内でマイクロプロセッサ・コマンドとアドレス信号を再フォーマットする必要がある。また、再フォーマットされたアドレス信号と制御信号（疎結合メモリの場合は１２６、密結合メモリの場合は１２７）の一部または全部を、バッファ１３０を介してバッファリングし、付随するメモリの負荷を駆動する必要がある場合がある。疎結合メモリのバッファリングされたアドレス信号と制御信号は信号１２８として図示されている。制御回路１２０内で必要なアドレス再フォーマットの一例は、マイクロプロセッサからの３２ビット・アドレスを１６メガバイトの疎結合メモリのために１２ビット多重化アドレス・バスを介して１２ビット行アドレスと１２ビット列アドレスに多重化することである。制御信号の再フォーマットには、マイクロプロセッサからのメモリ・アクセス要求に応答した／ＲＡＳと／ＣＡＳの生成が含まれる。マイクロプロセッサ・データ・バス１１８はデータ・トランシーバ１３６を介して疎結合メイン・メモリ・データ・バス１３４に結合されている。データ・トランシーバとは、マイクロプロセッサとの間でメモリ・データを送受信することができるようにする双方向データ・バッファである。メイン・メモリの密結合非キャッシュ部分１１９は、高速データ転送のためにマイクロプロセッサに、より直接的に結合されている。マイクロプロセッサのアドレス信号と制御信号は、制御回路を介して密結合メイン・メモリに結合されている。この制御回路は好ましい実施例では多重化アドレス信号とメモリ固有のタイミング制御信号１２７を密結合メイン・メモリに供給する。この場合も、制御回路と密結合メモリとの間に追加のバッファを付加して制御回路にかかる負荷を軽減することができるが、追加の遅延を生じさせるため好ましくない。好ましい実施例では、密結合メモリはマイクロプロセッサと共通の回路ボードにはんだ付けされた８個の２メガ×８バーストＥＤＯ  ＤＲＡＭから成る。メモリ回路の数は８個でなくてもよいが、プロセッサ・データ幅（この場合は６４ビットデータ・バス幅）と等しいデータ幅を備えることが好ましい。同様に、バーストＥＤＯ  ＤＲＡＭの代わりにＳＤＲＡＭまたはその他のバースト・アクセス・メモリ装置を使用することもできる。このようにしてシステム回路ボードに直接接続された限られた数のメモリ回路は、高パフォーマンスのメモリ対マイクロプロセッサ・インタフェースを提供する。システムが密結合メモリの複数の構成を受け入れるように設計されている場合は、バス負荷と信号雑音の変化に対応できるようにメモリ・インタフェースの最高パフォーマンスを低下させる必要がある場合がある。初期アクセス遅延後、バーストＥＤＯ  ＤＲＡＭはバースト・アクセス中のクロック・サイクルごとにマイクロプロセッサにデータを供給することができる。これは、一般にはページ・モード動作中のデータ・アクセス間に遊休クロック・サイクル（待ち状態）を必要とする疎結合メイン・メモリとは異なる。
【００４３】
制御回路１２０はさらに、マイクロプロセッサがローカル・システム・バス１４０上にある他のシステム構成要素へのアクセスすることができるようにする。ローカル・バス１４０は、ＰＣＩバス（周辺構成要素相互接続）、ＶＬバス（ビデオ・エレクトロニクス標準境界（ＶＥＳＡ）ローカル・バス）、または同等のアーキテクチャのものとすることができる。ＶＬバスは主として、Ｉｎｔｅｌ  ４８６世代のマイクロプロセッサを使用するコンピュータで使用される。ＰＣＩバスは主として、Ｉｎｔｅｌ  Ｐｅｎｔｉｕｍ（登録商標）級のマイクロプロセッサで使用されるが、ＩＢＭ  ＰｏｗｅｒＰＣマイクロプロセッサを使用するコンピュータでも広く使用されるようになると考えられる。同様に、将来の世代のマイクロプロセッサを使用するコンピュータは、本発明のアーキテクチャの範囲と精神から逸脱しない新しいローカル・バス標準を持つようになる可能性が高い。ローカル・バスは、制御回路１２０と追加の１組のデータ・トランシーバ１３８を介して疎結合メイン・メモリにアクセスすることができる。制御回路１２０は、ローカル・システム・バス１４０を介して周辺装置から密結合メモリへのアクセスも制御することができる。
【００４４】
追加の制御回路１５０を使用してＩＳＡ（業界標準アーキテクチャ）バス１５４とのインタフェースを設けることができる。このバスは、前の世代のコンピュータおよびそれらのコンピュータために設計された周辺装置との互換性を提供する。キーボード、マウス、ＣＤ  ＲＯＭドライブ、フロッピィ・ディスク・ドライブ、ハード・ドライブなどの追加の周辺装置１５２も、制御回路１５０を介してローカル・バスにインタフェースすることができる。ＩＳＡバス・インタフェースに従って設計されたコンピュータ・アドイン・カード１５８にマイクロプロセッサがアクセスしたり、アドイン・カード１５８がＩＳＡバスを介してシステム資源にアクセスしたりすることができる。ＢＩＯＳ（基本入出力システム）ＲＯＭ１５６にもＩＳＡバスを介してアクセスすることができる。インタフェース信号１４８によって、ＩＳＡバス上の装置およびその他の周辺装置によるＰＣＩバスのアクセスを制御する。ディスプレイ・バッファの帯域幅が大きくなるにつれてシステム・パフォーマンス向上に合わせて、一般にローカル・バスにビデオ・フレーム・バッファ・カード１４４をインタフェースさせる。ＰＣＩバス上にはその他のＰＣＩカード１４６を接続することができる。このシステム・アーキテクチャでは、マイクロプロセッサが最も頻繁にアクセスするシステム構成要素をマイクロプロセッサのローカル・バスに接続して全体的なシステム・パフォーマンスを向上させる。ビデオ・バッファなどのその他の頻繁にアクセスされる装置には、ローカル・システム・バスを介してアクセスする。最後に、アクセス時間が遅い装置や全体的システム・パフォーマンスにとってあまり重要でない装置は、ＩＳＡバス上に配置する。ローカル・バスとＩＳＡバスは一般にシステム・マザー・ボード上に実装される。プロセッサとキャッシュ・メモリとメイン・メモリも一般にはシステム・マザー・ボード上に搭載されるが、これらのシステム構成要素の一部または全部をドータ・ボード上に搭載し、ドータ・ボードをよりパフォーマンスの高いプロセッサ・サブシステムと交換することによってパフォーマンスのアップグレードを容易に行えるようにすることができる。複数プロセッサ・システムも可能であり、好ましい実施例では各プロセッサがそれ自体の密結合メイン・メモリ・サブシステムと、それ自体の疎結合メモリ・サブシステムまたは共有疎結合メモリ・サブシステムを有する。
【００４５】
動作中、密結合バーストＥＤＯメイン・メモリ部分がある場合、マイクロプロセッサはメモリ制御回路を介してメモリにアドレス信号と制御信号を供給することによってデータを読み取る。初期アドレスと読取りコマンドとアクセス・サイクル・ストローブとに応答して、メモリは初期アドレスにある第１のデータ・ワードへのアクセスを開始する。バースト・アクセスの第２のアクセス期間中に第２のアクセス・サイクル・ストローブによってメモリ内のアドレスが進められ、第２のアドレスからのデータの読取りアクセスが開始される。待ち時間が２の場合、第１のデータは第２のアクセス・サイクル・ストローブ信号が発生した後にメモリから駆動される。典型的には、第１のデータはバースト・アクセスの第３のアクセス・サイクル期間の初めに発生する第３のアクセス・サイクル・ストローブに応答してマイクロプロセッサにラッチされる。第３のアクセス・サイクル・ストローブによって、第２のデータ値もメモリから駆動される。第３のアクセス・サイクル・ストローブによって、メモリ内で第３のアドレスも生成され、第３のデータ・アクセスが開始する。４ワード・バースト・アクセスの場合、第３、第４、第５、および第６のアクセス・サイクル・ストローブに応答して、バースト・データがマイクロプロセッサにラッチされる。このようにして、１つのアドレスと複数のアクセス・サイクル・ストローブに応答して、マイクロプロセッサで４個のデータ値を受け取る。メモリが４ワード・バースト・シーケンスを実行するように設計されており、メモリからの追加のデータ値を必要とする場合、マイクロプロセッサは、第５のアクセス・サイクル・ストローブ信号を使用してメモリに第２のアドレスを供給することができる。この場合、マイクロプロセッサが第１の４ワード・バーストからデータを受け取っている間に第２の４ワード・バースト・シーケンスが開始される。バースト・アクセスと６６メガヘルツのシステム・クロックとの関係はたとえば次のようになる。第１のサイクルでは制御回路１２０にアドレス情報と制御情報をラッチする。第２のサイクルでは信号線１２７上で密結合メモリのために行アドレスと／ＲＡＳ信号を生成する。第３のサイクルでは信号線１２７上で列アドレスを生成する。第４のサイクルでは１２７上で第１のアクセス・サイクル・ストローブを生成する。第５のサイクルでは、１２７上で第２のアクセス・サイクル・ストローブを生成する。第６のサイクルでは、第３のアクセス・サイクル・ストローブを生成し、１１８を介して第１のデータ値をマイクロプロセッサにラッチする。それ以降のサイクルで、アクセス・サイクル・ストローブを生成し、マイクロプロセッサにデータをラッチする。４ワード・バースト・アクセスの場合、タイミングは６−１−１−１と記述することができ、第１のデータ値は６システム・クロック・サイクル後にラッチされ、連続したシステム・クロック・サイクルで３個の連続したデータ値がラッチされる。これに対して典型的なＳＲＡＭキャッシュはデータを３−１−１−１のシーケンスで供給することができる。ＳＲＡＭキャッシュのサイズの限界によって、一般にはキャッシュ・ヒットは約８０％に抑えられるが、比較的大容量の密結合メモリは１００％近いヒット率を実現することができる。密結合メモリのないシステムでは、キャッシュ・ミスの結果、一般には疎結合メモリからの７−２−２−２のアクセス・シーケンスになる。疎結合メイン・メモリだけでは１００％のヒット率を有し、（７＋２＋２＋２）／４＝３．２５システム・クロック・サイクルの平均アクセス・サイクル時間になる。１００％のヒット率を持つ密結合メイン・メモリでは、９／４＝２．２５システム・クロック・サイクルの平均アクセス・サイクル時間になる。同様に、疎結合メイン・メモリを備えたＳＲＡＭキャッシュを有するシステムの平均アクセス・サイクル時間は［（．８×６）＋（．２×１３）］／４＝１．８５システム・クロック・サイクルになる。最後に、ＳＲＡＭキャッシュを備えた密結合システムの平均アクセス時間は、８０％のキャッシュ・ヒット率と２０％の密結合メモリ・ヒット率で１．６５システム・クロック・サイクルである。これらの値は、ＳＲＡＭキャッシュと疎結合メイン・メモリの読取りと書込みの両方のアクセス時間を示す。しかし、一般にはアクセス・サイクル信号に関して待ち時間がないため、密結合バーストＥＤＯメモリ書込みサイクルの方がより高速である。この結果、密結合メモリのバースト書込みでは４−１−１−１の書込みサイクル・シーケンスになる。密結合メイン・メモリの組込みにより、ＳＲＡＭキャッシュを使用しない場合は中ないし高パフォーマンスのシステムが実現され、ＳＲＡＭキャッシュを使用した場合はきわめて高いパフォーマンスが実現される。
【００４６】
本発明のバーストＥＤＯメモリ装置は、従来のＤＲＡＭよりも短いサイクル時間で動作することができるため、密結合メイン・メモリ適用態様での使用に特に適している。サイクル時間が長いので（恐らく２システム・クロック・サイクル）データ・バッファを追加してもアクセス時間は大幅には増えないが、データ・バッファがないとプロセッサ・データ・バスに負荷がかかるため、従来のＤＲＡＭメモリをプロセッサ・バスに直接接続してもほとんど利点がない。一方、バーストＥＤＯ  ＤＲＡＭは、データ・バッファを組み込んだ場合、最低サイクル時間に対するバッファの遅延の割合がより大きいため、たとえば比較的高いクロック周波数で６−１−１−１アクセス・シーケンスで動作することができない。
【００４７】
本発明の好ましい実施例では、図９の疎結合メモリ１３２は２種類以上のタイプのメモリのうちの１つを使用して動作する。たとえば、メモリはバーストＥＤＯ、高速ページ・モード、またはＥＤＯメモリ装置で構成することができる。システムはたとえば高速ページ・モード、ＥＤＯ、またはバーストＥＤＯメモリ装置を有するメモリ・モジュールを受け入れるように調整することができ、その場合、システムを拡張して疎結合メモリの追加またはアップグレードが可能なように、各モジュールはまったく同じかほぼ同じピン配列を備えている。
【００４８】
フラッシュ・メモリおよびＳＤＲＡＭメモリも疎結合メモリで使用するのに適しているが、これらは一般に他のタイプのメモリ装置と交代可能ではなく、したがってシステム構成の多様性が限定される。フラッシュ・メモリは特に、フラッシュ・メモリの方が磁気ハードディスク・ドライブ技法に優る特定のパフォーマンス上の利点がある携帯型コンピュータでの使用に有益な場合がある。この構成では、疎結合不揮発性メモリ・バンクが内部固体ハード・ドライブの機能を実行することができ、（ディスク空間として不要な）使用可能なメモリが、より低パフォーマンスのランダム・アクセス・メモリから高パフォーマンス密結合メモリ・サブシステムへの拡張の役割を果たすことができる。
【００４９】
図１０は、本発明の他の実施例の概略図である。図９の要素と共通の機能および説明を有する要素はそれに応じて番号が付してある。図１０で、疎結合メイン・メモリ１３２は、制御回路１２０に結合されたメモリ・データ・バス１３４を有する。制御回路１２０は、データ経路制御と、疎結合メモリからプロセッサ・バス１１４を介してＣＰＵ１１２までのバッファリングを行う。また、制御回路１２０は、システム・バス１４０を介して他のシステム構成要素が疎結合メイン・メモリにアクセスすることができるようにする。図１０には、ディスプレイ・フレーム・バッファを備えることができるビデオ制御回路１４４に結合された表示装置１６０も明示されている。表示装置は、陰極線管（ＣＲＴ）、液晶表示装置（ＬＣＤ）、または電界放出表示装置（ＦＥＤ）とすることができるが、これらには限定されない。
【００５０】
図１１は、本発明の教示に従ってシステム内にどのタイプのメモリが存在するかを判断する方法のタイミング図である。特定の例を示すために、図のデータ値はデータ幅が４ビットのシステムに対応している。実際には、典型的なシステム・データ・バスは８、１６、３２、６４、またはその他のデータ幅を有することができる。同様に、このタイミング図は図９のシステムを参照しながら検討することができるが、説明する方法は、少なくとも２つの異なるアクセス・モードのうちの１つまたは複数のアクセス・モードで動作可能なメモリ装置を使用することができる、本発明の教示による多様なシステム構成に等しく有用である。図１１では、ページ・モード書込み形式を使用して２つのデータ値がメモリに書き込まれる。この形式は、高速ページ・モード、ＥＤＯ、またはバーストＥＤＯメモリ装置にデータを正しく記憶する。メモリがバーストＥＤＯの場合、第２のアドレスは内部で生成されるため、図の第２の列アドレス（Ｃｎ＋１）はメモリ装置または書き込まれる装置によって全く無視される。互いに容易に区別可能で駆動されないバスからも容易に区別可能なように選定した２つのデータ値（０１１０および１００１）を書き込んだ後、メモリをバーストＥＤＯ形式で読み取る。ＤＡＴＡ  ＦＰＭと符号が付された波形は、メモリが高速ページ・モードで動作しているシステムのデータ・バスを表す。ＤＡＴＡ  ＢＥＤＯと符号が付された波形は、メモリがバーストＥＤＯモードで動作しているシステムのデータ・バスを表す。縦線ｔ１、ｔ２、ｔ３、ｔ４、およびｔ５は、システム内に存在する可能性のあるメモリのタイプを区別するためにデータをサンプリングすることができる、いくつかの可能な時点を表す。特に時点ｔ５では、読取り操作に対して各メモリ・タイプが異なる応答を示す。時点ｔ５では／ＣＡＳが高のため、高速ページ・モード・メモリはデータ・バスを駆動していない。バスが駆動されていない場合、一般には高、低、または高と低の値のパターンとしてディジタルに解釈されるレベルにフロートまたは終了する。いずれの場合も、データは書き込まれているパターンと一致する可能性が低い。狭いデータ・バスを使用するシステムの場合、またはバス特性が不明の場合、様々なデータ・パターンを使用してこの方法を繰り返し、バスが書き込まれたデータと一致するものとして解釈されるような信号レベルを供給しないように保証することが望ましい。広いデータ・バスの場合、駆動されないバスがランダムまたは適切に変化するデータ・ビット・パターンと一致する可能性はきわめて低く、複数のパターンは不要とみなせることがある。たとえば３２ビット・データ・バスの可能なパターンは０１１０  １００１  １１１１  ０００１  １１００  ００１１  ００００  １１１０となる。時点ｔ５で、読取りアドレスはサイクルごとに変化していないため、ＥＤＯメモリは列アドレスＣｎからデータをデータ・バス上に駆動する。図１１の例の場合、この値は０１１０である。時点ｔ５で、待ち時間が２のバーストＥＤＯメモリは、バースト読取りアクセス・サイクル中に内部アドレスを自動的に増分するので列アドレスＣｎ＋１からデータを供給する。このようにして、時点ｔ５でメモリ・タイプが高速ページ・モード、ＥＤＯ、またはバーストＥＤＯのいずれであるかを判断することができる。より包括的な方法は、待ち時間が２以外のバーストＥＤＯメモリ装置を可能にするために、２サイクルの書込みサイクルおよび３サイクルの読取りサイクルより多くのサイクルを実行する。たとえば、４サイクルの書込みサイクルの後に５サイクルの読取りサイクルを行い、５番目の読取りサイクルの後の／ＣＡＳ高でデータをサンプリングする場合、高速ページ・モード・メモリではデータはバスに依存し、ＥＤＯメモリでは最初のデータ値と等しく、待ち時間が２、３または４のバーストＥＤＯメモリではそれぞれ４番目、３番目または２番目のデータ値と等しい。
【００５１】
本発明による他の方法は、／ＣＡＳをトグルして複数のデータ・パターンを供給しながら列アドレスをＣｎに維持してバースト・モード形式でデータを書き込むことである。次に、アドレスＣｎ＋ｘでの読取りサイクル（ただしＣｎ＋１はバーストＥＤＯメモリ装置に書き込まれているはずのアドレスの範囲内にある）をバーストまたはページ・モード読取りシーケンスの一部として行う。メモリがバーストＥＤＯメモリの場合、アドレスＣｎ＋ｘから読み取られたデータ・パターンは、待ち時間後にＣｎ＋ｘに書き込まれたパターンと一致することになる。高速ページ・モードおよびＥＤＯメモリは、バースト・モード書込みの前にＣｎ＋ｘにあったデータなら何でも供給する。あるいは、／ＣＡＳの低期間の終わり付近でデータをサンプリングするアドレスＣｎに対する単一読取りサイクルは、高速ページ・モードまたはＥＤＯメモリの場合に有効データ出力を供給するが、バーストＥＤＯメモリの場合は待ち時間が満たされていないために有効データを出力しない。
【００５２】
システム内にあるメモリ・タイプを判断する上記の各方法では、メモリ自体に複数の動作モードがあることがわかっている場合には、メモリを特定のモードにするステップを行う必要がある。そのメモリは、メモリがどのような動作モードをサポートするかを判断するために、メモリを可能な所望の各動作モードにする適切な手続きを行った後で検査することができる。また、メモリが線形アドレス指定・モードと順次アドレス指定・モードとの間で切り替わることができる場合、線形アドレス指定・モードであるか順次アドレス指定・モードであるかを考慮しなければならない。どのようなＳＲＡＭでも、上述の方法を行う前にディスエーブルにする必要があるか、または読み取るデータがキャッシュ・データだけにならないように保証するための追加のステップが必要である。また、初期設定されていない記憶場所との偽の一致を避けるために、この方法を使用するアドレス範囲に既知の背景データ・パターンを書き込むことができる。
【００５３】
本発明は、各メモリ・バンクがいくつかのタイプのメモリのうちの１つを有することができる複数のメモリ・バンクを有するシステムを教示する。この教示により設計されたシステムでは、上述のように各バンクを個別に検査することができる。システムのメモリ・コントローラは、存在するメモリのタイプに従って各バンクにアクセスするようにプログラムされる。
【００５４】
本発明について好ましい実施例を参照しながら説明したが、当業者には本発明の範囲から逸脱することなく本発明の多くの修正および変形が明らかであろう。
【図面の簡単な説明】
【００５５】
【図１】バーストＥＤＯメモリの電気配線略図である。
【図２】線形アドレス指定形式とインタリーブ・アドレス指定形式との対比を示す表である。
【図３】図１の装置の好ましいピン配列を示す図である。
【図４】図１の装置にアクセスする方法のタイミング図である。
【図５】図１の装置にアクセスする他のタイミング図である。
【図６】シングル・インライン・メモリ・モジュールの電気配線略図である。
【図７】図１の装置を使用する他のメモリ・モジュールの前面図である。
【図８】図６のメモリ・モジュールの好ましいピン配列を示す図である。
【図９】本発明により設計されたシステムを示す概略図である。
【図１０】本発明により設計されたシステムの他の実施例を示す概略図である。
【図１１】システム内にどのタイプのメモリが存在するかを判断する方法のタイミング図である。
【符号の説明】
【００５６】
１２    メモリ・アレイ
１８    ラッチ
２２    行デコーダ
２６    カウンタ
３０    列デコーダ
３４    入出力論理及びラッチ
３８    制御回路
４０    モード・レジスタ
１１２  ＣＰＵ
１１４    マイクロプロセッサ・ローカル・バス
１１７    ＳＲＡＭキャッシュ
１１８  バーストＥＤＯ  ＤＲＡＭ
１２０    バス及びメモリ制御回路
１３０  バッファ
１３２    ＤＲＡＭ
１４０    ローカル・システム・バス
１５０    制御回路
１５２    周辺装置
【図１】
2005011485.tif 000003
【図２】
2005011485.tif 000004
【図３】
2005011485.tif 000005
【図４】
2005011485.tif 000006
【図５】
2005011485.tif 000007
【図６】
2005011485.tif 000008
【図７】
2005011485.tif 000009
【図８】
2005011485.tif 000010
【図９】
2005011485.tif 000011
【図１０】
2005011485.tif 000012
【図１１】
2005011485.tif 000013