[go: up one dir, main page]

JPH06266607A - Data processing system and method for programming of its memory timing - Google Patents

Data processing system and method for programming of its memory timing

Info

Publication number
JPH06266607A
JPH06266607A JP4355363A JP35536392A JPH06266607A JP H06266607 A JPH06266607 A JP H06266607A JP 4355363 A JP4355363 A JP 4355363A JP 35536392 A JP35536392 A JP 35536392A JP H06266607 A JPH06266607 A JP H06266607A
Authority
JP
Japan
Prior art keywords
memory
timing
data
dram
simm
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
JP4355363A
Other languages
Japanese (ja)
Inventor
Gilman Chesley
ギルマン・チェスレイ
Jean A Gastinel
ジャン・エイ・ガスティネル
Fred Cerauskis
フレッド・セロースキーズ
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.)
Xerox Corp
Sun Microsystems Inc
Original Assignee
Xerox Corp
Sun Microsystems 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 Xerox Corp, Sun Microsystems Inc filed Critical Xerox Corp
Publication of JPH06266607A publication Critical patent/JPH06266607A/en
Pending legal-status Critical Current

Links

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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/12Group selection circuits, e.g. for memory block selection, chip selection, array selection
    • 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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4243Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Dram (AREA)
  • Stored Programmes (AREA)
  • Memory System (AREA)

Abstract

PURPOSE: To attain a programmable memory timing by using a RAM in a memory controller device in a data processing system. CONSTITUTION: The timing information of a memory operating is stored by using an MCRAM. The MCRAM stores information related with RAS, CAS, LD, and AD timing signals by each memory operation of reading, writing, and reproduction. At first, general timing information enabling access to all possible DRAM memory modules is loaded to the MCRAM. Then, a processor searches for the ID number of the DRAM in a specific memory module, and a lookup table searches for an optimal timing designated by a seller related with the DRAM corresponding to this ID number by using the number, and the optimal timing information is written in the MCRAM. Afterwards, all memory operations for this specific memory module use this optimal timing information.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、コンピュータ・メモリ
の分野に関するものであり、とりわけ、メモリ・コント
ローラに結合されたメモリ・モジュールに対するタイミ
ング信号を発生するために用いられる、メモリ・コント
ローラ・タイミング・データに有効にプログラミングを
施すための装置及びプロセスに関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to the field of computer memory, and more particularly to a memory controller timing controller used to generate timing signals for a memory module coupled to the memory controller. The present invention relates to a device and a process for effectively programming data.

【0002】[0002]

【従来の技術】コンピュータ・システムは、一般に、各
種タスクに関するデータ及びコンピュータ・プログラム
を記憶するため、ダイナミック・ランダム・アクセス・
メモリ(DRAM)のバンクを利用する。例えば、ビッ
ト・マップ・コンピュータ・ディスプレイ・システムの
場合、陰極線管(CRT)ディスプレイに配置される各
ピクセルには、メモリにおけるそのピクセルを表すため
の単一ビット・デジタル値、または、カラーを表すため
の複数ビット・デジタル値が割り当てられる。コンピュ
ータは、伝統的に、8ビット、16ビット、32ビッ
ト、64ビット、または、それ以上のインクリメント
で、そのメモリにアドレス指定されている。通常、1メ
モリ・サイクルは、所定数のビットを転送する能力を備
えている。デジタル・コンピュータの登場以来何年もの
間に、データ処理システムの性能を最大限にするため、
さまざまなメモリ構造及びアーキテクチャが開発されて
きた。
2. Description of the Related Art Computer systems typically store dynamic random access access to store data and computer programs for various tasks.
A bank of memory (DRAM) is used. For example, in a bit map computer display system, each pixel located in a cathode ray tube (CRT) display has a single bit digital value to represent that pixel in memory, or to represent color. Is assigned a multi-bit digital value of. Computers have traditionally been addressed in their memory in 8-bit, 16-bit, 32-bit, 64-bit, or more increments. Generally, one memory cycle has the ability to transfer a predetermined number of bits. In the years since the advent of digital computers, to maximize the performance of data processing systems,
Various memory structures and architectures have been developed.

【0003】本出願の譲り受け人である、Sun Mi
crosystems,Inc.によって製造されるエ
ンジニアリング・ワークステーションのような、いくつ
かのコンピュータ・システムには、ワークステーション
の主プリント回路基板(「マザー・ボード」)にプラグ
で接続されるDRAMモジュールを利用して、ダイナミ
ックRAMメモリが設けられている。これらのDRAM
モジュールは、所定のサイクル時間及び動作モードに関
して、モジュール毎に既知量の記憶を可能にする。例え
ば、東芝によって提供されるDRAMモジュールの場
合、コンピュータのマザー・ボードのメモリ拡張スロッ
トに挿入されるプリント回路基板によって、72メガビ
ット、36メガビット、及び、他の組み合わせのRAM
記憶容量が得られる。
The assignee of this application, Sun Mi
crosystems, Inc. Some computer systems, such as the engineering workstations manufactured by, utilize a DRAM module plugged into the workstation's main printed circuit board ("mother board") to provide dynamic RAM. Memory is provided. These DRAM
The modules allow a known amount of storage per module for a given cycle time and mode of operation. For example, in the case of a DRAM module provided by Toshiba, 72 megabits, 36 megabits, and other combinations of RAMs can be provided by a printed circuit board that is inserted into a memory expansion slot of a computer motherboard.
Storage capacity is obtained.

【0004】本出願が一部継続出願になる、1990年
7月17日に提出の特許出願第07/554,283号
には、デジタル・コンピュータ・システムに用いられる
複数のDRAMを含む、改良形単一イン・ライン・メモ
リ・モジュールが開示されている。この出願に開示のデ
ータ処理システムは、SIMMとして知られる複数メモ
リ・モジュールを利用している。これらのSIMMのそ
れぞれに、DRAMが含まれており、これらのDRAM
のそれぞれが、所定のサイクル時間及び動作モードに関
して既知の記憶量を提供する。
Patent application 07 / 554,283, filed Jul. 17, 1990, which is a continuation-in-part of this application, discloses an improved form that includes a plurality of DRAMs used in digital computer systems. A single in-line memory module is disclosed. The data processing system disclosed in this application utilizes multiple memory modules known as SIMMs. Each of these SIMMs contains a DRAM and these DRAMs
Each provide a known amount of storage for a given cycle time and mode of operation.

【0005】一般に、複数メモリ・モジュールを利用し
たシステム内では、メモリの操作のタイミングが固定さ
れ、あるいは、ハード配線されている。DRAMの取り
替えまたは置換が所望の場合、この固定タイミングは、
問題を生じる可能性がある。一般的な問題として、市場
では、現在、さまざまなタイミング要件を備えた各種D
RAMの入手が可能である。第1の売り手のDRAMの
タイミング要件は、第2の売り手のDRAMのタイミン
グ要件と異なっている。従って、固定タイミングのデー
タ処理システムの場合、個人が、必ずしも、第1の売り
手のDRAMと第2の売り手のDRAMを交換すること
ができるとは限らない。とりわけ、SIMMシステム内
において、固定タイミングは、第1の売り手のDRAM
を含む第1のグループをなすSIMMと第2の売り手の
DRAMを含む第2のグループをなすSIMMの交換は
容易ではない。
Generally, in a system using a plurality of memory modules, the operation timing of the memory is fixed or hard wired. If a DRAM replacement or replacement is desired, this fixed timing is
May cause problems. As a general matter, the market currently has a variety of D's with varying timing requirements.
RAM is available. The timing requirements of the DRAM of the first seller are different from the timing requirements of the DRAM of the second seller. Therefore, in a fixed timing data processing system, an individual may not always be able to replace the first seller's DRAM with the second seller's DRAM. Above all, in the SIMM system, the fixed timing is the DRAM of the first seller.
It is not easy to exchange the first group of SIMMs including the second group of SIMMs and the second group of SIMMs including the second seller DRAM.

【0006】おそらく、固定タイミングの場合、データ
処理システムがDRAMタイミングの進みを利用できな
いのが最も重要である。新世代の各DRAMは、前世代
のDRAMに比べてサイクル時間が速くなる傾向にあ
る。従って、データ処理システムは、新しい高速世代の
各DRAMに適応できるのが理想である。
Perhaps most importantly for fixed timing, the data processing system cannot take advantage of the DRAM timing advance. Each new generation DRAM tends to have a faster cycle time than the previous generation DRAM. Therefore, the data processing system should ideally be adaptable to each new high speed generation DRAM.

【0007】[0007]

【発明が解決しようとする課題】本発明の目的は、デー
タ処理システムにおけるプログラマブル・メモリ・タイ
ミングを可能にする装置を提供することにある。適正な
プログラミングを施してしまえば、プログラマブル・メ
モリ・タイミングによって、全てのメモリ操作について
最適なタイミング信号が得られる。従って、本発明のも
う1つの目的は、データ処理システムが異なるタイミン
グ要件を備えたDRAMに容易に適応し、これを利用す
ることができるようにすることにある。
SUMMARY OF THE INVENTION It is an object of the present invention to provide an apparatus that enables programmable memory timing in a data processing system. With proper programming, programmable memory timing provides optimal timing signals for all memory operations. Therefore, another object of the present invention is to allow a data processing system to easily accommodate and utilize DRAMs with different timing requirements.

【0008】[0008]

