KR100286344B1 - Snooping cycle remove apparatus for cache - Google Patents

Snooping cycle remove apparatus for cache Download PDF

Info

Publication number
KR100286344B1
KR100286344B1 KR1019990003104A KR19990003104A KR100286344B1 KR 100286344 B1 KR100286344 B1 KR 100286344B1 KR 1019990003104 A KR1019990003104 A KR 1019990003104A KR 19990003104 A KR19990003104 A KR 19990003104A KR 100286344 B1 KR100286344 B1 KR 100286344B1
Authority
KR
South Korea
Prior art keywords
cache
external memory
data
buffer
write
Prior art date
Application number
KR1019990003104A
Other languages
Korean (ko)
Other versions
KR20000052193A (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 KR1019990003104A priority Critical patent/KR100286344B1/en
Publication of KR20000052193A publication Critical patent/KR20000052193A/en
Application granted granted Critical
Publication of KR100286344B1 publication Critical patent/KR100286344B1/en

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
    • 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/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols

Abstract

본 발명은 캐시의 스누핑 사이클 제거장치에 관한 것으로, 종래의 기술에 있어서는 두 개이 상의 마이크로프로세서가 외부 메모리를 공유할 때 라이트 시 외부 메모리의 마스터 권한을 가지고 있는 마이크로프로세서의 캐시에만 라이트하는 경우 캐시와 외부 메모리에 저장되어 있는 데이터가 서로 다르게 되어 데이터 일관성(coherency)이 없게 되고, 외부 메모리를 액세스할 때마다 스누핑 사이클 시간을 추가하여 다른 마이크로프로세서의 캐시 데이터와 비교해야 함으로써, 처리속도가 늦어지는 문제점이 있었다.The present invention relates to a device for removing a snooping cycle of a cache. In the related art, when two or more microprocessors share an external memory, the cache and the cache are only written when the microprocessor has the master authority of the external memory at the time of writing. The data stored in the external memory is different so that there is no data coherency and the processing speed is slowed by adding the snooping cycle time each time the external memory is accessed to compare with the cache data of other microprocessors. There was this.

따라서, 본 발명은 상기와 같은 종래의 문제점을 해결하기 위하여 창안한 것으로, 하나의 외부 메모리를 공유하는 중앙처리장치와 캐시를 포함하여 이루어진 복수개의 마이크로프로세서에 있어서, 캐시의 라이트 백 모드 시 라이트 히트 데이터를 저장하는 라이트 히트 버퍼를 더 포함하여 구성한 장치를 제공하여, 두 개 이상의 마이크로프로세서가 외부 메모리를 공유할 때 라이트 시 외부 메모리의 마스터 권한을 가지고 있는 마이크로프로세서의 캐시에 라이트함과 동시에 라이트 히트 버퍼에도 라이트한 후, 마스터 권한을 넘겨주기 전에 라이트 히트 버퍼에 남아있는 데이터를 모두 상기 외부 메모리로 라이트한 후, 마스터 권한을 넘겨줌으로써, 데이터가 서로 같게 되어 데이터 일관성(coherency)이 있으며, 또한 스누핑 사이클 동작을 하지 않음으로 인해 처리속도가 향상되는 효과가 있다.Accordingly, the present invention has been made to solve the above-mentioned conventional problems, and has a write hit in a write back mode of a cache in a plurality of microprocessors including a central processing unit and a cache sharing one external memory. It provides a device configured to further include a write hit buffer for storing data so that when two or more microprocessors share the external memory, the write hit is simultaneously written to the cache of the microprocessor having the master authority of the external memory at the time of writing. After writing to the buffer, all data remaining in the write hit buffer is written to the external memory before handing over the master authority, and then passing the master authority to make the data the same so that there is data coherency and snooping. No cycle operation Because there is an effect that the processing speed improvement.

Description

캐시의 스누핑 사이클 제거장치{SNOOPING CYCLE REMOVE APPARATUS FOR CACHE}SNOOPING CYCLE REMOVE APPARATUS FOR CACHE}

