JPH08101792A - Computer system - Google Patents

Computer system

Info

Publication number
JPH08101792A
JPH08101792A JP23812194A JP23812194A JPH08101792A JP H08101792 A JPH08101792 A JP H08101792A JP 23812194 A JP23812194 A JP 23812194A JP 23812194 A JP23812194 A JP 23812194A JP H08101792 A JPH08101792 A JP H08101792A
Authority
JP
Japan
Prior art keywords
address
memory
dram
bank
banks
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP23812194A
Other languages
Japanese (ja)
Other versions
JP3540388B2 (en
Inventor
Nobutaka Nakamura
伸隆 中村
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP23812194A priority Critical patent/JP3540388B2/en
Priority to US08/364,720 priority patent/US5706407A/en
Publication of JPH08101792A publication Critical patent/JPH08101792A/en
Priority to US08/893,926 priority patent/US6016548A/en
Application granted granted Critical
Publication of JP3540388B2 publication Critical patent/JP3540388B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PURPOSE: To increase the memory access speed by simplifying the decoder condition for determination of a RAG line to be energized. CONSTITUTION: A RAS0 line and a RAS1 line are connected to two 2M-byte banks constituting a system memory 13, and a RAS2 line is connected to one 8M-byte bank constituting an extended memory 41, and a RAS4 line and a RAS5 line are connected to two 4M-byte banks constituting an extended memory 42. These banks are rearranged in a DRAM logical address space in the order of memory size so that a lower address range is assigned to the bank having a larger memory size. In this memory arrangement, a bit string always exists which has a value common to all memory address values belonging to the address range assigned to each of DRAM banks. These common bit strings are used as decode conditions of corresponding RAS lines.

Description

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

【0001】[0001]

【産業上の利用分野】この発明は、例えばパーソナルコ
ンピュータ等のコンピュータシステムに関し、特に複数
のDRAMバンクを効率良くアクセスするための改良が
なされたメモリ制御ロジックを含むコンピュータシステ
ムに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a computer system such as a personal computer, and more particularly to a computer system including an improved memory control logic for efficiently accessing a plurality of DRAM banks.

【0002】[0002]

【従来の技術】近年、携行が容易でバッテリにより動作
可能なノートブックタイプまたはラップトップタイプの
ポータブルパーソナルコンピュータが種々開発されてい
る。この種のパーソナルコンピュータにおいては動作速
度の高速化が望まれており、最近では、大規模なキャッ
シュを内蔵する高性能マイクロプロセッサがCPUとし
て使用され始めている。
2. Description of the Related Art In recent years, various notebook-type or laptop-type portable personal computers which are easy to carry and can be operated by a battery have been developed. In this type of personal computer, it is desired to increase the operating speed, and recently, a high-performance microprocessor incorporating a large-scale cache has begun to be used as a CPU.

【0003】キャッシュ内蔵のマイクロプロセッサをC
PUとして使用した場合には、メインメモリのアクセス
回数を減らすことができ、ある程度はシステム動作性能
の向上を図ることができる。
A microprocessor with a built-in cache is a C
When used as a PU, the number of accesses to the main memory can be reduced, and the system operation performance can be improved to some extent.

【0004】しかしながら、CPUがキャッシュを内蔵
していてもメインメモリに対するアクセスが無くなるわ
けではなく、キャッシュミスが発生したときには、CP
Uがメインメモリに対してメモリリード/ライトサイク
ルを実行することが必要とされる。このため、実際に
は、システム性能を向上させるためには、CPUによる
メモリリード/メモリライトサイクルの実行速度を早め
ることが必要不可欠となる。
However, even if the CPU has a built-in cache, access to the main memory is not lost, and when a cache miss occurs, the CP
It is required that U perform a memory read / write cycle to main memory. Therefore, in actuality, in order to improve the system performance, it is indispensable to increase the execution speed of the memory read / memory write cycle by the CPU.

【0005】パーソナルコンピュータのメインメモリと
しては、通常、ダイナミックRAM(DRAM)メモリ
が使用されている。DRAMは、スタテッィクRAM
(SRAM)に比べて低コストである反面、アクセス速
度が遅いという特徴を持つ。この問題を解決するため、
最近ではDRAMチップ自体の改良などの半導体技術レ
ベルでの改善に加え、インタリーブ制御などの採用によ
るメモリアーキテクチャレベルでの改善も進められてい
る。
A dynamic RAM (DRAM) memory is usually used as a main memory of a personal computer. DRAM is a static RAM
Although the cost is lower than that of (SRAM), it has a characteristic that the access speed is slow. To solve this problem,
Recently, in addition to improvements at the semiconductor technology level, such as improvements to the DRAM chip itself, improvements at the memory architecture level have been made by adopting interleave control.

【0006】しかし、パーソナルコンピュータにおける
メモリアーキテクチャの構築に際しては、システムボー
ド上に標準実装された内部メモリの制御だけでなく、ユ
ーザによって必要に応じて装着される種々の増設メモリ
の制御も考慮しなければならない。
However, when constructing the memory architecture in the personal computer, not only control of the internal memory mounted as a standard on the system board, but also control of various additional memories mounted by the user as needed should be considered. I have to.

【0007】このため、パーソナルコンピュータに設け
られる従来のメモリ制御ロジックにおいては、非常に複
雑なハードウェア構成が必要とされた。特にメモリアド
レス制御を行うハードウェアロジックの複雑化は、メモ
リアクセス速度を低下させる直接的な原因となってい
る。
Therefore, in the conventional memory control logic provided in the personal computer, a very complicated hardware structure is required. In particular, the complication of the hardware logic for controlling the memory address is a direct cause of reducing the memory access speed.

【0008】以下、従来のメモリ制御ロジックを用いた
DRAMアドレス制御の原理について説明する。
The principle of the conventional DRAM address control using the memory control logic will be described below.

【0009】通常、パーソナルコンピュータには、DR
AMカードなどの増設メモリを装着するための複数の拡
張用メモリコネクタが設けられている。DRAMカード
などの増設メモリは、1以上のDRAMバンクから構成
されている。内部メモリと増設メモリ内の全てのDRA
Mバンクは、互いに異なるロウアドレスストローブ信号
線(RAS線)に接続される。メモリアクセス制御にお
いては、それらRAS線の1つが付勢され、そのRAS
線に接続されているDRAMバンクがアクセス対象バン
クとして選択される。
Usually, a personal computer has a DR
A plurality of expansion memory connectors for mounting an expansion memory such as an AM card are provided. Additional memory such as a DRAM card is composed of one or more DRAM banks. All DRAs in internal memory and expansion memory
The M banks are connected to different row address strobe signal lines (RAS lines). In memory access control, one of those RAS lines is activated and the RAS line
The DRAM bank connected to the line is selected as the access target bank.

【0010】RAS線の付勢制御は、メモリ制御ロジッ
ク内のアドレスデコータによって行われる。アドレスデ
コーダは、複数のRAS線の中で、CPUからのメモリ
アドレス値が満たすデコード条件を持つRAS線を付勢
する。各RAS線のデコード条件は、次のように決定さ
れる。
The activation control of the RAS line is performed by the address decoder in the memory control logic. The address decoder activates the RAS line having the decoding condition satisfied by the memory address value from the CPU among the plurality of RAS lines. The decoding condition of each RAS line is determined as follows.

【0011】すなわち、内部メモリおよび増設メモリ内
の全てのDRAMバンクは、それらの物理的な装着位置
の順序、つまりシステムボード、拡張メモリコネクタ
1、拡張メモリコネクタ2…の順で、CPUのメモリア
ドレス空間の若い方から順に配置される。このメモリ配
置に従い、それらDRAMバンクに割り当てるべきアド
レス範囲がそれぞれ規定され、そのアドレス範囲にした
がって各RAS線のデコード条件が決定される。
That is, all the DRAM banks in the internal memory and the expanded memory are arranged in the order of their physical mounting positions, that is, in the order of the system board, the expanded memory connector 1, the expanded memory connector 2, ... They are arranged in order from the youngest of the spaces. According to this memory arrangement, the address range to be assigned to each DRAM bank is defined, and the decoding condition of each RAS line is determined according to the address range.

【0012】この場合、どのようなメモリサイズを持つ
DRAMバンクがどのRAS線に接続されてもかまわな
いように、各RAS線のデコード条件としては、対応す
るDRAMバンクに割り当てられたアドレス範囲の上限
を示す先頭アドレスと下限を示す最終アドレスの双方が
利用される。
In this case, the decode condition for each RAS line is set so that a DRAM bank having any memory size may be connected to any RAS line. Both the start address indicating the lower limit and the end address indicating the lower limit are used.

【0013】このため、アドレスデコーダは、CPUか
らのメモリアドレスがどのRAS線のデコード条件を満
たすかを検出するために、RAS線毎に2個のコンパレ
ータを備える必要があった。一方のコンパレータはCP
Uからのメモリアドレス値と該当するRAS線に割り当
てられたアドレス範囲の先頭アドレス値との大小を比較
し、他方のコンパレータはCPUからのメモリアドレス
値とそのRAS線に割り当てられたアドレス範囲の最終
アドレス値との大小を比較する。メモリアドレスの値が
先頭アドレス値以上で、最終アドレス値よりも小さいな
らば、該当するRAS線が付勢される。
Therefore, the address decoder must have two comparators for each RAS line in order to detect which RAS line the memory address from the CPU satisfies the decoding condition. One comparator is CP
The size of the memory address value from U and the start address value of the address range assigned to the corresponding RAS line are compared, and the other comparator compares the memory address value from the CPU and the end of the address range assigned to that RAS line. Compare the magnitude with the address value. If the value of the memory address is greater than or equal to the start address value and less than the end address value, the corresponding RAS line is activated.

【0014】このように、従来のメモリ制御ロジックに
おいてはアドレスデコーダに多くのコンパレータを設け
る必要があり、そのためにアドレスデコーダ内部で比較
的大きなディレイが生じる欠点があった。このディレイ
は、RAS線が付勢されるまでに要する時間を長くし、
メモリアクセス速度の低下を引き起こす要因となる。
As described above, in the conventional memory control logic, it is necessary to provide a large number of comparators in the address decoder, which causes a disadvantage that a relatively large delay occurs in the address decoder. This delay lengthens the time it takes to activate the RAS line,
This will cause a decrease in memory access speed.

【0015】また、このようなRAS線付勢に係るディ
レイは、インタリーブアーキテクチャを利用したメモリ
アクセス性能を制限する要因にもなる。
Further, such a delay related to the RAS line energization becomes a factor that limits the memory access performance using the interleave architecture.

【0016】すなわち、インタリーブは、例えばページ
毎に付勢するRAS線を切り替える事によって、異なる
DRAMバンクを順次アクセスする技術である。同一D
RAMバンクを続けてアクセスする場合には、前回のメ
モリサイクル完了後、そのDRAMバンクのメモリセル
の再充電が完了するまでの時間(プリチャージディレ
イ)だけ、次のメモリサイクルの実行を待つ必要があ
る。インタリーブを採用すれば、あるDRAMバンクの
再充電期間中に別のDRAMバンクをアクセスでき、同
一バンクを連続してアクセスする時に必要なプリチャー
ジディレイによる時間ロスを無くすことができる。
That is, interleaving is a technique for sequentially accessing different DRAM banks by switching the RAS line to be activated for each page, for example. Same D
When accessing the RAM bank continuously, it is necessary to wait for the execution of the next memory cycle for the time (precharge delay) after the completion of the previous memory cycle until the recharge of the memory cells of the DRAM bank is completed. is there. If interleaving is adopted, another DRAM bank can be accessed during the recharging period of a certain DRAM bank, and the time loss due to the precharge delay required when continuously accessing the same bank can be eliminated.

【0017】ところが、前述のRAS線付勢に係るディ
レイは、RAS線の切り替え速度そのものを遅くするの
で、インタリーブの高速アクセス性能を十分に発揮させ
ることができなくなる。また、実際には、インタリーブ
を実現するためにはアドレスデコーダの他に例えばペー
ジ単位でRAS線切り替えのための専用のハードウェア
ロジックを追加しなければならず、それによるディレイ
によってインタリーブの高速アクセス性能はさらに低下
されることになる。
However, the above-mentioned delay related to the RAS line energization slows down the switching speed of the RAS line itself, so that the high-speed access performance of interleaving cannot be sufficiently exhibited. In addition, in order to realize interleaving, in addition to the address decoder, for example, a dedicated hardware logic for switching the RAS line must be added on a page-by-page basis. Will be further reduced.

【0018】また、インタリーブを有効利用するために
は、インタリーブ可能なバンクの組み合わせを作るため
のグルーピングを容易にするために、比較的メモリサイ
ズが等しいメモリバンク同士に隣接したアドレス範囲が
割り当てられている事が望ましい。このようにすれば、
インタリーブの組み合わせから外れるDRAMバンクを
少なくでき、より多くのDRAMバンクをインタリーブ
制御する事ができるからである。
In order to make effective use of interleaving, in order to facilitate grouping for forming a combination of banks that can be interleaved, adjacent memory cells having relatively equal memory sizes are assigned adjacent address ranges. Is desirable. If you do this,
This is because it is possible to reduce the number of DRAM banks that deviate from the combination of interleaving, and it is possible to interleave control more DRAM banks.

【0019】しかし、前述したように、従来では、シス
テム内のDRAMバンクのメモリ配置は、それらDRA
Mバンクの物理的な装着位置のみによって決定されるの
で、メモリサイズの大小関係とは全く無関係にDRAM
バンクがアドレス空間に配置されてしまう。これは、イ
ンタリーブ可能なDRAMバンクの組み合わせを制限
し、インタリーブの組み合わせから外れるDRAMバン
ク数を増加させる原因となる。
However, as described above, conventionally, the memory arrangement of the DRAM banks in the system has been determined by the DRA.
Since it is determined only by the physical mounting position of the M bank, the DRAM is completely irrelevant to the size relation of the memory size.
Banks are placed in the address space. This limits the combinations of DRAM banks that can be interleaved, and increases the number of DRAM banks that are out of the interleaved combinations.

【0020】[0020]

【発明が解決しようとする課題】従来では、システム内
のDRAMバンクのメモリアドレス空間への配置はそれ
らのメモサイズの大小関係とは無関係に、物理的な装着
位置のみ決定された。このため、アドレスデコーダのハ
ードウェア構成が複雑化され、アドレスデコーダ内のデ
ィレイが大きくなる欠点があった。
Conventionally, the arrangement of the DRAM banks in the system in the memory address space is determined only by the physical mounting position regardless of the size relationship of the memo sizes. Therefore, the hardware configuration of the address decoder is complicated, and the delay in the address decoder is large.

【0021】また、前述のようなDRAMバンクのメモ
リ配置はインタリーブ可能なDRAMバンクグループの
組み合わせを制限する要因となり、インタリーブによる
高速アクセス性能を十分に有効利用することができなく
なる欠点があった。
Further, the memory arrangement of the DRAM banks as described above becomes a factor limiting the combination of interleaved DRAM bank groups, and there is a drawback that the high-speed access performance due to interleaving cannot be sufficiently utilized.

【0022】この発明はこのような点に鑑みてなされた
もので、システム内のDRAMバンクをそれらのメモリ
サイズに応じてメモリアドレス空間に最適配置すること
によってアドレスデコーダのデコード条件の簡単化、お
よびインタリーブアーキテクチャの有効利用を図り、メ
モリアクセス速度の高速化を実現することができるコン
ピュータシステムを提供することを目的とする。
The present invention has been made in view of the above circumstances, and simplifies the decoding condition of the address decoder by optimally arranging the DRAM banks in the system in the memory address space according to their memory size, and It is an object of the present invention to provide a computer system that can effectively utilize an interleaved architecture and realize a high memory access speed.

【0023】[0023]

【課題を解決するための手段および作用】この発明のコ
ンピュータシステムは、複数のアクセス制御信号がそれ
ぞれ割り当てられ、互いに独立してアクセス可能な複数
のメモリバンクと、前記複数のアクセス制御信号にそれ
ぞれ対応する複数のデコード条件が設定され、それらデ
コード条件とCPUからのメモリアドレスとの一致の有
無を検出し、一致したデコード条件に対応するアクセス
制御信号線を付勢してメモリバンクを選択するアドレス
デコーダと、前記複数のメモリバンクそれぞれのメモリ
サイズを検出する手段と、メモリサイズの大きいバンク
ほどCPUのメモリアドレス空間の若い方に配置される
ように前記複数のメモリバンクをメモリサイズ順に前記
メモリアドレス空間に再配置し、このメモリ配置に従っ
て前記複数のメモリバンクそれぞれに割り当てるべきメ
モリアドレス範囲を決定するメモリ再配置手段と、前記
メモリバンク毎にそのメモリバンクに対応するメモリア
ドレス範囲に属する全てのメモリアドレス値それぞれを
示す2値データにのみ共通に存在するビット列を検出
し、その共通ビット列を前記各アクセス制御信号線のデ
コード条件として前記アドレスデコーダに設定する手段
とを具備することを特徴とする。
A computer system according to the present invention corresponds to a plurality of memory banks to which a plurality of access control signals are assigned and which can be accessed independently of each other, and a plurality of access control signals. A plurality of decoding conditions are set, the presence / absence of a match between the decoding conditions and the memory address from the CPU is detected, and the access control signal line corresponding to the matching decoding condition is activated to select the memory bank. And a means for detecting the memory size of each of the plurality of memory banks, and the plurality of memory banks are arranged in the memory address space in the order of memory size so that a bank having a larger memory size is arranged in a smaller memory address space of the CPU. And relocate to the memory according to this memory allocation The memory relocation means for determining the memory address range to be assigned to each bank, and the binary data indicating each memory address value belonging to the memory address range corresponding to the memory bank for each memory bank are commonly present. Means for detecting a bit string and setting the common bit string in the address decoder as a decoding condition for each of the access control signal lines.

【0024】このコンピュータシステムにおいては、複
数のメモリバンクそれぞれのメモリサイズが検出され、
それらメモリバンクの物理的な装着位置とは関係なく、
メモリサイズの大小関係に従ってそれらメモリバンクの
メモリアドレス空間への配置順が決定される。この場
合、複数のメモリバンクはそのメモリサイズの大きいも
の順に、CPUのメモリアドレス空間の若い方から配置
される。
In this computer system, the memory size of each of the plurality of memory banks is detected,
Regardless of the physical mounting position of those memory banks,
The arrangement order of the memory banks in the memory address space is determined according to the size relation of the memory sizes. In this case, the plurality of memory banks are arranged in the descending order of the memory size of the CPU, starting from the youngest memory address space of the CPU.

【0025】このようなメモリ配置下においては、複数
のメモリバンクそれぞれに割り当てられるアドレス範囲
は、2値データで表現されるメモリアドレス値によって
区分されるアドレス境界と上手く合致する。このため、
どのアドレス範囲に属する全てのメモリアドレス値に
も、そのアドレス範囲においてのみ共通の値を持つビッ
ト列が必ず存在する。この共通ビット列は、それに対応
するアドレス範囲が割り当てられたメモリバンクに対応
するアクセス制御信号を付勢するためのデコード条件と
して使用される。
Under such a memory arrangement, the address range assigned to each of the plurality of memory banks is well aligned with the address boundary divided by the memory address value represented by the binary data. For this reason,
All memory address values belonging to any address range always have a bit string having a common value only in that address range. This common bit string is used as a decoding condition for activating the access control signal corresponding to the memory bank to which the corresponding address range is assigned.

【0026】したがって、各アドレス範囲の先頭アドレ
ス値と最終アドレス値の双方をデコード条件として使用
する必要がなくなり、各アクセス制御信号のデコード条
件を簡単化できる。これによって、アドレスデコーダは
CPUからのメモリアドレス値とデコード条件との一致
/不一致をアクセス制御信号毎に検出するだけで済む。
よって、従来に比し、アドレスデコーダのハードウェア
構成を大幅に簡単化できるので、アドレスデコーダ内の
ディレイが小さくなり、メモリアクセス速度の高速化を
実現できる。
Therefore, it is not necessary to use both the start address value and the end address value of each address range as the decoding condition, and the decoding condition of each access control signal can be simplified. As a result, the address decoder only needs to detect the match / mismatch between the memory address value from the CPU and the decode condition for each access control signal.
Therefore, the hardware configuration of the address decoder can be greatly simplified as compared with the conventional one, so that the delay in the address decoder can be reduced and the memory access speed can be increased.

【0027】また、このようなメモリ配置によれば、比
較的メモリサイズが等しいメモリバンク同士に隣接した
アドレス範囲が割り当てられるので、インタリーブ可能
なバンクの組み合わせを作るためのグルーピングもし易
くなる。このため、インタリーブの組み合わせから外れ
るメモリバンクを少なくでき、より多くのメモリバンク
をインタリーブ制御する事ができる。よって、インタリ
ーブを最大限有効利用することが可能となり、これによ
ってメモリアクセス速度の高速化を図ることができる。
Further, according to such a memory arrangement, since the address ranges adjacent to each other are allocated to the memory banks having relatively the same memory size, it is easy to perform grouping for forming a combination of interleaveable banks. Therefore, it is possible to reduce the number of memory banks that deviate from the combination of interleaving, and it is possible to interleave control more memory banks. Therefore, it is possible to make the most effective use of interleaving, thereby increasing the memory access speed.

【0028】さらに、CPUからのメモリアドレス値と
デコード条件との一致/不一致をアクセス制御信号毎に
検出するというアドレスデコーダの構成は、ページ毎に
異なるバンクをアクセスするページインタリーブアーキ
テクチャの実現に好適である。
Further, the structure of the address decoder which detects the match / mismatch between the memory address value from the CPU and the decode condition for each access control signal is suitable for realizing a page interleave architecture for accessing different banks for each page. is there.

【0029】すなわち、ページインタリーブを採用する
ためには、付勢されるアクセス制御信号をページ単位で
切り替えることが必要とされる。この切り替えは、各メ
モリバンクのページ内アドレスの上位ビットを用いて、
前述のアドレスデコーダに設定されるデコード条件を変
更することだけで実現できる。このため、ページ単位で
アクセス制御信号を切り替えのための専用のハードウェ
アロジックを追加することなく、ページインタリーブア
ーキテクチャを実現できる。
That is, in order to employ page interleaving, it is necessary to switch the access control signals to be activated in page units. This switching is performed by using the upper bits of the in-page address of each memory bank,
It can be realized only by changing the decoding condition set in the above address decoder. Therefore, the page interleave architecture can be realized without adding a dedicated hardware logic for switching the access control signal in page units.

【0030】[0030]

【実施例】以下、図面を参照してこの発明の実施例を説
明する。図1には、この発明の一実施例に係わるコンピ
ュータシステムが示されている。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 shows a computer system according to an embodiment of the present invention.

【0031】このシステムはノートブックタイプまたは
ラップトップタイプのポータブルパーソナルコンピュー
タを実現するためのものであり、システムボード10上
には、図示のように、CPU11、システムコントロー
ラ12、システムメモリ13、BIOS ROM14、
リアルタイムクロック(RTC)15、割り込みコント
ローラ(PIC)16、キーボードコントローラ(KB
C)17、ディスプレイコントローラ18などが実装さ
れている。
This system is for realizing a notebook type or laptop type portable personal computer, and a CPU 11, a system controller 12, a system memory 13 and a BIOS ROM 14 are provided on the system board 10 as shown in the figure. ,
Real-time clock (RTC) 15, interrupt controller (PIC) 16, keyboard controller (KB
C) 17, a display controller 18, etc. are mounted.

【0032】また、システムボード10上には、CPU
ローカルバス(プロセッサバスと称する場合もある)3
1、ISA/EISA/PCIなどの仕様を持つシステ
ムバス32、およびメモリアドレスバス33などが配設
されている。
Further, on the system board 10, a CPU
Local bus (sometimes called processor bus) 3
1, a system bus 32 having specifications such as ISA / EISA / PCI, and a memory address bus 33 are provided.

【0033】さらに、このシステムには、増設メモリを
接続するための2つの拡張用メモリコネクタ21,22
が設けられている。図1においては、拡張メモリコネク
タ21,22にそれぞれ増設メモリ41,42が接続さ
れている状態が示されている。
Further, this system is provided with two expansion memory connectors 21 and 22 for connecting an expansion memory.
Is provided. FIG. 1 shows a state in which the expansion memories 41 and 42 are connected to the expansion memory connectors 21 and 22, respectively.

【0034】増設メモリ41,42は、システムメモリ
サイズを拡張するためにユーザによって必要に応じて装
着されるオプションメモリであり、例えばDRAMカー
ドや、SIMMメモリモジュールなどから構成されてい
る。これら増設メモリは、通常、1以上のDRAMバン
クから構成されている。
The additional memories 41 and 42 are optional memories mounted by the user as needed to expand the system memory size, and are composed of, for example, a DRAM card or a SIMM memory module. These additional memories are usually composed of one or more DRAM banks.

【0035】CPU11は、大規模なキャッシュメモリ
を内蔵したマイクロプロセッサであり、例えば米インテ
ル社のIntel486CPUなどが使用される。CP
U11は、CPUローカルバス31を介してシステムコ
ントローラ12に接続されている。CPUローカルバス
31は、CPU11を構成するマイクロプロセッサの入
出力ピンに直接繋がる信号群である。ここには、32ビ
ットデータバス、32ビットアドレスバス、および各種
ステータス信号線などが含まれている。
The CPU 11 is a microprocessor incorporating a large-scale cache memory, and for example, an Intel486 CPU manufactured by Intel Corp. in the US is used. CP
U11 is connected to the system controller 12 via the CPU local bus 31. The CPU local bus 31 is a group of signals directly connected to the input / output pins of the microprocessor forming the CPU 11. This includes a 32-bit data bus, a 32-bit address bus, various status signal lines and the like.

【0036】システムコントローラ12は、CPUロー
カルバス31とシステムバス32との間に接続されてお
り、CPU11からの要求に応じてシステム内の全ての
メモリおよびI/Oデバイスを制御する。このシステム
コントローラ12は、ゲートアレイによって構成された
1個のLSIによって実現されており、その中にはシス
テムメモリ13および増設メモリ41,42のDRAM
を制御するためのメモリ制御ロジロックが組み込まれて
いる。
The system controller 12 is connected between the CPU local bus 31 and the system bus 32, and controls all memories and I / O devices in the system in response to a request from the CPU 11. The system controller 12 is realized by a single LSI composed of a gate array, in which the system memory 13 and the DRAMs of the expansion memories 41 and 42 are included.
A memory control logic lock is built in to control the.

【0037】システムメモリ13は、このシステムのメ
インメモリとして使用されるものであり、通常、1以上
のDRAMバンクから構成されている。このシステムメ
モリ13には、オペレーティングシステム、実行対象の
アプリケーションプログラム、および各種処理データな
どが格納される。
The system memory 13 is used as a main memory of this system, and is usually composed of one or more DRAM banks. The system memory 13 stores an operating system, application programs to be executed, various processing data, and the like.

【0038】システムメモリ13は、所定のコネクタを
介してまたは直接にシステムボード10上に実装されて
いる。システムメモリ13は32ビットのメモリデバイ
スであり、そのデータポートはCPUローカルバス31
の32ビットデータバスに接続され、また、アドレス入
力ポートはメモリアドレスバス33に接続されている。
メモリアドレスバス33はDRAM専用のアドレスバス
であり、このメモリアドレスバス33上にはDRAMの
物理アドレス(ロウアドレス/カラムアドレス)がシス
テムコントローラ12から出力される。
The system memory 13 is mounted on the system board 10 via a predetermined connector or directly. The system memory 13 is a 32-bit memory device, and its data port is a CPU local bus 31.
32 bit data bus, and the address input port is connected to the memory address bus 33.
The memory address bus 33 is an address bus dedicated to DRAM, and the physical address (row address / column address) of the DRAM is output from the system controller 12 onto this memory address bus 33.

【0039】同様に、増設メモリ41,42もそれぞれ
32ビットのメモリデバイスであり、対応するコネクタ
21,22を介してそのデータポートがCPUローカル
バス31の32ビットデータバスに接続され、アドレス
入力ポートがメモリアドレスバス33に接続されてい
る。
Similarly, the expansion memories 41 and 42 are also 32-bit memory devices, and their data ports are connected to the 32-bit data bus of the CPU local bus 31 via the corresponding connectors 21 and 22, and the address input ports are also provided. Are connected to the memory address bus 33.

【0040】また、システムメモリ13には2本のロウ
アドレスストローブ信号線(RAS線:RAS0、RA
S1)が接続されている。同様に、拡張メモリコネクタ
21には別の2本のロウアドレスストローブ信号線(R
AS線:RAS2、RAS3)が接続され、拡張メモリ
コネクタ22にも、別の2本のロウアドレスストローブ
信号線(RAS線:RAS4、RAS5)が接続されて
いる。
The system memory 13 has two row address strobe signal lines (RAS lines: RAS0, RA).
S1) is connected. Similarly, another two row address strobe signal lines (R
AS lines: RAS2, RAS3) are connected, and the extended memory connector 22 is also connected with another two row address strobe signal lines (RAS lines: RAS4, RAS5).

