KR970010368B1 - 캐시라인 리프레이스장치 및 방법 - Google Patents

캐시라인 리프레이스장치 및 방법 Download PDF

Info

Publication number
KR970010368B1
KR970010368B1 KR1019940000879A KR19940000879A KR970010368B1 KR 970010368 B1 KR970010368 B1 KR 970010368B1 KR 1019940000879 A KR1019940000879 A KR 1019940000879A KR 19940000879 A KR19940000879 A KR 19940000879A KR 970010368 B1 KR970010368 B1 KR 970010368B1
Authority
KR
South Korea
Prior art keywords
data
bus
cache
cpu
memory
Prior art date
Application number
KR1019940000879A
Other languages
English (en)
Other versions
KR950024323A (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 KR1019940000879A priority Critical patent/KR970010368B1/ko
Priority to JP11277394A priority patent/JP3534822B2/ja
Priority to US08/260,783 priority patent/US5526508A/en
Publication of KR950024323A publication Critical patent/KR950024323A/ko
Application granted granted Critical
Publication of KR970010368B1 publication Critical patent/KR970010368B1/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
    • 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
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0855Overlapped cache accessing, e.g. pipeline
    • G06F12/0859Overlapped cache accessing, e.g. pipeline with reload from main memory

Abstract

내용없음.

Description

캐시라인 리프레이스장치 및 방법
제1도는 종래의 캐시라인 리프레이스 사이클 타이밍도.
제2도는 종래의 다른 캐시라인 리프레이스 사이클 타이밍도.
제3도는 본 발명에 의한 캐시라인 리프레이스장치의 구성블록도.
제4도는 본 발명에 의한 캐시라인 리프레이스 사이클 타이밍도.
제5도는 본 발명에 의한 캐시라인 리프레이스 사이클의 흐름도.
* 도면의 주요부분에 대한 부호의 설명
31 : CPU/캐시버스 32 : 메모리버스
35 : 라이트백버퍼 36 : 리드버퍼
37 : 레지스터 38 : 멀티플렉서
본 발명은 캐시메모리를 사용하는 컴퓨터시스템에 관한 것으로 특히 캐시미스가 발생하였을 때 캐시라인의 주메모리로의 라이트백(Write-back)과 원하는 캐시라인의 주메모리로부터의 리드(Read)로 이루어지는 캐시라인 리프레이스(Cache line replace)장치 및 방법에 관한 것이다.
컴퓨터시스템에서 캐시메모리(Cache Memory)는 중앙처리장치(Central Processing Unit: 이하 CPU라 칭함) 및 버스(Bus)의 처리속도와 비교하여 상대적으로 저속인 주메모리(DRAM)를 억세스(Accesss)할 때 발생하는 시스템 퍼포먼스(System Performance)의 손실을 줄이기 위하여 사용한다.
캐시메모리는 주메모리와 CPU사이에 설치되는 고속의 버퍼(Buffer)로서, 현재 사용하고 있는 주메모리 내용의 일부인 사용빈도가 높은 영역의 데이타를 기억하며, 이반적으로 주메모리의 5~10배 고속이기 때문에 실효 메모리 억세스 시간을 단축한다.
그러나, 원하는 데이타가 캐시메모리상에 존재하지 않는 캐시미스(Cache Miss)가 발생한 때 또는 새로운 데이타를 읽어 저장한 캐시메모리 공간이 없을 때에는, 캐시라인을 주메모리로 라이트백(Write-back)하고 원하는 캐시라인을 주메모리로부터 리드(Read)하는 과정으로 이루어지는 캐시라인 리프레이스 사이클이 캐시라인 단위로 일어나게 된다.
이러한 캐시라인 리프레이스 사이클은 라이트백사이클과 리드사이클 모두가 주메모리를 상대로 일어나기 때문에 시스템 퍼포먼스에 끼치는 영향이 크다.
제1도는 종래의 캐시라인 리프레이스 사이클의 타이밍도를 도시한다. 모든 처리과정은 주메모리를 상대로 일어나므로, 전체 타이밍은 주메모리로 사용되는 DRAM의 억세스레이턴시(Access Latency)에 종속적이다. (1A)는 버스의 어드레스, (1B)는 버스의 데이타를 나타내며, (101)과 (102)는 주메모리의 억세스레이턴시, 데이타 1~n은 1-캐시라인의 사이즈를 의미한다.
라이트백사이클(103)은 라이트백어드레스(11)에 의해 주메모리의 억세스레이턴시(101)가 경과한 다음 데이타(13)를 라이트백하고, 리드사이클(104)은 리드어드레스(12)에 의해 주메모리의 억세스레이턴시(102)가 경과한 후에 데이타(14)를 리드한다.
결과적으로 CPU가 원하는 데이타를 읽는 시점은 주메모리의 억세스레이턴시에 의하여 결정되는 라이트백사이클과 리드사이클을 합한 ⓐ지점이 된다.
제1도에 도시한 캐시라인 리프레이스 사이클의 문제점을 보완하고 퍼포먼스를 향상하기 위하여, 속도가 빠른 라이트백버퍼를 부가하여 캐시미스일때 버퍼에 라이트백데이타를 저장하는 FRWB(Rlagged Register Write Back)방식을 사용하여 CPU가 조금이라도 빨리 원하는 데이타를 갖도록 하는 방법이 이용되고 있다. 예로서 인텔(Intel)의 머큐리칩셋(Mercury Chipset) 82433LX 캐시 콘트롤러(Cache Controller)가 있다.
제2도는 종래의 FRWB방식에 의한 캐시라인 리프레이스 사이클의 타이밍도를 도시한다. (2A)는 CPU/캐시버스의 어드레스, (2B)는 CPU/캐시버스의 데이타, (2C)는 메모리버스의 어드레스, (2D)는 메모리버스의 데이타를 나타낸다.
CPU/캐시버스는 라이트백데이타(23)를 라이트백버퍼에 저장하는 사이클(201)가 메모리버스의 데이타(27)를 CPU/캐시버스로 전송하는 사이클(202)로 이루어지며, 메모리버스는 메모리버스에 주메모리의 데이타(27)를 리드하는 사이클(205)과 라이트백버퍼에 저장된 데이타(23)를 주메모리에 라이트(28)하는 사이클(206)로 이루어진다.
CPU/캐시버스의 라이트백데이타를 라이트백버퍼에 저장(201)하고, 그와 동시에 주메모리를 억세스하여 데이타를 리드(205)하기 시작한다. CPU/캐시버스의 리드사이클(202)은 주메모리의 억세스레이턴시에 관계없이 라이트백데이타의 저장이 완료한 다음 바로 시작되어, CPU가 원하는 데이타를 읽는 시점은 ⓒ시점이 된다. 그리고, 라이트백버퍼에 저장된 데이타(23)는 리드사이클(202)이 끝나는 시점(ⓒ시점)부터 주메모리에 라이트백(206)되어, 메모리버스의 전체 사이클은 ⓓ시점에서 완료된다.
따라서, 라이트백사이클(201)에서 주메모리를 직접 억세스하는 대신 버퍼를 이용하여, 라이트백사이클로 인한 소요시간을 줄여줌으로써, CPU가 원하는 데이타를 읽을 수 있는 시간을 단축할 수 있다.
그러나, CPU/캐시버스의 데이타를 라이트백버퍼에 저장하는 데 소요되는 시간(203)은, 일반적으로 주메모리의 억세스레이턴시보다 길며, 이는 캐시라인 사이즈가 커질수록 더 길어지기 때문에 사이클 타임을 충분히 줄였다고는 할 수 없다.
또한 라이트백데이타(23)를 라이트백버퍼에 저장(201)하고 리드사이클(202)이 끝난 다음(ⓒ지점), 실제로 주메모리에 라이트백(206)한다. 결과적으로, 캐시라인 리프레이스 사이클이 메모리버스를 점유하는 시간(205,206)은 버퍼링에 소요되는 시간과 주메모리 억세스레이턴시의 차이만큼 더 늘어나며, 제1도의 전체 사이클(103,104)보다 더 길어진다.
따라서, 메모리버스는 데이타를 보낼 수 있는 최대한계가 정해져 있으므로 메모리버스를 점유하는 밴드폭(Bandwidth)의 손실을 초래한다. 특히, 멀티-프로세서 시스템(Multi-processor System)에서는 여러 개의 프로세서가 하나의 메모리버스를 공통으로 점유하기 때문에 메모리 밴드폭이 중요한 퍼포먼스 요소 중에 하나가 된다.
따라서, 본 발명의 목적은 캐시미스가 발생하였을 때 라이트백버퍼에 따른 메모리 밴드폭의 손실을 해결하고 최대한으로 빠르게 CPU가 데이타를 읽을 수 있는 캐시라인 리프레이스장치 및 방법을 제공하는 데 있다.
상기의 목적을 달성하기 위한 본 발명의 장치는, CPU와 주메모리와 캐시메모리를 구비한 컴퓨터시스템에서, 캐시미스가 발생하였을 때 CPU/캐시버스의 캐시라인을 주메모리로 라이트백하고 원하는 캐시라인을 주메모리로부터 메모리버스로 리드하여 CPU/캐시버스를 전송하기 위한 캐시라인 리프레이스장치에 있어서, CPU/캐시버스의 라이트백데이타를 저장하기 위한 제1저장수단; 주메모리로부터 메모리버스로 리드한 데이타를 저장하기 위한 제2저장수단; 및 상기 제2저장수단에 저장된 데이타를 CPU/캐시버스로 전송한 다음, 계속하여 메모리버스의 데이타를 CPU/캐시버스로 전송하는 멀티플렉서를 포함함을 특징으로 한다.
상기의 목적을 달성하기 위한 본 발명의 방법은, CPU와 주메모리와 캐시메모리를 구비한 컴퓨터시스템에서 캐시미스가 발생하였을 때, CPU/캐시버스의 캐시라인을 주메모리로 라이트백하고, 원하는 캐시라인을 주메모리로부터 메모리버스로 리드하여 CPU/캐시버스로 전송하기 위한 캐시라인 리프레이스방법에 있어서, 주메모리로 라이트백할 데이타를 제1버퍼에 저장하는 제1과정; 상기 제1과정 동안 주메모리로부터 메모리버스로 리드한 데이타를 제2버퍼에 저장하는 제2과정; 상기 제2버퍼에 저장된 데이타를 CPU/캐시버스로 전송한 다음, 계속하여 메모리버스의 데이타를 CPU/캐시버스로 전송하는 제3과정; 및 상기 제1버퍼에 저장된 데이타를 주메모리에 라이트백하는 제4과정으로 이루어짐을 특징으로 한다.
이하에서 첨부한 도면을 참조하여 본 발명의 실시예를 상세히 설명한다.
제3도는 본 발명에 의한 캐시라인 리프레이스장치의 구성블럭도로서, CPU/캐시버스(31)와 메모리버스(32) 사이에 라이트백버퍼(36), 리드버퍼(367), 버퍼카운트 레지스터(Buffer Count Register)(37), 그리고 멀티플렉서(Multiplexer: MUX)(38)를 구비한다.
라이트백버퍼(35)는 주메모리에 라이트백할 CPU/캐시버스(31)의 데이타를 임시로 저장하고, CPU/캐시버스(31)가 주메모리의 캐시라인을 모두 리드한 다음에 주메모리로 라이트백한다. 라이트백버퍼(35)는 라이트백사이클에서 비교적 느린 주메모리의 억세스레이턴시의 영향을 제거하기 위한 것이므로, CPU/캐시버스의 최대전송속도를 만족하여야 한다.
리드버퍼(36)는 라이트백데이타가 라이트백버퍼(35)에 저장되는 동안에 주메모리로부터 메모리버스(32)로 리드한 데이타를 저장하고, 라이트백데이타의 저장이 완료되면 곧바로 리드버퍼의 데이타가 멀티플렉서(38)를 통하여 CPU/캐시버스(31)로 전송된다.
버퍼카운터 레지스터(Buffer Count Register)(37)는 리드버퍼(36)에 데이타가 저장될 때 카운트값은 증가하고, 리드버퍼(36)에서 데이타가 독출될 때 카운트값을 감소한다.
멀티플렉서(Multiplexer: MUX)(38)는 버퍼카운트 레지스터(37)의 값에 따라 CPU/캐시버스로 전송되는 데이타 패스(pass)를 조정한다. 레지스터(37)의 값이 0보다 크면 리드버퍼(36)에 저장된 데이타를 CPU/캐시버스(31)로 전송하고, 레지스터(37)의 값이 0이 되면 계속하여 메모리버스(32)의 데이타를 CPU/캐시버스(31)로 전송한다.
라이트백버퍼(35)의 저장용량은 캐시라인 사이즈와 동일하게 구성하고, 리드버퍼(36)의 저장용량은 캐시라인 사이즈와 CPU/캐시버스 대 메모리버스의 속도차 등에 의하여 달라질 수 있으나, 최대로 캐시라인 사이즈와 같거나 보통은 그보다 작은 용량으로 구성할 수 있다. 또한, 라이트백버퍼(35)와 리드버퍼(36)는 선입선출(First-In- First-Out; FIFO)방식으로 동작한다.
제4도는 본 발명에 의한 라인 리프레이스장치에 관계되는 사이클 타이밍도이다. (4A)는 CPU/캐시버스의 어드레서, (4B)는 CPU/캐시버스의 데이타, (4C)는 리드버퍼의 데이타, (4D)는 메모리버스의 어드레스, 그리고 (4E)는 메모리버스의 데이타를 나타낸다.
CPU/캐시버스는 라이트백데이타(43)를 라이트백버퍼에 저장하는 사이클(401)과 메모리버스의 데이타(48)를 CPU/캐시버스로 전송하는 사이클(402)로 이루어지고, 메모리버스는 주메모리의 데이타(48)를 리드하는 사이클(405)과 라이트백버퍼에 저장된 데이타(43)를 주메모리에 라이트백하는 사이클(406)로 이루어진다.
라이트백버퍼는 캐시라인 리프레이스 트랜스액션(Transaction)이 발생하면, 라이트백데이타(43)를 저장한다. 이와 동시에 리드트랜스액션이 일어나며, 이 때 라이트백데이타의 저장 종료여부와 무관하게 주메모리의 억세스레이턴시(403)가 경과하면 주메모리의 데이타를 메모리버스로 리드(405)하여 리드버퍼에 차례대로 데이타를 저장(45)하며, 하나의 데이타가 채워질 때마다 버퍼카운트 레지스터의 값은 하나씩 증가한다.
라이트백데이타의 저장이 끝나면, 바로 리드버퍼에 저장된 데이타(45)가 CPU/캐시버스로 전송되며, 하나의 데이타가 읽혀질 때마다 버퍼카운트 레지스터의 값은 하나씩 감소한다.
리드버퍼는 데이타(45)를 CPU/캐시버스로 전송하는 동안에도 리드버퍼에 저장된 데이타가 모두 읽혀지기 전에는 메모리버스의 데이타를 상기 리드버퍼에 계속하여 저장하면서 데이타를 CPU/캐시버스로 전송한다.
리드버퍼에 저장된 데이타(45)가 모두 읽혀지면, 즉 버퍼카운트 레지스터의 값이 0이 되면, 메모리버스의 데이타(48)가 CPU/캐시버스로 전송된다. 제4도에서 메모리버스의 1~5번째 데이타는 리드버퍼에 저장된 후 CPU/캐시버스로 전송되고, 그 다음 데이타부터는 메모리버스로부터 전송된다.
CPU/캐시버스에 메모리버퍼의 데이타가 모두 전송되면(ⓖ지점), CPU는 데이타를 리드하고, 동시에 라이트백버퍼에 저장된 데이타(43)가 주메모리에 라이트백(406)된다.
본 발명과 종래의 기술에 의한 캐시라인 리프레이스 사이클의 타이밍을 서로 비교하여 설명하면 다음과 같다.
본 발명에 의하면, CPU가 원하는 데이타를 읽는 시점(ⓖ시점)은 라이트백데이타를 라이트백버퍼에 저장하는 사이클(401)과 메모리버스의 데이타를 CPU/캐시버스로 전송하는 사이클(402)의 주기를 합한 것으로, 이는 주메모리의 데이타를 메모리버스로 리드하는 사이클(405)의 주기와 동일하다.
그리고, 라이트 백버퍼에 저장된 데이타(43)는 CPU/캐시버스에 데이타가 모두 전송된 다음(ⓖ시점)에 주메모리에 라이트백(406)되며 이는 주메모리의 억세스레이턴시(404)에 의존하는 메모리버스의 라이트사이클(406)의 주기와 동일하다.
따라서, 본 발명에 의한 메모리버스의 전체 사이클의 메모리 밴드폭(405,406)은 제1도의 전체 사이클의 메모리 밴드폭(103,104)과 동일하여 밴드폭의 손실이 없다.
본 발명에 의한 캐시라인 리프레이스 사이클에서는 메모리버스의 리드사이클(405) 한 주기만 끝나면 CPU가 원하는 데이타를 읽을 수 있으므로, CPU가 데이타를 읽을 수 있는 시점을 최대한으로 앞당긴다. 또한, 라이트백데이타의 저장(401)이 메모리버스의 리드사이클(405)과 동시에 일어나 빠른 속도로 끝나기 때문에 주메모리의 억세스레이컨시(403)에 의존하는 메모리버스의 리드사이클(405)에 영향을 미치지 아니한다.
제5도는 본 발명에 의한 캐시라인 리프레이스 사이클의 흐름도이다. 라이트백데이타를 라이트백버퍼에 저장하고, 동시에 라이트백데이타를 모두 저장하는 동안 메모리버스이 데이타를 리드버퍼에 저장한다(51), 라이트백데이타의 저장이 완료되면(52) CPU/캐시버스는 리드버퍼에 저장된 데이타를 읽고(53), 리드버퍼의 데이타를 모두 읽은 다음부터 메모리버스의 데이타를 읽는다(54), CPU/캐시버스에 메모리버스의 데이타가 모두 전송되면, CPU는 CPU/캐시버스에서 데이타를 읽고, 또한 라이트백버퍼에 저장된 데이타는 주메모리에 라이트백(55)하므로서, 전체 사이클이 완료한다.
상술한 바와 같이 본 발명에 의하면, 캐시라인 리프레이스 사이클에서 라이트백데이타를 라이트백버퍼에 저장하고 동시에 주메모리의 데이타를 리드버퍼에 저장하여, CPU/캐시버스로 데이타를 전송할 때 리드버퍼에 저장된 데이타를 바로 읽어들이므로서, 라이트백버퍼링에 의한 시간 지연을 방지하고, 또한 메모리 밴드폭의 손실없이 CPU가 고속으로 데이타를 리드할 수 있는 잇점이 있다.

Claims (6)

  1. CPU와 주메모리와 캐시메모리를 구비한 컴퓨터시스템에서, 캐시미스가 발생하였을 때 CPU/캐시버스의 캐시라인을 주메모리로 라이트백하고 원하는 캐시라인을 주메모리로부터 베모리버스로 리드하여 CPU/캐시버스로 전송하기 위한 캐시라인 리프레이스장치에 있어서, CPU/캐시버스의 라이트백데이타를 저장하기 위한 제1저장수단; 주메모리로부터 메모리버스로 리드한 데이타를 저장하기 위한 제2저장수단; 및 상기 제2저장수단에 저장된 데이타를 CPU/캐시버스로 전송한 다음, 계속하여 메모리버스의 데이타를 CPU/캐시버스로 전송하는 멀티플렉서를 포함함을 특징으로 하는 캐시라인 리프레이스장치.
  2. 제1항에 있어서, 상기 제2저장수단에 데이타가 저장될 때 카운트값을 증가하고, 상기 제2저장수단에서 데이타가 독출될 때 상기 카운트값을 감소하는 레지스터를 더 구비하여, 상기 멀티플렉서가 상기 레지스터의 카운트값에 따라 상기 제2저장수단에 저장된 데이타 또는 메모리버스의 데이타를 선택하여 CPU/캐시버스로 전송하는 것을 특징으로 하는 캐시라인 리프레이스장치.
  3. 제1항에 있어서, 상기 제1저장수단의 억세스레이턴시는 주메모리의 억세스레이턴시보다 작음을 특징으로 하는 캐시라인 리프레이스장치.
  4. 제1항에 있어서, 상기 제1저장수단 및 상기 제2저장수단은 데이타의 입출력이 선입선출방식으로 이루어짐을 특징으로 하는 캐시라인 리프레이스장치.
  5. CPU와 주메모리와 캐시메모리를 구비한 컴퓨터시스템에서, 캐시미스가 발생하였을 때, CPU/캐시버스의 캐시라인을 주메모리로 라이트백하고, 원하는 캐시라인을 주메모리로부터 메모리버스로 리드하여 CPU/캐시버스로 전송하기 위한 캐시라인 리프레이스 방법에 있어서, 주메모리 라이트백 할 데이타를 제1버퍼에 저장하는 제1과정 ; 상기 제1과정 동안 주메모리로부터 메모리버스로 리드한 데이타를 제2버퍼에 저장하는 제2과정 ; 상기 제2버퍼에 저장된 데이타를 CPU/캐시버스로 전송한 다음, 계속하여 메모리버스의 데이타를 CPU/캐시버스로 전송하는 제3과정 ; 및 상기 제1버퍼에 저장된 데이타를 주메모리에 라이트백하는 제4과정으로 이루어짐을 특징으로 하는 캐시라인 리프레이스방법.
  6. 제5항에 있어서, 상기 제2과정은, 상기 제3과정에서 상기 제2버퍼에 저장된 데이타를 CPU/캐시버스로 전송하는 동안에, 주메모리로부터 메모리버스로 리드로 데이타를 상기 제2버퍼에 계속하여 저장하는 것을 특징으로 하는 캐시라인 리프레이스방법.
KR1019940000879A 1994-01-18 1994-01-18 캐시라인 리프레이스장치 및 방법 KR970010368B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1019940000879A KR970010368B1 (ko) 1994-01-18 1994-01-18 캐시라인 리프레이스장치 및 방법
JP11277394A JP3534822B2 (ja) 1994-01-18 1994-05-26 キャッシュラインリプレーシング装置及び方法
US08/260,783 US5526508A (en) 1994-01-18 1994-06-16 Cache line replacing system for simultaneously storing data into read and write buffers having multiplexer which controls by counter value for bypassing read buffer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019940000879A KR970010368B1 (ko) 1994-01-18 1994-01-18 캐시라인 리프레이스장치 및 방법

Publications (2)

Publication Number Publication Date
KR950024323A KR950024323A (ko) 1995-08-21
KR970010368B1 true KR970010368B1 (ko) 1997-06-25

Family

ID=19375880

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019940000879A KR970010368B1 (ko) 1994-01-18 1994-01-18 캐시라인 리프레이스장치 및 방법

Country Status (3)

Country Link
US (1) US5526508A (ko)
JP (1) JP3534822B2 (ko)
KR (1) KR970010368B1 (ko)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5812799A (en) * 1995-06-07 1998-09-22 Microunity Systems Engineering, Inc. Non-blocking load buffer and a multiple-priority memory system for real-time multiprocessing
US6801979B1 (en) * 1995-07-31 2004-10-05 Lexar Media, Inc. Method and apparatus for memory control circuit
US6076150A (en) * 1995-08-10 2000-06-13 Lsi Logic Corporation Cache controller with improved instruction and data forwarding during refill operation
GB2308903B (en) * 1996-01-05 2000-01-26 Advanced Risc Mach Ltd Cache memory circuit
US6038645A (en) * 1996-08-28 2000-03-14 Texas Instruments Incorporated Microprocessor circuits, systems, and methods using a combined writeback queue and victim cache
US5870573A (en) * 1996-10-18 1999-02-09 Hewlett-Packard Company Transistor switch used to isolate bus devices and/or translate bus voltage levels
WO2000030116A1 (en) * 1998-11-17 2000-05-25 Lexar Media, Inc. Method and apparatus for memory control circuit
US6298417B1 (en) * 1998-11-20 2001-10-02 International Business Machines Corporation Pipelined cache memory deallocation and storeback
IL129345A (en) * 1999-04-06 2004-05-12 Broadcom Corp Video encoding and video/audio/data multiplexing device
SE515897C2 (sv) * 1999-04-12 2001-10-22 Ericsson Telefon Ab L M Anordning och förfarande för en avdelad buffert
US6591316B1 (en) * 1999-05-20 2003-07-08 Marconi Communications, Inc. Avoiding fragmentation loss in high speed burst oriented packet memory interface
US6405285B1 (en) 1999-06-25 2002-06-11 International Business Machines Corporation Layered local cache mechanism with split register load bus and cache load bus
US6397300B1 (en) 1999-06-25 2002-05-28 International Business Machines Corporation High performance store instruction management via imprecise local cache update mechanism
US6434667B1 (en) 1999-06-25 2002-08-13 International Business Machines Corporation Layered local cache with imprecise reload mechanism
US6463507B1 (en) 1999-06-25 2002-10-08 International Business Machines Corporation Layered local cache with lower level cache updating upper and lower level cache directories
US6385694B1 (en) * 1999-06-25 2002-05-07 International Business Machines Corporation High performance load instruction management via system bus with explicit register load and/or cache reload protocols
US6418513B1 (en) 1999-06-25 2002-07-09 International Business Machines Corporation Queue-less and state-less layered local data cache mechanism
US6446166B1 (en) 1999-06-25 2002-09-03 International Business Machines Corporation Method for upper level cache victim selection management by a lower level cache
US7000081B2 (en) * 2002-02-12 2006-02-14 Ip-First, Llc Write back and invalidate mechanism for multiple cache lines
US7155548B2 (en) * 2003-11-04 2006-12-26 Texas Instruments Incorporated Sequential device control with time-out function
US7296109B1 (en) * 2004-01-29 2007-11-13 Integrated Device Technology, Inc. Buffer bypass circuit for reducing latency in information transfers to a bus
US20060282602A1 (en) * 2005-06-09 2006-12-14 Tse-Hsine Liao Data transmission device and method thereof
WO2007097003A1 (ja) * 2006-02-24 2007-08-30 Fujitsu Limited データ制御装置、データ制御方法およびデータ制御プログラム
JP4409620B2 (ja) 2006-02-27 2010-02-03 富士通株式会社 演算処理装置、キャッシュメモリ制御装置及び制御方法
CN101673247B (zh) * 2009-09-15 2011-10-19 威盛电子股份有限公司 内存管理系统与方法
US8720072B2 (en) 2010-08-11 2014-05-13 Thomas J. Bucco Razor with three-axis multi-position capability
KR101862785B1 (ko) * 2011-10-17 2018-07-06 삼성전자주식회사 타일 기반 렌더링을 위한 캐쉬 메모리 시스템 및 캐슁 방법
US20160179387A1 (en) * 2014-12-19 2016-06-23 Jayesh Gaur Instruction and Logic for Managing Cumulative System Bandwidth through Dynamic Request Partitioning

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4195340A (en) * 1977-12-22 1980-03-25 Honeywell Information Systems Inc. First in first out activity queue for a cache store
US5091846A (en) * 1986-10-03 1992-02-25 Intergraph Corporation Cache providing caching/non-caching write-through and copyback modes for virtual addresses and including bus snooping to maintain coherency
US5025366A (en) * 1988-01-20 1991-06-18 Advanced Micro Devices, Inc. Organization of an integrated cache unit for flexible usage in cache system design
US5222223A (en) * 1989-02-03 1993-06-22 Digital Equipment Corporation Method and apparatus for ordering and queueing multiple memory requests
US5155832A (en) * 1989-07-05 1992-10-13 Hewlett-Packard Company Method to increase performance in a multi-level cache system by the use of forced cache misses
US5043885A (en) * 1989-08-08 1991-08-27 International Business Machines Corporation Data cache using dynamic frequency based replacement and boundary criteria
US5206941A (en) * 1990-01-22 1993-04-27 International Business Machines Corporation Fast store-through cache memory
US5261066A (en) * 1990-03-27 1993-11-09 Digital Equipment Corporation Data processing system and method with small fully-associative cache and prefetch buffers
US5249271A (en) * 1990-06-04 1993-09-28 Emulex Corporation Buffer memory data flow controller
EP0468831B1 (en) * 1990-06-29 1997-10-15 Digital Equipment Corporation Bus protocol for write-back cache processor
US5404483A (en) * 1990-06-29 1995-04-04 Digital Equipment Corporation Processor and method for delaying the processing of cache coherency transactions during outstanding cache fills
GB2256512B (en) * 1991-06-04 1995-03-15 Intel Corp Second level cache controller unit and system
JP2881049B2 (ja) * 1991-07-30 1999-04-12 株式会社日立製作所 プリフェッチバッファ
EP0568231B1 (en) * 1992-04-29 1999-03-10 Sun Microsystems, Inc. Methods and apparatus for providing multiple outstanding operations in a cache consistent multiple processor computer system
US5471598A (en) * 1993-10-18 1995-11-28 Cyrix Corporation Data dependency detection and handling in a microprocessor with write buffer

Also Published As

Publication number Publication date
US5526508A (en) 1996-06-11
KR950024323A (ko) 1995-08-21
JPH07219844A (ja) 1995-08-18
JP3534822B2 (ja) 2004-06-07

Similar Documents

Publication Publication Date Title
KR970010368B1 (ko) 캐시라인 리프레이스장치 및 방법
US5751994A (en) System and method for enhancing computer operation by prefetching data elements on a common bus without delaying bus access by multiple bus masters
US5185694A (en) Data processing system utilizes block move instruction for burst transferring blocks of data entries where width of data blocks varies
US6321296B1 (en) SDRAM L3 cache using speculative loads with command aborts to lower latency
US5664150A (en) Computer system with a device for selectively blocking writebacks of data from a writeback cache to memory
US5752272A (en) Memory access control device with prefetch and read out block length control functions
US5918069A (en) System for simultaneously writing back cached data via first bus and transferring cached data to second bus when read request is cached and dirty
JP2000250813A (ja) I/oキャッシュ・メモリにおけるデータ管理方法
US6496905B1 (en) Write buffer with burst capability
JPH04233050A (ja) キャッシュメモリ交換プロトコル
US5151979A (en) Data processing system with information transfer bus and wait signal
EP0470739B1 (en) Method for managing a cache memory system
US5287512A (en) Computer memory system and method for cleaning data elements
KR100322223B1 (ko) 대기행렬및스누프테이블을갖는메모리제어기
US7406571B2 (en) Memory system and method for controlling the same, and method for maintaining data coherency
US5835945A (en) Memory system with write buffer, prefetch and internal caches
JPH0830546A (ja) バス制御装置
US8886895B2 (en) System and method for fetching information in response to hazard indication information
US7757046B2 (en) Method and apparatus for optimizing line writes in cache coherent systems
EP0471462A1 (en) Computer memory operating method and system
US20010034808A1 (en) Cache memory device and information processing system
EP1607869A1 (en) Data cache system
KR940007686A (ko) 캐시(Cache) 메모리를 가지는 프로세서(Processor)
US6298417B1 (en) Pipelined cache memory deallocation and storeback
KR970004520B1 (ko) 고속 메모리 제어방법 및 장치

Legal Events

Date Code Title Description
A201 Request for examination
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: 20110929

Year of fee payment: 15

FPAY Annual fee payment

Payment date: 20120927

Year of fee payment: 16

EXPY Expiration of term