WO2023175289A1 - Read-as-x property for page of memory address space - Google Patents

Read-as-x property for page of memory address space Download PDF

Info

Publication number
WO2023175289A1
WO2023175289A1 PCT/GB2022/053304 GB2022053304W WO2023175289A1 WO 2023175289 A1 WO2023175289 A1 WO 2023175289A1 GB 2022053304 W GB2022053304 W GB 2022053304W WO 2023175289 A1 WO2023175289 A1 WO 2023175289A1
Authority
WO
WIPO (PCT)
Prior art keywords
read
memory
page
property
address
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.)
Ceased
Application number
PCT/GB2022/053304
Other languages
English (en)
French (fr)
Inventor
Graeme Peter BARNES
Simon John Craske
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.)
ARM Ltd
Original Assignee
ARM Ltd
Advanced Risc Machines 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 ARM Ltd, Advanced Risc Machines Ltd filed Critical ARM Ltd
Priority to US18/844,294 priority Critical patent/US20250181515A1/en
Priority to CN202280093428.8A priority patent/CN118843857A/zh
Priority to IL314979A priority patent/IL314979A/en
Priority to EP22835099.7A priority patent/EP4494012A1/en
Priority to KR1020247033873A priority patent/KR20240159950A/ko
Priority to JP2024553454A priority patent/JP2025512715A/ja
Publication of WO2023175289A1 publication Critical patent/WO2023175289A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/1009Address translation using page tables, e.g. page table structures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • G06F12/1466Key-lock mechanism
    • G06F12/1475Key-lock mechanism in a virtual system, e.g. with translation means

Definitions

  • the memory management circuitry is configured to support two or more variants of the read-as-X property corresponding to different values for the specified value X, to allow use of the read-as-X behaviour for a range of different values to be assigned to regions of virtual memory without consuming physical memory.
  • the pipeline stages include a fetch stage 6 for fetching instructions from an instruction cache 8; a decode stage 10 for decoding the fetched program instructions to generate micro-operations (decoded instructions) to be processed by remaining stages of the pipeline; an issue stage 12 for checking whether operands required for the microoperations are available in a register file 14 and issuing micro-operations for execution once the required operands for a given micro-operation are available; an execute stage 16 for executing data processing operations corresponding to the micro-operations, by processing operands read from the register file 14 to generate result values; and a writeback stage 18 for writing the results of the processing back to the register file 14.
  • register renaming stage could be included for mapping architectural registers specified by program instructions or microoperations to physical register specifiers identifying physical registers in the register file 14.
  • Figure 2 illustrates processing of read and write requests to pages of an address space treated as “normal” memory.
  • the “normal” memory type can be used for a page intended to be used for regular random-access data or instruction storage.
  • the MMU 28 looks up the virtual address specified by the read request in its TLB 29. If the TLB 29 already includes page table information for the virtual address, then the attributes and address translation mapping information provided by the page table information are used to control translation of the virtual address into a physical address, check access permissions to determine whether the read request can be allowed (with a fault signalled if the read request is not allowed), and control the way in which the read request of service based on the attributes (e.g.
  • the MMU 28 does not need to translate the virtual address to a physical address and can suppress any access to the cache 30, 32 or memory 34 which would otherwise be issued to obtain the value of the read data. Note that cache/memory accesses might still be needed if a page table walk is required, to obtain the page table information associated with the read target virtual address, even if cache/memory accesses can be suppressed for obtaining the data value of X.
  • the read-as-X property is a new architectural property defined in the page table information supported by the MMU 28. While this may require some additional encoding space in the page table information, this has several benefits over the software-implemented copy-on-write mechanism for filling large regions of memory with a predetermined value.
  • Read-as-0 write-ignore a variant of read-as-zero where the write-ignore behaviour of step 160 of Figure 5 is used when a write is requested to a read-as-X page;
  • the initial indirection table may specify whether the page is a read-as-X page or a non-read-as-X page, and could specify other properties of the read-as-X property such as the read-as-X write behaviour or the type of system component to be forwarded with write data for a read-as-X page, but for at least some encodings designated as denoting a read-as-X page of memory, the encoding may be interpreted as a reference to the further indirection table 204 where the referenced entry specifies the particular value to be returned four reads to the read-as-X page of memory.

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)
  • Memory System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
