KR930004901B1 - Memory control unit of computer system by using dynamic ram - Google Patents
Memory control unit of computer system by using dynamic ram Download PDFInfo
- Publication number
- KR930004901B1 KR930004901B1 KR1019900022797A KR900022797A KR930004901B1 KR 930004901 B1 KR930004901 B1 KR 930004901B1 KR 1019900022797 A KR1019900022797 A KR 1019900022797A KR 900022797 A KR900022797 A KR 900022797A KR 930004901 B1 KR930004901 B1 KR 930004901B1
- Authority
- KR
- South Korea
- Prior art keywords
- dram
- area
- address
- control
- processor
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Dram (AREA)
Abstract
Description
제1도는 본 발명의 일실시예 구성 블럭도.1 is a block diagram of an embodiment of the present invention.
제2도는 본 발명의 다른 실시예 구성 블럭도.2 is a block diagram of another embodiment of the present invention.
제3도는 본 발명의 또 다른 실시예 구성 블럭도.3 is a block diagram of another embodiment of the present invention.
제4도는 상기 제3도에서의 디램(DRAM) 주소할당 예시도.4 is a diagram illustrating DRAM address allocation in FIG.
제5도는 본 발명에 이용되는 페이지모드 디램 제어기의 구성도.5 is a configuration diagram of a page mode DRAM controller used in the present invention.
* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings
10 : 프로세서부 20 : 디코더부10: processor unit 20: decoder unit
21 : 영역 디코더 22 : 주소 디코더21: area decoder 22: address decoder
30 : 메모리 제어부 40 : 메모리부30: memory control unit 40: memory unit
31,32,33 : 페이지모드 디램 제어기 41,42,43 : 디램(DRAM)31,32,33: page mode DRAM controller 41,42,43: DRAM
본 발명은 디램(DRAM)을 메모리로 사용한 컴퓨터 시스템의 메모리 제어 장치에 관한 것으로서, 특히 페이지모드 디램 제어기를 사용하여 엑세스 시간을 단축시키는 메모리 제어 장치에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a memory control apparatus of a computer system using a DRAM as a memory, and more particularly, to a memory control apparatus that reduces access time by using a page mode DRAM controller.
일반적으로 프로세서가 액세스하는 영역을 프로그램 영역, 데이타 영역, 스택 영역으로 나눌 수 있다. 프로그램 영역은 프로세서가 수행하는 명령이 저장된 영역으로 이 명령은 대부분 순차적으로 액세스되므로 프로그램 영역 내에서는 연속된 두 액세스는 동일한 페이지일 가능성이 매우 높다.In general, an area accessed by a processor may be divided into a program area, a data area, and a stack area. The program area is the area where the instructions stored by the processor are stored. Most of these instructions are accessed sequentially, so it is very likely that two consecutive accesses are the same page within the program area.
데이타 영역은 프로그램 영역에 있는 명령에 의하여 조작되는 데이타가 지정된 영역으로 데이타간의 관련성이 높으면 연속된 두 엑세스가 동일한 페이지일 가능성이 높아진다. 일반적으로 짧은 시간에 조작되는 데이타는 데이타간의 관련성이 높으므로 데이타 영역 내에서도 연속된 두 액세스가 동일한 페이지일 확률은 높다.The data area is an area where data manipulated by commands in the program area is designated. If the data is highly related, two consecutive accesses are likely to be the same page. In general, data manipulated in a short time is highly related to data, so even in a data area, there is a high probability that two consecutive accesses are the same page.
스택 영역은 스택 포인터에 의해 지정된 주소로 엑세스 되는 영역으로 일반적으로 이 영역을 엑세스 할 때마다 스택 포인터의 값이 1씩 증가 또는 감소되므로 영역내의 연속된 두 액세스는 대부분 연속된 영역이 되어 동일한 페이지일 가능성이 매우 높다. 그리고 디램을 효과적으로 제어하기 위해 사용되는 페이지 모드 디램제어기는 디램의 엑세스 영역이 이전에 엑세스 했던 영역과 동일한 페이지(동일한 열주소)일 경우 엑세스 시간을 기준에 비해 약 3분의 1로 단축하며 이전에 엑세스 했던 페이지가 아닐 경우는 엑세스 시간이 증가된다. 따라서, 평균 디램엑세스 시간은 프로세스가 엑세스하는 영역이 이전에 엑세스한 영역과 동일한 페이지일 확률에 의해 결정된다.The stack area is the area accessed by the address specified by the stack pointer. In general, each access to this area increases or decreases the value of the stack pointer by one, so that two consecutive accesses in the area are mostly contiguous areas and are the same page. The probability is very high. In addition, the page mode DRAM controller used to effectively control the DRAM reduces the access time to about one third of the standard when the access area of the DRAM is the same page (same column address) as the previously accessed area. If the page is not accessed, the access time is increased. Therefore, the average DRAM access time is determined by the probability that the area accessed by the process is the same page as the previously accessed area.
실제 프로세서 동작은 프로그램을 읽어와서 프로그램이 지시하는대로 데이타를 조작하는 형태이므로 전술한 세 영역을 랜덤하게 액세스한다. 디램의 한페이지의 크기는 32비트 폭을 가지는 프로세서에서 1메가 비트 디램의 경우 4096바이트, 4메가 비트 디램의 경우 8192바이트로 비교적 적으므로 이 세영역은 대부분 다른 페이지에 존재하게 된다.Since the actual processor operation reads a program and manipulates data as the program instructs, the three regions are randomly accessed. The size of one page of DRAM is relatively small: 4096 bytes for one megabit DRAM and 8192 bytes for four megabit DRAM in a 32-bit wide processor, so these three areas are mostly on different pages.
따라서, 하나의 페이지모드 디램 제어기를 사용할 경우 엑세스 영역이 바뀔때마다 이전의 엑세스와 다른 페이지를 엑세스하게 되므로 페이지모드 디램 제어기의 성능향상 효과를 기대할 수 없게 된다.Therefore, when one page mode DRAM controller is used, a different page from the previous access is accessed every time the access area is changed, and thus the performance improvement effect of the page mode DRAM controller cannot be expected.
본 발명은 상기 문제점을 해결하기 위해 안출한 것으로서, 프로그램 영역, 데이타 영역, 스택 영역을 각각의 서로 다른 디램에 할당하고 상기의 디램 각각에 해당 영역만을 전담하는 페이지 모드 디램 제어기를 연결하여 구성함으로서, 프로세서가 엑세스하는 영역을 바꾸어도 디램 제어기 각각에서는 연속된 두 액세스 간에 페이지가 바뀔 확률을 최소화하여 엑세스 시간을 단축시키는 디램을 사용한 컴퓨터 시스템의 메모리 제어장치를 제공함에 그 목적을 두고 있다.The present invention has been made to solve the above problems, by assigning a program area, a data area, and a stack area to each of the different DRAM, and by configuring a page mode DRAM controller dedicated to only the corresponding area to each of the DRAM, The purpose of the present invention is to provide a memory controller of a computer system using a DRAM that reduces access time by minimizing the possibility of page change between two consecutive accesses even if the processor accesses a different area.
이하, 첨부된 도면을 참조하여 본 발명을 상세히 설명한다.Hereinafter, with reference to the accompanying drawings will be described in detail the present invention.
제1도, 제2도 및 제3도는 본 발명에 의해 구현된 디램 제어장치의 개략적인 구성을 나타낸 블럭도로서, 도면에서 10은 프로세서, 21은 영역 디코더, 22는 주소 디코더, 31, 32, 33은 페이지모드 디램 제어기, 41, 42, 43은 디램을 각각 나타낸다.1, 2 and 3 are block diagrams showing a schematic configuration of a DRAM control apparatus implemented by the present invention, in which 10 is a processor, 21 is an area decoder, 22 is an address decoder, 31, 32, 33 denotes a page mode DRAM controller, and 41, 42, and 43 denote DRAMs, respectively.
최근의 많은 프로세서는 매 엑세스마다 프로그램 영역, 데이타 영역, 스택 영역 또는 프로그램 영역과 데이타 영역을 구분하는 신호가 가지고 있으므로 본 발명에서는 제1도와 같이 각각의 영역에 별도의 디램(41, 42, 43)과 페이지모드 디램 제어기(31, 32, 33)를 각각 할당하고 영역 디코더(21)를 통해 프로세서의 영역 구분신호를 디코드하여 해당 디램제어기를 동작 시킨다.Many recent processors have a signal for distinguishing a program area, a data area, a stack area, or a program area and a data area for each access. In the present invention, separate DRAMs 41, 42, and 43 are provided in each area as shown in FIG. And page mode DRAM controllers 31, 32, and 33 are allocated, and the region decoder 21 of the processor is decoded by the region decoder 21 to operate the corresponding DRAM controller.
즉, 제1도에서 프로세서(10)가 엑세스하고자 하는 주소가 디램 영역이면 주소 디코더(22)를 통하여 디램 인에이블 신호(SO)를 발생시켜 영역디코더(21)에 입력하고 영역디코더(21)는 디램 인에이블 신호(SO)를 받았을 경우 영역 구분신호를 디코드하여 디램 제어기동작 신호인 S1, S2, S3를 출력한다. 엑세스하고자 하는 영역이 프로그램 영역이면 프로그램용 디램 제어신호(S1)을 출력하여 디램제어기 1(31)을 동작시켜 디램 1(41)을 엑세스하며, 데이타 영역이면 데이타용 디램 제어신호(S2)를 출력하여 디램제어기 2(32)를 동작시켜 디램 2(42)를 엑세스하며 스택영역이면 스택용 디램 제어신호(S3)를 출력하여 디램제어기 3(33)을 동작시켜 디램 3(43)을 엑세스한다. 이와 같이 구성하면 각각 제어기는 각각 프로그램, 데이타, 스택 영역에서만 동작하며 각각의 영역내에서 연속된 두 엑세스간에는 동일한 페이지일 확률을 최대화하므로 페이지 모드 엑세스의 비율을 높이게 되어 평균 디램액세스 시간을 단축하게 된다.That is, in FIG. 1, when the address to be accessed by the processor 10 is a DRAM area, the DRAM enable signal SO is generated through the address decoder 22 to be input to the area decoder 21, and the area decoder 21 is input to the area decoder 21. When receiving the DRAM enable signal SO, the area classification signal is decoded and the DRAM controller operation signals S1, S2, and S3 are output. If the area to be accessed is a program area, the program DRAM control signal S1 is output to operate the DRAM controller 1 31 to access the DRAM 1 41. If the data area is a data area, the DRAM control signal S2 is output. Then, the DRAM controller 2 (32) is operated to access the DRAM 2 (42). If the stack region is output, the DRAM control signal S3 for stack is output to operate the DRAM controller 3 (33) to access the DRAM 3 (43). In this configuration, each controller operates only in the program, data, and stack areas, and maximizes the probability of the same page between two consecutive accesses in each area, thereby increasing the ratio of page mode accesses and reducing the average DRAM access time. .
프로세서의 영역구분신호가 프로그램 영역과 데이타 영역의 두가지 밖에 없으면 제2도와 같이 2개의 페이지모드 디램 제어기(31, 32)로 구성할 수 있다. 이 경우 스택 영역은 데이타 영역에 포함되어 있으므로 데이타 영역에서 연속된 두 액세스가 동일한 페이지일 확률이 약간 저하될 수 있다.If there are only two area classification signals of the processor, a program area and a data area, two page mode DRAM controllers 31 and 32 may be configured as shown in FIG. In this case, since the stack area is included in the data area, the probability that two consecutive accesses in the data area are the same page may be slightly reduced.
제3도는 다른 방법으로 실시한 한 예로서 각각의 디램을 연결한 3개의 페이지모드 디램제어기(31, 32, 33)를 가지며 각각의 디램(41, 42, 43)은 서로 다른 주소영역을 가진다. 따라서, 프로세서(10)가 엑세스하고자 하는 주소 영역에 따라 3개중 어느 하나의 디램 제어기가 동작하며 해당 디램을 액세스하게 되는데, 프로그램은 디램 1의 주소영역에, 데이타는 디램 2의 주소영역에 스택은 디램 3의 주소영역에 할당하면 영역디코더가 없어도 제1도와 동일한 효과를 발휘할 수 있게 된다. 즉 제4도와 같이 주소영역 1은 디램 1, 주소영역 2는 디램 2, 주소영역 3은 디램 3에 할당하고 프로그램은 주소 영역 1에 데이타는 주소영역 2에 스택은 주소영역 3에 저장하도록 한다. 그러면 프로세서가 프로그램 영역을 엑세스하고자 하면 주소디코더를 통하여 디램제어기(31)의 동작 신호(e1)를 발생하여 디램제어기 1을 동작시켜 디램 1(41)을 액세스하며, 데이타 영역을 엑세스하고자 하면 디램제어기 2(32)의 동작신호(e2)가 발생하여 디램 2(42)를 액세스하며 스택영역을 액세스하고자 하면 디램제어기 3(33)의 동작신호(3)가 발생하여 디램 3(43)을 엑세스한다. 디램 1, 디램 2, 디램 3은 소프트웨어에 의하여 프로그램영역, 데이타영역, 스택영역을 각각 할당할 수 있으므로 필요에 따라 영역을 바꾸어 할당할 수 있다.FIG. 3 shows three page mode DRAM controllers 31, 32, and 33 which connect respective DRAMs as an example of another method, and each of the DRAMs 41, 42, and 43 has a different address area. Therefore, one of the three DRAM controllers operates according to the address area that the processor 10 wants to access and accesses the corresponding DRAM. The program is stored in the address area of DRAM 1 and the data is stored in the address area of DRAM 2. If it is allocated to the address area of DRAM 3, the same effect as in Fig. 1 can be achieved without the area decoder. That is, as shown in FIG. 4, the address area 1 is allocated to the DRAM 1, the address area 2 to the DRAM 2, and the address area 3 to the DRAM 3, and the program stores the data in the address area 1 and the stack in the address area 3. Then, if the processor wants to access the program area, it generates an operation signal e1 of the DRAM controller 31 through the address decoder to operate the DRAM controller 1 to access the DRAM 1 41, and to access the data area, the DRAM controller When the operation signal e2 of 2 32 is generated to access the DRAM 2 42 and the stack area is to be accessed, the operation signal 3 of the DRAM controller 3 33 is generated to access the DRAM 3 43. . The DRAM 1, DRAM 2, and DRAM 3 can be allocated to the program area, data area, and stack area by software, so that the area can be changed as necessary.
영역구분신호를 사용하지 않으면서 제1도 및 제2도와 동일한 효과를 발휘하므로 영역구분신호가 없는 프로세서에도 사용할 수 있다. 각각의 주소 영역은 반드시 연속 영역일 필요는 없으며 크기도 필요한 만큼을 디램의 용량 및 갯수로서 조정할 수 있다.The same effects as in FIGS. 1 and 2 can be achieved without using the region separation signal, so that the processor can be used in a processor without the region separation signal. Each address area does not necessarily need to be a contiguous area, and the size can be adjusted as required by the capacity and number of DRAMs.
그리고 본 발명에 이용되는 페이지모드 디램제어기는 제5도에 도시한 바와 같이, 디램 액세스 신호(RAMSEL)와 읽기 및 쓰기 신호(R/W)와 기준 클럭(CLK)을 입력하여 어드레스 분배기 제어신호(COLAD)와 디램 제어신호(RAS, DAS)와 액세스 완료신호(TERM)를 발생하는 제어기와, 상기 제어기의 제어신호(COLAD)에 따라 행주소 및 열주소를 입력하여 디램의 주소선에 인가하는 주소분배기와, 상기 제어기의 제어(RAS)하에 열주소(row address)를 저장하는 래치와, 상기 래치에 저장된 이전의 열주소와 새로운 열주소를 비교하여 상기 제어기로 출력하는 비교기를 구비하고 있다.As shown in FIG. 5, the page mode DRAM controller used in the present invention inputs a DRAM access signal RAMSEL, a read and write signal R / W, and a reference clock CLK to receive an address divider control signal. A controller generating COLAD), DRAM control signals RAS and DAS, and an access completion signal TERM, and an address applied to the address line of the DRAM by inputting a row address and a column address according to the control signal COLAD of the controller. And a divider, a latch for storing a row address under control of the controller (RAS), and a comparator for comparing the old column address and the new column address stored in the latch to the controller.
상술한 바와같은 본 발명은 페이지모드 디램제어장치를 엑세스 영역의 종류에 따라 다수 사용하여 페이지가 바뀔 확률을 최소화하므로 페이지모드 엑세스 비율을 높여 디램 엑세스시 평균 엑세스 시간을 단축시키는 효과를 갖는다.As described above, the present invention minimizes the probability of page change by using a plurality of page mode DRAM controllers according to the type of access area, thereby increasing the page mode access ratio, thereby reducing the average access time during DRAM access.
Claims (9)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019900022797A KR930004901B1 (en) | 1990-12-31 | 1990-12-31 | Memory control unit of computer system by using dynamic ram |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019900022797A KR930004901B1 (en) | 1990-12-31 | 1990-12-31 | Memory control unit of computer system by using dynamic ram |
Publications (2)
Publication Number | Publication Date |
---|---|
KR920013122A KR920013122A (en) | 1992-07-28 |
KR930004901B1 true KR930004901B1 (en) | 1993-06-10 |
Family
ID=19309213
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019900022797A KR930004901B1 (en) | 1990-12-31 | 1990-12-31 | Memory control unit of computer system by using dynamic ram |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR930004901B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7996601B2 (en) | 2006-11-27 | 2011-08-09 | Samsung Electronics Co., Ltd. | Apparatus and method of partially accessing dynamic random access memory |
-
1990
- 1990-12-31 KR KR1019900022797A patent/KR930004901B1/en not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7996601B2 (en) | 2006-11-27 | 2011-08-09 | Samsung Electronics Co., Ltd. | Apparatus and method of partially accessing dynamic random access memory |
Also Published As
Publication number | Publication date |
---|---|
KR920013122A (en) | 1992-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5317709A (en) | Microcomputer including memory controller for DRAM | |
US4400772A (en) | Method and apparatus for direct memory access in a data processing system | |
US5923612A (en) | Synchronous semiconductor memory device having macro command storage and execution method therefor | |
KR930004901B1 (en) | Memory control unit of computer system by using dynamic ram | |
US5428746A (en) | Integrated microprocessor unit generating separate memory and input-output device control signals | |
US4964037A (en) | Memory addressing arrangement | |
JPS6126152A (en) | Address check system | |
US5530818A (en) | Semiconductor integrated circuit device for optionally selecting the correspondence between a chip-select signal and address space | |
JPH07114496A (en) | Shared memory control circuit | |
JPH0341856B2 (en) | ||
JPH08249289A (en) | Memory controller and its control method | |
KR940003632B1 (en) | Method and circuit extending memory space in micro-processor | |
JPH0525331B2 (en) | ||
JPH0784866A (en) | Memory control circuit | |
JPH06337847A (en) | Multiprocessor device | |
JPH04241047A (en) | Address extension system | |
JPS622337A (en) | Memory extending system | |
JPS6341966A (en) | Direct memory access transfer device | |
JPH04137150A (en) | Buffer storage device | |
JPH0322073A (en) | Data transfer controller | |
JPH11184751A (en) | Memory control circuit and memory device | |
JPH03203891A (en) | Memory controller | |
JPS63205751A (en) | Bus controller | |
JPH04142638A (en) | Information processor | |
JPS63113646A (en) | Memory control system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
G160 | Decision to publish patent application | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 19980313 Year of fee payment: 6 |
|
LAPS | Lapse due to unpaid annual fee |