IP Library Granted Patent US 12,210,963
Granted Patent B2
US 12,210,963 · App. 18/336,906 · Granted Jan 28, 2025

Neural processor with activation compression

Inventor: Minhoo Kang (Seongnam-si, KR)
Assignee: Rebellions Inc.
G06N3/063
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,210,963
App. No.
18/336,906
Granted
Jan 28, 2025
Kind
B2
Abstract

A neural processing device is provided. The neural processing device comprises: an activation buffer in which first and second input activations are stored, an activation compressor configured to generate a first compressed input activation by using the first and second input activations, and a tensor unit configured to perform two-dimensional calculations using the first compressed input activation, wherein the first compressed input activation comprises first input row data comprising at least a portion of the first input activation and at least a portion of the second input activation, and first metadata corresponding to the first input row data.

Claims (50)

1. A neural processor comprising an activation buffer in that first and second input activations are temporarily stored,

wherein the neural processor is configured to:

generate a first compressed input activation by using the first and second input activations; and

perform data calculation using the first compressed input activation,

wherein the first compressed input activation comprises a first input row data and a first metadata associated with the first input row data,

the first input row data comprises first and second data elements,

the first metadata comprises first and second source elements,

the first source element is associated with the first data element and the first input activation,

the second source element is associated with the second data element and the second input activation, and

wherein the first source element comprises information indicating that the first data element has originated from the first input activation, and the second source element comprises information indicating the second data element has originated from the second input activation.

2. The neural processor of claim 1 , wherein the first metadata further comprises a first operation index comprising information for a weight that is calculated with the first input row data.

3. The neural processor of claim 2 , wherein the first operation index comprises first and second operation elements, and

wherein the first operation element is associated with the first data element, and the second operation element is associated with the second data element.

4. The neural processor of claim 2 , wherein the first operation element comprises information for a first weight element that is calculated with the first data element, and the second operation element comprises information for a second weight element that is calculated with the second data element.

5. The neural processor of claim 1 , wherein the first input activation comprises a first input element that is an effective element and a second input element that is an ineffective element, and the second input activation comprises a third input element that is an effective element,

wherein generating the first input row data comprises pushing the third input element to the second input element.

6. The neural processor of claim 5 , wherein the first data element corresponds to the first input element, and the second data element corresponds to the third input element.

7. The neural processor of claim 5 , wherein a location of the second data element does not correspond to a location of the third input element.

8. The neural processor of claim 5 , wherein generating the first input row data comprises sequentially pushing the third input element to the second input element.

9. The neural processor of claim 1 , wherein the first and second source elements have different value each other.

10. The neural processor of claim 1 , wherein a location of the first source element corresponds to a location of the first data element, and a location of the second source element corresponds to a location of the second data element.

11. The neural processor of claim 1 , wherein the neural processor is further configured to:

generate a first preliminary input row data by using the first and second input activations,

generate a second input row data and a second preliminary input row data by using third and fourth input activations, and

generate a third input row data by using the first and second preliminary input row data.

12. The neural processor of claim 11 , wherein the first and second preliminary input row data is temporarily stored until the third input row data is generated.

13. The neural processor of claim 1 , wherein the neural processor is further configured to generate a first compressed weight matrix by using first and second weight matrices, and

wherein the first compressed weight matrix comprises at least a portion of the first weight matrix and at least a portion of the second weight matrix.

14. A neural processor comprising an activation buffer in that first and second input activations are stored,

wherein the neural processor is configured to:

generate a first compressed input activation by using the first and second input activations; and

perform 2-dimensional calculation using the first compressed input activation,

wherein the first compressed input activation comprises a first input row data and a first metadata, and

wherein the first input row data comprises at least a portion of the first input activation and at least a portion of the second input activation, the first metadata comprises a first source index, and the first source index comprises a first index indicating that a first data element has originated from the first input activation and a second index indicating that a second data element has originated from the second input activation.

15. The neural processor of claim 14 , wherein the first source index comprises information that elements included in the first input row data hashave originated from one of the first and second input activations.

16. The neural processor of claim 15 , wherein the first input row data comprises first and second data elements, and the first source index comprises first and second source elements,

wherein the first data element corresponds to the first source element and the second data element corresponds to the second source element, and

wherein the first source element has a value of the first index and the second source element has a value of the second index.

17. The neural processor of claim 14 , wherein the processor is further configured to:

generate a first preliminary input activation by using remaining data after generating the first compressed input activation,

store third and fourth input activation,

generate a second compressed input activation and a second preliminary input activation by using the third and fourth input activation, and

generate a third compressed input activation by using the first and second preliminary input activations.

18. The neural processor of claim 14 , wherein the first input activation comprises a first input element that is an effective element and a second input element that is an ineffective element, and the second input activation comprises a third input element that is an effective element,

wherein generating the first input row data comprises pushing the third input element to the second input element.

19. A data processing method performed in a neural core included in a neural processor is comprising:

temporarily storing first and second input activations;

generating a first compressed input activation by using the first and second input activations; and

performing data calculation using the first compressed input activation,

wherein the first compressed input activation comprises a first input row data comprising first and second data elements and a first metadata comprising information that the first data element has originated from the first input activation and the second data element has originated from the second input activation.

Assignments (1)
MERGER AND CHANGE OF NAME Recorded May 22, 2025
From: REBELLIONS INC.; SAPEON KOREA INC.
To: REBELLIONS INC.
Reel/Frame 071357/0522 →
Priority Claims (1)
KR 10-2022-0030139 · Mar 10, 2022 · national
Continuity (2)
Continuation 17821903 · Aug 24, 2022
Related Publication 20230334304A1 · Oct 19, 2023
References Cited (6)
US 20180046906A1 · Dally et al. · 2018 [cited by applicant]
US 20210004668A1 · Moshovos · 2021 [cited by examiner]
Jang, Jun-Woo, et al. “Sparsity-aware and re-configurable NPU architecture for Samsung flagship mobile SoC.” 2021 ACM/IEEE 48th Annual International Symposium on Computer Architecture (ISCA). IEEE, 2021. (Year: 2021). [cited by examiner]
Zhou, Xuda, et al. “Cambricon-S: Addressing irregularity in sparse neural networks through a cooperative software/hardware approach.” 2018 51st Annual IEEE/ACM International Symposium on Microarchitecture (MICRO). IEEE,… [cited by examiner]
Office Action for KR 10-2022-0030139 by Korean Intellectual Property Office dated May 9, 2024. [cited by applicant]
Jang, Jun-Woo et al. “Sparsity-Aware and Re-configurable NPU Architecture for Samsung Flagship Mobile SoC,” 2021 ACM/IEEE 48th Annual International Symposium on Computer Architecture (ISCA). [cited by applicant]