KR940007687A - 캐쉬메모리 장치 - Google Patents

캐쉬메모리 장치 Download PDF

Info

Publication number
KR940007687A
KR940007687A KR1019930019101A KR930019101A KR940007687A KR 940007687 A KR940007687 A KR 940007687A KR 1019930019101 A KR1019930019101 A KR 1019930019101A KR 930019101 A KR930019101 A KR 930019101A KR 940007687 A KR940007687 A KR 940007687A
Authority
KR
South Korea
Prior art keywords
data
recording
entry
address
write
Prior art date
Application number
KR1019930019101A
Other languages
English (en)
Other versions
KR960006484B1 (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 KR940007687A publication Critical patent/KR940007687A/ko
Application granted granted Critical
Publication of KR960006484B1 publication Critical patent/KR960006484B1/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/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0855Overlapped cache accessing, e.g. pipeline
    • 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

본 발명은 캐쉬미스가 생긴 경우, 기다리게하고 있는 캐쉬 액세스에 대응하는 엔트리 이외의 엔트리를 선택하는 것에 의해 기다리게하고 있는 캐쉬 액세스의 엔트리를 치환하지 않도록하여 캐쉬 메모리장치의 성능저하를 방지토록한 것으로. 그 구성은 기록 버퍼(6)을 구비한 2웨이·세트 어소시에이티브방식의 캐쉬 메모리장치에 있어서, 각 뱅크(1a, 1b)내의 데이터엔트리(2a, 2b)에 대응한 태그엔트리(3a, 3b)에 유효비트(4a, 4b)와 기록예약비트 (5a, 5b)를 부가한 것이다.
기록예약비트(5a, 5b)는 기록요구가 발생한 경우에 세트되고, 기록이 완료됐을 재리세트되며, 치환제어수단(9)은 캐쉬미스가 발생한 경우에 2개의 후보 데이터옌트러 (2a, 2b)중, 대응하는 기록예약비트(5a로는 5b)가 세트되어 있지 않는 쪽의 엔트리를 치환의 대상으로 한다.

Description

캐쉬 메모리 장치
본 내용은 요부공개 건이므로 전문내용을 수록하지 않았음
제 1 도는 본 발명의 제 1 실시예에 관한 캐쉬(cache)메모리장치를 사용한 정보처리장치의 블록도.
제 2 도는 제 1 도중의 캐쉬메모리장치에 대해 기록요구와 판독요구가 계속하여 발행된 경우의 타이밍도.
제 3 도는 제 1 도중의 치환(置換) 제어수단이 치환되어야 할 뱅크를 선택하는 방법을 표시하는 도면.

Claims (8)

  1. 세트어소시에이티브방식을 취하는 캐쉬메모리장치에 있어서, 데이터를 격납하기 위한 복수의 데이터엔트리와, 상기 데이터엔트리에 격납된 데이터의 어드레스의 태그부를 격납하기 위한 태그엔트리와, 상기 데이터엔트리에 격납된 데이터가 유효인가 어떤가를 표시하는 유효비트와, 상기 데이터엔트리에 기록요구가 발생한 경우에 세트되어 기록이 완료됐을 때에 리세트되는 기록예약비트와, 캐쉬미스가 발생한 경우에 기록예약비트가 세트되어 있지 않은 데이터엔트리를 치환되어야 할 데이터엔트리로서 우선적으로 선택하기 위한 치환제어수단을 구비한 것을 특징으로 하는 캐쉬메모리장치.
  2. 세트어소시에이티브방식을 취하는 캐쉬메모리장치에 있어서, 데이터를 격납하기 위한 복수의 데이터엔트리와, 상기 데이터엔트리에 격납된 데이터의 어드레스의 태그부를 격납하기 위한 태그엔트리와, 상기 데이터엔트리에 격납된 데이터가 유효인가 어떤가를 표시하는 유효비트와, 제공된 어드레스의 인덱스부를 사용하여 상기 태그엔트리와 상기 유효비트를 판독하고, 상기 제공된 어드레스의 태그부와 비교하여 히트인가 어떤가를 검출하기 위한 히트검출수단과, 기록요구에 대해 상기 히트검출수단에 의해 검출된 히트정보와 기록어드레스의 인덱스부와 기록하여야 할 데이터를 유지하기 위한 기록버퍼와, 판독의 경우는 상기 제공된 어드레스의 인덱스부를 사용하여 판독한 복수의 데이터엔트리중 상기 히트검출수단에 의해 검출된 히트에 대응하는 데이터엔트리의 데이터를 판독하고, 기록의 경우에는 상기 기록버퍼에 격납되어 있는 상기 기록어드레스의 인덱스부와, 상기 기록버퍼에 격납되어 있는 상기 비트정보를 사용하여 데이터엔트리를 선택하여 상기 기록버퍼에 격납되어 있는 상기 기록데이터를 기록하기 위한 데이터액세스수단을 구비한 것을 특징으로 하는 캐쉬메모리장치.
  3. 제 2 항에 있어서, 상기 데이터엔트리에 기록요구가 발생한 경우에 세트되어, 기록이 완료됐을 때에 리세트되는 기록예약비트와, 캐쉬미스가 발생한 경우에 기록예약비트가 세트되어 있지 않는 데이터엔트리를 치환하여야 할 데이터엔트리로서 우선적으로 선택하기 위한 치환제어수단을 더 구비한 것을 특징으로 하는 캐쉬메모리장치.
  4. 제 2 항에 있어서, 상기 기록버퍼는 기록요구가 캐쉬미스를 생기게 한 경우에 치환하여야 할 데이터엔트리의 선택신호를 격납하는 기능을 구비하고, 상기 데이터액세스수단은 기록의 경우, 상기 기록버퍼에 격납되어 있는 상기 기록어드레스의 인덱스부에 가하여 상기 기록요구가 히트일때는 상기 기록버퍼에 격납되어있는 상기 히트정보를, 상기 기록요구가 캐쉬미스일매는 상기 기록버퍼에 격납되어 있는 상기 치환하여야할 데이터엔트리의 선택신호를 각각 사용하여 데이터엔트리를 선택하여 상기 기록버퍼에 격납되어 있는 상기 기록데이터를 기록하는 기능을 구비한 것을 특징으로 하는 캐쉬메모리장치.
  5. 제 2 항에 있어서, 제공된 어드레스의 인덱스부와 상기 기록버퍼에 격납된 기록어드레스의 인덱스부를 비교하여 상기 히트검출수단에 의해 검출된 히트정보와 상기 기록버퍼에 격납되어 있는 히트정보를 비교하는 것에 의해, 상기 기록버퍼에서 기다리고 있는 기록어드레스와 상기 제공된 어드레스와의 일치를 검출하기 위한 일치검출수단을 더 구비한 것을 특징으로 하는 캐쉬메모리장치.
  6. 제 2 항에 있어서, 제공된 어드레스의 인덱스부와 상기 기록버퍼에 격납된 기록어드레스의 인덱스부를 비교하여 상기 히트검출수단에 의해 검출된 히트정보와 상기 기록버퍼에 격납되어 있는 히트정보를 비교하는 것에 의해, 상기 기록버퍼에서 기다리고 있는 기록어드레스와 상기 제공된 어드레스와의 일치를 검출하여 어드레스일치신호를 출력하고, 상기 제공된 어드레스의 인덱스부와 상기 기록버퍼에 격납된 기록어드레스의 인덱스부를 비교하여 인덱스일치신호를 출력하기 위한 일치검출수단과, 상기 인덱스일치신호를 받은경우에, 상기 기록버퍼에 격납되어 있는 기록요구가 히트일때는 상기 기록버퍼에 격납되어 있는 히트정보를상기 기록버퍼에 격납되어 있는 기록요구가 캐쉬미스일때는 상기 치환하여야 할 데이터엔트리의 선택신호를각각 사용하여 상기 기록버퍼에서 기다리고 있는 기록요구에 의해 치환되는 데이터엔트리 이외의 데이터엔트리를 치환하여야 할 데이터엔트리로서 우선적으로 선택하여 상기 데이터엔트리의 선택신호를 출력하기 의한 치환제어수단을 더 구비한 것을 특징으로 하는 캐쉬메모리장치.
  7. 데이터를 격납하기 위한 복수의 데이터엔트리와, 상기 데이터엔트리에 격납된 데이터의 어드레스의 태그부를 격납하기 위한 태그엔트리와, 상기 데이터엔트리에 격납된 데이터가 유효인가 어떤가를 표시하는 유효비트와, 상기 데이터엔트리에 기록요구가 발생한 경우에 세트되어 기록이 완료됐을 때에 리세트되는 기록예약비트와, 상기 기록요구에 관한 어드레스와 데이터를 유지하기 위한 기록버퍼와, 제공된 액세스 요구에 대해 판독된 상기 기록예약비트가 세트되어 있으면 상기 기록버퍼에 유지되어 있는 데이터를 상기 기록요구의 어드레스토 지정되는 데이터엔트리에 격납하고, 상기 기록예약비트가 리세트될 때까지 상기 제공된 액세스를 기다리게 하기 위한 제어수단을 구비한 것을 특징으로 하는 캐쉬메모리장치.
  8. 각 기록요구에 관한 어드레스와 데이터를 유지하기 위한 복수의 기록요구 엔트리를 가지는 기록버퍼와, 데이터를 격납하기 위한 복수의 데이터엔트리와, 상기 데이터엔트리에 격납된 데이터의 어드레스의 태그부를 격납하기 위한 태그엔트리와, 상기 데이터엔트리에 격납된 데이터가 유효인가 어떤가를 표시하는 유효비트와, 상기 데이터엔트리에 기록요구가 발생한 경우에 상기 기록요구의 어드레스와 데이터를 유지하는 기록요구 엔트리의 번호를 격납하고, 기록이 완료됐을 때에 리세트되는 기록예약비트와, 캐쉬히트를 검출하기위한 히트검출수단과, 판독요구에 대해 상기 히트검출수단이 캐쉬히트를 검출하고, 또한 판독된 상기 기록예약비트가 리세트되어 있지 않는 경우, 판독된 상기 기록예약비트로 지정되는 상기 기록요구 엔트리에 유지되어 있는 데이터를 상기 판독요구에 대한 데이터로서 판독하기 위한 데이터 전송제어수단을 구비한 것을 특징으로 하는 캐쉬메모리장치.
    ※ 참고사항 : 최초출원 내용에 의하여 공개하는 것임.
KR1019930019101A 1992-09-24 1993-09-21 캐쉬메모리장치 KR960006484B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP25430392 1992-09-24
JP92-254,303 1992-09-24

Publications (2)

Publication Number Publication Date
KR940007687A true KR940007687A (ko) 1994-04-27
KR960006484B1 KR960006484B1 (ko) 1996-05-16

Family

ID=17263118

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019930019101A KR960006484B1 (ko) 1992-09-24 1993-09-21 캐쉬메모리장치

Country Status (2)

Country Link
US (1) US5564034A (ko)
KR (1) KR960006484B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100395758B1 (ko) * 2001-06-21 2003-08-21 삼성전자주식회사 새로운 블럭 교체 스킴을 채용한 캐쉬 메모리
KR100419267B1 (ko) * 1995-06-01 2004-06-12 히다치초엘에스아이 엔지니어링가부시키가이샤 동적으로제어된데이타어레이기동타이밍을갖는캐시메모리및그것을사용한마이크로프로세서
CN110023916A (zh) * 2016-12-16 2019-07-16 阿里巴巴集团控股有限公司 一种减少缓存中读/写竞争的方法和装置

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6021471A (en) * 1994-11-15 2000-02-01 Advanced Micro Devices, Inc. Multiple level cache control system with address and data pipelines
US5692151A (en) * 1994-11-14 1997-11-25 International Business Machines Corporation High performance/low cost access hazard detection in pipelined cache controller using comparators with a width shorter than and independent of total width of memory address
US5987561A (en) * 1995-08-31 1999-11-16 Advanced Micro Devices, Inc. Superscalar microprocessor employing a data cache capable of performing store accesses in a single clock cycle
US5860104A (en) * 1995-08-31 1999-01-12 Advanced Micro Devices, Inc. Data cache which speculatively updates a predicted data cache storage location with store data and subsequently corrects mispredicted updates
JPH09114734A (ja) * 1995-10-16 1997-05-02 Hitachi Ltd ストアバッファ装置
JPH09146836A (ja) * 1995-11-21 1997-06-06 Kofu Nippon Denki Kk キャッシュ索引の障害訂正装置
US5838943A (en) 1996-03-26 1998-11-17 Advanced Micro Devices, Inc. Apparatus for speculatively storing and restoring data to a cache memory
US5905996A (en) * 1996-07-29 1999-05-18 Micron Technology, Inc. Combined cache tag and data memory architecture
EP1015980B1 (en) * 1996-11-04 2002-04-24 Advanced Micro Devices, Inc. A data cache capable of performing store accesses in a single clock cycle
US6078995A (en) * 1996-12-26 2000-06-20 Micro Magic, Inc. Methods and apparatus for true least recently used (LRU) bit encoding for multi-way associative caches
US6321297B1 (en) * 1998-01-05 2001-11-20 Intel Corporation Avoiding tag compares during writes in multi-level cache hierarchy
US6157980A (en) * 1998-03-23 2000-12-05 International Business Machines Corporation Cache directory addressing scheme for variable cache sizes
US6374344B1 (en) * 1998-11-25 2002-04-16 Compaq Information Technologies Group L.P. (Citg) Methods and apparatus for processing load instructions in the presence of RAM array and data bus conflicts
US6446169B1 (en) 1999-08-31 2002-09-03 Micron Technology, Inc. SRAM with tag and data arrays for private external microprocessor bus
US6591342B1 (en) * 1999-12-14 2003-07-08 Intel Corporation Memory disambiguation for large instruction windows
US6574711B2 (en) * 1999-12-27 2003-06-03 Matsushita Electric Industrial Co., Ltd. Semiconductor integrated circuit
US6748492B1 (en) * 2000-08-07 2004-06-08 Broadcom Corporation Deterministic setting of replacement policy in a cache through way selection
US6848024B1 (en) 2000-08-07 2005-01-25 Broadcom Corporation Programmably disabling one or more cache entries
US6732234B1 (en) 2000-08-07 2004-05-04 Broadcom Corporation Direct access mode for a cache
US6757840B1 (en) * 2000-08-21 2004-06-29 Micron Technology, Inc. Device and method for configuring a cache tag in accordance with burst length
JP3595252B2 (ja) * 2000-09-06 2004-12-02 三菱電機株式会社 車両用電源システム
US6671781B1 (en) * 2000-12-08 2003-12-30 Lsi Logic Corporation Data cache store buffer
US7089405B2 (en) * 2001-03-21 2006-08-08 Sun Microsystems, Inc. Index-based scoreboarding system and method
US6748495B2 (en) 2001-05-15 2004-06-08 Broadcom Corporation Random generator
US7266587B2 (en) * 2002-05-15 2007-09-04 Broadcom Corporation System having interfaces, switch, and memory bridge for CC-NUMA operation
US6968428B2 (en) 2002-06-26 2005-11-22 Hewlett-Packard Development Company, L.P. Microprocessor cache design initialization
US6973550B2 (en) * 2002-10-02 2005-12-06 Intel Corporation Memory access control
US6950906B2 (en) * 2002-12-13 2005-09-27 Hewlett-Packard Development Company, L.P. System for and method of operating a cache
WO2004107180A1 (ja) * 2003-05-30 2004-12-09 Fujitsu Limited マルチプロセッサシステム
DE602006020631D1 (de) * 2006-01-31 2011-04-21 Fujitsu Ltd Speicherzugriffssteuervorrichtung und speicherzugriffssteuerverfahren
US20080201531A1 (en) * 2006-09-29 2008-08-21 Kornegay Marcus L Structure for administering an access conflict in a computer memory cache
US20080082755A1 (en) * 2006-09-29 2008-04-03 Kornegay Marcus L Administering An Access Conflict In A Computer Memory Cache
US9213640B2 (en) * 2013-04-17 2015-12-15 Advanced Micro Devices, Inc. Promoting transactions hitting critical beat of cache line load requests
US9524242B2 (en) * 2014-01-28 2016-12-20 Stmicroelectronics International N.V. Cache memory system with simultaneous read-write in single cycle
JP6770230B2 (ja) * 2016-09-30 2020-10-14 富士通株式会社 演算処理装置、情報処理装置及び演算処理装置の制御方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0266652A (ja) * 1988-08-31 1990-03-06 Nec Corp キャッシュメモリ
US5155824A (en) * 1989-05-15 1992-10-13 Motorola, Inc. System for transferring selected data words between main memory and cache with multiple data words and multiple dirty bits for each address

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100419267B1 (ko) * 1995-06-01 2004-06-12 히다치초엘에스아이 엔지니어링가부시키가이샤 동적으로제어된데이타어레이기동타이밍을갖는캐시메모리및그것을사용한마이크로프로세서
KR100395758B1 (ko) * 2001-06-21 2003-08-21 삼성전자주식회사 새로운 블럭 교체 스킴을 채용한 캐쉬 메모리
CN110023916A (zh) * 2016-12-16 2019-07-16 阿里巴巴集团控股有限公司 一种减少缓存中读/写竞争的方法和装置
CN110023916B (zh) * 2016-12-16 2023-07-28 阿里巴巴集团控股有限公司 一种减少缓存中读/写竞争的方法和装置

Also Published As

Publication number Publication date
KR960006484B1 (ko) 1996-05-16
US5564034A (en) 1996-10-08

Similar Documents

Publication Publication Date Title
KR940007687A (ko) 캐쉬메모리 장치
US5752260A (en) High-speed, multiple-port, interleaved cache with arbitration of multiple access addresses
KR100423276B1 (ko) 명령어인출방법및장치
US4916604A (en) Cache storage apparatus
JP2007504552A5 (ko)
CA2022529C (en) Apparatus for page tagging in a computer system
WO1982003480A1 (en) Apparatus and method for maintaining cache memory integrity in a shared memory environment
KR840008849A (ko) 버퍼 기억장치 제어 시스템
US20090094435A1 (en) System and method for cache access prediction
CN1318972C (zh) 用于存储设备的自主错误恢复方法、系统及高速缓存
US7058049B2 (en) Load store queue applied to processor
CA1304827C (en) Buffer memory control apparatus
US4349875A (en) Buffer storage control apparatus
US5276829A (en) Data processing system including cache memory for rapidly converting a logical address into a physical address using shared memory flag
US4608671A (en) Buffer storage including a swapping circuit
US5555379A (en) Cache controller index address generator
JP3242161B2 (ja) データプロセッサ
US6249840B1 (en) Multi-bank ESDRAM with cross-coupled SRAM cache registers
US7519778B2 (en) System and method for cache coherence
JPH06161900A (ja) キャッシュメモリ装置
JPS60701B2 (ja) デ−タ処理装置
JPS5922315B2 (ja) バツフア記憶制御方式
JPH04293136A (ja) キャッシュ制御方式
JPH0520192A (ja) キヤツシユメモリのストア方式
CA1299768C (en) Memory access control system

Legal Events

Date Code Title Description
A201 Request for examination
G160 Decision to publish patent application
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20100512

Year of fee payment: 15

LAPS Lapse due to unpaid annual fee