KR20000034386A - 에스 디 램 콘트롤러의 메모리 액세스 방법 - Google Patents

에스 디 램 콘트롤러의 메모리 액세스 방법 Download PDF

Info

Publication number
KR20000034386A
KR20000034386A KR1019980051714A KR19980051714A KR20000034386A KR 20000034386 A KR20000034386 A KR 20000034386A KR 1019980051714 A KR1019980051714 A KR 1019980051714A KR 19980051714 A KR19980051714 A KR 19980051714A KR 20000034386 A KR20000034386 A KR 20000034386A
Authority
KR
South Korea
Prior art keywords
address
memory access
memory
read command
sdram
Prior art date
Application number
KR1019980051714A
Other languages
English (en)
Inventor
이종석
Original Assignee
전주범
대우전자 주식회사
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 전주범, 대우전자 주식회사 filed Critical 전주범
Priority to KR1019980051714A priority Critical patent/KR20000034386A/ko
Publication of KR20000034386A publication Critical patent/KR20000034386A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Dram (AREA)

Abstract

본 발명은 SDRAM 콘트롤러의 메모리 액세스 방법을 개시한다.
즉, 본 발명은 SDRAM 콘트롤러의 메모리 액세스 방법에 있어서, 메모리 액세스가 요청되었는지를 판단하는 제 1 단계와, 메모리 액세스가 요청되었으면, 어드레스/판독 명령을 발생하는 제 2 단계와, 대기 및 예측된 어드레스/판독 명령을 발생하는 제 3 단계와, 발생된 대기 시간이 기설정된 시간에 도달하였는지를 판단하는 제 4 단계와, 발생된 대기 시간이 기설정된 시간에 도달하였으면, 데이터를 전송하는 제 5 단계와, 메모리 요청이 상기 예측된 어드레스/판독 명령과 일치하는지를 판단하는 제 6 단계와, 메모리 요청이 예측된 어드레스/판독 명령과 일치하면, 데이터를 전송하고, 예측된 어드레스/판독 명령을 발생하는 제 7 단계를 포함한다. 따라서, 본 발명은 SDRAM 콘트롤러의 어드레스 및 판독 명령을 미리 예측하여 발생시키므로써, 순차적인 판독이 대부분이 버스 시스템에서 메모리 액세스에 소요되는 시간을 줄여 빠른 속도의 액세스 동작을 달성할 수 있는 효과가 있다.

Description

