KR100620258B1 - 멀티-웨이 캐시 장치 및 방법 - Google Patents
멀티-웨이 캐시 장치 및 방법 Download PDFInfo
- Publication number
- KR100620258B1 KR100620258B1 KR1019990013266A KR19990013266A KR100620258B1 KR 100620258 B1 KR100620258 B1 KR 100620258B1 KR 1019990013266 A KR1019990013266 A KR 1019990013266A KR 19990013266 A KR19990013266 A KR 19990013266A KR 100620258 B1 KR100620258 B1 KR 100620258B1
- Authority
- KR
- South Korea
- Prior art keywords
- way
- cache
- attribute
- access
- comparison result
- Prior art date
Links
Images
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
- 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/0844—Multiple simultaneous or quasi-simultaneous cache accessing
- G06F12/0846—Cache with multiple tag or data arrays being simultaneously accessible
- G06F12/0848—Partitioned cache, e.g. separate instruction and operand caches
-
- 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/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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1028—Power efficiency
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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
Description
본 발명은 프로세서와 메모리에 관한 것으로, 특히 멀티-웨이 캐시 메모리에 관한 것이다.
휴대용 및 핸드헬드 응용제품이 널리 사용되고 있기 때문에 마이크로프로세서와 마이크로컨트롤러 설계에 있어서 낮은 전력 소모의 중요성이 더해가고 있다. 통상 임베딩된 제어 시스템은 일반적으로 중앙 처리 장치(CPU)와 다양한 종류의 메모리와 주변 장치를 구비하고 있다. 다른 종류의 메모리는 마이크로컨트롤러를 가진 집적 회로 및/또는 동일 집적 회로에 외적 부가되어도 되고, 캐시 메모리, ROM(read only memory) 및 다양한 SRAM(static random access memory)장치를 구비해도 된다.
따라서, 개선된 멀티-웨이 캐시 장치와 데이터 처리 시스템의 작동 방법의 적어도 하나의 최선의 실시예를 포함하는 실시예에 대해 기술하였다. 개시된 요지는 다양한 방법으로 변경될 수 있고 전술한 최선 형태이외의 많은 실시예가 있을 수 있다는 것은 이 기술분야에서 숙련된 사람에게는 명백하다. 따라서, 상기 요지는 예시적인 것이며 한정적인 것이 아니고, 본 발명의 사상 및 범위내에 속하는 모든 이와 같은 변형예 및 다른 실시예를 포함하는 다음의 특허청구범위에 의해 법에서 허용하는 최대 범위까지 보호되도록 하고자 하는 것이다. 본 발명의 범위는 다음의 특허청구범위와 상기 상세한 설명이외의 등가물의 가장 넓게 허용될 수 있는 해석에 의해 정해지는 것이다.
Claims (3)
- 메모리 및 멀티-웨이 캐시(multi-way cache)를 가진 데이터 처리 시스템을 동작시키는 방법에 있어서,메모리 액세스 동작을 개시시키는 단계와,상기 액세스 동작에 응답하여 상기 멀티-웨이 캐시를 액세스하는 단계를 포함하고,상기 액세스 단계는,제공된 액세스 속성(access attribute)을 상기 액세스 동작의 일부로서 상기 멀티-웨이 캐시에 제공하는 단계와,상기 제공된 액세스 속성을 상기 멀티-웨이 캐시의 제 1 웨이에 대응하는 제 1 저장 액세스 속성과 비교하는 단계와,상기 제공된 액세스 속성을 상기 멀티-웨이 캐시의 제 2 웨이에 대응하는 제 2 저장 액세스 속성과 비교하는 단계와,상기 제공된 액세스 속성이 상기 제 1 저장 액세스 속성과 일치하는지의 여부에 기초하여 상기 멀티-웨이 캐시의 상기 제 1 웨이를 선택적으로 인에이블하는 단계와,상기 제공된 액세스 속성이 상기 제 2 저장 액세스 속성과 일치하는지의 여부에 기초하여 상기 멀티-웨이 캐시의 상기 제 2 웨이를 선택적으로 인에이블하는 단계를 포함하고,상기 제 1 웨이를 선택적으로 인에이블링하는 단계 및 상기 제 2 웨이를 선택적으로 인에이블링하는 단계는 캐시 미스(cache miss)와 캐시 히트(cache hit) 중 하나가 상기 액세스 동작 중 발생했는지의 여부를 판정하기 이전에 수행되는, 메모리 및 멀티-웨이 캐시를 가진 데이터 처리 시스템을 동작시키는 방법.
- 집적 회로에 있어서,제 1 웨이와 제 2 웨이를 가진 캐시와,상기 캐시의 상기 제 1 웨이에 대한 제 1 저장 속성을 저장하기 위한 제 1 저장 요소와,상기 캐시의 상기 제 2 웨이에 대한 제 2 저장 속성을 저장하기 위한 제 2 저장 요소와,메모리 액세스 동작에 대응하는 액세스 속성을 전달하기 위한 도전체와,제 1 비교 결과를 제공하기 위해 상기 액세스 속성을 상기 제 1 저장 속성과 비교하고 상기 제 1 비교 결과에 기초하여 상기 캐시의 상기 제 1 웨이를 선택적으로 인에이블하고, 제 2 비교 결과를 제공하기 위해 상기 액세스 속성을 상기 제 2 저장 속성과 비교하고 상기 제 2 비교 결과에 기초하여 상기 캐시의 상기 제 2 웨이를 선택적으로 인에이블하는 제어 회로를 포함하고,상기 제어 회로는 상기 액세스 동작에 대응하는 캐시 히트와 캐시 미스 중 하나가 상기 액세스 동작 중 발생했는지의 여부를 판정하기 이전에 상기 캐시의 상기 제 1 웨이를 선택적으로 인에이블하고 상기 캐시의 상기 제 2 웨이를 선택적으로 인에이블하는, 집적 회로.
- 멀티-웨이 캐시를 가진 장치에 있어서,상기 멀티-웨이 캐시의 제 1 웨이에 대응하는 미리 정해진 제 1 속성을 가진 제 1 사용자 제어가능 요소와,상기 멀티-웨이 캐시의 제 2 웨이에 대응하는 미리 정해진 제 2 속성을 가진 제 2 사용자 제어가능 요소와,메모리 액세스 동작에 대응하는 액세스 속성을 상기 멀티-웨이 캐시에 전달하는 도전체와,제 1 비교 결과를 제공하기 위해 상기 액세스 속성을 상기 미리 정해진 제 1 속성과 비교하는 제 1 비교 회로와,제 2 비교 결과를 제공하기 위해 상기 액세스 속성을 상기 미리 정해진 제 2 속성과 비교하는 제 2 비교 회로와,상기 제 1 비교 결과에 기초하여 상기 멀티-웨이 캐시의 상기 제 1 웨이를 선택적으로 인에이블하는 제 1 웨이 제어 회로와,상기 제 2 비교 결과에 기초하여 상기 멀티-웨이 캐시의 상기 제 2 웨이를 선택적으로 인에이블하는 제 2 웨이 제어 회로를 포함하고,상기 액세스 동작에 대응하는 캐시 히트와 캐시 미스 중 하나가 발생했는지의 여부를 상기 장치가 판정하기 이전에, 상기 제 1 웨이 제어 회로는 상기 제 1 웨이를 선택적으로 인에이블링하고 상기 제 2 웨이 제어 회로는 상기 제 2 웨이를 선택적으로 인에이블링하는, 멀티-웨이 캐시를 가진 장치.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/062,571 | 1998-04-20 | ||
US09/062,571 US6185657B1 (en) | 1998-04-20 | 1998-04-20 | Multi-way cache apparatus and method |
US9/062,571 | 1998-04-20 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19990083209A KR19990083209A (ko) | 1999-11-25 |
KR100620258B1 true KR100620258B1 (ko) | 2006-09-07 |
Family
ID=22043355
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019990013266A KR100620258B1 (ko) | 1998-04-20 | 1999-04-15 | 멀티-웨이 캐시 장치 및 방법 |
Country Status (7)
Country | Link |
---|---|
US (1) | US6185657B1 (ko) |
EP (1) | EP0952524B1 (ko) |
JP (1) | JP2000029789A (ko) |
KR (1) | KR100620258B1 (ko) |
CN (1) | CN1178138C (ko) |
DE (1) | DE69933328T2 (ko) |
TW (1) | TW440764B (ko) |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6560677B1 (en) * | 1999-05-04 | 2003-05-06 | International Business Machines Corporation | Methods, cache memories, systems and computer program products for storing transient, normal, and locked entries in an associative cache memory |
US6405287B1 (en) * | 1999-11-17 | 2002-06-11 | Hewlett-Packard Company | Cache line replacement using cache status to bias way selection |
DE69937611T2 (de) * | 1999-12-06 | 2008-10-23 | Texas Instruments Inc., Dallas | Intelligenter Puffer-Speicher |
EP1111511B1 (en) * | 1999-12-06 | 2017-09-27 | Texas Instruments France | Cache with multiple fill modes |
US6658532B1 (en) * | 1999-12-15 | 2003-12-02 | Intel Corporation | Cache flushing |
JP2001222491A (ja) * | 2000-02-09 | 2001-08-17 | Nec Corp | 情報提供システム、情報提供方法およびクライアント |
US6446168B1 (en) * | 2000-03-22 | 2002-09-03 | Sun Microsystems, Inc. | Method and apparatus for dynamically switching a cache between direct-mapped and 4-way set associativity |
US7386671B2 (en) * | 2000-06-09 | 2008-06-10 | Texas Instruments Incorporated | Smart cache |
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 |
US6681295B1 (en) * | 2000-08-31 | 2004-01-20 | Hewlett-Packard Development Company, L.P. | Fast lane prefetching |
US6748495B2 (en) | 2001-05-15 | 2004-06-08 | Broadcom Corporation | Random generator |
US7330954B2 (en) * | 2002-04-18 | 2008-02-12 | Intel Corporation | Storing information in one of at least two storage devices based on a storage parameter and an attribute of the storage devices |
US7266587B2 (en) * | 2002-05-15 | 2007-09-04 | Broadcom Corporation | System having interfaces, switch, and memory bridge for CC-NUMA operation |
TWI246658B (en) * | 2003-04-25 | 2006-01-01 | Ip First Llc | Microprocessor, apparatus and method for selectively associating store buffer cache line status with response buffer cache line status |
US7069388B1 (en) * | 2003-07-10 | 2006-06-27 | Analog Devices, Inc. | Cache memory data replacement strategy |
US6973540B2 (en) * | 2003-07-25 | 2005-12-06 | Freescale Semiconductor, Inc. | Method and apparatus for selecting cache ways available for replacement |
KR20060119085A (ko) * | 2005-05-18 | 2006-11-24 | 삼성전자주식회사 | 텍스쳐 캐쉬 메모리 장치 및 이를 이용한 삼차원 그래픽가속기 및 방법 |
US7496771B2 (en) * | 2005-11-15 | 2009-02-24 | Mips Technologies, Inc. | Processor accessing a scratch pad on-demand to reduce power consumption |
US7562191B2 (en) * | 2005-11-15 | 2009-07-14 | Mips Technologies, Inc. | Microprocessor having a power-saving instruction cache way predictor and instruction replacement scheme |
US7873820B2 (en) * | 2005-11-15 | 2011-01-18 | Mips Technologies, Inc. | Processor utilizing a loop buffer to reduce power consumption |
US7376807B2 (en) * | 2006-02-23 | 2008-05-20 | Freescale Semiconductor, Inc. | Data processing system having address translation bypass and method therefor |
US7401201B2 (en) * | 2006-04-28 | 2008-07-15 | Freescale Semiconductor, Inc. | Processor and method for altering address translation |
JP4635063B2 (ja) * | 2008-03-11 | 2011-02-16 | 株式会社東芝 | キャッシュメモリ制御回路及びプロセッサ |
US8667226B2 (en) | 2008-03-24 | 2014-03-04 | Freescale Semiconductor, Inc. | Selective interconnect transaction control for cache coherency maintenance |
CN102662868B (zh) * | 2012-05-02 | 2015-08-19 | 中国科学院计算技术研究所 | 用于处理器的动态组相联高速缓存装置及其访问方法 |
JP6477352B2 (ja) * | 2015-08-17 | 2019-03-06 | 富士通株式会社 | 演算処理装置、演算処理装置の制御方法および演算処理装置の制御プログラム |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5091851A (en) | 1989-07-19 | 1992-02-25 | Hewlett-Packard Company | Fast multiple-word accesses from a multi-way set-associative cache memory |
US5509135A (en) | 1992-09-25 | 1996-04-16 | Digital Equipment Corporation | Multi-index multi-way set-associative cache |
US5553262A (en) | 1988-01-21 | 1996-09-03 | Mitsubishi Denki Kabushiki Kaisha | Memory apparatus and method capable of setting attribute of information to be cached |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5682515A (en) | 1993-01-25 | 1997-10-28 | Benchmarq Microelectronics, Inc. | Low power set associative cache memory with status inhibit of cache data output |
US5410669A (en) | 1993-04-05 | 1995-04-25 | Motorola, Inc. | Data processor having a cache memory capable of being used as a linear ram bank |
US5870616A (en) | 1996-10-04 | 1999-02-09 | International Business Machines Corporation | System and method for reducing power consumption in an electronic circuit |
-
1998
- 1998-04-20 US US09/062,571 patent/US6185657B1/en not_active Expired - Lifetime
-
1999
- 1999-04-13 JP JP11105348A patent/JP2000029789A/ja active Pending
- 1999-04-14 EP EP99107273A patent/EP0952524B1/en not_active Expired - Lifetime
- 1999-04-14 DE DE69933328T patent/DE69933328T2/de not_active Expired - Fee Related
- 1999-04-15 KR KR1019990013266A patent/KR100620258B1/ko not_active IP Right Cessation
- 1999-04-20 CN CNB991052013A patent/CN1178138C/zh not_active Expired - Fee Related
- 1999-05-04 TW TW088106294A patent/TW440764B/zh active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5553262A (en) | 1988-01-21 | 1996-09-03 | Mitsubishi Denki Kabushiki Kaisha | Memory apparatus and method capable of setting attribute of information to be cached |
US5553262B1 (en) | 1988-01-21 | 1999-07-06 | Mitsubishi Electric Corp | Memory apparatus and method capable of setting attribute of information to be cached |
US5091851A (en) | 1989-07-19 | 1992-02-25 | Hewlett-Packard Company | Fast multiple-word accesses from a multi-way set-associative cache memory |
US5509135A (en) | 1992-09-25 | 1996-04-16 | Digital Equipment Corporation | Multi-index multi-way set-associative cache |
Non-Patent Citations (1)
Title |
---|
EP O조 |
Also Published As
Publication number | Publication date |
---|---|
DE69933328T2 (de) | 2007-01-11 |
EP0952524A1 (en) | 1999-10-27 |
CN1233020A (zh) | 1999-10-27 |
TW440764B (en) | 2001-06-16 |
CN1178138C (zh) | 2004-12-01 |
EP0952524B1 (en) | 2006-09-27 |
DE69933328D1 (de) | 2006-11-09 |
JP2000029789A (ja) | 2000-01-28 |
US6185657B1 (en) | 2001-02-06 |
KR19990083209A (ko) | 1999-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100620258B1 (ko) | 멀티-웨이 캐시 장치 및 방법 | |
US6192458B1 (en) | High performance cache directory addressing scheme for variable cache sizes utilizing associativity | |
US5689679A (en) | Memory system and method for selective multi-level caching using a cache level code | |
US20090006756A1 (en) | Cache memory having configurable associativity | |
US6378047B1 (en) | System and method for invalidating set-associative cache memory with simultaneous set validity determination | |
US6157980A (en) | Cache directory addressing scheme for variable cache sizes | |
KR960008546A (ko) | 2-웨이 세트연관 캐시메모리 | |
US5497458A (en) | Cache testability circuit for embedded diagnostics | |
KR20220017006A (ko) | 메모리-인식 프리-페칭 및 캐시 바이패싱 시스템 및 방법 | |
US8572320B1 (en) | Memory devices and systems including cache devices for memory modules | |
US5835934A (en) | Method and apparatus of low power cache operation with a tag hit enablement | |
JP3007870B2 (ja) | アーキテクチャ操作を管理する方法及び装置 | |
US6314494B1 (en) | Dynamically size configurable data buffer for data cache and prefetch cache memory | |
US6571323B2 (en) | Memory-access management method and system for synchronous dynamic Random-Access memory or the like | |
JP2007156821A (ja) | キャッシュシステム及び共用2次キャッシュ | |
JP2001043134A (ja) | コンピュータ・システム内でキャッシュ・ライン置換を管理するための方法および装置 | |
US6976130B2 (en) | Cache controller unit architecture and applied method | |
US7177981B2 (en) | Method and system for cache power reduction | |
KR100304318B1 (ko) | 프로세서버스에대한캐시조작의요구에기초해서명령을발행하는방법및장치 | |
KR100833178B1 (ko) | 캐시 메모리에 저장되는 블록개수를 제어할 수 있는 캐시메모리 시스템 및 동작 방법 | |
GB2335764A (en) | Selective caching of memory accesses based on access history | |
US6105112A (en) | Dynamic folding of cache operations for multiple coherency-size systems | |
US6601155B2 (en) | Hot way caches: an energy saving technique for high performance caches | |
US5611072A (en) | Cache with an extended single cycle read/write system and method | |
US6694408B1 (en) | Scalable replacement method and system in a cache memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
N231 | Notification of change of applicant | ||
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: 20120808 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20130812 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20140807 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20150807 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20160801 Year of fee payment: 11 |
|
FPAY | Annual fee payment |
Payment date: 20170811 Year of fee payment: 12 |
|
FPAY | Annual fee payment |
Payment date: 20180801 Year of fee payment: 13 |
|
EXPY | Expiration of term |