CN109952565A - 内存访问技术 - Google Patents

内存访问技术 Download PDF

Info

Publication number
CN109952565A
CN109952565A CN201680090713.9A CN201680090713A CN109952565A CN 109952565 A CN109952565 A CN 109952565A CN 201680090713 A CN201680090713 A CN 201680090713A CN 109952565 A CN109952565 A CN 109952565A
Authority
CN
China
Prior art keywords
memory
access
access request
cache lines
controller hub
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CN201680090713.9A
Other languages
English (en)
Other versions
CN109952565B (zh
Inventor
肖世海
邹乔莎
杨伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN109952565A publication Critical patent/CN109952565A/zh
Application granted granted Critical
Publication of CN109952565B publication Critical patent/CN109952565B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • 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/0877Cache access modes
    • G06F12/0879Burst mode
    • 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/0891Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using clearing, invalidating or resetting means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • 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/0895Caches characterised by their organisation or structure of parts of caches, e.g. directory or tag array
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • G06F2212/1024Latency reduction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/202Non-volatile memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/60Details of cache memory
    • G06F2212/608Details relating to cache mapping

Landscapes

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

Abstract

一种内存访问技术,应用于包括第一级存储器、第二级存储器和内存控制器的计算机系统中。第一级存储器用于缓存所述第二级存储器中的数据。所述内存访问技术中,对于访问与第一级存储器中的第一缓存行具有映射关系的不同内存块的多个访问请求,内存控制器可以将该多个访问请求的标签集中在一起与所述第一缓存行的标签进行比较,以判断所述多个访问请求是否命中所述第一级存储器。在处理所述多个访问请求的过程中,内存控制器只需要从所述第一级存储器中读取一次所述第一缓存行的标签,从而减少了从所述第一级存储器中读取所述第一缓存行的标签的次数,缩短了内存访问延时,提高了内存访问效率。

Description

PCT国内申请,说明书已公开。

Claims (21)

  1. PCT国内申请,权利要求书已公开。
CN201680090713.9A 2016-11-16 2016-11-16 内存访问技术 Active CN109952565B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2016/106130 WO2018090255A1 (zh) 2016-11-16 2016-11-16 内存访问技术

Publications (2)

Publication Number Publication Date
CN109952565A true CN109952565A (zh) 2019-06-28
CN109952565B CN109952565B (zh) 2021-10-22

Family

ID=62146058

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680090713.9A Active CN109952565B (zh) 2016-11-16 2016-11-16 内存访问技术

Country Status (4)

Country Link
US (1) US11210020B2 (zh)
EP (1) EP3534265A4 (zh)
CN (1) CN109952565B (zh)
WO (1) WO2018090255A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111143244A (zh) * 2019-12-30 2020-05-12 海光信息技术有限公司 计算机设备的内存访问方法和计算机设备
CN111241009A (zh) * 2019-12-31 2020-06-05 西安翔腾微电子科技有限公司 一种数据反馈方法及装置
CN111259384A (zh) * 2020-01-17 2020-06-09 中国科学院计算技术研究所 一种基于缓存随机无效的处理器瞬态攻击防御方法
CN114930306A (zh) * 2020-03-23 2022-08-19 华为技术有限公司 带宽均衡方法和装置
CN116561020A (zh) * 2023-05-15 2023-08-08 合芯科技(苏州)有限公司 一种混合缓存粒度下的请求处理方法、设备及存储介质
CN117331853A (zh) * 2023-10-11 2024-01-02 上海合芯数字科技有限公司 缓存处理方法、装置、电子设备及介质

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11550725B2 (en) 2020-05-18 2023-01-10 Micron Technology, Inc. Dynamically sized redundant write buffer with sector-based tracking
US11301380B2 (en) 2020-05-18 2022-04-12 Micron Technology, Inc. Sector-based tracking for a page cache
US11586547B2 (en) * 2020-05-26 2023-02-21 Micron Technology, Inc. Instruction caching scheme for memory devices

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6487640B1 (en) * 1999-01-19 2002-11-26 International Business Machines Corporation Memory access request reordering to reduce memory access latency
CN101201800A (zh) * 2007-12-21 2008-06-18 福建星网锐捷网络有限公司 数据处理方法和装置
CN103198026A (zh) * 2012-01-09 2013-07-10 辉达公司 指令高速缓存功耗降低
US20140032845A1 (en) * 2012-07-30 2014-01-30 Soft Machines, Inc. Systems and methods for supporting a plurality of load accesses of a cache in a single cycle
US20140156947A1 (en) * 2012-07-30 2014-06-05 Soft Machines, Inc. Method and apparatus for supporting a plurality of load accesses of a cache in a single cycle to maintain throughput
CN104346293A (zh) * 2013-07-25 2015-02-11 华为技术有限公司 混合内存的数据访问方法、模块、处理器及终端设备
CN104809076A (zh) * 2014-01-23 2015-07-29 华为技术有限公司 Cache的管理方法及装置
CN105786400A (zh) * 2014-12-25 2016-07-20 研祥智能科技股份有限公司 一种异构混合内存组件、系统及存储方法
CN105938458A (zh) * 2016-04-13 2016-09-14 上海交通大学 软件定义的异构混合内存管理方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6321321B1 (en) * 1999-06-21 2001-11-20 Vlsi Technology, Inc. Set-associative cache-management method with parallel and single-set sequential reads
US7512750B2 (en) * 2003-12-31 2009-03-31 Intel Corporation Processor and memory controller capable of use in computing system that employs compressed cache lines' worth of information
US20090006756A1 (en) 2007-06-29 2009-01-01 Donley Greggory D Cache memory having configurable associativity
CN101266578A (zh) * 2008-02-22 2008-09-17 浙江大学 基于增量式闭合序列挖掘的高速缓存数据预取方法
CN101355583B (zh) * 2008-09-11 2012-05-23 南京大学 无线自组网中基于松散位置依赖的缓存搜索方法
CN104346294B (zh) * 2013-07-31 2017-08-25 华为技术有限公司 基于多级缓存的数据读/写方法、装置和计算机系统
US9760492B2 (en) * 2014-11-21 2017-09-12 Mediatek Singapore Pte. Ltd. Method for controlling access of cache through using programmable hashing address and related cache controller
US9582430B2 (en) * 2015-03-27 2017-02-28 Intel Corporation Asymmetric set combined cache
US9846648B2 (en) * 2015-05-11 2017-12-19 Intel Corporation Create page locality in cache controller cache allocation
US10073786B2 (en) * 2015-05-28 2018-09-11 Micron Technology, Inc. Apparatuses and methods for compute enabled cache
CN105138587B (zh) * 2015-07-31 2019-09-10 小米科技有限责任公司 数据访问方法、装置和系统
US10261901B2 (en) * 2015-09-25 2019-04-16 Intel Corporation Method and apparatus for unneeded block prediction in a computing system having a last level cache and a multi-level system memory
US10901908B2 (en) * 2019-01-16 2021-01-26 International Business Machines Corporation Storing data into a memory

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6487640B1 (en) * 1999-01-19 2002-11-26 International Business Machines Corporation Memory access request reordering to reduce memory access latency
CN101201800A (zh) * 2007-12-21 2008-06-18 福建星网锐捷网络有限公司 数据处理方法和装置
CN103198026A (zh) * 2012-01-09 2013-07-10 辉达公司 指令高速缓存功耗降低
US20140032845A1 (en) * 2012-07-30 2014-01-30 Soft Machines, Inc. Systems and methods for supporting a plurality of load accesses of a cache in a single cycle
US20140156947A1 (en) * 2012-07-30 2014-06-05 Soft Machines, Inc. Method and apparatus for supporting a plurality of load accesses of a cache in a single cycle to maintain throughput
CN104346293A (zh) * 2013-07-25 2015-02-11 华为技术有限公司 混合内存的数据访问方法、模块、处理器及终端设备
CN104809076A (zh) * 2014-01-23 2015-07-29 华为技术有限公司 Cache的管理方法及装置
CN105786400A (zh) * 2014-12-25 2016-07-20 研祥智能科技股份有限公司 一种异构混合内存组件、系统及存储方法
CN105938458A (zh) * 2016-04-13 2016-09-14 上海交通大学 软件定义的异构混合内存管理方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111143244A (zh) * 2019-12-30 2020-05-12 海光信息技术有限公司 计算机设备的内存访问方法和计算机设备
CN111241009A (zh) * 2019-12-31 2020-06-05 西安翔腾微电子科技有限公司 一种数据反馈方法及装置
CN111241009B (zh) * 2019-12-31 2023-05-16 西安翔腾微电子科技有限公司 一种数据反馈方法及装置
CN111259384A (zh) * 2020-01-17 2020-06-09 中国科学院计算技术研究所 一种基于缓存随机无效的处理器瞬态攻击防御方法
CN111259384B (zh) * 2020-01-17 2022-06-14 中国科学院计算技术研究所 一种基于缓存随机无效的处理器瞬态攻击防御方法
CN114930306A (zh) * 2020-03-23 2022-08-19 华为技术有限公司 带宽均衡方法和装置
CN116561020A (zh) * 2023-05-15 2023-08-08 合芯科技(苏州)有限公司 一种混合缓存粒度下的请求处理方法、设备及存储介质
CN116561020B (zh) * 2023-05-15 2024-04-09 合芯科技(苏州)有限公司 一种混合缓存粒度下的请求处理方法、设备及存储介质
CN117331853A (zh) * 2023-10-11 2024-01-02 上海合芯数字科技有限公司 缓存处理方法、装置、电子设备及介质
CN117331853B (zh) * 2023-10-11 2024-04-16 上海合芯数字科技有限公司 缓存处理方法、装置、电子设备及介质

Also Published As

Publication number Publication date
EP3534265A1 (en) 2019-09-04
WO2018090255A1 (zh) 2018-05-24
EP3534265A4 (en) 2019-10-30
US11210020B2 (en) 2021-12-28
CN109952565B (zh) 2021-10-22
US20190272122A1 (en) 2019-09-05

Similar Documents

Publication Publication Date Title
CN109582214B (zh) 数据访问方法以及计算机系统
CN109952565A (zh) 内存访问技术
CN104050112B (zh) 用于标记需要写回持久存储的非事务代码区的开头和结束的指令
TWI509604B (zh) 促進多重處理器界面之具有板內建處理器邏輯的記憶體裝置及方法及使用其之電腦系統
CN107784121B (zh) 一种基于非易失内存的日志文件系统的小写优化方法
CN110362504A (zh) 对一致性链路和多级存储器的管理
CN110018971B (zh) 缓存替换技术
US20210081324A1 (en) Page table hooks to memory types
CN107818052B (zh) 内存访问方法及装置
KR20220045216A (ko) 유형화된 메모리 액세스에 대한 유형화되지 않은 메모리 액세스의 맵핑
CN105095116A (zh) 缓存替换的方法、缓存控制器和处理器
JP2021515287A (ja) 上位レベルキャッシュへの要求によるキャッシュへのインフラックスのログ記録
US11016905B1 (en) Storage class memory access
KR20220049026A (ko) 메모리 네임스페이스에 대한 데이터 바인딩을 위한 메모리 시스템
CN108431783A (zh) 访问请求处理方法、装置及计算机系统
CN107025130B (zh) 处理节点、计算机系统及事务冲突检测方法
US20040215900A1 (en) System and method for reducing contention in a multi-sectored cache
CN108763106B (zh) 一种基于交叉存储的Cache实现方法
CN103377141B (zh) 高速存储区的访问方法以及访问装置
US8458405B2 (en) Cache bank modeling with variable access and busy times
US9496009B2 (en) Memory with bank-conflict-resolution (BCR) module including cache
CN107506139A (zh) 一种面向相变存储器的写请求优化装置
CN106662998A (zh) 事务冲突检测方法、装置及计算机系统
KR20200123799A (ko) 디바이스를 디버깅할 때 메타데이터에 액세스하기 위한 장치 및 방법
CN110147670B (zh) 一种工作于内核态的进程间持久性内存保护方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant