Patents by Inventor Jan Hoogerbrugge

Jan Hoogerbrugge 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: 6785770
    Abstract: A data processing apparatus has a main memory that contains memory locations with mutually different access latencies. Information from the main memory is cached in a cache memory. When cache replacement is needed selection of a cache replacement location depends on differences in the access latencies of the main memory locations for which replaceable cache locations are in use. When an access latency of a main memory location cached in the replaceable cache memory location is relatively smaller than an access latency of other main memory locations cached in other replaceable cache memory locations, the cached data for that main memory location is replaced by preference over data for the other main memory locations, because of its smaller latency.
    Type: Grant
    Filed: June 28, 2001
    Date of Patent: August 31, 2004
    Assignee: Koninklijke Philips Electronics N.V.
    Inventors: Jan Hoogerbrugge, Paul Stravers
  • Patent number: 6721884
    Abstract: A processor contains a configurable functional unit that is capable of executing reconfigurable instructions, whose effect can be redefined at run-time by loading a configuration program. Reconfigurable instructions are selected in combinations of more than one different reconfigurable instruction. A respective configuration program is generated for each combination of instructions. Each time when an instruction from one of the combinations is needed during execution and the configurable functional unit is not configured with the configuration program for that combination, the configuration program for all of the instructions of that combination into the configurable functional unit. The reconfigurable instruction selects which instruction of the combination is executed.
    Type: Grant
    Filed: February 11, 2000
    Date of Patent: April 13, 2004
    Assignee: Konklijke Philips Electronics N.V.
    Inventors: Bernardo De Oliveira Kastrup Pereira, Adrianus J. Bink, Jan Hoogerbrugge
  • Patent number: 6658655
    Abstract: A threaded interpreter (916) is suitable for executing a program comprising a series of program instructions stored in a memory (904). For the execution of a program instruction the threaded interpreter includes a preparatory unit (918) for executing a plurality of preparatory steps making the program instruction available in the threaded interpreter, and an execution unit (920) with one or more machine instructions emulating the program instruction. According to the invention, the threaded interpreter is designed such that during the execution on an instruction-level parallel processor of the series of program instructions machine instructions implementing a first one of the preparatory steps are executed in parallel with machine instructions implementing a second one of the preparatory steps for respective ones of the series of program instructions.
    Type: Grant
    Filed: December 6, 1999
    Date of Patent: December 2, 2003
    Assignee: Koninklijke Philips Electronics N.V.
    Inventors: Jan Hoogerbrugge, Alexander Augusteijn
  • Patent number: 6615333
    Abstract: A data processing device has a circuit for correcting an effect of executing memory access instructions out of order with respect to one another in a pipeline. A detector detects whether a same memory location is addressed by a first and second memory address used to access memory for a first and second memory access instruction that are processing at a predetermined relative distance in the pipeline respectively. A correction circuit modifies data handling in a pipeline stage processing the first memory access instruction when the detector signals the addressing of the same memory location and the first and/or second memory access instruction programs a command to compensate said effect of out of order execution of the first memory access instruction with respect to said second memory access instruction.
    Type: Grant
    Filed: May 3, 2000
    Date of Patent: September 2, 2003
    Assignee: Koninklijke Philips Electronics N.V.
    Inventors: Jan Hoogerbrugge, Alexander Augusteijn
  • Publication number: 20030149964
    Abstract: A threaded interpreter (916) is suitable for executing a program comprising a series of program instructions stored in a memory (904).
    Type: Application
    Filed: February 13, 2003
    Publication date: August 7, 2003
    Applicant: U.S. Philips Corporation
    Inventors: Jan Hoogerbrugge, Alexander Augusteijn
  • Publication number: 20020091911
    Abstract: The present invention relates to a signal processing device and method of supplying a signal processing result to a plurality of registers arranged in different register files, wherein a plurality of different register files are selected based on a corresponding indication in said instruction word, and the register address is supplied to said selected register files. Thereby, result values can be broadcasted to multiple registers in a single processor cycle, while a copy operation between different register files is eliminated. Broadcasting is thus implemented via overlapping register address spaces, since physical registers having the same logical register address are provided in different register files.
    Type: Application
    Filed: December 10, 2001
    Publication date: July 11, 2002
    Inventors: Jeroen Anton Johan Leijten, Marco Jan Gerrit Bekooij, Adrianus Josephus Bink, Johan Sebastiaan Henri Van Gageldonk, Jan Hoogerbrugge, Bart Mesman, Cornelis Arnoldus Josephus Van Eijk
  • Publication number: 20020083308
    Abstract: A data processing device has a configurable functional unit for executing an instruction according to a configurable function. The configurable functional unit has a plurality of independent configurable logic blocks for performing programmable logic operations to implement the configurable function. Configurable connection circuits are provided between the configurable logic blocks and both the inputs and the outputs of the configurable functional unit. This allows an optimalization of the distribution of logic functions over the configurable logic blocks.
    Type: Application
    Filed: December 17, 2001
    Publication date: June 27, 2002
    Inventors: Bernardo De Oliveira Kastrup Pereira, Jan Hoogerbrugge
  • Publication number: 20020083253
    Abstract: The present invention relates to a digital signal processing apparatus comprising a plurality of available hardware resource means and a first instruction set means having access to said available hardware resource means, so that at least a part of said hardware resource means execute operations under control of said first instruction set means, and further comprising a second instruction set means having access to only a predetermined limited subset of said plurality of available hardware resource means, so that at least a part of said predetermined limited subset of said hardware resource means execute operations under control of said second instruction set means.
    Type: Application
    Filed: October 16, 2001
    Publication date: June 27, 2002
    Inventors: Jeroen Anton Johan Leijten, Marco Jan Gerrit Bekooij, Adrianus Josephus Bink, Johan Sebastiaan Henri Van Gageldonk, Jan Hoogerbrugge, Bart Mesman
  • Publication number: 20020049889
    Abstract: A data processing apparatus has a main memory that contains memory locations with mutually different access latencies. Information from the main memory is cached in a cache memory. When cache replacement is needed selection of a cache replacement location depends on differences in the access latencies of the main memory locations for which replaceable cache locations are in use. When an access latency of a main memory location cached in the replaceable cache memory location is relatively smaller than an access latency of other main memory locations cached in other replaceable cache memory locations, the cached data for that main memory location is replaced by preference over data for the other main memory locations, because of its smaller latency.
    Type: Application
    Filed: June 28, 2001
    Publication date: April 25, 2002
    Inventors: Jan Hoogerbrugge, Paul Stravers
  • Publication number: 20020042909
    Abstract: The present invention relates to a compiling method and system for generating a sequence of program instructions for use in a processing architecture with architecture resources executing instructions from a corresponding instruction set. A retargetable compiler is used to generate a code using at least two instruction sets in the same processing architecture. One instruction set for a compact code and one for a parallel high performance code. The compact instruction set (Compact Instruction Format) covers a subset (RF11, ALU1, L/S1, BU1) of the architecture, whereas the complete instruction set covers the entire architecture (RF1, UC1, UC2, RF2, UC3, UC4, RF3, UC5, UC6, RF4, UC7). By using the at least two instruction sets of different sizes, the compiler is able to reduce the processed average code length, since fewer bits are needed in the compact code to encode operations and registers.
    Type: Application
    Filed: October 2, 2001
    Publication date: April 11, 2002
    Applicant: KONINKLIJKE PHILIPS ELECTRONICS N.V.
    Inventors: Johan Sebastiaan Henri Van Gageldonk, Marco Jan Gerrit Bekooij, Adrianus Josephus Bink, Jan Hoogerbrugge, Jeroen Anton Johan Leijten, Bart Mesman
  • Publication number: 20020013894
    Abstract: A data processor comprising contains a branch target memory that stores partial branch target information for instructions. The branch target information is used for advanced determination of the target address of a branch, so that the instruction at the target address can be prefetched. The partial branch target information indicates a position of an expected branch target address in a part of instruction address space defined relative to the current instruction address. Preferably, the relevant part of instruction address space is a page that contains the current instruction address, the partial branch target information providing only the least significant part of the branch target address. FIG.
    Type: Application
    Filed: July 19, 2001
    Publication date: January 31, 2002
    Inventor: Jan Hoogerbrugge
  • Publication number: 20010020265
    Abstract: The data processor that addresses instructions as groups of commands which may contain more than one branch command, such as VLIW instructions that contain several commands for parallel execution. The processor selects an expected taken branch command from the branch commands in a group. The processor also selects a tentative target for the expected taken branch command and tentatively redirects control flow to a further group of commands identified by the tentative target. The processor contains an associative target memory for storing targets of previously executed branch commands. Targets are retrieved with an associative address that identifies a command in the group, the tentative target being selected on the basis of a match between the associative address associated with the tentative target and an indication of the expected taken command.
    Type: Application
    Filed: February 28, 2001
    Publication date: September 6, 2001
    Inventor: Jan Hoogerbrugge
  • Patent number: 6282708
    Abstract: A method for structuring a multi-instruction computer program as containing a plurality of basic blocks, that each compose from internal instructions and external jumps organised in an internal directed acyclic graph. A guarding is executed on successor instructions that each collectively emanate from a respectively associated single predecessor instruction. A subset of joined instructions that converge onto a single join/target instruction are then unconditionally joined. This is accomplished by letting each respective instruction in the subset of joined instructions be executed under mutually non-related conditions, specifying all operations with respect to a jump instruction, specifying all operations that must have been executed previously, and linking various basic blocks comprising subsets of successor instructions in a directed acyclic graph which allows parallel execution of any further subset of instructions contained therein.
    Type: Grant
    Filed: February 25, 1999
    Date of Patent: August 28, 2001
    Assignee: U.S. Philips Corporation
    Inventors: Alexander Augusteijn, Jan Hoogerbrugge