KR960015237A - 데이타 캐쉬 어레이 및 그를 이용한 데이타 캐슁 방법 및 데이타 처리 시스템 - Google Patents

데이타 캐쉬 어레이 및 그를 이용한 데이타 캐슁 방법 및 데이타 처리 시스템 Download PDF

Info

Publication number
KR960015237A
KR960015237A KR1019950034109A KR19950034109A KR960015237A KR 960015237 A KR960015237 A KR 960015237A KR 1019950034109 A KR1019950034109 A KR 1019950034109A KR 19950034109 A KR19950034109 A KR 19950034109A KR 960015237 A KR960015237 A KR 960015237A
Authority
KR
South Korea
Prior art keywords
data
address
cache array
data cache
cache
Prior art date
Application number
KR1019950034109A
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 KR960015237A publication Critical patent/KR960015237A/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/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1045Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
    • 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/0864Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using pseudo-associative means, e.g. set-associative or hashing

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)

Abstract

본 발명에 따른 인터리브된 데이타 캐쉬 어레이는 두개의 서브어레이로 나뉘어진다. 각각의 서브어레이는, 각각의 캐쉬 라인이 선택된 데이타 블럭, 패리티 필드, 상기 선택된 데이타 블럭에 대한 유효 어드레스 부분을 포함하는 제1연관 필드, 상기 선택된 데이타 블럭에 대한 실제 어드레스 부분을 포함하는 제2연관 필드 및 데이타 상태 필드를 갖는 다수의 캐쉬 라인을 포함한다. 상기 유효 어드레스 및 실제 어드레스에 대하여 두 개의 분리된 연관 필드를 이용하므로써 오프셋 및 문제점들이 효과적으로 해결될 수 있다. 데이타 캐서는 8개 방식 세트-연관 캐쉬로서 배열되는 것이 바람직하며, 이러한 8개 방식 세트-연관 캐쉬내에서 각각의 합동 클래스는 동일한 하위어드레스 비트를 갖는 최고 8개의 엔트리를 포함한다. 분리된 유효 어드레스 포트 및 실제 어드레스 포트는 분리된 서브어레이내의 충돌을 일으키지 않고 캐쉬에 대한 병렬 액세스를 가능하게 하며, 유효 어드레스 포트 및 실제 어드레스 포트 양쪽에 의해 단일 서브어레이에 대한 동시 액세스가 시도된 경우를 위하여 서브어레이 중재 논리 회로가 제공된다.

Description

데이타 캐쉬 어레이 및 그를 이용한 데이타 캐슁 방법 및 데이타 처리 시스템
본 내용은 요부공개 건이므로 전문내용을 수록하지 않았음
제2도는 본 발명의 바람직한 실시예에 따른, 정보 캐슁용 반-연관 맵핑 기법을 개념적으로 예시하는 도면,
제3도는 제1 및 제2처리 시스템을 포함하는 예시적인 시스템 및 레벨 2(“L2”)캐쉬 메모리의 블럭도.