【0041】さらに、システムメモリ13および増設メ
モリ41,42には、カラムアドレスストローブ信号線
(CAS線)、および他の各種制御信号線(ライトイネ
ーブル信号線WE、アウトプットイネーブル信号線OE
など)がそれぞれ共通接続されている。
Further, in the system memory 13 and the extension memories 41 and 42, a column address strobe signal line (CAS line) and other various control signal lines (write enable signal line WE, output enable signal line OE) are provided.
Etc.) are commonly connected.

【0042】システムメモリ13および増設メモリ4
1,42内の全てのDRAMバンクは、CPU11のD
RAM用メモリアドレス空間に配置される。このシステ
ムにおいては、各RAS線のデコード条件の簡単化、お
よびインタリーブアーキチャを最大限有効利用するため
に、それらDRAMバンクはメモリサイズの大きなもの
程若いアドレスの方に配置される。
System memory 13 and additional memory 4
All DRAM banks in 1, 42 are D of CPU11.
It is located in the RAM memory address space. In this system, in order to simplify the decoding condition of each RAS line and to make the best use of the interleave architecture, those DRAM banks are arranged at the smaller addresses in the larger memory size.

【0043】システムメモリ13および増設メモリ4
1,42のリード/ライトアクセス制御においては、R
AS線(RAS0〜RAS5)の1つがアクティブ状態
に設定され、そのアクティブ状態のRAS線に接続され
たDRAMバンクがアクセス対象のDRAMバンクとし
て選択される。このようなRAS線の付勢制御は、シス
テムコントローラ12のメモリ制御ロジックによって実
行される。
System memory 13 and additional memory 4
In the read / write access control of 1, 42, R
One of the AS lines (RAS0 to RAS5) is set to the active state, and the DRAM bank connected to the active RAS line is selected as the DRAM bank to be accessed. Such energization control of the RAS line is executed by the memory control logic of the system controller 12.

【0044】図2には、メモリ制御ロジックの構成が示
されている。
FIG. 2 shows the configuration of the memory control logic.

【0045】メモリ制御ロジロック120は、DRAM
のページモードアクセスおよびページインタリーブをサ
ポートするハードウェアロジックであり、アドレス変換
回路121、RASデコーダ122、ロウアドレス/カ
ラムアドレスマルチプレクサ123、CAS発生回路1
24、タイミング制御回路125、およびページヒット
判定回路126を有している。
The memory control logic lock 120 is a DRAM.
Of the address conversion circuit 121, the RAS decoder 122, the row address / column address multiplexer 123, and the CAS generation circuit 1.
24, a timing control circuit 125, and a page hit determination circuit 126.

【0046】アドレス変換回路121は、CPUアドレ
ス(A31:02)をDRAM論理アドレス(MA3
1:02)に変換する。この変換は、CPU11のメモ
リアドレス空間に分散配置されている複数のDRAMメ
モリエリアをDRAMアクセス専用の論理アドレス空間
に連続的に割り付けるために行われる。このアドレス変
換動作の一例を図3に示す。
The address conversion circuit 121 converts the CPU address (A31: 02) into the DRAM logical address (MA3).
1:02). This conversion is performed in order to continuously allocate a plurality of DRAM memory areas distributed in the memory address space of the CPU 11 to the logical address space dedicated to DRAM access. An example of this address conversion operation is shown in FIG.

【0047】すなわち、図3(A)に示されているよう
に、CPU11のメモリアドレス空間には、通常、シス
テムメモリエリアやPMメモリエリアのようなDRAM
エリアの他に、ビデオRAM、BIOS ROM、およ
び各種オプションROMなどを配置するための予約領域
(0A0000H〜0C0000H)が確保されてい
る。アドレス変換回路121は、このようなCPUメモ
リマップに応じて、予約領域の直前および直後のDRA
Mエリアのアドレスが連続するようにアドレス変換を行
う。
That is, as shown in FIG. 3A, the memory address space of the CPU 11 is usually a DRAM such as a system memory area or a PM memory area.
In addition to the area, a reserved area (0A0000H to 0C0000H) for allocating a video RAM, a BIOS ROM, various option ROMs, and the like is secured. The address conversion circuit 121 determines the DRA immediately before and after the reserved area according to the CPU memory map.
Address conversion is performed so that addresses in the M area are continuous.

【0048】また、BIOS ROMに格納されたVG
A BIOSやシステムBIOSなどをDRAMにコピ
ーして使用する場合には、図3(B)に示されているよ
うに、予約領域のVGA BIOSエリアおよびシステ
ムBIOSエリアに割り当てられたCPUアドレスも、
DRAM論理アドレスに変換される。さらに、システム
マネージメントモード(SMM)を有するCPUの場合
には、そのSMMの中でのみ使用されるSMRAMエリ
アに割り当てられたCPUアドレスもDRAM論理アド
レスに変換される。
In addition, the VG stored in the BIOS ROM
When A BIOS, system BIOS, etc. are copied to the DRAM and used, as shown in FIG. 3B, the CPU addresses assigned to the VGA BIOS area and the system BIOS area of the reserved area are also
Converted to DRAM logical address. Further, in the case of the CPU having the system management mode (SMM), the CPU address assigned to the SMRAM area used only in the SMM is also converted into the DRAM logical address.

【0049】このようなCPUアドレスからDRAM論
理アドレスへの変換は、例えば16Kバイト単位で行わ
れる。このため、DRAM論理アドレスの下位ビット部
(MA13:02)は、アドレス変換後においても、C
PUアドレスの下位ビット部(A13:02)と等し
い。
The conversion from the CPU address to the DRAM logical address is performed in units of 16 Kbytes, for example. Therefore, the lower bit part (MA13: 02) of the DRAM logical address is C even after the address conversion.
It is equal to the lower bit part (A13: 02) of the PU address.

【0050】アドレス変換回路121によって得られた
DRAM論理アドレス(MA31:02)は、システム
内のDRAMバンクをアドレッシングするために使用さ
れる。
The DRAM logical address (MA31: 02) obtained by the address conversion circuit 121 is used to address the DRAM bank in the system.

【0051】RASデコーダ122は、その内部レジス
タにセットされたRAS0〜RAS5それぞれのデコー
ド条件に従ってDRAM論理アドレス(MA31:0
2)をデコードし、RAS0〜RAS5線の中でそのD
RAM論理アドレスが満たすデコード条件を持つRAS
線を選択してそれをアクティブにする。RAS線をアク
ティブにするタイミングなどは、タイミング制御回路1
25からのタイミング制御信号CONT1によって制御
される。
The RAS decoder 122 has a DRAM logical address (MA31: 0) according to the decoding conditions of RAS0 to RAS5 set in its internal register.
2) is decoded and its D is detected in the RAS0 to RAS5 lines.
RAS having a decoding condition satisfied by the RAM logical address
Select a line to activate it. The timing control circuit 1 determines the timing of activating the RAS line.
It is controlled by the timing control signal CONT1 from 25.

【0052】このRASデコーダ122のデコード動作
は、各RAS線のデコード条件とDRAM論理アドレス
との一致/不一致を検出する事のみによって行うことが
できる。RAS0〜RAS5線それぞれのデコード条件
がどのように決定されるかについては、図3以降で詳述
する。
The decoding operation of the RAS decoder 122 can be performed only by detecting the match / mismatch between the decode condition of each RAS line and the DRAM logical address. How the decoding conditions of the RAS0 to RAS5 lines are determined will be described in detail with reference to FIG.

【0053】ロウアドレス/カラムアドレスマルチプレ
クサ123は、DRAM論理アドレス(MA31:0
2)を、アクセス対象DRAMバンクをアドレッシング
するためのロウアドレス(RA)とカラムアドレス(C
A)に分解する。このロウアドレス/カラムアドレスマ
ルチプレクサ123の内部レジスタには、各DRAMバ
ンクのロウアドレス(RA)の開始ビット位置を示す制
御パラメタが予めセットされている。ロウアドレス(R
A)とカラムアドレス(CA)に分解する動作は、アク
セス対象DRAMバンクに対応する制御パラメタに従っ
て行われる。
The row address / column address multiplexer 123 uses the DRAM logical address (MA31: 0).
2) is a row address (RA) and a column address (C) for addressing the DRAM bank to be accessed.
Decomposes into A). A control parameter indicating the start bit position of the row address (RA) of each DRAM bank is preset in the internal register of the row address / column address multiplexer 123. Row address (R
The operation of decomposing into A) and the column address (CA) is performed according to the control parameter corresponding to the DRAM bank to be accessed.

【0054】ロウアドレス(RA)およびカラムアドレ
ス(CA)は、メモリバス33上に時分割的に出力され
る。この出力タイミングは、タイミング制御回路125
からのタイミング制御信号CONT2によって制御され
る。
The row address (RA) and the column address (CA) are output on the memory bus 33 in a time division manner. This output timing is the timing control circuit 125.
Is controlled by the timing control signal CONT2.

【0055】CAS発生回路124は、タイミング制御
回路125からのタイミング制御信号CONT3に従っ
て、CAS線の付勢を制御する。
The CAS generation circuit 124 controls the energization of the CAS line according to the timing control signal CONT3 from the timing control circuit 125.

【0056】タイミンク制御回路125は、前述のタイ
ミング制御信号CONT1〜CONT3を発生すること
によって、RASデコーダ122、ロウアドレス/カラ
ムアドレスマルチプレクサ123、およびCAS発生回
路124の動作を制御する。タイミング制御信号の発生
動作は、ページヒット判定回路126からのページヒッ
ト信号HITなどによって制御される。
The timing control circuit 125 controls the operations of the RAS decoder 122, the row address / column address multiplexer 123, and the CAS generation circuit 124 by generating the timing control signals CONT1 to CONT3 described above. The operation of generating the timing control signal is controlled by the page hit signal HIT from the page hit determination circuit 126.

