# US 11,443,183 B2 · Neural processing system

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,443,183 B2
- Document ID: US11443183B2
- Status: Granted
- Kind: B2
- Application number: 16/507,995
- Filed: 2019-07-10
- Published: 2020-03-12
- Granted: 2022-09-13
- Earliest claimed: 2018-09-07
- Assignees: Samsung Electronics Co., Ltd.
- Applicants: Samsung Electronics Co., Ltd.
- Inventors: Jin Ook Song; Jun Seok Park; Yun Kyo Cho
- Web page: https://patentgrep.com/patent/US11443183B2

## CPC

- G06N 3/063: using electronic means
- G06N 3/08: Learning methods
- G06N 3/045: Combinations of networks
- G06N 3/0464: Convolutional networks [CNN, ConvNet]
- G06F 1/06: Clock generators producing several clock signals {(G06F1/08 - G06F1/14 take precedence)}
- G06F 1/26: Power supply means, e.g. regulation thereof (for memories G11C)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A neural processing system includes a first frontend module, a second frontend module, a first backend module, and a second backend module. The first frontend module executes a feature extraction operation using a first feature map and a first weight, and outputs a first operation result and a second operation result. The second frontend module executes the feature extraction operation using a second feature map and a second weight, and outputs a third operation result and a fourth operation result. The first backend module receives an input of the first operation result provided from the first frontend module and the fourth operation result provided from the second frontend module via a second bridge to sum up the first operation result and the fourth operation result. The second backend module receives an input of the third operation result provided from the second frontend module and the second operation result provided from the first frontend module via a first bridge to sum up the third operation result and the second operation result.

## Claims

### Claim 1

A neural processing system, comprising:
a first frontend module which executes a feature extraction operation using a first feature map and a first weight, and outputs a first operation result and a second operation result;
a second frontend module which executes the feature extraction operation using a second feature map and a second weight, and outputs a third operation result and a fourth operation result;
a first backend module which receives an input of the first operation result provided from the first frontend module and the fourth operation result provided from the second frontend module via a second bridge to sum up the first operation result and the fourth operation result; and
a second backend module which receives an input of the third operation result provided from the second frontend module and the second operation result provided from the first frontend module via a first bridge to sum up the third operation result and the second operation result.

### Claim 2 (depends on 1)

The neural processing system of claim 1, wherein the first frontend module and the first backend module are driven according to a first clock signal, and
the second frontend module and the second backend module are driven according to a second clock signal having a frequency different from the first clock signal.

### Claim 3 (depends on 1)

The neural processing system of claim 1, wherein the first bridge and the second bridge are asynchronous bridges.

### Claim 4 (depends on 1)

The neural processing system of claim 1, wherein the first backend module provides first writeback data to the first frontend module, and
the second backend module provides second writeback data to the second frontend module.

### Claim 5 (depends on 1)

The neural processing system of claim 1, wherein the first frontend module comprises:
a plurality of first internal memories which store the first feature map and the first weight,
a plurality of first fetch units which fetch the first feature map and the first weight from each of the plurality of first internal memories,
a plurality of first dispatch units which transmit the fetched first feature map and first weight to a first MAC array (multiplication and accumulation array) for each channel, and
the first MAC array which executes a multiplication accumulation operation on data transmitted from the plurality of first dispatch units.

### Claim 6 (depends on 5)

The neural processing system of claim 5, wherein the first MAC array outputs the first operation result and the second operation result,
the first operation result is provided to the first backend module, and
the second operation result is provided to the second backend module through the first bridge.

### Claim 7 (depends on 1)

The neural processing system of claim 1, wherein the second frontend module comprises:
a plurality of second internal memories which store the second feature map and the second weight,
a plurality of first fetch units which fetch the second feature map and the second weight from each of the plurality of second internal memories,
a plurality of second dispatch units which transmit the fetched second feature map and second weight to a second MAC array (multiplication and accumulation array) for each channel, and
the second MAC array which executes a multiplication accumulation operation on data transmitted from the plurality of second dispatch units.

### Claim 8 (depends on 1)

The neural processing system of claim 1, further comprising:
a workload manager which allocates first data among the data for executing the feature extraction to the first frontend module, and allocates second data among the data to the second frontend module,
wherein the first frontend module executes the feature extraction operation on the first data, using the first feature map and the first weight, and
the second frontend module executes the feature extraction operation on the second data, using the second feature map and the second weight.

### Claim 9 (depends on 8)

The neural processing system of claim 8, wherein an amount of the first data and an amount of the second data are different from each other.

### Claim 10 (depends on 8)

The neural processing system of claim 8, further comprising:
a clock management unit which provides a first clock signal to the first frontend module and the first backend module, and provides a second clock signal to the second frontend module and the second backend module,
wherein the clock management unit controls a frequency of at least one of the first clock signal and the second clock signal to execute clock gating on at least one of the first frontend module, the first backend module, the second frontend module and the second backend module, in accordance with an allocation operation of the workload manager.

### Claim 11 (depends on 8)

The neural processing system of claim 8, further comprising:
a power management unit which provides a first power gating signal to the first frontend module and the first backend module, and provides a second power gating signal to the second frontend module and the second backend module,
wherein the power management unit controls at least one value of the first power gating signal and the second power gating signal to execute power gating on at least one of the first frontend module, the first backend module, the second frontend module and the second backend module, in accordance with an allocation operation of the workload manager.

### Claim 12

A neural processing system, comprising:
a first neural processing unit including a first frontend module and a first backend module; and
a bridge unit electrically connected to the first neural processing unit, and
a second neural processing unit operating in a clock domain different from the first neural processing unit,
wherein the first frontend module provides a part of a first operation result obtained by executing a feature extraction operation using a first feature map and a first weight, to the first backend module,
the bridge unit provides a part of a second operation result executed in the second neural processing unit, to the first backend module, and
the first backend module sums up the part of the first operation result and the part of the second operation result.

### Claim 13 (depends on 12)

The neural processing system of claim 12, wherein the bridge unit is electrically connected to a third neural processing unit operating in a clock domain different from the first neural processing unit,
the first frontend module provides the other part of the first operation result to the bridge unit, and
the bridge unit provides the other part of the first operation result to the third neural processing unit.

### Claim 14 (depends on 12)

The neural processing system of claim 12, wherein the first frontend module comprises:
a plurality of first internal memories which store the first feature map and the first weight,
a plurality of first fetch units which fetch the first feature map and the first weight from each of the plurality of first internal memories,
a plurality of first dispatch units which transmit the fetched first feature map and first weight to a first MAC array (multiplication and accumulation array) for each channel, and
the first MAC array which executes a multiplication accumulation operation on data transmitted from the plurality of first dispatch units and outputs the first operation result.

### Claim 15

A neural processing system, comprising:
a first neural processing unit including a first frontend module and a first backend module;
a second neural processing unit including a second frontend module and a second backend module; and
a workload manager which allocates first data among data for executing feature extraction to the first neural processing unit, and allocates second data among the data to the second neural processing unit,
wherein the first frontend module executes a feature extraction operation on the first data, using a first feature map and a first weight, and outputs a first operation result and a second operation result,
the second frontend module executes the feature extraction operation on the second data, using a second feature map and a second weight, and outputs a third operation result and a fourth operation result, and
the first backend module sums up the first operation result and the fourth operation result, and the second backend module sums up the third operation result and the second operation result.

### Claim 16 (depends on 15)

The neural processing system of claim 15, further comprising:
a clock management unit which provides a first clock signal to the first frontend module and the first backend module, and provides a second clock signal to the second frontend module and the second backend module,
wherein the clock management unit controls a frequency of at least one of the first clock signal and the second clock signal to execute clock gating on at least one of the first frontend module, the first backend module, the second frontend module and the second backend module, in accordance with an allocation operation of the workload manager.

### Claim 17 (depends on 15)

The neural processing system of claim 15, further comprising:
a power management unit which provides a first power gating signal to the first frontend module and the first backend module, and provides a second power gating signal to the second frontend module and the second backend module,
wherein the power management unit controls at least one value of the first power gating signal and the second power gating signal to execute power gating on at least one of the first frontend module, the first backend module, the second frontend module and the second backend module, in accordance with an allocation operation of the workload manager.

### Claim 18 (depends on 15)

The neural processing system of claim 15, wherein the first neural processing unit is driven according to a first clock signal, and
the second neural processing unit is driven according to a second clock signal having a frequency different from the first clock signal.

### Claim 19 (depends on 15)

The neural processing system of claim 15, wherein the first frontend module comprises:
a plurality of first internal memories which store the first feature map and the first weight,
a plurality of first fetch units which fetch the first feature map and the first weight from each of the plurality of first internal memories,
a plurality of first dispatch units which transmit the fetched first feature map and first weight to a first MAC array (multiplication and accumulation array) for each channel, and
the first MAC array which executes a multiplication accumulation operation on data transmitted from the plurality of first dispatch units.

### Claim 20 (depends on 15)

The neural processing system of claim 15, wherein the second frontend module comprises:
a plurality of second internal memories which store the second feature map and the second weight,
a plurality of first fetch units which fetch the second feature map and the second weight from each of the plurality of second internal memories,
a plurality of second dispatch units which transmit the fetched second feature map and second weight to a second MAC array (multiplication and accumulation array) for each channel, and
the second MAC array which executes a multiplication accumulation operation on data transmitted from the plurality of second dispatch units.
