KR970002652A - 캐시 메모리의 내용을 플러시하는 장치 및 방법 - Google Patents

캐시 메모리의 내용을 플러시하는 장치 및 방법 Download PDF

Info

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
Application number
KR1019960021796A
Other languages
English (en)
Other versions
KR100212361B1 (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 사또오 후미오
Publication of KR970002652A publication Critical patent/KR970002652A/ko
Application granted granted Critical
Publication of KR100212361B1 publication Critical patent/KR100212361B1/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/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0831Cache 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. 캐시 메모리의 내용을 플러시하는 컴퓨터 시스템에 있어서, 버스 스누프 기능이 있으며, 카피-백 타입의 캐시 메모리를 갖는 프로세서와; 주 기억장치와; 상기 프로세서를 상기 주 기억장치에 접속하는 시스템 버스와; 상기 시스템 버스에 접속되며, 상기 시스템 버스상에 버스 명령을 제어하는 제어 수단과; 상기 제어 수단에 응답하여, 데이타가 상기 캐시 메모리에서 갱신될 때, 상기 갱신된 데이타에 대응하는 실제 어드레스와, 상기 캐시 메모리에 있는 데이타가 갱신 상태에 있다는 것을 나타내는 상태 정보를 저장하는 저장 수단과; 상기 캐시 메모리에 있는 갱신 데이타가 상기 주 기억장치에 저장될 때, 상기 저장 수단에 저장된 상태 정보를 판독하는 판독 수단과; 상기 시스템 버스에 접속되며, 상기 캐시 메모리에 있는 데이타가 상기 프로세서에 의해 변경되었다는 것이 상기 상태 정보에 의해 표시되면, 상기 캐시 메모리부터 상기 주 기억장치로 상기 갱신 데이타의 전송을 요청하는 무효화 버스 명령을 출력하는 명령 출력 수단을 구비하는 것을 특징으로 하는 컴퓨터 시스템.
  2. 제1항에 있어서, 어느 프로세서에 의해 출력되어 어느 캐시 메모리에 저장된 데이타와, 상기 프로세서와 다른 프로세서에 의해 출력되어 상기 캐시 메모리와 다른 캐시 메모리에 저장된 데이타 사이의 일관성을 유지하기 위해, 일관성 판독 명령에 의해 상기 주 기억장치로부터 상기 캐시 메모리로 데이타 전송이 일어났는지를 검사하는 수단과; 상기 일관성 판독 명령에 의한 타겟 데이타가 상기 검사 수단에 의해 공유상태에 있는지를 나타내는 응답을 실행하는 수단을 추가로 구비하는 것을 특징으로 하는 컴퓨터 시스템.
  3. 제1항에 있어서, 상기 판독 수단은 상기 저장 수단으로부터 복수의 상태 정보를 독출하는 제2판독 수단을 포함하며, 상기 제2판독 수단에 의해 독출된 복수의 상태 정보에 기초하여, 독출된 데이타가 갱신 상태에 있는지를 판정하는 수단과; 상기 판정 수단에 의해 판정된 상태 정보에 대응하는 실제 어드레스에 기초하여 , 상기 시스템 버스에 캐시 플러시 명령을 생성하는 명령 생성수단을 추가로 구비하는 것을 특징으로 하는 컴퓨터 시스템.
  4. 제3항에 있어서, 갱신 상태에 있는 상기 독출 데이타의 캐시 플러시 명령을 생성하기 위해 캐시 플러시 요청을 제공하는 수단과; 상기 캐시 플러시 요청중 하나를 선택하고, 이 선택된 요청을 상기 명령 생성 수단에 출력하는 멀티플렉서 수단을 추가로 구비하는 것을 특징으로 하는 컴퓨터 시스템.
  5. 제3항에 있어서, 상기 명령 생성 수단에 의해 생성된 상기 캐시 플레시 명령을 저장 및 출력하는 버퍼수단을 추가로 구비하는 것을 특징으로 하는 컴퓨터 시스템.
  6. 제5항에 있어서, 상기 버퍼 수단은 선입출선 버퍼인 것을 특징으로 하는 컴퓨터 시스템.
  7. 제1항에 있어서, 상기 저장 수단은 상기 갱신 데이타에 대응하는 실제 어드레스를 저장하는 제1저장 수단과 상기 캐시 메모리에 있는 데이타가 갱신 상태에 있는지를 나타내는 상태 정보를 저장하는 제2저장 수단을 포함하고, 상기 판독 수단은 상기 제2저장 수단으로부터 복수의 상태 정보를 판독하는 수단을 포함하며, 상기 판독 수단에 의해 판독된 상태 정보에 따라, 독출된 데이타가 갱신 상태에 있는지를 판정하는 수단과; 상기 판정 수단에 의해 판정된 상태 정보에 기초하여, 상기 캐시 메모리에 있는 데이타가 변경된 것이 상기 상태 정보에 의해 표시되면, 캐시 플러시 명령을 상기 시스템 버스에 생성하는 명령 생성 수단을 추가로 구비하는 것을 특징으로 하는 컴퓨터 시스템.
  8. 제7항에 있어서, 상기 판정 수단은 상기 캐시 메모리에 있는 데이타가 갱신 상태에 있다는 것이 상기 제2저장 수단으로부터 독출된 상태 정보에 의해 표시되면, 복수의 캐시 플러시 요청을 생성하는 수단을 포함하고, 상기 생성된 캐시 플러시 요청중 하나는 선택하는 멀티플렉서 수단과; 상기 선택된 캐시 플러시 요청을 저장하고, 상기 판정 수단에 의해 판정된 상태 정보에 대응하는 실제 어드레스를 판독하도록 판독 어드레스를 출력하는 제1버퍼 수단을 추가로 구비하는 것을 특징으로 하는 컴퓨터 시스템.
  9. 제8항에 있어서, 상기 제1저장 수단은 상기 명령 생성 수단에 의해 캐시 플러시 명령을 생성하기 위해, 출력된 판독 어드레스에 대응하는 실제 어드레스를 판독하는 수단을 포함하는 것을 특징으로 하는 컴퓨터 시스템.
  10. 제1항에 있어서, 상기 판독 수단에 의해 독출된 상태 정보에 기초하여, 데이타가 갱신 상태에 있는지를 판정하는 수단과; 상기 판정 수단에 의해 판정된 상태 정보에 대응하는 실제 어드레스에 기초하여, 캐시 플러시 명령을 상기 시스템 버스에 생성하는 명령 생성 수단을 추가로 구비하는 것을 특징으로 하는 컴퓨터 시스템.
  11. 제1항에 있어서, 상기 제어 수단은 상기 저장 수단에 있는 실제 어드레스와 상태 정보를 저장하기 위해 기록 어드레스를 출력하는 수단을 포함하는 것을 특징으로 하는 컴퓨터 시스템.
  12. 제11항에 있어서, 상기 판독 수단은 상기 저장 수단으로부터 상태 정보를 판독하기 위해 판독 어드레스를 출력하는 수단을 포함하는 것을 특징으로 하는 컴퓨터 시스템.
  13. 제12항에 있어서, 상기 기록 어드레스와 판독 어드레스가 동시에 수신되면, 상기 기록 어드레스에 우선 순위를 부여하는 수단을 포함하며, 상기 기록 어드레스와 판독 어드레스중 하나를 선택하는 멀티플렉서 수단을 추가로 구비하는 것을 특징으로 하는 컴퓨터 시스템.
  14. 제12항에 있어서, 상기 제어 수단은 상기 시스템 버스에 제공된 버스 명령을 전송하는 버스 인터페이스를 포함하고, 상기 버스 인터페이스에 접속되며, 캐시 플러시 동작을 실행할 플러시 개시비트의 값과, 상기 캐시 플러시 동작을 실행할 제어 데이타가 상기 프로세서에 의해 세트될 때 판독 어드레스의 반복된 시간에 대응하는 루프 카운트의 수를 저장하는 주 제어기 수단을 추가로 구비하는 것을 특징으로 하는 컴퓨터 시스템.
  15. 캐시 메모리의 내용을 플러시하는 방법에 있어서, 시스템 버스에 있는 버스 명령을 제어하는 단계와; 데이타가 상기 캐시 메모리에 저장될 때, 갱신 데이타에 대응하는 실제 데이타와, 상기 캐시 메모리에 있는 데이타가 갱신 상태에 있다는 것을 나타내는 상태 정보를 저장 수단에 저장하는 단계와; 상기 캐시 메모리에 있는 갱신 데이타가 주 기억장치에 저장되면, 상기 저장된 상태 정보를 판독하는 단계와; 상기 캐시 메모리에 있는 데이타가 변경되었으며, 상기 캐시 메모리로부터 상기 주 기억장치로 갱신 데이타의 전송을 요청하기 위해 무효화 버스 명령을 시스템 버스에 출력하는 단계를 포함하는 것을 특징으로 하는 방법.
  16. 제15항에 있어서, 상기 제어 단계에 따라, 제어 데이타가 프로세서에 의해 세트되면, 제어 레지스터에 있는 판독 어드레스의 반복된 시간에 대응하는 루프 카운트와, 캐시 플러시 동작을 실행하기 위해 플러시 개시 비트를 저장하는 단계를 추가로 포함하는 것을 특징으로 하는 방법.
  17. 제16항에 있어서, 제어 레지스터에 세트된 루프 카운트와 플러시 개시 비트에 기초하여, 태그 판독 어드레스를 생성하는 단계와; 상기 루프 카운트에 다라 상기 저장 수단으로부터 상기 태크 판독 어드레스에 대응하는 상태 정보를 추가로 포함하는 것을 특징으로 하는 방법.
  18. 제15항에 있어서, 상기 저장 수단에 있는 실제 어드레스와 상태 정보를 저장하기 위해 태그 기록 어드레스를 생성하는 단계를 추가로 포함하는 것을 특징으로 하는 방법.
  19. 제16항에 있어서, 상기 제어 레지스터에서 캐시 플러시 동작을 중단시키기 위해 한 비트를 세팅하는 단계를 추가로 포함하는 것을 특징으로 하는 방법.
  20. 제17항에 있어서, 태그 판독 어드레스가 생성되면, 상기 제어 레지스터로부터 판독된 루프 카운트를 감소시키는 단계와; 상기 태그 판독 어드레스에 대한 개시 어드레스를 증가시키는 단계를 추가로 포함하는 것을 특징으로 하는 방법.
    ※ 참고사항 : 최초출원 내용에 의하여 공개하는 것임.
KR1019960021796A 1995-06-19 1996-06-17 캐시 메모리의 내용을 플러시하는 장치 및 방법 KR100212361B1 (ko)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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