【0057】ページヒット判定回路126は、前回のD
RAMアクセス時のCPUアドレスをページヒート判定
用CPUアドレスとして保持しており、そのCPUアド
レスと次回のDRAMアクセス時のCPUアドレスとを
比較することによって、ページヒットの有無を判定す
る。ここで、ページヒットとは、次回のDRAMアクセ
スが前回と同一のDRAMバンク内の同一ページをアク
セスすることをいう。ページヒットしたことが判定され
ると、このことがページヒット信号HITによって、タ
イミング制御回路125に通知される。
The page hit determination circuit 126 uses the previous D
The CPU address at the time of RAM access is held as a page heat determination CPU address, and the presence or absence of a page hit is determined by comparing the CPU address with the CPU address at the time of the next DRAM access. Here, the page hit means that the next DRAM access accesses the same page in the same DRAM bank as the previous time. When it is determined that a page hit has occurred, this is notified to the timing control circuit 125 by a page hit signal HIT.

【0058】このように、ページヒットの判定動作は、
DRAM論理アドレスではなく、CPUアドレスの値に
基づいて行われる。これにより、アドレス変換動作とペ
ージヒット判定動作とを並行して行うことが可能とな
る。ページヒット判定にCPUアドレスを利用すること
ができるのは、CPUアドレスからDRAM論理アドレ
スへのアドレス変換の単位(16Kバイト)がDRAM
バンクのページサイズ(最大4Kバイト程度)よりも大
きな値に設定されているからである。
In this way, the page hit determination operation is
This is done based on the value of the CPU address, not the DRAM logical address. This makes it possible to perform the address translation operation and the page hit determination operation in parallel. The CPU address can be used for page hit determination because the unit of address conversion from the CPU address to the DRAM logical address (16K bytes) is DRAM.
This is because it is set to a value larger than the page size of the bank (up to about 4 Kbytes).

【0059】ページヒットの判定には、CPUアドレス
(A31:02)の中でカラムアドレスよりも上位のビ
ット列が使用される。カラムアドレスのビット数、つま
りページサイズはアクセス対象のDRAMバンク毎に異
なる。このため、ページヒット判定回路126の内部レ
ジスタにもページヒット判定に使用すべきビットをRA
S線毎に指定する制御パラメタが予めセットされてお
り、アクセス対象DRAMバンクに対応する制御パラメ
タに従ってページヒットの判定が行われる。
The bit string higher than the column address in the CPU address (A31: 02) is used for the page hit determination. The number of bits of the column address, that is, the page size differs depending on the DRAM bank to be accessed. Therefore, the bits to be used for page hit judgment are also RA in the internal register of the page hit judgment circuit 126.
The control parameter designated for each S line is set in advance, and the page hit is determined according to the control parameter corresponding to the DRAM bank to be accessed.

【0060】このメモリ制御ロジック120によるDR
AM制御タイミングは、次の3つの状態に対応したサイ
クルタイミングに分類される。
DR by this memory control logic 120
The AM control timing is classified into cycle timings corresponding to the following three states.

【0061】(1)ページヒット これは、次回のDRAMアクセスが前回と同一のDRA
Mバンク内の同一ページをアクセスすることをいう。こ
の場合、DRAMバンクはページモードでアクセス制御
される。すなわち、カラムアドレスおよびCAS線の付
勢タイミングだけが制御され、RASデコーダ122に
よるRAS線の切り替えは行われない。また、前回のメ
モリサイクルが終了してもRAS線はアクティブ状態に
維持され続ける。
(1) Page hit This is because the next DRAM access is the same DRA as the previous one.
Accessing the same page in M bank. In this case, the DRAM bank is access controlled in page mode. That is, only the column address and the activation timing of the CAS line are controlled, and the RAS decoder 122 does not switch the RAS line. Further, the RAS line continues to be maintained in the active state even after the last memory cycle is completed.

【0062】(2)バンクミス これは、次回のDRAMアクセスが前回と異なるDRA
Mバンクをアクセスすることをいう。この場合、RAS
デコーダ122によるRAS線の切り替えが発生し、D
RAMバンクは通常のDRAMアクセスサイクルでアク
セスされる。また、ページヒット判定回路126に保持
されているページヒット判定用CPUアドレスの更新が
行われる。
(2) Bank miss This is because the next DRAM access is different from the previous one.
It refers to accessing the M bank. In this case, RAS
Switching of the RAS line by the decoder 122 occurs, and D
The RAM bank is accessed in a normal DRAM access cycle. Further, the page hit determination CPU address held in the page hit determination circuit 126 is updated.

【0063】(3)ページミス これは、次回のDRAMアクセスが前回と同一のDRA
Mバンク内の異なるページをアクセスすることをいう。
この場合、RASデコーダ122によって前回と同一の
RAS線が再びアクティブ状態に設定し直され、DRA
Mバンクは通常のDRAMアクセスサイクルでアクセス
される。また、ページヒット判定回路126に保持され
ているページヒット判定用CPUアドレスの更新が行わ
れる。
(3) Page miss This is because the next DRAM access is the same DRA as the previous one.
It refers to accessing different pages in M bank.
In this case, the RAS decoder 122 resets the same RAS line as the previous one to the active state again, and the DRA
The M bank is accessed in a normal DRAM access cycle. Further, the page hit determination CPU address held in the page hit determination circuit 126 is updated.

【0064】次に、図4乃至図6を参照して、RASデ
コーダ122に設定される各RAS線のデコード条件に
ついて説明する。
Next, the decoding conditions of each RAS line set in the RAS decoder 122 will be described with reference to FIGS. 4 to 6.

【0065】図4には、システム内のDRAMメモリマ
ップの一例が示されている。このDRAMメモリマップ
は、図1に示されているように、システムボード10上
にシステムメモリ13として2個の2MバイトDRAM
バンクが実装されており、拡張メモリコネクタ21の増
設メモリ41が1個の8MバイトDRAMバンクから構
成され、また拡張メモリコネクタ22の増設メモリ42
が2個の4MバイトDRAMバンクから構成されている
場合に対応するものである。
FIG. 4 shows an example of the DRAM memory map in the system. This DRAM memory map is, as shown in FIG. 1, two 2 Mbyte DRAMs as the system memory 13 on the system board 10.
The banks are mounted, the expansion memory 41 of the expansion memory connector 21 is composed of one 8 Mbyte DRAM bank, and the expansion memory 42 of the expansion memory connector 22 is
Corresponds to the case where it is composed of two 4 Mbyte DRAM banks.

【0066】この場合、これらDRAMバンクは、メモ
リサイズの大きいもの順、すなわち、図4のように、8
MバイトDRAMバンク、2個の4MバイトDRAMバ
ンク、2個の2MバイトDRAMバンクの順で、合計2
0MバイトのDRAM論理アドレス空間に配置される。
In this case, these DRAM banks are arranged in descending order of memory size, that is, as shown in FIG.
M-byte DRAM bank, 2 4 M-byte DRAM banks, 2 2 M-byte DRAM banks
It is placed in a 0 Mbyte DRAM logical address space.

【0067】このメモリ配置においては、8MバイトD
RAMバンクに対応するRAS2線には0〜8Mバイト
のアドレス範囲が割り当てられる。また、最初の4Mバ
イトDRAMバンクに対応するRAS4線には8〜12
Mバイトのアドレス範囲、次の4MバイトDRAMバン
クに対応するRAS5線には12〜16Mバイトのアド
レス範囲が割り当てられる。さらに、最初の2Mバイト
DRAMバンクに対応するRAS0線には16〜18M
バイトのアドレス範囲、次の2MバイトDRAMバンク
に対応するRAS1線には18〜20Mバイトのアドレ
ス範囲が割り当てられる。RAS3線は使用されないの
で、このRAS3線にはアドレス範囲は割り当てられな
い。
In this memory arrangement, 8 Mbyte D
An address range of 0 to 8 Mbytes is assigned to the RAS2 line corresponding to the RAM bank. In addition, the RAS4 line corresponding to the first 4 Mbyte DRAM bank has 8 to 12
An address range of M bytes and an address range of 12 to 16 Mbytes are assigned to the RAS5 line corresponding to the next 4 Mbyte DRAM bank. Furthermore, the RAS0 line corresponding to the first 2 Mbyte DRAM bank has 16 to 18 M
An address range of 18 to 20 Mbytes is assigned to the RAS1 line corresponding to the byte address range and the next 2 Mbyte DRAM bank. Since the RAS3 line is not used, no address range is assigned to this RAS3 line.

【0068】この時、RAS0〜RAS5線それぞれの
デコード条件は、図5のように決定される。
At this time, the decoding conditions of the RAS0 to RAS5 lines are determined as shown in FIG.

【0069】RAS0〜RAS5線それぞれのデコード
条件としては、各RAS線に割り当てられたアドレス範
囲に属する全てのDRAM論理アドレス値(MA31:
02)にのみ共通に存在するビット列が使用される。
As decoding conditions for each of the RAS0 to RAS5 lines, all the DRAM logical address values (MA31: that belong to the address range assigned to each RAS line are set.
The bit string that is commonly present only in 02) is used.

【0070】すなわち、RAS2線のデコード条件は、
DRAM論理アドレス値(MA31:02)の上位9ビ
ット(MA31〜23)=“0000 0000 0”
となる。DRAM論理アドレス値(MA31:02)の
下位21ビットは、RAS2線に接続された8Mバイト
DRAMバンクのロウアドレスおよびカラムアドレスと
して使用される。
That is, the decoding condition for the RAS2 line is
Upper 9 bits (MA31 to 23) of DRAM logical address value (MA31: 02) = “0000 0000 0”
Becomes The lower 21 bits of the DRAM logical address value (MA31: 02) are used as a row address and a column address of the 8-Mbyte DRAM bank connected to the RAS2 line.

【0071】また、RAS4線のデコード条件は、DR
AM論理アドレス値(MA31:02)の上位10ビッ
ト(MA31〜22)=“0000 0000 10”
となる。DRAM論理アドレス値(MA31:02)の
下位20ビットは、RAS4線に接続された4Mバイト
DRAMバンクのロウアドレスおよびカラムアドレスと
して使用される。
The decode condition of the RAS4 line is DR
Upper 10 bits (MA31 to 22) of AM logical address value (MA31: 02) = “0000 0000 10”
Becomes The lower 20 bits of the DRAM logical address value (MA31: 02) are used as a row address and a column address of a 4 Mbyte DRAM bank connected to the RAS4 line.

【0072】RAS5線のデコード条件は、DRAM論
理アドレス値(MA31:02)の上位10ビット(M
A31〜22)=“0000 0000 11”とな
る。DRAM論理アドレス値(MA31:02)の下位
20ビットは、RAS5線に接続された4MバイトDR
AMバンクのロウアドレスおよびカラムアドレスとして
使用される。
The decode condition for the RAS5 line is that the upper 10 bits (M) of the DRAM logical address value (MA31: 02) are set.
A31 to 22) = “0000 0000 11”. The lower 20 bits of the DRAM logical address value (MA31: 02) are 4M bytes DR connected to the RAS5 line.
It is used as the row address and column address of the AM bank.

【0073】RAS0線のデコード条件は、DRAM論
理アドレス値(MA31:02)の上位11ビット(M
A31〜21)=“0000 0001 000”とな
る。DRAM論理アドレス値(MA31:02)の下位
19ビットは、RAS0線に接続された2MバイトDR
AMバンクのロウアドレスおよびカラムアドレスとして
使用される。
The decode condition of the RAS0 line is that the upper 11 bits (M) of the DRAM logical address value (MA31: 02).
A31 to 21) = “0000 0001 000”. The lower 19 bits of the DRAM logical address value (MA31: 02) are 2M bytes DR connected to the RAS0 line.
It is used as the row address and column address of the AM bank.

【0074】RAS1線のデコード条件は、DRAM論
理アドレス値(MA31:02)の上位11ビット(M
A31〜21)=“0000 0001 000”とな
る。DRAM論理アドレス値(MA31:02)の下位
19ビットは、RAS0線に接続された2MバイトDR
AMバンクのロウアドレスおよびカラムアドレスとして
使用される。
The decode condition of the RAS1 line is that the upper 11 bits (M) of the DRAM logical address value (MA31: 02) are set.
A31 to 21) = “0000 0001 000”. The lower 19 bits of the DRAM logical address value (MA31: 02) are 2M bytes DR connected to the RAS0 line.
It is used as the row address and column address of the AM bank.

【0075】このように、各RAS線のデコード条件と
しては、各RAS線に対応するアドレス範囲に属する共
通ビット列が使用される。このため、前述のRASデコ
ーダ122は、DRAM論理アドレス値とデコード条件
との一致/不一致をRAS線毎に検出するだけで済み、
従来に比し、そのハードウェア構成を大幅に簡単化する
ことが可能となる。
As described above, the common bit string belonging to the address range corresponding to each RAS line is used as the decoding condition of each RAS line. Therefore, the RAS decoder 122 described above only needs to detect the match / mismatch between the DRAM logical address value and the decode condition for each RAS line.
The hardware configuration can be greatly simplified as compared with the conventional one.

【0076】次に、ページインタリーブアーキテクチャ
を採用する場合の各RAS線のデコード条件について説
明する。
Next, the decoding condition of each RAS line when the page interleave architecture is adopted will be described.

【0077】ページインタリーブを行う場合には、図4
のようにマッピングされた5つのDRAMバンクは、ペ
ージインタリーブ可能なバンクグループに分類される。
各バンクグループは、メモリアドレス範囲が隣接し且つ
合計メモリサイズが一致するバンクの組み合わせを含
む。このようなグループピングは、DRAM論理アドレ
スの若い方から順番に行われる。
When page interleaving is performed, FIG.
The five DRAM banks thus mapped are classified into bank groups capable of page interleaving.
Each bank group includes a combination of banks having adjacent memory address ranges and matching total memory sizes. Such grouping is performed in order from the smallest DRAM logical address.

【0078】すなわち、図4の例では、RAS2の8M
バイトDRAMバンクのアドレス範囲(0〜8Mバイ
ト)に後続するアドレス範囲に割り付けられた2個の4
MバイトDRAMバンクの合計メモリサイズが8Mバイ
トとなるので、RAS2、RAS4、RAS5に対応す
る3つのバンクによって1つのページインタリーブグル
ープが構成される。
That is, in the example of FIG. 4, 8M of RAS2
Two 4 allocated to the address range following the byte DRAM bank address range (0 to 8 Mbytes)
Since the total memory size of the M-byte DRAM bank is 8 M bytes, one page interleave group is formed by the three banks corresponding to RAS2, RAS4, and RAS5.

【0079】また、RAS0の2MバイトDRAMバン
クのアドレス範囲(16〜8Mバイト)に後続するアド
レス範囲にRAS1の2MバイトDRAMバンクが割り
付けられているので、RAS0、RAS1に対応する2
つのバンクによって別のページインタリーブグループが
構成される。
Since the 2-Mbyte DRAM bank of RAS1 is assigned to the address range following the 2-Mbyte DRAM bank of RAS0 (16 to 8 Mbytes), 2 corresponding to RAS0 and RAS1.
One bank constitutes another page interleave group.

【0080】この場合、各RAS線のデコード条件は図
5から図6のように変更される。
In this case, the decoding condition of each RAS line is changed as shown in FIGS.

【0081】すなわち、グループ1のRAS2,RAS
4,RAS5それぞれのデコード条件としては、グルー
プ1に割り当てられる合計16Mバイトのアドレス範囲
(0〜16Mバイト)に属する全てのDRAM論理アド
レス値(MA31:02)に共通に存在するビット列
と、RAS2,RAS4,RAS5それぞれに対応する
DRAMバンクのカラムアドレス(ページ内アドレス)
とロウアドレス(ページアドレス)の間のビット列とが
使用される。
That is, RAS2 and RAS of group 1
4 and RAS5, as a decoding condition, a bit string commonly present in all DRAM logical address values (MA31: 02) belonging to an address range of 16 Mbytes (0 to 16 Mbytes) assigned to group 1, RAS2, Column address of DRAM bank corresponding to RAS4 and RAS5 (in-page address)
And the bit string between the row address (page address) is used.

【0082】すなわち、図6のように、RAS2、RA
S4、およびRAS5に割り当てられる合計16Mバイ
トのアドレス範囲においては、DRAM論理アドレス値
(MA31:02)の上位8ビット(MA31〜24)
=“0000 0000”が共通して存在し、これはグ
ループ2には存在しない。したがって、(MA31〜2
4)=“0000 0000”は、RAS2、RAS
4、およびRAS5の共通のデコード条件として使用さ
れる。
That is, as shown in FIG. 6, RAS2, RA
In the total address range of 16 Mbytes allocated to S4 and RAS5, the upper 8 bits (MA31 to 24) of the DRAM logical address value (MA31: 02)
= “0000 0000” is commonly present and does not exist in group 2. Therefore, (MA31-2
4) = “0000 0000” means RAS2, RAS
4 and RAS5 are used as common decoding conditions.

【0083】RAS2については、DRAM論理アドレ
スにおけるロウアドレスの開始位置が1ビット左シフト
されて、RAS2に対応する8MバイトDRAMバンク
のロウアドレスとカラムアドレスとの間の1ビット(M
A12)=“0”がデコード条件として加えられる。
As for RAS2, the starting position of the row address in the DRAM logical address is shifted left by 1 bit, and 1 bit (M bit between the row address and the column address of the 8-Mbyte DRAM bank corresponding to RAS2 is changed).
A12) = “0” is added as a decoding condition.

【0084】RAS4,RAS5それぞれについては、
DRAM論理アドレスにおけるロウアドレスの開始位置
が2ビット左シフトされて、それらに対応する4Mバイ
トDRAMバンクそれぞれのロウアドレスとカラムアド
レスの間の2ビット(MA13,12)の値がアドレス
条件として加えられる。2ビット使用されるのは、RA
S4,RAS5それぞれのメモリサイズが、RAS2の
メモリサイズの半分だからである。
For each of RAS4 and RAS5,
The starting position of the row address in the DRAM logical address is shifted to the left by 2 bits, and the value of 2 bits (MA13, 12) between the row address and the column address of each corresponding 4 Mbyte DRAM bank is added as an address condition. . 2 bits are used for RA
This is because the memory size of each of S4 and RAS5 is half the memory size of RAS2.

【0085】すなわち、RAS4については、そのRA
S4に対応する4MバイトDRAMバンクのロウアドレ
スとカラムアドレスの間の2ビット(MA13,12)
=“01”がデコード条件として加えられ、RAS5に
ついては、そのRAS5に対応する4MバイトDRAM
バンクのロウアドレスとカラムアドレスの間の2ビット
(MA13,12)=“11”がアドレス条件として加
えられる。
That is, for RAS4, its RA
2 bits between the row address and the column address of the 4-Mbyte DRAM bank corresponding to S4 (MA13, 12)
= “01” is added as a decoding condition, and for RAS5, a 4-Mbyte DRAM corresponding to that RAS5
2 bits (MA13, 12) = “11” between the row address and the column address of the bank are added as an address condition.