【課題を解決するための手段】本発明は、メモリ・モジ
ュールを備えたデータ処理システム内において機能す
る。本発明データ処理システムには、システム・バスに
結合されたプロセッサが含まれている。メモリ・コント
ローラは、システム・バス、及び単一イン・ライン・メ
モリ・モジュール(SIMM)のグループに通じたメモ
リ・バスにも結合されている。メモリ・コントローラ内
においては、データ処理システムのプログラマブル・メ
モリ・タイミングのためにRAMが利用されている。M
CRAMと呼ばれるこのRAMは、メモリ操作に関する
タイミング・データの記憶に利用される。すなわち、M
CRAMは、読み取り、書き込み、及び、再生の各メモ
リ操作毎に、RAS、CAS、LD、及び、ADタイミ
ング信号を発生するために用いられる関連のタイミング
・データを記憶する。メモリ・サイクルが開始するとM
CRAMのワードは、順次刻時され、RAS、CAS、
LD、及び、ADラインのそれぞれが、これらのワード
から特定のデータ・ストリームを受信して、必要なタイ
ミング信号を発生する。MCRAMは、第1のSIMM
グループに関するメモリ操作に必要なタイミング・デー
タについて有効にプログラミングを施し、続いて、異な
るタイミング要件を有する第2のSIMMグループに関
するメモリ操作に必要なタイミング・データについてプ
ログラミングを施すことが可能である。従って、プログ
ラマブルMCRAMは、メモリ・コントローラのアーキ
テクチャの対応する変更を必要とすることなく、さまざ
まなタイミング要件を備えたさまざまなSIMMグルー
プに対する適応を可能にする。
The present invention operates in a data processing system that includes a memory module. The data processing system of the present invention includes a processor coupled to the system bus. The memory controller is also coupled to the system bus and a memory bus leading to a group of single in-line memory modules (SIMMs). Within the memory controller, RAM is utilized for programmable memory timing in the data processing system. M
This RAM, called the CRAM, is used to store timing data for memory operations. That is, M
The CRAM stores associated timing data used to generate the RAS, CAS, LD, and AD timing signals for each read, write, and play memory operation. M when a memory cycle starts
Words in CRAM are sequentially clocked by RAS, CAS,
The LD and AD lines each receive a particular data stream from these words and generate the required timing signals. MCRAM is the first SIMM
It is possible to effectively program the timing data required for memory operations for a group, followed by the timing data required for memory operations for a second SIMM group having different timing requirements. Thus, programmable MCRAM allows adaptation to different SIMM groups with different timing requirements without requiring corresponding changes in the memory controller architecture.

【0009】操作時、MCRAMには、まず、データ処
理システムに用いることの可能なSIMMグループにア
クセスできる一般タイミング・データがロードされる。
このローディング操作に続いて、プロセッサは、SIM
Mグループに用いられるDRAMのタイプを識別するI
Dバイトを得るためのメモリ操作を要求する。プロセッ
サは、このIDバイトを利用して、メモリに記憶されて
いるルック・アップ・テーブルの相互参照を行う。この
ルック・アップ・テーブルには、潜在的にSIMMグル
ープ内で用いられる可能性のある全てのDRAMにとっ
て最適なタイミング・データが含まれている。プロセッ
サは、このルック・アップ・テーブルから、IDバイト
に対応するDRAMに最適なタイミング・データを読み
取り、このデータをMCRAMに書き込む。その後、全
てのメモリ操作は、MCRAMに記憶されたこの最適な
タイミング・データから発生するタイミング信号を利用
することになる。
In operation, the MCRAM is first loaded with general timing data that allows access to SIMM groups available to the data processing system.
Following this loading operation, the processor
I for identifying the type of DRAM used in the M group
Request a memory operation to get D bytes. The processor uses this ID byte to cross-reference the look-up table stored in memory. This look-up table contains optimal timing data for all DRAMs potentially used within the SIMM group. From the look-up table, the processor reads the optimum timing data for the DRAM corresponding to the ID byte and writes this data to MCRAM. Thereafter, all memory operations will utilize the timing signals generated from this optimal timing data stored in MCRAM.

【0010】[0010]

【実施例】後述のように、本発明は、複数メモリ・モジ
ュールを用いたシステムにおいて利用される。とりわ
け、本発明は、1990年7月17日に提出の同時係属
特許出願第07/554,283号に解説のシステムに
適用可能である。この特許出願には、データ及びプログ
ラムを記憶し、検索するため、デジタル・コンピュータ
によって用いられる特定の用途を備えたダイナミック・
ランダム・アクセス・メモリ(DRAM)を用いた、改
良形単一イン・ライン・メモリ・モジュール(SIM
M)が開示されている。
DETAILED DESCRIPTION OF THE INVENTION As will be described below, the present invention is utilized in a system using multiple memory modules. In particular, the present invention is applicable to the system described in co-pending patent application Ser. No. 07 / 554,283 filed Jul. 17, 1990. This patent application describes a dynamic application with specific applications used by digital computers to store and retrieve data and programs.
Improved single in-line memory module (SIM) using random access memory (DRAM)
M) is disclosed.

【0011】解説を目的とした以下の説明において、本
発明の理解を完全なものにするため特定のメモリ・サイ
ズ、帯域幅、データ経路等のような多くの細部について
示される。ただし、当該技術の熟練者には明らかなよう
に、これらの特定の細部は、SIMMシステムの実施に
とって必要というわけではない。他の例の場合、SIM
Mシステムを不必要に曖昧にしないため周知の電気構造
及び回路については、ブロック図で示されている。
In the following description for purposes of explanation, many details are set forth, such as specific memory sizes, bandwidths, data paths, etc., to complete the understanding of the present invention. However, these particular details are not necessary for implementation of the SIMM system, as will be apparent to those skilled in the art. In another example, SIM
Known electrical structures and circuits are shown in block diagrams in order not to unnecessarily obscure the M system.

【0012】次に、図1を参照すると、プロセッサ10
は、入力/出力装置14、並びに、システム・バス12
に結合されたメモリ・コントローラ16を含む各種シス
テム・コンポーネントとの通信のため、システムバス1
2に結合されている。さらに十分に後述するように、プ
ロセッサ10は、単一イン・ライン・メモリ・モジュー
ル(SIMM)20、21、22、及び23内のプログ
ラムと英数字データ及び他のデータの両方または一方か
ら構成されるデータを記憶し、検索する。例示のよう
に、SIMM20〜23は、メモリ・バス24を介して
メモリ・コントローラ16との通信を行う。さらに、ク
ロック26は、メモリ・バス24を介して、SIMM2
0〜23に定時デジタル・クロック信号を加える。図1
には、メモリ・バス24に結合された4つの単一イン・
ライン・メモリ・モジュールが示されているが、当該技
術における熟練者には明らかなように、SIMM・シス
テムは、メモリ・バス24に結合されたさまざまな数の
SIMMに用いることが可能である。
Referring now to FIG. 1, processor 10
Are input / output devices 14 and system bus 12
System bus 1 for communication with various system components including a memory controller 16 coupled to
Is bound to 2. As described more fully below, the processor 10 is comprised of programs and / or alphanumeric data and / or other data within a single in-line memory module (SIMM) 20, 21, 22, and 23. Memorize and retrieve the data. As illustrated, SIMMs 20-23 communicate with memory controller 16 via memory bus 24. In addition, the clock 26 is coupled to the SIMM2 via the memory bus 24.
Add a timed digital clock signal to 0-23. Figure 1
Includes four single ins coupled to the memory bus 24.
Although a line memory module is shown, SIMM systems can be used for various numbers of SIMMs coupled to memory bus 24, as will be apparent to those skilled in the art.

【0013】操作時、プロセッサ10は、SIMM20
〜23のそれぞれに配置されたダイナミック・ランダム
・アクセス・メモリ(DRAM)にデータを記憶する。
プロセッサ10が記憶すべきデータは、システム・バス
12を介してメモリ・コントローラ16に与えられる。
メモリ・コントローラは次に、記憶すべきデータと共
に、SIMM内におけるデータ記憶場所のアドレスをメ
モリ・バスに結合する。後述のように、SIMMにおけ
るデータの記憶並びに検索を行うため、メモリ・コント
ローラ16によってさまざまな制御信号が加えられる。
さらに、留意すべきは、メモリ・コントローラ16によ
って、SIMMに配置されたDRAMに関する行アドレ
ス及び列アドレス・ストローブが与えられ、また、メモ
リ・コントローラ16によって、SIMMにおけるデー
タの記憶及び検索に関連した他のタイミング信号も加え
られるということである。従って、全てのタイミング信
号がメモリ・コントローラ16から発生するので、本発
明の単一イン・ライン・メモリ・モジュールは、さまざ
まな記憶能力を備えたダイナミック・ランダム・アクセ
ス・メモリを利用することができる。
In operation, the processor 10 uses the SIMM 20
Data is stored in a dynamic random access memory (DRAM) arranged in each of the memory cells 23 to 23.
The data to be stored by the processor 10 is provided to the memory controller 16 via the system bus 12.
The memory controller then couples the address of the data storage location within the SIMM, along with the data to be stored, to the memory bus. Various control signals are applied by the memory controller 16 to store and retrieve data in the SIMM, as described below.
Furthermore, it should be noted that the memory controller 16 provides the row and column address strobes for the DRAMs located in the SIMM, and also the memory controller 16 relates to storing and retrieving data in the SIMM. It means that the timing signal of is also added. Therefore, since all timing signals originate from the memory controller 16, the single in-line memory module of the present invention can utilize dynamic random access memory with varying storage capabilities. .

【0014】SIMMシステムの現在のところ望ましい
実施例の場合、SIMM20〜23は、各トランザクシ
ョン毎に64データ・バイトのデータ転送サイズを備え
たメモリ・システムにおいて利用される。さらに、64
ビットのデータ毎に、8つのエラー検査ビットが設けら
れる。各SIMM(20〜23)は、データの16ビッ
ト及びエラー検査のための2ビットを供給する。現在の
ところ望ましい実施例の場合、1つのデータ転送トラン
ザクションのための72ビットを供給するために4つの
SIMMが利用されている。現在、SIMM20〜23
に配置された、SIMMシステムによって利用されるD
RAMは、100ナノ秒のアクセス速度を用いて操作し
ており、64バイトのデータを得るには、2回の連続し
たアクセスが必要になる。ただし、各SIMM毎にSI
MMシステムのクロス・バー・スイッチ(CBS)を利
用することによって、100ナノ秒に32バイトの変換
が行われるので、メモリ・バス24を介したコントロー
ラ16へのデータ転送速度は、実際には25ナノ秒に8
バイトということになる。
In the presently preferred embodiment of the SIMM system, SIMMs 20-23 are utilized in a memory system with a data transfer size of 64 data bytes for each transaction. In addition, 64
Eight error check bits are provided for each bit data. Each SIMM (20-23) provides 16 bits of data and 2 bits for error checking. In the presently preferred embodiment, four SIMMs are utilized to provide 72 bits for one data transfer transaction. Currently SIMM 20-23
Used by the SIMM system located at
RAM is operating with an access speed of 100 nanoseconds, and two consecutive accesses are required to get 64 bytes of data. However, SI for each SIMM
By utilizing the crossbar switch (CBS) of the MM system, a conversion of 32 bytes to 100 nanoseconds is performed, so the data transfer rate to the controller 16 via the memory bus 24 is actually 25. 8 in nanoseconds
That means a part-time job.

