KR970010368B1 - 캐시라인 리프레이스장치 및 방법 - Google Patents
캐시라인 리프레이스장치 및 방법 Download PDFInfo
- 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
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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0844—Multiple simultaneous or quasi-simultaneous cache accessing
- G06F12/0855—Overlapped cache accessing, e.g. pipeline
- G06F12/0859—Overlapped 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)
- CPU와 주메모리와 캐시메모리를 구비한 컴퓨터시스템에서, 캐시미스가 발생하였을 때 CPU/캐시버스의 캐시라인을 주메모리로 라이트백하고 원하는 캐시라인을 주메모리로부터 베모리버스로 리드하여 CPU/캐시버스로 전송하기 위한 캐시라인 리프레이스장치에 있어서, CPU/캐시버스의 라이트백데이타를 저장하기 위한 제1저장수단; 주메모리로부터 메모리버스로 리드한 데이타를 저장하기 위한 제2저장수단; 및 상기 제2저장수단에 저장된 데이타를 CPU/캐시버스로 전송한 다음, 계속하여 메모리버스의 데이타를 CPU/캐시버스로 전송하는 멀티플렉서를 포함함을 특징으로 하는 캐시라인 리프레이스장치.
- 제1항에 있어서, 상기 제2저장수단에 데이타가 저장될 때 카운트값을 증가하고, 상기 제2저장수단에서 데이타가 독출될 때 상기 카운트값을 감소하는 레지스터를 더 구비하여, 상기 멀티플렉서가 상기 레지스터의 카운트값에 따라 상기 제2저장수단에 저장된 데이타 또는 메모리버스의 데이타를 선택하여 CPU/캐시버스로 전송하는 것을 특징으로 하는 캐시라인 리프레이스장치.
- 제1항에 있어서, 상기 제1저장수단의 억세스레이턴시는 주메모리의 억세스레이턴시보다 작음을 특징으로 하는 캐시라인 리프레이스장치.
- 제1항에 있어서, 상기 제1저장수단 및 상기 제2저장수단은 데이타의 입출력이 선입선출방식으로 이루어짐을 특징으로 하는 캐시라인 리프레이스장치.
- CPU와 주메모리와 캐시메모리를 구비한 컴퓨터시스템에서, 캐시미스가 발생하였을 때, CPU/캐시버스의 캐시라인을 주메모리로 라이트백하고, 원하는 캐시라인을 주메모리로부터 메모리버스로 리드하여 CPU/캐시버스로 전송하기 위한 캐시라인 리프레이스 방법에 있어서, 주메모리 라이트백 할 데이타를 제1버퍼에 저장하는 제1과정 ; 상기 제1과정 동안 주메모리로부터 메모리버스로 리드한 데이타를 제2버퍼에 저장하는 제2과정 ; 상기 제2버퍼에 저장된 데이타를 CPU/캐시버스로 전송한 다음, 계속하여 메모리버스의 데이타를 CPU/캐시버스로 전송하는 제3과정 ; 및 상기 제1버퍼에 저장된 데이타를 주메모리에 라이트백하는 제4과정으로 이루어짐을 특징으로 하는 캐시라인 리프레이스방법.
- 제5항에 있어서, 상기 제2과정은, 상기 제3과정에서 상기 제2버퍼에 저장된 데이타를 CPU/캐시버스로 전송하는 동안에, 주메모리로부터 메모리버스로 리드로 데이타를 상기 제2버퍼에 계속하여 저장하는 것을 특징으로 하는 캐시라인 리프레이스방법.
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)
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)
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 |
-
1994
- 1994-01-18 KR KR1019940000879A patent/KR970010368B1/ko not_active IP Right Cessation
- 1994-05-26 JP JP11277394A patent/JP3534822B2/ja not_active Expired - Lifetime
- 1994-06-16 US US08/260,783 patent/US5526508A/en not_active Expired - Lifetime
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 |