IP Library Granted Patent US 12,566,608
Granted Patent B2
US 12,566,608 · App. 18/660,683 · Granted Mar 3, 2026

Methods and systems for data transfer

Inventors: John David Robson (Cambridge, GB); Kévin Petit (Great Wilbraham, GB)
Assignee: Arm Limited
G06F9/30145G06F9/3004
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,566,608
App. No.
18/660,683
Granted
Mar 3, 2026
Kind
B2
Abstract

Disclosed is an apparatus comprising: instruction decoding circuitry; data storage; and processing circuitry to process data responsive to an instruction decoded by instruction decoding circuitry configured to, responsive to a data transfer instruction specifying a data source and a region of the source to perform data transfer, control processing circuitry to: when the data transfer operation comprises an out-of-bounds memory access corresponding to an attempt to read data outside the indicated region of source storage, read data not associated with the out-of-bounds memory access from source storage and write data not associated with the out-of-bounds memory access to a first portion of target storage by overwriting preloaded values stored in the first portion of the target storage; and omit writing to a different second portion of the target storage data associated with the out-of-bounds memory access to preserve preloaded values stored in the second portion of target storage.

Claims (38)

1 . An apparatus comprising:

instruction decoding circuitry to decode instructions;

storage to store data; and

processing circuitry to perform data processing in response to an instruction decoded by the instruction decoding circuitry,

wherein the instruction decoding circuitry is configured to, in response to a data transfer instruction specifying a source storage to be accessed for data and an indication of a region of the source storage to perform a data transfer operation, control the processing circuitry to:

when the data transfer operation comprises at least one out-of-bounds memory access, wherein the at least one out-of-bounds memory access corresponds to an attempt to read data that is outside of the region of the source storage to perform the data transfer operation,

read data not associated with the at least one out-of-bounds memory access from the source storage and write the data not associated with the at least one out-of-bounds memory access to a first portion of a target storage by overwriting preloaded values stored in the first portion of the target storage; and

omit writing, to a different second portion of the target storage, data associated with the at least one out-of-bounds memory access to preserve preloaded values stored in the different second portion of the target storage.

2 . The apparatus of claim 1 , wherein the target storage has stored therein a plurality of preloaded values.

3 . The apparatus of claim 1 , wherein the indication of the region of the source storage comprises a start location of the source storage and a size of the source storage.

4 . The apparatus of claim 1 , wherein the processing circuitry is configured to determine the at least one out-of-bounds memory access based on the indication of the region of the source storage and a size of the target storage.

5 . The apparatus of claim 1 , wherein the processing circuitry is configured to, in a first out-of-bound operation mode, handle the at least one out-of-bounds memory access by returning a predetermined value as the data associated with the at least one out-of-bounds memory access.

6 . The apparatus of claim 1 , wherein the processing circuitry is configured to select a second out-of-bounds operation mode to disregard the data associated with the at least one out-of-bounds memory access.

7 . The apparatus of claim 1 , wherein:

the target storage comprises multi-dimensional array register storage to store at least one multi-dimensional array of data.

8 . A computer-implemented method comprising:

operating instruction decoding circuitry to decode instructions;

operate storage to store data; and

operate processing circuitry to perform data processing in response to an instruction decoded by the instruction decoding circuitry,

the method further comprising, in response to a data transfer instruction decoded by the instruction decoding circuitry specifying a source storage to be accessed for data and an indication of a region of the source storage to perform a data transfer operation, the processing circuitry:

when the data transfer operation comprises at least one out-of-bounds memory access, wherein the at least one out-of-bounds memory access corresponds to an attempt to read data that is outside of the region of the source storage to perform the data transfer operation,

reading data not associated with the at least one out-of-bounds memory access from the source storage and writing the data not associated with the at least one out-of-bounds memory access to a first portion of a target storage by overwriting preloaded values stored in the first portion of the target storage; and

omitting writing to a different second portion of the target storage the data associated with the at least one out-of-bounds memory access to preserve preloaded values stored in the different second portion of the target storage.

9 . The method of claim 8 , further comprising storing a plurality of preloaded values in the target storage.

10 . The method of claim 8 , wherein the indication of the region of the source storage comprises a start location of the source storage and a size of the source storage.

11 . The method of claim 8 , wherein the processing circuitry is configured to determine the at least one out-of-bounds memory access based on the indication of the region of the source storage and a size of the target storage.

12 . The method of claim 8 , further comprising, in a first out-of-bound operation mode, the processing circuitry handle the at least one out-of-bounds memory access by returning a predetermined value as the data associated with the at least one out-of-bounds memory access.

13 . The method of claim 8 , further comprising the processing circuitry selecting a second out-of-bounds operation mode to disregard the data associated with the at least one out-of-bounds memory access.

14 . The method of claim 8 , wherein:

the target storage comprises multi-dimensional array register storage to store at least one multi-dimensional array of data.

15 . A computer program product stored in a non-transitory computer-readable medium and comprising computer program instructions for controlling a host data processing apparatus to provide an instruction execution environment comprising:

instruction decoding program logic to decode instructions;

storage logic to store data; and

processing program logic to perform data processing in response to an instruction decoded by the instruction decoding circuitry,

wherein, the instruction decoding program logic is configured to, in response to a data transfer instruction specifying a source storage to be accessed for data and an indication of a region of the source storage to perform a data transfer operation, control the processing program logic to:

when the data transfer operation comprises at least one out-of-bounds memory access, wherein the at least one out-of-bounds memory access corresponds to an attempt to read data that is outside of the region of the source storage to perform the data transfer operation,

read data not associated with the at least one out-of-bounds memory access from the source storage and write the data not associated with the at least one out-of-bounds memory access to a first portion of a target storage by overwriting preloaded values stored in the first portion of the target storage; and

omit writing to a different second portion of the target storage the data associated with the at least one out-of-bounds memory access to preserve preloaded values stored in the different second portion of the target storage.

Assignments (2)
CORRECTIVE ASSIGNMENT TO CORRECT THE EXECUTION DATE PREVIOUSLY RECORDED AT REEL: 67374 FRAME: 505. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Dec 2, 2025
From: ROBSON, JOHN DAVID; PETIT, KÉVIN
To: ARM LIMITED
Reel/Frame 073806/0627 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 10, 2024
From: ROBSON, JOHN DAVID; PETIT, KÉVIN
To: ARM LIMITED
Reel/Frame 067374/0505 →
Priority Claims (1)
GB 2307750 · May 24, 2023 · national
Continuity (1)
Related Publication 20240394061A1 · Nov 28, 2024
References Cited (9)
US 6021469A · Tremblay · 2000 [cited by examiner]
US 11321092B1 · Raikin · 2022 [cited by examiner]
US 20220206800A1 · Ould-Ahmed-Vall · 2022 [cited by examiner]
US 20220206943A1 · Chen · 2022 [cited by examiner]
US 20220342830A1 · Chen · 2022 [cited by examiner]
US 20230090973A1 · Ray et al. · 2023 [cited by applicant]
US 20250077439A1 · Medwed · 2025 [cited by examiner]
Combined Search and Examination Report under Sections 17 and 18(3), App. No. GB2307750.6, Mailed Nov. 23, 2023, 8 pages. [cited by applicant]
Search Report under Section 17(6), App. No. GB2307750.6, Mailed Jan. 26, 2024, 2 pages. [cited by applicant]