-
公开(公告)号:US20190340502A1
公开(公告)日:2019-11-07
申请号:US15971635
申请日:2018-05-04
Applicant: Apple Inc.
Inventor: Sung Hee Park , Seungjin Lee , Christopher L. Mills
Abstract: Embodiments relate to a neural processor circuit including neural engines, a buffer, and a kernel access circuit. The neural engines perform convolution operations on input data and kernel data to generate output data. The buffer is between the neural engines and a memory external to the neural processor circuit. The buffer stores input data for sending to the neural engines and output data received from the neural engines. The kernel access circuit receives one or more kernels from the memory external to the neural processor circuit. The neural processor circuit operates in one of multiple modes, at least one of which divides a convolution operation into multiple independent convolution operations for execution by the neural engines.
-
公开(公告)号:US20240329933A1
公开(公告)日:2024-10-03
申请号:US18127650
申请日:2023-03-28
Applicant: Apple Inc.
Inventor: Lei Wang , Jaewon Shin , Seungjin Lee , Ji Liang Song , Michael L. Liu , Christopher L. Mills
CPC classification number: G06F7/5443 , G06N3/063
Abstract: Embodiments of the present disclosure relate to a multiply-accumulator circuit that includes a main multiplier circuit operable in a floating-point mode or an integer mode and a supplemental multiplier circuit that operates in the integer mode. The main multiplier circuit generates a multiplied output that undergoes subsequent operations including a shifting operation in the floating-point mode whereas the supplemental multiplier generates another multiplied output that does not undergo any shifting operations. Hence, in the integer mode, two parallel multiply-add operations may be performed by the two multiplier circuits, and therefore accelerate the multiply-adder operations. Due to the lack of additional shifters associated with the supplemental multiplier circuit, the multiply-accumulator circuit does not have a significantly increased footprint.
-
公开(公告)号:US20220244984A1
公开(公告)日:2022-08-04
申请号:US17726212
申请日:2022-04-21
Applicant: Apple Inc.
Inventor: Seungjin Lee , Sung Hee Park , Elaina Chai
Abstract: Embodiments relate to a compiler. The compiler decreases data fetch and read associated with storing data in a data buffer of a neural processor circuit to or from a system memory. The data buffer can store an input slice of data for processing by a neural engine(s) of the neural processor circuit, an output slice of data output from the neural engine(s), and/or an intermediate data slice of data.
-
公开(公告)号:US20240265233A1
公开(公告)日:2024-08-08
申请号:US18614256
申请日:2024-03-22
Applicant: Apple Inc.
Inventor: Erik Norden , Liran Fishel , Sung Hee Park , Jaewon Shin , Christopher L. Mills , Seungjin Lee , Fernando A. Mujica
IPC: G06N3/04 , G06F1/3296 , G06N3/08
CPC classification number: G06N3/04 , G06F1/3296 , G06N3/08
Abstract: Embodiments relate to a neural processor circuit with scalable architecture for instantiating one or more neural networks. The neural processor circuit includes a data buffer coupled to a memory external to the neural processor circuit, and a plurality of neural engine circuits. To execute tasks that instantiate the neural networks, each neural engine circuit generates output data using input data and kernel coefficients. A neural processor circuit may include multiple neural engine circuits that are selectively activated or deactivated according to configuration data of the tasks. Furthermore, an electronic device may include multiple neural processor circuits that are selectively activated or deactivated to execute the tasks.
-
公开(公告)号:US20230099652A1
公开(公告)日:2023-03-30
申请号:US17991373
申请日:2022-11-21
Applicant: Apple Inc.
Inventor: Erik Norden , Liran Fishel , Sung Hee Park , Jaewon Shin , Christopher L. Mills , Seungjin Lee , Fernando A. Mujica
IPC: G06N3/04 , G06F1/3296 , G06N3/08
Abstract: Embodiments relate to a neural processor circuit with scalable architecture for instantiating one or more neural networks. The neural processor circuit includes a data buffer coupled to a memory external to the neural processor circuit, and a plurality of neural engine circuits. To execute tasks that instantiate the neural networks, each neural engine circuit generates output data using input data and kernel coefficients. A neural processor circuit may include multiple neural engine circuits that are selectively activated or deactivated according to configuration data of the tasks. Furthermore, an electronic device may include multiple neural processor circuits that are selectively activated or deactivated to execute the tasks.
-
公开(公告)号:US20190340491A1
公开(公告)日:2019-11-07
申请号:US15971882
申请日:2018-05-04
Applicant: Apple Inc.
Inventor: Erik K. Norden , Liran Fishel , Sung Hee Park , Jaewon Shin , Christopher L. Mills , Seungjin Lee , Fernando A. Mujica
Abstract: Embodiments relate to a neural processor circuit with scalable architecture for instantiating one or more neural networks. The neural processor circuit includes a data buffer coupled to a memory external to the neural processor circuit, and a plurality of neural engine circuits. To execute tasks that instantiate the neural networks, each neural engine circuit generates output data using input data and kernel coefficients. A neural processor circuit may include multiple neural engine circuits that are selectively activated or deactivated according to configuration data of the tasks. Furthermore, an electronic device may include multiple neural processor circuits that are selectively activated or deactivated to execute the tasks.
-
公开(公告)号:US20190340010A1
公开(公告)日:2019-11-07
申请号:US15971208
申请日:2018-05-04
Applicant: Apple Inc.
Inventor: Seungjin Lee , Sung Hee Park , Elaina Chai
Abstract: Embodiments relate to a compiler. The compiler decreases data fetch and read associated with storing data in a data buffer of a neural processor circuit to or from a system memory. The data buffer can store an input slice of data for processing by a neural engine(s) of the neural processor circuit, an output slice of data output from the neural engine(s), and/or an intermediate data slice of data.
-
公开(公告)号:US20230289291A1
公开(公告)日:2023-09-14
申请号:US17691609
申请日:2022-03-10
Applicant: Apple Inc.
Inventor: Seungjin Lee , Jaewon Shin , Christopher L Mills
IPC: G06F12/0862
CPC classification number: G06F12/0862 , G06F2212/602
Abstract: A neural processor may include a system memory access circuit coupled to a system memory. The system memory access circuit is configured to fetch, from the system memory, first input data of a first task associated with a neural network. The neural processor may also include neural engines coupled to the system memory access circuit. The neural engines are configured to perform convolution operations on the first input data in a first set of operating cycles. The neural processor may further include a cache access circuit coupled to a cache. The cache access circuit is configured to instruct the cache to prefetch from the system memory, during the first set of operating cycles corresponding to the first task, second input data of a second task of the neural network. The second task is scheduled for processing in a second set of operating cycles after the first set of operating cycles.
-
公开(公告)号:US11340936B2
公开(公告)日:2022-05-24
申请号:US15971208
申请日:2018-05-04
Applicant: Apple Inc.
Inventor: Seungjin Lee , Sung Hee Park , Elaina Chai
Abstract: Embodiments relate to a compiler. The compiler decreases data fetch and read associated with storing data in a data buffer of a neural processor circuit to or from a system memory. The data buffer can store an input slice of data for processing by a neural engine(s) of the neural processor circuit, an output slice of data output from the neural engine(s), and/or an intermediate data slice of data.
-
公开(公告)号:US11200490B2
公开(公告)日:2021-12-14
申请号:US15971635
申请日:2018-05-04
Applicant: Apple Inc.
Inventor: Sung Hee Park , Seungjin Lee , Christopher L. Mills
Abstract: Embodiments relate to a neural processor circuit including neural engines, a buffer, and a kernel access circuit. The neural engines perform convolution operations on input data and kernel data to generate output data. The buffer is between the neural engines and a memory external to the neural processor circuit. The buffer stores input data for sending to the neural engines and output data received from the neural engines. The kernel access circuit receives one or more kernels from the memory external to the neural processor circuit. The neural processor circuit operates in one of multiple modes, at least one of which divides a convolution operation into multiple independent convolution operations for execution by the neural engines.
-
-
-
-
-
-
-
-
-