Claims (19)

  1. 다수의 캐쉬 라인(a plurality of cache lines)으로서, 상기 다수의 캐쉬 라인의 각각은, 선택된 정보 블럭(a selected block of information)과, 적어도 상기 선택된 정보 블럭을 위한 다수-비트 유효 어드레스 부분(a portion of a mutt-bit effective address)을 포함하는 제1연관 필드(a first content addressable field)와, 적어도 상기 선택된 정보 출력을 위 한 다수-비트 실제 어드레스 부분(a portion of a mutt-bit real address)을 포함하는 제2연관 필드(a second content addressable field)를 구비하는 상기 다수의 캐쉬 라인을 포함하되, 상기 선택된 정보 블럭은 유효 어드레스 또는 실제 어드레스 중 어느 것을 이용하여 효율적으로 할당될 수 있는 데이타 캐쉬 어레이(a data cache array).
  2. 제1항에 있어서, 다수의 서브어레이(a plurality of subarrays)로서, 각각의 서브어레이는 다수의 캐쉬 라인을 구비하는 상기 다수의 서브어레이를 더 포함하는 데이타 캐쉬 어레이.
  3. 제1항에 있어서, 다수의 합동 클래스(a plurality of congruence classes)로서, 상기 다수의 합동 클래스의 각각은 상기 다수의 캐쉬 라인의 선택된 서브세트(a selected subset)을 구비하는 상기 다수의 합동 플래스를 포함하는 데이타 캐쉬 어레이.
  4. 제3항에 있어서, 상기 다수의 합동 클래스는 8개의 상기 다수의 캐쉬 라인을 포함하는 데이타 캐쉬 어레이.
  5. 제2항에 있어서, 상기 데이타 캐쉬 어레이에 결합된 유효 어드레스 포트(aneffective address port) 및 실제 어드레스 포트(a real address port)를 더 포함하는 데이타 캐쉬 어레이.
  6. 제5항에 있어서, 상기 유효 어드레스 포트 및 상기 실제 어드레스 포트를 이용하여 단일의 서브어레이에 대한 동시 액세스가 시도된 경우에 응답하여 데이타 캐쉬 어레이내의 상기 단일의 서브어레이에 대한 액세스를 제어하는 서브어레이 중재 회로(a subarray arbitration circuit)를 더 포함하는 데이타 캐쉬 어레이.
  7. 제1항에 있어서, 상기 다수의 캐쉬 라인의 각각은 데이타 상태 필드(a data status field)를 더 포함하는 데이타 캐쉬 어레이.
  8. 다수의 캐쉬 라인을 갖는 데이타 캐쉬 어레이를 제공하는 단계와; 상기 각 캐쉬 라인내에서, 선택된 정보 블럭을 저장하는 단계와; 적어도 상기 선택된 정보 블럭에 대한 다수-비트 유효 어드레스 부분을 제1연관 필드에 저장하는 단계와; 적어도 상기 선택된 정보 출력에 대한 다수-비트 실제 어드레스 부분을 저장하는 단계;를 포함하되, 상기 선택된 정보 출력은 유효 어드레스 또는 실제 어드레스 중 어느 것을 이용하여 상기 데이타 캐쉬 어레이내에 효과적으로 일치될 수 있는 데이타 처리 시스템내의 데이타 캐슁 방법(a method of caching data).
  9. 제8항에 있어서, 상기 선택된 정보 블럭에 대한 다수-비트 유효 어드레스 부분을 제1연관 필드내에 저장하는 상기 단계는 상기 선택된 정보 출력에 대한 상기 다수-비트 불완전 어드레스(multi-bit defective address)중 8비트를 제1연관 필드내에 저장하는 단계를 포함하는 데이타 캐슁 방법.
  10. 제8항에 있어서, 상기 선택된 정보 블럭에 대한 다수-비트 실제 어드레스 부분을 제1연관 필드내에 저장하는 상기 단계는 상기 선택된 정보 블럭에 대한 상기 다수-비트 불완전 어드레스중 28비트를 저장하는 단계를 포함하는 데이타 캐슁 방법.
  11. 제8항에 있어서, 상기 데이타 캐쉬 어레이를 다수의 합동 클래스로 나누는 단계를 더 포함하는 데이타 캐슁 방법.
  12. 제11항에 있어서, 상기 데이타 어레이를 다수의 합동 클래스로 나누는 단계는 상기 데이타 캐쉬 어레이를, 제각기 8개의 캐쉬 라인을 각각 포함하는 다수의 합동 클래스로 나누는 단계를 포함하는 데이타 캐슁 방법.
  13. 프로세서(a processor)와; 주 메모리 저장장치(a main memory store)와; 상기 주 메모리 저장장치로 부터의 정보 블럭을 일시적으로 저장하는 데이타 캐쉬 어레이로서, 상기 데이타 캐쉬 어레이는 다수의 캐쉬 라인으로서 상기 다수의 캐쉬 라인의 각각은, 선택된 정보 블럭과, 적어도 상기 선택된 정보 블럭에 대한 다수-비트 유효 어드레스 부분을 포함하는 제1연관 필드와, 적어도 상기 선택된 정보 블럭에 대한 다수-비트 실제 어드레스 부분을 포함하는 제2연관 필드를 갖되, 상기 선택된 정보 블럭은 유효 어드레스 또는 실제 어드레스중 어느 것을 이용하여 상기 데이타 캐쉬 어레이내에 효과적으로 위치될 수 있는 상기 다수의 캐쉬 라인을 구비한 상기 데이타 캐쉬 어레이를 포함하는 데이타 처리 시스템(a data processing system).
  14. 제13항에 있어서, 상기 데이타 캐쉬 어레이는 다수의 서브어레이를 포함하고, 상기 각 서브어레이는 다수의 캐쉬 라인을 포함하는 데이타 처리 시스템.
  15. 제13항에 있어서, 상기 데이타 캐쉬 어레이는 다수의 합동 클래스를 포함하고, 상기 다수의 합동 클래스의 각각은 상기 다수의 캐쉬 라인중에서 선택된 서브세트(a selected subset)를 포함하는 데이타 처리 시스템.
  16. 제15항에 있어서, 상기 다수의 합동 클래스의 각각은 8개의 상기 다수의 캐쉬 라인을 포함하는 데이타 처리 시스템.
  17. 제14항에 있어서 상기 데이타 캐쉬 어레이에 결합된 유효 어드레스 포트 및 실제 어드레스 포트를 더 포함하는 데이터 처리 시스템.
  18. 제17항에 있어서, 상기 유효 어드레스 포트 및 상기 실제 어드레스 포트 양쪽을 이용하여 단일의 서브어레이에 대한 동시 액세스가 시도된 경우에 응답하여, 상기 데이타 캐쉬 어레이내의 단일의 서브어레이에 대한 액세스를 제어하는 서브어레이 중재 회로를 더 포함하는 데이타 처리 시스템.
  19. 제13항에 있어서, 상기 다수의 캐쉬 라인의 각각은 데이타 상태 필드를 더 포함하는 데이타 처리 시스템.
    ※ 참고사항 : 최초출원 내용에 의하여 공개하는 것임.
