KR910005160A - 라이트액세스시에 무효화신호를 발생하여 3가지 상태를 갖는 멀티프로세서 캐시시스템 - Google Patents

라이트액세스시에 무효화신호를 발생하여 3가지 상태를 갖는 멀티프로세서 캐시시스템 Download PDF

Info

Publication number
KR910005160A
KR910005160A KR1019900011904A KR900011904A KR910005160A KR 910005160 A KR910005160 A KR 910005160A KR 1019900011904 A KR1019900011904 A KR 1019900011904A KR 900011904 A KR900011904 A KR 900011904A KR 910005160 A KR910005160 A KR 910005160A
Authority
KR
South Korea
Prior art keywords
cache memory
data
address
cache
state
Prior art date
Application number
KR1019900011904A
Other languages
English (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 미다 가쓰시게
Publication of KR910005160A publication Critical patent/KR910005160A/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
    • 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
    • G06F12/0833Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means in combination with broadcast means (e.g. for invalidation or updating)
    • 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

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)
  • Multi Processors (AREA)

Abstract

내용 없음

Description

라이트액세스시에 무효화신호를 발생하여 3가지 상태를 갖는 멀티프로세서 캐시시스템
본 내용은 요부공개 건이므로 전문내용을 수록하지 않았음
제1도는 본 발명의 1실시예에 의한 멀티프로세서시스템의 전체도.
제2도는 제1도의 멀티프로세서 시스템에 사용되는 캐시메모리의 내부구성도.
제3도는 제2도의 캐시메모리중의 어드레스어레이(101)의 내부구성도.

