RU2009131695A - Способ и устройство для установки политики кэширования в процессоре - Google Patents

Способ и устройство для установки политики кэширования в процессоре Download PDF

Info

Publication number
RU2009131695A
RU2009131695A RU2009131695/08A RU2009131695A RU2009131695A RU 2009131695 A RU2009131695 A RU 2009131695A RU 2009131695/08 A RU2009131695/08 A RU 2009131695/08A RU 2009131695 A RU2009131695 A RU 2009131695A RU 2009131695 A RU2009131695 A RU 2009131695A
Authority
RU
Russia
Prior art keywords
information
memory access
caching
processor
memory
Prior art date
Application number
RU2009131695/08A
Other languages
English (en)
Other versions
RU2427892C2 (ru
Inventor
Майкл Уилльям МОРРОУ (US)
Майкл Уилльям МОРРОУ
Original Assignee
Квэлкомм Инкорпорейтед (US)
Квэлкомм Инкорпорейтед
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 Квэлкомм Инкорпорейтед (US), Квэлкомм Инкорпорейтед filed Critical Квэлкомм Инкорпорейтед (US)
Publication of RU2009131695A publication Critical patent/RU2009131695A/ru
Application granted granted Critical
Publication of RU2427892C2 publication Critical patent/RU2427892C2/ru

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/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • 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/12Replacement control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • 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/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory 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
    • 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/0888Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass
    • 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/0893Caches characterised by their organisation or structure
    • G06F12/0897Caches characterised by their organisation or structure with two or more cache hierarchy levels
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

1. Способ определения политики кэширования, содержащий этапы, на которых: ! принимают информацию о политике кэширования, связанную с одним или более целевых запоминающих устройств, выполненных с возможностью хранения информации, используемой процессором; и ! устанавливают одну или более политик кэширования, основываясь на информации о политике кэширования. ! 2. Способ по п.1, в котором этап приема информации о политике кэширования содержит этап приема представляемой по собственной инициативе информации о политике кэширования. ! 3. Способ по п.1, в котором этап приема информации о политике кэширования содержит этапы, на которых: ! направляют обращение к памяти на одно из целевых запоминающих устройств; и ! принимают информацию о политике кэширования в ответ на обращение к памяти. ! 4. Способ по п.3, в котором этап приема информации о политике кэширования в ответ на обращение к памяти содержит этап приема информации о политике кэширования, обеспеченной целевым запоминающим устройством, на которое направлено обращение к памяти. ! 5. Способ по п.3, в котором этап приема информации о политике кэширования в ответ на обращение к памяти содержит этап приема информации о политике кэширования, обеспечиваемой декодером адреса, основываясь на адресе, связанном с обращением к памяти. ! 6. Способ по п.3, в котором этап установки одной или более политик кэширования содержит этапы, на которых: ! обращаются к записи таблицы страниц, связанной с обращением к памяти; и ! замещают одну или более политик кэширования, обозначенных записью таблицы страниц, информацией о политике кэширования, принимаемой в ответ на обращение к памяти. ! 7. Пр�

Claims (20)

1. Способ определения политики кэширования, содержащий этапы, на которых:
принимают информацию о политике кэширования, связанную с одним или более целевых запоминающих устройств, выполненных с возможностью хранения информации, используемой процессором; и
устанавливают одну или более политик кэширования, основываясь на информации о политике кэширования.
2. Способ по п.1, в котором этап приема информации о политике кэширования содержит этап приема представляемой по собственной инициативе информации о политике кэширования.
3. Способ по п.1, в котором этап приема информации о политике кэширования содержит этапы, на которых:
направляют обращение к памяти на одно из целевых запоминающих устройств; и
принимают информацию о политике кэширования в ответ на обращение к памяти.
4. Способ по п.3, в котором этап приема информации о политике кэширования в ответ на обращение к памяти содержит этап приема информации о политике кэширования, обеспеченной целевым запоминающим устройством, на которое направлено обращение к памяти.
5. Способ по п.3, в котором этап приема информации о политике кэширования в ответ на обращение к памяти содержит этап приема информации о политике кэширования, обеспечиваемой декодером адреса, основываясь на адресе, связанном с обращением к памяти.
6. Способ по п.3, в котором этап установки одной или более политик кэширования содержит этапы, на которых:
обращаются к записи таблицы страниц, связанной с обращением к памяти; и
замещают одну или более политик кэширования, обозначенных записью таблицы страниц, информацией о политике кэширования, принимаемой в ответ на обращение к памяти.
7. Процессор, содержащий:
по меньшей мере одну кэш-память, выполненную с возможностью хранения информации, локальной для процессора; и
блок управления памятью, выполненный с возможностью установки одной или более политик кэширования по меньшей мере для одной кэш-памяти, основываясь на информации о политике кэширования, связанной с одним или более целевых запоминающих устройств, выполненных с возможностью хранения информации, используемой процессором.
8. Процессор по п.7, в котором блок управления памятью выполняют с возможностью обработки представляемой по собственной инициативе информации о политике кэширования.
9. Процессор по п.7, в котором блок управления памятью выполняют с возможностью направления обращения к памяти на одно из целевых запоминающих устройств и обработки информации о политике кэширования, принимаемой в ответ на обращение к памяти.
10. Процессор по п.9, в котором блок управления памятью выполняют с возможностью обработки информации о политике кэширования, обеспечиваемой целевым запоминающим устройством, на которое направлено обращение к памяти.
11. Процессор по п.9, в котором блок управления памятью выполняют с возможностью обработки информации о политике кэширования, обеспечиваемой декодером адреса, основываясь на адресе, связанном с обращением к памяти.
12. Процессор по п.11, в котором процессор включает в себя декодер адреса.
13. Процессор по п.9, в котором блок управления памятью выполняют с возможностью обращения к записи таблицы страниц, связанной с обращением к памяти, и для замещения одной или большего количества политик кэширования, обозначенных записью таблицы страниц, информацией о политике кэширования, принимаемой в ответ на обращение к памяти.
14. Система, содержащая:
процессор, имеющий по меньшей мере одну кэш-память, выполненную с возможностью хранения информации, локальной для процессора;
одно или более целевых запоминающих устройств, связанных с процессором и выполненных с возможностью хранения информации, используемой процессором; и
блок управления памятью, который включает в себя процессор, и который выполняют с возможностью установки одной или более политик кэширования по меньшей мере для одной кэш-памяти, основываясь на информации о политике кэширования, связанной с одним или более целевых запоминающих устройств.
15. Система по п.14, в которой блок управления памятью выполняют с возможностью обработки представляемой по собственной инициативе информации о политике кэширования.
16. Система по п.14, в которой блок управления памятью выполняют с возможностью направления обращения к памяти на одно из целевых запоминающих устройств и для обработки информации о политике кэширования, принимаемой в ответ на обращение к памяти.
17. Система по п.16, в которой блок управления памятью выполняют с возможностью обработки информации о политике кэширования, обеспечиваемой целевым запоминающим устройством, на которое направлено обращение к памяти.
18. Система по п.16, дополнительно содержащая декодер адреса, выполненный с возможностью обеспечения информации о политике кэширования, основываясь на адресе, связанном с обращением к памяти.
19. Система по п.18, в которой процессор включает в себя декодер адреса.
20. Система по п.16, в которой блок управления памятью выполняют с возможностью обращения к записи таблицы страниц, к которой обращаются в соответствии с обращением к памяти, и замещения одной или более политик кэширования, обозначенных записью таблицы страниц, информацией о политике кэширования, принимаемой в ответ на обращение к памяти.
RU2009131695/08A 2007-01-24 2008-01-24 Способ и устройство для установки политики кэширования в процессоре RU2427892C2 (ru)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/626,434 2007-01-24
US11/626,434 US7949834B2 (en) 2007-01-24 2007-01-24 Method and apparatus for setting cache policies in a processor

Publications (2)

Publication Number Publication Date
RU2009131695A true RU2009131695A (ru) 2011-02-27
RU2427892C2 RU2427892C2 (ru) 2011-08-27

Family

ID=39456426

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2009131695/08A RU2427892C2 (ru) 2007-01-24 2008-01-24 Способ и устройство для установки политики кэширования в процессоре

Country Status (11)

Country Link
US (1) US7949834B2 (ru)
EP (1) EP2115599B1 (ru)
JP (1) JP5313168B2 (ru)
KR (1) KR101079970B1 (ru)
CN (1) CN101589374B (ru)
BR (1) BRPI0806756A2 (ru)
CA (1) CA2674868C (ru)
MX (1) MX2009007948A (ru)
RU (1) RU2427892C2 (ru)
TW (1) TWI446166B (ru)
WO (1) WO2008092032A1 (ru)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008149657A1 (ja) * 2007-06-05 2008-12-11 Nec Corporation 入出力制御システム、入出力制御方法、及び、入出力制御プログラム
US8393008B2 (en) * 2008-05-21 2013-03-05 Microsoft Corporation Hardware-based output protection of multiple video streams
US8151077B1 (en) * 2008-06-30 2012-04-03 Emc Corporation Application aware cache management
US8504776B2 (en) * 2008-08-29 2013-08-06 Infineon Technologies Ag Device and method for controlling caches
US8504839B2 (en) * 2008-10-27 2013-08-06 Advanced Micro Devices, Inc. Method, apparatus, and device for protecting against programming attacks and/or data corruption
US8161246B2 (en) * 2009-03-30 2012-04-17 Via Technologies, Inc. Prefetching of next physically sequential cache line after cache line that includes loaded page table entry
CN101866321B (zh) * 2010-06-13 2012-03-21 北京北大众志微系统科技有限责任公司 一种高速缓存管理策略的调整方法及系统
US9652560B1 (en) * 2011-07-18 2017-05-16 Apple Inc. Non-blocking memory management unit
US8954704B2 (en) 2011-08-12 2015-02-10 International Business Machines Corporation Dynamic network adapter memory resizing and bounding for virtual function translation entry storage
US20130042238A1 (en) * 2011-08-12 2013-02-14 International Business Machines Corporation Optimized Virtual Function Translation Entry Memory Caching
US10042750B2 (en) 2013-03-15 2018-08-07 Micron Technology, Inc. Apparatuses and methods for adaptive control of memory using an adaptive memory controller with a memory management hypervisor
US10146437B2 (en) 2014-03-17 2018-12-04 Primaryio, Inc. Tier aware caching solution to increase application performance
US10133488B2 (en) * 2014-03-17 2018-11-20 Primaryio, Inc. Apparatus and method for cache provisioning, configuration for optimal application performance
US9715455B1 (en) * 2014-05-05 2017-07-25 Avago Technologies General Ip (Singapore) Pte. Ltd. Hint selection of a cache policy
WO2016191569A1 (en) * 2015-05-27 2016-12-01 Google Inc. Memory system architecture
US10019404B2 (en) * 2016-04-20 2018-07-10 Allone Solution Co., Ltd. Accessing method for accessing hybrid hard-disk drive
US10402336B2 (en) * 2017-03-31 2019-09-03 Intel Corporation System, apparatus and method for overriding of non-locality-based instruction handling

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0340046A (ja) * 1989-07-06 1991-02-20 Hitachi Ltd キャッシュメモリ制御方式および情報処理装置
US5325504A (en) * 1991-08-30 1994-06-28 Compaq Computer Corporation Method and apparatus for incorporating cache line replacement and cache write policy information into tag directories in a cache system
ZA954460B (en) * 1994-09-30 1996-02-05 Intel Corp Method and apparatus for processing memory-type information within a microprocessor
WO1996035995A1 (en) * 1995-05-10 1996-11-14 The 3Do Company Method and apparatus for managing snoop requests using snoop advisory cells
US5946713A (en) * 1997-08-18 1999-08-31 Intel Corporation Memory attribute palette
JPH1173368A (ja) * 1997-08-28 1999-03-16 Seiko Epson Corp メモリモジュール、情報処理装置の制御方法および記録媒体
US6434669B1 (en) 1999-09-07 2002-08-13 International Business Machines Corporation Method of cache management to dynamically update information-type dependent cache policies
US7328328B2 (en) * 2002-02-19 2008-02-05 Ip-First, Llc Non-temporal memory reference control mechanism
EP1495394B1 (en) * 2002-04-18 2008-07-23 Advanced Micro Devices, Inc. A computer system including a secure execution mode - capable cpu and a security services processor connected via a secure communication path
US6891543B2 (en) * 2002-05-08 2005-05-10 Intel Corporation Method and system for optimally sharing memory between a host processor and graphics processor
US7353334B2 (en) * 2002-08-19 2008-04-01 Aristos Logic Corporation Method of increasing performance and manageability of network storage systems using optimized cache setting and handling policies
US7039756B2 (en) 2003-04-28 2006-05-02 Lsi Logic Corporation Method for use of ternary CAM to implement software programmable cache policies
JP4765249B2 (ja) * 2003-11-18 2011-09-07 セイコーエプソン株式会社 情報処理装置およびキャッシュメモリ制御方法
US7555610B2 (en) * 2003-11-18 2009-06-30 Panasonic Corporation Cache memory and control method thereof
JP2005267497A (ja) * 2004-03-22 2005-09-29 Hitachi Global Storage Technologies Netherlands Bv データ記憶装置、その制御方法及び磁気ディスク記憶装置
JP2006185284A (ja) * 2004-12-28 2006-07-13 Renesas Technology Corp データ処理装置
GB2422926B (en) * 2005-02-04 2008-10-01 Advanced Risc Mach Ltd Data processing apparatus and method for controlling access to memory
US7472225B2 (en) * 2005-06-20 2008-12-30 Arm Limited Caching data
US7616218B1 (en) * 2005-12-05 2009-11-10 Nvidia Corporation Apparatus, system, and method for clipping graphics primitives

Also Published As

Publication number Publication date
BRPI0806756A2 (pt) 2011-09-13
TW200842572A (en) 2008-11-01
US7949834B2 (en) 2011-05-24
EP2115599B1 (en) 2017-07-19
CN101589374A (zh) 2009-11-25
RU2427892C2 (ru) 2011-08-27
JP5313168B2 (ja) 2013-10-09
TWI446166B (zh) 2014-07-21
JP2010517179A (ja) 2010-05-20
WO2008092032A1 (en) 2008-07-31
MX2009007948A (es) 2009-08-07
CN101589374B (zh) 2012-07-04
KR101079970B1 (ko) 2011-11-04
EP2115599A1 (en) 2009-11-11
US20080177952A1 (en) 2008-07-24
CA2674868A1 (en) 2008-07-31
CA2674868C (en) 2015-02-03
KR20090108716A (ko) 2009-10-16

Similar Documents

Publication Publication Date Title
RU2009131695A (ru) Способ и устройство для установки политики кэширования в процессоре
US10409725B2 (en) Management of shared pipeline resource usage based on level information
US8250332B2 (en) Partitioned replacement for cache memory
US7822926B2 (en) Cache memory
US8966219B2 (en) Address translation through an intermediate address space
US8966204B2 (en) Data migration between memory locations
KR101485651B1 (ko) 메모리 액세스를 정확하게 예측하기 위한 영역 기반 기술
US9992298B2 (en) Relationship-based WAN caching for object stores
EP2472412B1 (en) Explicitly regioned memory organization in a network element
US20040117587A1 (en) Hardware managed virtual-to-physical address translation mechanism
US20040117588A1 (en) Access request for a data processing system having no system memory
AU2003302824A1 (en) Improved tlb management for real-time applications
WO2019012291A1 (en) MEMORY SYSTEM BASED ON A BEACH
EP3446223A1 (en) Object tagged memory monitoring method and processing apparatus
TW200508862A (en) Implementation of memory access control using optimizations
US20140189274A1 (en) Apparatus and method for page walk extension for enhanced security checks
US8015361B2 (en) Memory-centric page table walker
US8966186B2 (en) Cache memory prefetching
US20040117591A1 (en) Data processing system having no system memory
US20120066456A1 (en) Direct memory access cache prefetching
US10503658B2 (en) Page migration with varying granularity
CN113010452A (zh) 一种高效且支持QoS的虚拟内存架构
US7984263B2 (en) Structure for a memory-centric page table walker
US8972665B2 (en) Cache set selective power up
US20140136785A1 (en) Enhanced cache coordination in a multilevel cache

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20200125