에스 디 램 콘트롤러의 메모리 액세스 방법
본 발명은 SDRAM(Synchronous Dynamic Random Access Memory) 콘트롤러의 메모리 액세스 방법에 관한 것으로, 보다 상세하게는 SDRAM 콘트롤러의 어드레스 및 판독 명령을 미리 예측하여 발생시키도록 한 SDRAM 콘트롤러의 메모리 액세스 방법에 관한 것이다.
SDRAM은 시스템 클럭에 동기하여 명령을 수납하거나, 데이터의 입출력을 수행하는 동기식의 DRAM으로서, 통상의 DRAM의 단점, 즉, 시스템 클럭에 대하여 비동기로 동작하기 때문에 타이밍 설계가 복잡하다고 하는 단점을 보완한 DRAM을 일컫는다.
또한, SDRAM은 클럭에 동기하여 연속해서 데이터를 출력하는 버스트 동작이나, 내부를 복수의 뱅크로 분할함으로써 고속으로 효율적인 동작을 가능하게 하였으며, 고속 페이지 모드(fast page mode), EDO(Extended Data Out) 등의 종래형 DRAM에서 고속 동작을 실현가능하게 하였다. 이러한 SDRAM의 대표적인 특징들을 간략히 설명한다.
첫째, SDRAM은 클럭에 동기하여 동작한다. 즉, 기본이 되는 입력 클럭의 상승 에지에서 각 콘트롤 신호를 래치하고 입력 클럭에 동기하여 데이터의 입출력을 수행하는 것이다. 이 입력 클럭을 시스템 클럭(예를 들어, 머더 보드상의 클럭)과 같은 신호로 하면 시스템의 동기가 취해져 콘트롤이 용이하게 된다.
둘째, SDRAM은 파이프 라인 동작과 버스트 전송을 수행한다. 즉, 내부 파이프 라인에 의한 병행 동작과 버스트 전송을 수행함으로써 연속한 어드레스 데이터의 2비트째 이후를 고속으로 전송할 수 있는 것이다.
셋째, SDRAM은 커맨드에 의한 콘트롤을 수행한다. 커맨드란 콘트롤 신호의 논리 레벨의 조합에 의한 SDRAM에의 동작 명령이다. 종래의 DRAM에서는 기본적으로 1개의 콘트롤 신호가 하나의 커맨드에 대응하고 있었다. 논리 레벨의 조합으로 콘트롤하고 있는 부분이 없는 것은 아니지만 비동기 신호였기 때문에 논리의 조합에 의한 커맨드라는 개념은 명확하지 않았다.
넷째, SDRAM은 내부에 복수의 뱅크를 구성하고 있다. 즉, 메모리 칩을 복수의 뱅크로 나누는 구성으로 되어 있다는 점과 상술한 커맨드에 의한 콘트롤을 채용했기 때문에 뱅크마다 독립된 콘트롤이 가능하다는 것이다. 예를 들면, 뱅크마다 인터리브(interleave) 콘트롤이 가능하고, 외관상 프리 챠지(free charge) 시간이 숨겨져 버스의 전송 효율이 높아진다.
다섯째, SDRAM은 모드 레지스트에 의한 동작 모드 설정이 가능하다. 즉, CAS 레이턴시(Column Address Strobe latency)나 버스트 길이등 SDRAM의 동작 모드를 모드 레지스터에 프로그램함으로써 설정할 수 있는 것이다.
이러한 특징들을 갖는 통상의 SDRAM 콘트롤러의 CPU(도시 생략)에 의한 메모리 액세스 과정을 첨부한 도 1의 흐름도와 도 2의 타이밍도를 참조하여 상세하게 설명한다.
먼저, 단계(S100)에서 CPU는 소정의 메모리 요청이 있는지를 판단한다. 단계(S100)의 판단 결과, 소정의 메모리 요청이 있으면, CPU는 단계(S102)로 진행하고, 메모리 요청이 없는 경우에는 단계(S100)를 반복한다.
단계(S102)에서 CPU는 어드레스 및 판독 명령을 발생시킨다. 이와 함께, CPU는 단계(S104)로 진행하여 CAS 레이턴시, 즉, 대기 시간을 갖는다. 이러한 대기 시간은 메모리가 어드레스를 받아 정확한 위치를 선정하기 위한 로(low) 타임, 예컨대, 셋업 타임이라고도 하며, 커맨드를 입력하고 나서 데이터가 출력되기까지의 클럭수를 의미하기도 한다.
단계(S104)의 수행과 함께, CPU는 단계(S106)로 진행하여 CAS 레이턴시가 기설정 시간, 즉, 셋업 타임을 경과하였는지를 판단한다.
단계(S106)의 판단 결과, CAS 레이턴시가 기설정 시간을 경과하였으면, CPU는 단계(S108)로 진행하여 데이터를 전송한다.
이상 설명한 바와 같이, 종래 SDRAM 콘트롤러의 메모리 액세스 동작은 어드레스 및 판독 명령이 수행된 시점부터 일정 기간의 CAS 레이턴시를 가진 후, 필요한 데이터를 출력하는 방식으로 구현된다. 또한, 내부 구조가 파이프 라인화되어 있어, 연속적인 액세스 요청시에는 CAS 레이턴시 후 연속적으로 데이터를 출력할 수 있다.
그러나, 일반적인 버스 구조에서는 하나의 액세스 동작이 끝나기 전에는 다음의 액세스에 대한 정보(어드레스나 액세스 자체의 유무)를 확인하는 길이 없었다. 따라서, 일반적인 SDRAM 콘트롤러는 메모리 액세스를 요청받으면 이러한 CAS 레이턴시 동안 n대기등으로 요청한 디바이스를 기다리게 한 후 데이터를 버스에 실어 주게 됨으로, 한 번의 메모리 액세스당 CAS 레이턴시만큼의 시간을 소모하게 된다는 문제점이 있었다.
따라서, 본 발명은 이러한 문제점을 해결하기 위하여 안출한 것으로, SDRAM 콘트롤러의 어드레스 및 판독 명령을 미리 발생시켜 메모리 액세스 시간을 단축하도록 한 SDRAM 콘트롤러의 메모리 액세스 방법을 제공하는데 그 목적이 있다.
상술한 목적을 달성하기 위하여 본 발명은, SDRAM 콘트롤러의 메모리 액세스 방법에 있어서, 메모리 액세스가 요청되었는지를 판단하는 제 1 단계와, 메모리 액세스가 요청되었으면, 어드레스/판독 명령을 발생하는 제 2 단계와, 대기 및 예측된 어드레스/판독 명령을 발생하는 제 3 단계와, 발생된 대기 시간이 기설정된 시간에 도달하였는지를 판단하는 제 4 단계와, 발생된 대기 시간이 기설정된 시간에 도달하였으면, 데이터를 전송하는 제 5 단계와, 메모리 요청이 상기 예측된 어드레스/판독 명령과 일치하는지를 판단하는 제 6 단계와, 메모리 요청이 예측된 어드레스/판독 명령과 일치하면, 데이터를 전송하고, 예측된 어드레스/판독 명령을 발생하는 제 7 단계를 포함하는 SDRAM 콘트롤러의 메모리 액세스 방법을 제공한다.
도 1은 종래의 SDRAM 콘트롤러의 메모리 액세스 과정을 도시한 흐름도,
도 2는 도 1의 메모리 액세스 과정을 설명하기 위한 타이밍도,
도 3은 본 발명에 따른 SDRAM 콘트롤러의 기능 블록도,
도 4는 본 발명의 바람직한 실시예에 따른 SDRAM 콘트롤러의 메모리 액세스 과정을 도시한 흐름도,
도 5는 도 4의 메모리 액세스 과정을 설명하기 위한 타이밍도.
<도면의 주요부분에 대한 부호의 설명>
10 : 행 어드레스 버퍼 11 : 열 어드레스 버퍼
13 : 행 디코더 13 : 열 디코더
14 : 메모리 셀 어레이 15 : 클럭 제너레이터
16 : 데이터 입력 버퍼 17 : 데이터 출력 버퍼
본 발명의 상기 및 기타 목적과 여러 가지 장점은 이 기술 분야에 숙련된 사람들에 의해 첨부된 도면을 참조하여 하기에 기술되는 본 발명의 바람직한 실시예로부터 더욱 명확하게 될 것이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대하여 상세하게 설명한다.
도 3은 본 발명에 따른 SDRAM 콘트롤러의 기능 블록도로서, 행 어드레스 버퍼(row address buffer)(10), 열 어드레스 버퍼(column address buffer)(11), 행 디코더(12), 열 디코더(13), 메모리 셀 어레이(14), 클럭 제너레이터(15), 데이터 입력 버퍼(16) 및 데이터 출력 버퍼(17)를 포함한다.
도 3을 참조하면, 행 어드레스 버퍼(10)는 외부 행 어드레스 신호중 하나인 행 어드레스 신호를 수신하고 상보형의 내부 행 어드레스 신호를 발생시킨다. 행 디코더(12)는 행 어드레스 버퍼(10)로부터 출력된 내부 행 어드레스 신호를 디코딩하고 워드선(WL)을 선택적으로 구동시킨다.
열 어드레스 버퍼(11)는 외부 열 열 어드레스 신호중 하나인 열 어드레스 신호를 수신하고 상보형의 내부 열 어드레스 신호를 발생시킨다. 열 디코더(13)는 열 어드레스 버퍼(11)로부터 출력된 내부 열 어드레스 신호를 디코딩하고 열 선택 신호(CL)를 발생시킨다.
데이터 버스쌍은 열 디코더(13)를 통해 메모리 셀 어레이(14)에 배열된 비트선에 선택적으로 접속된다. 데이터 출력 버퍼(17)는 도시 생략된 데이터 버스 증폭기에 의해 증폭된 데이터를 출력 데이터(OUT)로서 SDRAM 외부로 출력한다.
데이터 입력 버퍼(16)는 SDRAM 외부로부터 기입 데이터(IN)를 수신하여 상보형 기입 데이터를 발생시킨다. 클럭 제너레이터(15)는 외부 클럭 신호 CLK, 행 어드레스 스트로브 신호 RAS 및 SDRAM의 외부로부터 수신된 열 어드레스 스트로브 신호 CAS를 SDRAM 외부로부터 수신하여, 열 디코더(11), 데이터 버스 증폭기와 같은 소정의 내부 회로에 내부 클럭 버스 CLK를 타이밍 신호로서 인가한다.
이하, 상술한 구성과 함께, 본 발명의 바람직한 실시예에 따른 SDRAM 콘트롤러의 메모리 액세스 과정을 첨부한 도 4의 흐름도 및 도 5의 타이밍도를 참조하여 상세하게 기술한다.
먼저, 단계(S200)에서 클럭 제너레이터(15)는 소정의 메모리 요청이 있는지를 판단한다. 단계(S200)의 판단 결과, 소정의 메모리 요청이 있으면, 클럭 제너레이터(15)는 단계(S202)로 진행하고, 메모리 요청이 없는 경우에는 단계(S200)를 반복한다.
단계(S202)에서 클럭 제너레이터(15)는 어드레스 및 판독 명령을 발생시킨다. 즉, 도 5의 타이밍도에 도시한 바와 같이, 버스 어드레스 신호와 SDRAM에서 래치된 어드레스 신호가 나타난다.
이와 함께, 클럭 제너레이터(15)는 단계(S204)로 진행하여 CAS 레이턴시, 즉, 대기 시간을 갖는다(n대기에서의 로우(low) 파형). 또한, 클럭 제너레이터(15)는 단계(S204)에서, 예측된 어드레스 및 판독 명령을 발생한다. 즉, 도 5의 타이밍도에 나타난 바와 같이, 판독이 수행되는 다음 클럭부터 자체적인 카운터(도시 생략)를 이용해서 어드레스를 순차적으로 증가시키면서 판독 명령을 수행하는 것이다. 이러한 예측 어드레스 및 판독 명령 과정은 연속적인 순차 판독을 가정하고 다음 판독 내용에 대한 명령을 미리 내려 놓는 것이다. 여기서, 연속적인 순차 판독은 대부분의 버스 시스템에 적용되는 것이며, 이러한 사실은 본 발명의 기술분야에서 통상의 지식을 가진자는 용이하게 알 수 있는 바, 구체적인 설명은 생략한다.
단계(S204)의 수행과 함께, 클럭 제너레이터(15)는 단계(S206)로 진행하여 CAS 레이턴시가 기설정 시간, 즉, 셋업 타임을 경과하였는지를 판단한다.
단계(S206)의 판단 결과, CAS 레이턴시가 기설정 시간을 경과하였으면, 클럭 제너레이터(15)는 단계(S208)로 진행하여 데이터 출력 버퍼(17)를 통해 데이터를 출력한다(도 5의 데이터 파형).
한편, 클럭 제너레이터(15)는 단계(S210)로 진행하여 메모리 요청이, 예측된 어드레스 및 판독 명령과 일치하는지를 판단한다.
단계(S210)의 판단 결과, 메모리 요청이, 예측된 어드레스 및 판독 명령과 일치하면, 클럭 제너레이터(15)는 단계(S212)로 진행하여 데이터 출력 버퍼(17)를 통해 데이터를 출력하고, 예측된 어드레스/판독 명령을 발생한다.
그러나, 단계(S210)의 판단 결과, 메모리 요청이 예측된 어드레스/판독 명령과 일치하지 않으면, 단계(S202), 단계(S204), 단계(S206) 및 단계(S208)를 반복한다.
이상, SDRAM 콘트롤러의 메모리 액세스 방법을 기술하였으나, 이에 한정되지 않으며, 당업자라면, 본 발명이 SDRAM과 유사한 타이밍을 갖는 EDO(Extended Data Out)나 다른 메모리 소자의 콘트롤러에도 적용가능하다는 것을 알 수 있을 것이다.
이상 설명한 바와 같이, 본 발명은 SDRAM 콘트롤러의 어드레스 및 판독 명령을 미리 예측하여 발생시키므로써, 순차적인 판독이 대부분이 버스 시스템에서 메모리 액세스에 소요되는 시간을 줄여 빠른 속도의 액세스 동작을 달성할 수 있는 효과가 있다.

