KR20020084725A - 저속 주변장치와의 데이터 전송을 위한 메모리 컨트롤러 - Google Patents

저속 주변장치와의 데이터 전송을 위한 메모리 컨트롤러 Download PDF

Info

Publication number
KR20020084725A
KR20020084725A KR1020010023682A KR20010023682A KR20020084725A KR 20020084725 A KR20020084725 A KR 20020084725A KR 1020010023682 A KR1020010023682 A KR 1020010023682A KR 20010023682 A KR20010023682 A KR 20010023682A KR 20020084725 A KR20020084725 A KR 20020084725A
Authority
KR
South Korea
Prior art keywords
system bus
memory
control unit
data
address
Prior art date
Application number
KR1020010023682A
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 KR1020010023682A priority Critical patent/KR20020084725A/ko
Publication of KR20020084725A publication Critical patent/KR20020084725A/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
    • G06F13/1673Details of memory controller using buffers

Abstract

본 발명은 SDRAM이 저속의 주변장치와 데이터를 주고 받기위한 컨트롤러에 관한것으로 이를 위한 본 발명은, 시스템 버스로 부터 인가된 어드레스와 제어신호에 응답하여 메모리로 하여금 데이터를 저장하거나 읽어오도록 명령하는 컨트롤부; 상기 컨트롤부의 데이터 전송 명령에따라 요청된 데이터를 일정시간 저장해두는 메모리 버퍼부; 시스템 버스 인터페이스로부터 웨이트 신호가 있을시 이를 감지하여 제1 제어신호를 생성하고 시스템 버스로 부터 인가되는 어드레스의 속도에 응답하여 일정시간 딜레이 시키는 웨이트 컨트롤부; 상기 제1 제어신호에 응답하여, 상기 메모리 버퍼부에서 시스템 인터페이스부로 전송되는 데이터의 어드레스값을 일정시간 딜레이 되어 출력되도록 하는 어드레스 컨트롤부; 및 시스템 버스와 상기 메모리 컨트롤부와 웨이트 컨트롤부와 메모리 버퍼와의 인터페이스를 담당하는 시스템 버스 인터페이스부를 포함하여 이루어지는 것을 특징으로 한다.

Description

