Cornami, Inc.

États‑Unis d’Amérique

Retour au propriétaire

1-64 de 64 pour Cornami, Inc. Trier par
Recheche Texte
Affiner par
Type PI
        Brevet 60
        Marque 4
Juridiction
        États-Unis 54
        International 10
Date
Nouveautés (dernières 4 semaines) 3
2026 août (MACJ) 2
2026 juillet 1
2026 mai 2
2026 (AACJ) 8
Voir plus
Classe IPC
G06F 15/80 - Architectures de calculateurs universels à programmes enregistrés comprenant un ensemble d'unités de traitement à commande commune, p. ex. plusieurs processeurs de données à instruction unique 19
G06F 9/38 - Exécution simultanée d'instructions, p. ex. pipeline ou lecture en mémoire 19
G06F 9/30 - Dispositions pour exécuter des instructions machines, p. ex. décodage d'instructions 13
G06F 9/48 - Lancement de programmes Commutation de programmes, p. ex. par interruption 11
G06F 8/41 - Compilation 9
Voir plus
Classe NICE
09 - Appareils et instruments scientifiques et électriques 3
42 - Services scientifiques, technologiques et industriels, recherche et conception 2
Statut
En Instance 18
Enregistré / En vigueur 46

1.

METHOD AND SYSTEM FOR FAULT TOLERANT REROUTING FOR MASSIVELY PARALLEL PROCESSING ARRAY

      
Numéro d'application US2026013966
Numéro de publication 2026/169792
Statut Délivré - en vigueur
Date de dépôt 2026-02-04
Date de publication 2026-08-13
Propriétaire CORNAMI, INC. (USA)
Inventeur(s) Franz Ii, Martin Alan

Abrégé

A system and method to replace a defective tile of an array of tiles on a die is disclosed. Each tile in includes a plurality of processing cores. Each of the tiles are in communication with each other through a network. A defective tile is detected and a spare tile external to the tiles is selected. Packets sent on the network to the defective tile are directed to the spare tile. The function of the defective tile is assigned to the spare tile.

Classes IPC  ?

  • G06F 15/173 - Communication entre processeurs utilisant un réseau d'interconnexion, p. ex. matriciel, de réarrangement, pyramidal, en étoile ou ramifié
  • G06F 13/14 - Gestion de demandes d'interconnexion ou de transfert
  • G06F 13/38 - Transfert d'informations, p. ex. sur un bus
  • G06F 15/163 - Communication entre processeurs
  • G06F 9/30 - Dispositions pour exécuter des instructions machines, p. ex. décodage d'instructions
  • G06F 15/00 - Calculateurs numériques en généralÉquipement de traitement de données en général

2.

METHOD AND SYSTEM FOR FAULT TOLERANT REROUTING FOR MASSIVELY PARALLEL PROCESSING ARRAY

      
Numéro d'application 19046222
Statut En instance
Date de dépôt 2025-02-05
Date de la première publication 2026-08-06
Propriétaire Cornami, Inc. (USA)
Inventeur(s) Franz, Ii, Martin Alan

Abrégé

A system and method to replace a defective tile of an array of tiles on a die is disclosed. Each tile in includes a plurality of processing cores. Each of the tiles are in communication with each other through a network. A defective tile is detected and a spare tile external to the tiles is selected. Packets sent on the network to the defective tile are directed to the spare tile. The function of the defective tile is assigned to the spare tile.

Classes IPC  ?

  • G06F 11/20 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel en utilisant un masquage actif du défaut, p. ex. en déconnectant les éléments défaillants ou en insérant des éléments de rechange

3.

METHOD AND SYSTEM FOR PROVIDING EFFICIENT QUANTUM PROOF ENCRYPTION USING BOOLEAN GATES WITH REDUCED BOOTSTRAPPING

      
Numéro d'application 19035431
Statut En instance
Date de dépôt 2025-01-23
Date de la première publication 2026-07-23
Propriétaire Cornami, Inc. (USA)
Inventeur(s) Ovchinnikov, Denis

Abrégé

A system and method to reduce the number of bootstraps required for performing Boolean operations on ciphertexts using Fully Homomorphic Encryption over the Torus (tFHE). A modulo is determined for a plurality of encrypted ciphertexts. False is assigned to a first value and true is assigned to a second value. A Boolean expression including the plurality of ciphertexts is converted into a mathematical function and each of the possible outputs of the function is mapped to the first value or the second value. A first outcome value is assigned to the result of the mathematical function when the Boolean expression evaluates to true. A second outcome value is assigned to each of a set of results of the mathematical function when the Boolean expression evaluates to false. The number of bootstraps required is reduced based on only having to bootstrap the first and second outcome values.

Classes IPC  ?

  • H04L 9/00 - Dispositions pour les communications secrètes ou protégéesProtocoles réseaux de sécurité

4.

METHOD AND SYSTEM FOR REDUCTION OF CIPHERTEXT MATRIX COMPUTATION AND BOOTSTRAPPING IN SECURE LLM

      
Numéro d'application 19400724
Statut En instance
Date de dépôt 2025-11-25
Date de la première publication 2026-05-28
Propriétaire Cornami, Inc. (USA)
Inventeur(s) Luo, Fa-Long

Abrégé

The disclosure is directed toward a method and system to efficiently determine an attention function by reducing bootstrapping steps and ciphertext matrix operations. A combined key and query matrix in plaintext is pre-calculated. A ciphertext-plaintext matrix multiplication of the combined key and query matrix with a ciphertext input is performed. The output of the resulting ciphertext-plaintext matrix multiplication of the combined key and query matrix is bootstrapped. A ciphertext-plaintext matrix multiplication of the value matrix with the ciphertext input is performed. The resulting ciphertext-plaintext matrix multiplication of the value matrix is bootstrapped.

Classes IPC  ?

  • H04L 9/06 - Dispositions pour les communications secrètes ou protégéesProtocoles réseaux de sécurité l'appareil de chiffrement utilisant des registres à décalage ou des mémoires pour le codage par blocs, p. ex. système DES
  • H04L 9/00 - Dispositions pour les communications secrètes ou protégéesProtocoles réseaux de sécurité

5.

SYSTEM AND METHOD FOR ESTABLISHING HIGH SPEED CONNECTIONS FOR DEVICES IN A HOST BASED ARCHITECTURE

      
Numéro d'application 18962115
Statut En instance
Date de dépôt 2024-11-27
Date de la première publication 2026-05-28
Propriétaire Cornami, Inc. (USA)
Inventeur(s)
  • Evans, Keith
  • Saglam, M. Akif
  • Franz, Ii, Martin Alan

Abrégé

A system and method to configure a high-speed interconnection network between devices coupled to a host is disclosed. A bus having a plurality of lanes is coupled to the host. Each of the devices are coupled to one or more of the lanes of the bus allowing communication to the host. Each of the devices is coupled to two neighboring devices via cables coupled to high-speed input output ports to form a ring interconnection between the devices. The devices are identified by designating a first device and sending packets to the other devices to identify the other devices to allow high speed data traffic to be sent between the devices on the ring interconnection.

Classes IPC  ?

  • H04L 12/40 - Réseaux à ligne bus
  • H04L 45/021 - Mises à jour des tables d’acheminement avec garantie de cohérence, p. ex. en utilisant des nombres d’époque

6.

METHOD AND SYSTEM FOR MATRIX REDUCTION IN LARGE LANGUAGE MODELS

      
Numéro d'application 19368779
Statut En instance
Date de dépôt 2025-10-24
Date de la première publication 2026-04-30
Propriétaire Cornami, Inc. (USA)
Inventeur(s)
  • Luo, Fa-Long
  • Master, Paul L.

Abrégé

The disclosure is directed toward a method to efficiently perform a large language model operation by reducing the memory and computation resources for operating on a matrix such as a weight matrix. The weight matrix may be included in operations such as the head attention function of the large language model. The weight matrix is decomposed into multiple submatrices that each include a set of weights from the weight matrix. An input of the large language model is provided. A submatrix solution for the submatrix is determined from the input and the set of weights of the submatrix. The determining of a solution is repeated for each of the submatrices to provide multiple submatrix solutions. The resulting submatrix solutions are combined to obtain a matrix solution for the weight matrix.

Classes IPC  ?

7.

Method and Apparatus for Configuring a Reduced Instruction Set Computer Processor Architecture to Execute a Fully Homomorphic Encryption Algorithm

      
Numéro d'application 19361998
Statut En instance
Date de dépôt 2025-10-17
Date de la première publication 2026-02-12
Propriétaire Cornami, Inc. (USA)
Inventeur(s)
  • Creeger, Morris Jacob
  • Liu, Tianfang
  • Furtek, Frederick
  • Master, Paul L.

Abrégé

Systems and methods for configuring a reduced instruction set computer processor architecture to execute fully homomorphic encryption (FHE) logic gates as a streaming topology. The method includes parsing sequential FHE logic gate code, transforming the FHE logic gate code into a set of code modules that each have in input and an output that is a function of the input and which do not pass control to other functions, creating a node wrapper around each code module, configuring at least one of the primary processing cores to implement the logic element equivalents of each element in a manner which operates in a streaming mode wherein data streams out of corresponding arithmetic logic units into the main memory and other ones of the plurality arithmetic logic units.

Classes IPC  ?

  • G06F 9/38 - Exécution simultanée d'instructions, p. ex. pipeline ou lecture en mémoire
  • G06F 7/48 - Méthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs n'établissant pas de contact, p. ex. tube, dispositif à l'état solideMéthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs non spécifiés
  • G06F 8/41 - Compilation
  • G06F 17/14 - Transformations de Fourier, de Walsh ou transformations d'espace analogues

8.

Reconfigurable Processor Circuit Architecture

      
Numéro d'application 19327638
Statut En instance
Date de dépôt 2025-09-12
Date de la première publication 2026-01-15
Propriétaire Cornami, Inc. (USA)
Inventeur(s)
  • Master, Paul L.
  • Knapp, Steven K.
  • Andraka, Raymond J.
  • Beliaev, Alexei
  • Franz, Martin A.
  • Meessen, Rene
  • Furtek, Frederick Curtis

Abrégé

A representative reconfigurable processing circuit and a reconfigurable arithmetic circuit are disclosed, each of which may include input reordering queues; a multiplier shifter and combiner network coupled to the input reordering queues; an accumulator circuit; and a control logic circuit, along with a processor and various interconnection networks. A representative reconfigurable arithmetic circuit has a plurality of operating modes, such as floating point and integer arithmetic modes, logical manipulation modes, Boolean logic, shift, rotate, conditional operations, and format conversion, and is configurable for a wide variety of multiplication modes. Dedicated routing connecting multiplier adder trees allows multiple reconfigurable arithmetic circuits to be reconfigurably combined, in pair or quad configurations, for larger adders, complex multiplies and general sum of products use, for example.

Classes IPC  ?

  • G06F 15/80 - Architectures de calculateurs universels à programmes enregistrés comprenant un ensemble d'unités de traitement à commande commune, p. ex. plusieurs processeurs de données à instruction unique
  • G06F 5/01 - Procédés ou dispositions pour la conversion de données, sans modification de l'ordre ou du contenu des données maniées pour le décalage, p. ex. la justification, le changement d'échelle, la normalisation
  • G06F 7/487 - MultiplicationDivision
  • G06F 7/50 - AdditionSoustraction
  • G06F 7/52 - MultiplicationDivision
  • G06F 7/523 - Multiplication uniquement
  • G06F 7/544 - Méthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs n'établissant pas de contact, p. ex. tube, dispositif à l'état solideMéthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs non spécifiés pour l'évaluation de fonctions par calcul
  • G06F 9/30 - Dispositions pour exécuter des instructions machines, p. ex. décodage d'instructions
  • G06F 9/38 - Exécution simultanée d'instructions, p. ex. pipeline ou lecture en mémoire
  • G06F 9/48 - Lancement de programmes Commutation de programmes, p. ex. par interruption
  • G06F 9/54 - Communication interprogramme
  • H03K 19/21 - Circuits OU EXCLUSIF, c.-à-d. donnant un signal de sortie si un signal n'existe qu'à une seule entréeCircuits à COÏNCIDENCES, c.-à-d. ne donnant un signal de sortie que si tous les signaux d'entrée sont identiques

9.

METHOD AND SYSTEM FOR REDUCING FFT CALCULATIONS IN FHE BOOTSTRAPPING

      
Numéro d'application 18531448
Statut En instance
Date de dépôt 2023-12-06
Date de la première publication 2025-06-12
Propriétaire Cornami, Inc. (USA)
Inventeur(s)
  • Luo, Fa-Long
  • Master, Paul

Abrégé

A system and method to reduce fast Fourier transforms (FFT) required for bootstrapping in a Fully Homomorphic Encryption process. Ciphertext is separated into a vector of n samples. A fast Fourier transfer (FFT) is performed over a first vector of the samples. An FFT is performed for each of n polynomial terms multiplied by a bootstrap key. A point wise multiplication of each of the FFT outputs of the FFTs of the polynomial terms and the output of the FFT over the vector of the n samples is performed. The result of the FFT over the vector of the n samples is added to the results of the set of pointwise multiplications. An inverse FFT (IFFT) is performed on the FFT over the vector of n samples and the accumulated results of the point-wise multiplications to obtain a bootstrapping result of the ciphertext.

Classes IPC  ?

  • H04L 9/06 - Dispositions pour les communications secrètes ou protégéesProtocoles réseaux de sécurité l'appareil de chiffrement utilisant des registres à décalage ou des mémoires pour le codage par blocs, p. ex. système DES
  • G06F 17/14 - Transformations de Fourier, de Walsh ou transformations d'espace analogues
  • H04L 9/00 - Dispositions pour les communications secrètes ou protégéesProtocoles réseaux de sécurité

10.

METHOD AND SYSTEM FOR REDUCING FFT CALCULATIONS IN FHE BOOTSTRAPPING

      
Numéro d'application US2024058757
Numéro de publication 2025/122799
Statut Délivré - en vigueur
Date de dépôt 2024-12-05
Date de publication 2025-06-12
Propriétaire CORNAMI, INC. (USA)
Inventeur(s)
  • Luo, Fa-Long
  • Master, Paul L.

Abrégé

A system and method to reduce fast Fourier transforms (FFT) required for bootstrapping in a Fully Homomorphic Encryption process. Ciphertext is separated into a vector of n samples. A fast Fourier transfer (FFT) is performed over a first vector of the samples. An FFT is performed for each of n polynomial terms multiplied by a bootstrap key. A point wise multiplication of each of the FFT outputs of the FFTs of the polynomial terms and the output of the FFT over the vector of the n samples is performed. The result of the FFT over the vector of the n samples is added to the results of the set of pointwise multiplications. An inverse FFT (IFFT) is performed on the FFT over the vector of n samples and the accumulated results of the point-wise multiplications to obtain a bootstrapping result of the ciphertext.

Classes IPC  ?

  • H04L 9/00 - Dispositions pour les communications secrètes ou protégéesProtocoles réseaux de sécurité
  • G06F 9/38 - Exécution simultanée d'instructions, p. ex. pipeline ou lecture en mémoire
  • G06F 17/14 - Transformations de Fourier, de Walsh ou transformations d'espace analogues

11.

FRACTAL CORE ARCHITECTURE SYSTEM FOR IMPLEMENTING EFFICIENT PRIVATE LARGE LANGUAGE MODELS

      
Numéro d'application US2024055260
Numéro de publication 2025/101998
Statut Délivré - en vigueur
Date de dépôt 2024-11-08
Date de publication 2025-05-15
Propriétaire CORNAMI, INC. (USA)
Inventeur(s)
  • Master, Paul L.
  • Luo, Fa-Long
  • Raeini, Mohammad

Abrégé

A system to output a response to a query via processing a large language model is disclosed. The system includes an array of processing cores arranged in a grid allowing each processing core to communicate directly to a neighboring processing core. An interconnection network is coupled to each of the processing cores allowing communication between the processing cores. A first processing core of the array of processing cores is configured to receive an encrypted query. A second processing core of the array of processing cores is configured to input the encrypted query to a large language model; execute the large language model having general weights in plaintext; and provide an encrypted output of the large language model.

Classes IPC  ?

  • G06N 3/04 - Architecture, p. ex. topologie d'interconnexion
  • G06N 3/06 - Réalisation physique, c.-à-d. mise en œuvre matérielle de réseaux neuronaux, de neurones ou de parties de neurone
  • G06F 9/30 - Dispositions pour exécuter des instructions machines, p. ex. décodage d'instructions
  • G06F 21/60 - Protection de données
  • G06F 9/54 - Communication interprogramme
  • G06N 3/02 - Réseaux neuronaux
  • G06N 3/08 - Méthodes d'apprentissage
  • G06N 20/00 - Apprentissage automatique
  • G06F 9/48 - Lancement de programmes Commutation de programmes, p. ex. par interruption
  • G06F 21/57 - Certification ou préservation de plates-formes informatiques fiables, p. ex. démarrages ou arrêts sécurisés, suivis de version, contrôles de logiciel système, mises à jour sécurisées ou évaluation de vulnérabilité
  • G06N 3/10 - Interfaces, langages de programmation ou boîtes à outils de développement logiciel, p. ex. pour la simulation de réseaux neuronaux

12.

METHOD, APPARATUS, AND COMPUTER-READABLE MEDIUM FOR PARALLELIZATION OF A COMPUTER PROGRAM ON A PLURALITY OF COMPUTING CORES

      
Numéro d'application 18979579
Statut En instance
Date de dépôt 2024-12-12
Date de la première publication 2025-05-08
Propriétaire CORNAMI, INC. (USA)
Inventeur(s)
  • Harsha, Solomon
  • Master, Paul

Abrégé

An apparatus, computer-readable medium, and computer-implemented method for parallelization of a computer program on a plurality of computing cores includes receiving a computer program comprising a plurality of commands, decomposing the plurality of commands into a plurality of node networks, each node network corresponding to a command in the plurality of commands and including one or more nodes corresponding to execution dependencies of the command, mapping the plurality of node networks to a plurality of systolic arrays, each systolic array comprising a plurality of cells and each non-data node in each node network being mapped to a cell in the plurality of cells, and mapping each cell in each systolic array to a computing core in the plurality of computing cores.

Classes IPC  ?

  • G06F 15/80 - Architectures de calculateurs universels à programmes enregistrés comprenant un ensemble d'unités de traitement à commande commune, p. ex. plusieurs processeurs de données à instruction unique
  • G06F 8/41 - Compilation
  • G06Q 40/00 - FinanceAssuranceStratégies fiscalesTraitement des impôts sur les sociétés ou sur le revenu

13.

METHOD AND SYSTEM FOR EFFICIENT ENCRYPTION OF FINE TUNED LARGE LANGUAGE MODELS

      
Numéro d'application US2024052060
Numéro de publication 2025/085808
Statut Délivré - en vigueur
Date de dépôt 2024-10-18
Date de publication 2025-04-24
Propriétaire CORNAMI, INC. (USA)
Inventeur(s)
  • Master, Paul
  • Luo, Fa-Long
  • Chadha, Vineet
  • Raeini, Mohammad

Abrégé

A method and system to provide secure fine-tune training and inferences for large language models using a Fully Homomorphic Encryption (FHE) process is disclosed. A trained public large language model with a matrix of public weights is stored in plaintext. A private training set of proprietary data is stored as a set of encrypted weights. An encrypted query is received. The encrypted query is processed via an encrypted data path with the set of encrypted weights for trained large language model. The encrypted query is processed via a plaintext data path with the set of public weights in plaintext for the trained large language model. A low rank adaptation (LoRA) approach may be used in fine-tuning the model to reduce computational complexity and memory access. Encrypted results are obtained from the processing via the encrypted data path and the plaintext weight path.

Classes IPC  ?

  • G06N 3/08 - Méthodes d'apprentissage
  • G06N 3/045 - Combinaisons de réseaux
  • G06N 20/00 - Apprentissage automatique
  • G06F 21/62 - Protection de l’accès à des données via une plate-forme, p. ex. par clés ou règles de contrôle de l’accès
  • H04L 9/00 - Dispositions pour les communications secrètes ou protégéesProtocoles réseaux de sécurité
  • G06N 3/00 - Agencements informatiques fondés sur des modèles biologiques

14.

RECONFIGURABLE ARITHMETIC ENGINE CIRCUIT

      
Numéro d'application 18982545
Statut En instance
Date de dépôt 2024-12-16
Date de la première publication 2025-04-10
Propriétaire Cornami, Inc. (USA)
Inventeur(s) Andraka, Raymond J.

Abrégé

A representative reconfigurable processing circuit and a reconfigurable arithmetic circuit are disclosed, each of which may include input reordering queues; a multiplier shifter and combiner network coupled to the input reordering queues; an accumulator circuit; and a control logic circuit, along with a processor and various interconnection networks. A representative reconfigurable arithmetic circuit has a plurality of operating modes, such as floating point and integer arithmetic modes, logical manipulation modes, Boolean logic, shift, rotate, conditional operations, and format conversion, and is configurable for a wide variety of multiplication modes. Dedicated routing connecting multiplier adder trees allows multiple reconfigurable arithmetic circuits to be reconfigurably combined, in pair or quad configurations, for larger adders, complex multiplies and general sum of products use, for example.

Classes IPC  ?

  • G06F 15/80 - Architectures de calculateurs universels à programmes enregistrés comprenant un ensemble d'unités de traitement à commande commune, p. ex. plusieurs processeurs de données à instruction unique
  • G06F 5/01 - Procédés ou dispositions pour la conversion de données, sans modification de l'ordre ou du contenu des données maniées pour le décalage, p. ex. la justification, le changement d'échelle, la normalisation
  • G06F 7/487 - MultiplicationDivision
  • G06F 7/50 - AdditionSoustraction
  • G06F 7/52 - MultiplicationDivision
  • G06F 7/523 - Multiplication uniquement
  • G06F 7/544 - Méthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs n'établissant pas de contact, p. ex. tube, dispositif à l'état solideMéthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs non spécifiés pour l'évaluation de fonctions par calcul
  • G06F 9/30 - Dispositions pour exécuter des instructions machines, p. ex. décodage d'instructions
  • G06F 9/38 - Exécution simultanée d'instructions, p. ex. pipeline ou lecture en mémoire
  • G06F 9/48 - Lancement de programmes Commutation de programmes, p. ex. par interruption
  • G06F 9/54 - Communication interprogramme
  • H03K 19/21 - Circuits OU EXCLUSIF, c.-à-d. donnant un signal de sortie si un signal n'existe qu'à une seule entréeCircuits à COÏNCIDENCES, c.-à-d. ne donnant un signal de sortie que si tous les signaux d'entrée sont identiques

15.

METHOD AND SYSTEM FOR COMPRESSING APPLICATION DATA FOR OPERATIONS ON MULTI-CORE SYSTEMS

      
Numéro d'application 18921630
Statut En instance
Date de dépôt 2024-10-21
Date de la première publication 2025-02-06
Propriétaire Cornami, Inc. (USA)
Inventeur(s) Liu, Tianfang

Abrégé

A system and method to compress application control data, such as weights for a layer of a convolutional neural network, is disclosed. A multi-core system for executing at least one layer of the convolutional neural network includes a storage device storing a compressed weight matrix of a set of weights of the at least one layer of the convolutional network and a decompression matrix. The compressed weight matrix is formed by matrix factorization and quantization of a floating point value of each weight to a floating point format. A decompression module is operable to obtain an approximation of the weight values by decompressing the compressed weight matrix through the decompression matrix. A plurality of cores executes the at least one layer of the convolutional neural network with the approximation of weight values to produce an inference output.

Classes IPC  ?

  • H03M 7/30 - CompressionExpansionÉlimination de données inutiles, p. ex. réduction de redondance
  • G06F 7/483 - Calculs avec des nombres représentés par une combinaison non linéaire de nombres codés, p. ex. nombres rationnels, système de numération logarithmique ou nombres à virgule flottante
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 18/2135 - Extraction de caractéristiques, p. ex. en transformant l'espace des caractéristiquesSynthétisationsMappages, p. ex. procédés de sous-espace basée sur des critères d'approximation, p. ex. analyse en composantes principales
  • G06F 18/24 - Techniques de classification
  • G06N 3/02 - Réseaux neuronaux
  • G06N 3/0464 - Réseaux convolutifs [CNN, ConvNet]
  • G06V 10/764 - Dispositions pour la reconnaissance ou la compréhension d’images ou de vidéos utilisant la reconnaissance de formes ou l’apprentissage automatique utilisant la classification, p. ex. des objets vidéo
  • G06V 10/77 - Traitement des caractéristiques d’images ou de vidéos dans les espaces de caractéristiquesDispositions pour la reconnaissance ou la compréhension d’images ou de vidéos utilisant la reconnaissance de formes ou l’apprentissage automatique utilisant l’intégration et la réduction de données, p. ex. analyse en composantes principales [PCA] ou analyse en composantes indépendantes [ ICA] ou cartes auto-organisatrices [SOM]Séparation aveugle de source
  • G06V 10/82 - Dispositions pour la reconnaissance ou la compréhension d’images ou de vidéos utilisant la reconnaissance de formes ou l’apprentissage automatique utilisant les réseaux neuronaux
  • H03M 7/02 - Conversion en, ou à partir de codes pondérés, c.-à-d. le poids donné à un chiffre dépendant de sa position dans le bloc ou dans le mot-code
  • H03M 7/40 - Conversion en, ou à partir de codes de longueur variable, p. ex. code Shannon-Fano, code Huffman, code Morse

16.

CACHE ARCHITECTURE FOR A MASSIVELY PARALLEL PROCESSING ARRAY

      
Numéro d'application 18817045
Statut En instance
Date de dépôt 2024-08-27
Date de la première publication 2024-12-19
Propriétaire Cornami, Inc. (USA)
Inventeur(s) Franz, Ii, Martin Alan

Abrégé

A cache architecture for an array of identical cores arranged in a grid. Each of the cores include interconnections to neighboring cores in the grid, a memory, and an algorithmic logic unit. A first core of the array is configured to receive a memory access request for data from at least one core of the array of cores configured to perform a computational operation. A second core of the array is configured to determine whether the requested data is present in a cache memory via a cache index including addresses in the cache memory. A third core of the array is configured as the cache memory. The memory of the third core is used as the cache memory. An address of the requested data from the cache index is passed to the third core to output the requested data.

Classes IPC  ?

  • G06F 12/0813 - Systèmes de mémoire cache multi-utilisateurs, multiprocesseurs ou multitraitement avec configuration en réseau ou matrice

17.

SHARING HIGH SPEED SERIAL INTERCONNECTS FOR DIFFERENT PROTOCOLS

      
Numéro d'application 18760926
Statut En instance
Date de dépôt 2024-07-01
Date de la première publication 2024-10-24
Propriétaire Cornami, Inc. (USA)
Inventeur(s)
  • Abbas, Fazal
  • Master, Paul L.

Abrégé

A system and method to allocate serial interconnection lanes on a die to multiple communication protocols is disclosed. The die has at least one processing core. The die incudes a first communication subsystem including a controller, a protocol coding sublayer (PCS) for interchanging data, and a data interface coupled to the core. The die includes a second communication subsystem including a controller, a PCS for interchanging data, and a data interface coupled to the core. A mode input selects at least one of the first or second communication protocol. A data router has an input coupled to the PCS of the first communication subsystem and an input coupled to the PCS of the second communication subsystem. The data router has an output coupled to the set of serial interconnection lanes, and a selection input coupled to the mode input to allocate some of the lanes for the selected protocol.

Classes IPC  ?

  • G06F 13/42 - Protocole de transfert pour bus, p. ex. liaisonSynchronisation

18.

CACHE ARCHITECTURE FOR A MASSIVELY PARALLEL PROCESSING ARRAY

      
Numéro d'application US2024019574
Numéro de publication 2024/192030
Statut Délivré - en vigueur
Date de dépôt 2024-03-12
Date de publication 2024-09-19
Propriétaire CORNAMI, INC. (USA)
Inventeur(s) Franz, Martin Alan, Ii

Abrégé

A cache architecture for an array of identical cores arranged in a grid. Each of the cores include interconnections to neighboring cores in the grid, a memory, and an algorithmic logic unit. A first core of the array is configured to receive a memory access request for data from at least one core of the array of cores configured to perform a computational operation. A second core of the array is configured to determine whether the requested data is present in a cache memory via a cache index including addresses in the cache memory. A third core of the array is configured as the cache memory. The memory of the third core is used as the cache memory. An address of the requested data from the cache index is passed to the third core to output the requested data.

Classes IPC  ?

  • G06F 12/0813 - Systèmes de mémoire cache multi-utilisateurs, multiprocesseurs ou multitraitement avec configuration en réseau ou matrice

19.

Cache architecture for a massively parallel processing array

      
Numéro d'application 18184536
Numéro de brevet 12086066
Statut Délivré - en vigueur
Date de dépôt 2023-03-15
Date de la première publication 2024-09-10
Date d'octroi 2024-09-10
Propriétaire Cornami, Inc. (USA)
Inventeur(s) Alan Franz, Ii, Martin

Abrégé

A cache architecture for an array of identical cores arranged in a grid. Each of the cores include interconnections to neighboring cores in the grid, a memory, and an algorithmic logic unit. A first core of the array is configured to receive a memory access request for data from at least one core of the array of cores configured to perform a computational operation. A second core of the array is configured to determine whether the requested data is present in a cache memory via a cache index including addresses in the cache memory. A third core of the array is configured as the cache memory. The memory of the third core is used as the cache memory. An address of the requested data from the cache index is passed to the third core to output the requested data.

Classes IPC  ?

  • G06F 12/0813 - Systèmes de mémoire cache multi-utilisateurs, multiprocesseurs ou multitraitement avec configuration en réseau ou matrice

20.

Method and system for robust streaming of data

      
Numéro d'application 18651190
Numéro de brevet 12701084
Statut Délivré - en vigueur
Date de dépôt 2024-04-30
Date de la première publication 2024-08-22
Date d'octroi 2026-08-04
Propriétaire Cornami, Inc. (USA)
Inventeur(s) Subramanian, Krishnamurthy

Abrégé

A method and system for providing robust streaming of data from a multi-core die is disclosed. The techniques include using a high bandwidth memory (HBM) device as retransmit buffers for large amounts of data to ensure robust communication in relatively high round trip-transmission time (RTT) transmission. Another technique is supporting two or more Ethernet ports between components to both transmit the same data packets on the two ports to insure robustness. Another technique is to use sequence numbers and send data packets from the different ports in a round robin fashion and reorder the packets upon receipt of an external device. Another technique is dynamically adding and removing paths for data packets between devices with multiple ports based on the quality of the path.

Classes IPC  ?

  • H04L 47/34 - Commande de fluxCommande de la congestion en assurant l'intégrité de la séquence, p. ex. en utilisant des numéros de séquence
  • H04L 47/32 - Commande de fluxCommande de la congestion en supprimant ou en retardant les unités de données, p. ex. les paquets ou les trames
  • H04L 49/90 - Dispositions de mémoires tampon

21.

METHOD AND SYSTEM FOR PROVIDING FAULT TOLERANT LAYOUT OF MASSIVELY PARALLEL PROCESSING ARRAY

      
Numéro d'application 18054460
Statut En instance
Date de dépôt 2022-11-10
Date de la première publication 2024-05-16
Propriétaire Cornami, Inc. (USA)
Inventeur(s)
  • Annamalai, Muthiah
  • Knapp, Steven
  • Ahmed, Syed
  • Master, Paul L.
  • Franz, Ii, Martin Alan
  • Nghiem, Tu

Abrégé

A system and method to create a robust topology of a layout of cores for performing a function on an array of cores arranged in a grid is disclosed. A defective core file of location of defective cores in the array and an optimal ideal topology of a configuration layout of at least some of the cores is input. The location of at least one defective core of the array is determined. At least some of the cores in the array of cores are assigned to the optimal initial topography of cores in the array. It is determined whether at least one defective core is in the optimal initial topography. The functions of the cores in the row and the column of the at least one defective core are assigned to additional neighboring cores in the array of cores to create the robust topology.

Classes IPC  ?

  • G06F 30/392 - Conception de plans ou d’agencements, p. ex. partitionnement ou positionnement

22.

METHOD AND SYSTEM FOR PROVIDING FAULT TOLERANT LAYOUT OF MASSIVELY PARALLEL PROCESSING ARRAY

      
Numéro d'application US2023079295
Numéro de publication 2024/102953
Statut Délivré - en vigueur
Date de dépôt 2023-11-09
Date de publication 2024-05-16
Propriétaire CORNAMI, INC. (USA)
Inventeur(s)
  • Annamalai, Muthiah
  • Knapp, Steven
  • Ahmed, Syed
  • Master, Paul L.
  • Franz, Martin Alan, Ii
  • Nghiem, Tu

Abrégé

A system and method to create a robust topology of a layout of cores for performing a function on an array of cores arranged in a grid is disclosed. A defective core file of location of defective cores in the array and an optimal ideal topology of a configuration layout of at least some of the cores is input. The location of at least one defective core of the array is determined. At least some of the cores in the array of cores are assigned to the optimal initial topography of cores in the array. It is determined whether at least one defective core is in the optimal initial topography. The functions of the cores in the row and the column of the at least one defective core are assigned to additional neighboring cores in the array of cores to create the robust topology.

Classes IPC  ?

  • G06F 11/20 - Détection ou correction d'erreur dans une donnée par redondance dans le matériel en utilisant un masquage actif du défaut, p. ex. en déconnectant les éléments défaillants ou en insérant des éléments de rechange
  • G06F 11/07 - Réaction à l'apparition d'un défaut, p. ex. tolérance de certains défauts
  • G06F 15/78 - Architectures de calculateurs universels à programmes enregistrés comprenant une seule unité centrale
  • G06F 15/80 - Architectures de calculateurs universels à programmes enregistrés comprenant un ensemble d'unités de traitement à commande commune, p. ex. plusieurs processeurs de données à instruction unique
  • G01R 31/317 - Tests de circuits numériques

23.

Reconfigurable processor circuit architecture

      
Numéro d'application 18415958
Numéro de brevet 12461890
Statut Délivré - en vigueur
Date de dépôt 2024-01-18
Date de la première publication 2024-05-09
Date d'octroi 2025-11-04
Propriétaire Cornami, Inc. (USA)
Inventeur(s)
  • Master, Paul L.
  • Knapp, Steven K.
  • Andraka, Raymond J.
  • Beliaev, Alexei
  • Franz, Martin A
  • Meessen, Rene
  • Furtek, Frederick Curtis

Abrégé

A representative reconfigurable processing circuit and a reconfigurable arithmetic circuit are disclosed, each of which may include input reordering queues; a multiplier shifter and combiner network coupled to the input reordering queues; an accumulator circuit; and a control logic circuit, along with a processor and various interconnection networks. A representative reconfigurable arithmetic circuit has a plurality of operating modes, such as floating point and integer arithmetic modes, logical manipulation modes, Boolean logic, shift, rotate, conditional operations, and format conversion, and is configurable for a wide variety of multiplication modes. Dedicated routing connecting multiplier adder trees allows multiple reconfigurable arithmetic circuits to be reconfigurably combined, in pair or quad configurations, for larger adders, complex multiplies and general sum of products use, for example.

Classes IPC  ?

  • G06F 15/78 - Architectures de calculateurs universels à programmes enregistrés comprenant une seule unité centrale
  • G06F 5/01 - Procédés ou dispositions pour la conversion de données, sans modification de l'ordre ou du contenu des données maniées pour le décalage, p. ex. la justification, le changement d'échelle, la normalisation
  • G06F 7/487 - MultiplicationDivision
  • G06F 7/50 - AdditionSoustraction
  • G06F 7/52 - MultiplicationDivision
  • G06F 7/523 - Multiplication uniquement
  • G06F 7/544 - Méthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs n'établissant pas de contact, p. ex. tube, dispositif à l'état solideMéthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs non spécifiés pour l'évaluation de fonctions par calcul
  • G06F 9/30 - Dispositions pour exécuter des instructions machines, p. ex. décodage d'instructions
  • G06F 9/38 - Exécution simultanée d'instructions, p. ex. pipeline ou lecture en mémoire
  • G06F 9/48 - Lancement de programmes Commutation de programmes, p. ex. par interruption
  • G06F 9/54 - Communication interprogramme
  • G06F 15/80 - Architectures de calculateurs universels à programmes enregistrés comprenant un ensemble d'unités de traitement à commande commune, p. ex. plusieurs processeurs de données à instruction unique
  • H03K 19/21 - Circuits OU EXCLUSIF, c.-à-d. donnant un signal de sortie si un signal n'existe qu'à une seule entréeCircuits à COÏNCIDENCES, c.-à-d. ne donnant un signal de sortie que si tous les signaux d'entrée sont identiques

24.

Reconfigurable arithmetic engine circuit

      
Numéro d'application 18401571
Numéro de brevet 12182063
Statut Délivré - en vigueur
Date de dépôt 2023-12-31
Date de la première publication 2024-04-25
Date d'octroi 2024-12-31
Propriétaire Cornami, Inc. (USA)
Inventeur(s) Andraka, Raymond J.

Abrégé

A representative reconfigurable processing circuit and a reconfigurable arithmetic circuit are disclosed, each of which may include input reordering queues; a multiplier shifter and combiner network coupled to the input reordering queues; an accumulator circuit; and a control logic circuit, along with a processor and various interconnection networks. A representative reconfigurable arithmetic circuit has a plurality of operating modes, such as floating point and integer arithmetic modes, logical manipulation modes, Boolean logic, shift, rotate, conditional operations, and format conversion, and is configurable for a wide variety of multiplication modes. Dedicated routing connecting multiplier adder trees allows multiple reconfigurable arithmetic circuits to be reconfigurably combined, in pair or quad configurations, for larger adders, complex multiplies and general sum of products use, for example.

Classes IPC  ?

  • G06F 5/01 - Procédés ou dispositions pour la conversion de données, sans modification de l'ordre ou du contenu des données maniées pour le décalage, p. ex. la justification, le changement d'échelle, la normalisation
  • G06F 7/487 - MultiplicationDivision
  • G06F 7/50 - AdditionSoustraction
  • G06F 7/52 - MultiplicationDivision
  • G06F 7/523 - Multiplication uniquement
  • G06F 7/544 - Méthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs n'établissant pas de contact, p. ex. tube, dispositif à l'état solideMéthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs non spécifiés pour l'évaluation de fonctions par calcul
  • G06F 9/30 - Dispositions pour exécuter des instructions machines, p. ex. décodage d'instructions
  • G06F 9/38 - Exécution simultanée d'instructions, p. ex. pipeline ou lecture en mémoire
  • G06F 9/48 - Lancement de programmes Commutation de programmes, p. ex. par interruption
  • G06F 9/54 - Communication interprogramme
  • G06F 15/80 - Architectures de calculateurs universels à programmes enregistrés comprenant un ensemble d'unités de traitement à commande commune, p. ex. plusieurs processeurs de données à instruction unique
  • H03K 19/21 - Circuits OU EXCLUSIF, c.-à-d. donnant un signal de sortie si un signal n'existe qu'à une seule entréeCircuits à COÏNCIDENCES, c.-à-d. ne donnant un signal de sortie que si tous les signaux d'entrée sont identiques

25.

Method, apparatus, and computer-readable medium for parallelization of a computer program on a plurality of computing cores

      
Numéro d'application 18388463
Numéro de brevet 12174784
Statut Délivré - en vigueur
Date de dépôt 2023-11-09
Date de la première publication 2024-02-29
Date d'octroi 2024-12-24
Propriétaire CORNAMI, INC. (USA)
Inventeur(s)
  • Harsha, Solomon
  • Master, Paul

Abrégé

An apparatus, computer-readable medium, and computer-implemented method for parallelization of a computer program on a plurality of computing cores includes receiving a computer program comprising a plurality of commands, decomposing the plurality of commands into a plurality of node networks, each node network corresponding to a command in the plurality of commands and including one or more nodes corresponding to execution dependencies of the command, mapping the plurality of node networks to a plurality of systolic arrays, each systolic array comprising a plurality of cells and each non-data node in each node network being mapped to a cell in the plurality of cells, and mapping each cell in each systolic array to a computing core in the plurality of computing cores.

Classes IPC  ?

  • G06F 15/80 - Architectures de calculateurs universels à programmes enregistrés comprenant un ensemble d'unités de traitement à commande commune, p. ex. plusieurs processeurs de données à instruction unique
  • G06F 8/41 - Compilation
  • G06Q 40/00 - FinanceAssuranceStratégies fiscalesTraitement des impôts sur les sociétés ou sur le revenu

26.

METHOD AND SYSTEM FOR REPLICATING CORE CONFIGURATIONS

      
Numéro d'application 17893993
Statut En instance
Date de dépôt 2022-08-23
Date de la première publication 2024-02-29
Propriétaire Cornami, Inc. (USA)
Inventeur(s)
  • Victorvich, Yuri
  • Furtek, Frederick
  • Franz, Ii, Martin Alan
  • Master, Paul L.

Abrégé

A system and method to efficiently configure an array of processing cores to perform functions of a program. A function of the program is converted to a configuration of cores. The configuration is laid out in a first subset of the array of cores. The configuration is stored. The configuration is replicated to perform the function on a second subset of the array of cores.

Classes IPC  ?

  • G06F 9/38 - Exécution simultanée d'instructions, p. ex. pipeline ou lecture en mémoire
  • G06F 9/50 - Allocation de ressources, p. ex. de l'unité centrale de traitement [UCT]

27.

METHOD AND SYSTEM FOR REPLICATING CORE CONFIGURATIONS

      
Numéro d'application US2023030839
Numéro de publication 2024/044197
Statut Délivré - en vigueur
Date de dépôt 2023-08-22
Date de publication 2024-02-29
Propriétaire CORNAMI, INC. (USA)
Inventeur(s)
  • Victorvich, Yuri
  • Furtek, Frederick
  • Franz, Martin Alan, Ii
  • Master, Paul L.

Abrégé

A system and method to efficiently configure an array of processing cores to perform functions of a program. A function of the program is converted to a configuration of cores. The configuration is laid out in a first subset of the array of cores. The configuration is stored. The configuration is replicated to perform the function on a second subset of the array of cores.

Classes IPC  ?

  • G06F 9/50 - Allocation de ressources, p. ex. de l'unité centrale de traitement [UCT]
  • G06T 1/20 - Architectures de processeursConfiguration de processeurs p. ex. configuration en pipeline
  • H01L 21/66 - Test ou mesure durant la fabrication ou le traitement

28.

Sharing high speed serial interconnects for different protocols

      
Numéro d'application 17845717
Numéro de brevet 12026120
Statut Délivré - en vigueur
Date de dépôt 2022-06-21
Date de la première publication 2023-12-21
Date d'octroi 2024-07-02
Propriétaire Cornami, Inc. (USA)
Inventeur(s)
  • Abbas, Fazal
  • Master, Paul L.

Abrégé

A system and method to allocate serial interconnection lanes on a die to multiple communication protocols is disclosed. The die has at least one processing core. The die incudes a first communication subsystem including a controller, a protocol coding sublayer (PCS) for interchanging data, and a data interface coupled to the core. The die includes a second communication subsystem including a controller, a PCS for interchanging data, and a data interface coupled to the core. A mode input selects at least one of the first or second communication protocol. A data router has an input coupled to the PCS of the first communication subsystem and an input coupled to the PCS of the second communication subsystem. The data router has an output coupled to the set of serial interconnection lanes, and a selection input coupled to the mode input to allocate some of the lanes for the selected protocol.

Classes IPC  ?

  • G06F 13/42 - Protocole de transfert pour bus, p. ex. liaisonSynchronisation

29.

Method and Apparatus for Configuring a Reduced Instruction Set Computer Processor Architecture to Execute a Fully Homomorphic Encryption Algorithm

      
Numéro d'application 18205929
Statut En instance
Date de dépôt 2023-06-05
Date de la première publication 2023-11-02
Propriétaire Cornami Inc. (USA)
Inventeur(s)
  • Creeger, Morris Jacob
  • Liu, Tianfang
  • Furtek, Frederick
  • Master, Paul L.

Abrégé

Systems and methods for configuring a reduced instruction set computer processor architecture to execute fully homomorphic encryption (FHE) logic gates as a streaming topology. The method includes parsing sequential FHE logic gate code, transforming the FHE logic gate code into a set of code modules that each have in input and an output that is a function of the input and which do not pass control to other functions, creating a node wrapper around each code module, configuring at least one of the primary processing cores to implement the logic element equivalents of each element in a manner which operates in a streaming mode wherein data streams out of corresponding arithmetic logic units into the main memory and other ones of the plurality arithmetic logic units.

Classes IPC  ?

  • G06F 9/38 - Exécution simultanée d'instructions, p. ex. pipeline ou lecture en mémoire
  • G06F 7/48 - Méthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs n'établissant pas de contact, p. ex. tube, dispositif à l'état solideMéthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs non spécifiés
  • G06F 17/14 - Transformations de Fourier, de Walsh ou transformations d'espace analogues
  • G06F 8/41 - Compilation

30.

Method and system for compressing application data for operations on multi-core systems

      
Numéro d'application 18178237
Numéro de brevet 12126367
Statut Délivré - en vigueur
Date de dépôt 2023-03-03
Date de la première publication 2023-07-06
Date d'octroi 2024-10-22
Propriétaire Cornami, Inc. (USA)
Inventeur(s) Liu, Tianfang

Abrégé

A system and method to compress application control data, such as weights for a layer of a convolutional neural network, is disclosed. A multi-core system for executing at least one layer of the convolutional neural network includes a storage device storing a compressed weight matrix of a set of weights of the at least one layer of the convolutional network and a decompression matrix. The compressed weight matrix is formed by matrix factorization and quantization of a floating point value of each weight to a floating point format. A decompression module is operable to obtain an approximation of the weight values by decompressing the compressed weight matrix through the decompression matrix. A plurality of cores executes the at least one layer of the convolutional neural network with the approximation of weight values to produce an inference output.

Classes IPC  ?

  • H03M 7/30 - CompressionExpansionÉlimination de données inutiles, p. ex. réduction de redondance
  • G06F 7/483 - Calculs avec des nombres représentés par une combinaison non linéaire de nombres codés, p. ex. nombres rationnels, système de numération logarithmique ou nombres à virgule flottante
  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 18/2135 - Extraction de caractéristiques, p. ex. en transformant l'espace des caractéristiquesSynthétisationsMappages, p. ex. procédés de sous-espace basée sur des critères d'approximation, p. ex. analyse en composantes principales
  • G06F 18/24 - Techniques de classification
  • G06N 3/02 - Réseaux neuronaux
  • G06N 3/0464 - Réseaux convolutifs [CNN, ConvNet]
  • G06V 10/764 - Dispositions pour la reconnaissance ou la compréhension d’images ou de vidéos utilisant la reconnaissance de formes ou l’apprentissage automatique utilisant la classification, p. ex. des objets vidéo
  • G06V 10/77 - Traitement des caractéristiques d’images ou de vidéos dans les espaces de caractéristiquesDispositions pour la reconnaissance ou la compréhension d’images ou de vidéos utilisant la reconnaissance de formes ou l’apprentissage automatique utilisant l’intégration et la réduction de données, p. ex. analyse en composantes principales [PCA] ou analyse en composantes indépendantes [ ICA] ou cartes auto-organisatrices [SOM]Séparation aveugle de source
  • G06V 10/82 - Dispositions pour la reconnaissance ou la compréhension d’images ou de vidéos utilisant la reconnaissance de formes ou l’apprentissage automatique utilisant les réseaux neuronaux
  • H03M 7/02 - Conversion en, ou à partir de codes pondérés, c.-à-d. le poids donné à un chiffre dépendant de sa position dans le bloc ou dans le mot-code
  • H03M 7/40 - Conversion en, ou à partir de codes de longueur variable, p. ex. code Shannon-Fano, code Huffman, code Morse

31.

Reconfigurable processor circuit architecture

      
Numéro d'application 18092247
Numéro de brevet 11907157
Statut Délivré - en vigueur
Date de dépôt 2022-12-31
Date de la première publication 2023-05-18
Date d'octroi 2024-02-20
Propriétaire Cornami, Inc. (USA)
Inventeur(s)
  • Master, Paul L.
  • Knapp, Steven K.
  • Andraka, Raymond J.
  • Beliaev, Alexei
  • Franz, Martin A.
  • Meessen, Rene
  • Furtek, Frederick Curtis

Abrégé

A representative reconfigurable processing circuit and a reconfigurable arithmetic circuit are disclosed, each of which may include input reordering queues; a multiplier shifter and combiner network coupled to the input reordering queues; an accumulator circuit; and a control logic circuit, along with a processor and various interconnection networks. A representative reconfigurable arithmetic circuit has a plurality of operating modes, such as floating point and integer arithmetic modes, logical manipulation modes, Boolean logic, shift, rotate, conditional operations, and format conversion, and is configurable for a wide variety of multiplication modes. Dedicated routing connecting multiplier adder trees allows multiple reconfigurable arithmetic circuits to be reconfigurably combined, in pair or quad configurations, for larger adders, complex multiplies and general sum of products use, for example.

Classes IPC  ?

  • G06F 21/44 - Authentification de programme ou de dispositif
  • G06F 15/78 - Architectures de calculateurs universels à programmes enregistrés comprenant une seule unité centrale
  • G06F 15/80 - Architectures de calculateurs universels à programmes enregistrés comprenant un ensemble d'unités de traitement à commande commune, p. ex. plusieurs processeurs de données à instruction unique
  • G06F 7/523 - Multiplication uniquement
  • G06F 7/50 - AdditionSoustraction
  • H03K 19/21 - Circuits OU EXCLUSIF, c.-à-d. donnant un signal de sortie si un signal n'existe qu'à une seule entréeCircuits à COÏNCIDENCES, c.-à-d. ne donnant un signal de sortie que si tous les signaux d'entrée sont identiques
  • G06F 9/48 - Lancement de programmes Commutation de programmes, p. ex. par interruption
  • G06F 9/54 - Communication interprogramme
  • G06F 5/01 - Procédés ou dispositions pour la conversion de données, sans modification de l'ordre ou du contenu des données maniées pour le décalage, p. ex. la justification, le changement d'échelle, la normalisation
  • G06F 9/30 - Dispositions pour exécuter des instructions machines, p. ex. décodage d'instructions
  • G06F 7/487 - MultiplicationDivision
  • G06F 7/52 - MultiplicationDivision
  • G06F 7/544 - Méthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs n'établissant pas de contact, p. ex. tube, dispositif à l'état solideMéthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs non spécifiés pour l'évaluation de fonctions par calcul
  • G06F 9/38 - Exécution simultanée d'instructions, p. ex. pipeline ou lecture en mémoire

32.

Method and system for robust streaming of data

      
Numéro d'application 18061691
Numéro de brevet 11973692
Statut Délivré - en vigueur
Date de dépôt 2022-12-05
Date de la première publication 2023-04-13
Date d'octroi 2024-04-30
Propriétaire Cornami, Inc. (USA)
Inventeur(s) Subramanian, Krishnamurthy

Abrégé

A method and system for providing robust streaming of data from a multi-core die is disclosed. The techniques include using a high bandwidth memory (HBM) device as retransmit buffers for large amounts of data to ensure robust communication in relatively high round trip-transmission time (RTT) transmission. Another technique is supporting two or more Ethernet ports between components to both transmit the same data packets on the two ports to insure robustness. Another technique is to use sequence numbers and send data packets from the different ports in a round robin fashion and reorder the packets upon receipt of an external device. Another technique is dynamically adding and removing paths for data packets between devices with multiple ports based on the quality of the path.

Classes IPC  ?

  • H04L 47/34 - Commande de fluxCommande de la congestion en assurant l'intégrité de la séquence, p. ex. en utilisant des numéros de séquence
  • H04L 47/32 - Commande de fluxCommande de la congestion en supprimant ou en retardant les unités de données, p. ex. les paquets ou les trames
  • H04L 49/90 - Dispositions de mémoires tampon

33.

Reconfigurable processor circuit architecture

      
Numéro d'application 17967173
Numéro de brevet 11977509
Statut Délivré - en vigueur
Date de dépôt 2022-10-17
Date de la première publication 2023-02-23
Date d'octroi 2024-05-07
Propriétaire Cornami, Inc. (USA)
Inventeur(s)
  • Master, Paul L.
  • Knapp, Steven K.
  • Andraka, Raymond J.
  • Beliaev, Alexei
  • Franz, Martin A.
  • Meessen, Rene
  • Furtek, Frederick Curtis

Abrégé

A representative reconfigurable processing circuit and a reconfigurable arithmetic circuit are disclosed, each of which may include input reordering queues; a multiplier shifter and combiner network coupled to the input reordering queues; an accumulator circuit; and a control logic circuit, along with a processor and various interconnection networks. A representative reconfigurable arithmetic circuit has a plurality of operating modes, such as floating point and integer arithmetic modes, logical manipulation modes, Boolean logic, shift, rotate, conditional operations, and format conversion, and is configurable for a wide variety of multiplication modes. Dedicated routing connecting multiplier adder trees allows multiple reconfigurable arithmetic circuits to be reconfigurably combined, in pair or quad configurations, for larger adders, complex multiplies and general sum of products use, for example.

Classes IPC  ?

  • G06F 7/76 - Dispositions pour le réagencement, la permutation ou la sélection de données selon des règles prédéterminées, indépendamment du contenu des données
  • G06F 5/01 - Procédés ou dispositions pour la conversion de données, sans modification de l'ordre ou du contenu des données maniées pour le décalage, p. ex. la justification, le changement d'échelle, la normalisation
  • G06F 7/487 - MultiplicationDivision
  • G06F 7/50 - AdditionSoustraction
  • G06F 7/52 - MultiplicationDivision
  • G06F 7/523 - Multiplication uniquement
  • G06F 7/544 - Méthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs n'établissant pas de contact, p. ex. tube, dispositif à l'état solideMéthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs non spécifiés pour l'évaluation de fonctions par calcul
  • G06F 9/30 - Dispositions pour exécuter des instructions machines, p. ex. décodage d'instructions
  • G06F 9/38 - Exécution simultanée d'instructions, p. ex. pipeline ou lecture en mémoire
  • G06F 9/48 - Lancement de programmes Commutation de programmes, p. ex. par interruption
  • G06F 9/54 - Communication interprogramme
  • G06F 15/173 - Communication entre processeurs utilisant un réseau d'interconnexion, p. ex. matriciel, de réarrangement, pyramidal, en étoile ou ramifié
  • G06F 15/80 - Architectures de calculateurs universels à programmes enregistrés comprenant un ensemble d'unités de traitement à commande commune, p. ex. plusieurs processeurs de données à instruction unique
  • H03K 19/21 - Circuits OU EXCLUSIF, c.-à-d. donnant un signal de sortie si un signal n'existe qu'à une seule entréeCircuits à COÏNCIDENCES, c.-à-d. ne donnant un signal de sortie que si tous les signaux d'entrée sont identiques

34.

Method and apparatus for configuring a reduced instruction set computer processor architecture to execute a fully homomorphic encryption algorithm

      
Numéro d'application 17860475
Numéro de brevet 12293188
Statut Délivré - en vigueur
Date de dépôt 2022-07-08
Date de la première publication 2022-11-10
Date d'octroi 2025-05-06
Propriétaire Cornami, Inc. (USA)
Inventeur(s)
  • Creeger, Morris Jacob
  • Liu, Tianfang
  • Furtek, Frederick
  • Master, Paul L.

Abrégé

Systems and methods for configuring a reduced instruction set computer processor architecture to execute fully homomorphic encryption (FHE) logic gates as a streaming topology. The method includes parsing sequential FHE logic gate code, transforming the FHE logic gate code into a set of code modules that each have in input and an output that is a function of the input and which do not pass control to other functions, creating a node wrapper around each code module, configuring at least one of the primary processing cores to implement the logic element equivalents of each element in a manner which operates in a streaming mode wherein data streams out of corresponding arithmetic logic units into the main memory and other ones of the plurality arithmetic logic units.

Classes IPC  ?

  • G06F 17/16 - Calcul de matrice ou de vecteur
  • G06F 7/48 - Méthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs n'établissant pas de contact, p. ex. tube, dispositif à l'état solideMéthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs non spécifiés
  • G06F 8/41 - Compilation
  • G06F 9/38 - Exécution simultanée d'instructions, p. ex. pipeline ou lecture en mémoire
  • G06F 17/14 - Transformations de Fourier, de Walsh ou transformations d'espace analogues

35.

SCIFR API

      
Numéro de série 97594385
Statut En instance
Date de dépôt 2022-09-16
Propriétaire Cornami, Inc (USA)
Classes de Nice  ?
  • 09 - Appareils et instruments scientifiques et électriques
  • 42 - Services scientifiques, technologiques et industriels, recherche et conception

Produits et services

Downloadable application programming interface (API) software Application service provider featuring application programming interface (API) software

36.

RECONFIGURABLE REDUCED INSTRUCTION SET COMPUTER PROCESSOR ARCHITECTURE WITH FRACTURED CORES

      
Numéro d'application 17681163
Statut En instance
Date de dépôt 2022-02-25
Date de la première publication 2022-06-09
Propriétaire Cornami Inc. (USA)
Inventeur(s)
  • Master, Paul L.
  • Furtek, Frederick
  • Franz Ii, Martin Alan
  • Andraka Pe, Raymond J.

Abrégé

Systems and methods for reconfiguring a reduced instruction set computer processor architecture are disclosed. Exemplary implementations may: provide a primary processing core consisting of a RISC processor; provide a node wrapper associated with each of the plurality of secondary cores, the node wrapper comprising access memory associates with each secondary core, and a load/unload matrix associated with each secondary core; operate the architecture in a manner in which, for at least one core, data is read from and written to the at least cache memory in a control-centric mode; the secondary cores are selectively partitioned to operate in a streaming mode wherein data streams out of the corresponding secondary core into the main memory and other ones of the plurality of secondary cores.

Classes IPC  ?

  • G06F 15/78 - Architectures de calculateurs universels à programmes enregistrés comprenant une seule unité centrale
  • G06F 9/30 - Dispositions pour exécuter des instructions machines, p. ex. décodage d'instructions
  • G06F 15/80 - Architectures de calculateurs universels à programmes enregistrés comprenant un ensemble d'unités de traitement à commande commune, p. ex. plusieurs processeurs de données à instruction unique

37.

Parallel processing of data having data dependencies for accelerating the launch and performance of operating systems and other computing applications

      
Numéro d'application 17467231
Numéro de brevet 11669526
Statut Délivré - en vigueur
Date de dépôt 2021-09-05
Date de la première publication 2022-02-24
Date d'octroi 2023-06-06
Propriétaire Cornami, Inc. (USA)
Inventeur(s)
  • Master, Paul L.
  • Furtek, Frederick Curtis
  • Knuttila, Kim
  • Mcgann, L. Brian

Abrégé

Representative embodiments are disclosed for a rapid and highly parallel decompression of compressed executable and other files, such as executable files for operating systems and applications, having compressed blocks including run length encoded (“RLE”) data having data-dependent references. An exemplary embodiment includes a plurality of processors or processor cores to identify a start or end of each compressed block; to partially decompress, in parallel, a selected compressed block into independent data, dependent (RLE) data, and linked dependent (RLE) data; to sequence the independent data, dependent (RLE) data, and linked dependent (RLE) data from a plurality of partial decompressions of a plurality of compressed blocks, to obtain data specified by the dependent (RLE) data and linked dependent (RLE) data, and to insert the obtained data into a corresponding location in an uncompressed file. The representative embodiments are also applicable to other types of data processing for applications having data dependencies.

Classes IPC  ?

  • G06F 16/2455 - Exécution des requêtes
  • H03M 7/46 - Conversion en, ou à partir de codes à longueur de série, c.-à-d. par représentation du nombre de chiffres successifs ou groupes de chiffres de même type à l'aide d'un mot-code et d'un chiffre représentant ce type
  • G06F 3/06 - Entrée numérique à partir de, ou sortie numérique vers des supports d'enregistrement
  • H03M 7/30 - CompressionExpansionÉlimination de données inutiles, p. ex. réduction de redondance
  • H03M 7/40 - Conversion en, ou à partir de codes de longueur variable, p. ex. code Shannon-Fano, code Huffman, code Morse
  • H03M 7/42 - Conversion en, ou à partir de codes de longueur variable, p. ex. code Shannon-Fano, code Huffman, code Morse utilisant une table pour le procédé de codage ou de décodage, p. ex. utilisant une mémoire morte

38.

Method and system for robust streaming of data

      
Numéro d'application 16825585
Numéro de brevet 11522804
Statut Délivré - en vigueur
Date de dépôt 2020-03-20
Date de la première publication 2021-09-23
Date d'octroi 2022-12-06
Propriétaire Cornami, Inc. (USA)
Inventeur(s) Subramanian, Krishnamurthy

Abrégé

A method and system for providing robust streaming of data from a multi-core die is disclosed. The techniques include using a high bandwidth memory (HBM) device as retransmit buffers for large amounts of data to ensure robust communication in relatively high round trip-transmission time (RTT) transmission. Another technique is supporting two or more Ethernet ports between components to both transmit the same data packets on the two ports to insure robustness. Another technique is to use sequence numbers and send data packets from the different ports in a round robin fashion and reorder the packets upon receipt of an external device. Another technique is dynamically adding and removing paths for data packets between devices with multiple ports based on the quality of the path.

Classes IPC  ?

  • H04L 47/34 - Commande de fluxCommande de la congestion en assurant l'intégrité de la séquence, p. ex. en utilisant des numéros de séquence
  • H04L 47/32 - Commande de fluxCommande de la congestion en supprimant ou en retardant les unités de données, p. ex. les paquets ou les trames
  • H04L 49/90 - Dispositions de mémoires tampon

39.

Method and system for compressing application data for operations on multi-core systems

      
Numéro d'application 16752239
Numéro de brevet 11599367
Statut Délivré - en vigueur
Date de dépôt 2020-01-24
Date de la première publication 2021-07-29
Date d'octroi 2023-03-07
Propriétaire Cornami, Inc. (USA)
Inventeur(s) Liu, Tianfang

Abrégé

A system and method to compress application control data, such as weights for a layer of a convolutional neural network, is disclosed. A multi-core system for executing at least one layer of the convolutional neural network includes a storage device storing a compressed weight matrix of a set of weights of the at least one layer of the convolutional network and a decompression matrix. The compressed weight matrix is formed by matrix factorization and quantization of a floating point value of each weight to a floating point format. A decompression module is operable to obtain an approximation of the weight values by decompressing the compressed weight matrix through the decompression matrix. A plurality of cores executes the at least one layer of the convolutional neural network with the approximation of weight values to produce an inference output.

Classes IPC  ?

  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 7/483 - Calculs avec des nombres représentés par une combinaison non linéaire de nombres codés, p. ex. nombres rationnels, système de numération logarithmique ou nombres à virgule flottante
  • H03M 7/40 - Conversion en, ou à partir de codes de longueur variable, p. ex. code Shannon-Fano, code Huffman, code Morse
  • H03M 7/30 - CompressionExpansionÉlimination de données inutiles, p. ex. réduction de redondance
  • G06K 9/62 - Méthodes ou dispositions pour la reconnaissance utilisant des moyens électroniques
  • G06N 3/02 - Réseaux neuronaux

40.

RECONFIGURABLE ARITHMETIC ENGINE CIRCUIT

      
Numéro d'application US2020050058
Numéro de publication 2021/050636
Statut Délivré - en vigueur
Date de dépôt 2020-09-10
Date de publication 2021-03-18
Propriétaire CORNAMI, INC. (USA)
Inventeur(s) Andraka, Raymond J.

Abrégé

A representative reconfigurable processing circuit and a reconfigurable arithmetic circuit are disclosed, each of which may include input reordering queues; a multiplier shifter and combiner network coupled to the input reordering queues; an accumulator circuit; and a control logic circuit, along with a processor and various interconnection networks. A representative reconfigurable arithmetic circuit has a plurality of operating modes, such as floating point and integer arithmetic modes, logical manipulation modes, Boolean logic, shift, rotate, conditional operations, and format conversion, and is configurable for a wide variety of multiplication modes. Dedicated routing connecting multiplier adder trees allows multiple reconfigurable arithmetic circuits to be reconfigurably combined, in pair or quad configurations, for larger adders, complex multiplies and general sum of products use, for example.

Classes IPC  ?

  • G06F 7/57 - Unités arithmétiques et logiques [UAL], c.-à-d. dispositions ou dispositifs pour accomplir plusieurs des opérations couvertes par les groupes ou pour accomplir des opérations logiques

41.

RECONFIGURABLE PROCESSOR CIRCUIT ARCHITECTURE

      
Numéro d'application US2020050069
Numéro de publication 2021/050643
Statut Délivré - en vigueur
Date de dépôt 2020-09-10
Date de publication 2021-03-18
Propriétaire CORNAMI, INC. (USA)
Inventeur(s)
  • Master, Paul, L.
  • Knapp, Steven, K.
  • Andraka, Raymond, J.
  • Furtek, Frederick, Curtis
  • Beliaev, Alexei
  • Franz, Martin, A.
  • Meessen, Rene

Abrégé

A representative reconfigurable processing circuit and a reconfigurable arithmetic circuit are disclosed, each of which may include input reordering queues; a multiplier shifter and combiner network coupled to the input reordering queues; an accumulator circuit; and a control logic circuit, along with a processor and various interconnection networks. A representative reconfigurable arithmetic circuit has a plurality of operating modes, such as floating point and integer arithmetic modes, logical manipulation modes, Boolean logic, shift, rotate, conditional operations, and format conversion, and is configurable for a wide variety of multiplication modes. Dedicated routing connecting multiplier adder trees allows multiple reconfigurable arithmetic circuits to be reconfigurably combined, in pair or quad configurations, for larger adders, complex multiplies and general sum of products use, for example.

Classes IPC  ?

  • G06F 7/57 - Unités arithmétiques et logiques [UAL], c.-à-d. dispositions ou dispositifs pour accomplir plusieurs des opérations couvertes par les groupes ou pour accomplir des opérations logiques

42.

Reconfigurable arithmetic engine circuit

      
Numéro d'application 17015950
Numéro de brevet 11886377
Statut Délivré - en vigueur
Date de dépôt 2020-09-09
Date de la première publication 2021-03-11
Date d'octroi 2024-01-30
Propriétaire Cornami, Inc. (USA)
Inventeur(s) Andraka, Raymond J.

Abrégé

A representative reconfigurable processing circuit and a reconfigurable arithmetic circuit are disclosed, each of which may include input reordering queues; a multiplier shifter and combiner network coupled to the input reordering queues; an accumulator circuit; and a control logic circuit, along with a processor and various interconnection networks. A representative reconfigurable arithmetic circuit has a plurality of operating modes, such as floating point and integer arithmetic modes, logical manipulation modes, Boolean logic, shift, rotate, conditional operations, and format conversion, and is configurable for a wide variety of multiplication modes. Dedicated routing connecting multiplier adder trees allows multiple reconfigurable arithmetic circuits to be reconfigurably combined, in pair or quad configurations, for larger adders, complex multiplies and general sum of products use, for example.

Classes IPC  ?

  • G06F 5/01 - Procédés ou dispositions pour la conversion de données, sans modification de l'ordre ou du contenu des données maniées pour le décalage, p. ex. la justification, le changement d'échelle, la normalisation
  • G06F 7/544 - Méthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs n'établissant pas de contact, p. ex. tube, dispositif à l'état solideMéthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs non spécifiés pour l'évaluation de fonctions par calcul
  • G06F 15/80 - Architectures de calculateurs universels à programmes enregistrés comprenant un ensemble d'unités de traitement à commande commune, p. ex. plusieurs processeurs de données à instruction unique
  • G06F 7/523 - Multiplication uniquement
  • G06F 7/50 - AdditionSoustraction
  • H03K 19/21 - Circuits OU EXCLUSIF, c.-à-d. donnant un signal de sortie si un signal n'existe qu'à une seule entréeCircuits à COÏNCIDENCES, c.-à-d. ne donnant un signal de sortie que si tous les signaux d'entrée sont identiques
  • G06F 9/48 - Lancement de programmes Commutation de programmes, p. ex. par interruption
  • G06F 9/54 - Communication interprogramme
  • G06F 9/30 - Dispositions pour exécuter des instructions machines, p. ex. décodage d'instructions
  • G06F 7/487 - MultiplicationDivision
  • G06F 7/52 - MultiplicationDivision
  • G06F 9/38 - Exécution simultanée d'instructions, p. ex. pipeline ou lecture en mémoire

43.

Reconfigurable processor circuit architecture

      
Numéro d'application 17015973
Numéro de brevet 11494331
Statut Délivré - en vigueur
Date de dépôt 2020-09-09
Date de la première publication 2021-03-11
Date d'octroi 2022-11-08
Propriétaire Cornami, Inc. (USA)
Inventeur(s)
  • Master, Paul L.
  • Knapp, Steven K.
  • Andraka, Raymond J.
  • Beliaev, Alexei
  • Franz, Martin A.
  • Meessen, Rene
  • Furtek, Frederick Curtis

Abrégé

A representative reconfigurable processing circuit and a reconfigurable arithmetic circuit are disclosed, each of which may include input reordering queues; a multiplier shifter and combiner network coupled to the input reordering queues; an accumulator circuit; and a control logic circuit, along with a processor and various interconnection networks. A representative reconfigurable arithmetic circuit has a plurality of operating modes, such as floating point and integer arithmetic modes, logical manipulation modes, Boolean logic, shift, rotate, conditional operations, and format conversion, and is configurable for a wide variety of multiplication modes. Dedicated routing connecting multiplier adder trees allows multiple reconfigurable arithmetic circuits to be reconfigurably combined, in pair or quad configurations, for larger adders, complex multiplies and general sum of products use, for example.

Classes IPC  ?

  • G06F 21/44 - Authentification de programme ou de dispositif
  • G06F 15/78 - Architectures de calculateurs universels à programmes enregistrés comprenant une seule unité centrale
  • G06F 15/80 - Architectures de calculateurs universels à programmes enregistrés comprenant un ensemble d'unités de traitement à commande commune, p. ex. plusieurs processeurs de données à instruction unique
  • G06F 7/523 - Multiplication uniquement
  • G06F 7/50 - AdditionSoustraction
  • G06F 9/38 - Exécution simultanée d'instructions, p. ex. pipeline ou lecture en mémoire
  • H03K 19/21 - Circuits OU EXCLUSIF, c.-à-d. donnant un signal de sortie si un signal n'existe qu'à une seule entréeCircuits à COÏNCIDENCES, c.-à-d. ne donnant un signal de sortie que si tous les signaux d'entrée sont identiques
  • G06F 9/48 - Lancement de programmes Commutation de programmes, p. ex. par interruption
  • G06F 9/54 - Communication interprogramme
  • G06F 5/01 - Procédés ou dispositions pour la conversion de données, sans modification de l'ordre ou du contenu des données maniées pour le décalage, p. ex. la justification, le changement d'échelle, la normalisation
  • G06F 9/30 - Dispositions pour exécuter des instructions machines, p. ex. décodage d'instructions
  • G06F 7/487 - MultiplicationDivision
  • G06F 7/52 - MultiplicationDivision
  • G06F 7/544 - Méthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs n'établissant pas de contact, p. ex. tube, dispositif à l'état solideMéthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs non spécifiés pour l'évaluation de fonctions par calcul

44.

CONFIGURING A REDUCED INSTRUCTION SET COMPUTER PROCESSOR ARCHITECTURE TO EXECUTE A FULLY HOMOMORPHIC ENCRYPTION ALGORITHM

      
Numéro d'application US2020044944
Numéro de publication 2021/026196
Statut Délivré - en vigueur
Date de dépôt 2020-08-05
Date de publication 2021-02-11
Propriétaire CORNAMI INC. (USA)
Inventeur(s)
  • Kreeger, Morris Jacob
  • Liu, Tianfang
  • Furtek, Frederick
  • Master, Paul L.

Abrégé

Systems and methods for configuring a reduced instruction set computer processor architecture to execute fully homomorphic encryption (FHE) logic gates as a streaming topology. The method includes parsing sequential FHE logic gate code, transforming the FHE logic gate code into a set of code modules that each have in input and an output that is a function of the input and which do not pass control to other functions, creating a node wrapper around each code module, configuring at least one of the primary processing cores to implement the logic element equivalents of each element in a manner which operates in a streaming mode wherein data streams out of corresponding arithmetic logic units into the main memory and other ones of the plurality arithmetic logic units.

Classes IPC  ?

  • H04L 9/00 - Dispositions pour les communications secrètes ou protégéesProtocoles réseaux de sécurité
  • G06F 9/30 - Dispositions pour exécuter des instructions machines, p. ex. décodage d'instructions

45.

Method and apparatus for configuring a reduced instruction set computer processor architecture to execute a fully homomorphic encryption algorithm

      
Numéro d'application 16743257
Numéro de brevet 11693662
Statut Délivré - en vigueur
Date de dépôt 2020-01-15
Date de la première publication 2020-07-02
Date d'octroi 2023-07-04
Propriétaire CORNAMI INC. (USA)
Inventeur(s)
  • Creeger, Morris Jacob
  • Liu, Tianfang
  • Furtek, Frederick
  • Master, Paul L.

Abrégé

Systems and methods for configuring a reduced instruction set computer processor architecture to execute fully homomorphic encryption (FHE) logic gates as a streaming topology. The method includes parsing sequential FHE logic gate code, transforming the FHE logic gate code into a set of code modules that each have in input and an output that is a function of the input and which do not pass control to other functions, creating a node wrapper around each code module, configuring at least one of the primary processing cores to implement the logic element equivalents of each element in a manner which operates in a streaming mode wherein data streams out of corresponding arithmetic logic units into the main memory and other ones of the plurality arithmetic logic units.

Classes IPC  ?

  • G06F 7/48 - Méthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs n'établissant pas de contact, p. ex. tube, dispositif à l'état solideMéthodes ou dispositions pour effectuer des calculs en utilisant exclusivement une représentation numérique codée, p. ex. en utilisant une représentation binaire, ternaire, décimale utilisant des dispositifs non spécifiés
  • G06F 17/14 - Transformations de Fourier, de Walsh ou transformations d'espace analogues
  • G06F 9/38 - Exécution simultanée d'instructions, p. ex. pipeline ou lecture en mémoire
  • G06F 8/41 - Compilation

46.

Reconfigurable reduced instruction set computer processor architecture with fractured cores

      
Numéro d'application 15970915
Numéro de brevet 11294851
Statut Délivré - en vigueur
Date de dépôt 2018-05-04
Date de la première publication 2019-11-07
Date d'octroi 2022-04-05
Propriétaire Cornami, Inc. (USA)
Inventeur(s)
  • Master, Paul L.
  • Furtek, Frederick
  • Franz, Ii, Martin Alan
  • Andraka Pe, Raymond J.

Abrégé

Systems and methods for reconfiguring a reduced instruction set computer processor architecture are disclosed. Exemplary implementations may: provide a primary processing core consisting of a RISC processor; provide a node wrapper associated with each of the plurality of secondary cores, the node wrapper comprising access memory associates with each secondary core, and a load/unload matrix associated with each secondary core; operate the architecture in a manner in which, for at least one core, data is read from and written to the at least cache memory in a control-centric mode; the secondary cores are selectively partitioned to operate in a streaming mode wherein data streams out of the corresponding secondary core into the main memory and other ones of the plurality of secondary cores.

Classes IPC  ?

  • G06F 9/30 - Dispositions pour exécuter des instructions machines, p. ex. décodage d'instructions
  • G06F 15/78 - Architectures de calculateurs universels à programmes enregistrés comprenant une seule unité centrale
  • G06F 15/80 - Architectures de calculateurs universels à programmes enregistrés comprenant un ensemble d'unités de traitement à commande commune, p. ex. plusieurs processeurs de données à instruction unique
  • G06F 7/57 - Unités arithmétiques et logiques [UAL], c.-à-d. dispositions ou dispositifs pour accomplir plusieurs des opérations couvertes par les groupes ou pour accomplir des opérations logiques

47.

FRACTLCORE

      
Numéro de série 88682393
Statut Enregistrée
Date de dépôt 2019-11-06
Date d'enregistrement 2024-09-17
Propriétaire Cornami, Inc. ()
Classes de Nice  ? 09 - Appareils et instruments scientifiques et électriques

Produits et services

Integrated circuits, digital signal processors and data processors having a processor core configured into a plurality of computational units and state machines for use in instruction processing and data flow operations

48.

TRUSTREAM

      
Numéro de série 88468114
Statut Enregistrée
Date de dépôt 2019-06-11
Date d'enregistrement 2020-11-10
Propriétaire Cornami, Inc. ()
Classes de Nice  ? 09 - Appareils et instruments scientifiques et électriques

Produits et services

Computer hardware, downloadable software, downloadable software programming models and programming language, and downloadable software development kits (SDKs), all for programming and configuring integrated circuits and processors for instruction processing and data flow operations, configuration of processor cores into a plurality of computational units for instruction processing and data flow operations, for use in the fields of artificial intelligence, machine learning, neural networks, deep learning, deep neural networks, database processing, edge processing, Internet of Things, security, biometrics, and predictive technology

49.

CORNAMI

      
Numéro de série 88460895
Statut Enregistrée
Date de dépôt 2019-06-05
Date d'enregistrement 2021-02-02
Propriétaire Cornami, Inc. ()
Classes de Nice  ? 42 - Services scientifiques, technologiques et industriels, recherche et conception

Produits et services

Design and development of computer hardware and software; Product research, development, design, and engineering of integrated circuits, processors, semiconductor processors, electronic circuit boards, rack-mountable chassis having processors, software-configurable processors, software development kits (SDKs), cloud computing software, software platform for software development featuring software development kits (SDKs), software and software-programmable models all for programming and configuring integrated circuits and processors for instruction processing and data flow operations for use in the fields of artificial intelligence, machine learning, neural networks, deep learning, deep neural networks, database processing, edge processing, Internet of Things, security, biometrics, and predictive technology; Design, development, customization, integration, technical support, namely, monitoring of technological functions of computer systems, and maintenance of computer software; Providing temporary use of on-line non-downloadable software and on-line non-downloadable software programs all for use in programming and configuring integrated circuits and processors for instruction processing and data flow operations for use in the fields of artificial intelligence, machine learning, neural networks, deep learning, deep neural networks, database processing, edge processing, Internet of Things, security, biometrics, and predictive technology

50.

Method and apparatus for a multi-core system for implementing stream-based computations having inputs from multiple streams

      
Numéro d'application 16126918
Numéro de brevet 11055103
Statut Délivré - en vigueur
Date de dépôt 2018-09-10
Date de la première publication 2019-01-03
Date d'octroi 2021-07-06
Propriétaire Cornami, Inc. (USA)
Inventeur(s)
  • Furtek, Frederick
  • Master, Paul

Abrégé

A method and system of efficient use and programming of a multi-processing core device. The system includes a programming construct that is based on stream-domain code. A programmable core based computing device is disclosed. The computing device includes a plurality of processing cores coupled to each other. A memory stores stream-domain code including a stream defining a stream destination module and a stream source module. The stream source module places data values in the stream and the stream conveys data values from the stream source module to the stream destination module. A runtime system detects when the data values are available to the stream destination module and schedules the stream destination module for execution on one of the plurality of processing cores.

Classes IPC  ?

  • G06F 9/46 - Dispositions pour la multiprogrammation
  • G06F 9/38 - Exécution simultanée d'instructions, p. ex. pipeline ou lecture en mémoire
  • G06F 9/50 - Allocation de ressources, p. ex. de l'unité centrale de traitement [UCT]
  • G06F 15/173 - Communication entre processeurs utilisant un réseau d'interconnexion, p. ex. matriciel, de réarrangement, pyramidal, en étoile ou ramifié
  • G06F 9/48 - Lancement de programmes Commutation de programmes, p. ex. par interruption

51.

Parallel processing of data having data dependencies for accelerating the launch and performance of operating systems and other computing applications

      
Numéro d'application 16108356
Numéro de brevet 10685023
Statut Délivré - en vigueur
Date de dépôt 2018-08-22
Date de la première publication 2018-12-13
Date d'octroi 2020-06-16
Propriétaire Cornami, Inc. (USA)
Inventeur(s)
  • Master, Paul L.
  • Furtek, Frederick Curtis
  • Knuttila, Kim
  • Mcgann, L. Brian

Abrégé

Representative embodiments are disclosed for a rapid and highly parallel decompression of compressed executable and other files, such as executable files for operating systems and applications, having compressed blocks including run length encoded (“RLE”) data having data-dependent references. An exemplary embodiment includes a plurality of processors or processor cores to identify a start or end of each compressed block; to partially decompress, in parallel, a selected compressed block into independent data, dependent (RLE) data, and linked dependent (RLE) data; to sequence the independent data, dependent (RLE) data, and linked dependent (RLE) data from a plurality of partial decompressions of a plurality of compressed blocks, to obtain data specified by the dependent (RLE) data and linked dependent (RLE) data, and to insert the obtained data into a corresponding location in an uncompressed file. The representative embodiments are also applicable to other types of data processing for applications having data dependencies.

Classes IPC  ?

  • G06F 16/2455 - Exécution des requêtes
  • H03M 7/46 - Conversion en, ou à partir de codes à longueur de série, c.-à-d. par représentation du nombre de chiffres successifs ou groupes de chiffres de même type à l'aide d'un mot-code et d'un chiffre représentant ce type
  • G06F 3/06 - Entrée numérique à partir de, ou sortie numérique vers des supports d'enregistrement
  • H03M 7/30 - CompressionExpansionÉlimination de données inutiles, p. ex. réduction de redondance
  • H03M 7/40 - Conversion en, ou à partir de codes de longueur variable, p. ex. code Shannon-Fano, code Huffman, code Morse
  • H03M 7/42 - Conversion en, ou à partir de codes de longueur variable, p. ex. code Shannon-Fano, code Huffman, code Morse utilisant une table pour le procédé de codage ou de décodage, p. ex. utilisant une mémoire morte

52.

Method, apparatus, and computer-readable medium for parallelization of a computer program on a plurality of computing cores

      
Numéro d'application 16004799
Numéro de brevet 11853256
Statut Délivré - en vigueur
Date de dépôt 2018-06-11
Date de la première publication 2018-10-11
Date d'octroi 2023-12-26
Propriétaire CORNAMI, INC. (USA)
Inventeur(s)
  • Harsha, Solomon
  • Master, Paul

Abrégé

An apparatus, computer-readable medium, and computer-implemented method for parallelization of a computer program on a plurality of computing cores includes receiving a computer program comprising a plurality of commands, decomposing the plurality of commands into a plurality of node networks, each node network corresponding to a command in the plurality of commands and including one or more nodes corresponding to execution dependencies of the command, mapping the plurality of node networks to a plurality of systolic arrays, each systolic array comprising a plurality of cells and each non-data node in each node network being mapped to a cell in the plurality of cells, and mapping each cell in each systolic array to a computing core in the plurality of computing cores.

Classes IPC  ?

  • G06F 15/80 - Architectures de calculateurs universels à programmes enregistrés comprenant un ensemble d'unités de traitement à commande commune, p. ex. plusieurs processeurs de données à instruction unique
  • G06F 8/41 - Compilation
  • G06Q 40/00 - FinanceAssuranceStratégies fiscalesTraitement des impôts sur les sociétés ou sur le revenu

53.

Method and apparatus for a compiler and related components for stream-based computations for a general-purpose, multiple-core system

      
Numéro d'application 15943032
Numéro de brevet 10318260
Statut Délivré - en vigueur
Date de dépôt 2018-04-02
Date de la première publication 2018-08-09
Date d'octroi 2019-06-11
Propriétaire CORNAMI, INC. (USA)
Inventeur(s)
  • Furtek, Frederick
  • Master, Paul

Abrégé

A method and system of compiling and linking source stream programs for efficient use of multi-node devices. The system includes a compiler, a linker, a loader and a runtime component. The process converts a source code stream program to a compiled object code that is used with a programmable node based computing device having a plurality of processing nodes coupled to each other. The programming modules include stream statements for input values and output values in the form of sources and destinations for at least one of the plurality of processing nodes and stream statements that determine the streaming flow of values for the at least one of the plurality of processing nodes. The compiler converts the source code stream based program to object modules, object module instances and executables. The linker matches the object module instances to at least one of the multiple cores. The loader loads the tasks required by the object modules in the nodes and configure the nodes matched with the object module instances. The runtime component runs the converted program.

Classes IPC  ?

  • G06F 9/445 - Chargement ou démarrage de programme
  • G06F 8/41 - Compilation
  • G06F 9/38 - Exécution simultanée d'instructions, p. ex. pipeline ou lecture en mémoire
  • G06F 8/54 - Édition de liens avant le chargement

54.

Method, apparatus, and computer-readable medium for parallelization of a computer program on a plurality of computing cores

      
Numéro d'application 15480411
Numéro de brevet 10019410
Statut Délivré - en vigueur
Date de dépôt 2017-04-06
Date de la première publication 2018-04-05
Date d'octroi 2018-07-10
Propriétaire CORNAMI, INC. (USA)
Inventeur(s)
  • Harsha, Solomon
  • Master, Paul

Abrégé

An apparatus, computer-readable medium, and computer-implemented method for parallelization of a computer program on a plurality of computing cores includes receiving a computer program comprising a plurality of commands, decomposing the plurality of commands into a plurality of node networks, each node network corresponding to a command in the plurality of commands and including one or more nodes corresponding to execution dependencies of the command, mapping the plurality of node networks to a plurality of systolic arrays, each systolic array comprising a plurality of cells and each non-data node in each node network being mapped to a cell in the plurality of cells, and mapping each cell in each systolic array to a computing core in the plurality of computing cores.

Classes IPC  ?

  • G06F 15/80 - Architectures de calculateurs universels à programmes enregistrés comprenant un ensemble d'unités de traitement à commande commune, p. ex. plusieurs processeurs de données à instruction unique
  • G06Q 40/00 - FinanceAssuranceStratégies fiscalesTraitement des impôts sur les sociétés ou sur le revenu
  • G06F 8/41 - Compilation

55.

Parallel processing of data having data dependencies for accelerating the launch and performance of operating systems and other computing applications

      
Numéro d'application 15493510
Numéro de brevet 10083209
Statut Délivré - en vigueur
Date de dépôt 2017-04-21
Date de la première publication 2017-08-03
Date d'octroi 2018-09-25
Propriétaire Cornami, Inc. (USA)
Inventeur(s)
  • Master, Paul L.
  • Furtek, Frederick Curtis
  • Knuttila, Kim
  • Mcgann, L. Brian

Abrégé

Representative embodiments are disclosed for a rapid and highly parallel decompression of compressed executable and other files, such as executable files for operating systems and applications, having compressed blocks including run length encoded (“RLE”) data having data-dependent references. An exemplary embodiment includes a plurality of processors or processor cores to identify a start or end of each compressed block; to partially decompress, in parallel, a selected compressed block into independent data, dependent (RLE) data, and linked dependent (RLE) data; to sequence the independent data, dependent (RLE) data, and linked dependent (RLE) data from a plurality of partial decompressions of a plurality of compressed blocks, to obtain data specified by the dependent (RLE) data and linked dependent (RLE) data, and to insert the obtained data into a corresponding location in an uncompressed file. The representative embodiments are also applicable to other types of data processing for applications having data dependencies.

Classes IPC  ?

  • H03M 7/40 - Conversion en, ou à partir de codes de longueur variable, p. ex. code Shannon-Fano, code Huffman, code Morse
  • G06F 17/30 - Recherche documentaire; Structures de bases de données à cet effet
  • H03M 7/46 - Conversion en, ou à partir de codes à longueur de série, c.-à-d. par représentation du nombre de chiffres successifs ou groupes de chiffres de même type à l'aide d'un mot-code et d'un chiffre représentant ce type
  • H03M 7/42 - Conversion en, ou à partir de codes de longueur variable, p. ex. code Shannon-Fano, code Huffman, code Morse utilisant une table pour le procédé de codage ou de décodage, p. ex. utilisant une mémoire morte

56.

Method, apparatus, and computer-readable medium for parallelization of a computer program on a plurality of computing cores

      
Numéro d'application 15480412
Numéro de brevet 09760531
Statut Délivré - en vigueur
Date de dépôt 2017-04-06
Date de la première publication 2017-07-27
Date d'octroi 2017-09-12
Propriétaire CORNAMI, INC. (USA)
Inventeur(s)
  • Harsha, Solomon
  • Master, Paul

Abrégé

An apparatus, computer-readable medium, and computer-implemented method for parallelization of a computer program on a plurality of computing cores includes receiving a computer program comprising a plurality of commands, decomposing the plurality of commands into a plurality of node networks, each node network corresponding to a command in the plurality of commands and including one or more nodes corresponding to execution dependencies of the command, mapping the plurality of node networks to a plurality of systolic arrays, each systolic array comprising a plurality of cells and each non-data node in each node network being mapped to a cell in the plurality of cells, and mapping each cell in each systolic array to a computing core in the plurality of computing cores.

Classes IPC  ?

  • G06F 15/80 - Architectures de calculateurs universels à programmes enregistrés comprenant un ensemble d'unités de traitement à commande commune, p. ex. plusieurs processeurs de données à instruction unique
  • G06Q 40/00 - FinanceAssuranceStratégies fiscalesTraitement des impôts sur les sociétés ou sur le revenu
  • G06F 9/45 - Compilation ou interprétation de langages de programmation évolués

57.

Method, apparatus, and computer-readable medium for parallelization of a computer program on a plurality of computing cores

      
Numéro d'application 15476598
Numéro de brevet 09760530
Statut Délivré - en vigueur
Date de dépôt 2017-03-31
Date de la première publication 2017-07-20
Date d'octroi 2017-09-12
Propriétaire CORNAMI, INC. (USA)
Inventeur(s)
  • Harsha, Solomon
  • Master, Paul

Abrégé

An apparatus, computer-readable medium, and computer-implemented method for parallelization of a computer program on a plurality of computing cores includes receiving a computer program comprising a plurality of commands, decomposing the plurality of commands into a plurality of node networks, each node network corresponding to a command in the plurality of commands and including one or more nodes corresponding to execution dependencies of the command, mapping the plurality of node networks to a plurality of systolic arrays, each systolic array comprising a plurality of cells and each non-data node in each node network being mapped to a cell in the plurality of cells, and mapping each cell in each systolic array to a computing core in the plurality of computing cores.

Classes IPC  ?

  • G06F 15/80 - Architectures de calculateurs universels à programmes enregistrés comprenant un ensemble d'unités de traitement à commande commune, p. ex. plusieurs processeurs de données à instruction unique
  • G06F 9/45 - Compilation ou interprétation de langages de programmation évolués
  • G06Q 40/00 - FinanceAssuranceStratégies fiscalesTraitement des impôts sur les sociétés ou sur le revenu

58.

Method, apparatus, and computer-readable medium for parallelization of a computer program on a plurality of computing cores

      
Numéro d'application 15296681
Numéro de brevet 09652435
Statut Délivré - en vigueur
Date de dépôt 2016-10-18
Date de la première publication 2017-03-30
Date d'octroi 2017-05-16
Propriétaire CORNAMI, INC. (USA)
Inventeur(s)
  • Harsha, Solomon
  • Master, Paul

Abrégé

An apparatus, computer-readable medium, and computer-implemented method for parallelization of a computer program on a plurality of computing cores includes receiving a computer program comprising a plurality of commands, decomposing the plurality of commands into a plurality of node networks, each node network corresponding to a command in the plurality of commands and including one or more nodes corresponding to execution dependencies of the command, mapping the plurality of node networks to a plurality of systolic arrays, each systolic array comprising a plurality of cells and each non-data node in each node network being mapped to a cell in the plurality of cells, and mapping each cell in each systolic array to a computing core in the plurality of computing cores.

Classes IPC  ?

  • G06F 15/80 - Architectures de calculateurs universels à programmes enregistrés comprenant un ensemble d'unités de traitement à commande commune, p. ex. plusieurs processeurs de données à instruction unique
  • G06F 9/45 - Compilation ou interprétation de langages de programmation évolués
  • G06Q 40/00 - FinanceAssuranceStratégies fiscalesTraitement des impôts sur les sociétés ou sur le revenu

59.

Parallel processing of data having data dependencies for accelerating the launch and performance of operating systems and other computing applications

      
Numéro d'application 15096908
Numéro de brevet 09647686
Statut Délivré - en vigueur
Date de dépôt 2016-04-12
Date de la première publication 2016-08-04
Date d'octroi 2017-05-09
Propriétaire Cornami, Inc. (USA)
Inventeur(s)
  • Master, Paul L.
  • Furtek, Frederick Curtis
  • Knuttila, Kim
  • Mcgann, L. Brian

Abrégé

Representative embodiments are disclosed for a rapid and highly parallel decompression of compressed executable and other files, such as executable files for operating systems and applications, having compressed blocks including run length encoded (“RLE”) data having data-dependent references. An exemplary embodiment includes a plurality of processors or processor cores to identify a start or end of each compressed block; to partially decompress, in parallel, a selected compressed block into independent data, dependent (RLE) data, and linked dependent (RLE) data; to sequence the independent data, dependent (RLE) data, and linked dependent (RLE) data from a plurality of partial decompressions of a plurality of compressed blocks, to obtain data specified by the dependent (RLE) data and linked dependent (RLE) data, and to insert the obtained data into a corresponding location in an uncompressed file. The representative embodiments are also applicable to other types of data processing for applications having data dependencies.

Classes IPC  ?

  • H03M 7/40 - Conversion en, ou à partir de codes de longueur variable, p. ex. code Shannon-Fano, code Huffman, code Morse
  • H03M 7/30 - CompressionExpansionÉlimination de données inutiles, p. ex. réduction de redondance
  • H03M 7/46 - Conversion en, ou à partir de codes à longueur de série, c.-à-d. par représentation du nombre de chiffres successifs ou groupes de chiffres de même type à l'aide d'un mot-code et d'un chiffre représentant ce type
  • G06F 3/06 - Entrée numérique à partir de, ou sortie numérique vers des supports d'enregistrement

60.

Method and apparatus for a compiler and related components for stream-based computations for a general-purpose, multiple-core system

      
Numéro d'application 14825827
Numéro de brevet 09934011
Statut Délivré - en vigueur
Date de dépôt 2015-08-13
Date de la première publication 2015-12-03
Date d'octroi 2018-04-03
Propriétaire CORNAMI, INC. (USA)
Inventeur(s)
  • Master, Paul
  • Furtek, Frederick

Abrégé

A method and system of compiling and linking source stream programs for efficient use of multi-node devices. The system includes a compiler, a linker, a loader and a runtime component. The process converts a source code stream program to a compiled object code that is used with a programmable node based computing device having a plurality of processing nodes coupled to each other. The programming modules include stream statements for input values and output values in the form of sources and destinations for at least one of the plurality of processing nodes and stream statements that determine the streaming flow of values for the at least one of the plurality of processing nodes. The compiler converts the source code stream based program to object modules, object module instances and executables. The linker matches the object module instances to at least one of the multiple cores. The loader loads the tasks required by the object modules in the nodes and configure the nodes matched with the object module instances. The runtime component runs the converted program.

Classes IPC  ?

  • G06F 9/44 - Dispositions pour exécuter des programmes spécifiques
  • G06F 9/45 - Compilation ou interprétation de langages de programmation évolués
  • G06F 9/38 - Exécution simultanée d'instructions, p. ex. pipeline ou lecture en mémoire
  • G06F 9/445 - Chargement ou démarrage de programme

61.

Method, apparatus, and computer-readable medium for parallelization of a computer program on a plurality of computing cores

      
Numéro d'application 14483086
Numéro de brevet 09501449
Statut Délivré - en vigueur
Date de dépôt 2014-09-10
Date de la première publication 2015-03-12
Date d'octroi 2016-11-22
Propriétaire CORNAMI, INC. (USA)
Inventeur(s)
  • Harsha, Solomon
  • Master, Paul

Abrégé

An apparatus, computer-readable medium, and computer-implemented method for parallelization of a computer program on a plurality of computing cores includes receiving a computer program comprising a plurality of commands, decomposing the plurality of commands into a plurality of node networks, each node network corresponding to a command in the plurality of commands and including one or more nodes corresponding to execution dependencies of the command, mapping the plurality of node networks to a plurality of systolic arrays, each systolic array comprising a plurality of cells and each non-data node in each node network being mapped to a cell in the plurality of cells, and mapping each cell in each systolic array to a computing core in the plurality of computing cores.

Classes IPC  ?

  • G06F 15/80 - Architectures de calculateurs universels à programmes enregistrés comprenant un ensemble d'unités de traitement à commande commune, p. ex. plusieurs processeurs de données à instruction unique
  • G06F 9/45 - Compilation ou interprétation de langages de programmation évolués
  • G06Q 40/00 - FinanceAssuranceStratégies fiscalesTraitement des impôts sur les sociétés ou sur le revenu

62.

Method and apparatus for a general-purpose multiple-core system for implementing stream-based computations

      
Numéro d'application 14492705
Numéro de brevet 10073700
Statut Délivré - en vigueur
Date de dépôt 2014-09-22
Date de la première publication 2015-01-08
Date d'octroi 2018-09-11
Propriétaire Cornami, Inc. (USA)
Inventeur(s)
  • Furtek, Frederick
  • Master, Paul

Abrégé

A method and system of efficient use and programming of a multi-processing core device. The system includes a programming construct that is based on stream-domain code. A programmable core based computing device is disclosed. The computing device includes a plurality of processing cores coupled to each other. A memory stores stream-domain code including a stream defining a stream destination module and a stream source module. The stream source module places data values in the stream and the stream conveys data values from the stream source module to the stream destination module. A runtime system detects when the data values are available to the stream destination module and schedules the stream destination module for execution on one of the plurality of processing cores.

Classes IPC  ?

  • G06F 9/46 - Dispositions pour la multiprogrammation
  • G06F 9/45 - Compilation ou interprétation de langages de programmation évolués
  • G06F 15/00 - Calculateurs numériques en généralÉquipement de traitement de données en général
  • G06F 9/38 - Exécution simultanée d'instructions, p. ex. pipeline ou lecture en mémoire
  • G06F 15/173 - Communication entre processeurs utilisant un réseau d'interconnexion, p. ex. matriciel, de réarrangement, pyramidal, en étoile ou ramifié
  • G06F 9/50 - Allocation de ressources, p. ex. de l'unité centrale de traitement [UCT]
  • G06F 9/48 - Lancement de programmes Commutation de programmes, p. ex. par interruption

63.

Method and apparatus for a compiler and related components for stream-based computations for a general-purpose, multiple-core system

      
Numéro d'application 13204164
Numéro de brevet 09110692
Statut Délivré - en vigueur
Date de dépôt 2011-08-05
Date de la première publication 2012-02-09
Date d'octroi 2015-08-18
Propriétaire CORNAMI, INC. (USA)
Inventeur(s)
  • Master, Frederick
  • Master, Paul

Abrégé

A method and system of compiling and linking source stream programs for efficient use of multi-node devices. The system includes a compiler, a linker, a loader and a runtime component. The process converts a source code stream program to a compiled object code that is used with a programmable node based computing device having a plurality of processing nodes coupled to each other. The programming modules include stream statements for input values and output values in the form of sources and destinations for at least one of the plurality of processing nodes and stream statements that determine the streaming flow of values for the at least one of the plurality of processing nodes. The compiler converts the source code stream based program to object modules, object module instances and executables. The linker matches the object module instances to at least one of the multiple cores. The loader loads the tasks required by the object modules in the nodes and configure the nodes matched with the object module instances. The runtime component runs the converted program.

Classes IPC  ?

  • G06F 9/45 - Compilation ou interprétation de langages de programmation évolués
  • G06F 9/38 - Exécution simultanée d'instructions, p. ex. pipeline ou lecture en mémoire

64.

Method and apparatus for a general-purpose, multiple-core system for implementing stream-based computations

      
Numéro d'application 13011763
Numéro de brevet 08843928
Statut Délivré - en vigueur
Date de dépôt 2011-01-21
Date de la première publication 2011-07-21
Date d'octroi 2014-09-23
Propriétaire CORNAMI, INC. (USA)
Inventeur(s)
  • Master, Paul
  • Furtek, Frederick

Abrégé

A method and system of efficient use and programming of a multi-processing core device. The system includes a programming construct that is based on stream-domain code. A programmable core based computing device is disclosed. The computing device includes a plurality of processing cores coupled to each other. A memory stores stream-domain code including a stream defining a stream destination module and a stream source module. The stream source module places data values in the stream and the stream conveys data values from the stream source module to the stream destination module. A runtime system detects when the data values are available to the stream destination module and schedules the stream destination module for execution on one of the plurality of processing cores.

Classes IPC  ?

  • G06F 9/46 - Dispositions pour la multiprogrammation
  • G06F 9/45 - Compilation ou interprétation de langages de programmation évolués
  • G06F 15/76 - Architectures de calculateurs universels à programmes enregistrés
  • G06F 9/40 - Dispositions pour exécuter des sous-programmes, c. à d. des combinaisons de plusieurs instructions
  • G06F 15/173 - Communication entre processeurs utilisant un réseau d'interconnexion, p. ex. matriciel, de réarrangement, pyramidal, en étoile ou ramifié
  • G06F 9/50 - Allocation de ressources, p. ex. de l'unité centrale de traitement [UCT]