【0086】このようにRAS2,RAS4,RAS5
のデコード条件を決定すると、RAS2の8MバイトD
RAMバンクには0〜16Mバイトのアドレス範囲の中
の偶数ページ(0,2,4,6,……)が割り当てら
れ、RAS4の4MバイトDRAMバンクには0〜16
Mバイトのアドレス範囲の中の奇数ページの一部(1,
5,9,……)が割り当てられ、RAS5の4Mバイト
DRAMバンクには0〜16Mバイトのアドレス範囲の
中の残りの奇数ページ(3,7,11,……)が割り当
てられる。
In this way, RAS2, RAS4, RAS5
When the decoding conditions for RAS2 are determined, 8 Mbyte D of RAS2
Even pages (0, 2, 4, 6, ...) Within the address range of 0 to 16 Mbytes are allocated to the RAM bank, and 0 to 16 are allocated to the 4 Mbyte DRAM bank of RAS4.
Part of an odd-numbered page in the M-byte address range (1,
, 5), and the remaining odd pages (3, 7, 11, ...) In the address range of 0 to 16 Mbytes are assigned to the 4 Mbyte DRAM bank of RAS5.

【0087】したがって、0〜16Mバイトの範囲で連
続アクセスが行われる時には、RAS2、RAS4、R
AS2、RAS5、RAS2、……という順番で、3つ
のDRAMバンクがページ単位で交互にアクセスされ
る。
Therefore, when continuous access is performed in the range of 0 to 16 Mbytes, RAS2, RAS4, R
In the order of AS2, RAS5, RAS2, ..., Three DRAM banks are alternately accessed in page units.

【0088】一方、グループ2のRAS0,RAS1そ
れぞれのデコード条件は、次のようになる。
On the other hand, the decoding conditions of RAS0 and RAS1 of group 2 are as follows.

【0089】すなわち、RAS0,RAS1それぞれの
デコード条件としては、グループ2に割り当てられる合
計4Mバイトのアドレス範囲(16〜20Mバイト)に
属する全てのDRAM論理アドレス値(MA31:0
2)に共通に存在するビット列と、RAS0,RAS1
それぞれに対応するDRAMバンクのカラムアドレスと
ロウアドレスの間のビット列とが使用される。
That is, as decoding conditions for RAS0 and RAS1, all DRAM logical address values (MA31: 0) belonging to the address range (16 to 20 Mbytes) assigned to group 2 of 4 Mbytes in total.
2) bit strings commonly present in RAS0 and RAS1
The column address and the bit string between the row addresses of the DRAM bank corresponding to each are used.

【0090】RAS0、RAS1に割り当てられる合計
4Mバイトのアドレス範囲においては、DRAM論理ア
ドレス値(MA31:02)の上位10ビット(MA3
1〜22)=“0000 0001 00”が共通して
存在し、これはグループ1には存在しない。したがっ
て、(MA31〜22)=“0000 0001 0
0”は、RAS0、RAS1の共通のデコード条件とし
て使用される。
In the address range of 4 Mbytes allocated to RAS0 and RAS1, the upper 10 bits (MA3) of the DRAM logical address value (MA31: 02) are set.
1 to 22) = “0000 0001 00” exist in common, and this does not exist in group 1. Therefore, (MA31-22) = “0000 0001 0
0 ″ is used as a common decoding condition for RAS0 and RAS1.

【0091】また、RAS0については、DRAM論理
アドレスにおけるロウアドレスの開始位置が1ビット左
シフトされて、RAS0に対応する2MバイトDRAM
バンクのロウアドレスとカラムアドレスとの間の1ビッ
ト(MA11)=“0”がデコード条件として加えられ
る。
As for RAS0, the starting position of the row address in the DRAM logical address is shifted left by 1 bit to generate a 2 Mbyte DRAM corresponding to RAS0.
One bit (MA11) = “0” between the row address and the column address of the bank is added as a decoding condition.

【0092】RAS1についても、DRAM論理アドレ
スにおけるロウアドレスの開始位置が1ビット左シフト
されて、それに対応する2MバイトDRAMバンクのロ
ウアドレスとカラムアドレスの間の1ビット(MA1
1)=“1”がデコード条件として加えられる。
Also for RAS1, the starting position of the row address in the DRAM logical address is shifted to the left by one bit, and the corresponding one bit (MA1) between the row address and the column address of the corresponding 2M-byte DRAM bank.
1) = “1” is added as a decoding condition.

【0093】このようにRAS0,RAS1のデコード
条件を決定すると、RAS0の2MバイトDRAMバン
クには16〜20Mバイトの4Mバイトのアドレス範囲
の中の偶数ページ(0,2,4,6,……)が割り当て
られ、RAS1の2MバイトDRAMバンクには奇数ペ
ージ(1,3,5,7,……)が割り当てられる。した
がって、16〜20Mバイトの範囲で連続アクセスが行
われる時には、RAS0、RAS1、RAS0、RAS
1、……という順番で、2つのDRAMバンクがページ
単位で交互にアクセスされる。
When the decoding conditions for RAS0 and RAS1 are thus determined, even-numbered pages (0, 2, 4, 6, ...) In the 4 Mbyte address range of 16 to 20 Mbytes in the 2 Mbyte DRAM bank of RAS0 are determined. ) Is assigned, and odd-numbered pages (1, 3, 5, 7, ...) Are assigned to the 2-Mbyte DRAM bank of RAS1. Therefore, when continuous access is performed in the range of 16 to 20 Mbytes, RAS0, RAS1, RAS0, RAS
Two DRAM banks are alternately accessed page by page in the order of 1, ...

【0094】このように、ページインタリーブは、イン
タリーブグループのアドレス範囲に共通に存在するビッ
ト列と、ロウアドレスとカラムアドレスとの間の所定ビ
ット列とに基づいて各RASのデコード条件を決定し、
それをRASデコーダ122に設定するだけで実現する
事ができる。
As described above, the page interleaving determines the decoding condition of each RAS based on the bit string commonly existing in the address range of the interleave group and the predetermined bit string between the row address and the column address.
It can be realized only by setting it in the RAS decoder 122.

【0095】RASデコーダ122へのデコード条件の
設定などのメモリ制御ロジック120に対する初期設定
処理は、BIOS ROM14のIRTルーチンによっ
て実行される。
Initial setting processing for the memory control logic 120, such as setting of decoding conditions in the RAS decoder 122, is executed by the IRT routine of the BIOS ROM 14.

【0096】図7には、IRTルーチンによって実行さ
れるメモリ制御ロジック120に対する初期設定動作の
手順が示されている。
FIG. 7 shows the procedure of the initialization operation for the memory control logic 120 executed by the IRT routine.

【0097】システムがパワーオンされると、IRTル
ーチンは、まず、各DRAMバンクのメモリタイプ(カ
ラムアドレスおよびロウアドレスそれぞれのビット幅)
を調べ、そのメモリバンクタイプにしたがってメモリサ
イズを検出する(ステップS11)。カラムアドレスと
ロウアドレスそれぞれのビット幅は、テスト対象DRA
Mバンクのある特定のメモリ番地に対するライト・リー
ド・コンペアテストを実行することによって検出でき
る。
When the system is powered on, the IRT routine first executes the memory type (bit width of each column address and row address) of each DRAM bank.
And the memory size is detected according to the memory bank type (step S11). The bit width of each of the column address and the row address is the DRA to be tested.
This can be detected by executing a write / read compare test for a specific memory address in the M bank.

【0098】このステップS11で行われるメモリサイ
ズ検出処理動作の詳細については、図8以降で後述す
る。
Details of the memory size detection processing operation performed in step S11 will be described later with reference to FIG.

【0099】次に、IRTルーチンは、システム内のD
RAMバンクのメモリ再配置を行う(ステップS1
2)。このメモリ再配置では、図4で説明したように、
メモリサイズの大きいDRAMバンクから順にメモリア
ドレス空間の若い方に配置され、その配置に従って各D
RAMバンクに割り当てるべきアドレス範囲が決定され
る。
Next, the IRT routine calls the DRT in the system.
The memory of the RAM bank is relocated (step S1)
2). In this memory relocation, as described in FIG.
The DRAM banks are arranged in descending order of memory size starting from the DRAM bank with the largest memory size, and each D
The address range to be assigned to the RAM bank is determined.

【0100】次いで、IRTルーチンは、図5で説明し
たように、DRAMバンクそれぞれに割り当てられたア
ドレス範囲毎にその範囲に属するDRAM論理アドレス
値にのみ共通に存在するビット列を検出し、その共通ビ
ット列をRAS線それぞれのデコード条件として決定す
る(ステップS13)。
Then, as described with reference to FIG. 5, the IRT routine detects, for each address range assigned to each DRAM bank, a bit string commonly present only in the DRAM logical address values belonging to the range, and the common bit string is detected. Is determined as a decoding condition for each RAS line (step S13).

【0101】ページインタリーブアーキテクチャを用い
ない場合には、IRTルーチンは、ステップS13で決
定した各RAS線のデコード条件を、そのままRASデ
コーダ122の内部レジスタにセットする(ステップS
17)。次いで、IRTルーチンは、ロウアドレス/カ
ラムアドレスマルチプレクサ123の内部レジスタにロ
ウアドレス開始位置をRAS線毎に指定する制御パラメ
タをセットし、またページヒット判定回路126の内部
レジスタにペ−ジヒット判定に使用するCPUアドレス
の位置をRAS線毎に指定する制御パラメタをセットす
る(ステップS18)。これら制御パラメタの値は、そ
れぞれステップS11で検出されたメモリバンクタイプ
に従って決定される。
When the page interleave architecture is not used, the IRT routine sets the decoding condition of each RAS line determined in step S13 in the internal register of the RAS decoder 122 as it is (step S).
17). Next, the IRT routine sets a control parameter that specifies the row address start position for each RAS line in the internal register of the row address / column address multiplexer 123, and also uses it in the internal register of the page hit determination circuit 126 for page hit determination. A control parameter for specifying the CPU address position to be set for each RAS line is set (step S18). The values of these control parameters are determined according to the memory bank type detected in step S11.

【0102】一方、ページインタリーブアーキテクチャ
を採用する場合には、IRTルーチンは、ステップS1
2でメモリサイズ順に配置したDRAMマップに従っ
て、ページインタリーブ可能なグループを決定する(ス
テップS15)。次いで、IRTルーチンは、ページイ
ンタリーブグループのアドレス範囲に共通に存在するビ
ット列と、ロウアドレスとカラムアドレスとの間の所定
ビット列とに基づいて各RASのデコード条件を変更す
る(ステップS16)。
On the other hand, when the page interleave architecture is adopted, the IRT routine executes step S1.
A group capable of page interleaving is determined according to the DRAM map arranged in the memory size order in 2 (step S15). Next, the IRT routine changes the decoding condition of each RAS based on the bit string commonly existing in the address range of the page interleave group and the predetermined bit string between the row address and the column address (step S16).

【0103】この後、IRTルーチンは、ステップS1
6で決定した各RAS線のデコード条件を、RASデコ
ーダ122の内部レジスタにセットする(ステップS1
7)。次いで、IRTルーチンは、ロウアドレス/カラ
ムアドレスマルチプレクサ123の内部レジスタにロウ
アドレス開始位置をRAS線毎に指定する制御パラメタ
をセットし、またページヒット判定回路126の内部レ
ジスタにペ−ジヒット判定に使用するCPUアドレスの
位置をRAS線毎に指定する制御パラメタをセットする
(ステップS18)。ロウアドレス開始位置は、ステッ
プS11で検出されたメモリバンクタイプと、ページイ
ンターリーブのためのデコード条件として使用したロウ
アドレスとカラムアドレス間のビット数とに基づいて決
定される。また、ペ−ジヒット判定に使用するCPUア
ドレスの位置については、ステップS11で検出された
メモリバンクタイプに従って決定される。
After that, the IRT routine proceeds to step S1.
The decode condition of each RAS line determined in 6 is set in the internal register of the RAS decoder 122 (step S1).
7). Next, the IRT routine sets a control parameter that specifies the row address start position for each RAS line in the internal register of the row address / column address multiplexer 123, and also uses it in the internal register of the page hit determination circuit 126 for page hit determination. A control parameter for specifying the CPU address position to be set for each RAS line is set (step S18). The row address start position is determined based on the memory bank type detected in step S11 and the number of bits between the row address and the column address used as the decoding condition for page interleaving. The position of the CPU address used for the page hit determination is determined according to the memory bank type detected in step S11.

【0104】次に、図8乃至図12を参照して、DRA
Mバンクのメモリサイズ検出処理の原理を説明する。
Next, referring to FIGS. 8 to 12, the DRA
The principle of the memory size detection process for M banks will be described.

【0105】まず、図8を参照して、1本のRASでア
クセス制御可能なDRAMバンクの種類について説明す
る。DRAMバンクは、図示のように、タイプ1〜タイ
プ4の4つのバンクに大別される。
First, referring to FIG. 8, the types of DRAM banks whose access can be controlled by one RAS will be described. The DRAM banks are roughly classified into four banks of type 1 to type 4, as shown in the figure.

【0106】タイプ1のDRAMバンクは、2Mバイト
のメモリサイズを有する。このタイプ1のDRAMバン
クは、512K(1K行×512列)×8ビット構成の
4MビットDRAMチップを4個含んでおり、ロウアド
レスのビット幅は10ビット、カラムアドレスのビット
幅は9ビットである。
The type 1 DRAM bank has a memory size of 2 Mbytes. This type 1 DRAM bank includes four 4M bit DRAM chips each having 512K (1K rows × 512 columns) × 8 bits, a row address bit width of 10 bits, and a column address bit width of 9 bits. is there.

【0107】タイプ2のDRAMバンクは、4Mバイト
のメモリサイズを有する。このタイプ2のDRAMバン
クは、1M(1K行×1K列)×4ビット構成の4Mビ
ットDRAMチップを8個含んでおり、ロウアドレスの
ビット幅は10ビット、カラムアドレスのビット幅は1
0ビットである。
The type 2 DRAM bank has a memory size of 4 Mbytes. This type 2 DRAM bank includes eight 4M bit DRAM chips each having a configuration of 1M (1K rows × 1K columns) × 4 bits, a row address bit width is 10 bits, and a column address bit width is 1 bit.
It is 0 bit.

【0108】タイプ3のDRAMバンクは、8Mバイト
のメモリサイズを有する。このタイプ3のDRAMバン
クは、2M(2K行×1K列)×8ビット構成の16M
ビットDRAMチップを4個含んでおり、ロウアドレス
のビット幅は11ビット、カラムアドレスのビット幅は
10ビットである。
The type 3 DRAM bank has a memory size of 8 Mbytes. This type 3 DRAM bank is 2M (2K rows x 1K columns) x 16-bit 16M
It includes four bit DRAM chips, the row address bit width is 11 bits, and the column address bit width is 10 bits.

【0109】タイプ4のDRAMバンクは、16Mバイ
トのメモリサイズを有する。このタイプ4のDRAMバ
ンクは、4M(2K行×2K列)×4ビット構成の16
MビットDRAMチップを8個含んでおり、ロウアドレ
スのビット幅は11ビット、カラムアドレスのビット幅
は11ビットである。
The type 4 DRAM bank has a memory size of 16 Mbytes. This type 4 DRAM bank consists of 4M (2K rows × 2K columns) × 4 bits 16
It includes eight M-bit DRAM chips, the row address bit width is 11 bits, and the column address bit width is 11 bits.

【0110】図9、図10、および図11には、それぞ
れ図1のシステムメモリ13、増設メモリ41、および
増設メモリ42のメモリ構成が示されている。
FIGS. 9, 10, and 11 show the memory configurations of the system memory 13, the additional memory 41, and the additional memory 42 of FIG. 1, respectively.

【0111】システムメモリ13がタイプ1の2個の2
MバイトDRAMバンクによって構成されている場合に
は、図9に示されているように、一方の2MバイトDR
AMバンクの4つのDRAMチップはRAS0線および
CAS線に共通接続され、他方の2MバイトDRAMバ
ンクの4つのDRAMチップはRAS1線、およびCA
S線に共通接続される。また、これら2つの2Mバイト
DRAMバンク内の全てのチップは、メモリアドレスバ
ス33、およびデータバス322の双方に並列接続され
る。
The system memory 13 has two type 1
In the case of the M-byte DRAM bank, as shown in FIG.
The four DRAM chips in the AM bank are commonly connected to the RAS0 line and the CAS line, and the other four DRAM chips in the 2 Mbyte DRAM bank are the RAS1 line and the CA line.
Commonly connected to the S line. Further, all the chips in these two 2 Mbyte DRAM banks are connected in parallel to both the memory address bus 33 and the data bus 322.

【0112】これら2つの2MバイトDRAMバンクの
どちらがアドレス指定されるかは、RAS0とRAS1
のどちらが付勢されるかによって決定される。
Which of these two 2 Mbyte DRAM banks is addressed is determined by RAS0 and RAS1.
Of which is activated.

【0113】RAS0線が付勢された場合には、その時
にメモリアドレスバス33上に出力されているアドレス
値の下位10ビットがロウアドレスとしてそのRAS0
線に接続されている4つのチップにそれぞれ取り込まれ
る。この後、RAS0線に接続されている4つのチップ
は、CAS線が付勢された時にメモリアドレスバス33
上に出力されているアドレス値の下位9ビットをカラム
アドレスとして取り込む。これら10ビットのロウアド
レスおよび9ビットのカラムアドレスによってRAS0
線に接続されている4つのチップそれぞれの同一番地が
同時にアドレス指定され、1チップ当たり8ビットの合
計32ビット単位でRAS0線に対応するDRAMバン
クがリード/ライトアクセスされる。
When the RAS0 line is activated, the lower 10 bits of the address value output on the memory address bus 33 at that time are used as the row address of the RAS0 line.
It is taken into each of the four chips connected to the line. After that, the four chips connected to the RAS0 line are connected to the memory address bus 33 when the CAS line is activated.
The lower 9 bits of the address value output above are fetched as a column address. RAS0 is defined by these 10-bit row address and 9-bit column address.
The same address of each of the four chips connected to the line is simultaneously addressed, and the DRAM bank corresponding to the RAS0 line is read / write accessed in units of 32 bits, that is, 8 bits per chip.

【0114】同様に、RAS1線が付勢された場合に
は、その時にメモリアドレスバス33上に出力されてい
るアドレス値の下位10ビットのロウアドレスがそのR
AS1線に接続されている4つのチップにそれぞれ取り
込まれる。この後、RAS1線に接続されている4つの
チップは、CAS線が付勢された時にメモリアドレスバ
ス33上に出力されているアドレス値の下位9ビットの
カラムアドレスを取り込む。これら10ビットのロウア
ドレスおよび9ビットのカラムアドレスによって、RA
S1線に接続されている4つのチップそれぞれの同一記
憶位置が同時にアドレス指定され、1チップ当たり8ビ
ットの合計32ビット単位でRAS1線に対応するDR
AMバンクがリード/ライトアクセスされる。
Similarly, when the RAS1 line is activated, the row address of the lower 10 bits of the address value output on the memory address bus 33 at that time is the R address.
It is taken into each of the four chips connected to the AS1 line. After that, the four chips connected to the RAS1 line take in the column address of the lower 9 bits of the address value output on the memory address bus 33 when the CAS line is activated. These 10-bit row address and 9-bit column address enable RA
The same memory location of each of the four chips connected to the S1 line is simultaneously addressed, and the DR corresponding to the RAS1 line in units of a total of 32 bits of 8 bits per chip
The AM bank is read / write accessed.