Claims (2)

  1. SDRAM 콘트롤러의 메모리 액세스 방법에 있어서,
    메모리 액세스가 요청되었는지를 판단하는 제 1 단계와;
    상기 메모리 액세스가 요청되었으면, 어드레스/판독 명령을 발생하는 제 2 단계와;
    대기 및 예측된 어드레스/판독 명령을 발생하는 제 3 단계와;
    상기 발생된 대기 시간이 기설정된 시간에 도달하였는지를 판단하는 제 4 단계와;
    상기 발생된 대기 시간이 기설정된 시간에 도달하였으면, 데이터를 전송하는 제 5 단계와;
    상기 메모리 요청이 상기 예측된 어드레스/판독 명령과 일치하는지를 판단하는 제 6 단계와;
    상기 메모리 요청이 상기 예측된 어드레스/판독 명령과 일치하면, 상기 데이터를 전송하고, 상기 예측된 어드레스/판독 명령을 발생하는 제 7 단계를 포함하는 SDRAM 콘트롤러의 메모리 액세스 방법.
  2. 제 1 항에 있어서, 상기 제 6 단계의 판단 결과, 상기 메모리 요청이 상기 예측된 어드레스/판독 명령과 일치하지 않으면, 상기 제 2, 제 3, 제 4 및 제 5 단계를 반복하는 단계를 더 포함하는 SDRAM 콘트롤러의 메모리 액세스 방법.