본 발명은 캐시의 스누핑 사이클 제거장치에 관한 것으로, 특히 라이드 백(write back) 구조를 가진 캐시에 있어서, 캐시의 라이트 히트 시 어드레스와 라이트 데이터를 캐시와 라이트 히트 버퍼에 저장하여 마이크로프로세서가 외부 버스를 액세스하지 않는 시간마다 라이트 히트 버퍼에 저장된 데이터를 외부 메모리에 라이트함으로써, 두 개 이상의 마스터(master)가 하나의 외부 메모리를 공유하도록 하여 스누핑 사이클을 제거하는 캐시의 스누핑 사이클 제거장치에 관한 것이다.The present invention relates to a device for removing a snooping cycle of a cache. In particular, in a cache having a write back structure, an address and write data are stored in a cache and a write hit buffer when a cache write hit is executed. The present invention relates to a cache snooping cycle elimination device for eliminating snooping cycles by allowing two or more masters to share one external memory by writing data stored in a write hit buffer to an external memory every time the data is not accessed.

도 1은 종래 2개의 마이크로프로세서가 1개의 외부 메모리를 공유하는 시스템을 보인 블록도로서, 이에 도시된 바와 같이 외부 메모리(30)는 제1 마이크로프로세서 (10)와 제2 마이크로프로세서(20)의 공용 메모리이고, 각 마이크로프로세서 (10)(20)는 내부에 중앙처리장치(11)(21)와 캐시(12)(22) 및 외부 어드레스와 데이터를 스누핑하고, 캐시의 어드레스와 데이터를 비교하는 비교기(13)(23)를 구비하고 있다.1 is a block diagram illustrating a system in which two conventional microprocessors share one external memory, and as illustrated therein, the external memory 30 may include a first microprocessor 10 and a second microprocessor 20. It is a common memory, and each microprocessor (10) (20) snoops the central processing unit (11) 21 and the cache (12) 22 and external addresses and data therein, and compares the address and data of the cache. Comparators 13 and 23 are provided.

상기 제1 마이크로프로세서(10)가 외부 버스의 마스터일 때 제1 마이크로프로세서 (10)의 제1 중앙처리장치(11)는 원하는 데이터를 제1 캐시(12)에서 탐색하여 데이터가 없을 경우 상기 외부 메모리(30)에서 데이터를 탐색하게 된다.When the first microprocessor 10 is the master of the external bus, the first central processing unit 11 of the first microprocessor 10 searches for the desired data in the first cache 12 so that the external data is not present. The data is retrieved from the memory 30.