【0115】増設メモリ41がタイプ3の1個の8Mバ
イトDRAMバンクによって構成されている場合には、
図10に示されているように、その8MバイトDRAM
バンクの4つのDRAMチップはRAS2線およびCA
S線に共通接続される。また、8MバイトDRAMバン
ク内の全てのチップは、メモリアドレスバス33、およ
びデータバス322の双方に並列接続される。
When the extension memory 41 is composed of one type 3 8 Mbyte DRAM bank,
As shown in FIG. 10, the 8-Mbyte DRAM
The four DRAM chips in the bank are RAS2 line and CA
Commonly connected to the S line. Further, all the chips in the 8-Mbyte DRAM bank are connected in parallel to both the memory address bus 33 and the data bus 322.

【0116】RAS2線が付勢された場合には、その時
にメモリアドレスバス33上に出力されているアドレス
値の下位11ビットがロウアドレスとしてそのRAS2
線に接続されている4つのチップにそれぞれ取り込まれ
る。この後、RAS2線に接続されている4つのチップ
は、CAS線が付勢された時にメモリアドレスバス33
上に出力されているアドレス値の下位10ビットをカラ
ムアドレスとして取り込む。これら11ビットのロウア
ドレスと10ビットのカラムアドレスとによって、RA
S0線に接続されている4つのチップそれぞれの対応す
る記憶位置が同時にアドレス指定され、1チップ当たり
8ビットの合計32ビット単位で、RAS2線に対応す
るDRAMバンクがリード/ライトアクセスされる。
When the RAS2 line is activated, the lower 11 bits of the address value output on the memory address bus 33 at that time are used as the row address of the RAS2 line.
It is taken into each of the four chips connected to the line. After this, the four chips connected to the RAS2 line will have the memory address bus 33 when the CAS line is activated.
The lower 10 bits of the address value output above are fetched as a column address. By these 11-bit row address and 10-bit column address, RA
Corresponding storage locations of each of the four chips connected to the S0 line are simultaneously addressed, and the DRAM bank corresponding to the RAS2 line is read / write accessed in units of 32 bits, that is, 8 bits per chip.

【0117】増設メモリ42がタイプ2の2個の4Mバ
イトDRAMバンクによって構成されている場合には、
図11に示されているように、一方の4MバイトDRA
Mバンクの8つのDRAMチップはRAS4線およびC
AS線に共通接続され、他方の4MバイトDRAMバン
クの8つのDRAMチップはRAS5線およびCAS線
に共通接続される。また、これら4MバイトDRAMバ
ンク内の全てのチップは、メモリアドレスバス33、お
よびデータバス322の双方に並列接続される。
When the extension memory 42 is composed of two 4 Mbyte DRAM banks of type 2,
One 4 Mbyte DRA as shown in FIG.
Eight DRAM chips in M bank are RAS 4 lines and C
The eight DRAM chips of the other 4 Mbyte DRAM bank are commonly connected to the AS line, and commonly connected to the RAS5 line and the CAS line. Further, all the chips in these 4 Mbyte DRAM banks are connected in parallel to both the memory address bus 33 and the data bus 322.

【0118】これら2つの4MバイトDRAMバンクの
どちらがアドレス指定されるかは、RAS4とRAS5
のどちらが付勢されるかによって決定される。
RAS4 and RAS5 determine which of these two 4 Mbyte DRAM banks is addressed.
Of which is activated.

【0119】RAS4線が付勢された場合には、その時
にメモリアドレスバス33上に出力されているアドレス
値の下位10ビットがロウアドレスとしてそのRAS4
線に接続されている8つのチップにそれぞれ取り込まれ
る。この後、RAS4線に接続されている8つのチップ
は、CAS線が付勢された時にメモリアドレスバス33
上に出力されているアドレス値の下位10ビットをカラ
ムアドレスとして取り込む。これら10ビットのロウア
ドレスおよび10ビットのカラムアドレスによって、R
AS4線に接続されている8つのチップそれぞれの同一
の記憶位置が同時にアドレス指定され、1チップ当たり
4ビットの合計32ビット単位でRAS4線に対応する
DRAMバンクがリード/ライトアクセスされる。
When the RAS4 line is activated, the lower 10 bits of the address value output on the memory address bus 33 at that time are used as the row address of the RAS4 line.
It is taken into each of the eight chips connected to the line. After this, the eight chips connected to the RAS4 line are connected to the memory address bus 33 when the CAS line is activated.
The lower 10 bits of the address value output above are fetched as a column address. By these 10-bit row address and 10-bit column address, R
The same memory location of each of the eight chips connected to the AS4 line is simultaneously addressed, and the DRAM bank corresponding to the RAS4 line is read / write accessed in units of 32 bits, that is, 4 bits per chip.

【0120】同様に、RAS5線が付勢された場合に
は、その時にメモリアドレスバス33上に出力されてい
るアドレス値の下位10ビットがロウアドレスとしてそ
のRAS5線に接続されている8つのチップにそれぞれ
取り込まれる。この後、RAS5線に接続されている8
つのチップは、CAS線が付勢された時にメモリアドレ
スバス33上に出力されているアドレス値の下位10ビ
ットをカラムアドレスとして取り込む。これら10ビッ
トのロウアドレスおよび10ビットのカラムアドレスと
によって、RAS5線に接続されている8つのチップそ
れぞれの同一記憶位置が同時にアドレス指定され、1チ
ップ当たり4ビットの合計32ビット単位でRAS5線
に対応するDRAMバンクがリード/ライトアクセスさ
れる。
Similarly, when the RAS5 line is energized, the lower 10 bits of the address value output on the memory address bus 33 at that time are connected to the RAS5 line as the row address. Is taken into each. After this, 8 connected to RAS5 line
One chip fetches the lower 10 bits of the address value output on the memory address bus 33 as the column address when the CAS line is activated. The same memory location of each of the eight chips connected to the RAS5 line is simultaneously addressed by the 10-bit row address and the 10-bit column address, and the 4-bit per chip makes a total of 32 bits to the RAS5 line. The corresponding DRAM bank is read / write accessed.

【0121】このように、DRAMバンクのタイプ毎
に、ロウアドレスとして使用されるビット数とカラムア
ドレスとして使用されるビット数との関係が異なってい
る。各RAS線に接続されたDRAMバンクのメモリサ
イズは、ロウアドレスおよびカラムアドレスとして使用
されるビット数の違いを利用して検出される。
As described above, the relationship between the number of bits used as a row address and the number of bits used as a column address is different for each type of DRAM bank. The memory size of the DRAM bank connected to each RAS line is detected by utilizing the difference in the number of bits used as a row address and a column address.

【0122】以下、図12のフローチャートを参照し
て、IRTルーチンのステップS11で実行されるメモ
リサイズ検出処理の手順を説明する。
The procedure of the memory size detection process executed in step S11 of the IRT routine will be described below with reference to the flowchart of FIG.

【0123】IRTルーチンは、RAS0、RAS1、
RAS2、…の順で、RAS線に接続されたDRAMバ
ンクのメモリサイズ検出処理を行う。IRTルーチン
は、まず、検査対象のRAS線の付勢だけが許可される
ように、RASデコーダ122に所定のデコード条件を
セットする(ステップS21)。この場合、検査対象R
AS線のデコード条件としては、メモリサイズ検出のた
めに行われる何回かのメモリアクセスで使用されるメモ
リアドレス値に共通のビット列が使用される。また、検
査対象RAS線を除くの他の全てのRAS線について
は、メモリサイズ検出のために行われる何回かのメモリ
アクセスでそれらRAS線が付勢されないように、検査
対象RAS線とは異なる所定のビット列がそれぞれのデ
コード条件として設定される。
The IRT routine includes RAS0, RAS1,
The memory size detection processing of the DRAM banks connected to the RAS line is performed in the order of RAS2, .... The IRT routine first sets a predetermined decoding condition in the RAS decoder 122 so that only the activation of the RAS line to be inspected is permitted (step S21). In this case, the inspection target R
As a decoding condition for the AS line, a bit string common to the memory address values used in several memory accesses for detecting the memory size is used. In addition, all the other RAS lines except the RAS line to be inspected are different from the RAS line to be inspected so that the RAS lines are not activated by several memory accesses for detecting the memory size. A predetermined bit string is set as each decoding condition.

【0124】次いで、IRTルーチンは、タイプ1〜タ
イプ4のDRAMバンクの中で最もカラムアドレスのビ
ット数が大きいタイプ4のDRAMバンク(カラムアド
レスCA=11ビット、ロウアドレスRA=11ビッ
ト)が検査対象RAS線に接続されていると想定し、そ
のDRAMバンクに対してライト・リード・コンペアテ
ストを行う(ステップS22)。この場合、ロウアドレ
ス/カラムアドレスマルチプレクサ123には、タイプ
4のDRAMバンクに対応する制御パラメタがセットさ
れる。ライト・リード・コンペアテストでは、ライトア
ドレス00001000H(Hは16進表示を示す)の
ライトアクセスと、リードアドレス00000000H
のリードアクセスとが行われ、その時のライトデータと
リードデータの一致の有無が調べられる(ステップS2
3)。
Next, in the IRT routine, the type 4 DRAM bank (column address CA = 11 bits, row address RA = 11 bits) having the largest bit number of the column address among the type 1 to type 4 DRAM banks is inspected. Assuming that the DRAM bank is connected to the target RAS line, a write / read compare test is performed on the DRAM bank (step S22). In this case, the row / column address multiplexer 123 is set with a control parameter corresponding to the type 4 DRAM bank. In the write-read-compare test, write access of write address 00001000H (H indicates hexadecimal display) and read address 00000000H
Read access is performed, and it is checked whether or not the write data at that time and the read data match (step S2).
3).

【0125】もし、検査対象RAS線に実際に接続され
ているDRAMバンクが想定した通りのタイプ4のDR
AMバンクであれば、アドレス00001000Hに正
常にデータを書き込むことができるので、ライトデータ
とリードデータの値は不一致となる。一方、検査対象R
AS線に実際に接続されているDRAMバンクがそのカ
ラムアドレス数が10ビット以下のタイプ1、タイプ
2、またはタイプ3のバンクであった場合には、ライト
データとリードデータの値は一致する。これは、次の理
由による。
If the DRAM bank actually connected to the RAS line to be inspected has the type 4 DR as expected.
In the case of the AM bank, the data can be normally written in the address 00001000H, so that the values of the write data and the read data do not match. On the other hand, inspection target R
When the DRAM bank actually connected to the AS line is a type 1, type 2, or type 3 bank having a column address number of 10 bits or less, the values of the write data and the read data match. This is for the following reason.

【0126】すなわち、ステップS22ではタイプ4の
DRAMバンクに対応する設定が成されているので、ア
ドレス00001000Hのライトアクセス時に出力さ
れる11ビットのロウアドレスRA(MA23,……,
MA13)=00000000000であり、11ビッ
トのカラムアドレスCA(MA12,……,MA02)
=10000000000である。カラムアドレス数が
10ビット以下のDRAMバンクにおいては、11ビッ
トのカラムアドレスCAの最上位ビットMA12の値
“1”は無視される。このため、タイプ1、タイプ2、
またはタイプ3のバンクが接続されている場合には、ラ
イトアドレス00001000Hのライトアクセスによ
って、その先頭行におけるカラムアドレスCA=000
0000000で指定される番地、すなわちアドレス0
0000000Hにデータが書き込まれる。これによ
り、リードアドレス00000000Hのリードアクセ
スで読み出されたリードデータがライトデータと一致す
る。
That is, since the setting corresponding to the type 4 DRAM bank is made in step S22, the 11-bit row address RA (MA23, ..., And) output at the write access of the address 00001000H.
MA13) = 0000000000 and the 11-bit column address CA (MA12, ..., MA02)
= 10000000. In a DRAM bank in which the number of column addresses is 10 bits or less, the value "1" of the most significant bit MA12 of the 11-bit column address CA is ignored. Therefore, type 1, type 2,
Alternatively, when a type 3 bank is connected, the column address CA = 000 in the first row is obtained by the write access of the write address 00001000H.
Address specified by 0000000, that is, address 0
Data is written in 0000000H. As a result, the read data read by the read access of the read address 00000000H matches the write data.

【0127】したがって、ステップS23でライトデー
タとリードデータの不一致が検出された時は、検査対象
RAS線に接続されているDRAMバンクは想定した通
りのタイプ4のDRAMバンク(CA=11ビット、R
A=11ビット、メモリサイズ=16Mバイト)である
と判定され(ステップS24)、一方、ライトデータと
リードデータの一致が検出された場合には、検査対象R
AS線に接続されているDRAMバンクはカラムアドレ
スビット数が10ビット以下の他のタイプ(タイプ1、
タイプ2、またはタイプ3)のDRAMバンクであると
判定される。この場合には、次のようなステップS25
以降の処理が行われる。
Therefore, when a mismatch between the write data and the read data is detected in step S23, the DRAM bank connected to the RAS line to be inspected is the type 4 DRAM bank (CA = 11 bits, R
If it is determined that A = 11 bits and memory size = 16 Mbytes (step S24), and the match between the write data and the read data is detected, the inspection target R
The DRAM bank connected to the AS line has another type (type 1,
It is determined to be a type 2 or type 3) DRAM bank. In this case, the following step S25
Subsequent processing is performed.

【0128】すなわち、IRTルーチンは、今度は、タ
イプ4の次にカラムアドレスビット数が大きいタイプ3
(またはタイプ2)のメモリ構成(カラムアドレスCA
=10ビット、ロウアドレスRA=11ビット)が検査
対象RAS線に接続されていると想定して、そのDRA
Mバンクに対してライト・リード・コンペアテストを行
う(ステップS25)。このライト・リード・コンペア
テストでは、ライトアドレス00000800Hのライ
トアクセスと、リードアドレス00000000Hのリ
ードアクセスとが行われ、その時のライトデータとリー
ドデータの一致の有無が調べられる(ステップS2
6)。
That is, this time, the IRT routine executes the type 3 which has the second largest number of column address bits next to the type 4.
(Or type 2) memory configuration (column address CA
= 10 bits, row address RA = 11 bits), the DRA
A write / read compare test is performed on the M bank (step S25). In this write-read-compare test, a write access of write address 0000000080H and a read access of read address 00000000H are performed, and it is checked whether the write data and the read data at that time match (step S2).
6).

【0129】もし、検査対象RAS線に実際に接続され
ているDRAMバンクがそのカラムアドレス数が9ビッ
ト以下のタイプ1のDRAMバンクであった場合には、
前述と同様にカラムアドレスの最上位ビット“1”が無
視されるため、そのタイプ1のDRAMバンクのアドレ
ス00000000Hで指定される番地にデータが書き
込まれる。この結果、ライトデータとリードデータの値
は一致する。したがって、ライトデータとリードデータ
の一致が検出された場合には、検査対象RAS線に接続
されているDRAMバンクがタイプ1のDRAMバンク
(CA=9ビット、RA=10ビット、メモリサイズ=
2Mバイト)であると判定される(ステップS27)。
If the DRAM bank actually connected to the RAS line to be inspected is a type 1 DRAM bank whose column address number is 9 bits or less,
Since the most significant bit "1" of the column address is ignored as described above, the data is written to the address designated by the address 00000000H of the type 1 DRAM bank. As a result, the values of the write data and the read data match. Therefore, when a match between the write data and the read data is detected, the DRAM bank connected to the RAS line to be inspected is a type 1 DRAM bank (CA = 9 bits, RA = 10 bits, memory size =
It is determined to be 2 Mbytes) (step S27).

【0130】一方、査対象RAS線に実際に接続されて
いるDRAMバンクが想定した通りの10ビットのカラ
ムアドレスビット数を持つタイプ2またはタイプ3のD
RAMバンクであれば、アドレス00010000Hに
正常にデータを書き込むことができるので、ライトデー
タとリードデータの値は不一致となる。したがって、ラ
イトデータとリードデータの不一致が検出された場合に
は、タイプ2またはタイプ3のどちらのDRAMバンク
が接続されているかを検出するために、次のようなステ
ップS28以降の処理が行われる。
On the other hand, a type 2 or type 3 D having the number of column address bits of 10 bits as expected for the DRAM bank actually connected to the RAS line to be checked.
In the case of the RAM bank, data can be normally written in the address 00010000H, so that the values of the write data and the read data do not match. Therefore, when a mismatch between the write data and the read data is detected, the following processing from step S28 is performed in order to detect which type 2 or type 3 DRAM bank is connected. .

【0131】すなわち、IRTルーチンは、今度は、そ
れらDRAMバンクの中でロウアドレスビット数が大き
いタイプ3のDRAMバンク(カラムアドレスCA=1
0ビット、ロウアドレスRA=11ビット)が接続され
ていると想定して、そのDRAMバンクに対してライト
・リード・コンペアテストを行う(ステップS28)。
That is, the IRT routine, in this case, is a type 3 DRAM bank having a large number of row address bits (column address CA = 1).
Assuming that 0 bit and row address RA = 11 bits) are connected, a write / read compare test is performed on the DRAM bank (step S28).

【0132】このライト・リード・コンペアテストで
は、ライトアドレス00400000Hのライトアクセ
スと、リードアドレス00000000Hのリードアク
セスとが行われ、その時のライトデータとリードデータ
の一致の有無が調べられる(ステップS29)。
In this write-read-compare test, a write access of write address 00400000H and a read access of read address 00000000H are performed, and it is checked whether the write data and the read data at that time match (step S29).

【0133】もし、検査対象RAS線に実際に接続され
ているDRAMバンクが想定した通りのタイプ3のDR
AMバンクであれば、アドレス00400000Hに正
常にデータを書き込むことができるので、ライトデータ
とリードデータの値は不一致となる。一方、検査対象R
AS線に実際に接続されているDRAMバンクがそのロ
ウアドレス数が10ビットのタイプ2のバンクであった
場合には、ライトデータとリードデータの値は一致す
る。これは、次の理由による。
If the DRAM bank actually connected to the RAS line to be inspected has the type 3 DR as expected.
In the case of the AM bank, the data can be normally written in the address 00400000H, so that the values of the write data and the read data do not match. On the other hand, inspection target R
If the DRAM bank actually connected to the AS line is a type 2 bank whose row address number is 10 bits, the values of the write data and the read data match. This is for the following reason.

【0134】すなわち、ステップS28ではタイプ3の
DRAMバンクに対応する設定が成されているので、ア
ドレス00400000Hライトアクセス時に出力され
る11ビットのロウアドレスはRA(MA22,……,
MA12)=10000000000であり、10ビッ
トのカラムアドレスCA(MA11,……,MA02)
=0000000000である。ロウアドレス数が10
ビットのタイプ2のDRAMバンクにおいては、11ビ
ットのロウアドレスRAの最上位ビットMA22の値
“1”は無視される。このため、タイプ2のバンクが接
続されている場合には、ライトアドレス0040000
0Hのライトアクセスによって、その先頭行におけるカ
ラムアドレスCA=0000000000で指定される
番地、すなわちアドレス00000000Hにデータが
書き込まれる。これにより、リードアドレス00000
000Hのリードアクセスで読み出されたリードデータ
がライトデータと一致する。
That is, since the setting corresponding to the type 3 DRAM bank is made in step S28, the 11-bit row address output at the time of write access to the address 00400000H is RA (MA22, ...,
MA12) = 10000000, and a 10-bit column address CA (MA11, ..., MA02)
= 0000000000. The number of row addresses is 10
In the bit type 2 DRAM bank, the value "1" of the most significant bit MA22 of the 11-bit row address RA is ignored. Therefore, when the type 2 bank is connected, the write address 0040000
By the write access of 0H, the data is written to the address specified by the column address CA = 0000000000000 in the first row, that is, the address 00000000H. As a result, the read address 00000
The read data read by the read access of 000H matches the write data.