저속 주변장치와의 데이터 전송을 위한 메모리 컨트롤러{Memory controller for data transporting with low speed periperal device}
본 발명은 동기식 에스디램(syncronous DRAM, 이하 "SDRAM 이라 칭함) 컨트롤러에 관한것으로, 특히 SDRAM이 저속의 주변장치와 상호 데이터 전송이 가능하도록 한 컨트롤러에 관한것이다.
SDRAM은 시스템 클럭에 동기하여 동작하는 동기식의 DRAM으로서 한번의 어드레스 지정으로 여러개의 데이터를 연속해서 전송할수 있는 버스트 전송(burst transffer)이 가능한 메모리이다.
현재 SDRAM 인터페이스의 속도는 100 메가 헤르즈(Mhz)를 넘어서고 있는바, 저속의 주변장치와 고속으로 동작하는 SDRAM과의 데이터 전송을 위해서는 개선된 SDRAM 컨트롤러가 필요하게 된다.
도 1을 참조하여 종래의 SDRAM 컨트롤러의 문제점을 살펴보기로 한다.
도 1을 참조하면, 종래의 메모리 컨트롤러(20)는 SDRAM(10)에 데이터를 저장하거나 읽어오도록 명령하는 컨트롤부(21)와, 시스템 버스로 부터 전송되는 어드레스와 데이터를 상기 컨트롤부(21)와 메모리(10)에 전송하는 시스템 버스 인터페이스부(23)을 포함하여 이루어진다.
도 1과 도 2를 참조하여 상기한 종래의 메모리 컨트롤러의 동작을 살펴보도록 한다.
먼저 중앙 처리장치(도면에는 도시되지 않음)에서는 메모리 요청이 있는지를판단하여 메모리 요청이 있을경우 시스템 버스에 어드레스 및 명령을 보낸다.
다음으로, 상기 시스템 버스의 어드레스와 명령을 접수한 시스템 버스 인터페이스(23)는 상기 어드레스와 명령을 컨트롤부(20)로 전송하며, 컨트롤부(2)는 인가된 어드레스에 해당하는 메모리 내부의 주소를 설정하여 메모리에 전송하고 인가된 명령이 읽기 명령이면 메모리에서 데이터를 가져오고, 쓰기 명령이면 메모리에 데이터를 기록하게 된다.
여기서, 상기 컨트롤부(20)에 인가된 어드레스를 받아 메모리의 정확한 위치를 가리키기 위해서는 소정의 시간이 필요하게 되는데, 이를 셋업 타임이라고 하며, 도 2에 도시된 바와 같이 메모리(10)에 어드레스가 입력된후 데이터가 실제로 출력되는데 소요되는 시간을 말한다.
이때, 상기 중앙 처리장치(도면에는 도시되지 않음)에 접수된 메모리 요청을 저속의 주변장치(예컨데 병렬 포트)에서 했다고 가정하면 저속의 주변장치가 연결된 저속의 시스템 버스와 고속으로 동작하는 메모리 내부의 버스 속도와 매칭이 되지 않음으로 인하여 메모리와 저속의 주변장치와는 직접적인 데이터의 상호 교환이 어렵게 된다.
즉, 상기 컨트롤부(20)가 메모리로 부터 안정적으로 데이터를 상호 전송하기 위하여 필요로 하는 셋업타임 동안에 존재하는 딜레이 이상의 딜레이를 요구하는 주변장치와는 직접적인 데이터 송수신이 어렵게 되는 것이다.
본 발명은 상기와 같은 종래의 문제점을 해결하기 위하여, 메모리의 셋업 타임 이상의 딜레이를 요구하는 주변장치와도 상호 데이터의 송수신이 가능한 컨트롤러를 제공하는데 그 목적이 있다.
도 1은 종래의 메모리 컨트롤러의 블럭 다이어 그램.
도 2는 종래의 메모리 어드레스와 데이터의 상호관계를 나타낸 타이밍도.
도 3은 본 발명의 저속 주변장치와의 데이터 전송을 위한 메모리 컨트롤러의 블럭 다이어 그램.
도 4는 본 발명의 저속 주변장치와의 데이터 전송을 위한 메모리 컨트롤러의 메모리 버퍼부에서 시스템 버스 인터페이스부로 전송되는 어드레스와 데이터의 타이밍도.
* 도면의 주요부분에 대한 부호의 설명
10 : 메모리 20 : 메모리 컨트롤부
30 : 어드레스 컨트롤부 40 : 메모리 버퍼부
50 : 웨이트 컨트롤부 60 : 시스템 버스 인터페이스부
70 : 시스템 버스
상기와 같은 종래의 문제점을 해결하기 위한 본 발명은 시스템 버스로 부터 인가된 어드레스와 제어신호에 응답하여 메모리로 하여금 데이터를 저장하거나 읽어오도록 명령하는 컨트롤부; 상기 컨트롤부의 데이터 전송 명령에따라 요청된 데이터를 일정시간 저장해두는 메모리 버퍼부; 시스템 버스 인터페이스로부터 웨이트 신호가 있을시 이를 감지하여 제1 제어신호를 생성하고 시스템 버스의 속도를 일정시간 딜레이 시키는 웨이트 컨트롤부; 상기 제1 제어신호에 응답하여, 상기 메모리 버퍼부에서 시스템 인터페이스부로 전송되는 데이터의 어드레스값을 일정시간 딜레이 되어 출력되도록 하는 어드레스 컨트롤부; 및 시스템 버스와 상기 메모리 컨트롤부와 웨이트 컨트롤부와 메모리 버퍼와의 인터페이스를 담당하는 시스템 버스 인터페이스부를 포함하여 이루어지는 것을 특징으로 한다.
이하 본 발명이 속하는 기술분야에서 통상의 지식을 가진자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여, 본 발명의 가장 바람직한 실시예를 첨부된 도면을 참조하여 설명하기로 한다.
도 3은 본 발명의 메모리 컨트롤러와 그 주변장치를 도시한 블럭 다이어 그램으로 도 2를 참조하면 본 발명은, 데이터를 저장하거나 시스템 버스(70)로 전송하는 메모리(10)와, 시스템 버스(70)로 부터 인가된 어드레스와 제어신호에 응답하여 메모리로 하여금 데이터를 저장하거나 읽어오도록 명령하는 컨트롤부(20)와, 상기 컨트롤부(20)의 데이터 전송 명령에따라 요청된 데이터를 일정시간 저장해두는 메모리 버퍼부(40)와, 시스템 버스 인터페이스로부(60)로 인가된 웨이트 신호가 있을시 이를 감지하여 제어신호(wait)를 생성하고 시스템 버스의 속도를 일정시간 딜레이 시키는 웨이트 컨트롤부(50)와, 상기 제1 제어신호(wait)에 응답하여, 상기 메모리 버퍼부(40)에서 시스템 인터페이스부(60)로 전송되는 데이터의 어드레스값을 일정시간 딜레이 되어 출력되도록 하는 어드레스 컨트롤부(30) 및 시스템 버스와 상기 메모리 컨트롤부(20)와 웨이트 컨트롤부(50)와 메모리 버퍼부(40)와의 인터페이스를 담당하는 시스템 버스 인터페이스부(60)를 포함하여 이루어진다.
상기한 구성의 본 발명을 도 3 내지 도 4를 참조하여 상세히 설명하도록 한다.
먼저, 시스템 버스에 저속의 주변장치(예컨데 병렬 포트)가 연결되어 있고, 상기 저속의 주변장치가 중앙 처리장치(도면에는 도시되지 않음)로 데이터를 전송받겠다는 제어신호가 인가된 경우에, 중앙 처리장치는 시스템 버스(70)로 메모리의 어드레스와 메모리로부터 데이터를 전송하라는 명령어와 메모리의 데이터 전송을 지연시키라는 제어신호(wait)를 전송한다.
다음으로, 시스템 인터페이스부(60)는 시스템 버스로 부터 인가된 어드레스와 명령어를 컨트롤 블럭(20)으로 전송하여, 메모리(10)에서 해당하는 데이터를 메모리 버퍼부(40)로 전송되도록 한다.
또한, 시스템 인터페이스부(60)는 웨이트 컨트롤부(50)로 제1 제어신호(wait)를 전송하여, 어드레스 컨트롤부(30)로 하여금 상기 메모리 버퍼부(40)에 인가된 어드레스와 데이터의 전송속도를 늦추게 한다.
여기서, 상기 어드레스 컨트롤부(30)는 메모리가 데이터를 상호 전송시 먼저 어드레스를 전송하고 그 다음에 데이터를 보내게 되어 있으므로, 도 4에 도시된 바와 같이 어드레스가 시스템 버스로 전송되는 속도를 딜레이 시키면 그에 따라 데이터의 전송속도도 딜레이 되는 특징을 이용한다.
다음으로, 상기 어드레스 컨트롤부(30)가 상기 메모리 버퍼부(40)에서 시스템 버스 인터페이스부(60)로 출력되는 어드레스의 출력속도를 늦추는 것과 동시에 상기 어드레스 컨트롤부(30)는 웨이트 컨트롤부(50)로 제어신호(wait2)를 전송하게 된다.
마지막으로, 상기 웨이트 컨트롤부(50)는 상기 어드레스 컨트롤부(30)로 부터 인가된 제어신호(wait2)에 응답하여 시스템 버스의 어드레스 전송속도를 늦추도록 한다.
따라서, 시스템 버스의 어드레스와 데이터 전송은 도 4에 도시된 것과 같이 느려지게 되며, 상기 메모리 버퍼(40)의 데이터 전송 파형과 같아지게 되므로, 메모리 버퍼부와 시스템 버스(70)의 전송속도가 동기화 되게 된다.
다음으로, 시스템 버스에 저속의 주변장치(예컨데 병렬 포트)가 연결되어 있고, 상기 저속의 주변장치로부터 중앙 처리장치(도면에는 도시되지 않음)로, 메모리에 데이터를 기록하겠다는 제어신호가 인가된 경우에는, 중앙 처리장치는 시스템 버스(70)로 메모리의 어드레스와 메모리로 데이터를 전송하라는 명령어와 메모리의 데이터 전송을 지연시키라는 제어신호(wait)를 전송한다.
다음으로, 시스템 인터페이스부(60)는 시스템 버스로 부터 인가된 어드레스와 명령어를 컨트롤 블럭(20)으로 전송하여, 해당하는 데이터를 시스템 버스 인터페이스부(60)에서 메모리 버퍼부(40)로 전송되도록 한다.
또한, 시스템 인터페이스부(60)는 웨이트 컨트롤부(50)로 제어신호(wait)를 전송하여, 어드레스 컨트롤부(30)로 하여금 상기 메모리 버퍼부(40)에 인가된 어드레스와 데이터의 전송속도를 늦추게 한다.
여기서, 상기 어드레스 컨트롤부(30)는 시스템 버스(70)에서 메모리로 데이터가 전송될시 먼저 시스템 버스(70)상의 어드레스를 전송받고 그 다음에 데이터를 전송받게 되어 있으므로, 도 4에 도시된 바와 같이 어드레스가 메모리 버퍼부(40)로 전송되는 속도를 딜레이 시키면 그에 따라 데이터의 전송속도도 딜레이 되는 특징을 이용한다.
다음으로, 상기 어드레스 컨트롤부(30)가 상기 시스템 버스 인터페이스부(60)에서 메모리 버퍼부(40)로 입력되는 어드레스의 출력속도를 늦추는 것과 동시에 상기 어드레스 컨트롤부(30)는 웨이트 컨트롤부(50)로 제어신호(wait2)를 전송하게 된다.
마지막으로, 상기 웨이트 컨트롤부(50)는 상기 어드레스 컨트롤부(30)로 부터 인가된 제어신호(wait2)에 응답하여 시스템 버스의 어드레스 전송속도를 늦추도록 한다.
따라서, 시스템 버스의 어드레스와 데이터 전송은 도 4에 도시된 것과 같이 느려지게 되며, 상기 메모리 버퍼(40)의 데이터 전송 파형과 같아지게 되므로, 메모리 버퍼부와 시스템 버스(70)의 전송속도가 동기화 되게 된다.
본 발명의 기술 사상은 상기 바람직한 실시예에 따라 구체적으로 기술되었으나, 상기한 실시예는 그 설명을 위한 것이며 그 제한을 위한 것이 아님을 주의하여야 한다. 또한, 본 발명의 기술 분야의 통상의 전문가라면 본 발명의 기술 사상의 범위내에서 다양한 실시예가 가능함을 이해할 수 있을 것이다.
상기한 바와 같이 본 발명의 메모리 컨트롤러는 고속으로 동작하는 메모리와 저속으로 동작하는 주변장치와의 데이터 상호전송이 프로그래머블(programmable)하게 이루어지도록 하여 주변장치의 버스 속도에 관계없이 메모리와 주변장치와의 데이터 전송이 가능하게 하였다.

Claims (1)

  1. 시스템 버스로 부터 인가된 어드레스와 제어신호에 응답하여 메모리로 하여금 데이터를 저장하거나 읽어오도록 명령하는 컨트롤부;
    상기 컨트롤부의 데이터 전송 명령에따라 요청된 데이터를 일정시간 저장해두는 메모리 버퍼부;
    시스템 버스 인터페이스로부터 웨이트 신호가 있을시 이를 감지하여 제1 제어신호를 생성하고 시스템 버스로 부터 인가되는 어드레스의 속도에 응답하여 일정시간 딜레이 시키는 웨이트 컨트롤부;
    상기 제1 제어신호에 응답하여, 상기 메모리 버퍼부에서 시스템 인터페이스부로 전송되는 데이터의 어드레스값을 일정시간 딜레이 되어 출력되도록 하는 어드레스 컨트롤부; 및
    시스템 버스와 상기 메모리 컨트롤부와 웨이트 컨트롤부와 메모리 버퍼와의 인터페이스를 담당하는 시스템 버스 인터페이스부
    를 포함하여 이루어지는것을 특징으로 하는 메모리 컨트롤러.
KR1020010023682A 2001-05-02 2001-05-02 저속 주변장치와의 데이터 전송을 위한 메모리 컨트롤러 KR20020084725A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020010023682A KR20020084725A (ko) 2001-05-02 2001-05-02 저속 주변장치와의 데이터 전송을 위한 메모리 컨트롤러

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020010023682A KR20020084725A (ko) 2001-05-02 2001-05-02 저속 주변장치와의 데이터 전송을 위한 메모리 컨트롤러

Publications (1)

Publication Number Publication Date
KR20020084725A true KR20020084725A (ko) 2002-11-11

Family

ID=27703281

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020010023682A KR20020084725A (ko) 2001-05-02 2001-05-02 저속 주변장치와의 데이터 전송을 위한 메모리 컨트롤러

Country Status (1)

Country Link
KR (1) KR20020084725A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101249251B1 (ko) * 2006-01-04 2013-04-01 삼성전자주식회사 플래시 메모리 컨트롤러
US10521141B2 (en) 2016-09-26 2019-12-31 SK Hynix Inc. Memory module and method system including the same
CN111324297A (zh) * 2018-12-13 2020-06-23 爱思开海力士有限公司 控制器、数据存储装置及数据存储装置的操作方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101249251B1 (ko) * 2006-01-04 2013-04-01 삼성전자주식회사 플래시 메모리 컨트롤러
US10521141B2 (en) 2016-09-26 2019-12-31 SK Hynix Inc. Memory module and method system including the same
CN111324297A (zh) * 2018-12-13 2020-06-23 爱思开海力士有限公司 控制器、数据存储装置及数据存储装置的操作方法
US11106597B2 (en) 2018-12-13 2021-08-31 SK Hynix Inc. Controller, data storage device and operating method thereof
CN111324297B (zh) * 2018-12-13 2023-03-03 爱思开海力士有限公司 控制器、数据存储装置及数据存储装置的操作方法

Similar Documents

Publication Publication Date Title
JPH0619756B2 (ja) 非同期装置間で通信を行なうための効率的なプロトコル
JPH076130A (ja) Fifoのデータ速度適合のための方法ならびにその装置
JPH03131945A (ja) スタッガード・アクセス・メモリ
US6519688B1 (en) Read data valid loop-back for high speed synchronized DRAM controller
US6567321B2 (en) Semiconductor memory device using dedicated command and address strobe signal and associated method
US6968402B2 (en) System and method for storing chunks of first cache line and second cache line in a buffer in a first and second chunk order
KR20020084725A (ko) 저속 주변장치와의 데이터 전송을 위한 메모리 컨트롤러
KR100337059B1 (ko) 탄성 버스 인터페이스 데이터 버퍼
KR100266963B1 (ko) 전송되는 패킷을 오버래핑하여 인터페이스의 대기시간을 감소시키는 방법 및 장치
JP3413894B2 (ja) シリアル伝送装置
JPH11312116A (ja) シンクロナス・ダイナミックランダムアクセスメモリ用同期装置
KR20030057626A (ko) 고속프로세서와 디바이스간 통신 장치 및 그 방법
KR0184402B1 (ko) I₂c 버스의 인터럽트 발생 장치
KR100295683B1 (ko) 인터아이씨의 제너럴콜 어크날리지장치및 방법
JPH05334230A (ja) デュアルポートメモリアクセス制御回路
US6970477B2 (en) Data transmission circuit and method
JP2595808B2 (ja) 分散処理用メモリ装置
KR100263670B1 (ko) 직접 기억 장소 접근 컨트롤러
JPH02211571A (ja) 情報処理装置
JPH02252046A (ja) データ転送装置
JPH08129429A (ja) クロック供給方式及びこれを用いた情報処理装置
JP2000040071A (ja) 多重化バスの順序保証システム
JPH01204169A (ja) バス転送制御方式
JPH06282525A (ja) 同期型バス装置
KR970014428A (ko) 소용량 전전자 교환기에 있어서 고속 병렬동기 버스구조를 갖는 하위프로세서

Legal Events

Date Code Title Description
N231 Notification of change of applicant
N231 Notification of change of applicant
WITN Withdrawal due to no request for examination