KR960011280B1 - 캐쉬메모리 억세스 타임조정회로 - Google Patents

캐쉬메모리 억세스 타임조정회로 Download PDF

Info

Publication number
KR960011280B1
KR960011280B1 KR1019930017548A KR930017548A KR960011280B1 KR 960011280 B1 KR960011280 B1 KR 960011280B1 KR 1019930017548 A KR1019930017548 A KR 1019930017548A KR 930017548 A KR930017548 A KR 930017548A KR 960011280 B1 KR960011280 B1 KR 960011280B1
Authority
KR
South Korea
Prior art keywords
cache memory
cpu
latch clock
clock
data
Prior art date
Application number
KR1019930017548A
Other languages
English (en)
Other versions
KR950006606A (ko
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 KR1019930017548A priority Critical patent/KR960011280B1/ko
Publication of KR950006606A publication Critical patent/KR950006606A/ko
Application granted granted Critical
Publication of KR960011280B1 publication Critical patent/KR960011280B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

내용 없음.

Description

캐쉬메모리 억세스 타임조정회로
제1도는 본 발명에 따른 캐쉬메모리 억세스 타임조정회로의 개략블럭도.
제2도는 제1도에 따른 회로에서의 중앙처리장치와 캐쉬메모리사이의 데이타 억세스시의 타이밍도이다.
* 도면의 주요부분에 대한 부호의 설명
10 : 중앙처리장치 20 : 플립플롭
30 : 래치클럭발생기 40 : 지연기
50 : 캐쉬메모리
본 발명은 캐쉬메모리의 억세스 타임조정회로에 관한 것으로, 특히 고주파수 처리시스템에 있어서의 캐쉬메모리와 프로세서와의 처리속도의 차이를 프로세서의 클럭신호의 지연을 조절하여 캐쉬메모리의 억세스를 용이하도록 하는 억세스 타이밍조정회로에 관한 것이다.
일반적으로 컴퓨터내의 중앙처리장치(Central Processing Unit; 이하 CPU라 함)의 처리속도는 메모리 억세스 속도보다 1000배 이상 빠르다. 이러한 CPU에서의 처리속도와 메모리 억세스속도와의 속도차이를 줄이기 위한 방법으로써 CPU와 주기억장치 사이에 별도로 고속의 버퍼로서 캐쉬메모리가 사용되어 왔다.
이러한 캐쉬메모리는 주기억장치내의 정보들 중에서 현재 사용되고 있는 부분들만을 잠시 보관하기 위하여 고성능 컴퓨터 시스템에서 사용되는 소형 고속의 버퍼메모리이다. 캐쉬를 사용하는 목적은 작고 빠른 캐쉬억세스시간을 가지고 크고 느린 메모리의 능력을 제공함으로써 시스템의 가격 대 성능비를 개선하고자 하는 것이다.
또한, 계속되는 반도체 기술의 발전으로 컴퓨터 아키텍춰의 성능이 급격히 향상됨에 따라 적은 비용으로 고성능의 마이크로프로세서를 실현하기 위하여 대두된 리스크(Reduced Instruction Set Computer; 이하 RISC라 함) 아키텍쳐는 하드웨어의 단순화를 지향함으로써 하드웨어 자원의 이용효율을 극대화하고 설계 및 개발에 소요되는 시간과 비용을 줄일 수 있었다. 그리고 RISC기술은 대부분의 명령어를 단일 싸이클로 수행할 수 있으며, 모든 명령어가 동일한 크기를 갖고 고정된 형식을 사용하여 명령어의 디코드 지연을 감소시키고, 명령어들을 거의 일정한 데이타패스를 거쳐 수행시킨다. 따라서, RISC아키텍쳐는 단일 싸이클 동작이 가능하게 되어 많은 스테이지수를 갖는 강력한 파이프라인 아키텍쳐로 실현됨으로써 고성능의 수행능력을 갖추게 되었다.
그러나, 명령어를 억세스하기 위해서는 패드(Ped)를 거쳐 외부버스를 이용하여 메모리로부터 가져와야 하기때문에 많은 지연시간을 초래하여 고성능 마이크로프로세서의 생명인 처리속도의 저하를 가져오게 되었다.
따라서, 이러한 문제점을 해결하기 위하여 캐쉬메모리는 필수 불가결한 구성요소가 되었다. 그러나, 점차로 마이크로프로세서들이 고속화되는 추세가 메모리의 속도가 고속화되는 추세보다 앞서가고 있으므로 양 장치들간의 속도차이에 의한 문제점이 발생되기 시작하였다.
즉, 종래의 캐쉬메모리에 억세스하고자 하는 CPU는 억세스하고자 하는 캐쉬램의 어드레스를 발생하며 동시에 제어신호(칩인에이블(Chip Enable)신호, 출력인에이블신호등)를 캐쉬메모리의 역할을 하는 고속의 램에 출력 한다.
제어신호를 받은 캐쉬메모리는 자신의 억세스타임이 지난후 유효데이타를 데이타라인으로 출력하고 CPU는 이를 읽어들임으로써 하나의 싸이클이 종료한다. 이때 CPU는 자신의 클럭에 맞추어 어드레스등을 출력하고 데이타를 래치한다.
상기와 같은 데이타의 전달과정을 예를 들어 살펴본다.
만약 33MHz로 동작하는 CPU가 매 싸이클마다 캐쉬메모리를 억세스하기 위해서는 캐쉬램의 속도는 캐쉬램의 억세스타임 ≤ CPU의 클럭주기-(클럭스큐, 어드레스 셋업등의 간)-데이타셋업시간에 의하여 결정된다.
즉, 33MHz로 동작하는 경우에 캐쉬램의 억세스타임≤30ns-7ns-1ns=22ns이 된다.
따라서 20ns의 억세스타임을 가지는 램을 캐쉬메모리로서 사용하면 매 클럭마다 캐쉬메모리에 억세스하는 것이 가능하다.
그러나, CPU클럭이 고주파수, 즉 50MHz, 75MHz 이상의 고주파수로 동작하는 경우 클록주기가 20ns, 13.3ns로 됨에 따라 캐쉬메모리로서 사용되는 SRAM의 속도만을 상승시켜서 1주기내에 데이타를 억세스하는데는 한계가 있다.
예를 들어, CPU의 클럭이 75MHz인 경우를 살펴보면 캐쉬램의 억세스타임 ≤ 13.3ns-7ns-1ns=6.3ns가 되어 1주기내에 데이타를 억세스하기 위해서는 캐쉬램의 속도가 6.3ns 이하가 되어야 한다. 그러나, 현재 캐쉬메모리로서 활용되는 SRAM 중에서 가장 빠른 속도는 8ns이 므로 75MHz의 클럭주파수를 가지는 마이크로프로세서를 사용하는 시스템은 통상의 억세스방식으로는 1클럭싸이클에 데이타를 억세스하지 못하고 최소한 2싸이클이 소요된다. 이러한, 경우에 시스템의 성능이 상당히 저해를 받게 된다.
따라서, 본 발명의 목적은 고주파수의 마이크로프로세서와 캐쉬메모리사이의 효율적인 억세스를 위한 것으로서 메모리의 홀드타임과 별도의 CPU래치클럭을 이용하여 고주파수에서 다소 속도가 늦은 메모리를 사용하더라도 1클럭싸이클에 억세스가 가능하도록 하는 장치 및 방법을 제공하는 것이다.
상기와 같은 목적을 달성하기 위하여 본원의 발명은 중앙처리장치(CPU)가 캐쉬메모리간의 데이터전송을 제어하는 장치에 있어서, 상기 중앙처리장치내부에서 래치클럭신호를 발생하는 래치클럭 발생기; 상기 래치클럭신호를 중앙처리장치로부터 출력하는 래치클럭 출력단자와 상기 중앙처리장치의 래치클럭 입력단자사이에 접속되어 상기 래치클럭신호를 지연시키는 지연수단; 및 상기 지연수단에 의하여 지연된 신호를 클럭신호로하여 상기 캐쉬메모리로부터 독출된 데이타를 래치하는 플립플롭수단을 포함하는 것을 특징으로 한다.
이하 첨부도면을 참조하여 본 발명의 일실시예를 들어 보다 상세히 설명한다.
제1도는 본 발명에 따른 클럭신호 조정회로의 개략도이다.
제1도에서 10은 CPU, 20은 외부로부터 데이타를 받아들이는 데이타입력단자와 연결되는 CPU(10)내부의 플립플롭, 30은 래치클럭을 발생하는 CPU(10)내의 래치클럭발생기이고, 40은 CPU의 래치클럭 입출력단자사이에 접속되어 래치클럭신호를 지연시키는 지연기이다.
상기와 같은 구성을 가지는 클럭신호 조정회로의 동작을 살펴보면 다음과 같다.
CPU(10)내의 래치클럭발생기(30)에서 발생되는 일정 주기의 래치클럭신호는 CPU(10)의 래치클럭 출력단자를 통하여 출력된다. 출력된 래치클럭신호는 신호를 지연시키기 위한 지연부(40)에 입력되어 소정시간만큼 지연된다. 지연부(40)에 의하여 래치클럭이 일정시간 지연되어 출력되면 이 지연된 신호는 CPU(10)의 래치클럭 입력단자로 입력된다.
일정시간만큼 지연되어 다시 CPU(10)의 래치클럭 입력단자로 입력되는 래치클럭신호는 CPU(10)내의 래치의 역할을 하는 플립플롭(20)의 클럭단자에 입력된다. 따라서 캐쉬메모리(50)로부터 CPU(10)의 플립플롭의 데이타 입력단자로 입력되는 데이타는 플립플롭(20)에 입력되는 지연된 래치클럭신호에 의하여 일정시간 지연되어 래치된다.
이때, 캐쉬메모리(50)는 클럭이후의 홀드타임동안 유효하여 데이타를 억세스하는데 전혀 지장이 없도록 한다. 그리고, CPU(10)의 래치클럭 입력단자와 래치클럭 출력단자사이에 설치되어 지연부는 일반적으로 널리 사용되는 지연소자를 사용할 수 있으나 실제로 CPU가 설치된 보드상에서 래치클럭 입력라인과 래치클럭 출력라인사이를 단순히 패턴으로 연결함으로써 구성할 수 있다. 이는 래치클럭입력단자와 출력단자사이에서 지연기를 통하여 지연되는 시간이 극히 짧은 시간이므로 별도의 지연소자를 구비함이 없이 단자들 사이에 라인을 연결함으로써 이룰 수 있다.
상기에서 기술한 바와 같은 방법으로 구현하면, 즉 캐쉬메모리의 흘드(hold)타임과 CPU의 래치클럭을 이용하여 속도가 다소 늦은 캐쉬메모리를 사용하더라도 1클럭싸이클에 억세스가 가능하도록 하는 것으로서 다음의 예를 들어 설명한다.
시스템이 50MHz의 마이크로프로세서와 15ns의 속도를 가지는 캐쉬메모리를 사용한다고 가정하면, 캐쉬메모리가 제공하는 최소의 메모리 억세스타임은 다음과 같다. 마이크로프로세서가 구동하는 캐쉬메모리외 어드레스가 유효하게 되는 시간 즉 캐쉬메모리 어드레스 셋업시간은 7ns이고(worst case), 캐쉬메모리가 상기 캐쉬메모리 어드레스를 입력으로 하여 데이터를 출력할 때까지 상기 캐쉬메모리 어드레스는 일정한 값을 유지하고 있어야 하므로 여기에 소요되는 시간은 15ns가 필요하고, 캐쉬메모리에서 데이터를 출력하는데 필요한 시간 즉 데이타 셋업시간은 1ns이다. 상기 7ns, 15ns, 1ns는 모두 마이크로프로세서, 캐쉬메모리의 규격(spec.)상 요구되는 값이다. 따라서 상기의 규격을 가진 캐쉬메모리를 사용할 경우, 마이크로프로세서가 정상적으로 캐쉬메모리의 데이터를 독출하는데 소요되는 시간은 7ns+15ns+1ns=23ns가 된다. 그런데 마이크로프로세서의 동작 클럭은 1주기가 20ns가 되므로 종래의 경우에는 1클럭주기를 초과하게 되어 마이크로프로세서가 캐쉬메모리의 데이터를 억세스하기 위해서는 2클럭이 필요하다. 그러나, 본 발명에서는 CPU(10)의 래치클럭이 일정시간 지연되도록 하여, 예를 들면 3∼4ns 지연되도록 하여 CPU의 1클럭주기에 데이타를 래치하도록 구성함으로써 CPU(10)가 캐쉬메모리 데이타를 1클럭주기에 억세스하는데 전혀 지장이 없도록 된다.
이러한 과정을 제2도의 타이밍도를 참조하여 설명한다. 제2a도는 클럭 주파수가 50MHz인 CPU(10)의 클럭신호를 도시한 것이다. 즉 클럭의 주기는 20ns이다. 제2B도는 CPU(10)가 캐쉬메모리(50)을 억세스하기 위해 구동한 캐쉬메모리의 어드레스에 대한 타이밍도를 도시한 것으로서, 상기 캐쉬메모리 어드레스 셋업시간이 규격상으로 7ns이므로 상기 CPU(10)가 구동한 캐쉬메모리(50)의 어드레스는 CPU클럭이 하강하고 나서(falling edge) a되는 시간(7ns)이 지난 후에 유효한(valid) 값을 갖는다.
CPU(10)가 캐쉬메모리의 데이타를 읽어오기 위해 어드레스를 구동하면, 캐쉬메모리(50)는 상기 CPU클럭이 폴링엣지가 되고 난 후 7ns후에 유효한 어드레스를 받고, 상기 어드레스가 15ns동안 유효한 값을 유지하고 있으면(이를 어드레스 홀드(hold)시간이라 함), 유효한 데이타를 데이터버스를 통해 CPU(10)쪽으로 출력한다. 그런데 캐쉬메모리(50)가 유효한 데이터를 출력하는데 필요한 데이터 셋업시간은 1ns이므로, 전체적으로 CPU(10)가 정상적으로 캐쉬메모리(50)의 데이터를 독출하는데 소요되는 시간은 7ns+15ns+1ns=23ns가 된다. 그런데 CPU(10)의 동작 클럭은 1주기가 20ns가 되므로 1클럭주기를 초과하게 되어 CPU(10)가 캐쉬메모리(50)의 데이터를 1클럭 내에서는 억세스하지 못하고, 2클럭이 필요하다. 그래서 상기 20ns가 되는 CPU(10)의 래치클럭을 적어도 3ns 이상 지연(delay)시키면 상기 23ns되는 데이터 억세스 시간에 맞게 데이터를 억세스할 수 있다.
제2c도는 데이터 억세스를 위해 필요한 클럭 지연시간(b)을 나타낸 것이며 b=a+15+1-20=3ns가 된다. 이때, 데이타 홀드시간(d)은 캐쉬메모리의 사양(spec.)으로 4ns이다.
따라서, 별도의 래치클럭은 제2d도에 도시된 것럼 c시간 지연시킨 이후에 래치하면 된다. 여기서 데이타가 유효한 창폭은 클럭대비 3ns에서 11ns까지 약8ns동안 유효하므로 c는 3ns≤c≤11ns로 지연수단을 이용하여 지연을 조정하여 CPU가 독출시간을 래치하도록 공급한다. 이는 CPU의 1클럭주기가 캐쉬메모리의 억세스 타임을 초과할 때 효율적으로 캐쉬메모리를 독출할 수 있도록 한다. 그리고 상기 지연기는 래치클럭을 지연시키는 데 주목적이 있는 만큼 지연기는 중앙처리장치의 외부 혹은 내부에 위치함에 제한받지 않는다.
상기와 같이 본 발명은 고주파수의 마이크로프로세서와 캐쉬메모리 사이의 효율적인 억세스를 위하여 메모리의 홀드타임과 별도의 CPU래치클럭을 이용하여 1클럭싸이클에 억세스가 가능하도록 할 수 있기 때문에 고주파수에서 다소 속도가 늦은 메모리를 사용해도 효율적으로 억세스를 할 수 있는 효과가 있다.

Claims (2)

  1. 중앙처리장치(CPU)와가 캐쉬메모리간의 데이타전송을 제어하는 장치에 있어서, 상기 중앙처리장치내부에서 래치클럭신호를 발생하는 래치클럭 발생기 ; 상기 래치클럭신호를 중앙처리장치로부터 출력하는 래치클럭 출력단자와 상기 중앙처리장치의 래치클럭 입력단자사이에 접속되어 상기 래치클럭신호를 지연시키는 지연수단; 및 상기 지연수단에 의하여 지연된 신호를 클럭신호로 하여 상기 캐쉬메모리로부터 독출된 데이타를 래치하는 플립플롭수단을 포함하는 것을 특징으로 하는 클럭신호 조정회로.
  2. 제1항에 있어서, 상기 지연수단은 패턴라인으로 형성되는 것을 특징으로 하는 클럭신호 조정회로.
KR1019930017548A 1993-08-31 1993-08-31 캐쉬메모리 억세스 타임조정회로 KR960011280B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019930017548A KR960011280B1 (ko) 1993-08-31 1993-08-31 캐쉬메모리 억세스 타임조정회로

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019930017548A KR960011280B1 (ko) 1993-08-31 1993-08-31 캐쉬메모리 억세스 타임조정회로

Publications (2)

Publication Number Publication Date
KR950006606A KR950006606A (ko) 1995-03-21
KR960011280B1 true KR960011280B1 (ko) 1996-08-21

Family

ID=19362756

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019930017548A KR960011280B1 (ko) 1993-08-31 1993-08-31 캐쉬메모리 억세스 타임조정회로

Country Status (1)

Country Link
KR (1) KR960011280B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010237739A (ja) * 2009-03-30 2010-10-21 Fujitsu Ltd キャッシュ制御装置,情報処理装置およびキャッシュ制御プログラム

Also Published As

Publication number Publication date
KR950006606A (ko) 1995-03-21

Similar Documents

Publication Publication Date Title
US5254888A (en) Switchable clock circuit for microprocessors to thereby save power
US5732250A (en) Multi-function microprocessor wait state mechanism using external control line
US5564042A (en) Asynchronous clock switching between first and second clocks by extending phase of current clock and switching after a predetermined time and appropriated transitions
US6989695B2 (en) Apparatus and method for reducing power consumption by a data synchronizer
US5519872A (en) Fast address latch with automatic address incrementing
US5210858A (en) Clock division chip for computer system which interfaces a slower cache memory controller to be used with a faster processor
US6061293A (en) Synchronous interface to a self-timed memory array
US5777500A (en) Multiple clock source generation with independently adjustable duty cycles
KR20030064376A (ko) 클럭이 전송되는 i/o 시스템을 위한 효율적인 클럭 시작및 정지 장치
US5522048A (en) Low-power area-efficient and robust asynchronous-to-synchronous interface
US5197126A (en) Clock switching circuit for asynchronous clocks of graphics generation apparatus
US6584536B1 (en) Bus transaction accelerator for multi-clock systems
US6424179B1 (en) Logic unit and integrated circuit for clearing interrupts
KR960011280B1 (ko) 캐쉬메모리 억세스 타임조정회로
US6748513B1 (en) Method and apparatus for a low latency source-synchronous address receiver for a host system bus in a memory controller
JPH06196997A (ja) データ出力装置とその方法および記憶装置
KR940001028Y1 (ko) 캐쉬 메모리 클럭 제어회로
US6202113B1 (en) Bank register circuit for a multiply accumulate circuit
US6026453A (en) System for facilitating serial data communications utilizing number of cycles input signal remained asserted to indicate data output logical state
US7065669B2 (en) System and method for providing a write strobe signal to a receiving element before both an address and data signal
JPH07146842A (ja) バスインターフェース回路
KR940001827Y1 (ko) 컴퓨터의 클럭 지연 회로
Muegge et al. 36 bit wide FIFO for deep, bus oriented applications
KR100284990B1 (ko) 1/4 싸이클 증가의 스트레치 클럭을 발생하기 위한 회로 및 방법
KR20050122973A (ko) 개선형 마이크로컨트롤러 버스 구조의 전력 소비 감소 장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J2X1 Appeal (before the patent court)

Free format text: APPEAL AGAINST DECISION TO DECLINE REFUSAL

G160 Decision to publish patent application
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20040729

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee