Patents by Inventor Andrew Cofler

Andrew Cofler 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: 7685470
    Abstract: A method for debugging a multitask program executed by a processor includes interrupting the processor during the execution of a task of the program, and activating a debugging mode of the processor, wherein the instructions executed by the processor are supplied by an external emulator. The method comprises steps during which: the processor sends an activation message to the external emulator every time the debugging mode is activated, and upon receiving the activation message, the external emulator sends an acknowledgement message to the processor containing at least one portion of the activation message received.
    Type: Grant
    Filed: December 7, 2006
    Date of Patent: March 23, 2010
    Assignee: STMicroelectronics SA
    Inventors: Renaud Ayrignac, Isabelle Sename, Andrew Cofler
  • Patent number: 7496737
    Abstract: A method of transferring guard values and a computer system, such as a processor for digital signal processing, including a parallel set of execution units that utilizes the method. A master set of guard indicators is held in association with one of the execution units. If other execution units require the guard values for particular guard indicators, a sendguard instruction is issued to the execution unit holding the master guard values. The sendguard instructions are held in a separate queue from the main instructions intended for that execution unit. Circuitry is provided in the execution unit to avoid stalling in the dispatch of sendguard instructions even in the context of earlier guard modifying instructions.
    Type: Grant
    Filed: January 7, 2005
    Date of Patent: February 24, 2009
    Assignee: STMicroelectronics S.A.
    Inventors: Laurent Uguen, Sébastien Ferroussat, Andrew Cofler, Thomas Alofs
  • Patent number: 7486582
    Abstract: A DRAM and its application to a mobile telephony circuit with a control circuit including a first refreshment controller controlled by a first clock signal and a second refreshment controller controlled by a second clock signal having a frequency less than that of the first one and used to synchronize events of the GSM network.
    Type: Grant
    Filed: February 3, 2006
    Date of Patent: February 3, 2009
    Assignee: STMicroelectronics S.A.
    Inventors: François Druilhe, Andrew Cofler, Denis Dutoit, Michel Harrand, Gilles Eyzat, Christian Freund
  • Patent number: 7441109
    Abstract: A computer system with enhanced integrated debug facilities is described. According to one aspect, step-by-step execution of an instruction sequence is implemented where each instruction is guarded. If, after guard resolution, the instruction is committed, a divert routine is executed. If the instruction is not committed, the next instruction in the sequence is executed. According to another aspect, a stall state can be set at the decode unit either by reading stall attributes associated with debug instructions, or responsive to a stall command from an on-chip emulation unit.
    Type: Grant
    Filed: March 17, 2006
    Date of Patent: October 21, 2008
    Assignee: STMicroelectronics Limited
    Inventors: Andrew Cofler, Laurent Wojcieszak, Isabelle Sename
  • Patent number: 7370182
    Abstract: A processor includes a program memory containing program instructions, and a processor core including several processing units and a central unit. The central unit, upon receipt of a program instruction, issues corresponding instructions to the various processing units. The processor core is clocked by a clock signal. A branching instruction received by the central unit, in the course of a current cycle, is processed in the course of the current cycle.
    Type: Grant
    Filed: February 25, 2002
    Date of Patent: May 6, 2008
    Assignee: STMicroelectronics SA
    Inventors: Andrew Cofler, Anne Merlande, Sebastien Ferroussat
  • Patent number: 7290089
    Abstract: For instruction clusters for which no significant performance penalty is incurred, such as execution of hardware loops, a processor automatically and dynamically switches to a pipelined two-cycle access to an associated associative cache rather than a single-cycle access. An access involving more than one cycle uses less power because only the hit way within the cache memory is accessed rather than all ways within the indexed cache line. To maintain performance, the single-cycle cache access is utilized in all remaining instructions. In addition, where instruction clusters within a hardware loop fit entirely within a pre-fetch buffer, the cache sub-system is idled for any remaining iterations of the hardware loop to further reduce power consumption.
    Type: Grant
    Filed: October 15, 2002
    Date of Patent: October 30, 2007
    Assignees: STMicroelectronics, Inc., STMicroelectronics S.A.
    Inventors: Sivagnanam Parthasarathy, Andrew Cofler, Lionel Chaverot
  • Patent number: 7281119
    Abstract: A computer system supplies instructions simultaneously to a plurality of parallel execution pipelines in either superscalar mode or very long instruction word mode with checks for vertical and horizontal dependency between instructions, the horizontal dependency checks between instructions supplied in the same machine cycle being effective in superscalar mode but disabled in very long instruction word mode.
    Type: Grant
    Filed: May 2, 2000
    Date of Patent: October 9, 2007
    Assignee: STMicroelectronics S.A.
    Inventors: Andrew Cofler, Bruno Fel, Laurent Ducousso
  • Publication number: 20070174714
    Abstract: A method for debugging a multitask program executed by a processor includes interrupting the processor during the execution of a task of the program, and activating a debugging mode of the processor, wherein the instructions executed by the processor are supplied by an external emulator. The method comprises steps during which: the processor sends an activation message to the external emulator every time the debugging mode is activated, and upon receiving the activation message, the external emulator sends an acknowledgement message to the processor containing at least one portion of the activation message received.
    Type: Application
    Filed: December 7, 2006
    Publication date: July 26, 2007
    Applicant: STMicroelectronics SA
    Inventors: Renaud Ayrignac, Isabelle Sename, Andrew Cofler
  • Patent number: 7240185
    Abstract: A computer system is provided with precise and non-precise watch modes. The computer system is a pipelined system in which the fate of an instruction is determined at the decode stage. Once instructions have been decoded, it is not possible for them to be “killed” later in the pipeline. According to the precise watch mode, instructions are held at the decode stage until the guard value has been resolved to determine whether or not that instruction is committed. Actions of the decode unit are determined in dependence on whether or not the instruction is committed when the guard has been resolved. According to a non-precise watch mode, instructions continue to be decoded and executed normally until a breakpoint instruction has had its guard resolved. At that point, an on-chip emulator can take over operations of the processor in a divert mode. The computer system can take into account different intrusion levels while implementing the watch modes.
    Type: Grant
    Filed: December 22, 2000
    Date of Patent: July 3, 2007
    Assignee: STMicroelectronics S.A.
    Inventors: Andrew Cofler, Laurent Wojcieszak, Isabelle Sename
  • Patent number: 7111152
    Abstract: Instructions in a computer system are executed in a plurality of parallel execution pipelines, a horizontal dependency check is carried out between instructions supplied to the parallel pipelines and in response to detecting horizontal dependency a control signal of a first or second type is generated depending on whether the dependency can be resolved by activating a by-pass or whether a temporary stall is required in one of the pipelines.
    Type: Grant
    Filed: May 2, 2000
    Date of Patent: September 19, 2006
    Assignee: STMicroelectronics S.A.
    Inventors: Andrew Cofler, Bruno Fel, Laurent Ducousso
  • Publication number: 20060184775
    Abstract: A computer system with enhanced integrated debug facilities is described. According to one aspect, step-by-step execution of an instruction sequence is implemented where each instruction is guarded. If, after guard resolution, the instruction is committed, a divert routine is executed. If the instruction is not committed, the next instruction in the sequence is executed. According to another aspect, a stall state can be set at the decode unit either by reading stall attributes associated with debug instructions, or responsive to a stall command from an on-chip emulation unit.
    Type: Application
    Filed: March 17, 2006
    Publication date: August 17, 2006
    Applicant: STMicroelectronics Limited
    Inventors: Andrew Cofler, Laurent Wojcieszak, Isabelle Sename
  • Publication number: 20060176748
    Abstract: A DRAM and its application to a mobile telephony circuit with a control circuit including a first refreshment controller controlled by a first clock signal and a second refreshment controller controlled by a second clock signal having a frequency less than that of the first one and used to synchronize events of the GSM network.
    Type: Application
    Filed: February 3, 2006
    Publication date: August 10, 2006
    Applicant: STMicroelectronics SA
    Inventors: Francois Druilhe, Andrew Cofler, Denis Dutoit, Michel Harrand, Gilles Eyzat, Christian Freund
  • Patent number: 7013256
    Abstract: A computer system for executing instructions having assigned guard indicators, comprises instruction supply circuitry, pipelined execution units for receiving instructions from the supply circuitry together with at least one guard indicator selected from a set of guard indicators, the execution unit including a master guard value store containing master values for the guard indicators, and circuitry for resolving the guard values in the execution pipeline and providing a signal to indicate whether the pipeline is committed to the execution of the instruction, and an emulator having watch circuitry for effecting a watch on selected instructions supplied to the execution pipeline and synchronising circuitry for correlating resolution of the guard indicator of each selected instruction with a program count for that instruction.
    Type: Grant
    Filed: December 12, 2001
    Date of Patent: March 14, 2006
    Assignee: STMicroelectronics S.A.
    Inventors: Andrew Cofler, Laurent Wojcieszak, Arnaud Dehamel, Isabelle Sename
  • Publication number: 20050251661
    Abstract: A method of transferring guard values and a computer system, such as a processor for digital signal processing, including a parallel set of execution units that utilizes the method. A master set of guard indicators is held in association with one of the execution units. If other execution units require the guard values for particular guard indicators, a sendguard instruction is issued to the execution unit holding the master guard values. The sendguard instructions are held in a separate queue from the main instructions intended for that execution unit. Circuitry is provided in the execution unit to avoid stalling in the dispatch of sendguard instructions even in the context of earlier guard modifying instructions.
    Type: Application
    Filed: January 7, 2005
    Publication date: November 10, 2005
    Inventors: Laurent Uguen, Sebastien Ferroussat, Andrew Cofler, Thomas Alofs
  • Patent number: 6959379
    Abstract: A method of executing loops in a computer system is described. The computer system has a sequence of instructions held in program memory and a prefetch buffer which holds instructions fetched from the memory ready for supply to a decoder of the computer system. If the size of the loop to be executed is such that it can by holly contained within the prefetch buffer, this is detected and a lock is put on the prefetch buffer to retain the loop within it while the loop is executed a requisite number of times. This thus allows power to be saved and reduces the overhead on the memory access buffers. According to another aspect, loops can be “skipped” by holding a value of zero in the loop counter register.
    Type: Grant
    Filed: May 2, 2000
    Date of Patent: October 25, 2005
    Assignee: STMicroelectronics S.A.
    Inventors: Laurent Wojcieszak, Andrew Cofler
  • Patent number: 6889313
    Abstract: A decode unit comprises first and second decoders respectively connected to receive bit sequences of first and second predetermined lengths. The first and second decoders operate in parallel to generate respective outputs. A switch selects one of the outputs in dependence on an instruction mode of the processor which governs the length of the bit sequence which is actually required to be decoded.
    Type: Grant
    Filed: May 2, 2000
    Date of Patent: May 3, 2005
    Assignee: STMicroelectronics S.A.
    Inventors: Andrew Cofler, Stéphane Bouvier, Laurent Wojcieszak
  • Patent number: 6854049
    Abstract: A processing unit is associated with a first FIFO-type memory and with a second FIFO-type memory. Each instruction for loading memory stored data into a register within the processing unit is stored in the first FIFO-type memory, and other operative instructions are stored in the second FIFO-type memory. An operative instruction involving the register is removed from the second FIFO-type memory if no loading instruction which is earlier in time, and intended to modify a value of the register associated with this operative instruction is present in the first FIFO-type memory. In the presence of such an earlier loading instruction, the operative instruction is removed from the second FIFO-type memory only after the loading instruction has been removed from the first FIFO-type memory.
    Type: Grant
    Filed: February 26, 2002
    Date of Patent: February 8, 2005
    Assignee: STMicroelectronics SA
    Inventor: Andrew Cofler
  • Publication number: 20050010724
    Abstract: A cache memory is of the direct access type or of the set-associative type and includes NS sets each containing NW cache lines. NS is an integer greater than one, and NW is an integer equal to or greater than one. In the presence of a cache line access request, the content of the cache memory is scanned, the cache line is accessed if the latter is already allocated, and a new cache line is allocated in the cache memory in the contrary case. The cache memory is subdivided into SB subdivisions. Each subdivision includes NS/SB sub-sets each containing NW cache lines. Each subdivision is assigned a protection indication representative of whether or not the subdivision is protected. The scanning is carried out in all the subdivisions, whether protected or not. The access to a cache line already allocated is carried out even if that cache line belongs to a protected subdivision, whereas the allocation of a new cache line is carried out only in an unprotected subdivision.
    Type: Application
    Filed: June 23, 2004
    Publication date: January 13, 2005
    Applicant: STMicroelectronics SA
    Inventor: Andrew Cofler
  • Patent number: 6807626
    Abstract: A computer system has a memory which holds a computer program consisting of a sequence of program instructions. The format of the program instructions depends on an instruction mode of the computer system. A decoder is arranged to receive and decode program instructions. A microinstruction generator is responsive to information from the decoder to generate microinstructions according to a predetermined microinstruction format which is independent of the instruction mode of the computer system. The computer system has a plurality of parallel execution units for receiving and executing the microinstructions.
    Type: Grant
    Filed: May 2, 2000
    Date of Patent: October 19, 2004
    Assignee: STMicroelectronics S.A.
    Inventors: Andrew Cofler, Stéphane Bouvier, Bruno Fel, Laurent Ducousso
  • Publication number: 20040158695
    Abstract: A method of transferring guard values and a computer system, such as a processor for digital signal processing, including a parallel set of execution units that utilizes the method. A master set of guard indicators is held in association with one of the execution units. If other execution units require the guard values for particular guard indicators, a sendguard instruction is issued to the execution unit holding the master guard values. The sendguard instructions are held in a separate queue from the main instructions intended for that execution unit. Circuitry is provided in the execution unit to avoid stalling in the dispatch of sendguard instructions even in the context of earlier guard modifying instructions.
    Type: Application
    Filed: December 22, 2003
    Publication date: August 12, 2004
    Inventors: Laurent Ugen, Sebastien Ferroussat, Andrew Cofler, Thomas Alofs