Patents by Inventor Tomas Henriksson

Tomas Henriksson 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: 9891840
    Abstract: A method and a resource controller for controlling requests to a shared electronic resource, is described. The requests are arranged in the queue together with a counter which is set to a predetermined start value, the requests are served in an order chosen to take account of the number of commands necessary to process the requests in the queue, the service of each request is performed together with a decrement or increment of the counters for all requests which have been a longer time in the queue than the request that is served, and the request, which has been in the queue for the longest time of the requests in the queue is served when the counter of the that request has reached a predetermined limit value.
    Type: Grant
    Filed: May 4, 2016
    Date of Patent: February 13, 2018
    Assignee: HUAWEI TECHNOLOGIES CO., LTD.
    Inventors: Tomas Henriksson, Darren Barnard
  • Patent number: 9841994
    Abstract: The present invention relates to the implementation for implementing multi-tasking on a digital signal processor. For that purpose blocking functions are arranged such that they do not make use of a processor's hardware stack. Respective function calls are replaced with a piece of inline assembly code, which instead performs a branch to the correct routine for carrying out said function. If a blocking condition of the blocking function is encountered, a task switch can be done to resume another task. While the hardware stack is not used when a task switch might have to occur, mixed-up contents of the hardware stack among function calls performed by different tasks are avoided.
    Type: Grant
    Filed: April 27, 2015
    Date of Patent: December 12, 2017
    Assignee: NXP B.V.
    Inventor: Tomas Henriksson
  • Publication number: 20160246515
    Abstract: A method and a resource controller for controlling requests to a shared electronic resource, is described. The requests are arranged in the queue together with a counter which is set to a predetermined start value, the requests are served in an order chosen to take account of the number of commands necessary to process the requests in the queue, the service of each request is performed together with a decrement or increment of the counters for all requests which have been a longer time in the queue than the request that is served, and the request, which has been in the queue for the longest time of the requests in the queue is served when the counter of the that request has reached a predetermined limit value.
    Type: Application
    Filed: May 4, 2016
    Publication date: August 25, 2016
    Applicant: HUAWEI TECHNOLOGIES CO., LTD.
    Inventors: Tomas HENRIKSSON, Darren BARNARD
  • Patent number: 9246826
    Abstract: The present invention discloses an integrated circuit arrangement (100) comprising a data communication network comprising a plurality of connections (300), a plurality of modules (110) coupled to the data communication network via at least one network interface (120), the network interface comprising a plurality of buffers; a remote service module (150) being coupled to the data communication network via a further network interface (140), wherein each of said modules (1 10) is arranged to provide its network interface (120) with a service request (200) for the remote service module (150), said network interface being arranged to extend said service request with a first identifier (204) for establishing a network connection (300) with a remote service module (150); and a circuit portion (350) comprising a plurality of buffers (142) between the at least one network interface (120) and the remote service module (150) for storing service requests (200) from the plurality of modules (110), said circuit portion co
    Type: Grant
    Filed: November 11, 2009
    Date of Patent: January 26, 2016
    Assignee: Synopsys, Inc.
    Inventors: Tomas Henriksson, Martijn Coenen, Pieter Van Der Wolf, Elisabeth Francisca Maria Steffens
  • Publication number: 20150227390
    Abstract: The present invention relates to the implementation for implementing multi-tasking on a digital signal processor. For that purpose blocking functions are arranged such that they do not make use of a processor's hardware stack. Respective function calls are replaced with a piece of inline assembly code, which instead performs a branch to the correct routine for carrying out said function. If a blocking condition of the blocking function is encountered, a task switch can be done to resume another task. Whilst the hardware stack is not used when a task switch might have to occur, mixed-up contents of the hardware stack among function calls performed by different tasks are avoided.
    Type: Application
    Filed: April 27, 2015
    Publication date: August 13, 2015
    Inventor: Tomas Henriksson
  • Patent number: 9021239
    Abstract: The disclosure relates to the implementation of multi-tasking on a digital signal processor. Blocking functions are arranged such that they do not make use of a processor's hardware stack. Respective function calls are replaced with a piece of inline assembly code, which instead performs a branch to the correct routine for carrying out said function. If a blocking condition of the blocking function is encountered, a task switch can be done to resume another task. Whilst the hardware stack is not used when a task switch might have to occur, mixed-up contents of the hardware stack among function calls performed by different tasks are avoided.
    Type: Grant
    Filed: April 7, 2006
    Date of Patent: April 28, 2015
    Assignee: NXP, B.V.
    Inventor: Tomas Henriksson
  • Patent number: 8949845
    Abstract: A resource controller that includes a first buffer configured to store requests of a first predefined category having a first priority. In addition, the resource controller includes at least a second buffer configured to store requests of a second predefined category having a second priority where the first priority is set such that processing requests of the first category has priority over processing the requests of the second category. Also, the resource controller includes a mechanism configured to block the requests of the first category when a predefined condition is met.
    Type: Grant
    Filed: March 11, 2010
    Date of Patent: February 3, 2015
    Assignee: Synopsys, Inc.
    Inventors: Elisabeth Francisca Maria Steffens, Tomas Henriksson
  • Patent number: 8838863
    Abstract: The present application relates to a method for resource controlling comprising controlling the processing of requests of a first category having a first priority. The method comprises controlling the processing of requests of a second category having a second priority, wherein the first priority is set such that processing the requests of the first category has priority over processing the requests of the second category. The method comprises blocking requests of the first category by a mechanism that detects when a predefined condition regarding the service provided to the second category is met.
    Type: Grant
    Filed: November 9, 2009
    Date of Patent: September 16, 2014
    Assignee: Synopsys, Inc.
    Inventors: Tomas Henriksson, Elisabeth Francisca Maria Steffens
  • Patent number: 8812797
    Abstract: The invention relates to a memory controller for use in a System-on-Chip, wherein the System-on-Chip comprises a plurality of agents and an off-chip volatile memory. The memory controller comprises a first port (CBP) for receiving low-priority requests (CBR) for access to the volatile memory from a first-subset of the plurality of agents and a second port (LLP) for receiving high-priority requests (LLR) for access to the volatile memory from a second-subset of the plurality of agents, wherein the memory controller is configured for arbitrating between the high-priority requests (LLR) and the low-priority requests (CBR), wherein the memory controller is configured for receiving refresh requests (RFR) for the volatile memory via the first port (CBP), wherein the refresh requests (RFR) are time-multiplexed with the low-priority requests (CBR), wherein the memory controller is configured for treating the low-priority requests (CBR) and the refresh requests (RFR) the same.
    Type: Grant
    Filed: August 12, 2010
    Date of Patent: August 19, 2014
    Assignee: NXP, B.V.
    Inventors: Tomas Henriksson, Elisabeth Steffens
  • Patent number: 8713264
    Abstract: Requests from a plurality of different agents (10) are passed to a request handler via a request concentrator. In front of the request concentrator the requests are queued in a plurality of queues (12). A first one of the agents is configured to issue a priority changing command with a defined position relative to pending requests issued by the first one of the agents (10) to the first one of the queues (12). An arbiter (16), makes successive selections selecting queues (12) from which the request concentrator (14) will pass requests to the request handler (18), based on relative priorities assigned to the queues (12). The arbiter (16) responds to the priority changing command by changing the priority of the first one of the queues (12), selectively for a duration while the pending requests up to the defined position are in the first one of the queues (12). Different queues may be provided for read and write requests from the first one of the agents.
    Type: Grant
    Filed: May 30, 2013
    Date of Patent: April 29, 2014
    Assignee: Synopsys, Inc.
    Inventors: Tomas Henriksson, Elisabeth Francisca Maria Steffens
  • Publication number: 20130275662
    Abstract: Requests from a plurality of different agents (10) are passed to a request handler via a request concentrator. In front of the request concentrator the requests are queued in a plurality of queues (12). A first one of the agents is configured to issue a priority changing command with a defined position relative to pending requests issued by the first one of the agents (10) to the first one of the queues (12). An arbiter (16), makes successive selections selecting queues (12) from which the request concentrator (14) will pass requests to the request handler (18), based on relative priorities assigned to the queues (12). The arbiter (16) responds to the priority changing command by changing the priority of the first one of the queues (12), selectively for a duration while the pending requests up to the defined position are in the first one of the queues (12). Different queues may be provided for read and write requests from the first one of the agents.
    Type: Application
    Filed: May 30, 2013
    Publication date: October 17, 2013
    Inventors: Tomas Henriksson, Elisabeth Francisca Maria Steffans
  • Patent number: 8478950
    Abstract: Requests from a plurality of different agents (10) are passed to a request handler via a request concentrator. In front of the request concentrator the requests are queued in a plurality of queues (12). A first one of the agents is configured to issue a priority changing command with a defined position relative to pending requests issued by the first one of the agents (10) to the first one of the queues (12). An arbiter (16), makes successive selections selecting queues (12) from which the request concentrator (14) will pass requests to the request handler (18), based on relative priorities assigned to the queues (12). The arbiter (16) responds to the priority changing command by changing the priority of the first one of the queues (12), selectively for a duration while the pending requests up to the defined position are in the first one of the queues (12). Different queues may be provided for read and write requests from the first one of the agents.
    Type: Grant
    Filed: July 27, 2009
    Date of Patent: July 2, 2013
    Assignee: Synopsys, Inc.
    Inventors: Tomas Henriksson, Elisabeth Francisca Maria Steffens
  • Publication number: 20120226826
    Abstract: The present invention discloses an integrated circuit arrangement (100) comprising a data communication network comprising a plurality of connections (300), a plurality of modules (110) coupled to the data communication network via at least one network interface (120), the network interface comprising a plurality of buffers; a remote service module (150) being coupled to the data communication network via a further network interface (140), wherein each of said modules (110) is arranged to provide its network interface (120) with a service request (200) for the remote service module (150), said network interface being arranged to extend said service request with a first identifier (204) for establishing a network connection (300) with a remote service module (150); and a circuit portion (350) comprising a plurality of buffers (142) between the at least one network interface (120) and the remote service module (150) for storing service requests (200) from the plurality of modules (110), said circuit portion com
    Type: Application
    Filed: November 11, 2009
    Publication date: September 6, 2012
    Applicant: SYNOPSYS, INC.
    Inventors: Tomas Henriksson, Martijn Coenen, Pieter Van Der Wolf, Elisabeth Francisca Maria Steffens
  • Publication number: 20120060169
    Abstract: A resource controller that includes a first buffer configured to store requests of a first predefined category having a first priority. In addition, the resource controller includes at least a second buffer configured to store requests of a second predefined category having a second priority where the first priority is set such that processing requests of the first category has priority over processing the requests of the second category. Also, the resource controller includes a mechanism configured to block the requests of the first category when a predefined condition is met.
    Type: Application
    Filed: March 11, 2010
    Publication date: March 8, 2012
    Applicant: Synopsys, Inc.
    Inventors: Elisabeth Francisca Maria Steffens, Tomas Henriksson
  • Publication number: 20110197038
    Abstract: The invention relates to a method of controlling access of a System-on-Chip to an off-chip memory, wherein the System-on-Chip comprises a plurality of agents which need access to the memory.
    Type: Application
    Filed: September 14, 2010
    Publication date: August 11, 2011
    Applicant: NXP B.V.
    Inventors: Tomas HENRIKSSON, Pieter van der WOLF
  • Publication number: 20110131385
    Abstract: Requests from a plurality of different agents (10) are passed to a request handler via a request concentrator. In front of the request concentrator the requests are queued in a plurality of queues (12). A first one of the agents is configured to issue a priority changing command with a defined position relative to pending requests issued by the first one of the agents (10) to the first one of the queues (12). An arbiter (16), makes successive selections selecting queues (12) from which the request concentrator (14) will pass requests to the request handler (18), based on relative priorities assigned to the queues (12). The arbiter (16) responds to the priority changing command by changing the priority of the first one of the queues (12), selectively for a duration while the pending requests up to the defined position are in the first one of the queues (12). Different queues may be provided for read and write requests from the first one of the agents.
    Type: Application
    Filed: July 27, 2009
    Publication date: June 2, 2011
    Inventors: Tomas Henriksson, Elisabeth Francisca Maria Steffens
  • Publication number: 20110113204
    Abstract: The invention relates to a memory controller for use in a System-on-Chip, wherein the System-on-Chip comprises a plurality of agents and an off-chip volatile memory. The memory controller comprises a first port (CBP) for receiving low-priority requests (CBR) for access to the volatile memory from a first-subset of the plurality of agents and a second port (LLP) for receiving high-priority requests (LLR) for access to the volatile memory from a second-subset of the plurality of agents, wherein the memory controller is configured for arbitrating between the high-priority requests (LLR) and the low-priority requests (CBR), wherein the memory controller is configured for receiving refresh requests (RFR) for the volatile memory via the first port (CBP), wherein the refresh requests (RFR) are time-multiplexed with the low-priority requests (CBR), wherein the memory controller is configured for treating the low-priority requests (CBR) and the refresh requests (RFR) the same.
    Type: Application
    Filed: August 12, 2010
    Publication date: May 12, 2011
    Applicant: NXP B.V.
    Inventors: Tomas Henriksson, Elisabeth Steffens
  • Publication number: 20110055444
    Abstract: The present application relates to a method for resource controlling comprising controlling the processing of requests of a first category having a first priority. The method comprises controlling the processing of requests of a second category having a second priority, wherein the first priority is set such that processing the requests of the first category has priority over processing the requests of the second category. The method comprises blocking requests of the first category by a mechanism that detects when a predefined condition regarding the service provided to the second category is met.
    Type: Application
    Filed: November 9, 2009
    Publication date: March 3, 2011
    Inventors: Tomas Henriksson, Elisabeth Francisca Maria Steffens
  • Publication number: 20090083754
    Abstract: The present invention relates to the implementation for implementing multi-tasking on a digital signal processor. For that purpose blocking functions are arranged such that they do not make use of a processor's hardware stack. Respective function calls are replaced with a piece of inline assembly code, which in stead performs a branch to the correct routine for carrying out said function. If a blocking condition of the blocking function is encountered, a task switch can be done to resume another task. Whilst the hardware stack is not used when a task switch might have to occur, mixed-up contents of the hardware stack among function calls performed by different tasks are avoided.
    Type: Application
    Filed: April 7, 2006
    Publication date: March 26, 2009
    Applicant: NXP B.V.
    Inventor: Tomas Henriksson
  • Patent number: 6963586
    Abstract: A protocol processor for processing first header information of a reception packet to provide instructions for processing second header data of a reception packet is provided. For efficient protocol processing, special hardware architectures are necessary. Hardware architectures for dynamic length input buffer, no penalty conditional jump, one clock-cycle case-based jump, accumulated partial comparison, and integrated layer processing on-the-fly are described. The architectures are used in a domain-specific protocol processor, which is based on program controlled execution. The processor does not operate on data stored in a memory, but on an incoming packet-flow with constant speed. The processor performs every instruction in one clock-cycle, including conditional jump (taken and not taken) and case based jump.
    Type: Grant
    Filed: August 21, 2001
    Date of Patent: November 8, 2005
    Assignee: VIA Technologies, Inc.
    Inventors: Tomas Henriksson, Dake Liu, Harald Bergh