【0015】次に、図2を参照すると、図1に示す各S
IMM(20〜23)は、図2に示すCBS0、CBS
1、及び、CBS3を含む4つのクロス・バー・スイッ
チ(CBS)に結合された16のDRAMから構成され
る。各SIMM(例えば、図2に示すSIMM20)に
は、4つのクロス・バー・スイッチ(CBS0〜CBS
3)が含まれており、各クロス・バー・スイッチは、図
示のように、メモリ・バス24に結合されている。16
のダイナミックRAM(DRAM)は、アドレス及び制
御バス50に結合されており、図示のように、全部で6
4ビットのデータをデータ・バスに送り出す。さらに、
図2にDRAM52及びDRAM55として示された2
つのDRAMは、それぞれ、クロス・バー・スイッチの
2つに4つのエラー検査ビットを供給する(図2に示す
場合には、DRAM52は、CBS0に4つのエラー検
査ビットを供給し、DRAM55は、CBS2に4つの
エラー検査ビットを供給する)。図示のように、16の
DRAMによって与えれるデータは、データ・バス60
に結合され、従って、クロス・バー・スイッチのそれぞ
れに供給され、最終的には、メモリ・バス24に送り出
される。現在のところ望ましい実施例の場合、各CBS
は、ASICから構成されるが、標準セル、カスタムま
たはセミ・カスタム製作技法を利用して、クロス・バー
・スイッチを製造することもできるのは明らかである。
Next, referring to FIG. 2, each S shown in FIG.
The IMMs (20 to 23) are CBS0 and CBS shown in FIG.
1 and 16 DRAMs coupled to four crossbar switches (CBS) including CBS3. Each SIMM (eg, SIMM 20 shown in FIG. 2) has four crossbar switches (CBS0-CBS).
3) is included and each crossbar switch is coupled to the memory bus 24 as shown. 16
Dynamic RAM (DRAM) is coupled to the address and control bus 50 and, as shown, a total of six.
Sends 4-bit data onto the data bus. further,
2 shown as DRAM 52 and DRAM 55 in FIG.
Each of the two DRAMs supplies four error check bits to two of the crossbar switches (in the case shown in FIG. 2, DRAM 52 supplies four error check bits to CBS0 and DRAM 55 to CBS2). Supply 4 error check bits to. As shown, the data provided by the 16 DRAMs is provided on the data bus 60.
, And thus are fed to each of the crossbar switches and ultimately sent out to the memory bus 24. In the presently preferred embodiment, each CBS
Although constructed from an ASIC, it should be apparent that standard cell, custom or semi-custom fabrication techniques could be utilized to fabricate the crossbar switch.

【0016】望ましい実施例の場合、各SIMM(図1
参照)は、16ビットのデータを送り出すので、SIM
M20〜23の出力の和は、コンピュータ・システムに
おける1つの「ワード」を構成する、全部で64ビット
のデータになる。さらに、各SIMM(20〜23)
は、2ビットのエラー検査ビットを供給するので、8ビ
ットのエラー検査ビットが生じることになる。各SIM
Mによって得られる16ビットのデータのうち、各クロ
ス・バー・スイッチが(図2参照)、4ビットのデータ
を提供し、図2に示すように、各クロス・バー・スイッ
チは、4データ・ラインをメモリ・バス24に提供して
おり、また、3つのアドレス・ラインによってメモリ・
バス24に結合されている。SIMM内における各クロ
ス・バー・スイッチの働きについては、さらに詳細に後
述することにする。
In the preferred embodiment, each SIMM (see FIG.
(See) sends 16-bit data, so SIM
The sum of the outputs of M20-23 is a total of 64 bits of data that make up one "word" in the computer system. Furthermore, each SIMM (20-23)
Provides 2 error check bits, resulting in 8 error check bits. Each SIM
Of the 16-bit data obtained by M, each cross-bar switch provides 4 bits of data (see FIG. 2), and each cross-bar switch has four data bits, as shown in FIG. Lines are provided to the memory bus 24 and three address lines
It is coupled to the bus 24. The function of each crossbar switch within the SIMM will be described in more detail below.

【0017】操作時、プロセッサ10は、SIMM20
〜23からデータを読み取り、あるいは、これらにデー
タを書き込むためのアドレスを提供する。アドレスはメ
モリ・システム・バス12を介してメモリ・コントロー
ラ16に結合される。メモリ・コントローラ16は、メ
モリ・バス24にアドレスを結合し、アドレスのビット
値に基づいて、アドレス・ビットを各SIMMにおける
それぞれのクロス・バー・スイッチのそれぞれに対して
分解する(現在のところ、1度に3ビット)。後述のよ
うに、各クロス・バー・スイッチは、アドレスを増幅し
て、アドレスのその部分をアドレス及び制御バス50に
結合し、これによって、アドレス・ビットが図2の16
のDRAMに供給されることになる。エラー検査に関す
るDRAM52またはDRAM55に関連したアドレス
は、同様に、図2に示すように、CBS0またはCBS
2を介して適合するDRAMに結合される。現在のとこ
ろ望ましい実施例の場合、利用されるエラー検出及びエ
ラー訂正方法は、「単一ビット・エラー訂正/ダブル・
ビット・エラー検出/単一4ビット・バイト・エラー検
出」(SEC−DED−S4ED)として知られてい
る。ただし、当該技術の熟練者には明らかなように、S
IMMシステムの教示に従って、各種エラー検出及び訂
正メカニズムを利用することが可能である。さらに、本
実施例の場合、エラー検出及び訂正はメモリ・コントロ
ーラ16によって行われるが、他の用途の場合、プロセ
ッサ10を利用してこれらの機能を果たすことも可能で
ある。
In operation, the processor 10 uses the SIMM 20
23 to 23 to provide addresses for reading or writing data to them. The address is coupled to the memory controller 16 via the memory system bus 12. The memory controller 16 couples the address to the memory bus 24 and decomposes the address bits for each respective crossbar switch in each SIMM, based on the bit value of the address (currently). 3 bits at a time). As will be described below, each crossbar switch amplifies the address and couples that portion of the address to the address and control bus 50 so that the address bits are 16 bits in FIG.
Will be supplied to the DRAM. The address associated with DRAM 52 or DRAM 55 for error checking is also CBS0 or CBS, as shown in FIG.
2 to a compatible DRAM. In the presently preferred embodiment, the error detection and error correction methods utilized are "single bit error correction / double error correction".
Bit error detection / single 4-bit byte error detection "(SEC-DED-S4ED). However, as is apparent to those skilled in the art, S
Various error detection and correction mechanisms can be utilized in accordance with the teachings of the IMM system. Further, although error detection and correction is performed by the memory controller 16 in the present embodiment, it is also possible to utilize the processor 10 to perform these functions in other applications.