KR1019950034109A 1994-10-05 1995-10-05 데이타 캐쉬 어레이 및 그를 이용한 데이타 캐슁 방법 및 데이타 처리 시스템 KR960015237A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/319,329 1994-10-05
US08/319,329 US5805855A (en) 1994-10-05 1994-10-05 Data cache array having multiple content addressable fields per cache line

Publications (1)

Publication Number Publication Date
KR960015237A true KR960015237A (ko) 1996-05-22

Family

ID=23241793

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950034109A KR960015237A (ko) 1994-10-05 1995-10-05 데이타 캐쉬 어레이 및 그를 이용한 데이타 캐슁 방법 및 데이타 처리 시스템

Country Status (4)

Country Link
US (1) US5805855A (ko)
EP (1) EP0708404A2 (ko)
JP (1) JPH08227380A (ko)
KR (1) KR960015237A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100479623B1 (ko) * 1997-04-15 2005-07-07 엘지전자 주식회사 캐시태그메모리및그구동시스템

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10509819A (ja) * 1994-10-14 1998-09-22 シリコン グラフィックス インク. インターリーブされるキャッシュメモリアレイのインデッキシングとマルチプレキシング
US5761714A (en) * 1996-04-26 1998-06-02 International Business Machines Corporation Single-cycle multi-accessible interleaved cache
US6112278A (en) * 1996-09-30 2000-08-29 Lsi Logic Corporation Method to store initiator information for SCSI data transfer
US6026470A (en) * 1997-04-14 2000-02-15 International Business Machines Corporation Software-managed programmable associativity caching mechanism monitoring cache misses to selectively implement multiple associativity levels
US5978888A (en) * 1997-04-14 1999-11-02 International Business Machines Corporation Hardware-managed programmable associativity caching mechanism monitoring cache misses to selectively implement multiple associativity levels
US6032228A (en) * 1997-11-26 2000-02-29 International Business Machines Corporation Flexible cache-coherency mechanism
JPH11212864A (ja) * 1998-01-29 1999-08-06 Sanyo Electric Co Ltd メモリ装置
US6202128B1 (en) * 1998-03-11 2001-03-13 International Business Machines Corporation Method and system for pre-fetch cache interrogation using snoop port
JP2000010860A (ja) * 1998-06-16 2000-01-14 Hitachi Ltd キャッシュメモリ制御回路及びプロセッサ及びプロセッサシステム及び並列プロセッサシステム
US6141731A (en) * 1998-08-19 2000-10-31 International Business Machines Corporation Method and system for managing data in cache using multiple data structures
WO2001037099A1 (de) * 1999-11-16 2001-05-25 Infineon Technologies Ag Speicher für die zentraleinheit einer rechenanlage
US6640293B1 (en) * 2000-07-24 2003-10-28 International Business Machines Corporation Apparatus and method of utilizing Alias Hit signals to detect errors within the real address tag arrays
US6784892B1 (en) 2000-10-05 2004-08-31 Micron Technology, Inc. Fully associative texture cache having content addressable memory and method for use thereof
US6732228B1 (en) * 2001-07-19 2004-05-04 Network Elements, Inc. Multi-protocol data classification using on-chip CAM
US7133409B1 (en) 2001-07-19 2006-11-07 Richard Willardson Programmable packet filtering in a prioritized chain
AU2002334906A1 (en) * 2001-10-09 2003-04-22 Infinera Corporation Transmitter photonic integrated circuits (txpic) and optical transport networks employing txpics
US7035979B2 (en) * 2002-05-22 2006-04-25 International Business Machines Corporation Method and apparatus for optimizing cache hit ratio in non L1 caches
US7073030B2 (en) 2002-05-22 2006-07-04 International Business Machines Corporation Method and apparatus providing non level one information caching using prefetch to increase a hit ratio
US7610440B2 (en) * 2002-10-23 2009-10-27 Husby Donald E Content addressable memory with automated learning
US6990556B2 (en) * 2003-05-12 2006-01-24 International Business Machines Corporation System and method for simultaneous access of the same doubleword in cache storage
US7035986B2 (en) * 2003-05-12 2006-04-25 International Business Machines Corporation System and method for simultaneous access of the same line in cache storage
TW200506733A (en) * 2003-08-15 2005-02-16 Via Tech Inc Apparatus and method for the co-simulation of CPU and DUT modules

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4400770A (en) * 1980-11-10 1983-08-23 International Business Machines Corporation Cache synonym detection and handling means
USRE37305E1 (en) * 1982-12-30 2001-07-31 International Business Machines Corporation Virtual memory address translation mechanism with controlled data persistence
US4680700A (en) * 1983-12-07 1987-07-14 International Business Machines Corporation Virtual memory address translation mechanism with combined hash address table and inverted page table
US4577293A (en) * 1984-06-01 1986-03-18 International Business Machines Corporation Distributed, on-chip cache
EP0180369B1 (en) * 1984-10-31 1992-08-19 Texas Instruments Incorporated Cache memory addressable by both physical and virtual addresses
US5119290A (en) * 1987-10-02 1992-06-02 Sun Microsystems, Inc. Alias address support
US5446844A (en) * 1987-10-05 1995-08-29 Unisys Corporation Peripheral memory interface controller as a cache for a large data processing system
US5133061A (en) * 1987-10-29 1992-07-21 International Business Machines Corporation Mechanism for improving the randomization of cache accesses utilizing abit-matrix multiplication permutation of cache addresses
US4943908A (en) * 1987-12-02 1990-07-24 International Business Machines Corporation Multiple branch analyzer for prefetching cache lines
US4905188A (en) * 1988-02-22 1990-02-27 International Business Machines Corporation Functional cache memory chip architecture for improved cache access
US5247649A (en) * 1988-05-06 1993-09-21 Hitachi, Ltd. Multi-processor system having a multi-port cache memory
US4945512A (en) * 1988-09-07 1990-07-31 Unisys Corporation High-speed partitioned set associative cache memory
US4905141A (en) * 1988-10-25 1990-02-27 International Business Machines Corporation Partitioned cache memory with partition look-aside table (PLAT) for early partition assignment identification
US5127091A (en) * 1989-01-13 1992-06-30 International Business Machines Corporation System for reducing delay in instruction execution by executing branch instructions in separate processor while dispatching subsequent instructions to primary processor
US5091851A (en) * 1989-07-19 1992-02-25 Hewlett-Packard Company Fast multiple-word accesses from a multi-way set-associative cache memory
JPH0786848B2 (ja) * 1989-11-01 1995-09-20 三菱電機株式会社 キャッシュメモリ
GB9205551D0 (en) * 1992-03-13 1992-04-29 Inmos Ltd Cache memory

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100479623B1 (ko) * 1997-04-15 2005-07-07 엘지전자 주식회사 캐시태그메모리및그구동시스템

Also Published As

Publication number Publication date
EP0708404A3 (ko) 1996-05-22
US5805855A (en) 1998-09-08
JPH08227380A (ja) 1996-09-03
EP0708404A2 (en) 1996-04-24

Similar Documents

Publication Publication Date Title
KR960015237A (ko) 데이타 캐쉬 어레이 및 그를 이용한 데이타 캐슁 방법 및 데이타 처리 시스템
US5008813A (en) Multi-cache data storage system
US5361340A (en) Apparatus for maintaining consistency in a multiprocessor computer system using virtual caching
US4736293A (en) Interleaved set-associative memory
US5694567A (en) Direct-mapped cache with cache locking allowing expanded contiguous memory storage by swapping one or more tag bits with one or more index bits
US7203790B2 (en) Flexible techniques for associating cache memories with processors and main memory
US6877067B2 (en) Shared cache memory replacement control method and apparatus
US6026476A (en) Fast fully associative translation lookaside buffer
KR960008546A (ko) 2-웨이 세트연관 캐시메모리
US8751751B2 (en) Method and apparatus for minimizing cache conflict misses
KR20010006755A (ko) Ccr 디렉토리
US6571316B1 (en) Cache memory array for multiple address spaces
US7890673B2 (en) System and method for accessing non processor-addressable memory
KR920013135A (ko) 우선변환참조버퍼에서 적중수를 증가시키기 위한 장치
WO2002025447A2 (en) Cache dynamically configured for simultaneous accesses by multiple computing engines
EP1190325B1 (en) Status bits for cache memory
KR100326989B1 (ko) 스누핑 포트를 사용하는 프리페치 캐시 질의 방법 및 시스템
KR970071281A (ko) 인터리브 캐시메모리 및 그 운영방법과 데이터 처리 시스템
US5463750A (en) Method and apparatus for translating virtual addresses in a data processing system having multiple instruction pipelines and separate TLB's
US6324632B1 (en) Processing a data stream
KR20020013772A (ko) 멀티포트 캐쉬 메모리
KR930010734A (ko) 데이타 기억장치 시스템
US9146874B2 (en) Dual access for single port cache
KR19990077470A (ko) 짝수/홀수캐시디렉토리메카니즘
Winsor et al. Crosspoint Cache Architectures.

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
NORF Unpaid initial registration fee