만약, 상기 제1 중앙처리장치(11)가 데이터를 라이트할 때 제1 캐시(12)에 해당하는 어드레스가 있다면 캐시의 라이트 백 구조 시 제1 캐시(12)에만 라이트하고, 상기 외부 메모리(30)에는 라이트하지 않는다. 이러한 동작을 수행하다 외부 버스의 마스터 권한을 제2 마이크로프로세서(20)가 가질 때 제2 중앙처리장치(21)에서 제1 캐시(22)에 라이트된 데이터를 원하게되면 상기 제2 마이크로프로세서(20)의 비교기(23)는 스누핑 사이클을 통하여 상기 제1 캐시(12)의 데이터를 탐색하여 그 데이터를 상기 제1 마이크로프로세서(10)에서 가져오게 된다.If there is an address corresponding to the first cache 12 when the first CPU 11 writes data, only the first cache 12 is written in the cache writeback structure, and the external memory 30 ) Is not lit. When the second microprocessor 20 has the master authority of the external bus while performing the operation, if the second CPU 21 wants the data written to the first cache 22, the second microprocessor ( Comparator 23 of 20 retrieves data from the first cache 12 through a snooping cycle and retrieves the data from the first microprocessor 10.

상기에서와 같이 종래의 기술에 있어서는 두 개 이상의 마이크로프로세서가 외부 메모리를 공유할 때 라이트 시 외부 메모리의 마스터 권한을 가지고 있는 마이크로프로세서의 캐시에만 라이트하는 경우 캐시와 외부 메모리에 저장되어 있는 데이터가 서로 다르게 되어 데이터 일관성(coherency)이 없게 되고, 외부 메모리를 액세스할 때마다 스누핑 사이클 시간을 추가하여 다른 마이크로프로세서의 캐시 데이터와 비교해야 함으로써, 처리속도가 늦어지는 문제점이 있었다.As described above, in the prior art, when two or more microprocessors share an external memory, when writing only to the cache of the microprocessor having the master authority of the external memory at the time of writing, the data stored in the cache and the external memory are mutually different. In other words, there is no data coherency, and each time the external memory is accessed, a snooping cycle time must be added to compare with cache data of another microprocessor, thereby causing a slow processing speed.

따라서, 본 발명은 상기와 같은 종래의 문제점을 해결하기 위하여 창안한 것으로, 캐시의 라이트 히트 시 어드레스와 라이트 데이터를 캐시와 라이트 히트 버퍼에 저장하여 마이크로프로세서가 외부 버스를 액세스하지 않는 시간마다 라이트 히트 버퍼에 저장된 데이터를 외부 메모리에 라이트함으로써, 두 개 이상의 마스터 (master)가 하나의 외부 메모리를 공유하도록 하여 스누핑 사이클을 제거하도록 하는 장치를 제공함에 그 목적이 있다.Accordingly, the present invention has been devised to solve the above-mentioned conventional problems, and writes address and write data in the cache and the write hit buffer during write hit of the cache, so that the write hit is performed every time the microprocessor does not access the external bus. It is an object of the present invention to provide an apparatus in which two or more masters share one external memory to eliminate snooping cycles by writing data stored in a buffer to an external memory.

도 1은 종래 2개의 마이크로프로세서가 1개의 외부 메모리를 공유하는 시스템을 보인 블록도.1 is a block diagram illustrating a system in which two conventional microprocessors share one external memory.

도 2는 도 2는 본 발명 캐시의 스누핑 사이클 제거장치의 구성을 보인 예시도.Figure 2 is an exemplary view showing the configuration of a snooping cycle removal device of the cache of the present invention.

도 3은 도 2에서 라이트 히트 버퍼의 구성을 보인 블록도.FIG. 3 is a block diagram illustrating a configuration of a write hit buffer in FIG. 2. FIG.

도 4는 도 2에서 마이크로프로세서의 내부신호 흐름을 보인 블록도.4 is a block diagram showing an internal signal flow of the microprocessor in FIG.

*** 도면의 주요 부분에 대한 부호의 설명 ****** Explanation of symbols for the main parts of the drawing ***

10,20,40,50 : 마이크로프로세서 11,21,41,51 : 캐시10,20,40,50: Microprocessors 11,21,41,51: Cache

30 : 외부 메모리 60,70 : 라이트 히트 버퍼30: external memory 60, 70: write hit buffer

이와 같은 목적을 달성하기 위한 본 발명 캐시의 스누핑 사이클 제거장치의 구성은, 하나의 외부 메모리를 공유하는 중앙처리장치와 캐시를 포함하여 이루어진 복수개의 마이크로프로세서에 있어서, 캐시의 라이트 백 모드 시 라이트 히트 데이터를 저장하는 라이트 히트 버퍼를 더 포함하여 구성한 것을 특징으로 한다.The cache snooping cycle elimination device of the present invention for achieving the above object, in the plurality of microprocessor including a central processing unit and a cache sharing one external memory, the write hit in the cache write-back mode And a write hit buffer for storing data.

상기 라이트 히트 버퍼는 라이트 히트가 일어난 어드레스를 저장하는 어드레스버퍼와, 상기 어드레스에 해당하는 라이트 데이터를 저장하는 데이터버퍼로 구성한 것을 특징으로 한다.The write hit buffer may include an address buffer for storing an address where a write hit has occurred and a data buffer for storing write data corresponding to the address.

이하, 본 발명에 따른 일실시예를 첨부한 도면을 참조하여 상세히 설명하면 다음과 같다.Hereinafter, an embodiment according to the present invention will be described in detail with reference to the accompanying drawings.

도 2는 본 발명 캐시의 스누핑 사이클 제거장치의 구성을 보인 예시도로서, 이에 도시한 바와 같이 외부 메모리(30)는 제1 마이크로프로세서(40)와 제2 마이크로프로세서(50)의 공용 메모리이고, 각 마이크로프로세서(40)(50)는 내부에 중앙처리장치(41)(51)와 캐시(42)(52) 및 외캐시의 라이트 백 모드 시 라이트 히트 데이터를 저장하는 라이트 히트 버퍼(43)(53)로 구성되며, 상기 라이트 히트 버퍼(43)(53)는 각각 도 3에 도시한 바와 같이 라이트 히트가 일어난 어드레스를 저장하는 어드레스버퍼(60)와, 상기 어드레스에 해당하는 라이트 데이터를 저장하는 데이터버퍼 (70)로 구성한다.2 is an exemplary view showing a configuration of a snooping cycle removing device of the cache of the present invention. As shown in FIG. 2, the external memory 30 is a common memory of the first microprocessor 40 and the second microprocessor 50. Each of the microprocessors 40 and 50 has a write hit buffer 43 for storing write hit data in the central processing unit 41 and 51 and the cache 42 and 52 and the write back mode of the external cache. 53. Each of the write hit buffers 43 and 53 includes an address buffer 60 for storing an address where a write hit has occurred and a write data corresponding to the address as shown in FIG. It consists of the data buffer 70.

이와 같이 구성한 본 발명에 따른 일실시예의 동작 과정을 첨부한 도면을 참조하여 설명하면 다음과 같다.Referring to the accompanying drawings, the operation of an embodiment according to the present invention configured as described above will be described.

도 4는 도 2에서 마이크로프로세서의 내부신호 흐름을 보인 블록도로서, 이에 도시한 바와 같이 제1 마이크로프로세서(40)가 먼저 마스터 권한을 가지고, 외부 메모리(30)를 이용하여 데이터를 처리할 때 제1 중앙처리장치(41)에서 라이트하고자 하는 어드레스가 제1 캐시(42)에 있다면 이 제1 캐시(42)에 라이트함과 동시에 제1 라이트 히트 버퍼(43)에도 라이트한다.FIG. 4 is a block diagram illustrating an internal signal flow of the microprocessor in FIG. 2. As shown in FIG. 2, when the first microprocessor 40 has a master authority and processes data using the external memory 30, FIG. If the address to be written in the first CPU 41 is in the first cache 42, the address is written to the first cache 42 and the first write hit buffer 43 at the same time.

이후, 상기 제1 마이크로프로세서(40)는 마스터 권한을 가지고 있지만 데이터 처리기 필요없는 경우에는 상기 외부 메모리(30)를 액세스하지 않으며, 이렇게 외부 메모리(30)를 액세스하지 않는 시간에 상기 제1 라이트 히트 버퍼(43)는 저장하고 있는 데이터를 선입선출(FIFO)로 상기 외부 메모리(30)에 라이트한다.The first microprocessor 40 does not access the external memory 30 when the first microprocessor 40 has master authority but does not need a data processor, and the first write hit at a time when the external memory 30 is not accessed. The buffer 43 writes the stored data to the external memory 30 by first in, first out (FIFO).

만약, 제2 마이크로프로세서(50)에서 상기 제1 마이크로프로세서(40)로 마스터 권한을 요구하면 마스터 권한을 넘겨주기 전에(마스터 승인신호에 의해 넘겨준다) 상기 제1 라이트 히트 버퍼(43)는 남아있는 데이터를 모두 상기 외부 메모리(30)로 라이트한 후, 마스터 권한을 넘겨준다.If the second microprocessor 50 requests the master authority to the first microprocessor 40, the first write hit buffer 43 remains before the master authority is passed (by the master acknowledgment signal). After writing all the data to the external memory 30, the master authority is transferred.

이후, 상기 제2 마이크로프로세서(50)는 스누핑 사이클을 하지 않고 바로 상기 외부 메모리(30)를 액세스하여 이 외부 메모리(30)에 저장되어 있는 데이터를 읽어들인다.Thereafter, the second microprocessor 50 directly accesses the external memory 30 without reading a snooping cycle and reads data stored in the external memory 30.

이상에서 설명한 바와 같이 본 발명 캐시의 스누핑 사이클 제거장치는 두 개 이상의 마이크로프로세서가 외부 메모리를 공유할 때 라이트 시 외부 메모리의 마스터 권한을 가지고 있는 마이크로프로세서의 캐시에 라이트함과 동시에 라이트 히트 버퍼에도 라이트한 후, 마스터 권한을 넘겨주기 전에 라이트 히트 버퍼에 남아있는 데이터를 모두 상기 외부 메모리로 라이트한 후, 마스터 권한을 넘겨줌으로써, 데이터가 서로 같게 되어 데이터 일관성(coherency)이 있으며, 또한 스누핑 사이클 동작을 하지 않음으로 인해 처리속도가 향상되는 효과가 있다.As described above, the snooping cycle removing device of the cache of the present invention writes to the write hit buffer while simultaneously writing to the cache of the microprocessor having the master authority of the external memory when two or more microprocessors share the external memory. Then, after all the data remaining in the write hit buffer is written to the external memory before the master authority is transferred, the master authority is passed, so that the data becomes the same so that there is data coherency and the snooping cycle operation. By not doing so, the processing speed is improved.

Claims (4)

하나의 외부 메모리를 공유하는 중앙처리장치와 캐시를 포함하여 이루어진 복수개의 마이크로프로세서에 있어서, 캐시의 라이트 백 모드 시 라이트 히트 데이터를 저장하는 라이트 히트 버퍼를 더 포함하여 구성한 것을 특징으로 하는 캐시의 스누핑 사이클 제거장치.A plurality of microprocessors comprising a central processing unit and a cache sharing one external memory, the cache snooping characterized in that it further comprises a write hit buffer for storing the write hit data in the write back mode of the cache Cycle eliminator. 제1항에 있어서, 상기 라이트 히트 버퍼는 라이트 히트가 일어난 어드레스를 저장하는 어드레스버퍼와, 상기 어드레스에 해당하는 라이트 데이터를 저장하는 데이터버퍼로 구성한 것을 특징으로 하는 캐시의 스누핑 사이클 제거장치.The apparatus of claim 1, wherein the write hit buffer comprises an address buffer for storing an address where a write hit has occurred and a data buffer for storing write data corresponding to the address. 제1항에 있어서, 상기 라이트 히트 버퍼는 마이크로프로세서가 외부 버스를 사용하지 않는 경우 데이터를 선입선출(FIFO)로 외부 메모리에 라이트하는 것을 특징으로 하는 캐시의 스누핑 사이클 제거장치.2. The apparatus of claim 1, wherein the write hit buffer writes data to external memory on a first-in first-out (FIFO) basis when the microprocessor does not use an external bus. 제1항에 있어서, 상기 라이트 히트 버퍼는 마이크로프로세서에서 타 마이크로프로세서로 마스터 권한을 넘겨주기 전에 저장되어 있는 라이트 히트 데이터를 외부 메모리에 라이트하는 것을 특징으로 하는 캐시의 스누핑 사이클 제거장치.2. The apparatus of claim 1, wherein the write hit buffer writes the stored write hit data to an external memory before transferring master authority from a microprocessor to another microprocessor.
KR1019990003104A 1999-01-30 1999-01-30 Snooping cycle remove apparatus for cache KR100286344B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990003104A KR100286344B1 (en) 1999-01-30 1999-01-30 Snooping cycle remove apparatus for cache

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990003104A KR100286344B1 (en) 1999-01-30 1999-01-30 Snooping cycle remove apparatus for cache

Publications (2)

Publication Number Publication Date
KR20000052193A KR20000052193A (en) 2000-08-16
KR100286344B1 true KR100286344B1 (en) 2001-03-15

Family

ID=19572862

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990003104A KR100286344B1 (en) 1999-01-30 1999-01-30 Snooping cycle remove apparatus for cache

Country Status (1)

Country Link
KR (1) KR100286344B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101944329B1 (en) 2012-04-17 2019-04-18 삼성전자주식회사 Multi processor system and managing method for cache memory thereof

Also Published As

Publication number Publication date
KR20000052193A (en) 2000-08-16

Similar Documents

Publication Publication Date Title
KR970010368B1 (en) Cache line replace apparatus and method
US5561779A (en) Processor board having a second level writeback cache system and a third level writethrough cache system which stores exclusive state information for use in a multiprocessor computer system
US6295582B1 (en) System and method for managing data in an asynchronous I/O cache memory to maintain a predetermined amount of storage space that is readily available
EP0301354A2 (en) Cache consistency protocol for multiprocessor system
US7574566B2 (en) System and method for efficient software cache coherence
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
US8015364B2 (en) Method and apparatus for filtering snoop requests using a scoreboard
US5829027A (en) Removable processor board having first, second and third level cache system for use in a multiprocessor computer system
US20030126369A1 (en) Cache memory eviction policy for combining write transactions
US7308557B2 (en) Method and apparatus for invalidating entries within a translation control entry (TCE) cache
US5590310A (en) Method and structure for data integrity in a multiple level cache system
EP0344886A1 (en) Data transfer processing system
JPH06309230A (en) Bus snooping method
CA2148186A1 (en) Processor board having a second level writeback cache system and a third level writethrough cache system which stores exclusive state information for use in a multiprocessor computer system
US6862646B2 (en) Method and apparatus for eliminating the software generated ready-signal to hardware devices that are not part of the memory coherency domain
KR100286344B1 (en) Snooping cycle remove apparatus for cache
JPH0830546A (en) Bus controller
US7406571B2 (en) Memory system and method for controlling the same, and method for maintaining data coherency
US7234028B2 (en) Power/performance optimized cache using memory write prevention through write snarfing
JP2005128963A (en) Storage control device and control system capable of dma transfer
US5696938A (en) Computer system permitting mulitple write buffer read-arounds and method therefor
JP2006091995A (en) Write-back device of cache memory
JPH02224161A (en) Fast data processor
JP4220258B2 (en) High-speed memory access method in non-cache area
JP4856373B2 (en) Memory system, control method thereof, and method of maintaining data coherency

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20041230

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee