Patents by Inventor Ola Hugosson

Ola Hugosson 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: 8959304
    Abstract: A data processing apparatus comprises a primary processor, a secondary processor configured to perform secure data processing operations and non-secure data processing operations and a memory configured to store secure data used by the secondary processor when performing the secure data processing operations and configured to store non-secure data used by the secondary processor when performing the non-secure data processing operations, wherein the secure data cannot be accessed by the non-secure data processing operations, wherein the secondary processor comprises a memory management unit configured to administer accesses to the memory from the secondary processor, the memory management unit configured to perform translations between virtual memory addresses used by the secondary processor and physical memory addresses used by the memory, wherein the translations are configured in dependence on a page table base address, the page table base address identifying a storage location in the memory of a set of des
    Type: Grant
    Filed: February 26, 2013
    Date of Patent: February 17, 2015
    Assignee: ARM Limited
    Inventors: Dominic Hugo Symes, Ola Hugosson, Donald Felton, Sean Tristram Ellis
  • Patent number: 8924686
    Abstract: A data processing apparatus is provided comprising a plurality of master devices configured to issue memory access requests including virtual addresses. A memory management unit is configured to receive memory access requests and to translate a virtual address included in a memory access request from a requesting master device into a physical address indicating a storage location in memory. The memory management unit has an internal storage unit having a plurality of entries wherein indications of corresponding virtual address portions and physical address portions are stored. The memory management unit is configured to select an entry of the internal storage unit in dependence on the virtual address and an identifier of the requesting master device. Conflict between the master devices in their usage of the internal storage unit is thus avoided.
    Type: Grant
    Filed: October 8, 2009
    Date of Patent: December 30, 2014
    Assignee: ARM Limited
    Inventors: Erik Persson, Ola Hugosson, Andreas Björklund
  • Publication number: 20140283117
    Abstract: A data processing apparatus is provided, comprising plural processing units configured to execute plural processes, a storage unit configured to store data required for the plural processes; and a protection unit configured to control access by the plural processes to the storage unit. The protection unit is configured to define an allocated access region of the storage unit for each process of the plural processes, wherein the protection unit is configured to deny access for each the process outside the allocated access region and wherein allocated access regions are defined to be non-overlapping. The protection unit is configured to define each allocated access region as a contiguous portion of the storage unit between a lower region limit and an upper region limit, and the protection unit is configured such that when the lower region limit is modified the lower region limit cannot be decreased and such that when the upper region limit is modified the upper region limit cannot be decreased.
    Type: Application
    Filed: February 5, 2014
    Publication date: September 18, 2014
    Applicant: ARM LIMITED
    Inventors: Ola HUGOSSON, Erik PERSSON, Dominic Hugo SYMES
  • Patent number: 8661225
    Abstract: A data processing apparatus and method and provided for handling vector instructions. The data processing apparatus has a register data store with a plurality of registers arranged to store data elements. A vector processing unit is then used to execute a sequence of vector instructions, with the vector processing unit having a plurality of lanes of parallel processing and having access to the register data store in order to read data elements from, and write data elements to, the register data store during the execution of the sequence of vector instructions. A skip indication storage maintains a skip indicator for each of the lanes of parallel processing. The vector processing unit is responsive to a vector skip instruction to perform an update operation to set within the skip indication storage the skip indicator for a determined one or more lanes.
    Type: Grant
    Filed: January 19, 2010
    Date of Patent: February 25, 2014
    Assignee: ARM Limited
    Inventors: Andreas Björklund, Erik Persson, Ola Hugosson
  • Patent number: 8594177
    Abstract: A video processing apparatus, method and computer program are disclosed. The video processing apparatus comprises: first stage video processing circuitry for receiving a bitstream of compressed encoded video data representing a plurality of frames of video data and configured to perform one or more processing operations on the input compressed video data; analyzing circuitry configured to analyze the processed bitstream and to determine for at least one of the plurality of frames at least one portion of the at least one frame that is not required in the decoding of other frames and to generate at least one indicator indicating the at least one portion.
    Type: Grant
    Filed: August 31, 2010
    Date of Patent: November 26, 2013
    Assignee: ARM Limited
    Inventors: Andreas Björklund, Ola Hugosson
  • Publication number: 20130275701
    Abstract: A data processing apparatus comprises a primary processor, a secondary processor configured to perform secure data processing operations and non-secure data processing operations and a memory configured to store secure data used by the secondary processor when performing the secure data processing operations and configured to store non-secure data used by the secondary processor when performing the non-secure data processing operations, wherein the secure data cannot be accessed by the non-secure data processing operations, wherein the secondary processor comprises a memory management unit configured to administer accesses to the memory from the secondary processor, the memory management unit configured to perform translations between virtual memory addresses used by the secondary processor and physical memory addresses used by the memory, wherein the translations are configured in dependence on a page table base address, the page table base address identifying a storage location in the memory of a set of des
    Type: Application
    Filed: February 26, 2013
    Publication date: October 17, 2013
    Applicant: ARM LIMITED
    Inventors: Dominic Hugo SYMES, Ola HUGOSSON, Donald FELTON, Sean Tristram ELLIS
  • Publication number: 20130276096
    Abstract: A data processing apparatus is configured to perform secure data processing operations and non-secure data processing operations, wherein the apparatus includes a master device with a secure domain and a non-secure domain. Components of the master device operate in the secure domain when performing secure data processing operations and operate in the non-secure domain when performing the non-secure data processing operations. A slave device is configured to perform a delegated data processing operation specified by the master device and a communication bus connecting the master device to the slave device. The delegated operation is initiated by an issuing component in the master device, wherein the slave device includes a security inheritance mechanism configured to cause the delegated operation to inherit a non-secure security status or a secure status depending upon whether the issuing component in the master device is operating in the non-secure domain or the secure domain.
    Type: Application
    Filed: February 26, 2013
    Publication date: October 17, 2013
    Applicant: ARM LIMITED
    Inventors: Dominic Hugo SYMES, Ola HUGOSSON, Donald FELTON, Erik PERSSON
  • Publication number: 20130195352
    Abstract: To encode and compress a data array 30, the data array 30 is first divided into a plurality of blocks 31. A quadtree representation is then generated for each block 31 by initialising each leaf node of the quadtree to the value of the data element of the block 31 of the data array 30 that the leaf node corresponds to, and initialising each non-leaf node to the minimum value of its child nodes, and then subtracting from each node except the root node the value of its parent node. A set of data indicating the differences between respective parent and child node values in the quadtree representing the block of the data array is then generated and stored, together with a set of data representing a quadtree indicating the number of bits that have been used to signal the respective difference values.
    Type: Application
    Filed: August 3, 2012
    Publication date: August 1, 2013
    Inventors: Jorn Nystad, Oskar Flordal, Jeremy Davies, Ola Hugosson
  • Publication number: 20130198485
    Abstract: A data array 20 to be stored is first divided into a plurality of blocks 21. Each block 21 is further sub-divided into a set of sub-blocks 22, and a set of data for each sub-block 22 is then stored in a body data buffer 30. A header data block 23 is stored for each block 21 at a predictable memory address within a header buffer 24. Each header data block contains pointer data indicating the position within the body buffer 30 where the data for the sub-blocks for the block 21 that that header data block 23 relates to is stored, and data indicating the size of the stored data for each respective sub-block 22.
    Type: Application
    Filed: August 3, 2012
    Publication date: August 1, 2013
    Inventors: Jorn Nystad, Ola Hugosson, Oskar Flordal
  • Patent number: 8473717
    Abstract: A data processing apparatus is provided, configured to carry out data processing operations on behalf of a main data processing apparatus, comprising a coprocessor core configured to perform the data processing operations and a reset controller configured to cause the coprocessor core to reset. The coprocessor core performs its data processing in dependence on current configuration data stored therein, the current configuration data being associated with a current processing session. The reset controller is configured to receive pending configuration data from the main data processing apparatus, the pending configuration data associated with a pending processing session, and to store the pending configuration data in a configuration data queue. The reset controller is configured, when the coprocessor core resets, to transfer the pending configuration data from the configuration data queue to be stored in the coprocessor core, replacing the current configuration data.
    Type: Grant
    Filed: February 3, 2010
    Date of Patent: June 25, 2013
    Assignee: ARM Limited
    Inventors: Ola Hugosson, Erik Persson, Pontus Borg
  • Patent number: 8375196
    Abstract: A data processing apparatus includes a vector register bank having a plurality of vector registers, each register including a plurality of storage cells, each cell storing a data element. A vector processing unit is provided for executing a sequence of vector instructions. The processing unit is arranged to issue a set rearrangement enable signal to the vector register bank. The write interface of the vector register bank is modified to provide not only a first input for receiving the data elements generated by the vector processing unit during normal execution, but also has a second input coupled via a data rearrangement path to the matrix of storage cells via which the data elements currently stored in the matrix of storage cells are provided to the write interface in a rearranged form representing the arrangement of data elements that would be obtained by performance of the predetermined rearrangement operation.
    Type: Grant
    Filed: January 19, 2010
    Date of Patent: February 12, 2013
    Assignee: ARM Limited
    Inventors: Andreas Björklund, Erik Persson, Ola Hugosson
  • Publication number: 20130036290
    Abstract: A data array 20 to be stored is first divided into a plurality of blocks 21. Each block 21 is further sub-divided into a set of sub-blocks 22, and a set of data for each sub-block 22 is then stored in one or more body blocks 25. A header data block 23 is stored for each block 21 at a predictable memory address within a header buffer 24. Each header data block contains pointer data indicating the position within a body block 25 where the data for the sub-blocks for the block 21 that that header data block 23 relates to is stored, and data indicating the size of the stored data for each respective sub-block 22.
    Type: Application
    Filed: August 4, 2011
    Publication date: February 7, 2013
    Inventors: Jorn Nystad, Ola Hugosson
  • Publication number: 20120213290
    Abstract: A video decoding apparatus and method are disclosed. The video decoding apparatus comprises at least one parsing unit configured to receive input video data as an encoded video bitstream which contains sequential internal dependencies. The at least one parsing unit is configured to perform a parsing operation on the encoded video bitstream to generate an intermediate representation of the input video data in which at least a subset of the sequential internal dependencies are resolved. The intermediate representation of the input video data can be stored in a buffer. The video decoding apparatus further comprises a reconstruction unit configured to retrieve in parallel a plurality of input streams of the intermediate representation and to perform a decoding operation on the plurality of input streams in parallel to generate decoded output video data.
    Type: Application
    Filed: October 19, 2011
    Publication date: August 23, 2012
    Applicant: ARM Limited
    Inventors: Ola Hugosson, Dominic Hugo Symes
  • Publication number: 20120051437
    Abstract: A video processing apparatus, method and computer program are disclosed. The video processing apparatus comprises: first stage video processing circuitry for receiving a bitstream of compressed encoded video data representing a plurality of frames of video data and configured to perform one or more processing operations on the input compressed video data; analysing circuitry configured to analyse the processed bitstream and to determine for at least one of the plurality of frames at least one portion of the at least one frame that is not required in the decoding of other frames and to generate at least one indicator indicating the at least one portion.
    Type: Application
    Filed: August 31, 2010
    Publication date: March 1, 2012
    Applicant: ARM LIMITED
    Inventors: Andreas Björklund, Ola Hugosson
  • Publication number: 20110206133
    Abstract: A video decoder configured to decode an encoded video bitstream comprises a first parsing unit and a second parsing unit, each configured to independently parse the encoded video bitstream to derive parsing state information therefrom on which subsequent parsing of the encoded video bitstream at least partially depends and to identify macroblock information for decoding. The encoded video bitstream comprises frame header information defining a sequence of frames and each frame is composed of macroblocks represented by macroblock information. A control unit of the video encoder allocates each frame of macroblock information to one of the two parsing units to parse. The two parsing units are both configured to parse frame header information to thereby each derive parsing state information for the encoded video bitstream, and the two parsing unit are each configured to parse macroblock information allocated to them, skipping macroblock information allocated to the other parsing unit.
    Type: Application
    Filed: February 4, 2011
    Publication date: August 25, 2011
    Applicant: ARM LIMITED
    Inventors: Ola Hugosson, Dominic Hugo Symes
  • Publication number: 20110191539
    Abstract: A data processing apparatus is provided, configured to carry out data processing operations on behalf of a main data processing apparatus, comprising a coprocessor core configured to perform the data processing operations and a reset controller configured to cause the coprocessor core to reset. The coprocessor core performs its data processing in dependence on current configuration data stored therein, the current configuration data being associated with a current processing session. The reset controller is configured to receive pending configuration data from the main data processing apparatus, the pending configuration data associated with a pending processing session, and to store the pending configuration data in a configuration data queue. The reset controller is configured, when the coprocessor core resets, to transfer the pending configuration data from the configuration data queue to be stored in the coprocessor core, replacing the current configuration data.
    Type: Application
    Filed: February 3, 2010
    Publication date: August 4, 2011
    Applicant: ARM Limited
    Inventors: Ola Hugosson, Erik Persson, Pontus Borg
  • Publication number: 20110150090
    Abstract: A video encoding apparatus for encoding a video stream comprising: a reference frame cache configured to cache reference frame video data retrieved from a reference frame storage unit in external memory, the reference frame video data cached in the reference frame cache being derived from an individual frame of the video stream; a first source frame storage unit configured to store a first block of unencoded video data taken from a first source frame of the video stream; a second source frame storage unit configured to store a second block of unencoded video data taken from a second source frame of the video stream; a first video encoder configured to perform a first encoding operation to encode the first block of unencoded video data with reference to the reference frame video data cached in the reference frame cache; and a second video encoder configured to perform a second encoding operation to encode said second block of unencoded video data with reference to the reference frame video data cached in the r
    Type: Application
    Filed: December 16, 2010
    Publication date: June 23, 2011
    Applicant: ARM LIMITED
    Inventors: Ola Hugosson, Erik Persson
  • Publication number: 20110087858
    Abstract: A data processing apparatus is provided comprising a plurality of master devices configured to issue memory access requests including virtual addresses. A memory management unit is configured to receive memory access requests and to translate a virtual address included in a memory access request from a requesting master device into a physical address indicating a storage location in memory. The memory management unit has an internal storage unit having a plurality of entries wherein indications of corresponding virtual address portions and physical address portions are stored. The memory management unit is configured to select an entry of the internal storage unit in dependence on the virtual address and an identifier of the requesting master device. Conflict between the master devices in their usage of the internal storage unit is thus avoided.
    Type: Application
    Filed: October 8, 2009
    Publication date: April 14, 2011
    Applicant: ARM Limited
    Inventors: Erik Persson, Ola Hugosson, Andreas Björklund
  • Publication number: 20100313060
    Abstract: A data processing apparatus and method are provided for performing a predetermined rearrangement operation. The data processing apparatus comprises a vector register bank having a plurality of vector registers, with each vector register comprising a plurality of storage cells such that the plurality of vector registers provide a matrix of storage cells. Each storage cell is arranged to store a data element. A vector processing unit is provided for executing a sequence of vector instructions in order to apply operations to the data elements held in the vector register bank. Responsive to a vector matrix rearrangement instruction specifying a predetermined rearrangement operation to be performed on the data elements in the matrix of storage cells, the vector processing unit is arranged to issue a set rearrangement enable signal to the vector register bank.
    Type: Application
    Filed: January 19, 2010
    Publication date: December 9, 2010
    Applicant: ARM LIMITED
    Inventors: Andreas Björklund, Erik Persson, Ola Hugosson
  • Publication number: 20100312988
    Abstract: A data processing apparatus and method and provided for handling vector instructions. The data processing apparatus has a register data store with a plurality of registers arranged to store data elements. A vector processing unit is then used to execute a sequence of vector instructions, with the vector processing unit having a plurality of lanes of parallel processing and having access to the register data store in order to read data elements from, and write data elements to, the register data store during the execution of the sequence of vector instructions. A skip indication storage maintains a skip indicator for each of the lanes of parallel processing. The vector processing unit is responsive to a vector skip instruction to perform an update operation to set within the skip indication storage the skip indicator for a determined one or more lanes.
    Type: Application
    Filed: January 19, 2010
    Publication date: December 9, 2010
    Applicant: ARM LIMITED
    Inventors: Andreas BJÖRKLUND, Erik Persson, Ola Hugosson