PCT/GB2022/053304 2022-03-16 2022-12-20 Read-as-x property for page of memory address space Ceased WO2023175289A1 (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
US18/844,294 US20250181515A1 (en) 2022-03-16 2022-12-20 Read-as-x property for page of memory address space
CN202280093428.8A CN118843857A (zh) 2022-03-16 2022-12-20 用于存储器地址空间的页面的“读值只有x”性质
IL314979A IL314979A (en) 2022-03-16 2022-12-20 property reads as X for page memory address space
EP22835099.7A EP4494012A1 (en) 2022-03-16 2022-12-20 Read-as-x property for page of memory address space
KR1020247033873A KR20240159950A (ko) 2022-03-16 2022-12-20 메모리 어드레스 공간의 페이지에 대한 read-as-X 속성
JP2024553454A JP2025512715A (ja) 2022-03-16 2022-12-20 メモリアドレス空間のページに対するxとして読み取られるプロパティ

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB2203646.1 2022-03-16
GB2203646.1A GB2616643B (en) 2022-03-16 2022-03-16 Read-as-X property for page of memory address space

Publications (1)

Publication Number Publication Date
WO2023175289A1 true WO2023175289A1 (en) 2023-09-21

Family

ID=81254766

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/GB2022/053304 Ceased WO2023175289A1 (en) 2022-03-16 2022-12-20 Read-as-x property for page of memory address space

Country Status (9)

Country Link
US (1) US20250181515A1 (https=)
EP (1) EP4494012A1 (https=)
JP (1) JP2025512715A (https=)
KR (1) KR20240159950A (https=)
CN (1) CN118843857A (https=)
GB (1) GB2616643B (https=)
IL (1) IL314979A (https=)
TW (1) TW202403562A (https=)
WO (1) WO2023175289A1 (https=)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20250110902A1 (en) * 2023-09-29 2025-04-03 Ampere Computing Llc Processors employing default tags for writes to memory from devices not compliant with a memory tagging extension and related methods
US20250307190A1 (en) * 2024-03-28 2025-10-02 Advanced Micro Devices, Inc. On-chip collective operations
CN121255663B (zh) * 2025-12-03 2026-03-20 中国科学院软件研究所 污点标签处理方法、装置、设备及介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150089146A1 (en) * 2013-09-24 2015-03-26 Qualcomm Incorporated Conditional page fault control for page residency
US20160019168A1 (en) * 2014-07-18 2016-01-21 Qualcomm Incorporated On-Demand Shareability Conversion In A Heterogeneous Shared Virtual Memory
EP3671474A1 (en) * 2018-12-20 2020-06-24 Intel Corporation Restricting usage of encryption keys by untrusted software

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5870097A (en) * 1995-08-04 1999-02-09 Microsoft Corporation Method and system for improving shadowing in a graphics rendering system
CN106503004B (zh) * 2015-09-07 2020-09-11 腾讯科技(深圳)有限公司 一种信息处理方法及装置、终端
GB2547242B (en) * 2016-02-11 2018-05-23 Advanced Risc Mach Ltd Graphics processing
US10268596B2 (en) * 2017-04-21 2019-04-23 Intel Corporation Memory access compression using clear code for tile pixels

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150089146A1 (en) * 2013-09-24 2015-03-26 Qualcomm Incorporated Conditional page fault control for page residency
US20160019168A1 (en) * 2014-07-18 2016-01-21 Qualcomm Incorporated On-Demand Shareability Conversion In A Heterogeneous Shared Virtual Memory
EP3671474A1 (en) * 2018-12-20 2020-06-24 Intel Corporation Restricting usage of encryption keys by untrusted software

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ROBERT BEDICHEK: "Some Efficient Architecture Simulation Techniques", USENIX CONFERENCE, pages: 53 - 63

Also Published As

Publication number Publication date
TW202403562A (zh) 2024-01-16
JP2025512715A (ja) 2025-04-22
KR20240159950A (ko) 2024-11-07
IL314979A (en) 2024-10-01
GB202203646D0 (en) 2022-04-27
GB2616643B (en) 2024-07-10
US20250181515A1 (en) 2025-06-05
GB2616643A (en) 2023-09-20
EP4494012A1 (en) 2025-01-22
CN118843857A (zh) 2024-10-25

Similar Documents

Publication Publication Date Title
EP3881189B1 (en) An apparatus and method for controlling memory accesses
US20250181515A1 (en) Read-as-x property for page of memory address space
US11138128B2 (en) Controlling guard tag checking in memory accesses
US11397541B2 (en) Controlling guard tag checking in memory accesses
TW202538530A (zh) 標籤定位位址轉譯操作
TW202538529A (zh) 標籤資料存取檢查
TW202538531A (zh) 標籤定位位址判定
TW202540862A (zh) 標籤轉譯模式的選擇

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22835099

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 18844294

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2024553454

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 202280093428.8

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 202417069149

Country of ref document: IN

ENP Entry into the national phase

Ref document number: 20247033873

Country of ref document: KR

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 1020247033873

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 2022835099

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2022835099

Country of ref document: EP

Effective date: 20241016

WWP Wipo information: published in national office

Ref document number: 18844294

Country of ref document: US