KR970002652A - 캐시 메모리의 내용을 플러시하는 장치 및 방법 - Google Patents
캐시 메모리의 내용을 플러시하는 장치 및 방법 Download PDFInfo
- Publication number
- KR970002652A KR970002652A KR1019960021796A KR19960021796A KR970002652A KR 970002652 A KR970002652 A KR 970002652A KR 1019960021796 A KR1019960021796 A KR 1019960021796A KR 19960021796 A KR19960021796 A KR 19960021796A KR 970002652 A KR970002652 A KR 970002652A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- cache memory
- read
- status information
- cache
- 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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
- G06F12/0831—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
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)
- Retry When Errors Occur (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
버스 인터페이스는 데이타가 프로세서의 캐시 메모리에서 갱신되었는지를 나타내는 버스 명령을 제어하기 위한 시스템 버스에 접속된다. 만일 데이타가 캐시 메모리에서 갱신되었다면, 외부 태그 저장 장치는 갱신된 데이타에 대응하는 실제 어드레스와 데이타의 갱신을 나타내는 상태 정보를 저장한다. 외부 태그 판독 장치는 캐시 메모리에 있는 갱신 데이타가 주 기억장치에 저장되면, 외부 태크 저장 장치에 저장된 상태 정보를 판독한다. 외부 태그 저장 장치로부터 판독된 태그의 상태에 기초하여, 캐시 메모리로부터 주 기억장치로 갱신 데이타를 플러시하는 버스 명령이 생성된다. 무효화 버스 명령 생성 장치는 무호화 버스 명령을 FIFO를 통해 시스템 버스로 출력한다.
Description
본 내용은 요부공개 건이므로 전문내용을 수록하지 않았음
제2도는 본 발명의 일실시예에 따른 컴퓨터 시스템을 나타내는 블록도, 제3도는 컴퓨터 시스템이 정상적으로 동작할 때의 본 발명의 캐시 플러시장치의 동작을 설명하는 흐름도.
Claims (20)
- 캐시 메모리의 내용을 플러시하는 컴퓨터 시스템에 있어서, 버스 스누프 기능이 있으며, 카피-백 타입의 캐시 메모리를 갖는 프로세서와; 주 기억장치와; 상기 프로세서를 상기 주 기억장치에 접속하는 시스템 버스와; 상기 시스템 버스에 접속되며, 상기 시스템 버스상에 버스 명령을 제어하는 제어 수단과; 상기 제어 수단에 응답하여, 데이타가 상기 캐시 메모리에서 갱신될 때, 상기 갱신된 데이타에 대응하는 실제 어드레스와, 상기 캐시 메모리에 있는 데이타가 갱신 상태에 있다는 것을 나타내는 상태 정보를 저장하는 저장 수단과; 상기 캐시 메모리에 있는 갱신 데이타가 상기 주 기억장치에 저장될 때, 상기 저장 수단에 저장된 상태 정보를 판독하는 판독 수단과; 상기 시스템 버스에 접속되며, 상기 캐시 메모리에 있는 데이타가 상기 프로세서에 의해 변경되었다는 것이 상기 상태 정보에 의해 표시되면, 상기 캐시 메모리부터 상기 주 기억장치로 상기 갱신 데이타의 전송을 요청하는 무효화 버스 명령을 출력하는 명령 출력 수단을 구비하는 것을 특징으로 하는 컴퓨터 시스템.
- 제1항에 있어서, 어느 프로세서에 의해 출력되어 어느 캐시 메모리에 저장된 데이타와, 상기 프로세서와 다른 프로세서에 의해 출력되어 상기 캐시 메모리와 다른 캐시 메모리에 저장된 데이타 사이의 일관성을 유지하기 위해, 일관성 판독 명령에 의해 상기 주 기억장치로부터 상기 캐시 메모리로 데이타 전송이 일어났는지를 검사하는 수단과; 상기 일관성 판독 명령에 의한 타겟 데이타가 상기 검사 수단에 의해 공유상태에 있는지를 나타내는 응답을 실행하는 수단을 추가로 구비하는 것을 특징으로 하는 컴퓨터 시스템.
- 제1항에 있어서, 상기 판독 수단은 상기 저장 수단으로부터 복수의 상태 정보를 독출하는 제2판독 수단을 포함하며, 상기 제2판독 수단에 의해 독출된 복수의 상태 정보에 기초하여, 독출된 데이타가 갱신 상태에 있는지를 판정하는 수단과; 상기 판정 수단에 의해 판정된 상태 정보에 대응하는 실제 어드레스에 기초하여 , 상기 시스템 버스에 캐시 플러시 명령을 생성하는 명령 생성수단을 추가로 구비하는 것을 특징으로 하는 컴퓨터 시스템.
- 제3항에 있어서, 갱신 상태에 있는 상기 독출 데이타의 캐시 플러시 명령을 생성하기 위해 캐시 플러시 요청을 제공하는 수단과; 상기 캐시 플러시 요청중 하나를 선택하고, 이 선택된 요청을 상기 명령 생성 수단에 출력하는 멀티플렉서 수단을 추가로 구비하는 것을 특징으로 하는 컴퓨터 시스템.
- 제3항에 있어서, 상기 명령 생성 수단에 의해 생성된 상기 캐시 플레시 명령을 저장 및 출력하는 버퍼수단을 추가로 구비하는 것을 특징으로 하는 컴퓨터 시스템.
- 제5항에 있어서, 상기 버퍼 수단은 선입출선 버퍼인 것을 특징으로 하는 컴퓨터 시스템.
- 제1항에 있어서, 상기 저장 수단은 상기 갱신 데이타에 대응하는 실제 어드레스를 저장하는 제1저장 수단과 상기 캐시 메모리에 있는 데이타가 갱신 상태에 있는지를 나타내는 상태 정보를 저장하는 제2저장 수단을 포함하고, 상기 판독 수단은 상기 제2저장 수단으로부터 복수의 상태 정보를 판독하는 수단을 포함하며, 상기 판독 수단에 의해 판독된 상태 정보에 따라, 독출된 데이타가 갱신 상태에 있는지를 판정하는 수단과; 상기 판정 수단에 의해 판정된 상태 정보에 기초하여, 상기 캐시 메모리에 있는 데이타가 변경된 것이 상기 상태 정보에 의해 표시되면, 캐시 플러시 명령을 상기 시스템 버스에 생성하는 명령 생성 수단을 추가로 구비하는 것을 특징으로 하는 컴퓨터 시스템.
- 제7항에 있어서, 상기 판정 수단은 상기 캐시 메모리에 있는 데이타가 갱신 상태에 있다는 것이 상기 제2저장 수단으로부터 독출된 상태 정보에 의해 표시되면, 복수의 캐시 플러시 요청을 생성하는 수단을 포함하고, 상기 생성된 캐시 플러시 요청중 하나는 선택하는 멀티플렉서 수단과; 상기 선택된 캐시 플러시 요청을 저장하고, 상기 판정 수단에 의해 판정된 상태 정보에 대응하는 실제 어드레스를 판독하도록 판독 어드레스를 출력하는 제1버퍼 수단을 추가로 구비하는 것을 특징으로 하는 컴퓨터 시스템.
- 제8항에 있어서, 상기 제1저장 수단은 상기 명령 생성 수단에 의해 캐시 플러시 명령을 생성하기 위해, 출력된 판독 어드레스에 대응하는 실제 어드레스를 판독하는 수단을 포함하는 것을 특징으로 하는 컴퓨터 시스템.
- 제1항에 있어서, 상기 판독 수단에 의해 독출된 상태 정보에 기초하여, 데이타가 갱신 상태에 있는지를 판정하는 수단과; 상기 판정 수단에 의해 판정된 상태 정보에 대응하는 실제 어드레스에 기초하여, 캐시 플러시 명령을 상기 시스템 버스에 생성하는 명령 생성 수단을 추가로 구비하는 것을 특징으로 하는 컴퓨터 시스템.
- 제1항에 있어서, 상기 제어 수단은 상기 저장 수단에 있는 실제 어드레스와 상태 정보를 저장하기 위해 기록 어드레스를 출력하는 수단을 포함하는 것을 특징으로 하는 컴퓨터 시스템.
- 제11항에 있어서, 상기 판독 수단은 상기 저장 수단으로부터 상태 정보를 판독하기 위해 판독 어드레스를 출력하는 수단을 포함하는 것을 특징으로 하는 컴퓨터 시스템.
- 제12항에 있어서, 상기 기록 어드레스와 판독 어드레스가 동시에 수신되면, 상기 기록 어드레스에 우선 순위를 부여하는 수단을 포함하며, 상기 기록 어드레스와 판독 어드레스중 하나를 선택하는 멀티플렉서 수단을 추가로 구비하는 것을 특징으로 하는 컴퓨터 시스템.
- 제12항에 있어서, 상기 제어 수단은 상기 시스템 버스에 제공된 버스 명령을 전송하는 버스 인터페이스를 포함하고, 상기 버스 인터페이스에 접속되며, 캐시 플러시 동작을 실행할 플러시 개시비트의 값과, 상기 캐시 플러시 동작을 실행할 제어 데이타가 상기 프로세서에 의해 세트될 때 판독 어드레스의 반복된 시간에 대응하는 루프 카운트의 수를 저장하는 주 제어기 수단을 추가로 구비하는 것을 특징으로 하는 컴퓨터 시스템.
- 캐시 메모리의 내용을 플러시하는 방법에 있어서, 시스템 버스에 있는 버스 명령을 제어하는 단계와; 데이타가 상기 캐시 메모리에 저장될 때, 갱신 데이타에 대응하는 실제 데이타와, 상기 캐시 메모리에 있는 데이타가 갱신 상태에 있다는 것을 나타내는 상태 정보를 저장 수단에 저장하는 단계와; 상기 캐시 메모리에 있는 갱신 데이타가 주 기억장치에 저장되면, 상기 저장된 상태 정보를 판독하는 단계와; 상기 캐시 메모리에 있는 데이타가 변경되었으며, 상기 캐시 메모리로부터 상기 주 기억장치로 갱신 데이타의 전송을 요청하기 위해 무효화 버스 명령을 시스템 버스에 출력하는 단계를 포함하는 것을 특징으로 하는 방법.
- 제15항에 있어서, 상기 제어 단계에 따라, 제어 데이타가 프로세서에 의해 세트되면, 제어 레지스터에 있는 판독 어드레스의 반복된 시간에 대응하는 루프 카운트와, 캐시 플러시 동작을 실행하기 위해 플러시 개시 비트를 저장하는 단계를 추가로 포함하는 것을 특징으로 하는 방법.
- 제16항에 있어서, 제어 레지스터에 세트된 루프 카운트와 플러시 개시 비트에 기초하여, 태그 판독 어드레스를 생성하는 단계와; 상기 루프 카운트에 다라 상기 저장 수단으로부터 상기 태크 판독 어드레스에 대응하는 상태 정보를 추가로 포함하는 것을 특징으로 하는 방법.
- 제15항에 있어서, 상기 저장 수단에 있는 실제 어드레스와 상태 정보를 저장하기 위해 태그 기록 어드레스를 생성하는 단계를 추가로 포함하는 것을 특징으로 하는 방법.
- 제16항에 있어서, 상기 제어 레지스터에서 캐시 플러시 동작을 중단시키기 위해 한 비트를 세팅하는 단계를 추가로 포함하는 것을 특징으로 하는 방법.
- 제17항에 있어서, 태그 판독 어드레스가 생성되면, 상기 제어 레지스터로부터 판독된 루프 카운트를 감소시키는 단계와; 상기 태그 판독 어드레스에 대한 개시 어드레스를 증가시키는 단계를 추가로 포함하는 것을 특징으로 하는 방법.※ 참고사항 : 최초출원 내용에 의하여 공개하는 것임.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7151732A JP2902976B2 (ja) | 1995-06-19 | 1995-06-19 | キャッシュフラッシュ装置 |
JP95-151732 | 1995-06-19 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR970002652A true KR970002652A (ko) | 1997-01-28 |
KR100212361B1 KR100212361B1 (ko) | 1999-08-02 |
Family
ID=15525088
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019960021796A KR100212361B1 (ko) | 1995-06-19 | 1996-06-17 | 캐시 메모리의 내용을 플러시하는 장치 및 방법 |
Country Status (6)
Country | Link |
---|---|
US (1) | US5745730A (ko) |
EP (1) | EP0750262B1 (ko) |
JP (1) | JP2902976B2 (ko) |
KR (1) | KR100212361B1 (ko) |
CN (1) | CN1084896C (ko) |
DE (1) | DE69614779T2 (ko) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2916420B2 (ja) * | 1996-09-04 | 1999-07-05 | 株式会社東芝 | チェックポイント処理加速装置およびデータ処理方法 |
JP2916421B2 (ja) * | 1996-09-09 | 1999-07-05 | 株式会社東芝 | キャッシュフラッシュ装置およびデータ処理方法 |
TW379298B (en) * | 1996-09-30 | 2000-01-11 | Toshiba Corp | Memory updating history saving device and memory updating history saving method |
JPH10320274A (ja) * | 1997-03-19 | 1998-12-04 | Toshiba Corp | キャッシュフラッシュ装置及び同装置を備えた計算機システム、記録媒体 |
US6295581B1 (en) * | 1998-02-20 | 2001-09-25 | Ati Technologies, Inc. | Method and apparatus for assuring cache coherency |
JP4303803B2 (ja) * | 1998-04-22 | 2009-07-29 | 株式会社東芝 | キャッシュフラッシュ装置 |
JP2000010810A (ja) | 1998-06-22 | 2000-01-14 | Toshiba Corp | トランザクション処理のコミット制御方法および同方法が適用される計算機システム |
US6629214B1 (en) | 1999-11-09 | 2003-09-30 | International Business Machines Corporation | Extended cache coherency protocol with a persistent “lock acquired” state |
US6625701B1 (en) | 1999-11-09 | 2003-09-23 | International Business Machines Corporation | Extended cache coherency protocol with a modified store instruction lock release indicator |
US6549989B1 (en) * | 1999-11-09 | 2003-04-15 | International Business Machines Corporation | Extended cache coherency protocol with a “lock released” state |
US6629212B1 (en) | 1999-11-09 | 2003-09-30 | International Business Machines Corporation | High speed lock acquisition mechanism with time parameterized cache coherency states |
US6629209B1 (en) | 1999-11-09 | 2003-09-30 | International Business Machines Corporation | Cache coherency protocol permitting sharing of a locked data granule |
US6658532B1 (en) * | 1999-12-15 | 2003-12-02 | Intel Corporation | Cache flushing |
US6546462B1 (en) * | 1999-12-30 | 2003-04-08 | Intel Corporation | CLFLUSH micro-architectural implementation method and system |
GB2401227B (en) * | 1999-12-30 | 2005-03-16 | Intel Corp | Cache line flush micro-architectural implementation method and system |
US6868481B1 (en) * | 2000-10-31 | 2005-03-15 | Hewlett-Packard Development Company, L.P. | Cache coherence protocol for a multiple bus multiprocessor system |
US6675262B1 (en) * | 2001-06-08 | 2004-01-06 | Hewlett-Packard Company, L.P. | Multi-processor computer system with cache-flushing system using memory recall |
US6745294B1 (en) * | 2001-06-08 | 2004-06-01 | Hewlett-Packard Development Company, L.P. | Multi-processor computer system with lock driven cache-flushing system |
US7082551B2 (en) * | 2001-06-29 | 2006-07-25 | Bull Hn Information Systems Inc. | Method and data processing system providing checkpoint/restart across multiple heterogeneous computer systems |
JP3804823B2 (ja) * | 2001-07-03 | 2006-08-02 | 日本電気株式会社 | 障害回復機能を備えたキャッシュシステムとそのキャッシュ制御方法 |
US7114038B2 (en) * | 2001-12-28 | 2006-09-26 | Intel Corporation | Method and apparatus for communicating between integrated circuits in a low power mode |
US7062612B2 (en) * | 2002-12-12 | 2006-06-13 | International Business Machines Corporation | Updating remote locked cache |
US7099995B2 (en) * | 2004-02-17 | 2006-08-29 | International Business Machines Corporation | Metadata access during error handling routines |
CN100437499C (zh) * | 2005-09-26 | 2008-11-26 | 英业达股份有限公司 | 计算机平台快取资料备援处理方法及系统 |
US8019947B2 (en) * | 2005-10-19 | 2011-09-13 | Intel Corporation | Technique for thread communication and synchronization |
CN101800521B (zh) * | 2010-02-09 | 2013-01-23 | 上海山景集成电路股份有限公司 | 用于对数增益放大器的电阻控制网络 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB8814077D0 (en) * | 1988-06-14 | 1988-07-20 | Int Computers Ltd | Data memory system |
US5025365A (en) * | 1988-11-14 | 1991-06-18 | Unisys Corporation | Hardware implemented cache coherency protocol with duplicated distributed directories for high-performance multiprocessors |
US5072369A (en) * | 1989-04-07 | 1991-12-10 | Tektronix, Inc. | Interface between buses attached with cached modules providing address space mapped cache coherent memory access with SNOOP hit memory updates |
EP0412353A3 (en) * | 1989-08-11 | 1992-05-27 | Hitachi, Ltd. | Multiprocessor cache system having three states for generating invalidating signals upon write accesses |
DE4136729C2 (de) * | 1990-11-05 | 1995-07-20 | Mitsubishi Electric Corp | Cache-Steuereinrichtung |
US5479630A (en) * | 1991-04-03 | 1995-12-26 | Silicon Graphics Inc. | Hybrid cache having physical-cache and virtual-cache characteristics and method for accessing same |
US5414827A (en) * | 1991-12-19 | 1995-05-09 | Opti, Inc. | Automatic cache flush |
US5375216A (en) * | 1992-02-28 | 1994-12-20 | Motorola, Inc. | Apparatus and method for optimizing performance of a cache memory in a data processing system |
US5524233A (en) * | 1993-03-31 | 1996-06-04 | Intel Corporation | Method and apparatus for controlling an external cache memory wherein the cache controller is responsive to an interagent communication for performing cache control operations |
US5636374A (en) * | 1994-01-04 | 1997-06-03 | Intel Corporation | Method and apparatus for performing operations based upon the addresses of microinstructions |
US5553264A (en) * | 1994-06-24 | 1996-09-03 | Digital Equipment Corporation | Method and apparatus for efficient cache refilling by the use of forced cache misses |
-
1995
- 1995-06-19 JP JP7151732A patent/JP2902976B2/ja not_active Expired - Fee Related
-
1996
- 1996-05-28 US US08/653,909 patent/US5745730A/en not_active Expired - Fee Related
- 1996-06-13 EP EP96304420A patent/EP0750262B1/en not_active Expired - Lifetime
- 1996-06-13 DE DE69614779T patent/DE69614779T2/de not_active Expired - Fee Related
- 1996-06-17 KR KR1019960021796A patent/KR100212361B1/ko not_active IP Right Cessation
- 1996-06-17 CN CN96107629A patent/CN1084896C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP0750262B1 (en) | 2001-08-29 |
DE69614779D1 (de) | 2001-10-04 |
CN1142634A (zh) | 1997-02-12 |
US5745730A (en) | 1998-04-28 |
EP0750262A3 (en) | 1998-01-21 |
JP2902976B2 (ja) | 1999-06-07 |
CN1084896C (zh) | 2002-05-15 |
DE69614779T2 (de) | 2002-03-07 |
KR100212361B1 (ko) | 1999-08-02 |
JPH096680A (ja) | 1997-01-10 |
EP0750262A2 (en) | 1996-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR970002652A (ko) | 캐시 메모리의 내용을 플러시하는 장치 및 방법 | |
US7120755B2 (en) | Transfer of cache lines on-chip between processing cores in a multi-core system | |
JP3637054B2 (ja) | キャッシュ/メインメモリのコンシステンシを維持するための装置及び方法 | |
JP3289661B2 (ja) | キャッシュメモリシステム | |
US6260117B1 (en) | Method for increasing efficiency in a multi-processor system and multi-processor system with increased efficiency | |
US8255591B2 (en) | Method and system for managing cache injection in a multiprocessor system | |
US7925836B2 (en) | Selective coherency control | |
KR100285956B1 (ko) | 고속직렬버스에연결된동기식및비동기식장치의제어시스템과제어방법 | |
JP2007080220A (ja) | メモリ制御装置。 | |
KR860000595A (ko) | 정보처리장치를 위한 메모리액세스 제어방식 | |
US5748938A (en) | System and method for maintaining coherency of information transferred between multiple devices | |
KR880011676A (ko) | 캐쉬 메모리를 사용한 블록 액세스 방식 | |
US20180225208A1 (en) | Information processing device | |
JP3190847B2 (ja) | データ転送制御装置 | |
KR20150136045A (ko) | 리플렉티브 메모리를 이용한 일관성 구현 | |
JP3132566B2 (ja) | 命令先行制御装置 | |
US20090031101A1 (en) | Data processing system | |
KR960015583B1 (ko) | 다중프로세서의 캐시메모리 필터링장치 | |
JP3260566B2 (ja) | 情報処理システムにおける記憶制御方法および記憶制御装置 | |
KR100283187B1 (ko) | 공통 메모리를 사용하는 시스템에서 공통 메모리 억세스장치 및 방법 | |
JP4725044B2 (ja) | 情報処理装置 | |
KR960004059B1 (ko) | 비동기식 기억장치 접근방법 | |
JPS6125168B2 (ko) | ||
KR960015584B1 (ko) | 다중프로세서의 캐시메모리 필터링방법 | |
JPH0340149A (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 | ||
FPAY | Annual fee payment |
Payment date: 20080428 Year of fee payment: 10 |
|
LAPS | Lapse due to unpaid annual fee |