NEURAL NETWORK PROCESSOR

A circuit for performing computations for a neural network comprising multiple neural network (NN) layers. The circuit includes a processing device that provides programming data for performing the computations and a core in data communication with the processing device to receive the programming da...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: ROSENBAND, DANIEL, RAVIKUMAR, SABAREESHKUMAR, DONNELLY, PAUL, LEE, KYONG HO
Format: Patent
Sprache:eng ; fre
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:A circuit for performing computations for a neural network comprising multiple neural network (NN) layers. The circuit includes a processing device that provides programming data for performing the computations and a core in data communication with the processing device to receive the programming data. The core includes activation memory that stores inputs for a layer and parameter memory that stores parameters for a first NN layer. The core also includes a rotation unit that rotates accessing the inputs from the activation memory based on the programming data and a computation unit that receives a respective input and a parameter for the first NN layer and generates an output of the first NN layer using the input and the parameter. The core also includes a crossbar unit that causes the output to be stored, in the activation memory, in accordance with a bank assignment pattern. L'invention concerne un circuit permettant d'effectuer des calculs pour un réseau neuronal comprenant de multiples couches de réseau neuronal (NN). Le circuit comprend un dispositif de traitement qui fournit des données de programmation pour effectuer les calculs et un cur en communication de données avec le dispositif de traitement pour recevoir les données de programmation. Le cur comprend une mémoire d'activation qui stocke des entrées pour une couche et une mémoire de paramètres qui stocke des paramètres pour une première couche NN. Le cur comprend également une unité de rotation qui tourne en accédant aux entrées à partir de la mémoire d'activation sur la base des données de programmation et une unité de calcul qui reçoit une entrée respective et un paramètre pour la première couche NN et génère une sortie de la première couche NN à l'aide de l'entrée et du paramètre. Le cur comprend également une unité à barres croisées qui amène la sortie à être stockée, dans la mémoire d'activation, conformément à un motif d'attribution de banque.