Patents by Inventor Jeroen Leijten

Jeroen Leijten 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).

  • Publication number: 20240111444
    Abstract: Examples include techniques to reduce power consumption for a distributed computational model mapped onto a multi-processing node system. Examples are described of processing nodes relaying indicator information to enable clock gate circuitry to determine whether or not to gate a clock to stall consuming compute circuitry based on availability of data to consume. Examples are also described of processing nodes relaying indicator information to enable clock gate circuitry to determine whether or not to gate a clock to stall producing compute circuitry based on available buffer capacity at a consuming compute circuitry.
    Type: Application
    Filed: September 30, 2022
    Publication date: April 4, 2024
    Inventors: Javier MARTIN LANGERWERF, Jeroen LEIJTEN, Gerard EGELMEERS, Venkata Sudhir KONJETI
  • Publication number: 20240104049
    Abstract: Techniques are disclosed for a programmable processor array architecture that enables synchronized broadcasting of operation results to register files with the operation results. The architecture advantageously enables writing of operation results of a given operation to multiple destination registers in a single clock cycle for processors with partitioned register files by using common data stationary instruction encoding. This combination brings improved performance by reducing the need for costly copy operations that would otherwise occupy issue slots and thus schedule space while at the same time minimizing code size overhead. The performance gains of broadcasting are especially emphasized in highly parallel and heavily partitioned register file architectures.
    Type: Application
    Filed: December 5, 2023
    Publication date: March 28, 2024
    Inventors: Erik Rijshouwer, Jeroen Leijten, Bert Schellekens, Zoran Zivkovic
  • Publication number: 20220197641
    Abstract: Techniques are disclosed for reducing or eliminating loop overhead caused by function calls in processors that form part of a pipeline architecture. The processors in the pipeline process data blocks in an iterative fashion, with each processor in the pipeline completing one of several iterations associated with a processing loop for a commonly-executed function. The described techniques leverage the use of message passing for pipelined processors to enable an upstream processor to signal to a downstream processor when processing has been completed, and thus a data block is ready for further processing in accordance with the next loop processing iteration. The described techniques facilitate a zero loop overhead architecture, enable continuous data block processing, and allow the processing pipeline to function indefinitely within the main body of the processing loop associated with the commonly-executed function where efficiency is greatest.
    Type: Application
    Filed: December 23, 2020
    Publication date: June 23, 2022
    Inventors: Kameran Azadet, Jeroen Leijten, Joseph Williams
  • Patent number: 11074213
    Abstract: Systems, methods, and apparatuses relating to vector processor architecture having an array of identical circuit blocks are described.
    Type: Grant
    Filed: June 29, 2019
    Date of Patent: July 27, 2021
    Assignee: Intel Corporation
    Inventors: Joseph Williams, Jay O'Neill, Jeroen Leijten, Harm Peters, Eugene Scuteri
  • Publication number: 20200409903
    Abstract: Systems, methods, and apparatuses relating to vector processor architecture having an array of identical circuit blocks are described.
    Type: Application
    Filed: June 29, 2019
    Publication date: December 31, 2020
    Inventors: Joseph Williams, Jay O'Neill, Jeroen Leijten, Harm Peters, Eugene Scuteri
  • Patent number: 9928066
    Abstract: A processor includes a memory and a decompressor. The memory is to store compressed instruction. The decompressor includes logic to receive a request for an instruction in the compressed instructions to be executed by the processor, determine a block in the memory including the requested instruction, and determine a start address of the block in the compressed instructions. The decompressor also includes logic decompress chunks of the block, a given chunk to include parts of a plurality of very-long instruction word (VLIW) instructions.
    Type: Grant
    Filed: June 25, 2015
    Date of Patent: March 27, 2018
    Assignee: Intel Corporation
    Inventor: Jeroen Leijten
  • Patent number: 9852092
    Abstract: A memory controller performs DMA operations on arbitrary sized elements unbounded by the word size of the host memory or processor, which performs operations based on an element that represents an atomic data unit such as a pixel. In this manner, a corresponding coding effort is not concerned with computing and locating word boundaries and accommodating unused bits of data conventionally used for accommodating word boundaries on pixel data for video rendering, for example. An element in memory corresponds to a rendered atomic data item, such as a pixel. The controller determines an element precision indicative of a size of the element, and identifies a unit of memory based on a memory location and a packed representation of a plurality of the elements relative to the memory location. The unit has a height and width, defining elements arranged in a grid, and an element position is based on coordinates.
    Type: Grant
    Filed: March 28, 2014
    Date of Patent: December 26, 2017
    Assignee: Intel Corporation
    Inventor: Jeroen Leijten
  • Publication number: 20160378481
    Abstract: A processor includes a memory and a decompressor. The memory is to store compressed instruction. The decompressor includes logic to receive a request for an instruction in the compressed instructions to be executed by the processor, determine a block in the memory including the requested instruction, and determine a start address of the block in the compressed instructions. The decompressor also includes logic decompress chunks of the block, a given chunk to include parts of a plurality of very-long instruction word (VLIW) instructions.
    Type: Application
    Filed: June 25, 2015
    Publication date: December 29, 2016
    Inventor: Jeroen Leijten
  • Publication number: 20150278132
    Abstract: A memory controller performs DMA operations on arbitrary sized elements unbounded by the word size of the host memory or processor, which performs operations based on an element that represents an atomic data unit such as a pixel. In this manner, a corresponding coding effort is not concerned with computing and locating word boundaries and accommodating unused bits of data conventionally used for accommodating word boundaries on pixel data for video rendering, for example. An element in memory corresponds to a rendered atomic data item, such as a pixel. The controller determines an element precision indicative of a size of the element, and identifies a unit of memory based on a memory location and a packed representation of a plurality of the elements relative to the memory location. The unit has a height and width, defining elements arranged in a grid, and an element position is based on coordinates.
    Type: Application
    Filed: March 28, 2014
    Publication date: October 1, 2015
    Inventor: Jeroen Leijten
  • Patent number: 7555576
    Abstract: A digital signal processing system comprises a programmable processor (PROC) and a peripheral device (PD, MEM) coupled to the programmable processor via a burst generation device (BG). The processor is arranged to communicate with the peripheral device using a read operation and a write operation, respectively, on a single data element. The burst generation device (BG) groups a plurality of read operations or a plurality of write operations in a single burst read operation or a single burst write operation, respectively.
    Type: Grant
    Filed: August 11, 2005
    Date of Patent: June 30, 2009
    Assignee: Silicon Hive B.V.
    Inventor: Jeroen A. Leijten
  • Publication number: 20080109572
    Abstract: A digital signal processing system comprises a programmable processor (PROC) and a peripheral device (PD, MEM) coupled to the programmable processor via a burst generation device (BG). The processor is arranged to communicate with the peripheral device using a read operation and a write operation, respectively, on a single data element. The burst generation device (BG) groups a plurality of read operations or a plurality of write operations in a single burst read operation or a single burst write operation, respectively.
    Type: Application
    Filed: August 11, 2005
    Publication date: May 8, 2008
    Applicant: KONINKLIJKE PHILIPS ELECTRONICS, N.V.
    Inventor: Jeroen A. Leijten
  • Publication number: 20070174590
    Abstract: A processing apparatus is arranged to execute multiple-instruction words, a multiple-instruction word having a plurality of instructions. The processing apparatus comprises a plurality of issue slots (IS1, IS2) arranged for parallel execution of the plurality of instructions; a register file (RF1, RF2) accessible by the plurality of issue slots, and a communication network (CN) for coupling of the plurality of issue slots and the register file. The processing apparatus is further arranged to produce a first identifier (OV1) on the validity of first result data (RD1) produced by a first issue slot (IS1) and a second identifier (OV2) on the validity of second result data (RD2) produced by a second issue slot (IS2). The communication network comprises at least one selection circuit (SC1) arranged to dynamically control the transfer of either the first result data or the second result data to a register of the register file, in a single processor cycle, by using the first identifier and the second identifier.
    Type: Application
    Filed: May 9, 2005
    Publication date: July 26, 2007
    Applicant: KONINKLIJKE PHILIPS ELECTRONICS, N.V.
    Inventors: Alexander Augusteijn, Jeroen Leijten
  • Publication number: 20070063745
    Abstract: In case of time-stationary encoding, every instruction that is part of the processor's instruction-set controls a complete set of operations that have to be executed in a single machine cycle. These operations may be processing several different data items traversing the data pipeline. Time-stationary encoding is often used in application-specific processors, since it saves the overhead of hardware necessary for delaying the control information present in the instructions, at the expense of larger code size. A disadvantage of time-stationary encoding is that is does not support conditional operations. The invention proposes to dynamically control the write back of result data to the register file of the timestationary processor, using control information obtained by the program. By controlling the write back of data at run-time, conditional operations can be implemented by a timestationary processor.
    Type: Application
    Filed: April 9, 2004
    Publication date: March 22, 2007
    Applicant: KONINKLIJKE PHILIPS ELECTRONICS N.V.
    Inventor: Jeroen Leijten
  • Publication number: 20070055851
    Abstract: Programmable processors are used to transform input data into output data based on program information encoded in instructions. The value of the resulting output data depends, amongst others, on the momentary state of the processor at any given moment in time. This state is composed of temporary data values stored in registers, for example, as well as so-called flags. A disadvantage of the principle of flags, is that they cause side effects in the processor, especially in parallel processors. However, when removing the traditional concept of flags, the remaining problem is the implementation of branching. A processing system according to the invention comprises an execution unit (EX1, EX2), a first register file (RF1, RF2) for storing data, an instruction memory (PM) and a second register file (RF3) for storing a program counter. The execution unit conditionally executes dedicated instructions for writing a value of the program counter into the second register file.
    Type: Application
    Filed: April 27, 2004
    Publication date: March 8, 2007
    Inventor: Jeroen Leijten
  • Publication number: 20060168424
    Abstract: Differences in encoding efficiency of instructions may arise if certain operations require very large immediate values as operands, as opposed to others requiring no immediate values or small immediate values. The present invention describes a processing apparatus, a compiler as well as a method for processing data, allowing the use of instructions that require large immediate data, while simultaneously maintaining an efficient encoding and decoding of instructions. The processing apparatus comprises a plurality of issue slots (UC0, UC1, UC2, UC3), wherein each issue slot comprises a plurality of functional units (FU20, FU21, FU22). The processing apparatus is arranged for processing data, based on control signals generated from a set of instructions being executed in parallel. The processing apparatus further comprises a dedicated issue slot (UC4) arranged for loading an immediate value (IMV1) in dependence upon a dedicated instruction (IMM).
    Type: Application
    Filed: August 8, 2003
    Publication date: July 27, 2006
    Inventors: Jeroen Leijten, Willem Mallon
  • Publication number: 20050262389
    Abstract: A data processor comprises one or more functional units, one or more register files, a data memory, and a snapshot buffer which during the handling of an interrupt condition accommodates to save state informations of various processor state elements in respective snapshot buffer elements. In particular, the data processor being comprises controller means that are arranged for upon a subsequent interrupt condition that occurs during the handling of an actual interrupt condition saving the contents of said snapshot buffer elements in a data memory facility having a multibit access port facility.
    Type: Application
    Filed: September 1, 2003
    Publication date: November 24, 2005
    Applicant: Koninklijke Philips Electronics N.V.
    Inventor: Jeroen Leijten
  • Publication number: 20050257027
    Abstract: Computer architectures consist of a fixed data path, which is controlled by a set of control words. Each control word controls part of the data path. Each set of instructions generates a new set of control words. In case of a VLIW processor, multiple instructions are packaged into one so-called VLIW instruction. A VLIW processor uses multiple, independent functional units to execute these multiple instructions in parallel. Application specific domain tuning of a VLIW processor requires that instructions having varying requirements with respect to the number of instruction bits they require can be encoded in a single VLIW instruction, such that an efficient encoding and encoding of instructions is maintained. The present invention describes a processing apparatus as well as a processing method for processing data, allowing the use of such an asymmetric instruction set.
    Type: Application
    Filed: July 18, 2003
    Publication date: November 17, 2005
    Inventor: Jeroen Leijten
  • Publication number: 20050132170
    Abstract: A multi-issue processor comprises a plurality of issue slots (UC0, UC1, UC2 and UC3), each one of the plurality of issue slots having a plurality of functional units (FU0, FU1 and FU2) and a plurality of holdable registers (1-33 and 101-117). The plurality of issue slots comprises a first set of issue slots (UC1, UC2 and UC3) and a second set of issue slots (UC0), and the register file (RF0 and RF1) is accessible by the plurality of issue slots (UC0, UC1, UC2 and UC3). A location of at least a part of the plurality of holdable registers (1-33) in the first set of issue slots (UC1, UC2 and UC3) is different from a location of at least a corresponding part of the plurality of holdable registers (101-117) in the second set of issue slots (UC0). The holdable registers can prevent that the inputs of unused functional units change, which would result in unnecessary power dissipation. However, this increases the amount of state that has to be saved during interrupt handling.
    Type: Application
    Filed: April 1, 2003
    Publication date: June 16, 2005
    Inventor: Jeroen Leijten