【0135】したがって、ステップS29でライトデー
タとリードデータの不一致が検出された時は、検査対象
RAS線に接続されているDRAMバンクは想定した通
りのタイプ3のDRAMバンク(CA=10ビット、R
A=11ビット、メモリサイズ=8Mバイト)であると
判定され(ステップS30)、一方、ライトデータとリ
ードデータの一致が検出された場合には、検査対象RA
S線に接続されているDRAMバンクはロウアドレスビ
ット数が10ビットのタイプ2のDRAMバンク(CA
=10ビット、RA=10ビット、メモリサイズ=4M
バイト)であると判定される(ステップS31)。
Therefore, when a mismatch between the write data and the read data is detected in step S29, the DRAM bank connected to the RAS line to be inspected is the type 3 DRAM bank (CA = 10 bits, R
If it is determined that A = 11 bits and memory size = 8 Mbytes (step S30), and on the other hand that the match between the write data and the read data is detected, the inspection target RA
The DRAM bank connected to the S line is a type 2 DRAM bank (CA having 10 row address bits).
= 10 bits, RA = 10 bits, memory size = 4M
(Byte) is determined (step S31).

【0136】次に、図2で説明したRASデコーダ12
2、ロウアドレス/カラムアドレスマルチプレクサ12
3、およびページヒット判定回路126それぞれの具体
的な回路構成について説明する。
Next, the RAS decoder 12 described with reference to FIG.
2. Row address / column address multiplexer 12
3 and the page hit determination circuit 126 will be described in detail.

【0137】図13には、RASデコーダ122の具体
的な回路構成が示されている。RASデコーダ13は、
図示のように、RAS0線〜RAS5線にそれぞれ対応
する6個のRASデコード回路51〜56を含んでい
る。これらRASデコード回路51〜56は、それぞれ
DRAM論理アドレス(MA31:02)と対応するデ
コード条件との一致/不一致を調べ、一致した際に対応
するRAS線を所定のタイミングで付勢制御する。この
場合、実際には30ビットのDRAM論理アドレス(M
A31:02)全てのビット値を見る必要はなく、サポ
ートするDRAMバンクの種類、最大DRAM論理アド
レス空間などの条件から、MA26,MA25,MA2
4,MA23,MA22,MA21,飛んで、MA1
3,MA12,MA11の9ビットだけがデコードに使
用される。
FIG. 13 shows a specific circuit configuration of the RAS decoder 122. The RAS decoder 13
As shown, it includes six RAS decoding circuits 51 to 56 corresponding to the RAS0 line to the RAS5 line, respectively. Each of these RAS decode circuits 51 to 56 checks the match / mismatch between the DRAM logical address (MA31: 02) and the corresponding decode condition, and when they match, the corresponding RAS line is energized and controlled at a predetermined timing. In this case, the 30-bit DRAM logical address (M
A31: 02) It is not necessary to look at all bit values, and MA26, MA25, MA2 can be selected according to conditions such as the type of DRAM bank to be supported and the maximum DRAM logical address space.
4, MA23, MA22, MA21, fly, MA1
Only 9 bits of 3, MA12 and MA11 are used for decoding.

【0138】RASデコード回路51〜56はどれも同
じ回路構成であるので、ここでは、RASデコード回路
51の回路構成を代表して説明する。
Since the RAS decode circuits 51 to 56 have the same circuit structure, the circuit structure of the RAS decode circuit 51 will be described here as a representative.

【0139】RASデコード回路51は、RASセット
レジスタ61、RASマスクレジスタ62、9個の一致
/不一致検出回路71〜79、9個のマスク回路71〜
79、およびAND回路91から構成されている。
The RAS decode circuit 51 includes a RAS set register 61, a RAS mask register 62, nine match / mismatch detection circuits 71 to 79, and nine mask circuits 71 to 71.
79 and an AND circuit 91.

【0140】RASセットレジスタ61は、CPU11
によってリード/ライト可能なI/Oレジスタであり、
ここにはRAS0線のデコード条件を示すビット列がセ
ットされる。例えば、RAS0線のデコード条件が図5
のように決定された場合には、“00100X XX
1”がRAS0線のデコード条件としてRASセットレ
ジスタ61にセットされる。ここで、Xはデコード条件
に関係しない不定のビット値(Don´t Care)
を意味する。
The RAS set register 61 is used by the CPU 11
Is an I / O register that can be read / written by
A bit string indicating the decoding condition of the RAS0 line is set here. For example, the decoding condition of the RAS0 line is shown in FIG.
If it is decided as “00100X XX
1 "is set in the RAS set register 61 as the decoding condition of the RAS0 line. Here, X is an indefinite bit value (Don't Care) unrelated to the decoding condition.
Means

【0141】RASマスクレジスタ62は、CPU11
によってリード/ライト可能なI/Oレジスタであり、
ここにはRAS0線のデコード条件とDRAM論理アド
レスとの一致/不一致の判定結果をビット毎にマスクす
るか、しないかを指定するマスクデータ(“0”=マス
クする、“1”=マスクしない)がセットされる。ここ
で、マスクするというのは、デコード条件のビット列の
対応する1ビットの判定結果に関係なく、そのビットの
判定結果を常に一致したことにすることを意味する。し
たがって、RASセットレジスタ61に前述のようにデ
コード条件として“00100X XX1”がセットさ
れた場合には、RASマスクレジスタ62には、マスク
データ“111110 001”がセットされる。これ
により、デコード条件の“00100X XX1”の内
の“X”のビットをデコード条件から除外することがで
きる。
The RAS mask register 62 is used by the CPU 11
Is an I / O register that can be read / written by
Here, mask data that specifies whether or not the determination result of the match / mismatch between the decode condition of the RAS0 line and the DRAM logical address is masked for each bit (“0” = masked, “1” = not masked). Is set. Here, masking means that the determination result of the bit is always matched regardless of the determination result of the corresponding 1 bit of the bit string of the decoding condition. Therefore, when “00100X XX1” is set as the decoding condition in the RAS set register 61 as described above, the mask data “111110 001” is set in the RAS mask register 62. As a result, the "X" bit in the decoding condition "00100X XX1" can be excluded from the decoding condition.

【0142】一致/不一致検出回路71〜79は、それ
ぞれDRAM論理アドレスとデコード条件の対応するビ
ット同士の一致/不一致を検出する。これら一致/不一
致検出回路71〜79の各々は、排他的論理和ゲートか
ら実現する事ができる。9個のマスク回路71〜79
は、それぞれ対応する一致/不一致検出回路71〜79
の検出結果出力をマスクする。
The match / mismatch detection circuits 71 to 79 detect the match / mismatch between the corresponding bits of the DRAM logical address and the decoding condition, respectively. Each of these match / mismatch detection circuits 71 to 79 can be realized by an exclusive OR gate. Nine mask circuits 71 to 79
Are corresponding match / mismatch detection circuits 71 to 79, respectively.
The detection result output of is masked.

【0143】このように、RASデコーダ122は、1
本のRAS線当たり9ビットのデータサイズに相当する
データの一致/不一致を行うためのロジックだけで実現
する事ができる。
In this way, the RAS decoder 122 is
This can be realized only by the logic for matching / mismatching data corresponding to the data size of 9 bits per RAS line of the book.

【0144】次に、図14を参照して、ロウアドレス/
カラムアドレスマルチプレクサ123の具体的な回路構
成について説明する。
Next, referring to FIG. 14, row address /
A specific circuit configuration of the column address multiplexer 123 will be described.

【0145】ロウアドレス/カラムアドレスマルチプレ
クサ123は、図示のように、レジスタファイル20
1、パターンデコーダ202、ロウアドレスセレクタ2
03、ロウアドレス開始位置切り替え回路204〜20
7、およびロウアドレス/カラムアドレスセレクタ20
8から構成されている。
The row address / column address multiplexer 123, as shown in FIG.
1, pattern decoder 202, row address selector 2
03, row address start position switching circuits 204 to 20
7, and row / column address selector 20
It is composed of 8.

【0146】レジスタファイル201は、CPU11に
よってリード/ライト可能なI/Oレジスタ群であり、
ここにはRAS0〜RAS5線それぞれに対応する6つ
の制御パラメタがセットされる。各制御パラメタは、対
応するRAS線に接続されたDRAMバンクのロウアド
レス開始位置、つまりDRAM論理アドレスのどのbi
tをロウアドレスのLSBにするかを指定する。
The register file 201 is a group of I / O registers readable / writable by the CPU 11,
Six control parameters corresponding to the RAS0 to RAS5 lines are set here. Each control parameter is a row address start position of the DRAM bank connected to the corresponding RAS line, that is, which bi of the DRAM logical address.
Specifies whether t is the LSB of the row address.

【0147】ロウアドレス開始位置として使用される可
能性があるのは、サポートするDRAMの種類、および
ページインタリーブの条件から、DRAM論理アドレス
のMA11,MA12,MA13,MA14の4ビット
である。各制御パラメタは、これら4種類のロウアドレ
ス開始位置のいずれか1つを指定する4ビットデータか
ら構成される。制御パラメタ“0001”はMA11を
指定し、“0010”はMA12、“0011”はMA
13、“0100”はMA14を指定する。
Four bits MA11, MA12, MA13, MA14 of the DRAM logical address may be used as the row address start position, depending on the type of DRAM to be supported and the condition of page interleaving. Each control parameter is composed of 4-bit data designating one of these four types of row address start positions. The control parameter "0001" specifies MA11, "0010" is MA12, and "0011" is MA.
13, MA0 is designated as "0100".

【0148】レジスタファイル201にセットされてい
る6つの制御パラメタの1つは、パターンデコーダ20
2に読み出される。どの制御パラメタが読み出されるか
は、RASデコータ122のデコード結果出力によって
決定される。例えば、RASデコータ122によってR
AS0線が付勢される時は、RAS0線に対応する制御
パラメタがレジスタファイル201から読み出される。
One of the six control parameters set in the register file 201 is the pattern decoder 20.
2 is read. Which control parameter is read is determined by the decoding result output of the RAS decoder 122. For example, R by the RAS decoder 122
When the AS0 line is activated, the control parameter corresponding to the RAS0 line is read from the register file 201.

【0149】パターンデコーダ202は、レジスタファ
イル201から読み出された制御パラメタをデコード
し、そのデコード結果に従って、セレクタ203に4種
類のロウアドレスの1つを選択させるための選択信号を
発生する。
The pattern decoder 202 decodes the control parameter read from the register file 201, and generates a selection signal for causing the selector 203 to select one of four kinds of row addresses according to the decoding result.

【0150】ロウアドレス開始位置切り替え回路204
は、DRAM論理アドレスMA31:02)の中からM
A11をロウアドレス開始位置(LSB)とする合計1
1ビット(MA21,……,MA11)をロウアドレス
(RA10:0)として取り出す。同様に、ロウアドレ
ス開始位置切り替え回路205はMA12をLSBとす
る合計11ビット(MA22,……,MA12)を取り
出し、ロウアドレス開始位置切り替え回路206はMA
13をLSBとする合計11ビット(MA23,……,
MA13)を取り出し、ロウアドレス開始位置切り替え
回路207はMA14をLSBとする合計11ビット
(MA24,……,MA14)をロウアドレスとして取
り出す。
Row address start position switching circuit 204
Is M from the DRAM logical address MA31: 02).
1 with A11 as the row address start position (LSB)
One bit (MA21, ..., MA11) is taken out as a row address (RA10: 0). Similarly, the row address start position switching circuit 205 extracts a total of 11 bits (MA22, ..., MA12) with MA12 as the LSB, and the row address start position switching circuit 206 outputs MA.
A total of 11 bits with 13 as the LSB (MA23, ...,
MA13) is taken out, and the row address start position switching circuit 207 takes out a total of 11 bits (MA24, ..., MA14) with MA14 as the LSB as a row address.

【0151】これらロウアドレス開始位置切り替え回路
204〜207は、例えばバレルシフタなどによって構
成されている。
The row address start position switching circuits 204 to 207 are composed of, for example, barrel shifters.

【0152】ロウアドレスセレクタ203は、パターン
デコーダ202からの選択信号に従って、ロウアドレス
開始位置切り替え回路204〜207から出力される4
種類のロウアドレスの1つを選択して出力する。ロウア
ドレスセレクタ203によって選択されたロウアドレス
は、ロウアドレス/カラムアドレスセレクタ208に供
給される。また、このロウアドレス/カラムアドレスセ
レクタ208には、カラムアドレスも供給される。この
カラムアドレスとしては、DRAM論理アドレスの下位
11ビット(MA12,……MA02)が常に使用され
る。
The row address selector 203 outputs 4 from the row address start position switching circuits 204 to 207 according to the selection signal from the pattern decoder 202.
One of the row addresses of the types is selected and output. The row address selected by the row address selector 203 is supplied to the row address / column address selector 208. A column address is also supplied to the row address / column address selector 208. As the column address, the lower 11 bits (MA12, ... MA02) of the DRAM logical address are always used.

【0153】ロウアドレス/カラムアドレスセレクタ2
08は、図2のタイミング制御回路125からの制御信
号によって指定されるタイミングで、ロウアドレスとカ
ラムアドレスを選択的にメモリアドレスバス33上に出
力する。
Row address / column address selector 2
08 outputs the row address and the column address selectively onto the memory address bus 33 at the timing designated by the control signal from the timing control circuit 125 of FIG.

【0154】このロウアドレス/カラムアドレスマルチ
プレクサ123においては、RASデコーダ122のデ
コード動作と並行して、ロウアドレス開始位置切り替え
回路204〜207それぞれによるロウアドレス切り出
し動作が行われる。RASデコーダ122のデコード結
果が確定すると、その確定されたデコード結果によって
指定される付勢対象のRAS線に対応した1つの制御パ
ラメタがレジスタファイル201から読み出され、それ
がパターンデコーダ202に送られる。そして、そのパ
ターンデコーダ202によるデコード動作、およびロウ
アドレスセレクタ203のロウアドレス選択動作が制御
パラメタに従って実行され、これによってDRAMアク
セスに使用すべきロウアドレスが確定される。
In row address / column address multiplexer 123, row address cutout operations by row address start position switching circuits 204 to 207 are performed in parallel with the decoding operation of RAS decoder 122. When the decoding result of the RAS decoder 122 is confirmed, one control parameter corresponding to the RAS line to be energized designated by the confirmed decoding result is read from the register file 201 and sent to the pattern decoder 202. . Then, the decoding operation by the pattern decoder 202 and the row address selecting operation of the row address selector 203 are executed according to the control parameters, whereby the row address to be used for DRAM access is determined.

【0155】なお、ここでは、ロウアドレス開始位置切
り替え回路204〜207およびロウアドレスセレクタ
203によってロウアドレス(RA10:0)の11ビ
ット全てをRAS線に応じて切り替えるように説明した
が、実際は、全部のロウアドレスのビットを切り替える
必要はない。
Although it has been explained here that all 11 bits of the row address (RA10: 0) are switched according to the RAS line by the row address start position switching circuits 204 to 207 and the row address selector 203, in reality, all of them are switched. It is not necessary to switch the row address bits of.

【0156】すなわち、ロウアドレス開始位置がMA1
1,MA12,MA13,MA14のいずれの場合にお
いても、MA14〜MA19の6ビットは共通に使用さ
れるので、それらビットについては切り替え対象から除
外する事ができる。この場合のCPUアドレスとロウア
ドレスとの対応関係の一例を図15に示す。
That is, the row address start position is MA1.
In any case of 1, MA12, MA13, and MA14, the 6 bits of MA14 to MA19 are commonly used, and therefore these bits can be excluded from the switching target. An example of the correspondence between the CPU address and the row address in this case is shown in FIG.

【0157】図15においては、ロウアドレスの下位3
ビット(RA2〜RA0)と上位2ビット(RA10,
RA9)のみが切り替えの対象となっている。このよう
にすれば、CPUアドレスのMA14〜MA19の6ビ
ットをロウアドレスの中位6ビット(RA8〜RA3)
としてロウアドレス/カラムアドレスセレクタ208に
直接送ることができるので、ロウアドレス開始位置切り
替え回路204〜207およびロウアドレスセレクタ2
03はそれぞれ切り替え対象の5ビット分のハードウェ
ア構成だけで実現できる。
In FIG. 15, the lower 3 of the row address
Bits (RA2 to RA0) and upper 2 bits (RA10,
Only RA9) is the target of switching. By doing this, the 6 bits of MA14 to MA19 of the CPU address are set to the middle 6 bits of the row address (RA8 to RA3).
Can be directly sent to the row address / column address selector 208 as a row address start position switching circuit 204 to 207 and the row address selector 2.
03 can be realized only by the hardware configuration of 5 bits to be switched.

【0158】このように、図14のロウアドレス/カラ
ムアドレスマルチプレクサ123の回路構成は、必要と
する回路数を非常に少なくすることができる。しかし、
RASデコーダ122のデコード結果が確定されてから
DRAMアクセスに使用すべきロウアドレスが確定され
るまでには、3つの回路ブロックの動作(レジスタファ
イル201から使用する制御パラメタを選択して読み出
す動作、パターンデコーダによるデコード動作、および
ロウアドレスセレクタ203によるロウアドレス選択動
作)を順次行う必要がある。このため、ロウアドレス/
カラムアドレスマルチプレクサ123内で比較的大きな
ディレイが生じるという問題がある。
As described above, the circuit configuration of the row address / column address multiplexer 123 of FIG. 14 can significantly reduce the number of circuits required. But,
From the determination of the decoding result of the RAS decoder 122 to the determination of the row address to be used for DRAM access, the operation of the three circuit blocks (the operation of selecting and reading the control parameter to be used from the register file 201, the pattern) It is necessary to sequentially perform the decoding operation by the decoder and the row address selection operation by the row address selector 203). Therefore, the row address /
There is a problem that a relatively large delay occurs in the column address multiplexer 123.

【0159】図16には、ロウアドレス/カラムアドレ
スマルチプレクサ123の第2の回路構成例が示されて
いる。この図16の構成は、ロウアドレス/カラムアド
レスマルチプレクサ123内でのディレイを少なくする
ための改良が次のように成されている。
FIG. 16 shows a second circuit configuration example of the row address / column address multiplexer 123. The configuration of FIG. 16 is improved as follows to reduce the delay in the row address / column address multiplexer 123.

