KR0144093B1 - 다수의 프로세서가 하나의 캐쉬 메모리를 공유하는 시스템 장치 및 방법 - Google Patents
다수의 프로세서가 하나의 캐쉬 메모리를 공유하는 시스템 장치 및 방법Info
- Publication number
- KR0144093B1 KR0144093B1 KR1019940033090A KR19940033090A KR0144093B1 KR 0144093 B1 KR0144093 B1 KR 0144093B1 KR 1019940033090 A KR1019940033090 A KR 1019940033090A KR 19940033090 A KR19940033090 A KR 19940033090A KR 0144093 B1 KR0144093 B1 KR 0144093B1
- Authority
- KR
- South Korea
- Prior art keywords
- address
- processor
- unit
- memory
- cache
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/167—Interprocessor communication using a common memory, e.g. mailbox
Abstract
본 발명은 다중 프로세서 시스템에서 하나의 보드내에 2개의 프로세서가 존재할시, 이 프로세서들이 사용하는 캐쉬(cache) 메모리와 스테이트(state) 메모리 및 태그 (tag) 메모리를 서로 공유하도록 하여 각 프로세서에서 공급하는 어드레스를 하나의 경로를 통해 제어할수 있도록한 2개의 프로세서가 하나의 캐쉬 메모리를 공유하는 시스템 장치 및 방법에 관한 것으로, 종래의 시스템은 각 프로세서 간에 캐쉬 코히어런시(coherency)를 충족시켜 주어야 하는 불편함이 있었는바, 본 발명은 종래의 이런 문제점을 해결하기 위하여 2개의 프로세서가 하나의 공유 캐쉬 메모리, 공유 스테이트 및 태그 메모리를 두고서 이들을 제어하기 위해 각 프로세서에서 공급하는 어드레스 및 시스템 버스로 부터의 어드레스를 받아들여 하나의 경로를 통해 캐쉬 메모리와 스테이트 및 태그 메모리를 제어할 수 있도록 하는 시스템 장치 및 방법을 제공하므로써, 각 프로세서간의 캐쉬 코히어런스를 조정하기 위해 복잡한 설계를 할 필요가 없어졌으며, 기존의 2개의 프로세서가 각각의 프로세서를 관리할때 자신의 캐쉬 메모리를 수정하면서 다른쪽 캐쉬 메모리도 수정해 주어야하는 번거로움을 없애는 효과가 있다.
Description
제 1 도는 본 발명의 전체 시스템을 나타내는 블럭도이다.
제 2 도는 본 발명의 일실시예에 따른 2개의 프로세서가 하나의 캐쉬 메로리를 공유하는 방법을 나타낸 플로우챠트이다.
*도면의 주요부분에 대한 부호의 설명
10 ; 제 1 프로세서부 10-1 : 제 1 프로세서 스누프부
20 ; 캐쉬부 20 -1, 30-1 : 태그 메모리
20-2, 30-2 : 스테이트 메모리 20 -3 : 캐쉬 메모리
30 : 스누프부 40 : 어드레스 제어부
50 : 제 1 버퍼 60 : 제 2 버퍼
70 : 제 2프로세서부 70-1 : 제 2프로세서 스누프부
본 발명은 2개의 프로세서가 하나의 캐쉬 메모리를 공유하는 시스템 장치 및 방법에 관한 것으로, 다중 프로세서 시스템에서 하나의 보드내에 2개의 프로세서가 존재할 시, 이 프로세서들이 사용하는 캐쉬(cache) 메모리와 스테이트(state) 메모리 및 태그 (tag) 메모리를 서로 공유하도록 하여 각 프로세서에서 공급하는 어드레스를 하나의 경로를 통해 제어할 수 있도록 한 2개의 프로세서가 하나의 캐쉬 메모리를 공유하는 시스템 장치 및 방법에 관한 것이다.
일반적으로, 하나의 보드내에 2개의 프로세서가 존재하는 시스템에는 각 프로세서에 따르는 캐쉬 메모리와 스테이트 및 태그 메모리가 하나씩 존재한다. 이와 같이 각 프로세서마다 각 메모리가 하나씩 존재하면 어떤 일을 수행함에 있어서 각 메모리들을 억세스 하는 경로가 복잡하고, 작업을 완료하였다 하여도 각 프로세서의 캐쉬 메모리간에 캐쉬 코히어런시(coherercy)를 충족시켜 주어야 하는 불편함이 있었다.
따라서 본 발명은 종래의 상기와 같은 문제점을 해결하기 위하여, 2개의 프로세서가 하나의 공유 캐쉬 메모리 및 공유 스테이트, 태그 메모리를 두고서 이들을 제어하기 위해 각 프로세서에서 공급하는 어드레스 및 시스템 버스로 부터의 어드레스를 받아들여 하나의 경로를 통해 캐쉬 메모리와 스테이트 및 태그 메모리를 제어할 수 있도록 하는 시스템 장치 및 방법을 제공하는 것을 특징으로 한다.
즉, 2개의 프로세서를 이용하는 시스템 장치에 있어서, 마이크로 프로세서로 부터 32비트의 어드레스를 어드레스 제어부에서 제공하는 제 1 프로세서부와; 어드레스 제어부에서 입력되는 어드레스를 1차로 필터링하여 상기 제 1프로세서부에 제공하고, 제 1프로세서부 내부에서 스누핑 하기 위한 어드레스를 제공하는 제 1프로세서 스누프부와; 상기 제 1 프로세서부 및 제 1프로세서 스누프부와 동일한 구조로 이루어진 제 2 프로세서부 및; 제 2 프로세서 스누프부와; 어드레스 제어부에서 생성된 어드레스를 제공받아 캐쉬 메모리의 더티블럭을 시스템 버스로 라이트백하기 위한 어드레스를 어드레스 제어부에 입력하는 캐쉬부와; 어드레스 제어부에서 생성된 스누프 어드레스를 태그 메모리와 스테이트 메모리에 저장하는 스누프(snoop)부와 ; 상기 각 프로세서부에서 제공되는 32비트의 어드레스를 입력받아 캐쉬부의 캐쉬 메모리와 스테이트 메모리 및 태그 메모리에 접근하기 위한 어드레스와, 스누프부의 스테이트 메모리와 태그 메모리에 접근하기 위한 어드레스를 각 프로세서부와 시스템 버스로부터 제공하는 어드레스를 멀티플랙싱하는 어드레스 제어부와; 상기 어드레스 제어부에서 멀티플랙싱된 어드레스를 시스템 버스에 접근하기 위해 일시적으로 저장하는 제 1 버퍼 및; 시스템 버스에서 제공되는 어드레스를 일시적으로 저장하는 제 2 버퍼로 이루어진 시스템 장치를 사용하는 것이고, 또한, 2개의 프로세서를 이용하는 시스템 방법에 있어서, 2개의 프로세서부에서 어드레스를 발생한 후, 각 프로세서 스누프부와 어드레스 제어부에 어드레스를 래치시키고, 라이트(write) 동작상태인지 판단하는 제 1 단계와; 상기 제 1단계를 수행한 후, 라이트 동작상태이면 각 프로세서 스누프부가 매치(match)되었는지 판단하여 매치되었으면 각 프로세서부에 어드레스를 발생하여 프로세서 내부동작을 수행하고, 상기 제 1 단게에서 라이트 동작상태가 아니거나 각 프로세서 스누프부가 매치되지 않았으면 어드레스 제어부에서 캐쉬부와 스누프에 어드레스를 발생시키는 제 2 단계와; 상기 제 2 단게를 수행한 후, 상기 어드레스 제어부에서 태그가 매치되었는지 판단하여 상기 태그가 매치되었으며 라이트 동작상태인지 판단하여 라이트 동작상태이면 캐쉬부와 스누프부에 태그, 스테이트 및 데이터를 저장하고, 라이트 동작상태가 아니면 캐쉬부의 데이터를 직접 읽어들인후 종료하는 제 3 단계와; 상기 제 3 단게에서 태그가 매치되어 있지 않았으면 더티블럭인가 판단하여 더티블럭이면 어드레스 제어부는 스누프부의 태그와 캐쉬부의 데이터를 읽은 후, 스누프부의 태그를 참조하여 라이트백 어드레스를 발생시키는 제 4단게와; 상기 제 4 단게에서 더티블럭이 아니면 어드레스 제어부는 메모리 어드레스를 발생시키고 메모리 보드로부터 해당 어드레스의 데이터를 읽어들인후 캐쉬부의 데이터부에 저장시킨 후 라이트 동작상태인지 판단하는 제 5 단계와; 상기 제 5 단게에서 라이트 동작상태이면 각 프로세서가 라이트 하려는 데이터를 캐쉬부와 스누프부에 태그, 스테이트 및 데이터를 저장하고, 라이트 동작상태가 아니면 각 프로세서가 리드(read)하려는 데이터를 캐쉬부와 스누프부에 태그, 스테이트 및 데이터를 저장한 수 각 프로세서가 읽어들일 데이터를 제공하는 제 6단계를 포함하여 구성된 것을 특징으로 한다.
이하 본 발명의 일실시예를 첨부 도면을 참조하여 상세히 설명하면 다음과 같다.
제 1도는 본 발명의 전체 시스템을 나타내는 블럭도로, 마이크로 프로세서로 부터 32비트의 어드레스를 어드레스 제어부(40)에서 제공하는 제 1프로세서부(10)와; 어드레스 제어부(40)에서 입력되는 어드레스를 1차로 필터링하여 상기 제 1프로세서부(10)에 제공하고, 제 1 프로세서부(10) 내부에서 스누핑 하기 위한 어드레스를 제공하는 제 1 프로세서 스누프부(10-1)와; 상기 제 1프로세서부(10)및 제 1 프로세서 스누프부(10-1)와 동일한 구조로 이루어진 제 2 프로세서부(70)및; 제 2 프로세서 스누프부(70-1)와; 어드레스 제어부(40)에서 생성된 어드레스를 제공받아 캐쉬 메모리의 더티블럭을 시스템 버스로 라이트백하기 위한 어드레스를 어드레스 제어부(40)에 입력하는 캐쉬부(20)와; 어드레스 제어부(40)에서 생성된 스누프 어드레스를 태그 메모리(30-1)와 스테이트 메모리(30-20에 저장하는 스누프(snoop)부 (30)와; 상기 각 프로세서부(10,70)에서 제공되는 32비트의 어드레스를 입력받아 캐쉬부(20)의 캐쉬 메모리(20-3)와 스테이트 메모리(20-2) 및 태그 메모리(20-1)에 접근하기 위한 어드레스와, 스누프부(30)의 스테이트 메모리 (30-2)와 태그 메모리(30-1)에 접근하기 위한 어드레스를 각 프로세서부(10,70)와 시스템 버스로부터 제공하는 어드레스를 멀티플랙싱된 어드레스 제어부(40)와; 상기 어드레스 제어부(40)에서 멀티플랙싱된 어드레스를 시스템 버스에 접근하기 위해 일시적으로 저장하는 제 1 버퍼(50) 및; 시스템 버스에서 제공되는 어드레스를 일시적으로 저장하는 제 2 버퍼(60)로 이루어 진다.
상기와 같이 구성된 본 발명의 동작은 다음과 같이 실행된다.
먼저 각 프로세서부(10,70)는 자신이 필요로 하는 데이터에 대한 어드레스(①,①')를 어드레스 제어부(40)로 출력한다. 이 어드레스(①,①')는 32비트로 이루어진 어드레스로 어드레스 제어부(40)로 입력된 후, 캐쉬부(20)에 저장된 데이터를 참조하기 위해 캐쉬 메모리(20-3)와, 스테이트 메모리(20-2)와, 태그 메모리(20-1)를 접근하기 위한 캐쉬 어드레스(②)로 변환되어 캐시ㅜ부(20)로 입력되고, 이 어드레스에 대한 데이터가 캐쉬부(20)에 존재하는지의 여부를 판단한다. 이때 캐쉬부(20)에 데이터가 존재하면 각 프로세서부(10, 70)에서는 직접 이 데이터를 읽어가며, 만약 데이터가 캐쉬부(20)에 존재하지 않을 경우 제 1 버퍼(50)를 통해 시스템 버스에 데이터를 요청한다.
상기 시스템 버스에 데이터를 요청하여, 상기 요청한 데이터가 각 프로세서부(10, 70)에 입력되는 과정은 다음과 같다.
먼저 요청하고자 하는 데이터에 대한 어드레스 즉, 각 프로세서부(10, 70)에서 출력된 어드레스는 어드레스 제어부(40)에서 시스템 버스를 억세스 하기 위한 어드레스인 로칼 어드레스(③)로 변환되어 제 1 버퍼(50)를 통해 시스템 버스에 제공되어 진다. 이 어드레스가 시스템 버스에 제공되어 지면, 메인 메모리(도면에는 도시하지 않음)로 입력되어 이 어드레스에 대한 데이터를 억세스 하여 제 2 버퍼(60)로 입력된다. 제 2 버퍼(60)로 입력된 시스템 버스 어드레스와 데이터는 다시 로칼 어드레스(④)로 변환되어 어드레스 제어부(40)로 입력되고, 상기 어드레스와 데이터가 입력되면 어드레스 제어부(40)에서는 스누프부(30)의 스테이트 메모리(30-2)와, 태그 메모리(30-1)를 억세스 하기 위해 스누프 어드레스(⑤)를 출력하고, 이 어드레스의 입력에 따라 스누프부(30)의 상태를 참조하여, 그 상태를 변경하고자 할 경우 캐쉬 어드레스(②)와 스누프 어드레스(50)를 통해 캐쉬부(20)와 스누프부(40)의 상태를 변경한다.
이때 시스템 버스로 부터 입력된 어드레스와 데이터에 따라 각 메모리의 상태를 변경하기 전에 캐쉬부(20)와 스누프부(30)에서는 미리 행하는 작업이 있는데, 이는 상기에서 잠시 언급한 바와 같이 각 프로세서부(10, 70)에서 입력된 어드레스(①, ①')에 대한 데이터가 캐쉬부(20)에 존재하지 않을 경우 행하는 작업으로, 상기 어드레스에 대한 캐쉬부(20)의 영역에 기존에 저장되었던 데이터가 입력되어 있을시, 이 데이터의 상태를 스누프부(300를 참조하여 판단한 후, 상기 데이터가 더티블럭(dirtyblock)이면 라이트-백 어드레스(write-bak)(⑥)를 통해 이 더티블럭을 시스템 버스에 라이트 하도록 한다. 여기서 더티블럭이란 기존에 시스템 버스에 요청하여 읽어들인 데이터 인데 프로세서의 요구에 의해 수정을 한 상태의 데이터로, 이는 메인 메모리에 저장되어 있는 데이터와 약간 다른 상태의 데이터로 남게되며, 이를 메인 메모리에 다시 라이트-백하지 않으면 캐쉬부(20)에 저장되어 있는 데이터와 메인 메모리에 저장되어 있는 데이터가 일치하지 않는 문제가 발생하게 된다. 또한 라이트-백 어드레스는 라이트-백 캐쉬 프로토콜에 맞게 생성된 상위 어드레스로 캐쉬 메모리의 더티블럭을 시스템 버스로 라이트 하기 위해 사용되는 어드레스이다.
상기와 같은 일련의 과정을 수행하고 난뒤, 시스템 버스로 부터 요청한 데이터가 입력되면, 이 데이터에 대한 상태를 변경하는데, 변경되는 상태의 종류는 4가지로써, 입력된 데이터의 상태를 무시하는 경우, 입력된 데이터를 요청한 프로세서 측에서만 사용할 수 있는 상태로 하는 경우, 입력된 데이터를 각 프로세서에서 모두 사용할 수 있도록 하는 즉, 공유 상태로 하는 경우 및 입력된 데이터를 요청한 프로세서 측에서만 사용할 수 있는 상태이나, 이 데이터는 변경된 즉, 더티블럭인 경우의 4가지가 있으며, 이 경우에 해당하는 상태로 변경한다.
이와 같이 입력된 데이터의 상태를 변경하고 나면 각 프로세서부910, 70)에 대한 캐쉬 코히어런스를 조정하게 되는데, 만약 이 데이터가 한쪽의 프로세서 예를 들어, 제 1 프로세서부(20)에서 요청한 데이터 라면, 이 요청한 데이터가 캐쉬부920)에 저장되어 있다라는 것을 제 2 프로세서부(70)에도 알려 캐쉬 코히어런스를 조정하도록 하며, 이 동작은 다음과 같이 행해진다.
즉, 어드레스 제어부(40)에서 출력된 스누핑 어드레스(⑦)는 각 프로세서 스누프부(10-1, 70-1)에 입력되어 프로세서 간에 캐쉬 코히어런스를 맞추도록 한다. 이때 각 프로세서 스누프(10-1, 70-1)로 입력되는 또 다른 어드레스(⑧, ⑧')는 한쪽 프로세서에서 요청한 데이터의 라이트 동작시 캐쉬 코히어런스를 맞추기 위해 다른 프로세서 측에서 참조하는 어드레스이며, 상기 스누핑 어드레스(⑦)를 입력받은 각 프로세서 스누프부(10-1, 70-1)는 상기에서 입력된 어드레스(⑧, ⑧')를 참조하여 필요시 각 프로세서부(10, 70)로 스누핑 어드레스(⑨, ⑨')를 입력하여 스누핑 할 것을 요구한다. 이때 상기 스누핑 어드레스(⑨, ⑨')는 입력된 스누핑 어드레스(⑦)와 데이터 어드레스(⑧, ⑧')를 1차 필터링 하여 발생시킨 어드레스로 각 프로세서부(10, 70) 내부에서 스누핑 할 것을 요구한다.
상기와 같은 일련의 과정을 거쳐 각 프로세서부(10, 70)에서 요구하는 데이터를 읽어들여 수행하고자 하는 작업을 완료하고, 캐쉬 메모리의 코히어런스 또한 간단한 과정을 통해 맞추어 줄 수 있다.
이상에서 상세히 설명한 바와 같이 본 발명은 2개의 프로세서가 하나의 캐쉬 메모리 및 스누프부를 공유하므로써 각 프로세서간의 캐쉬 코히어런스를 조정하기 위해 복잡한 설게를 할 칠요가 없어졌으며, 기존에 2개의 프로세서가 각각의 프로세서를 관리할 때 자신의 캐쉬 메모리를 수정하면서 다른쪽의 캐쉬 메모리도 수정해 주어야 하는 번거로움을 없애는 효과가 있다.
Claims (2)
- 2개의 프로세서를 이용하는 시스템 장치에 잇어서, 마이크로 프로세서로 부터 32비트의 어드레스를 어드레스 제어부(40)에서 제공하는 제 1 프로세서부(10)와; 어드레스 제어부(40)에서 입력되는 어드레스를 1차로 필터링하여 상기 제 1 프로세서부(10)에 제공하고, 제 1 프로세서부(10) 내부에서 스누핑하기 위한 어드레스를 제공하는 제 1 프로세서 스누프부(10-1)와; 상기 제 1 프로세서부(10)및 제 1 프로세서 스누프부(10-1)와 동일한 구조로 이루어진 제 2 프로세서부(70) 및; 제 2 프로세서 스누프부(70-1)와; 어드레스 제어부(40)에서 생성된 어드레스를 제공받아 캐쉬 메모리의 더티블럭을 시스템 버스로 라이트백하기 위한 어드레스를 어드레스 제어부(40)에 입력하는 캐쉬부(20)와; 어드레스 제어부(40)에서 생성된 스누프 어드레스를 태그 메모리(30-1)와 스테이트 메모리(30-2)에 저장하는 스누프(snoop)부(30)와; 상기 각 프로세서부(10, 70)에서 제공되는 32비트의 어드레스를 입력받아 캐쉬부(20)의 캐쉬 메모리(20-3)와 스테이트 메모리(20-2) 및 태그 메모리 (20-1)에 접근하기 위한 어드레스와, 스누프부(30)의 스테이트 메모리(30-2)와 태그 메모리(30-1)에 접근 하기 위한 어드레스를 각 프로세서부(10, 70)와 시스템 버스로부터 제공하는 어드레스르 ㄹ멀티플랙싱하는 어드레스 제어부(40)와; 상기 어드레스 제어부(40)에서 멀티플랙싱된 어드레스를 시스템 버스에 접근하기 위해 일시적으로 저장하는 제 1 버퍼(50)및; 시스템 버스에서 제공되는 어드레스를 일시적으로 저장하는 제 2 버퍼(60)로 이루어진 것을 특징으로 하는 2개의 프로세서가 하나의 캐쉬 메모리를 공유하는 시스템 장치.
- 2개의 프로세서를 이용하는 시스템 방법에 있어서, 2개의 프로세서부에서 어드레스를 발생한 후, 각 프로세서 스누프부와 어드레스 제어부에 어드레스를 래치시키고, 라이트( write) 동작상태인지 판단하는 제 1 단계와; 상기 제 1 단계를 수행한 수, 라이트 동작상태이면 각 프로세서 스누프부가 매치(match)되었는지 판단하여 매치되었으면 각 프로세서부에 어드레스를 발생하여 프로세서 내부 동작을 수향하고, 상기 제 1 단계에서 라이트 동작상태가 아니거나 각 프로세서 스누르부가 매치되지 않앗으면 어드레스 제어부에서 캐쉬부아 스누프에 어드레스를 발생시키는 제 2단계와; 상기 제 2단계를 수행한 후, 상기 어드레스 제어부에서 태그가 매치되었는지 판단 상기 태그가 매치되엇으면 라이트 동작상태인지 판단하여 라이트 동작상태이면 캐쉬부와 스투프부에 태그, 스테이트 및 데이터를 저장하고, 라이트 동작상태가 아니면 캐쉬부의데이터를 직접 읽어들인후 종료하는 제 3 단계와; 상기 제 3 단게에서 태그가 매치되어 있니 않았으면 더티블럭인가 판단하여 더티블럭이면 어드레스 제어부는 스누프부의 태그와 캐쉬부의 데이터를 읽은 후, 스누프부의 태그를 참조하여 라이트백 어드레스를 발생시키는 제 4 단계와; 상기 제 4단게에서 더티블럭이 아니면 어드레스 제어부는 메모리 어드레스를 발생시키고 메모리 보드로부터 해당 어드레스의 데이터를 읽어들인후 캐쉬부의 데이터부에 저장시킨 후 라이트 동작상태인지 판단하는 제 5 단계와; 상기 제 5 단계에서 라이트 동작상태이면 각 프로세서가 라이트 하려는 데이터를 캐쉬부와 스누프부에 태그, 스테이트 및 데이터를 저장하고, 라이트 동작상태가 아니면 각 프로세서가 리드 (read)하려는 데이터를 캐쉬부와 스누프부에 태그, 스테이트 및 데이터를 저장한 후 각 프로세서가 읽어들일 데이터를 제공하는 제 6 단계를 포함하여 구성된 것을 특징으로 하는 2개의 프로세서가 하나의 캐쉬 메모리를 공유하는 시스템 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019940033090A KR0144093B1 (ko) | 1994-12-07 | 1994-12-07 | 다수의 프로세서가 하나의 캐쉬 메모리를 공유하는 시스템 장치 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019940033090A KR0144093B1 (ko) | 1994-12-07 | 1994-12-07 | 다수의 프로세서가 하나의 캐쉬 메모리를 공유하는 시스템 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR960025112A KR960025112A (ko) | 1996-07-20 |
KR0144093B1 true KR0144093B1 (ko) | 1998-08-17 |
Family
ID=19400558
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019940033090A KR0144093B1 (ko) | 1994-12-07 | 1994-12-07 | 다수의 프로세서가 하나의 캐쉬 메모리를 공유하는 시스템 장치 및 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR0144093B1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100433511B1 (ko) * | 1996-12-30 | 2005-05-09 | 삼성전자주식회사 | 캐시일관성유지를위한스누핑장치 |
US10346307B2 (en) | 2016-09-28 | 2019-07-09 | Samsung Electronics Co., Ltd. | Power efficient snoop filter design for mobile platform |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5923898A (en) * | 1997-05-14 | 1999-07-13 | International Business Machines Corporation | System for executing I/O request when an I/O request queue entry matches a snoop table entry or executing snoop when not matched |
-
1994
- 1994-12-07 KR KR1019940033090A patent/KR0144093B1/ko not_active IP Right Cessation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100433511B1 (ko) * | 1996-12-30 | 2005-05-09 | 삼성전자주식회사 | 캐시일관성유지를위한스누핑장치 |
US10346307B2 (en) | 2016-09-28 | 2019-07-09 | Samsung Electronics Co., Ltd. | Power efficient snoop filter design for mobile platform |
Also Published As
Publication number | Publication date |
---|---|
KR960025112A (ko) | 1996-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6574779B2 (ja) | 複数のトランザクションを扱うためのデータ処理システム及びデータ処理方法 | |
EP0378399B1 (en) | Cache content control in multi-processor networks | |
EP0735480B1 (en) | Cache coherent computer system that minimizes invalidation and copyback operations | |
US6651115B2 (en) | DMA controller and coherency-tracking unit for efficient data transfers between coherent and non-coherent memory spaces | |
KR100273039B1 (ko) | 멀티프로세서 데이터 처리 시스템의 캐쉬 일관성을 유지하기위한 캐쉬 일관성 프로토콜 제공 방법 및시스템 | |
US6065098A (en) | Method for maintaining multi-level cache coherency in a processor with non-inclusive caches and processor implementing the same | |
KR970049655A (ko) | 직접메모리접근(dma) 제어장치 | |
JPH09237223A (ja) | バスブリッジを用いたコンピュータシステム | |
KR20000011516A (ko) | 프로세서인터페이스버스를통해데이터를전달하기위한방법및장치 | |
KR100322223B1 (ko) | 대기행렬및스누프테이블을갖는메모리제어기 | |
JPH06318174A (ja) | キャッシュ・メモリ・システム及び主メモリに記憶されているデータのサブセットをキャッシュする方法 | |
KR900016881A (ko) | 마이크로 프로세서 및 이를 사용한 도형처리장치 및 도형처리 방법 | |
US5553270A (en) | Apparatus for providing improved memory access in page mode access systems with pipelined cache access and main memory address replay | |
KR0144093B1 (ko) | 다수의 프로세서가 하나의 캐쉬 메모리를 공유하는 시스템 장치 및 방법 | |
US7234028B2 (en) | Power/performance optimized cache using memory write prevention through write snarfing | |
JPH06274415A (ja) | 共有メモリシステム | |
JPH09185547A (ja) | マルチプロセッサの制御方法及びその装置 | |
JPH01195552A (ja) | メモリアクセス制御方式 | |
KR100188438B1 (ko) | 멀티프로세서시스템의 교체 라이트백 사이클 처리장치 및 방법 | |
KR950013113B1 (ko) | 멀티프로세서 시스템의 캐쉬 상태 관리의 방법 | |
JPH06124235A (ja) | キャッシュ制御方式 | |
KR0177957B1 (ko) | 주전산기의 스누우프 요구 처리장치 | |
JPH0612363A (ja) | メモリ制御装置およびマルチプロセッサシステム | |
JPH0528047A (ja) | キヤツシユメモリ制御方式 | |
JPS6055459A (ja) | プロツクデ−タ転送記憶制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |