KR960015237A - 데이타 캐쉬 어레이 및 그를 이용한 데이타 캐슁 방법 및 데이타 처리 시스템 - Google Patents
데이타 캐쉬 어레이 및 그를 이용한 데이타 캐슁 방법 및 데이타 처리 시스템 Download PDFInfo
- 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
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/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
- G06F12/1045—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
-
- 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/0864—Addressing 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)
- 다수의 캐쉬 라인(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).
- 제1항에 있어서, 다수의 서브어레이(a plurality of subarrays)로서, 각각의 서브어레이는 다수의 캐쉬 라인을 구비하는 상기 다수의 서브어레이를 더 포함하는 데이타 캐쉬 어레이.
- 제1항에 있어서, 다수의 합동 클래스(a plurality of congruence classes)로서, 상기 다수의 합동 클래스의 각각은 상기 다수의 캐쉬 라인의 선택된 서브세트(a selected subset)을 구비하는 상기 다수의 합동 플래스를 포함하는 데이타 캐쉬 어레이.
- 제3항에 있어서, 상기 다수의 합동 클래스는 8개의 상기 다수의 캐쉬 라인을 포함하는 데이타 캐쉬 어레이.
- 제2항에 있어서, 상기 데이타 캐쉬 어레이에 결합된 유효 어드레스 포트(aneffective address port) 및 실제 어드레스 포트(a real address port)를 더 포함하는 데이타 캐쉬 어레이.
- 제5항에 있어서, 상기 유효 어드레스 포트 및 상기 실제 어드레스 포트를 이용하여 단일의 서브어레이에 대한 동시 액세스가 시도된 경우에 응답하여 데이타 캐쉬 어레이내의 상기 단일의 서브어레이에 대한 액세스를 제어하는 서브어레이 중재 회로(a subarray arbitration circuit)를 더 포함하는 데이타 캐쉬 어레이.
- 제1항에 있어서, 상기 다수의 캐쉬 라인의 각각은 데이타 상태 필드(a data status field)를 더 포함하는 데이타 캐쉬 어레이.
- 다수의 캐쉬 라인을 갖는 데이타 캐쉬 어레이를 제공하는 단계와; 상기 각 캐쉬 라인내에서, 선택된 정보 블럭을 저장하는 단계와; 적어도 상기 선택된 정보 블럭에 대한 다수-비트 유효 어드레스 부분을 제1연관 필드에 저장하는 단계와; 적어도 상기 선택된 정보 출력에 대한 다수-비트 실제 어드레스 부분을 저장하는 단계;를 포함하되, 상기 선택된 정보 출력은 유효 어드레스 또는 실제 어드레스 중 어느 것을 이용하여 상기 데이타 캐쉬 어레이내에 효과적으로 일치될 수 있는 데이타 처리 시스템내의 데이타 캐슁 방법(a method of caching data).
- 제8항에 있어서, 상기 선택된 정보 블럭에 대한 다수-비트 유효 어드레스 부분을 제1연관 필드내에 저장하는 상기 단계는 상기 선택된 정보 출력에 대한 상기 다수-비트 불완전 어드레스(multi-bit defective address)중 8비트를 제1연관 필드내에 저장하는 단계를 포함하는 데이타 캐슁 방법.
- 제8항에 있어서, 상기 선택된 정보 블럭에 대한 다수-비트 실제 어드레스 부분을 제1연관 필드내에 저장하는 상기 단계는 상기 선택된 정보 블럭에 대한 상기 다수-비트 불완전 어드레스중 28비트를 저장하는 단계를 포함하는 데이타 캐슁 방법.
- 제8항에 있어서, 상기 데이타 캐쉬 어레이를 다수의 합동 클래스로 나누는 단계를 더 포함하는 데이타 캐슁 방법.
- 제11항에 있어서, 상기 데이타 어레이를 다수의 합동 클래스로 나누는 단계는 상기 데이타 캐쉬 어레이를, 제각기 8개의 캐쉬 라인을 각각 포함하는 다수의 합동 클래스로 나누는 단계를 포함하는 데이타 캐슁 방법.
- 프로세서(a processor)와; 주 메모리 저장장치(a main memory store)와; 상기 주 메모리 저장장치로 부터의 정보 블럭을 일시적으로 저장하는 데이타 캐쉬 어레이로서, 상기 데이타 캐쉬 어레이는 다수의 캐쉬 라인으로서 상기 다수의 캐쉬 라인의 각각은, 선택된 정보 블럭과, 적어도 상기 선택된 정보 블럭에 대한 다수-비트 유효 어드레스 부분을 포함하는 제1연관 필드와, 적어도 상기 선택된 정보 블럭에 대한 다수-비트 실제 어드레스 부분을 포함하는 제2연관 필드를 갖되, 상기 선택된 정보 블럭은 유효 어드레스 또는 실제 어드레스중 어느 것을 이용하여 상기 데이타 캐쉬 어레이내에 효과적으로 위치될 수 있는 상기 다수의 캐쉬 라인을 구비한 상기 데이타 캐쉬 어레이를 포함하는 데이타 처리 시스템(a data processing system).
- 제13항에 있어서, 상기 데이타 캐쉬 어레이는 다수의 서브어레이를 포함하고, 상기 각 서브어레이는 다수의 캐쉬 라인을 포함하는 데이타 처리 시스템.
- 제13항에 있어서, 상기 데이타 캐쉬 어레이는 다수의 합동 클래스를 포함하고, 상기 다수의 합동 클래스의 각각은 상기 다수의 캐쉬 라인중에서 선택된 서브세트(a selected subset)를 포함하는 데이타 처리 시스템.
- 제15항에 있어서, 상기 다수의 합동 클래스의 각각은 8개의 상기 다수의 캐쉬 라인을 포함하는 데이타 처리 시스템.
- 제14항에 있어서 상기 데이타 캐쉬 어레이에 결합된 유효 어드레스 포트 및 실제 어드레스 포트를 더 포함하는 데이터 처리 시스템.
- 제17항에 있어서, 상기 유효 어드레스 포트 및 상기 실제 어드레스 포트 양쪽을 이용하여 단일의 서브어레이에 대한 동시 액세스가 시도된 경우에 응답하여, 상기 데이타 캐쉬 어레이내의 단일의 서브어레이에 대한 액세스를 제어하는 서브어레이 중재 회로를 더 포함하는 데이타 처리 시스템.
- 제13항에 있어서, 상기 다수의 캐쉬 라인의 각각은 데이타 상태 필드를 더 포함하는 데이타 처리 시스템.※ 참고사항 : 최초출원 내용에 의하여 공개하는 것임.
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100479623B1 (ko) * | 1997-04-15 | 2005-07-07 | 엘지전자 주식회사 | 캐시태그메모리및그구동시스템 |
Families Citing this family (22)
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)
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 |
-
1994
- 1994-10-05 US US08/319,329 patent/US5805855A/en not_active Expired - Fee Related
-
1995
- 1995-10-04 JP JP7282636A patent/JPH08227380A/ja active Pending
- 1995-10-05 EP EP95202678A patent/EP0708404A2/en not_active Ceased
- 1995-10-05 KR KR1019950034109A patent/KR960015237A/ko active IP Right Grant
Cited By (1)
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 |