【0018】次に、図3を参照すると、各クロス・バー
・スイッチ(CBS)は、図示の構成要素から構成され
る。図示のように、3ビット・メモリ・アドレス(ME
MADDR)を構成する3つのラインが、メモリ・バス
24からメモリ・アドレス・レジスタ70に結合されて
いる。同様に、メモリ制御の2つのライン(図2の各C
BSに対する単一ラインとして示されている)が、それ
ぞれ、レジスタ72及び74に結合されている。メモリ
・バス24には、LD_L制御ラインも結合されてい
て、メモリ・アクセス・サイクルを開始するための信号
を送り出すようになっており、図3に示すように、LD
_Lラインは、レジスタ76に結合されている。指示読
み取り(Direc.RD)ラインは、DRAMに対す
る読み取りまたは書き込み操作として操作を指定する信
号を供給する。指示読み取り信号は、メモリ・バス24
に結合されたDirec.RDラインを介して供給さ
れ、図示のように、このラインはレジスタ78に結合さ
れている。
Referring now to FIG. 3, each crossbar switch (CBS) is made up of the components shown. As shown, the 3-bit memory address (ME
The three lines that make up MADDR) are coupled from memory bus 24 to memory address register 70. Similarly, two lines of memory control (each C in FIG.
(Shown as a single line to the BS) are coupled to registers 72 and 74, respectively. An LD_L control line is also coupled to the memory bus 24 to provide a signal for initiating a memory access cycle, as shown in FIG.
The _L line is coupled to register 76. The Directed Read (Direc. RD) line provides signals that specify the operation as a read or write operation to the DRAM. The read instruction signal is sent to the memory bus 24.
To Direc. It is provided through the RD line, which is coupled to register 78 as shown.

【0019】動作時、CBSはメモリ・バス24を介し
て、SIMM DRAMの1つにおけるアドレスに対応
したメモリ・アドレス(MEMADDR)を受信する。
アドレス及びメモリ制御信号(CTRL1及びCTRL
0)は、各CBSによって受信され、それぞれ、レジス
タ70、72、及び、74に記憶される。CBSは、メ
モリ・アドレスを増幅して、アドレス及び制御バス50
に再送信する(図2及び3参照)。
In operation, the CBS receives over the memory bus 24 a memory address (MEMADDR) corresponding to an address in one of the SIMM DRAMs.
Address and memory control signals (CTRL1 and CTRL
0) is received by each CBS and stored in registers 70, 72 and 74, respectively. The CBS amplifies the memory address to generate the address and control bus 50.
(See FIGS. 2 and 3).

【0020】例示のため、プロセッサ10が、読み取り
操作を開始して、SIMM20〜23に記憶されている
データを検索するものと仮定する。プロセッサ10は、
記憶されているデータのアドレス(MEMADDR)を
システム・バス12に送り出し、メモリ・コントローラ
16が、このアドレスを受信して、メモリ・バス24に
送り出す。前述のように、各SIMM内には、4つのク
ロス・バー・スイッチが配置されている。それぞれのS
IMM内における各CBSは、それぞれ、レジスタ7
0、72、及び、74に記憶されている制御信号(行ア
ドレス・ストローブ(RAS)及び列アドレス・ストロ
ーブ(CAS)信号を含む)と共に、3ビットのアドレ
スを受信する。アドレス(MEMADDR)は、各CB
Sのレジスタ70からシフト・アウトして、アドレス及
び制御バス50に送り出され、さらに、ダイナミックR
AMに結合される(図2参照)。図5に最もよく示され
ているように、CBSに加えられる各種信号のタイミン
グによって、メモリ・コントローラ16は、Dire
c.RD信号(高)を各CBSに加える。Direc.
RD信号は、レジスタ78に記憶されている。
For purposes of illustration, assume that processor 10 initiates a read operation to retrieve the data stored in SIMMs 20-23. The processor 10
The address of the stored data (MEMADDR) is sent to the system bus 12, and the memory controller 16 receives this address and sends it to the memory bus 24. As mentioned above, four crossbar switches are arranged in each SIMM. Each S
Each CBS in the IMM has a register 7
It receives a 3-bit address with control signals (including row address strobe (RAS) and column address strobe (CAS) signals) stored at 0, 72, and 74. Address (MEMADDR) is for each CB
It is shifted out of the register 70 of S and sent out to the address and control bus 50.
It is bound to AM (see Figure 2). As best shown in FIG. 5, the timing of various signals applied to the CBS causes the memory controller 16 to
c. Add RD signal (high) to each CBS. Direc.
The RD signal is stored in the register 78.

【0021】図3に示すように、カウンタ及びデコーダ
回路90は、レジスタ76とレジスタ78の両方に結合
されている。一般に、メモリ・コントローラ16は、D
irec.RD信号を加えるのと同時に、LD_L信号
(低)をレジスタ76に加える。読み取り操作時、カウ
ンタ及びデコーダ90は、出力バッファ95をイネーブ
ルにして、DRAMから読み取られ、データ・バス60
を介して、それぞれのエラー検査及び訂正ビット(EC
C)と共に、バッファ100、101、102、及び、
103に送り込まれるデータを保持する。検索したデー
タは、さらに、所定のサイクル数の後、バッファ100
〜103に送られる。本発明によって利用されるRA
S、CAS、LD_L、及び、Direc.RD信号シ
ーケンスを含む、特定の信号シーケンスについては、図
5のタイミング図を参照する。
As shown in FIG. 3, counter and decoder circuit 90 is coupled to both register 76 and register 78. Generally, the memory controller 16 is
irec. At the same time as applying the RD signal, the LD_L signal (low) is applied to the register 76. During a read operation, the counter and decoder 90 enables the output buffer 95 and is read from the DRAM to the data bus 60.
Each error check and correction bit (EC
C) together with buffers 100, 101, 102, and
It holds the data sent to 103. The retrieved data is further stored in the buffer 100 after a predetermined number of cycles.
-10. RA utilized by the present invention
S, CAS, LD_L, and Direc. For specific signal sequences, including RD signal sequences, refer to the timing diagram of FIG.

【0022】カウンタ及びデコーダ90は、さらに、マ
ルチプレクサ110を制御して、DRAMから読み取ら
れたデータが、バッファ100〜103に受信される
と、後続のステップが行われる。バッファ100におい
て最初の4ビットのデータを受信すると、バッファ10
0のデータは、マルチプレクサ110を介して転送さ
れ、レジスタAR に記憶されている。同時に、バッファ
101、102、及び、103において受信するデータ
は、レジスタBR、CR、及びDR に記憶される。レジス
タARにおけるデータの受信とほぼ同時に、レジスタAR
に記憶されている4ビットのデータが、メモリ・バス2
4と平行なMEM DATAラインを介してシフト・ア
ウトされる。レジスタAR に記憶されているデータ・ビ
ットが、出力バッファ95を介してシフトすると、カウ
ンタ及びデコーダ90によって制御されるマルチプレク
サ110が、レジスタBR、CR、及びDR を順次選択
し、これらのレジスタの内容も、出力バッファ95を介
して、メモリ・バス24にシフト・アウトされることに
なる。SIMMの各CBSにおける出力バッファ95を
介してシフトされる4ビットのデータに加えて、エラー
検査ビット(ECC)も、1つ追加される。各SIMM
の構造及び動作に関する以上の説明から明らかなよう
に、各CBSから出力される16ビットのデータが、8
つの検査ビット(ECC)と共に、64ビットのデータ
・ワードを形成する。
The counter and decoder 90 further controls the multiplexer 110 to perform subsequent steps when the data read from the DRAM is received by the buffers 100-103. When the first 4-bit data is received in the buffer 100, the buffer 10
The data of 0 is transferred through the multiplexer 110 and stored in the register A R. At the same time, the data received by the buffers 101, 102, and 103 are stored in the registers B R , C R , and D R. At substantially the same time as the reception of data in the register A R, the register A R
4-bit data stored in memory bus 2
Shifted out via the MEM DATA line parallel to 4. As the data bits stored in register A R shift through output buffer 95, multiplexer 110 controlled by counter and decoder 90 sequentially selects registers B R , C R , and D R The contents of these registers will also be shifted out to the memory bus 24 via the output buffer 95. In addition to the 4 bits of data that are shifted through the output buffer 95 in each CBS of the SIMM, an error check bit (ECC) is also added. Each SIMM
As is clear from the above description regarding the structure and operation of the CBS, the 16-bit data output from each CBS is
Together with one check bit (ECC), it forms a 64-bit data word.

【0023】もう1度図2、3、及び、4を参照しなが
ら各SIMMに配置されたDRAMに対するデータの書
き込みに関連して、SIMMシステムによって実行され
る操作のシーケンスについて解説することにする。プロ
セッサ10、または、他のI/O装置が、SIMMメモ
リ・アレイにデータを書き込む場合、データ、並びに、
DRAMメモリ内における記憶場所のアドレスは、バス
12を介してメモリ・コントローラ16に結合される。
メモリ・コントローラ16は、データを書き込むべきア
ドレスをメモリ・バス24に送り出し、これが、さら
に、SIMM20〜23に結合されることになる。さら
に、メモリ・コントローラ16が、制御信号(RAS及
びCAS)をメモリ・バス24に送り出し、これが、そ
れぞれのSIMMにおける各CBSによって受信され
る。読み取り操作の場合と同様、SIMMに配置された
各CBSによって、3ビットのアドレスが、2つの制御
ビットCTL1及びCTL0と共に受信される。各CB
Sは、それぞれ、アドレス及び制御ビットを刻時して、
レジスタ70、72、及び、74に送り込み、これらの
信号を増幅して、アドレス及び制御バス50を介してD
RAMに再送信する。図3及び4に最もよく示されてい
るように、メモリ・コントローラ16は、Direc.
RDラインを低状態に維持し、LD_Lパルスを送り出
して、書き込み操作を開始する。LD_L信号を受信す
ると、カウンタ及びデコーダ90が出力バッファ95を
ディスエイブルにし、入力バッファ120をイネーブル
にする。記憶されるデータは次に、メモリ・コントロー
ラ16によって、メモリ・バス24に加えられ、各CB
S毎に4ビットが、順次、(1つのECC検査ビットと
共に)入力バッファ120に供給される。各CBS(図
3参照)は、レジスタA'W、B'W、及び、C'Wに各4ビ
ットのデータ・グループを漸次記憶するが、受信の第4
サイクルについては、直接レジスタDW に記憶される。
最後のグループをなす4ビットのデータが、レジスタD
W に記憶されると、CBSは、A'W、B'W、及び、C'W
に記憶されているデータを、それぞれ、レジスタAW
W、及びCW にシフトする。これらのレジスタにシフ
トされると、即座に、そのデータは、バッファ125、
126、127、及び、128を介して、データ及び制
御バス50の出力に生じることになる。SIMMシステ
ムを利用して書き込み操作を行うため、メモリ・コント
ローラ16によって与えられる各種信号及び信号のシー
ケンスの識別については、図4を参照のこと。
Referring again to FIGS. 2, 3 and 4, the sequence of operations performed by the SIMM system will be described in connection with writing data to the DRAM located in each SIMM. When the processor 10 or other I / O device writes data to the SIMM memory array, the data, and
The address of the memory location in DRAM memory is coupled to memory controller 16 via bus 12.
The memory controller 16 sends out the address to write the data to the memory bus 24, which will be further coupled to the SIMMs 20-23. In addition, memory controller 16 drives control signals (RAS and CAS) onto memory bus 24, which are received by each CBS in each SIMM. As with the read operation, each CBS located in the SIMM receives a 3-bit address with two control bits CTL1 and CTL0. Each CB
S clocks the address and control bits respectively,
The signals are sent to the registers 70, 72, and 74, these signals are amplified, and D is transmitted via the address and control bus 50.
Retransmit to RAM. As best shown in FIGS. 3 and 4, the memory controller 16 includes Direc.
The RD line is held low and the LD_L pulse is sent out to start the write operation. Upon receiving the LD_L signal, counter and decoder 90 disables output buffer 95 and enables input buffer 120. The data to be stored is then applied to the memory bus 24 by the memory controller 16 and each CB is
Four bits for each S are provided to input buffer 120 sequentially (along with one ECC check bit). Each CBS (see FIG. 3) progressively stores each 4-bit data group in registers A ′ W , B ′ W , and C ′ W , but on the fourth receive side.
The cycle is stored directly in the register D W.
The last group of 4-bit data is stored in register D
When stored in W , the CBS is A'W , B'W , and C'W.
Data stored in the register A W , respectively
Shift to B W and C W. As soon as they are shifted into these registers, the data is transferred to the buffer 125,
Will occur at the output of the data and control bus 50 via 126, 127 and 128. See FIG. 4 for identification of the various signals and sequences of signals provided by the memory controller 16 to utilize the SIMM system for write operations.

【0024】図2及び3を参照すると、SIMMシステ
ムにおける、DRAMのサイズ及び速度と共に、特定の
DRAMの売り手を識別するためのID番号の利用が、
8ビット識別バイトの一部として報告されている。Di
rec.RD信号が、対応するLD_Lパルスを伴わず
に、レジスタ78及びカウンタ及びデコーダ90に加え
られる場合、カウンタ及びデコーダ90信号によって、
ID論理回路150がイネーブルになり、2ビットID
値が各CBSに結合される。2ビットのID値が、ビッ
ト・ラインのそれぞれをアースまたはVccにハード配
線することによって判定される(図2参照のこと)。こ
の2ビットのID値は、メモリ・バス24に対して、デ
ータとして、マルチプレクサ110を介して結合され、
レジスタAR 、及び、出力バッファ95を介してシフト
される。各SIMM毎に4つのCBS装置があるので、
各CBSは、2ビットのIDバイトを報告するため、全
部で8ビットが、各SIMM毎に報告することになるの
は明らかである。
Referring to FIGS. 2 and 3, the use of an ID number to identify a particular DRAM vendor in a SIMM system, as well as DRAM size and speed, is described.
It is reported as part of the 8-bit identification byte. Di
rec. When the RD signal is applied to the register 78 and counter and decoder 90 without a corresponding LD_L pulse, the counter and decoder 90 signal causes
ID logic circuit 150 is enabled and 2-bit ID
A value is bound to each CBS. The 2-bit ID value is determined by hard-wiring each of the bit lines to ground or Vcc (see Figure 2). This 2-bit ID value is coupled as data to memory bus 24 via multiplexer 110,
It is shifted via the register A R and the output buffer 95. Since there are 4 CBS devices for each SIMM,
Since each CBS reports a 2-bit ID byte, it is clear that a total of 8 bits will be reported for each SIMM.

【0025】図6を参照すると、現在のところ望ましい
実施例の場合、メモリ・コントローラ16は、SIMM
において利用される特定のDRAMに従って要求される
再生モードを開始する。SIMMシステムには、メモリ
・コントローラ16が、再生サイクルを発生する毎に、
IDバイトが、上述のようにメモリ・バス・データ・ラ
インに結合されるようにするための回路要素が組み込ま
れている。SIMMシステムによる識別バイトの利用に
よって、SIMMアーキテクチャまたはCBSの再設計
を必要とせずに、さまざまなタイプのDRAMをSIM
Mに組み込むことが可能になる。さらに、全てのタイミ
ングが、後述のように、IDバイトによって報告され
る、用いられているDRAMのタイプに基づき、メモリ
・コントローラ16を介して完全にとられることになる
ので、メモリ・コントローラ16に特定のタイミング回
路構成を設ける必要がなくなる。
Referring to FIG. 6, in the presently preferred embodiment, memory controller 16 uses SIMM
Initiate the playback mode required according to the particular DRAM utilized in. The SIMM system includes a memory controller 16 each time a regeneration cycle is generated.
Circuitry is incorporated to allow the ID byte to be coupled to the memory bus data lines as described above. The use of the identification byte by the SIMM system allows different types of DRAMs to be SIM
It becomes possible to incorporate in M. In addition, all timing will be taken entirely through the memory controller 16, based on the type of DRAM being used, as reported by the ID byte, as described below. It is not necessary to provide a specific timing circuit configuration.

【0026】SIMMに用いられているDRAMのタイ
プに基づくメモリ・コントローラ16を介したメモリ操
作のタイミングについて説明を行う。図8を参照する
と、データ処理システム内におけるメモリ・コントロー
ラ16のブロック図が示されている。一般に、システム
・バス制御論理回路162によって、メモリ・コントロ
ーラ16がシステム・バス12に結合される。システム
・バス12に送り出され、システム・バス制御論理回路
162によってメモリ・コントローラ16に結合された
指令は、指令待ち行列164に入れられる。例えば、書
き込み操作において、システム・バス12に送り出さ
れ、システム・バス制御論理回路162を介してメモリ
・コントローラ16に結合されたデータは、データ・イ
ン待ち行列166に入れられる。
The timing of memory operations through the memory controller 16 based on the type of DRAM used in the SIMM will be described. Referring to FIG. 8, a block diagram of the memory controller 16 in the data processing system is shown. In general, system bus control logic 162 couples memory controller 16 to system bus 12. The commands sent to the system bus 12 and coupled by the system bus control logic 162 to the memory controller 16 are placed in a command queue 164. For example, in a write operation, data sent to the system bus 12 and coupled to the memory controller 16 via the system bus control logic 162 is placed in the data-in queue 166.

【0027】例示のように、指令待ち行列164及びデ
ータ・イン待ち行列166は、メモリ・コントローラ1
6をメモリ・バス24に結合する働きをするメモリ制御
論理回路168に結合される。前述のように、複数メモ
リ・モジュールSIMM20、SIMM21、SIMM
22、及び、SIMM23は、メモリ・バス24に結合
される。例えば、読み取り操作の場合、SIMM20〜
23からメモリ・バス24に送り出されたデータは、デ
ータ・アウト待ち行列167に結合される。データ・ア
ウト待ち行列167は、さらに、システム・バス制御論
理回路162に結合され、そこから、システム・バス1
2に読み取りデータが送り出される。
As illustrated, the command queue 164 and the data-in queue 166 are memory controller 1
6 to memory control logic circuit 168 which serves to couple 6 to memory bus 24. As mentioned above, multiple memory modules SIMM20, SIMM21, SIMM
22 and SIMM 23 are coupled to a memory bus 24. For example, in the case of a read operation, SIMM20-
Data sent to memory bus 24 from 23 is coupled to data out queue 167. The data out queue 167 is further coupled to the system bus control logic 162 from which the system bus 1
The read data is sent to 2.

【0028】メモリ操作に必要なタイミング信号を送り
出すため、メモリ・コントローラ16は、プログラマブ
ル・メモリ・タイミング手段を利用している。プログラ
マブル・メモリ・タイミング手段はプログラミング可能
な記憶素子から構成される。現在のところ望ましい実施
例の場合、プログラマブル・メモリ・タイミング手段
は、MCRAM160として図8に示されたRAMディ
バイスから構成される。現在のところ望ましい実施例の
場合、MCRAM160は、メモリ・コントローラ16
内に配置される。代替案として、MCRAM160は、
メモリ・コントローラ16外の独立したチップ、あるい
は、RAMディバイス以外の記憶素子から構成すること
も可能である点に留意されたい。
The memory controller 16 utilizes programmable memory timing means to provide the timing signals necessary for memory operation. The programmable memory timing means comprises programmable storage elements. In the presently preferred embodiment, the programmable memory timing means comprises a RAM device shown in FIG. 8 as MCRAM 160. In the presently preferred embodiment, MCRAM 160 includes memory controller 16
Placed inside. As an alternative, the MCRAM 160 is
It should be noted that it may be composed of a separate chip outside the memory controller 16 or a storage element other than the RAM device.

【0029】MCRAM160は、SIMM20〜23
として図8に示す、メモリ・モジュールに関するタイミ
ング信号を送り出す。すなわち、後述のように、読み取
り、書き込み、または、再生といったメモリ操作のそれ
ぞれについて、MCRAM160は、RAS、CAS、
LD、及び、ADタイミング信号を納めている。これら
のタイミング信号は、MCRAM160から順次ワード
を読み取ることによって発生する。ワードの読み取り
は、MCRAM制御カウンタ170、及び、メモリ制御
論理回路168の制御下において行われる。MCRAM
160内のワードは、順次読み取られるので、RAS、
CAS、LD、及び、ADラインが、それぞれ、これら
のワードから特定のデータ・ストリームを受信する。こ
れらのデータ・ストリームは、1と0のシーケンスから
構成されており、さらに、これを利用して、RAS、C
AS、LD、及び、ADタイミング信号に必要なパルス
のシーケンスが生成される。
The MCRAM 160 has SIMMs 20-23.
The timing signals for the memory module, shown in FIG. That is, as will be described later, for each memory operation such as read, write, or play, the MCRAM 160 has RAS, CAS,
It contains the LD and AD timing signals. These timing signals are generated by sequentially reading words from MCRAM 160. The reading of words is under the control of the MCRAM control counter 170 and the memory control logic 168. MCRAM
The words in 160 are read sequentially, so RAS,
The CAS, LD, and AD lines each receive a particular data stream from these words. These data streams consist of a sequence of 1's and 0's, which can be further used for RAS, C
The sequence of pulses required for the AS, LD and AD timing signals is generated.

【0030】現在のところ望ましい実施例の場合、MC
RAM160はビット幅が11で、ワード長が20であ
る。ただし、本発明が、MCRAM160について多数
の代替寸法を考慮したものであることは、明らかであ
る。図9Aには、仮想タイミング信号データがMCRA
M160にロードされるタイミング例が示されている。
図9Aを参照すると、最初の3ビット、RDRAS、W
RRAS、RFRASはそれぞれ、読み取り、書き込
み、及び、再生操作に関するRASパルスに対応する。
第2の3ビット、RDCAS、WRCAS、RFCAS
は、それぞれ、読み取り、書き込み、及び、再生操作に
関するCASパルスに対応する。第3の3ビットは、そ
れぞれ、読み取り、書き込み、及び、再生操作に関する
ADパルスに対応する。そして、最後の2ビットRDL
D及びWRLDは、それぞれ、読み取り及び書き込み操
作に関するLDパルスに対応する。注目できるのは、再
生操作は、LD信号を必要としないということである。
本発明が、決して、この特定のビット配列に限定される
ものでないことは、もちろんである。多数の代替ビット
配列を容易に読み取ることが可能であり、こうした配列
は、本発明の目的に等しく役立つものである。
In the presently preferred embodiment, MC
The RAM 160 has a bit width of 11 and a word length of 20. However, it is clear that the present invention allows for many alternative dimensions for MCRAM 160. In FIG. 9A, the virtual timing signal data is MCRA.
An example of the timing loaded into M160 is shown.
Referring to FIG. 9A, the first 3 bits, RDRAS, W
RRAS and RFRAS correspond to RAS pulses for read, write, and replay operations, respectively.
Second 3 bits, RDCAS, WRCAS, RFCAS
Correspond to CAS pulses for read, write, and replay operations, respectively. The third 3 bits correspond to AD pulses for read, write, and replay operations, respectively. And the last 2 bit RDL
D and WRLD correspond to LD pulses for read and write operations, respectively. Note that the playback operation does not require an LD signal.
Of course, the invention is in no way limited to this particular bit arrangement. It is possible to easily read a large number of alternative bit arrays, and these arrays serve equally well for the purposes of the invention.

【0031】図9Aには、これらの操作を実施するのに
必要な11ワードしか示されていないのは明らかであ
る。MCRAM160の残りのワード、すなわち、ワー
ド11〜19は全て0である。通例、最後のADパルス
に続くMCRAM160ワードは、メモリ操作の終了時
におけるスプリアス・パルスを阻止するため、全て、0
でなければならず、残りのワードは現在用いられていな
い。
Obviously, FIG. 9A shows only the 11 words required to perform these operations. The remaining words in MCRAM 160, words 11 to 19, are all zeros. Typically, the MCRAM 160 word following the last AD pulse is all zeros to prevent spurious pulses at the end of the memory operation.
Must be, and the remaining words are currently unused.

【0032】図9Bには、図9Aの仮想タイミング信号
データから結果として生じるタイミング信号が示されて
いる。全ての信号が実際には低として示されている。前
述のように、RASパルスは、行アドレス・ストローブ
に対応し、CASパルスは、列アドレス・ストローブに
対応する。現在のところ望ましい実施例の場合、2つの
CASパルス、CAS0(8進ワード0)及びCAS1
(8進ワード1)を用いて、高速ページ・モードが実現
される。LDパルスは、読み取りまたは書き込み操作に
おけるデータのローディングのタイミングを決定する。
第1のADパルスは、メモリ・アドレス・ラインをRA
Sアドレスから第1のCAS0アドレスにスイッチす
る。第2のADパルスは、第2のページ・モード・アク
セスのため第2のCAS1アドレスにスイッチする。第
3のADパルスは、操作を終了させる(パルス後3クロ
ック・サイクルで)。CASアドレスを許可する読み取
り及び書き込みのための最初の2つのADパルスは、C
ASの2クロック前に生じるので、1クロックのアドレ
ス・セットアップ時間が許容される。最終ADは、折り
返し操作のための3サイクルのRASプリチャージを可
能にするため、最後のRASクロック・サイクル時に発
生する。
FIG. 9B shows the resulting timing signal from the virtual timing signal data of FIG. 9A. All signals are actually shown as low. As mentioned above, the RAS pulse corresponds to the row address strobe and the CAS pulse corresponds to the column address strobe. In the presently preferred embodiment, two CAS pulses, CAS0 (octal word 0) and CAS1.
A fast page mode is implemented using (octal word 1). The LD pulse determines the timing of data loading in a read or write operation.
The first AD pulse drives the memory address line RA
Switch from the S address to the first CAS0 address. The second AD pulse switches to the second CAS1 address for the second page mode access. The third AD pulse terminates the operation (3 clock cycles after the pulse). The first two AD pulses for reading and writing which allow the CAS address are C
Since it occurs two clocks before AS, one clock address setup time is allowed. The final AD occurs during the last RAS clock cycle to allow 3 cycles of RAS precharge for the fold operation.

【0033】MCRAM160内のワードには、データ
処理システム内における特定の組をなすアドレスが割り
当てられる点に留意されたい。従って、望ましい実施例
の場合、この組をなすアドレスは、MCRAM160内
における20ワードに対応する20のアドレスから構成
されることになる。本発明のやり方が、20ワードの利
用に限定されるものでないのは明らかである。MCRA
M160内におけるワード数は、読み取り、書き込み、
及び、再生のメモリ操作を完全なものにするためのタイ
ミング信号を発生する必要によって最低限の制限を受け
るだけである。現在のところ望ましい実施例の場合、2
0ワードあれば、読み取り、書き込み、及び、再生操作
のためのタイミング信号を得るのに十分以上である。
Note that words in MCRAM 160 are assigned a particular set of addresses within the data processing system. Thus, in the preferred embodiment, this set of addresses would consist of 20 addresses corresponding to 20 words in MCRAM 160. Clearly, the inventive approach is not limited to the use of 20 words. MCRA
The number of words in M160 is read, written,
And is only minimally limited by the need to generate timing signals to complete the memory operation of playback. For the presently preferred embodiment, 2
Zero words is more than enough to get timing signals for read, write, and replay operations.

【0034】もちろん、データ処理システムに関するタ
イミングは、プログラマブル・ディバイスであるMCR
AM160によってとられるので、タイミング自体をプ
ログラムすることが可能である。従って、データ処理シ
ステムは、メモリ・コントローラ内におけるアーキテク
チャの再設計を必要とせずに、異なるDRAMを備えた
SIMMの異なるグループに関するタイミング要件に対
処することが可能である。次に、現在のところ望ましい
実施例のタイミングに関するプログラミングについて、
解説することにする。
Of course, the timing related to the data processing system is MCR which is a programmable device.
Since it is taken by the AM 160, it is possible to program the timing itself. Thus, the data processing system is able to address timing requirements for different groups of SIMMs with different DRAMs without requiring architectural redesign within the memory controller. Next, regarding the timing programming of the currently preferred embodiment,
I will explain.

【0035】図8及び10を参照すると、始動後、メモ
リ操作の前に、このシステムは、SIMM20〜23に
含まれているDRAMのタイプを承知していない。従っ
て、このシステムはこれらのDRAMに最適なタイミン
グも承知していない。従って、MCRAM160には、
まず、おそらくSIMM20〜23に用いられている可
能性のあるDRAMに適したタイミング信号を発生する
タイミング・データがロードされる。この一般的なタイ
ミング・データは、省略時タイプ、あるいは、最悪の場
合のタイミング・シナリオとみなすことができる。同様
に、この一般的なタイミングデータは、かなり高速な能
力を備えたDRAMにとって低速の部分最適タイミング
信号をもたらすという欠点がある。
Referring to FIGS. 8 and 10, after startup and prior to memory operation, the system is unaware of the type of DRAM contained in SIMMs 20-23. Therefore, the system is also unaware of the optimal timing for these DRAMs. Therefore, in MCRAM160,
First, the timing data is loaded, which will probably generate the appropriate timing signals for the DRAMs that may be used in SIMMs 20-23. This general timing data can be considered a default type or a worst case timing scenario. Similarly, this general timing data has the drawback of providing a slower suboptimal timing signal for DRAMs with much faster capability.

【0036】一般的なタイミング信号データのロード
は、一連のI/O書き込み操作において行われる。例え
ば、システム・バス制御論理回路162によって、第1
のI/O書き込み操作が、MCRAM160内における
最初のワードに対応するアドレスに対して指示される。
次に、第2のI/O書き込み操作が、MCRAM160
内の第2のワードに対応するアドレスに対して指示され
る。タイミング信号を発生するのに必要なワード数
「n」に基づき、この一連のI/O書き込み操作は、
「n」に達するまで、続行される。従って、一般的なタ
イミング信号の発生に関連したタイミング信号データ
が、順次、MCRAM160に書き込まれる。
Loading of general timing signal data is performed in a series of I / O write operations. For example, by the system bus control logic 162, the first
I / O write operation is directed to the address corresponding to the first word in MCRAM 160.
The second I / O write operation is then MCRAM 160.
Is addressed to the address corresponding to the second word in. Based on the number of words "n" required to generate the timing signal, this series of I / O write operations is
Continue until "n" is reached. Therefore, the timing signal data related to the generation of a general timing signal is sequentially written in the MCRAM 160.

【0037】こうして、MCRAM160に記憶された
一般的なタイミング・データによって、メモリ操作を開
始することが可能になる。プロセッサ10は、I/0読
み取り操作を開始することによって、SIMM20〜2
3内で用いられる特定のDRAMのアイデンティティを
判定する。読み取られたI/Oは、システム・バス12
に送り出され、SIMM内のIDレジスタのアドレスに
送られる。システム・バス制御論理回路162は、次
に、この指令を指令待ち行列164に加える。この操作
が、指令待ち行列164内に生じると、指令は、メモリ
制御論理回路168に結合される。メモリ制御論理回路
168には、特定の疑似アドレス、すなわち、IDレジ
スタに送られるものとして、この指令を認識するための
回路要素が組み込まれている。(図2参照のこと)
Thus, the general timing data stored in MCRAM 160 allows the memory operation to begin. Processor 10 initiates an I / 0 read operation to cause SIMMs 20-2 to
3. Determine the identity of the particular DRAM used in 3. The read I / O is the system bus 12
Sent to the address of the ID register in the SIMM. The system bus control logic 162 then adds this command to the command queue 164. When this operation occurs in the command queue 164, the command is coupled to the memory control logic 168. The memory control logic circuit 168 incorporates circuitry to recognize this command as sent to a particular pseudo address, i.e., the ID register. (See Figure 2)

【0038】現在のところ望ましい実施例の場合、次
に、再生操作を利用して、ID番号が求められる。図6
に関連して前述のように、本発明には、メモリ・コント
ローラ16が読み取りまたは再生サイクルを発生する毎
に、SIMM内におけるDRAMのID番号は、メモリ
・バス24のデータ・ラインに結合される。従って、代
替案として、読み取り操作を利用して、ID番号を得る
ことができるのは、明らかである。さらに、この場合、
必ずしも、DRAMの再生のためとは限らず、ID番号
を得るためだけに、再生サイクルを利用するのは、一種
の「ダミー再生」を表しているということが分かる。
In the presently preferred embodiment, the play operation is then used to determine the ID number. Figure 6
As described above in connection with the present invention, in the present invention, the DRAM ID number in the SIMM is coupled to the data line of the memory bus 24 each time the memory controller 16 issues a read or recycle cycle. . Thus, as an alternative, it is clear that a read operation can be used to obtain the ID number. Furthermore, in this case,
It can be seen that using the reproduction cycle not only for reproduction of the DRAM but for obtaining the ID number represents a kind of "dummy reproduction".

【0039】メモリ・バス24のデータ・ラインにおけ
るID番号によって、ID番号は、データ・アウト待ち
行列167に結合され、システム・バス制御論理回路1
62を介して、プロセッサ10が読み取ることになるシ
ステム・バス12に送り出される。プロセッサ10は、
システム・バス12からこのID番号を受信し、このI
D番号を利用して、ルック・アップ・テーブルからこの
ID番号に対応するDRAMに関するタイミング・デー
タを求める。このルック・アップ・テーブルは、メモリ
180において見つかると、システム・バス12を介し
て、プロセッサ10に対するアクセスが可能になる。メ
モリ180内のルック・アップ・テーブルには、SIM
M20〜23に用いることの可能な全てのDRAMに関
する、最適な、売り手が指定のタイミング・データが含
まれている。メモリ180は、磁気ディスクまたはRO
Mを含めて、プロセッサ10にアクセス可能ないくつか
の外部メモリのうちの任意の形態をとることが可能であ
る。メモリ180は、メモリ・コントローラ16内に配
置することも可能であり、例えば、レジスタ・アレイの
形をとることができる。
By the ID number on the data line of the memory bus 24, the ID number is coupled to the data out queue 167 and the system bus control logic 1
Via 62 to the system bus 12 to be read by the processor 10. The processor 10
When this ID number is received from the system bus 12, this I
Utilizing the D number, the timing data for the DRAM corresponding to this ID number is obtained from the look-up table. When the lookup table is found in memory 180, it is accessible to processor 10 via system bus 12. The lookup table in memory 180 contains SIM
Includes optimal, vendor-specified timing data for all DRAMs available to M20-23. The memory 180 is a magnetic disk or RO
Including M, it can take any form of several external memories accessible to the processor 10. The memory 180 may be located within the memory controller 16 and may, for example, take the form of a register array.

【0040】プロセッサ10は、メモリ180から、I
D番号に対応する特定のDRAMに固有のタイミング・
データを読み取る。プロセッサ10は、次に、一連のI
/O書き込み操作において、MCRAM160にこの最
適なタイミング・データを書き込む。この場合には、M
CRAM160に最適なタイミング・データが書き込ま
れるという点を除けば、この一連の操作は、一般的タイ
ミング・データに関連した前述の一連の書き込み操作に
類似している。この点から、MCRAM160には、S
IMM内において用いられるDRAMに固有の、最適化
タイミング・データが含まれている。従って、将来のメ
モリ操作には、全て、この最適化タイミング・データを
利用することができる。
The processor 10 reads the I from the memory 180.
Timing unique to the particular DRAM corresponding to the D number
Read the data. Processor 10 then proceeds to a series of I
In the / O write operation, the optimum timing data is written in the MCRAM 160. In this case, M
This sequence of operations is similar to the sequence of write operations described above with respect to general timing data, except that the optimal timing data is written to CRAM 160. From this point, the MCRAM 160 has S
Contains optimized timing data that is specific to the DRAM used in the IMM. Therefore, all future memory operations can utilize this optimized timing data.

【0041】先行方法については、図10に、プログラ
ミング・プロセスのフローチャートとして要約されてい
る。このプログラミング・プロセスでは、4つの主要な
段階が利用されている。まず、MCRAMに、一般的な
タイミング・データがロードされる。第2に、SIMM
内において利用されるDRAMのID番号が求められ
る。第3に、ルック・アップ・テーブルから、このID
番号を利用してSIMM内において利用されるDRAM
に最適なタイミング・データが求められる。第4に、最
適なタイミング信号を発生するため、この最適なタイミ
ング・データが、MCRAMに書き込まれる。
The prior method is summarized in FIG. 10 as a flowchart of the programming process. Four major stages are utilized in this programming process. First, general timing data is loaded into the MCRAM. Second, SIMM
The ID number of the DRAM used within is required. Third, from the lookup table, this ID
DRAM used in SIMM by using number
Optimal timing data is required. Fourth, this optimal timing data is written to the MCRAM to generate the optimal timing signal.

【0042】従って、SIMMに含まれたDRAMに固
有のタイミング・データによって、データ処理システム
にプログラミングを施すことが可能である。将来、ユー
ザが、このSIMMの代わりに、タイミングの異なる、
異なるDRAMを備えた新しいメモリ・モジュール・グ
ループの利用を所望する場合、先行プログラミング・プ
ロセスによって、データ処理システムは、容易にこの新
しいメモリ・モジュール・グループに順応し、適合する
ことが可能である。もちろん、本発明の方法は、それぞ
れ、異なるSIMMに対応する複数MCRAMを利用
し、例えば、第1のSIMM内における第1のタイプの
DRAM、及び、第2のSIMM内における第2のタイ
プのDRAMが可能になるように修正することができ
る。プログラミング・プロセスは、個々のSIMMのそ
れぞれについて、DRAM ID番号が得られるように
変更される。次に、ルック・アップ・テーブルによっ
て、これらのID番号を利用し、対応するMCRAMの
それぞれに最適なタイミング・データが書き込まれる。
Thus, it is possible to program the data processing system with the DRAM-specific timing data contained in the SIMM. In the future, instead of this SIMM, the user will have different timing,
If it is desired to utilize a new memory module group with a different DRAM, the pre-programming process allows the data processing system to easily adapt and adapt to this new memory module group. Of course, the method of the present invention utilizes a plurality of MCRAMs, each corresponding to a different SIMM, for example a first type DRAM in the first SIMM and a second type DRAM in the second SIMM. Can be modified to allow The programming process is modified to obtain a DRAM ID number for each individual SIMM. The look-up table then uses these ID numbers to write the optimal timing data to each of the corresponding MCRAMs.

【0043】本発明の解説は、特に、図1〜図10を参
照し、所定のメモリ・システム・アーキテクチャに重点
をおいて行ってきたが、もちろん、該図は、例示のため
のものでしかなく、本発明に制限を加えるものとみなす
べきではない。さらに、本発明の方法及び装置が、デー
タ処理システムが複数データ水準にアクセスし、あるい
は、マルチビット・ワードを発生する用途において有効
であるのは、明らかである。当該技術の熟練者であれ
ば、上述の本発明の精神及び範囲を逸脱することなく、
多くの変更及び修正を加えることができるように意図さ
れている。
The discussion of the present invention has been made with particular emphasis on certain memory system architectures, with particular reference to FIGS. 1-10, which, of course, are for illustration purposes only. Nothing should be considered as limiting the invention. Further, it is clear that the method and apparatus of the present invention are useful in applications where a data processing system accesses multiple data levels or generates multi-bit words. A person skilled in the art, without departing from the spirit and scope of the invention described above,
It is intended that many changes and modifications can be made.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の教示を利用した、典型的なデータ処理
システムの機能ブロック図である。
FIG. 1 is a functional block diagram of an exemplary data processing system utilizing the teachings of the present invention.

【図2】各単一イン・ライン・メモリ・モジュール(S
IMM)内に配置された本発明のクロス・バー・スイッ
チ(CBS)を示す機能ブロック図である。
FIG. 2 shows each single in-line memory module (S
FIG. 3 is a functional block diagram showing a crossbar switch (CBS) of the present invention located in an IMM).

【図3】本発明で利用される各クロス・バー・スイッチ
の機能ブロック図である。
FIG. 3 is a functional block diagram of each crossbar switch used in the present invention.

【図4】書き込み操作時に、本発明によって用いられる
各種信号のシーケンスを表したタイミング図である。
FIG. 4 is a timing diagram illustrating a sequence of various signals used by the present invention during a write operation.

【図5】読み取り操作時に本発明によって用いられる各
種信号のタイミング図である。
FIG. 5 is a timing diagram of various signals used by the present invention during a read operation.

【図6】再生操作時に、本発明によって利用される操作
のシーケンスを表したタイミング図である。
FIG. 6 is a timing diagram showing a sequence of operations utilized by the present invention during a playback operation.

【図7】DRAMの動作不良の場合に、データ損失を最
小限に抑えるため、本発明で利用するビット分散の概念
を表した図である。
FIG. 7 is a diagram showing the concept of bit distribution used in the present invention in order to minimize data loss in the case of malfunction of DRAM.

【図8】メモリ・コントローラ内におけるMCRAMの
利用を表した機能ブロック図である。
FIG. 8 is a functional block diagram showing the use of MCRAM in the memory controller.

【図9】MCRAMにロードする方法の例を示す図、及
び、これら特定の内容から生じるタイミング信号を示す
タイミング図である。
FIG. 9 is a diagram showing an example of a method of loading into MCRAM and a timing diagram showing timing signals resulting from these particular contents.

【図10】メモリの操作に最適なタイミング信号を発生
するために、MCRAMにプログラミングを施すステッ
プを表したフロー・チャートである。
FIG. 10 is a flow chart showing the steps for programming the MCRAM to generate the optimal timing signals for memory operation.

【符号の説明】[Explanation of symbols]

10 プロセッサ 12 システム・バス 14 入力/出力装置 16 メモリ・コントローラ 20 単一インライン・メモリ・モジュール 21 単一インライン・メモリ・モジュール 22 単一インライン・メモリ・モジュール 23 単一インライン・メモリ・モジュール 24 メモリ・バス 26 クロック 50 アドレス及び制御バス 52 ダイナミックRAM 55 ダイナミックRAM 60 データ・バス 70 レジスタ 72 レジスタ 74 レジスタ 76 レジスタ 78 レジスタ 90 カウンタ及びデコーダ回路 95 出力バッファ 100 バッファ 101 バッファ 102 バッファ 103 バッファ 110 マルチプレクサ 120 入力バッファ 125 バッファ 126 バッファ 127 バッファ 128 バッファ 160 MCRAM 162 システム・バス制御論理回路 164 指令待ち行列 166 データ・イン待ち行列 167 データ・アウト待ち行列 168 メモリ制御論理回路 180 メモリ 10 processor 12 system bus 14 input / output device 16 memory controller 20 single inline memory module 21 single inline memory module 22 single inline memory module 23 single inline memory module 24 memory Bus 26 Clock 50 Address and Control Bus 52 Dynamic RAM 55 Dynamic RAM 60 Data Bus 70 Register 72 Register 74 Register 76 Register 78 Register 90 Counter and Decoder Circuit 95 Output Buffer 100 Buffer 101 Buffer 102 Buffer 103 Buffer 110 Multiplexer 120 Input Buffer 125 Buffer 126 Buffer 127 Buffer 128 Buffer 160 MCRAM 162 System Bus control logic 164 command queue 166 data-in queue 167 data out queue 168 memory control logic circuit 180 memory

フロントページの続き (71)出願人 591174933 ゼロックス・コーポレーション アメリカ合衆国 06904−1600 コネティ カット州・スタンフォード・ロング リッ ジ ロード・800 (72)発明者 ギルマン・チェスレイ アメリカ合衆国 95060 カリフォルニア 州・サンタ クルズ・ペルトン アヴェニ ユ・1010 (72)発明者 ジャン・エイ・ガスティネル アメリカ合衆国 94043 カリフォルニア 州・マウンテン ビュー・スターライト コート・47 (72)発明者 フレッド・セロースキーズ アメリカ合衆国 94043 カリフォルニア 州・マウンテン ビュー・ロック ストリ ート・ナンバー15・1921Front Page Continuation (71) Applicant 591174933 Xerox Corporation United States 06904-1600 Stamford Long Ridge Road, Connecticut 800 (72) Inventor Gilman Chesley United States 95060 Santa Cruz Pelton Aveniyu 1010 California (72) Inventor Jean A. Gastinel, United States 94043 California, Mountain View, Starlight Court, 47 (72) Inventor Fred Sellowskis United States, 94043 California, Mountain View, Rock Street No. 15, 1921

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 プロセッサと、 メモリ手段と、 前記メモリ手段と前記プロセッサとに結合されて、前記
メモリ手段にタイミング信号を加えるようになってい
て、そのタイミング信号を加えるためのプログラマブル
・メモリ・タイミング手段を備えたメモリ・コントロー
ラ手段とを有するデータ処理システム。
1. A processor, a memory means, and a programmable memory timing coupled to said memory means and said processor for applying a timing signal to said memory means. A data processing system having a memory controller means having means.
【請求項2】 プロセッサと、 タイミング信号に従ってデータを記憶し、かつ検索する
メモリ手段と、 前記メモリ手段と前記プロセッサとに結合されて、前記
メモリ手段にデータ及びタイミング信号を加えるように
なっていて、そのタイミング信号を加えるためのプログ
ラマブル・メモリ・タイミング手段を備えたメモリ・コ
ントローラ手段とを有するデータ処理システム。
2. A processor, a memory means for storing and retrieving data according to a timing signal, and a memory means coupled to the memory means and the processor for applying data and timing signals to the memory means. , A memory processing means comprising programmable memory timing means for applying the timing signal.
【請求項3】 プロセッサと、タイミング信号に従って
データを記憶して検索するメモリ手段と、前記メモリ手
段に前記タイミング信号を加えるようになっているてタ
イミング・データから前記タイミング信号を発生するプ
ログラマブル・メモリ・タイミング手段を備えたメモリ
・コントローラ手段とを有するデータ処理システムのメ
モリ・タイミングをプログラムする方法において、 前記プログラマブル・メモリ・タイミング手段にタイミ
ング・データをプログラムし、 前記タイミング・データからタイミング信号を発生し、
前記タイミング信号を前記メモリ手段に加えることを特
徴とするデータ処理システムのメモリ・タイミングをプ
ログラムする方法。
3. A processor, memory means for storing and retrieving data according to a timing signal, and programmable memory adapted to apply the timing signal to the memory means to generate the timing signal from timing data. A method for programming memory timing in a data processing system having a memory controller means with timing means, the programmable memory timing means being programmed with timing data and generating timing signals from the timing data Then
A method of programming memory timing in a data processing system comprising applying the timing signal to the memory means.
JP4355363A 1991-12-20 1992-12-21 Data processing system and method for programming of its memory timing Pending JPH06266607A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US811825 1985-12-20
US07/811,825 US5394541A (en) 1990-07-17 1991-12-20 Programmable memory timing method and apparatus for programmably generating generic and then type specific memory timing signals

Publications (1)

Publication Number Publication Date
JPH06266607A true JPH06266607A (en) 1994-09-22

Family

ID=25207699

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4355363A Pending JPH06266607A (en) 1991-12-20 1992-12-21 Data processing system and method for programming of its memory timing

Country Status (5)

Country Link
US (1) US5394541A (en)
EP (1) EP0549139B1 (en)
JP (1) JPH06266607A (en)
KR (1) KR100203392B1 (en)
DE (1) DE69232458T2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6687783B1 (en) 1998-07-10 2004-02-03 Tokyo Electron Device Limited Access apparatus and method for accessing a plurality of storage device having different characteristics

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5530944A (en) * 1991-02-27 1996-06-25 Vlsi Technology, Inc. Intelligent programmable dram interface timing controller
US10361802B1 (en) 1999-02-01 2019-07-23 Blanding Hovenweep, Llc Adaptive pattern recognition based control system and method
TW390446U (en) * 1992-10-01 2000-05-11 Hudson Soft Co Ltd Information processing system
US5623506A (en) * 1994-01-28 1997-04-22 International Business Machines Corporation Method and structure for providing error correction code within a system having SIMMs
US5918242A (en) * 1994-03-14 1999-06-29 International Business Machines Corporation General-purpose customizable memory controller
AU703750B2 (en) * 1994-10-14 1999-04-01 Compaq Computer Corporation Easily programmable memory controller which can access different speed memory devices on different cycles
JPH08123717A (en) * 1994-10-25 1996-05-17 Oki Electric Ind Co Ltd Semiconductor storage device
US20030009616A1 (en) * 1994-11-30 2003-01-09 Brian K. Langendorf Method and apparatus for integrating and determining whether a memory subsystem is installed with standard page mode memory or an extended data out memory
US5577236A (en) * 1994-12-30 1996-11-19 International Business Machines Corporation Memory controller for reading data from synchronous RAM
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
GB9526383D0 (en) * 1995-12-22 1996-02-21 Memory Corp Plc Computers
US5802550A (en) * 1996-01-17 1998-09-01 Apple Computer, Inc. Processor having an adaptable mode of interfacing with a peripheral storage device
GB2309559B (en) * 1996-01-27 2000-01-26 Motorola Israel Ltd Microprocessor and system
US5819304A (en) * 1996-01-29 1998-10-06 Iowa State University Research Foundation, Inc. Random access memory assembly
US6662240B1 (en) * 1996-05-08 2003-12-09 Ncr Corporation Automated configuration of computer accessories
US6088774A (en) 1996-09-20 2000-07-11 Advanced Memory International, Inc. Read/write timing for maximum utilization of bidirectional read/write bus
US6226723B1 (en) * 1996-09-20 2001-05-01 Advanced Memory International, Inc. Bifurcated data and command/address communication bus architecture for random access memories employing synchronous communication protocols
EP0831402A1 (en) * 1996-09-23 1998-03-25 Hewlett-Packard Company Dynamically configuring timing to match memory bus loading conditions
US6249827B1 (en) * 1997-08-11 2001-06-19 Advanced Memory International, Inc. Method for transferring data associated with a read/write command between a processor and a reader circuit using a plurality of clock lines
US6052750A (en) * 1998-01-06 2000-04-18 Sony Corporation Of Japan Home audio/video network for generating default control parameters for devices coupled to the network, and replacing updated control parameters therewith
US6349352B1 (en) * 1998-01-06 2002-02-19 Sony Corporation Of Japan Home audio/video network with both generic and parameterized device control
US6037821A (en) * 1998-05-28 2000-03-14 General Electric Company Digital programmable clock generator with improved accuracy
US6037809A (en) * 1998-06-02 2000-03-14 General Electric Company Apparatus and method for a high frequency clocked comparator and apparatus for multi-phase programmable clock generator
US6304923B1 (en) * 1998-10-14 2001-10-16 Micron Technology, Inc. Method for prioritizing data transfer request by comparing a latency identifier value received from an I/O device with a predetermined range of values
KR100578112B1 (en) * 1998-10-16 2006-07-25 삼성전자주식회사 Computer system and method controlled memory clock signal
TW494303B (en) * 1998-10-20 2002-07-11 Via Tech Inc Input/output controller
WO2000026793A1 (en) * 1998-10-30 2000-05-11 Atmel Corporation System and method for accessing data from an external memory using dual read timing protocols
US7966078B2 (en) 1999-02-01 2011-06-21 Steven Hoffberg Network media appliance system and method
US20020144173A1 (en) * 2001-03-30 2002-10-03 Micron Technology, Inc. Serial presence detect driven memory clock control
US7234099B2 (en) * 2003-04-14 2007-06-19 International Business Machines Corporation High reliability memory module with a fault tolerant address and command bus
US7275120B2 (en) * 2003-05-15 2007-09-25 Michael Ou Configurable advanced technology attachment/integrated drive electronics host controller with programmable timing registers that store timing parameters that control communications
KR100714396B1 (en) * 2005-07-18 2007-05-04 삼성전자주식회사 Computer system improves processing speed of memory
US7508723B2 (en) * 2007-05-24 2009-03-24 Entorian Technologies, Lp Buffered memory device
US20100325519A1 (en) * 2009-06-17 2010-12-23 Microsoft Corporation CRC For Error Correction
EP2526477B1 (en) * 2010-01-21 2015-03-11 Hewlett Packard Development Company, L.P. Memory controller
US20140122775A1 (en) * 2012-10-31 2014-05-01 Freescale Semiconductor, Inc. Memory controller for memory device
KR102161311B1 (en) * 2014-12-03 2020-10-05 에스케이하이닉스 주식회사 Memory controller
WO2017149362A1 (en) * 2016-03-04 2017-09-08 Telefonaktiebolaget Lm Ericsson (Publ) Application-specific integrated circuit (asic) memory parameter lookup
US10628049B2 (en) 2017-07-12 2020-04-21 Sandisk Technologies Llc Systems and methods for on-die control of memory command, timing, and/or control signals

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2585602B2 (en) * 1987-06-10 1997-02-26 株式会社日立製作所 Semiconductor storage device
US4785428A (en) * 1987-06-18 1988-11-15 Intel Corporation Programmable memory array control signals
JPH0212541A (en) * 1988-04-29 1990-01-17 Internatl Business Mach Corp <Ibm> Computing system and operation thereof
US5276856A (en) * 1989-09-28 1994-01-04 Pixel Semiconductor, Inc. Memory controller flexible timing control system and method
US5202857A (en) * 1990-11-07 1993-04-13 Emc Corporation System for generating memory timing and reducing memory access time

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6687783B1 (en) 1998-07-10 2004-02-03 Tokyo Electron Device Limited Access apparatus and method for accessing a plurality of storage device having different characteristics

Also Published As

Publication number Publication date
KR930013964A (en) 1993-07-22
EP0549139B1 (en) 2002-03-06
DE69232458D1 (en) 2002-04-11
EP0549139A1 (en) 1993-06-30
US5394541A (en) 1995-02-28
KR100203392B1 (en) 1999-06-15
DE69232458T2 (en) 2002-12-12

Similar Documents

Publication Publication Date Title
JPH06266607A (en) Data processing system and method for programming of its memory timing
JP3271121B2 (en) Data processing device
KR100385370B1 (en) Improved memory system apparatus and method
US7464241B2 (en) Memory transaction burst operation and memory components supporting temporally multiplexed error correction coding
US6167487A (en) Multi-port RAM having functionally identical ports
JP7244263B2 (en) memory device
US5844855A (en) Method and apparatus for writing to memory components
US20040093458A1 (en) Information processing apparatus using index and TAG addresses for cache
US6931483B2 (en) Memory device having different burst order addressing for read and write operations
JPH03205682A (en) Memory module
KR102558827B1 (en) Semiconductor memory device, and memory system and electronic apparatus having the same
JPS61161562A (en) Hierarchical memory system
US9141472B2 (en) Sharing a check bit memory device between groups of memory devices
JP2006268814A (en) Optical storage system comprising interface for transferring data
US6138214A (en) Synchronous dynamic random access memory architecture for sequential burst mode
US5532970A (en) No latency pipeline
US20230124660A1 (en) Semiconductor memory devices and methods of operating the same
JP3561502B6 (en) Improved memory system and method
JP3561502B2 (en) Improved memory system and method
JPH05210981A (en) Semiconductor memory
JPS58199498A (en) Memory system
JPS6349808B2 (en)
JPH0296223A (en) Memory device
JPH04274083A (en) Data writing method

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20031224