KR1019980051714A 1998-11-30 1998-11-30 에스 디 램 콘트롤러의 메모리 액세스 방법 KR20000034386A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980051714A KR20000034386A (ko) 1998-11-30 1998-11-30 에스 디 램 콘트롤러의 메모리 액세스 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980051714A KR20000034386A (ko) 1998-11-30 1998-11-30 에스 디 램 콘트롤러의 메모리 액세스 방법

Publications (1)

Publication Number Publication Date
KR20000034386A true KR20000034386A (ko) 2000-06-15

Family

ID=19560340

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980051714A KR20000034386A (ko) 1998-11-30 1998-11-30 에스 디 램 콘트롤러의 메모리 액세스 방법

Country Status (1)

Country Link
KR (1) KR20000034386A (ko)

Similar Documents

Publication Publication Date Title
US6201760B1 (en) Apparatus and method for performing data read operation in DDR SDRAM
US6381190B1 (en) Semiconductor memory device in which use of cache can be selected
KR100246868B1 (ko) 디램 시스템, 디램 시스템의 동작 방법
US5909701A (en) Interface for high speed memory
US7178001B2 (en) Semiconductor memory asynchronous pipeline
US5808961A (en) Internal clock generating circuit for clock synchronous type semiconductor memory device
US5715203A (en) Semiconductor memory device and automatic bit line precharge method therefor
US6144616A (en) Semiconductor memory device
US6163500A (en) Memory with combined synchronous burst and bus efficient functionality
US7227812B2 (en) Write address synchronization useful for a DDR prefetch SDRAM
US6466492B2 (en) Synchronous semiconductor memory device and method for controlling mask data input circuit
US6091667A (en) Semiconductor memory device and a data reading method and a data writing method therefor
KR100194571B1 (ko) 반도체 메모리 및 그 기입 방법
US6166970A (en) Priority determining apparatus using the least significant bit and CAS latency signal in DDR SDRAM device
JP2817685B2 (ja) 半導体メモリ
US7543105B2 (en) Memory access control based on hit prediction
US20020136079A1 (en) Semiconductor memory device and information processing system
EP0660328B1 (en) Method of controlling semiconductor storage circuit
KR20000034386A (ko) 에스 디 램 콘트롤러의 메모리 액세스 방법
JPH1092175A (ja) シンクロナスdramのcas信号発生器
KR100736397B1 (ko) 자동 프리차지 제어회로 및 이를 구비하는 반도체 메모리장치
JP3489497B2 (ja) メモリコントローラ
JP2003151273A (ja) 記憶装置、記憶装置の内部制御方法、システム、及びシステムにおける記憶手段の制御方法
JPH07326189A (ja) 半導体記憶装置
JPH08106778A (ja) 同期型半導体記憶装置

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination