IP Library Granted Patent US 12,554,632
Granted Patent B2
US 12,554,632 · App. 18/670,075 · Granted Feb 17, 2026

Electronic device and method with hardware acceleration

Inventors: Bongjun Kim (Suwon-si, KR); Youngsok Kim (Seoul, KR); Sangsu Lee (Seoul, KR); Jounghoo Lee (Seoul, KR); Yeonan Ha (Seoul, KR)
Assignees: Samsung Electronics Co., Ltd.; UIF (University Industry Foundation), Yonsei University
G06F12/0223
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,554,632
App. No.
18/670,075
Granted
Feb 17, 2026
Kind
B2
Abstract

An electronic device and method are provided. The method includes, in response to a result of a performed determination, between a processing-in-memory (PIM) operation and a non-PIM operation, being that a target operation included in an instruction set is the PIM operation, loading information regarding a PIM operation type of the target operation to a PIM operation register of an accelerator of the electronic device based on a performed determination that input data, for use in the target operation, is arranged in a memory of the accelerator according to a characteristic of the target operation, and controlling, using a PIM operation execution instruction, one or more PIM processing elements (PEs) of the memory to perform the target operation using the arranged input data and the information regarding the operation type loaded in the PIM operation register.

Claims (44)

1 . A processor-implemented method of operating an electronic device, the method comprising:

in response to a result of a performed determination, between a processing-in-memory (PIM) operation and a non-PIM operation, being that a target operation included in an instruction set is the PIM operation:

loading information regarding a PIM operation type of the target operation to a PIM operation register of an accelerator of the electronic device based on a performed determination that input data, for use in the target operation, is arranged in a memory of the accelerator according to a characteristic of the target operation; and

controlling, using a PIM operation execution instruction, one or more PIM processing elements (PEs) of the memory to perform the target operation using the arranged input data and the information regarding the operation type loaded in the PIM operation register,

wherein the controlling further comprises storing a status of the PIM operation in the PIM operation register.

2 . The method of claim 1 , wherein the controlling comprises controlling the PIM operation to be performed in a portion of a plurality of memory banks included in the memory based on a bit field of the PIM operation execution instruction.

3 . The method of claim 1 , wherein the controlling comprises controlling the one or more PIM PEs in at least a portion of the memory to perform the PIM operation and restricting access to the at least portion of the memory by an arbitrary instruction, also included in the instruction set, while the one or more PIM PEs are performing the PIM operation.

4 . The method of claim 1 , further comprising, in response to a determination that the input data is firstly arranged not according to the characteristics of the target operation, rearranging the input data according to the characteristic of the PIM operation using a load/store instruction to access the memory.

5 . The method of claim 1 , wherein the instruction set comprises the PIM operation execution instruction.

6 . The method of claim 1 , further comprising rearranging, according to a predetermined arrangement compatible with one or more other components of the accelerator, a result of the PIM operation using a load/store instruction to access the memory.

7 . A non-transitory computer-readable storage medium storing instructions that, when executed by one or more processors, cause the one or more processors to perform the method of claim 1 .

8 . The method of claim 1 ,

wherein the status of the PIM operation comprises status information that the PIM operation is being performed when the PIM operation is being performed, and status information that the PIM operation has terminated when the PIM operation has terminated, and

wherein the status information that the PIM operation has been terminated comprises status information regarding whether the PIM operation was successful.

9 . The method of claim 8 , further comprising identifying the status of the PIM operation stored in the PIM operation register, and determining, based on the identified status of the PIM operation, whether a result obtained through the PIM operation is to be excluded or whether a post-processing is necessary for the result obtained through the PIM operation.

10 . An electronic device comprising:

an accelerator including:

a memory including processing-in-memory (PIM) processing elements (PEs) respectively configured to perform a PIM operation;

a PIM operation register; and

one or more processors, separate from the memory, configured to:

in response to a result of a performed determination, between the PIM operation and a non-PIM operation, being that a target operation included in an instruction set is the PIM operation:

load information regarding a PIM operation type of the target operation to the PIM operation register based on a performed determination that input data, for use in the target operation, is arranged in the memory according to a characteristic of the target operation; and

control, using a PIM operation execution instruction, one or more of the PIM PEs to perform the target operation using the arranged input data and the information regarding the operation type loaded in the PIM operation register,

wherein the one or more processors are further configured to control a storing of a status of the PIM operation in the PIM operation register.

11 . The electronic device of claim 10 , wherein the PIM operation type is a multiplication operation type, and wherein the characteristic is information that indicates whether the one or more of the PIM PEs is to perform the target operation in parallel or serially.

12 . The electronic device of claim 10 , further comprising a host processor configured to control the electronic device and control the accelerator using the instruction set.

13 . The electronic device of claim 12 , wherein the one or more processors are configured to control the PIM operation to be performed in a portion of a plurality of memory banks included in the memory based on a bit field of the PIM operation execution instruction.

14 . The electronic device of claim 12 , wherein the one or more processors are configured to control the one or more PIM PEs in at least a portion of the memory to perform the PIM operation and restrict access to the at least portion of the memory by an arbitrary instruction, also included in the instruction set, while the one or more PIM PEs are performing the PIM operation.

15 . The electronic device of claim 12 , wherein the one or more processors are further configured to, in response to a determination that the input data is firstly arranged not according to the characteristics of the target operation, rearrange the input data according to the characteristic of the PIM operation using a load/store instruction to access the memory.

16 . The electronic device of claim 12 , wherein the instruction set comprises the PIM operation execution instruction.

17 . The electronic device of claim 12 , wherein the one or more processors are further configured to rearrange, according to a predetermined arrangement compatible with one or more other components of the accelerator, a result of the PIM operation using a load/store instruction to access the memory.

18 . The electronic device of claim 12 ,

wherein the status of the PIM operation comprises status information that the PIM operation is being performed when the PIM operation is being performed, and status information that the PIM operation has terminated when the PIM operation has terminated, and

wherein the status information that the PIM operation has been terminated comprises status information regarding whether the PIM operation was successful.

19 . The electronic device of claim 18 , wherein the one or more processors are further configured to identify the status of the PIM operation stored in the PIM operation register, and determine, based on the identified status of the PIM operation, whether a result obtained through the PIM operation is to be excluded or whether a post-processing is necessary for the result obtained through the PIM operation.

20 . An electronic device, comprising:

an accelerator comprising:

a memory including processing-in-memory (PIM) processing elements (PEs) respectively configured to perform a PIM operation;

a PIM operation register; and

one or more processors, separate from the memory, configured to:

in response to a result of a performed determination, between the PIM operation and a non-PIM operation, being that a target operation included in an instruction set is the PIM operation:

obtain information regarding a PIM operation type of the target operation based on a performed determination that input data, for use in the target operation, is arranged according to a characteristic of the target operation; and

control, using a PIM operation execution instruction, one or more of the PIM PEs to perform the target operation using the arranged input data and the obtained information regarding the operation type,

wherein the one or more processors are further configured to control a storing of a status of the PIM operation in the PIM operation register.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 21, 2024
From: KIM, BONGJUN; KIM, YOUNGSOK; LEE, SANGSU; LEE, JOUNGHOO; HA, YEONAN
To: SAMSUNG ELECTRONICS CO., LTD.; UIF (UNIVERSITY INDUSTRY FOUNDATION), YONSEI UNIVERSITY
Reel/Frame 067481/0045 →
Priority Claims (1)
KR 10-2023-0100649 · Aug 1, 2023 · national
Continuity (1)
Related Publication 20250045196A1 · Feb 6, 2025
References Cited (16)
US 11468001B1 · Hassaan et al. · 2022 [cited by applicant]
US 20180336025A1 · Choi et al. · 2018 [cited by applicant]
US 20190114265A1 · Chang · 2019 [cited by examiner]
US 20210056029A1 · Sharovar · 2021 [cited by examiner]
US 20210150311A1 · Zhou · 2021 [cited by examiner]
KR 101814577B1 · 2018 [cited by applicant]
KR 102289095B1 · 2021 [cited by applicant]
KR 1020220074684A · 2022 [cited by applicant]
WO WO2022047802A1 · 2022 [cited by applicant]
Jeon, Won, et al. “PIMCaffe: Functional evaluation of a machine learning framework for in-memory neural processing unit.” IEEE Access 9, Jul. 14, 2021. (pp. 96629-96640). (Year: 2021). [cited by examiner]
Ahn, Junwhan, et al. “PIM-enabled instructions: A low-overhead, locality-aware processing-in-memory architecture.” ACM SIGARCH Computer Architecture News 43.3S. Jun. 13-17, 2015 (pp. 336-348). [cited by applicant]
Fowers, Jeremy, et al. “A configurable cloud-scale DNN processor for real-time AI.” 2018 ACM/IEEE 45th Annual International Symposium on Computer Architecture (ISCA). IEEE, 2018 (pp. 1-14). [cited by applicant]
Jeon, Won, et al. “PIMCaffe: Functional evaluation of a machine learning framework for in-memory neural processing unit.” IEEE Access 9, Jul. 14, 2021. (pp. 96629-96640). [cited by applicant]
Kim, Chang Hyun, et al. “Silent-PIM: Realizing the processing-in-memory computing with standard memory requests.” IEEE Transactions on Parallel and Distributed Systems 33.2, Feb. 2022 (pp. 251-262). [cited by applicant]
Lee, Won Jun, et al. “PISA-DMA: Processing-in-Memory Instruction Set Architecture Using DMA.” IEEE Access 11, Jan. 27, 2023 (pp. 8622-8632). [cited by applicant]
Liu, Shaoli, et al. “Cambricon: An instruction set architecture for neural networks.” ACM SIGARCH Computer Architecture News 44.3, 2016 (pp. 393-405). [cited by applicant]