Claims (14)

  1. 어드레스를 발생하는 제1의 프로세서(1001), 상기 제1의 프로세서에서의 상기 어드레스에 따라서 액세스되는 제1의 캐시메모리(100:#1), 어드레스를 발생하는 제2의 프로세서(1002), 상기 제2의 프로세서에서의 상기 어드레스에 따라서 액세스되는 제2의 캐시메모리(100:#2), 상기 제1의 캐시메모리를 거쳐서 전달되는 상기 제1의 프로세서에서의 상기 어드레스 및 상기 제2의 캐시메모리를 거쳐서 전달되는 상기 제2의 프로세서에서의 상기 어드레스가 전달되는 어드레스버스(123), 상기 제1의 캐시모메모리를 거쳐서 상기 제1의 프로세서에 접속되고, 상기 제2의 캐시메모리를 거쳐서 상기 제2의 프로세서에 접속된 데이타버스(126), 상기 제1의 캐시메모리와 상기 제2의 캐시메모리에 접속된 무효화신호선(131) 및 상기 어드레스버스와 상기 데이타버스에 접속된 기억수단(1004)를 포함하고, 상기 제1의 캐시메모리와 상기 제2의 캐시메모리는 적어도 카피백법으로 동작하고, 상기 제1의 캐시메모리의 데이타의 상태는 상기 캐시메모리내의 해당 데이타가 무효인 것에 대응하는 제1의 상태와 상기 캐시메모리내의 해당 데이타가 유효이며 또한 미갱신인 것에 대응하는 제2의 상태와 상기 캐시메모리내의 해당데이타가 유효이며 또한 갱신이 끝난 것에 대응하는 제3의 상태만으로 본질적으로 되는 군에서 선택된 하나의 상태도 존재하며, 상기 제2의 캐시메모리의 데이타의 상태는 상기 군에서 선택된 하나의 상태로 존재하고, 상기 제1의 프로세서에서의 라이트액세스가 상기 제1의 캐시메모리에 히트했을 때 상기 제1의 캐시메모리의 데이타의 상태는 상기한 유효, 미갱신의 제2의 상태에서 상기한 유효, 갱신이 끝난 제3의 상태로 천이하는 한편, 또 상기 제1의 캐시메모리는 상기 라이트히트의 어드레스와 무효화신호를 상기 어드레스버스와 상기 무효화신호선에 각각 출력하며, 상기 제2의 프로세서에서의 라이트액세스가 상기 제2의 캐시메모리에 히트했을 때 상기 제2의 캐시메모리의 데이타의 상태는 상기한 유효, 미갱신의 제2의 상태에서 상기한 유효, 갱신이 끝난 제3의 상태로 천이하는 한편, 또 상기 제2의 캐시메모리는 상기 라이트 히트의 어드레스와 무효화신호를 상기 어드레스버스와 상기 무효화신호선에 각각 출력하고, 상기 제1의 프로세서에서의 라이트액세스가 상기 제1의 캐시메모리에 미스했을 때 상기 제1의 캐시메모리는 상기 라이트미스의 어드레스를 상기 어드레스버스에 출력하는 것에 의해 상기 기억수단에서 1블럭의 데이타를 블럭리드하는 한편, 무효화신호를 상기 무효화신호선에 출력하고, 그 후에 상기 블럭리드된 1블럭으로의 상기 라이트미스에 관계된 데이타의 라이트를 상기 제1의 캐시메모리가 실행하며, 상기 제2의 프로세서에서의 라이트액세스가 상기 제2의 캐시메모리에 미스했을 때 상기 제2의 캐시메모리는 상기 라이트미스의 어드레스를 상기 어드레스버스에 출력하는 것에 의해 상기 기억수단에서 1블럭의 데이타를 블럭 리드하는 한편, 무효화신호를 상기 무효화신호선에 출력하고, 그후에 상기 블럭리드된 1블럭으로의 상기 라이트 미스에 관계된 데이타의 라이트를 상기 제2의 캐시메모리가 실행하고, 상기 어드레스버스에 리드 및 라이트중 어느 하나에 관계되는 액세스 요구의 어드레스가 공급되어 있을 때 상기 제1의 캐시메모리 및 상기 제2의 캐시메모리중 한쪽의 캐시가 상기 어드레스에 관계된 유효, 갱신이 끝난 제3의 상태의 데이타를 유지하고 있는 경우 상기 캐시는 상기 데이타를 상기 기억수단에 리라이트하는 한편, 상기 어드레스에 관계된 상기 데이타를 상기 제3의 상태에서 유효, 미갱신의 제2의 상태로 천이시키는 멀티프로세서 시스템.
  2. 특허청구의 범위 제1항에 있어서, 상기 기억수단은 주기억인 멀티프로세서 시스템.
  3. 특허청구의 범위 제1항에 있어서, 또 상기 어드레스버스 및 상기 데이타버스에 접속된 입출력 장치(1003)을 포함하고, 상기 제1의 프로세서의 상기 제1의 캐시로의 액세스의 미스에 기인해서 상기 제1의 캐시와 상기 기억수단 사이의 여러개의 워드로 되는 1블럭이 전송되고, 상기 전송의 워드와 워드 사이의 버스비사용기간에 상기 1블럭과 다른 블럭에 관해서 상기 제2의 캐시 및 상기 입출력장치중 한쪽이 상기 어드레스버스를 액세스했을 때 상기 한쪽이 상기 어드레스버스 및 상기 데이타버스를 거쳐서 상기 기억수단이 액세스를 실행한 후 상기 미스에 기인한 상기 전송의 나머지를 완료하도록 상기 제1의 캐시가 상기 한쪽의 액세스에 응답하는 멀티프로세서 시스템.
  4. 특허 청구의 범위 제3항에 있어서, 상기 미스에 기인한 상기 전송의 워드와 워드 사이의 비사용기간에 상기 1블럭과 같은 블럭에 관해서 상기 제2의 캐시 및 상기 입출력장치중 한쪽이 상기 어드레스를 액세스했을 때 상기 미스에 기인한 상기 전송의 나머지를 완료한 후 상기 한쪽이 상기 어드레스버스 및 상기 데이타 버스를 거쳐서 상기 기억수단이 액세스를 실행하도록 상기 제1의 캐시가 상기 한쪽의 액세스에 응답하는 멀티프로세서 시스템.
  5. 특허 청구의 범위 제1항에 있어서, 또 상기 어드레스버스 및 상기 데이타버스에 접속된 입출력 장치를 포함하고, 상기 입출력장치가 소정수의 위드로 되는 1블럭의 데이타를 상기 기억수단에 라이트할 때 상기 라이트의 어드레스에 해당해서 유효이며 또한 갱신이 끝난 제3의 상태의 데이타를 상기 제1과 제2의 캐시중 한쪽이 유지하고 있는 경우 상기 캐시는 상기 제3의 상태의 데이타의 상기 기억수단으로의 라이트를 생략하도록 상기 캐시가 상기 기억수단으로의 라이트에 응답하는 멀티프로세서 시스템.
  6. 특허청구의 범위 제5항에 있어서, 상기 기억수단은 주기억인 멀티프로세서 시스템.
  7. 특허 청구의 범위 제5항에 있어서, 상기 기억수단으로의 상기 라이트에 응답해서 상기 캐시는 상기 데이타의 상태를 상기 제3의 상태에서 무효의 제1의 상태로 천이시키는 멀티프로세서시스템.
  8. 어드레스를 발생하는 제1의 프로세서, 어드레스를 발생하는 제2의 프로세서, 상기 제1의 프로세서에서의 상기 어드레스와 상기 제2의 프로세서에서의 상기 어드레스가 전달되는 어드레스버스, 상길 제1의 프로세서와 상기 제2의 프로세서의 데이타를 전송하기 위한 데이타버스 및 상기 어드레스버스와 상기 데이타버스에 접속된 기억수단을 갖는 멀티프로세서 시스템에 사용되는 캐시메모리에 있어서, 상기 제1의 프로세서에서의 상기 어드레스에 따라서 액세스되고, 적어도 카피백법으로 동작하는 제1의 캐시 메모리와 상기 제2의 프로세서에서의 상기 어드레스에 따라서 액세스되고, 적어도 카피백법으로 동작하는 제2의 캐시메모리를 포함하고, 상기 제1의 캐시메모리의 데이타의 상태는 상기 캐시 메모리내의 해당 데이타가 무효인 것에 대응하는 제1의 상태와 상기 캐시메모리내의 해당 데이타가 유효이며 또한 미갱신인 것에 대응하는 제2의 상태와 상기 캐시 메모리내의 해당 데이타가 유효이며 또한 갱신이 끝난 것에 대응하는 제3의 상태만으로 본질적으로 되는 군에서 선택된 하나의 상태로 존재하며, 상기 제2의 캐시메모리의 데이타의 상태는 상기 군에서 선택된 하나의 상태로 존재하고, 상기 제1의 캐시메모리와 상기 제2의 캐시메모리는 접속된 무효화 신호선을 거쳐서 접속되고, 상기 제1의 프로세서에서의 라이트액세스가 상기 제1의 캐시메모리에 히트했을 때 상기 제1의 캐시메모리의 데이타의 상태는 상기한 유효, 미갱신의 제2의 상태에서 상기한 유효, 갱신이 끝난 제3의 상태로 천이하는 한편, 또 상기 제1의 캐시메모리는 상기 라이트히트의 어드레스와 무효화신호를 상기 어드레스버스와 상기 무효화신호선에 각각 출력하며, 상기 제2의 프로세서에서의 라이트액세스가 상기 제2의 캐시메모리에 히트했을 때 상기 제2의 캐시메모리의 데이타의 상태는 상기한 유효, 미갱신의 제2의 상태에서 상기한 유효, 갱신이 끝난 제3의 상태로 천이하는 한편, 또 상기 제2의 캐시메모리는 상기 라이트히트의 어드레스와 무효화신호를 상기 어드레스버스와 상기 무효화신호선에 각각 출력하고, 상기 제1의 프로세서에서의 라이트액세스가 상기 제1의 캐시메모리에 미스했을 때 상기 제1의 캐시메모리는 상기라이트미스의 어드레스를 상기 어드레스버스에 출력하는 것에 의해 상기 기억수단에서 1블럭의 데이타를 블럭리드하는 한편, 무효화신호를 상기 무효화신호선에 출력하고, 그후 상기 블럭리드된 1블럭으로의 상기 라이트미스에 관계된 데이타의 라이트를 상기 제1의 캐시메모리가 실행하며, 상기 제2의 프로세서에서의 라이트액세스가 상기 제2의 캐시메모리에 미스했을 때 상기 제2의 캐시메모리는 상기 라이트미스의 어드레스를 상기 어드레스버스에 출력하는 것에 의해 상기 기억수단에서 1블럭으로의 데이타를 블럭리드하는 한편, 무효화신호를 상기 무효화 신호선에 출력하고, 그후에 상기 블럭리드된 1블럭으로의 상기 라이트미스에 관계된 데이타의 라이트를 상기 제2의 캐시메모리가 실행하고, 상기 어드레스버스에 리드 및 라이트중 어느 하나에 관계되는 액세스요구의 어드레스가 공급되어 있을 때 상기 제1의 캐시메모리 및 상기 제2의 캐시메모리의 각 캐시가 상기 어드레스에 관계된 유효, 갱신이 끝난 제3의 상태의 데이타를 유지하고 있는 경우 상기 캐시는 상기 데이타를 상기 기억수단으로 리라이트하는 한편, 상기 어드레스에 관계된 상기 데이타를 상기 제3의 상태에서 유효, 미갱신의 제2의 상태로 천이시키는 캐시메모리.
  9. 특허 청구의 범위 제 8항에 있어서, 상기 제1과 제2의 캐시는 상기 멀티프로세서 시스템중의 주기억인 상기 기억수단의 데이타의 복사를 저장하는 캐시메모리.
  10. 특허 청구의 범위 제8항에 있어서, 상기 멀티프로세서 시스템은 상기 어드레스버스와 상기 데이타버스에 접속된 입출력장치를 또 포함하고, 상기 제1의 프로세서의 상기 제1의 캐시로의 액세스의 미스에 기인해서 상기 제1의 캐시와 상기 기억수단 사이에서 여러개의 워드로 되는 1블럭이 전송되고, 상기 전송의 워드와 워드 사이의 버스비사용기간에 상기 1블럭과 다른 블럭에 관해서 상기 제2의 캐시 및 상기 입출력장치중 한쪽이 상기 어드레스버스를 거쳐서 상기 기억수단이 액세스를 완료한후 상기 미스에 기인한 상기 전송의 나머지를 완료하도록 실행하도록 상기 제1의 캐시가 상기 한쪽의 액세스에 응답하는 캐시메모리.
  11. 특허 청구의 범위 제10항에 있어서, 상기 미스에 기인한 상기 전송의 워드와 워드 사이의 버스비사용기간에 상기 1블럭과 같은 블럭에 관해서 상기 제2의 캐시 및 상기 입출력장치중 한쪽이 상기 어드레스 버스를 액세스했을 때 상기 미스에 기인한 상기 전송의 나머지를 완료한 후 상기 한쪽이 상기 어드레스버스 및 상기 데이타버스를 거쳐서 상기 기억수단이 액세스를 실행하도록 상기 제1의 캐시가 상기 한쪽의 액세스에 응답하는 캐시메모리.
  12. 특허 청구의 범위 제8항에 있어서, 상기 멀티프로세서 시스템은 상기 어드레스버스 및 상기 데이타버스에 접속된 입출력장치를 또 포함하고, 상기 입출력장치가 소정수의 워드로 되는 1블럭의 데이타를 상기 기억수단에 라이트할 때 상기 라이트의 어드레스에 해당해서 유효이며 또한 갱신이 끝난 제3의 상태의 데이타를 상기 제1과 제2의 캐시중 한쪽이 유지하고 있는 경우 상기 캐시는 상기 제3의 상태의 데이타의 상기 기억수단으로의 라이트를 생략하도록 상기 캐시가 상기 기억수단으로의 상기 라이트에 응답하는 캐시메모리.
  13. 특허 청구의 범위 제12항에 있어서, 상기 제1과 제2의 캐시는 상기 멀티프로세서 시스템 중의 주기억인 상기 기억수단의 데이타의 복사를 저장하는 캐시메모리.
  14. 특허 청구의 범위 제12항에 있어서, 상기 기억수단으로의 상기 라이트에 응답해서 상기 캐시는 상기 데이타의 상태를 상기 제3의 상태에서 무효의 제1의 상태로 천이시키는 캐시메모리.
    ※ 참고사항 : 최초출원 내용에 의하여 공개하는 것임.
KR1019900011904A 1989-08-11 1990-08-03 라이트액세스시에 무효화신호를 발생하여 3가지 상태를 갖는 멀티프로세서 캐시시스템 KR910005160A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP20677389 1989-08-11
JP1-206773 1989-08-11

Publications (1)

Publication Number Publication Date
KR910005160A true KR910005160A (ko) 1991-03-30

Family

ID=16528851

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019900011904A KR910005160A (ko) 1989-08-11 1990-08-03 라이트액세스시에 무효화신호를 발생하여 3가지 상태를 갖는 멀티프로세서 캐시시스템

Country Status (3)

Country Link
EP (1) EP0412353A3 (ko)
JP (1) JPH03163640A (ko)
KR (1) KR910005160A (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2902976B2 (ja) * 1995-06-19 1999-06-07 株式会社東芝 キャッシュフラッシュ装置
US7283061B1 (en) 1998-08-28 2007-10-16 Marathon Oil Company Method and system for performing operations and for improving production in wells
US6393529B1 (en) 1998-12-21 2002-05-21 Advanced Micro Devices, Inc. Conversation of distributed memory bandwidth in multiprocessor system with cache coherency by transmitting cancel subsequent to victim write
US6370621B1 (en) 1998-12-21 2002-04-09 Advanced Micro Devices, Inc. Memory cancel response optionally cancelling memory controller's providing of data in response to a read operation
US6275905B1 (en) 1998-12-21 2001-08-14 Advanced Micro Devices, Inc. Messaging scheme to maintain cache coherency and conserve system memory bandwidth during a memory read operation in a multiprocessing computer system
US6490661B1 (en) 1998-12-21 2002-12-03 Advanced Micro Devices, Inc. Maintaining cache coherency during a memory read operation in a multiprocessing computer system
US6631401B1 (en) 1998-12-21 2003-10-07 Advanced Micro Devices, Inc. Flexible probe/probe response routing for maintaining coherency
EP2320322A3 (en) * 1998-12-21 2011-08-03 Advanced Micro Devices, Inc. Conservation of system memory bandwidth and cache coherency maintenance using memory cancel messages
JP6367689B2 (ja) * 2014-11-11 2018-08-01 ファナック株式会社 プログラマブルコントローラに適したマルチプロセッサシステム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2430637A1 (fr) * 1978-07-06 1980-02-01 Cii Honeywell Bull Procede et dispositif pour garantir la coherence des informations entre des caches et d'autres memoires d'un systeme de traitement de l'information travaillant en multitraitement
US4959777A (en) * 1987-07-27 1990-09-25 Motorola Computer X Write-shared cache circuit for multiprocessor system

Also Published As

Publication number Publication date
EP0412353A3 (en) 1992-05-27
JPH03163640A (ja) 1991-07-15
EP0412353A2 (en) 1991-02-13

Similar Documents

Publication Publication Date Title
US5249284A (en) Method and system for maintaining data coherency between main and cache memories
US6205521B1 (en) Inclusion map for accelerated cache flush
US4959777A (en) Write-shared cache circuit for multiprocessor system
US7032074B2 (en) Method and mechanism to use a cache to translate from a virtual bus to a physical bus
JP3510240B2 (ja) キャッシュメモリー付マルチ処理システム
US5003459A (en) Cache memory system
US4825412A (en) Lockout registers
US6711653B1 (en) Flexible mechanism for enforcing coherency among caching structures
US5590310A (en) Method and structure for data integrity in a multiple level cache system
US7117312B1 (en) Mechanism and method employing a plurality of hash functions for cache snoop filtering
JPH09237223A (ja) バスブリッジを用いたコンピュータシステム
EP0470739B1 (en) Method for managing a cache memory system
US6178484B1 (en) DCBST with ICBI mechanism to maintain coherency of bifurcated data and instruction caches
KR100326989B1 (ko) 스누핑 포트를 사용하는 프리페치 캐시 질의 방법 및 시스템
US5920891A (en) Architecture and method for controlling a cache memory
KR910005160A (ko) 라이트액세스시에 무효화신호를 발생하여 3가지 상태를 갖는 멀티프로세서 캐시시스템
KR100322223B1 (ko) 대기행렬및스누프테이블을갖는메모리제어기
KR100326632B1 (ko) 에이치_알 상태를 포함하는 캐시 일관성 프로토콜
EP0535701A1 (en) Architecture and method for combining static cache memory and dynamic main memory on the same chip (CDRAM)
KR100380674B1 (ko) 멀티프로세서 시스템에서의 기록-통과 기억 동작동안 캐시코히어런스를 유지하는 방법 및 시스템
CA1299767C (en) Cache memory control system
US6401173B1 (en) Method and apparatus for optimizing bcache tag performance by inferring bcache tag state from internal processor state
KR940007686A (ko) 캐시(Cache) 메모리를 가지는 프로세서(Processor)
JP3302905B2 (ja) バスインタフェースアダプタおよびコンピュータシステム
JP3081635B2 (ja) キャッシュメモリの無効化処理装置および無効化制御方法

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid