Patents by Inventor Jens Olson
Jens Olson has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 12271608Abstract: A processor to generate accumulated data comprising, for an operation cycle: performing an operation on a first bit range of a set of first input data to generate a set of operation data, which is accumulated with stored data within a first storage device. A lowest n bits of the accumulated data are accumulated with first further stored data within a first bit range of a second storage device, and are bit-shifted from the first storage device. Further accumulated data is generated, comprising, for an operation cycle: performing the operation on a second bit range of the set of first input data to generate a further set of operation data, which is accumulated with the stored data within the first storage device. A lowest m bits of the further accumulated data is accumulated with second further stored data within a second bit range of the second storage device.Type: GrantFiled: January 20, 2023Date of Patent: April 8, 2025Assignee: Arm LimitedInventors: Dominic Hugo Symes, John Wakefield Brothers, III, Jens Olson, Peter Mattias Hansson
-
Patent number: 12072808Abstract: A processor comprising a first storage managed as a circular buffer to store a plurality of data structures. Each data structure comprises: an identifier, a size indicator and first data associated with instructions for execution of a task. The processor is configured for searching for a data structure in the first storage. A data structure subsequent to the tail data structure can be located using a storage address in the first storage of a tail data structure and the size indicator of all data structures preceding the second data structure among the plurality of data structures. When a data structure is found, the task may be executed based at least in part on the first data of the found data structure.Type: GrantFiled: December 8, 2022Date of Patent: August 27, 2024Assignee: Arm LimitedInventors: Jens Olson, Jared Corey Smolens
-
Publication number: 20240248621Abstract: A processor to generate accumulated data comprising, for an operation cycle: performing an operation on a first bit range of a set of first input data to generate a set of operation data, which is accumulated with stored data within a first storage device. A lowest n bits of the accumulated data are accumulated with first further stored data within a first bit range of a second storage device, and are bit-shifted from the first storage device. Further accumulated data is generated, comprising, for an operation cycle: performing the operation on a second bit range of the set of first input data to generate a further set of operation data, which is accumulated with the stored data within the first storage device. A lowest m bits of the further accumulated data is accumulated with second further stored data within a second bit range of the second storage device.Type: ApplicationFiled: January 20, 2023Publication date: July 25, 2024Inventors: Dominic Hugo SYMES, John Wakefield BROTHERS, III, Jens OLSON, Peter Mattias HANSSON
-
Publication number: 20240248755Abstract: A processor comprising: a handling unit; a plurality of components each configured to execute a function. The handling unit can receive a task comprising operations on data in a coordinate space having N dimensions, receive a data structure describing execution of the task and comprising a partially ordered set of data items each associated with instructions usable by the plurality of components when executing the task, each data item is associated with a component among the plurality of components, each data item indicates dimensions of the coordinates space for which changes of coordinate causes the function of the associated component to execute, and dimensions of the coordinate space for which changes of coordinate causes the function of the associated component to store data ready to be used by another component. The handling unit iterates over the coordinate space and executes the task using the partially ordered set of data items.Type: ApplicationFiled: January 20, 2023Publication date: July 25, 2024Inventors: Rune HOLM, Jens OLSON, Jared Corey SMOLENS, Dominic Hugo SYMES, Elliot Maurice Simon ROSEMARINE
-
Publication number: 20240248754Abstract: A processor to generate position data indicative of a position within a compressed data stream, wherein, previously, in executing a task, data of the compressed data stream ending at the position has been read by the processor from storage storing the compressed data stream. After reading the data, the processor reads further data of the compressed data stream from the storage, in executing the task, the further data located beyond the position within the compressed data stream. After reading the further data, the processor reads, based on the position data, a portion of the compressed data stream from the storage, in executing the task, starting from the position within the compressed data stream. The processor decompresses the portion of the compressed data stream to generate decompressed data, in executing the task.Type: ApplicationFiled: January 20, 2023Publication date: July 25, 2024Inventors: Elliot Maurice Simon ROSEMARINE, Jared Corey SMOLENS, Rune HOLM, John Wakefield BROTHERS, III, Jens OLSON
-
Publication number: 20240248764Abstract: A memory unit configured for handling task data, the task data describing a task to be executed as a directed acyclic graph of operations, wherein each operation maps to a corresponding execution unit, and wherein each connection between operations in the acyclic graph maps to a corresponding storage element of the execution unit. The task data defines an operation space representing the dimensions of a multi-dimensional arrangement of the connected operations to be executed represented by the data blocks; the memory unit configured to receive a sequence of processing requests comprising the one or more data blocks with each data block assigned a priority value and comprising a block command. The memory unit is configured to arbitrate between the data blocks based upon the priority value and block command to prioritize the sequence of processing requests and wherein the processing requests include writing data to, or reading data from storage.Type: ApplicationFiled: May 12, 2023Publication date: July 25, 2024Inventors: Rune HOLM, Jens OLSON, Elliot Maurice Simon ROSEMARINE, Jared SMOLENS
-
Publication number: 20240193089Abstract: A processor comprising a first storage managed as a circular buffer to store a plurality of data structures. Each data structure comprises: an identifier, a size indicator and first data associated with instructions for execution of a task. The processor is configured for searching for a data structure in the first storage. A data structure subsequent to the tail data structure can be located using a storage address in the first storage of a tail data structure and the size indicator of all data structures preceding the second data structure among the plurality of data structures. When a data structure is found, the task may be executed based at least in part on the first data of the found data structure.Type: ApplicationFiled: December 8, 2022Publication date: June 13, 2024Inventors: Jens OLSON, Jared Corey SMOLENS
-
Publication number: 20240126602Abstract: A processor to execute a plurality of tasks comprising a first task and a second task. At least a part of the first task is to be executed simultaneously with at least a part of the second task. The processor comprises a handling unit to: determine an available portion of a storage available during execution of the part of the first task; determine a mapping between at least one logical address associated with data associated with the part of the second task and a corresponding at least one physical address of the storage corresponding to the available portion; and identify, based on the mapping, the at least one physical address corresponding to the at least one logical address associated with the data, for storing the data in the available portion of the storage.Type: ApplicationFiled: October 17, 2022Publication date: April 18, 2024Inventors: Jens OLSON, John Wakefield BROTHERS, III
-
Patent number: 11948069Abstract: A processor arranged to compress neural network activation data comprising an input module for obtaining neural network activation data. The processor also comprises a block creation module arranged to split the neural network activation data into a plurality of blocks; and a metadata generation module for generating metadata associated with at least one of the plurality of blocks. Based on the metadata generated a selection module selects a compression scheme for each of the plurality of blocks, and a compression module for applying the selected compression scheme to the corresponding block to produce compressed neural network activation data. An output module is also provided for outputting the compressed neural network activation data.Type: GrantFiled: July 22, 2019Date of Patent: April 2, 2024Assignee: Arm LimitedInventors: Lingchuan Meng, John Wakefield Brothers, III, Jens Olson, Jared Corey Smolens, Eric Kunze, Ian Rudolf Bratt
-
Patent number: 11561795Abstract: Herein described is a method of operating an accumulation process in a data processing apparatus. The accumulation process comprises a plurality of accumulations which output a respective plurality of accumulated values, each based on a stored value and a computed value generated by a data processing operation. The method comprises storing a first accumulated value, the first accumulated value being one of said plurality of accumulated values, into a first storage device comprising a plurality of single-bit storage elements; determining that a predetermined trigger has been satisfied with respect to the accumulation process; and in response to the determining, storing at least a portion of a second accumulated value, the second accumulated value being one of said plurality of accumulated values, into a second storage device.Type: GrantFiled: March 30, 2020Date of Patent: January 24, 2023Assignee: Arm LimitedInventors: Jens Olson, John Wakefield Brothers, III, Jared Corey Smolens, Chi-wen Cheng, Daren Croxford, Sharjeel Saeed, Dominic Hugo Symes
-
Patent number: 11410282Abstract: A computer-implemented method of providing a filter (F) in a neural processing unit comprises: receiving input corresponding to target dimensions (XT, YT) of the filter; receiving input corresponding to sub-filter dimensions (X1 . . . n?, Y1 . . . n?) of each of a plurality of sub-filters (SF1 . . . n) implementable in the neural processing unit; and defining the filter (F) as a combination of the plurality of sub-filters (SF1 . . . n), the combination having dimensions that equate to the target dimensions (XT, YT), and wherein the sub-filter dimensions (X1 . . . n?, Y1 . . . n?) of at least two of the sub-filters in the combination are unequal.Type: GrantFiled: March 31, 2020Date of Patent: August 9, 2022Assignee: Arm LimitedInventors: Jens Olson, Suraj Sudhir
-
Publication number: 20210303307Abstract: Herein described is a method of operating an accumulation process in a data processing apparatus. The accumulation process comprises a plurality of accumulations which output a respective plurality of accumulated values, each based on a stored value and a computed value generated by a data processing operation. The method comprises storing a first accumulated value, the first accumulated value being one of said plurality of accumulated values, into a first storage device comprising a plurality of single-bit storage elements; determining that a predetermined trigger has been satisfied with respect to the accumulation process; and in response to the determining, storing at least a portion of a second accumulated value, the second accumulated value being one of said plurality of accumulated values, into a second storage device.Type: ApplicationFiled: March 30, 2020Publication date: September 30, 2021Inventors: Jens OLSON, John Wakefield BROTHERS, III, Jared Corey SMOLENS, Chi-wen CHENG, Daren CROXFORD, Sharjeel SAEED, Dominic Hugo SYMES
-
Publication number: 20210304378Abstract: A computer-implemented method of providing a filter (F) in a neural processing unit comprises: receiving input corresponding to target dimensions (XT, YT) of the filter; receiving input corresponding to sub-filter dimensions (X1 . . . n?, Y1 . . . n?) of each of a plurality of sub-filters (SF1 . . . n) implementable in the neural processing unit; and defining the filter (F) as a combination of the plurality of sub-filters (SF1 . . . n), the combination having dimensions that equate to the target dimensions (XT, YT), and wherein the sub-filter dimensions (X1 . . . n?, Y1 . . . n?) of at least two of the sub-filters in the combination are unequal.Type: ApplicationFiled: March 31, 2020Publication date: September 30, 2021Inventors: Jens OLSON, Suraj SUDHIR
-
Publication number: 20210027148Abstract: A processor arranged to compress neural network activation data comprising an input module for obtaining neural network activation data. The processor also comprises a block creation module arranged to split the neural network activation data into a plurality of blocks; and a metadata generation module for generating metadata associated with at least one of the plurality of blocks. Based on the metadata generated a selection module selects a compression scheme for each of the plurality of blocks, and a compression module for applying the selected compression scheme to the corresponding block to produce compressed neural network activation data. An output module is also provided for outputting the compressed neural network activation data.Type: ApplicationFiled: July 22, 2019Publication date: January 28, 2021Inventors: Lingchuan MENG, John Wakefield BROTHERS, III, Jens OLSON, Jared Corey SMOLENS, Eric KUNZE, Ian Rudolf BRATT
-
Patent number: 9817881Abstract: A method, apparatus, and tangible computer readable medium for processing a Hidden Markov Model (HMM) structure are disclosed herein. For example, the method includes receiving Hidden Markov Model (HMM) information from an external system. The method also includes processing back pointer data and first HMM states scores for one or more NULL states in the HMM information. Second HMM state scores are processed for one or more non-NULL states in the HMM information based on at least one predecessor state. Further, the method includes transferring the second HMM state scores to the external system.Type: GrantFiled: October 16, 2013Date of Patent: November 14, 2017Assignee: Cypress Semiconductor CorporationInventors: Ojas A. Bapat, Richard M. Fastow, Jens Olson, Kenichi Kumatani
-
Patent number: 9530103Abstract: Embodiments include a method, apparatus, and a computer program product for combining results from multiple decoders. For example, the method can include generating a network of paths based on one or more outputs associated with each of the multiple decoders. The network of paths can be scored to find an initial path with the highest path score based on scores associated with the one or more outputs. A weighting factor can be calculated for each of the multiple decoders based on a number of outputs from each of the multiple decoders included in the initial path with the highest path score. Further, the network of paths can be re-scored to find a new path with the highest path score based on the scores associated with the one or more outputs and the weighting factor for each of the multiple decoders.Type: GrantFiled: April 4, 2013Date of Patent: December 27, 2016Assignee: Cypress Semiconductor CorporationInventors: Richard M. Fastow, Jens Olson, Chen Liu, Ojas A. Bapat
-
Patent number: 9514739Abstract: Embodiments of the present invention include an acoustic processing device and a method for traversing a Hidden Markov Model (HMM). The acoustic processing device can include a senone scoring unit (SSU), a memory device, a HMM module, and an interface module. The SSU is configured to receive feature vectors from an external computing device and to calculate senones. The memory device is configured to store the senone scores and HMM information, where the HMM information includes HMM IDs and HMM state scores. The HMM module is configured to traverse the HMM based on the senone scores and the HMM information. Further, the interface module is configured to transfer one or more HMM scoring requests from the external computing device to the HMM module and to transfer the HMM state scores to the external computing device.Type: GrantFiled: December 21, 2012Date of Patent: December 6, 2016Assignee: CYPRESS SEMICONDUCTOR CORPORATIONInventors: Richard M. Fastow, Ojas A. Bapat, Jens Olson
-
Publication number: 20160086603Abstract: A voice activation system is provided. The voice activation system includes a first module configured to receive an audio signal and output an activation signal if an energy characteristic of the audio signal satisfies a threshold stored in a memory, a control module configured to enable or disable a third state using a control signal, and a speech recognition engine coupled to the first module and the control module, the speech recognition engine configured to transition between a first state, a second state, and the third state. The speech recognition engine transitions from the first state to the second state in response to the activation signal and in response to the control signal being disabled. The speech recognition engine transitions from the first state to the third state in response to the activation signal and in response to the control signal being enabled.Type: ApplicationFiled: September 21, 2015Publication date: March 24, 2016Inventors: Stephan Rosner, Chen Liu, Jens Olson
-
Patent number: 9142215Abstract: A voice activation system is provided. The voice activation system includes a first stage configured to output a first activation signal if at least one energy characteristic of a received audio signal satisfies at least one threshold and a second stage configured to transition from a first state to a second state in response to the first activation signal and, when in the second state, to output a second activation signal if at least a portion of a profile of the audio signal substantially matches at least one predetermined profile.Type: GrantFiled: June 15, 2012Date of Patent: September 22, 2015Assignee: Cypress Semiconductor CorporationInventors: Stephan Rosner, Chen Liu, Jens Olson
-
Publication number: 20150106405Abstract: A method, apparatus, and tangible computer readable medium for processing a Hidden Markov Model (HMM) structure are disclosed herein. For example, the method includes receiving Hidden Markov Model (HMM) information from an external system. The method also includes processing back pointer data and first HMM states scores for one or more NULL states in the HMM information. Second HMM state scores are processed for one or more non-NULL states in the HMM information based on at least one predecessor state. Further, the method includes transferring the second HMM state scores to the external system.Type: ApplicationFiled: October 16, 2013Publication date: April 16, 2015Applicant: Spansion LLCInventors: Ojas BAPAT, Richard Fastow, Jens Olson, Kenichi Kumatani