【0160】すなわち、この図16のロウアドレス/カ
ラムアドレスマルチプレクサ123においては、図14
のパターンデコーダ202およびロウアドレスセレクタ
203の代わりに、RAS0〜RAS5線それぞれに対
応する6個のパターンデコーダ202−1〜202−
6、および6個のロウアドレスセレクタ203−1〜2
03−6が設けられている。パターンデコーダ202−
1〜202−6は、それぞれレジスタファイル201の
RAS0制御パラメタ〜RAS5制御パラメタに従って
ロウアドレスセレクタ203−1〜203−6のロウア
ドレス選択動作を制御する。
That is, in the row address / column address multiplexer 123 of FIG.
Instead of the pattern decoder 202 and the row address selector 203, the six pattern decoders 202-1 to 202-corresponding to the lines RAS0 to RAS5, respectively.
6 and 6 row address selectors 203-1 and 203-1
03-6 is provided. Pattern decoder 202-
1 to 202-6 control the row address selection operation of the row address selectors 203-1 to 203-6 according to the RAS0 control parameter to the RAS5 control parameter of the register file 201, respectively.

【0161】また、それらロウアドレスセレクタ203
−1〜203−6の次段には、それらロウアドレスセレ
クタ203−1〜203−6によって得られた6種類の
ロウアドレス(RAS0ロウアドレス〜RAS5ロウア
ドレス)の1つをRASデコーダ122のデコード結果
に応じて選択するロウアドレスセレクタ209が設けら
れている。
Further, the row address selector 203
-1 to 203-6, the RAS decoder 122 decodes one of six types of row addresses (RAS0 row address to RAS5 row address) obtained by the row address selectors 203-1 to 203-6. A row address selector 209 for selecting according to the result is provided.

【0162】この回路構成においては、RASデコーダ
122のデコード動作と並行して、ロウアドレス開始位
置切り替え回路204〜207それぞれによるロウアド
レス切り出し動作と、パターンデコーダ202−1〜2
02−6およびロウアドレスセレクタ203−1〜20
3−6によるロウアドレス選択動作とが行われる。これ
により、RASデコーダ122のデコード結果の確定を
待たずに、RAS0〜RAS5線にそれぞれ対応した6
種類のロウアドレス(RAS0ロウアドレス〜RAS5
ロウアドレス)を生成することができる。
In this circuit configuration, row address cutout operations by the row address start position switching circuits 204 to 207 and pattern decoders 202-1 to 202-2 are performed in parallel with the decoding operation of the RAS decoder 122.
02-6 and row address selectors 203-1 to 20-20
The row address selection operation by 3-6 is performed. As a result, the 6 lines corresponding to the RAS0 to RAS5 lines can be provided without waiting for the decoding result of the RAS decoder 122 to be determined.
Type of row address (RAS0 row address to RAS5
Row address) can be generated.

【0163】RASデコーダ122のデコード結果が確
定すると、その確定されたデコード結果によって指定さ
れる付勢対象のRAS線に対応したロウアドレスがロウ
アドレスセレクタ209によって選択される。
When the decoding result of the RAS decoder 122 is confirmed, the row address selector 209 selects the row address corresponding to the RAS line to be energized which is designated by the confirmed decoding result.

【0164】したがって、RASデコーダ122のデコ
ード結果が確定されてからDRAMアクセスに使用すべ
きロウアドレスが確定されるまでに必要となる回路動作
は、最終段のアドレスセレクタ209によるアドレス選
択動作だけとなり、内部ディレイが大幅に低減される。
Therefore, the circuit operation required from the determination of the decoding result of the RAS decoder 122 to the determination of the row address to be used for DRAM access is only the address selection operation by the address selector 209 at the final stage, The internal delay is greatly reduced.

【0165】なお、この図16の構成に於いても、図1
4の場合と同様に、全部のロウアドレスのビットを切り
替える必要はない。
In the structure of FIG. 16 as well, FIG.
As in the case of 4, it is not necessary to switch the bits of all row addresses.

【0166】図17には、図2のページヒット判定回路
126の具体的な回路構成が示されている。
FIG. 17 shows a specific circuit configuration of the page hit determination circuit 126 of FIG.

【0167】このページヒット判定回路126には、図
示のように、レジスタファイル301、ページヒット判
定用CPUアドレスレジスタ302、一致判定回路30
3、マスク回路304、および一致判定マスク位置レジ
スタ305が設けられている。
The page hit determination circuit 126 includes a register file 301, a page hit determination CPU address register 302, and a match determination circuit 30 as shown in the figure.
3, a mask circuit 304, and a match determination mask position register 305 are provided.

【0168】レジスタファイル301は、CPU11よ
ってリード/ライト可能なI/Oレジスタであり、ここ
にはページヒット判定のために使用されるCPUアドレ
スとの一致条件をマスクするか、しないかを指定するマ
スクデータ(“0”=マスクする、“1”=マスクしな
い)がRAS0〜RAS5線それぞれに対応する制御パ
ラメタとしてセットされる。
The register file 301 is an I / O register readable / writable by the CPU 11, and specifies whether or not the matching condition with the CPU address used for page hit determination is masked or not. Mask data (“0” = masked, “1” = not masked) is set as a control parameter corresponding to each of the RAS0 to RAS5 lines.

【0169】すなわち、ページヒット判定では、CPU
アドレス(A31:02)の中で、ページ内アドレスを
除外した残りのアドレス、つまり、カラムアドレスに相
当する部分を除いた、ロウアドレス(ページアドレス)
およびRASデコード用アドレスが対象となる。カラム
アドレスに相当する部分はページヒット判定に関与しな
いので、そのカラムアドレスとして使用されているビッ
トそれぞれについての判定結果はマスクデータによって
マスクする必要がある。ここで、マスクするというの
は、該当するビットの判定結果を常に一致したことにす
ることを意味する。
That is, in page hit determination, the CPU
Of the addresses (A31: 02), the remaining addresses excluding the in-page address, that is, the row address (page address) excluding the portion corresponding to the column address
And the RAS decoding address is the target. Since the part corresponding to the column address does not participate in page hit judgment, it is necessary to mask the judgment result for each bit used as the column address with mask data. Here, masking means that the determination results of the corresponding bits are always matched.

【0170】実際には、各RAS線に対応するマスクデ
ータは、カラムアドレスの全ビットではなく、A12,
A11,A10についてそれぞれマスクするか、しない
かを示す3ビットデータから構成されている。これは、
一致判定回路303が、DRAMバンクの種類と関係な
く常にカラムアドレスとして使用されるA10よりも下
位のビットについては一致判定から除外し、A10以降
の上位のビットだけを一致判定の対象とするように構成
されており、また、A12,A11,A10の3ビット
それぞれは、DRAMバンクの種類によってカラムアド
レスの一部として使用されるか否かが異なるからであ
る。
Actually, the mask data corresponding to each RAS line is not all bits of the column address, but A12,
Each of A11 and A10 is composed of 3-bit data indicating whether to mask or not. this is,
The match determination circuit 303 excludes bits lower than A10, which are always used as column addresses, regardless of the type of DRAM bank, from the match determination, and sets only higher bits after A10 as the target of the match determination. This is because each of the three bits A12, A11, and A10 is configured to be used as a part of the column address or not depending on the type of DRAM bank.

【0171】例えば、RAS0線にタイプ1のDRAM
バンク(カラムアドレスビット数=9ビット)が接続さ
れている場合には、A12,A11,A10の3ビット
の中でA10だけがカラムアドレスの一部として使用さ
れる。この時は、RAS0線に対応するマスクデータ
“110”がレジスタファイル301にセットされる。
For example, a DRAM of type 1 on the RAS0 line
When a bank (the number of column address bits = 9 bits) is connected, only A10 among the three bits A12, A11, and A10 is used as a part of the column address. At this time, the mask data “110” corresponding to the RAS0 line is set in the register file 301.

【0172】レジスタファイル301にセットされてい
る6つのマスクデータのうちの1つは、レジスタファイ
ル301から読み出されて一致判定マスク位置レジスタ
305にセットされる。どのマスクデータが読み出され
るかは、RASデコータ122のデコード結果出力によ
って決定される。例えば、RASデコータ122によっ
てRAS0線が付勢される時は、RAS0線に対応する
マスクデータがレジスタファイル301から読み出され
る。
One of the six mask data set in the register file 301 is read from the register file 301 and set in the match determination mask position register 305. Which mask data is read is determined by the decoding result output of the RAS decoder 122. For example, when the RAS 0 line is energized by the RAS decoder 122, the mask data corresponding to the RAS 0 line is read from the register file 301.

【0173】ページヒット判定用CPUアドレスレジス
タ302には、前回のメモリアクセス時のCPUアドレ
ス(A31:02)の内のA26〜A11の17ビット
がページヒット判定用CPUアドレスとして保持され
る。このページヒット判定用CPUアドレスレジスタ3
02の内容は、ページヒットせず、バンクミスまたはペ
ージミスが発生した時に、その時のメモリアクセスで使
用されているCPUアドレス(A31:02)に従って
更新される。すなわち、バンクミスまたはページミスが
発生すると、タイミング制御回路125からレジスタ更
新信号が発生される。このレジスタ更新信号に応答し
て、その時にCPUアドレスバス上に出力されているC
PUアドレス(A26〜A11)がページヒット判定用
CPUアドレスレジスタ302にラッチされる。これに
よって、ページヒット判定用CPUアドレスレジスタ3
02の内容は、バンクミスまたはページミスが発生した
メモリサイクル時のCPUアドレスに変更される。
The page hit determination CPU address register 302 holds 17 bits A26 to A11 of the CPU address (A31: 02) at the time of the previous memory access as the page hit determination CPU address. This page hit determination CPU address register 3
The contents of 02 are updated according to the CPU address (A31: 02) used in the memory access at that time when a bank miss or page miss occurs without a page hit. That is, when a bank miss or page miss occurs, the timing control circuit 125 generates a register update signal. In response to this register update signal, the C output on the CPU address bus at that time
The PU addresses (A26 to A11) are latched in the page hit determination CPU address register 302. As a result, the page hit determination CPU address register 3
The content of 02 is changed to the CPU address at the time of the memory cycle in which the bank miss or page miss occurs.

【0174】一致判定回路303は、今回のメモリアク
セス時のCPUアドレス(A26〜A11)とページヒ
ット判定用CPUアドレスレジスタ302に保持されて
いるCPUアドレス(A26〜A11)との一致/不一
致をビット毎に検出し、A26〜A11それぞれの検出
結果を示す17ビットデータを出力する。
The coincidence determination circuit 303 determines whether the CPU address (A26 to A11) at the time of this memory access and the CPU address (A26 to A11) held in the page hit determination CPU address register 302 are coincident / non-coincident. The detection is performed every time, and 17-bit data indicating the detection result of each of A26 to A11 is output.

【0175】マスク回路304は、A26〜A11それ
ぞれの検出結果の内のA12,A11,A10の検出結
果出力を、一致判定マスク位置レジスタ305のマスク
データに従ってマスクし、マスク後の検出結果出力が全
て一致を示す時にページヒット信号HITを発生する。
The mask circuit 304 masks the detection result outputs of A12, A11, and A10 among the detection results of A26 to A11 according to the mask data of the match determination mask position register 305, and outputs all the detection results after masking. A page hit signal HIT is generated when a match is shown.

【0176】一致判定マスク位置レジスタ305には、
付勢対象のRAS線に対応するマスクデータがセットさ
れる。この一致判定マスク位置レジスタ305の内容
は、ページヒットせず、バンクミスまたはページミスが
発生した時に、その時にRASデコーダ122によって
付勢されるRAS線に対応するマスクデータに更新され
る。すなわち、バンクミスまたはページミスが発生する
と、タイミング制御回路125からレジスタ更新信号が
発生される。このレジスタ更新信号に応答して、その時
にRASデコーダ122によって選択されているレジス
タファイル301内のマスクデータが一致判定マスク位
置レジスタ305にラッチされる。これによって、一致
判定マスク位置レジスタ305の内容は、バンクミスま
たはページミスが発生したメモリサイクル時に付勢され
るRAS線に対応したマスクデータに変更される。
The match determination mask position register 305 stores
Mask data corresponding to the RAS line to be energized is set. The contents of the match determination mask position register 305 are updated to the mask data corresponding to the RAS line activated by the RAS decoder 122 when a bank miss or page miss occurs without a page hit. That is, when a bank miss or page miss occurs, the timing control circuit 125 generates a register update signal. In response to the register update signal, the mask data in the register file 301 selected by the RAS decoder 122 at that time is latched in the match determination mask position register 305. As a result, the contents of the match determination mask position register 305 are changed to the mask data corresponding to the RAS line activated at the memory cycle in which the bank miss or page miss occurs.

【0177】以上のように、この実施例のシステムにお
いては、複数のDRAMバンクそれぞれのメモリサイズ
がリード・ライト・コンペアテストによって検出され、
それらDRAMバンクの物理的な装着位置とは関係な
く、メモリサイズの大小関係に従ってそれらDRAMバ
ンクのメモリアドレス空間への配置順が決定される。し
たがって、どのようなタイプの増設メモリがどのような
順番で装着されたとしても、最適なメモリ配置に自動的
に再設定し直され、システム内のDRAMバンクは常に
そのメモリサイズの大きいもの順にDRAM論理アドレ
ス空間の若い方から配置される。
As described above, in the system of this embodiment, the memory size of each of the plurality of DRAM banks is detected by the read / write compare test.
The arrangement order of the DRAM banks in the memory address space is determined according to the size relation of the memory size regardless of the physical mounting positions of the DRAM banks. Therefore, no matter what type of additional memory is installed in any order, it is automatically reset to the optimum memory layout, and the DRAM banks in the system are always arranged in descending order of memory size. It is allocated from the youngest of the logical address space.

【0178】このようなメモリ配置下においては、RA
Sデコーダ122はCPUからのメモリアドレス値とデ
コード条件との一致/不一致をRAS毎に検出するだけ
で済む。よって、従来に比し、RASデコーダ122の
ハードウェア構成を大幅に簡単化できるので、RASデ
コーダ内のディレイが小さくなり、メモリアクセス速度
の高速化を実現できる。また、この構成においては、2
つの異なるRAS線のデコード条件を同一値に設定すれ
ば2つのRAS線を同時に付勢できめので、アクセスデ
ータ幅を2倍に切り替えるといった応用も可能となる。
Under such a memory arrangement, RA
The S decoder 122 only needs to detect the match / mismatch between the memory address value from the CPU and the decode condition for each RAS. Therefore, the hardware configuration of the RAS decoder 122 can be greatly simplified as compared with the related art, so that the delay in the RAS decoder can be reduced and the memory access speed can be increased. Also, in this configuration, 2
If the decoding conditions of two different RAS lines are set to the same value, the two RAS lines can be energized at the same time, so that the application such as doubling the access data width is possible.

【0179】なお、ページ内アドレスの一部をデコード
条件として使用すれば、ワードインタリーブを実現する
こともできる。
Note that word interleaving can be realized by using a part of the page address as a decoding condition.

【0180】[0180]

【発明の効果】以上説明したように、この発明によれ
ば、システム内のDRAMバンクをそれらのメモリサイ
ズに応じてメモリアドレス空間に最適配置することによ
ってRASデコーダのデコード条件の簡単化を図ること
が可能となる。このため、RASデコーダは、CPUか
らのメモリアドレス値とデコード条件との一致/不一致
をRAS線毎に検出するだけの構成で済み、従来に比
し、そのハードウェア構成を大幅に簡単化できる。
As described above, according to the present invention, it is possible to simplify the decoding conditions of the RAS decoder by optimally arranging the DRAM banks in the system in the memory address space according to their memory size. Is possible. Therefore, the RAS decoder only needs to detect the match / mismatch between the memory address value from the CPU and the decode condition for each RAS line, and the hardware structure thereof can be greatly simplified as compared with the conventional one.

【0181】また、このようなRASデコーダの構成を
採用すると、そのRASデコーダに設定するデコード条
件を替えるだけで容易にページインタリーブアーキテク
チャを実現することが可能となる。
When such a RAS decoder configuration is adopted, it is possible to easily realize a page interleave architecture simply by changing the decoding condition set in the RAS decoder.

【0182】よって、RASデコーダの簡単化、および
インタリーブアーキテクチャの有効利用を図ることがで
き、メモリアクセス速度の高速化を実現できる。
Therefore, the RAS decoder can be simplified and the interleave architecture can be effectively used, and the memory access speed can be increased.

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

【図1】この発明の一実施例に係るコンピュータシステ
ムの構成を示すブロック図。
FIG. 1 is a block diagram showing the configuration of a computer system according to an embodiment of the present invention.

【図2】同実施例のシステムに設けられているシステム
コントローラ内のメモリ制御ロジックを示すブロック
図。
FIG. 2 is a block diagram showing a memory control logic in a system controller provided in the system of the embodiment.

【図3】図2のメモリ制御ロジックに含まれるアドレス
変換回路によって実行されるCPUメモリアドレス空間
からDRAM論理アドレス空間への変換動作の示す図。
FIG. 3 is a diagram showing a conversion operation from a CPU memory address space to a DRAM logical address space, which is executed by an address conversion circuit included in the memory control logic of FIG.

【図4】同実施例のシステムに設けられている複数のD
RAMバンクがDRAM論理アドレス空間にメモリサイ
ズ順に再配置された状態を表すDRAMメモリマップを
示す図。
FIG. 4 shows a plurality of Ds provided in the system of the embodiment.
The figure which shows the DRAM memory map showing the state where the RAM bank was rearranged in the DRAM logical address space in order of memory size.

【図5】同実施例のシステムに設けられている複数のD
RAMバンクに接続されるRAS線それぞれのデコード
条件を示す図。
FIG. 5 shows a plurality of Ds provided in the system of the embodiment.
The figure which shows the decoding condition of each RAS line connected to a RAM bank.

【図6】同実施例のシステムでページインタリーブアー
キテクチャを実現する場合に採用されるRAS線それぞ
れのデコード条件を示す図。
FIG. 6 is a diagram showing decoding conditions of each RAS line adopted when realizing a page interleave architecture in the system of the embodiment.

【図7】同実施例のシステムのパワーオン時にIRTル
ーチンによって実行されるメモリ制御ロジックのための
初期設定処理の手順を示すフローチャート。
FIG. 7 is an exemplary flowchart showing the procedure of an initialization process for the memory control logic executed by the IRT routine when the system of the embodiment is powered on.

【図8】同実施例のシステムでサポートされるDRAM
バンクの種類の一例を示す図。
FIG. 8 is a DRAM supported by the system of the embodiment.
The figure which shows an example of the kind of bank.

【図9】同実施例のシステムのシステムボード上に標準
実装されたシステムメモリのメモリ構成の一例を示す
図。
FIG. 9 is a diagram showing an example of a memory configuration of a system memory standardly mounted on the system board of the system of the embodiment.

【図10】同実施例のシステムに設けられた拡張メモリ
スロットに装着される増設メモリのメモリ構成の一例を
示す図。
FIG. 10 is a diagram showing an example of a memory configuration of an extension memory installed in an extension memory slot provided in the system of the embodiment.

【図11】同実施例のシステムに設けられた拡張メモリ
スロットに装着される増設メモリの他のメモリ構成の一
例を示す図。
FIG. 11 is a diagram showing an example of another memory configuration of the additional memory mounted in the expansion memory slot provided in the system of the embodiment.

【図12】図7のメモリ制御ロジックの初期設定処理に
おいて実行される各DRAMバンクのメモリサイズ検出
処理の手順を示すフローチャート。
12 is a flowchart showing the procedure of a memory size detection process for each DRAM bank, which is executed in the initialization process of the memory control logic of FIG. 7.

【図13】図2のメモリ制御ロジックに含まれるRAS
デコーダの具体的構成の一例を示す回路図。
FIG. 13 is a RAS included in the memory control logic of FIG.
FIG. 6 is a circuit diagram showing an example of a specific configuration of a decoder.

【図14】図2のメモリ制御ロジックに含まれるロウア
ドレス/カラムアドレスマルチプレクサの具体的構成の
一例を示す回路図。
14 is a circuit diagram showing an example of a specific configuration of a row address / column address multiplexer included in the memory control logic of FIG.

【図15】図14のロウアドレス/カラムアドレスマル
チプレクサのロウアドレス切り替え動作を説明するため
の図。
15 is a diagram for explaining a row address switching operation of the row address / column address multiplexer in FIG.

【図16】図2のメモリ制御ロジックに含まれるロウア
ドレス/カラムアドレスマルチプレクサの具体的構成の
他の例を示す回路図。
16 is a circuit diagram showing another example of a specific configuration of a row address / column address multiplexer included in the memory control logic of FIG.

【図17】図2のメモリ制御ロジックに含まれるページ
ヒット判定回路の具体的構成の一例を示す回路図。
FIG. 17 is a circuit diagram showing an example of a specific configuration of a page hit determination circuit included in the memory control logic of FIG.

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

11…CPU、12…システムコントローラ、13…シ
ステムメモリ、21,22…拡張メモリスロット、31
…CPUローカルバス、33…メモリアドレスバス、4
1,42…増設メモリ、120…メモリ制御ロジック、
121…アドレス変換回路、122…RASデコーダ、
123…ロウアドレス/カラムアドレスマルチプレク
サ、124…CAS発生回路、125…タイミング制御
回路、126…ページヒット判定回路、51〜56…R
ASデコード回路、71〜79…一致検出回路、81〜
89…マスク回路、91…AND回路、201,301
…レジスタファイル、202…パターンデコーダ、20
3…ロウアドレスセレクタ、204〜207…ロウアド
レス開始位置切り替え回路、208…ロウアドレス/カ
ラムアドレスセレクタ、302…ページヒット判定用C
PUアドレスレジスタ、303…一致判定回路、304
…マスク回路、305…一致判定マスク位置レジスタ。
11 ... CPU, 12 ... System controller, 13 ... System memory, 21, 22 ... Expansion memory slot, 31
... CPU local bus, 33 ... Memory address bus, 4
1, 42 ... Expansion memory, 120 ... Memory control logic,
121 ... Address conversion circuit, 122 ... RAS decoder,
123 ... Row address / column address multiplexer, 124 ... CAS generation circuit, 125 ... Timing control circuit, 126 ... Page hit determination circuit, 51-56 ... R
AS decode circuit, 71 to 79 ... Match detection circuit, 81 to
89 ... Mask circuit, 91 ... AND circuit, 201, 301
... register file, 202 ... pattern decoder, 20
3 ... Row address selector, 204 to 207 ... Row address start position switching circuit, 208 ... Row address / column address selector, 302 ... Page hit determination C
PU address register, 303 ... Match determination circuit, 304
... mask circuit, 305 ... match determination mask position register.

Claims (10)

【特許請求の範囲】[Claims] 【請求項1】 複数のアクセス制御信号がそれぞれ割り
当てられ、互いに独立してアクセス可能な複数のメモリ
バンクと、 前記複数のアクセス制御信号にそれぞれ対応する複数の
デコード条件が設定され、それらデコード条件とCPU
からのメモリアドレスとの一致の有無を検出し、一致し
たデコード条件に対応するアクセス制御信号線を付勢し
てメモリバンクを選択するアドレスデコーダと、 前記複数のメモリバンクそれぞれのメモリサイズを検出
する手段と、 メモリサイズの大きいバンクほどCPUのメモリアドレ
ス空間の若い方に配置されるように前記複数のメモリバ
ンクをメモリサイズ順に前記メモリアドレス空間に再配
置し、このメモリ配置に従って前記複数のメモリバンク
それぞれに割り当てるべきメモリアドレス範囲を決定す
るメモリ再配置手段と、 前記メモリバンク毎にそのメモリバンクに対応するメモ
リアドレス範囲に属する全てのメモリアドレス値それぞ
れを示す2値データにのみ共通に存在するビット列を検
出し、その共通ビット列を前記各アクセス制御信号線の
デコード条件として前記アドレスデコーダに設定する手
段とを具備することを特徴とするコンピュータシステ
ム。
1. A plurality of memory banks to which a plurality of access control signals are respectively assigned and which can be accessed independently of each other, and a plurality of decoding conditions respectively corresponding to the plurality of access control signals are set. CPU
An address decoder that detects the presence or absence of a match with a memory address from the memory cell and activates an access control signal line corresponding to the matched decoding condition to select a memory bank; and a memory size of each of the plurality of memory banks. Means, and the plurality of memory banks are rearranged in the memory address space in the order of the memory size so that the larger the memory size is, the smaller the memory address space of the CPU is. A memory rearrangement unit that determines a memory address range to be assigned to each, and a bit string that commonly exists only in binary data indicating each memory address value belonging to the memory address range corresponding to the memory bank for each memory bank Is detected and the common bit string is Computer system characterized by comprising means for setting said address decoder as decoding condition of the control signal line.
【請求項2】 前記アドレスデコーダは、 前記複数のアクセス制御信号線それぞれに対応する複数
のデコード条件を示す複数のビット列が設定されるレジ
スタ群と、 前記複数のアクセス制御信号線に対応してそれぞれ設け
られた複数のデコード回路とを有し、 各デコード回路は、それに対応するアクセス制御信号線
のデコード条件を示すビット列と前記CPUからのメモ
リアドレスとの一致の有無を検出し、一致した際にアク
セス制御信号線を付勢することを特徴とするコンピュー
タシステム。
2. The address decoder includes a register group in which a plurality of bit strings indicating a plurality of decoding conditions corresponding to the plurality of access control signal lines are set, and a group of registers corresponding to the plurality of access control signal lines, respectively. A plurality of decode circuits provided, each decode circuit detects whether or not there is a match between the bit string indicating the decode condition of the corresponding access control signal line and the memory address from the CPU, and when they match, A computer system characterized by energizing an access control signal line.
【請求項3】 前記複数のメモリバンクのメモリ配置に
従って、ページインタリーブ可能な2以上のメモリバン
クの組み合わせを決定する手段と、 その組み合わせに属するメモリバンクがページ単位で交
互にアクセスされるように、それらメモリバンクそれぞ
れに対応するアクセス制御信号線のデコード条件を、そ
れらメモリバンク全体のアドレス範囲に共通に存在する
ビット列と、各メモリバンクのページ内アドレスとペー
ジ指定アドレスとの間の所定ビット列とに従って変更す
る手段とをさらに具備することを特徴とする請求項1記
載のコンピュータシステム。
3. Means for determining a combination of two or more memory banks capable of page interleaving according to a memory arrangement of the plurality of memory banks, and memory banks belonging to the combination are alternately accessed in page units. The decoding conditions of the access control signal lines corresponding to each of the memory banks are set according to a bit string commonly existing in the address range of all the memory banks and a predetermined bit string between the in-page address of each memory bank and the page designated address. The computer system according to claim 1, further comprising a changing unit.
【請求項4】 前記各メモリバンクは複数のDRAMチ
ップから構成されたDRAMバンクであり、 前記各アクセス制御信号線は、前記DRAMバンクのD
RAMチップに共通接続されるロウアドレスストローブ
信号線であることを特徴とする請求項1記載のコンピュ
ータシステム。
4. Each of the memory banks is a DRAM bank composed of a plurality of DRAM chips, and each of the access control signal lines is D of the DRAM bank.
2. The computer system according to claim 1, which is a row address strobe signal line commonly connected to a RAM chip.
【請求項5】 前記メモリサイズ検出手段は、 DRAMバンク毎にそのカラムアドレスサイズおよびロ
ウアドレスサイズの少なくとも一方を検出し、その検出
したアドレスサイズに基づいて各DRAMバンクのメモ
リサイズを決定するアドレスサイズ検出手段を含むこと
を特徴とする請求項4記載のコンピュータシステム。
5. The memory size detection means detects at least one of a column address size and a row address size for each DRAM bank, and determines the memory size of each DRAM bank based on the detected address size. The computer system according to claim 4, further comprising detection means.
【請求項6】 前記CPUからのメモリアドレスをアク
セス対象のDRAMバンクに対応するロウアドレスおよ
びカラムアドレスに分解して出力するアドレス出力手段
をさらに具備し、 このアドレス出力手段は、 前記メモリアドレスからロウアドレスを切り出すための
切り出し開始位置を前記RAS信号線毎に指定する複数
のパラメタ値がセットされるレジスタ群と、 前記アドレスデコーダによって付勢されたロウアドレス
ストローブ信号線に応じて前記レジスタ群から1つのパ
ラメタ値を選択し、その選択されたパラメタ値に従って
前記メモリアドレスからロウアドレスを切り出す手段と
を含むことを特徴とする請求項4記載のコンピュータシ
ステム。
6. The apparatus further comprises address output means for decomposing a memory address from the CPU into a row address and a column address corresponding to a DRAM bank to be accessed and outputting the row address and the column address. A register group in which a plurality of parameter values designating a cutout start position for cutting out an address for each RAS signal line is set, and one of the register groups is set in accordance with a row address strobe signal line energized by the address decoder. 5. The computer system according to claim 4, further comprising means for selecting one parameter value and cutting out a row address from the memory address according to the selected parameter value.
【請求項7】 前記CPUからのメモリアドレスをアク
セス対象のDRAMバンクに対応するロウアドレスおよ
びカラムアドレスに分解して出力するアドレス出力手段
をさらに具備し、 このアドレス出力手段は、 前記メモリアドレスからロウアドレスを切り出すための
切り出し開始位置を前記RAS信号線毎に指定する複数
のパラメタ値がセットされるレジスタ群と、 このレジスタ群にセットされた複数のパラメタ値に応じ
て、前記メモリアドレスからロウアドレスをそれぞれ切
り出す複数のロウアドレス切り出し手段と、 これら複数のロウアドレス切り出し手段の後段に接続さ
れ、前記アドレスデコーダによって付勢されたロウアド
レスストローブ信号線に応じて前記複数のロウアドレス
切り出し手段の出力の1つを選択する手段とを含むこと
を特徴とする請求項4記載のコンピュータシステム。
7. The memory device further comprises address output means for decomposing a memory address from the CPU into a row address and a column address corresponding to a DRAM bank to be accessed and outputting the row address and the column address. A register group in which a plurality of parameter values that specify the cutout starting position for cutting out an address for each RAS signal line is set, and a row address from the memory address according to the plurality of parameter values set in the register group And a plurality of row address cutting means for cutting out each of the row address cutting means, and outputs of the plurality of row address cutting means according to the row address strobe signal line energized by the address decoder. And means for selecting one The computer system of claim 4, wherein a.
【請求項8】 前記CPUのメモリアドレス空間には前
記複数のDRAMバンク以外のメモリを配置するための
予約領域が確保されており、 前記アドレスデコーダの前段に設けられ、前記予約領域
の直前および直後のDRAMバンク間でそれらに割り当
てられるメモリアドレスが連続されるように、前記CP
Uのメモリマップに応じて、前記CPUからのメモリア
ドレスをDRAMバンク専用のDRAM論理アドレスに
変換するアドレス変換手段をさらに具備し、 前記アドレスデコーダは、前記アドレス変換手段によっ
て変換されたDRAM論理アドレスと前記各デコード条
件との一致の有無を検出することを特徴とする請求項4
記載のコンピュータシステム。
8. A reserved area for arranging a memory other than the plurality of DRAM banks is secured in a memory address space of the CPU, the reserved area being provided in a front stage of the address decoder and immediately before and after the reserved area. Of the CP so that the memory addresses assigned to them are contiguous among the DRAM banks of
It further comprises address conversion means for converting a memory address from the CPU into a DRAM logical address dedicated to a DRAM bank according to the memory map of U, and the address decoder stores the DRAM logical address converted by the address conversion means. 5. The presence or absence of a match with each of the decoding conditions is detected.
The described computer system.
【請求項9】 前回のメモリアクセス時におけるCPU
からのメモリアドレスを保持し、そのメモリアドレスと
次回のメモリアクセス時におけるCPUからのメモリア
ドレスとを比較し、その比較結果に応じてページヒット
の有無を判定するページヒット判定手段をさらに具備す
ることを特徴とする請求項4記載のコンピュータシステ
ム。
9. A CPU at the time of the last memory access.
Further comprising a page hit determination means for holding the memory address from the CPU, comparing the memory address with the memory address from the CPU at the next memory access, and determining the presence or absence of a page hit according to the comparison result. The computer system according to claim 4, characterized in that:
【請求項10】 システムボード上に実装され、第1の
複数のロウアドレスストローブ信号線にそれぞれ接続さ
れる1以上のDRAMバンクから構成される内部メモリ
と、 拡張メモリコネクタに着脱実在に装着され、前記内部メ
モリと異なる別の第2の複数のロウアドレスストローブ
信号線にそれぞれ接続される1以上のDRAMバンクか
ら構成される増設メモリと、 前記第1および第2の複数のアクセス制御信号にそれぞ
れ対応する複数のデコード条件が設定され、それらデコ
ード条件とCPUからのメモリアドレスとの一致の有無
を検出し、一致したデコード条件に対応するロウアドレ
スストローブ信号線を付勢して前記内部メモリおよび増
設メモリに含まれる1つのDRAMバンクを選択するア
ドレスデコーダと、 システム電源の投入に応答して、前記アドレスデコーダ
を初期設定する初期設定手段とを具備し、 この初期設定手段は、 前記内部メモリおよび増設メモリに含まれるDRAMバ
ンクそれぞれのメモリサイズを検出する手段と、 メモリサイズの大きいバンクほどCPUのメモリアドレ
ス空間の若い方に配置されるように前記複数のDRAM
バンクをメモリサイズ順に前記メモリアドレス空間に再
配置し、このメモリ配置に従って前記複数のDRAMバ
ンクそれぞれに割り当てるべきメモリアドレス範囲を決
定するメモリ再配置手段と、 前記DRAM毎にそのDRAMバンクに対応するメモリ
アドレス範囲に属する全てのメモリアドレス値それぞれ
を示す2値データにのみ共通に存在するビット列を検出
し、その共通ビット列を前記各ロウアドレストローブ信
号線のデコード条件として前記アドレスデコーダに設定
する手段とを含むことを特徴とするコンピュータシステ
ム。
10. An internal memory, which is mounted on a system board and is composed of one or more DRAM banks respectively connected to a first plurality of row address strobe signal lines, and is detachably mounted on an extended memory connector, An additional memory composed of one or more DRAM banks respectively connected to a second plurality of row address strobe signal lines different from the internal memory, and respectively corresponding to the first and second plurality of access control signals. A plurality of decode conditions are set, the presence or absence of a match between the decode conditions and the memory address from the CPU is detected, and the row address strobe signal line corresponding to the matched decode conditions is activated to activate the internal memory and the additional memory. Address decoder for selecting one DRAM bank included in the system and system power-on In response to, the initial setting means for initializing the address decoder, the initial setting means detecting the memory size of each of the DRAM banks included in the internal memory and the additional memory, and The plurality of DRAMs are arranged so that the larger the bank is, the smaller the memory address space of the CPU is.
A memory rearrangement unit that rearranges banks in the memory address space in order of memory size and determines a memory address range to be assigned to each of the plurality of DRAM banks according to the memory arrangement, and a memory corresponding to the DRAM bank for each DRAM. Means for detecting a bit string commonly present only in binary data indicating each of the memory address values belonging to the address range, and setting the common bit string in the address decoder as a decoding condition for each row address strobe signal line. A computer system including :.
JP23812194A 1993-12-28 1994-09-30 Computer system Expired - Fee Related JP3540388B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP23812194A JP3540388B2 (en) 1994-09-30 1994-09-30 Computer system
US08/364,720 US5706407A (en) 1993-12-28 1994-12-27 System for reallocation of memory banks in memory sized order
US08/893,926 US6016548A (en) 1993-12-28 1997-07-15 Apparatus for controlling duty ratio of power saving of CPU

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23812194A JP3540388B2 (en) 1994-09-30 1994-09-30 Computer system

Publications (2)

Publication Number Publication Date
JPH08101792A true JPH08101792A (en) 1996-04-16
JP3540388B2 JP3540388B2 (en) 2004-07-07

Family

ID=17025497

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23812194A Expired - Fee Related JP3540388B2 (en) 1993-12-28 1994-09-30 Computer system

Country Status (1)

Country Link
JP (1) JP3540388B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7426625B2 (en) 2004-03-31 2008-09-16 International Business Machines Corporation Data processing system and computer program product for support of system memory addresses with holes
WO2013046548A1 (en) * 2011-09-28 2013-04-04 パナソニック株式会社 Memory control system and power control method

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5363060B2 (en) * 2008-07-03 2013-12-11 株式会社バッファロー Memory module and memory auxiliary module

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7426625B2 (en) 2004-03-31 2008-09-16 International Business Machines Corporation Data processing system and computer program product for support of system memory addresses with holes
WO2013046548A1 (en) * 2011-09-28 2013-04-04 パナソニック株式会社 Memory control system and power control method

Also Published As

Publication number Publication date
JP3540388B2 (en) 2004-07-07

Similar Documents

Publication Publication Date Title
US5706407A (en) System for reallocation of memory banks in memory sized order
US5307320A (en) High integration DRAM controller
CA2011518C (en) Distributed cache dram chip and control method
US5555528A (en) Dynamic random access memory persistent page implemented as processor register sets
KR100244841B1 (en) High-speed, multiple-port, interleaved cache with arbitration of multiple access addresses
US5509138A (en) Method for determining speeds of memory modules
CA2116985C (en) Memory system
US5329629A (en) Apparatus and method for reading, writing, and refreshing memory with direct virtual or physical access
US5848258A (en) Memory bank addressing scheme
JPH08328958A (en) Instruction cache as well as apparatus and method for cache memory
US5329489A (en) DRAM having exclusively enabled column buffer blocks
US6678790B1 (en) Microprocessor chip having a memory that is reconfigurable to function as on-chip main memory or an on-chip cache
JPH08227380A (en) Data-processing system
US5367655A (en) Memory and associated method including an operating mode for simultaneously selecting multiple rows of cells
JPH1055311A (en) Interleave type cache
JP3540388B2 (en) Computer system
JPH07248963A (en) Dram controller
US6888777B2 (en) Address decode
JP3614956B2 (en) Memory control system
EP0310446A2 (en) Cache memory management method
JP2001256109A (en) Method and device for controlling integrated cache port
JPH08115262A (en) Address conversion circuit and electronic computer provided with the address conversion circuit
US5249277A (en) Optimized performance memory method and system
KR200182184Y1 (en) A combined cache with memory
KR100257750B1 (en) A combined cache with memory

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040323

A61 First payment of annual fees (during grant procedure)

Effective date: 20040325

Free format text: JAPANESE INTERMEDIATE CODE: A61

FPAY Renewal fee payment (prs date is renewal date of database)

Year of fee payment: 4

Free format text: PAYMENT UNTIL: 20080402

FPAY Renewal fee payment (prs date is renewal date of database)

Year of fee payment: 5

Free format text: PAYMENT UNTIL: 20090402

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100402

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees