Patents by Inventor Jean-Philippe Cousin

Jean-Philippe Cousin 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: 10140020
    Abstract: A method for transferring messages from a producer element to a consumer element uses a memory shared between the producer element and the consumer element, and a hardware queue including several registers designed to contain addresses of the shared memory. The method includes the steps of storing each message for the consumer element in the shared memory in the form of a node of a linked list, including a pointer to a next node in the list, the pointer being initially void, writing successively the address of each node in a free slot of the queue, whereby the node identified by each slot of the queue is the first node of a linked list assigned to the slot, and when the queue is full, writing the address of the current node in memory, in the pointer of the last node of the linked list assigned to the last slot of the queue, whereby the current node is placed at the end of the linked list assigned to the last slot of the queue.
    Type: Grant
    Filed: February 28, 2017
    Date of Patent: November 27, 2018
    Assignee: STMicroelectronics (Grenoble 2) SAS
    Inventors: Gilles Pelissier, Jean-Philippe Cousin, Badr Bentaybi
  • Publication number: 20170168721
    Abstract: A method for transferring messages from a producer element to a consumer element uses a memory shared between the producer element and the consumer element, and a hardware queue including several registers designed to contain addresses of the shared memory. The method includes the steps of storing each message for the consumer element in the shared memory in the form of a node of a linked list, including a pointer to a next node in the list, the pointer being initially void, writing successively the address of each node in a free slot of the queue, whereby the node identified by each slot of the queue is the first node of a linked list assigned to the slot, and when the queue is full, writing the address of the current node in memory, in the pointer of the last node of the linked list assigned to the last slot of the queue, whereby the current node is placed at the end of the linked list assigned to the last slot of the queue.
    Type: Application
    Filed: February 28, 2017
    Publication date: June 15, 2017
    Inventors: Gilles Pelissier, Jean-Philippe Cousin, Badr Bentaybi
  • Patent number: 9594506
    Abstract: A method for transferring messages from a producer element to a consumer element uses a memory shared between the producer element and the consumer element, and a hardware queue including several registers designed to contain addresses of the shared memory. The method includes the steps of storing each message for the consumer element in the shared memory in the form of a node of a linked list, including a pointer to a next node in the list, the pointer being initially void, writing successively the address of each node in a free slot of the queue, whereby the node identified by each slot of the queue is the first node of a linked list assigned to the slot, and when the queue is full, writing the address of the current node in memory, in the pointer of the last node of the linked list assigned to the last slot of the queue, whereby the current node is placed at the end of the linked list assigned to the last slot of the queue.
    Type: Grant
    Filed: June 19, 2014
    Date of Patent: March 14, 2017
    Assignee: STMICROELECTRONICS (GRENOBLE 2) SAS
    Inventors: Gilles Pelissier, Jean-Philippe Cousin, Badr Bentaybi
  • Publication number: 20140379999
    Abstract: A method for transferring messages from a producer element to a consumer element uses a memory shared between the producer element and the consumer element, and a hardware queue including several registers designed to contain addresses of the shared memory. The method includes the steps of storing each message for the consumer element in the shared memory in the form of a node of a linked list, including a pointer to a next node in the list, the pointer being initially void, writing successively the address of each node in a free slot of the queue, whereby the node identified by each slot of the queue is the first node of a linked list assigned to the slot, and when the queue is full, writing the address of the current node in memory, in the pointer of the last node of the linked list assigned to the last slot of the queue, whereby the current node is placed at the end of the linked list assigned to the last slot of the queue.
    Type: Application
    Filed: June 19, 2014
    Publication date: December 25, 2014
    Inventors: Gilles Pelissier, Jean-Philippe Cousin, Badr Bentaybi
  • Patent number: 8606976
    Abstract: A data stream flow-controller controls a transfer of data between a data processing device and an interconnection network. The flow controller includes interfaces for interfacing the controller on the network side and on the processing device side, a configurable storage for buffering queues of data in the controller before transfer to destination, and a programmable controller to control the storage to define queue parameters.
    Type: Grant
    Filed: June 18, 2010
    Date of Patent: December 10, 2013
    Assignees: STMicroelectronics (Grenoble 2) SAS, STMicroelectronics S.r.l.
    Inventors: Giuseppe Desoli, Jean-Philippe Cousin, Gilles Pelissier, Badr Bentaybi
  • Patent number: 8015363
    Abstract: A process to make the cache memory of a processor consistent includes the processor processing a request to write data to an address in its memory marked as being in the shared state. The address is transmitted to the other processors, data are written into the processor's cache memory and the address changes to the modified state. An appended memory associated with the processor memorizes the address, the data and an associated marker in a first state. The processor then receives the address with an indicator. If the indicator indicates that the processor must perform the operation and if the associated marker is in the first state, the data are kept in the modified state. If the indicator does not indicate that the processor must perform the operation and if the processor receives an order to mark the data to be in the invalid state, the marker changes to a second state.
    Type: Grant
    Filed: September 15, 2009
    Date of Patent: September 6, 2011
    Assignee: STMicroelectronics S.A.
    Inventors: Jean-Philippe Cousin, Jean-Jose Berenguer, Gilles Pelissier
  • Patent number: 7971003
    Abstract: A method of making cache memories of a plurality of processors coherent with a shared memory includes one of the processors determining whether an external memory operation is needed for data that is to be maintained coherent. If so, the processor transmits a cache coherency request to a traffic-monitoring device. The traffic-monitoring device transmits memory operation information to the plurality of processors, which includes an address of the data. Each of the processors determines whether the data is in its cache memory and whether a memory operation is needed to make the data coherent. Each processor also transmits to the traffic-monitoring device a message that indicates a state of the data and the memory operation that it will perform on the data. The processors then perform the memory operations on the data. The traffic-monitoring device performs the transmitted memory operations in a fixed order that is based on the states of the data in the processors' cache memories.
    Type: Grant
    Filed: January 26, 2010
    Date of Patent: June 28, 2011
    Assignee: STMicroelectronics SA
    Inventors: Jean-Philippe Cousin, Jean-Jose Berenguer, Gilles Pelissier
  • Publication number: 20100325318
    Abstract: A data stream flow-controller controls a transfer of data between a data processing device and an interconnection network. The flow controller includes interfaces for interfacing the controller on the network side and on the processing device side, a configurable storage for buffering queues of data in the controller before transfer to destination, and a programmable controller to control the storage to define queue parameters.
    Type: Application
    Filed: June 18, 2010
    Publication date: December 23, 2010
    Applicants: STMICROELECTRONICS (GRENOBLE 2) SAS, STMICROELECTRONICS S.R.L.
    Inventors: Giuseppe Desoli, Jean-Philippe Cousin, Gilles Pelissier, Badr Bentaybi
  • Publication number: 20100199051
    Abstract: A method of making cache memories of a plurality of processors coherent with a shared memory includes one of the processors determining whether an external memory operation is needed for data that is to be maintained coherent. If so, the processor transmits a cache coherency request to a traffic-monitoring device. The traffic-monitoring device transmits memory operation information to the plurality of processors, which includes an address of the data. Each of the processors determines whether the data is in its cache memory and whether a memory operation is needed to make the data coherent. Each processor also transmits to the traffic-monitoring device a message that indicates a state of the data and the memory operation that it will perform on the data. The processors then perform the memory operations on the data. The traffic-monitoring device performs the transmitted memory operations in a fixed order that is based on the states of the data in the processors' cache memories.
    Type: Application
    Filed: January 26, 2010
    Publication date: August 5, 2010
    Applicant: STMICROELECTRONICS SA
    Inventors: Jean-Philippe Cousin, Jean-Jose Berenguer, Gilles Pelissier
  • Patent number: 7743217
    Abstract: A process to make the cache memory of a processor consistent includes the processor processing a request to write data to an address in its memory marked as being in the shared state. The address is transmitted to the other processors, data are written into the processor's cache memory and the address changes to the modified state. An appended memory associated with the processor memorizes the address, the data and an associated marker in a first state. The processor then receives the address with an indicator. If the indicator indicates that the processor must perform the operation and if the associated marker is in the first state, the data are kept in the modified state. If the indicator does not indicate that the processor must perform the operation and if the processor receives an order to mark the data to be in the invalid state, the marker changes to a second state.
    Type: Grant
    Filed: June 27, 2006
    Date of Patent: June 22, 2010
    Assignee: STMicroelectronics S.A.
    Inventors: Jean-Philippe Cousin, Jean-José Berenguer, Gilles Pelissier
  • Patent number: 7653788
    Abstract: A method of making cache memories of a plurality of processors coherent with a shared memory includes one of the processors determining whether an external memory operation is needed for data that is to be maintained coherent. If so, the processor transmits a cache coherency request to a traffic-monitoring device. The traffic-monitoring device transmits memory operation information to the plurality of processors, which includes an address of the data. Each of the processors determines whether the data is in its cache memory and whether a memory operation is needed to make the data coherent. Each processor also transmits to the traffic-monitoring device a message that indicates a state of the data and the memory operation that it will perform on the data. The processors then perform the memory operations on the data. The traffic-monitoring device performs the transmitted memory operations in a fixed order that is based on the states of the data in the processors' cache memories.
    Type: Grant
    Filed: April 4, 2006
    Date of Patent: January 26, 2010
    Assignee: STMicroelectronics SA
    Inventors: Jean-Philippe Cousin, Jean-Jose Berenguer, Gilles Pelissier
  • Publication number: 20100011171
    Abstract: A process to make the cache memory of a processor consistent includes the processor processing a request to write data to an address in its memory marked as being in the shared state. The address is transmitted to the other processors, data are written into the processor's cache memory and the address changes to the modified state. An appended memory associated with the processor memorizes the address, the data and an associated marker in a first state. The processor then receives the address with an indicator. If the indicator indicates that the processor must perform the operation and if the associated marker is in the first state, the data are kept in the modified state. If the indicator does not indicate that the processor must perform the operation and if the processor receives an order to mark the data to be in the invalid state, the marker changes to a second state.
    Type: Application
    Filed: September 15, 2009
    Publication date: January 14, 2010
    Applicant: STMicroelectronics S.A.
    Inventors: Jean-Philippe Cousin, Jean-Jose Berenguer, Gilles Pelissier
  • Publication number: 20070016730
    Abstract: A process to make the cache memory of a processor consistent includes the processor processing a request to write data to an address in its memory marked as being in the shared state. The address is transmitted to the other processors, data are written into the processor's cache memory and the address changes to the modified state. An appended memory associated with the processor memorizes the address, the data and an associated marker in a first state. The processor then receives the address with an indicator. If the indicator indicates that the processor must perform the operation and if the associated marker is in the first state, the data are kept in the modified state. If the indicator does not indicate that the processor must perform the operation and if the processor receives an order to mark the data to be in the invalid state, the marker changes to a second state.
    Type: Application
    Filed: June 27, 2006
    Publication date: January 18, 2007
    Applicant: STMicroelectronics S.A.
    Inventors: Jean-Philippe Cousin, Jean-Jose Berenguer, Gilles Pelissier
  • Publication number: 20060259705
    Abstract: A method of making cache memories of a plurality of processors coherent with a shared memory includes one of the processors determining whether an external memory operation is needed for data that is to be maintained coherent. If so, the processor transmits a cache coherency request to a traffic-monitoring device. The traffic-monitoring device transmits memory operation information to the plurality of processors, which includes an address of the data. Each of the processors determines whether the data is in its cache memory and whether a memory operation is needed to make the data coherent. Each processor also transmits to the traffic-monitoring device a message that indicates a state of the data and the memory operation that it will perform on the data. The processors then perform the memory operations on the data. The traffic-monitoring device performs the transmitted memory operations in a fixed order that is based on the states of the data in the processors' cache memories.
    Type: Application
    Filed: April 4, 2006
    Publication date: November 16, 2006
    Applicant: STMICROELECTRONICS SA
    Inventors: Jean-Philippe Cousin, Jean-Jose Berenguer, Gilles Pelissier
  • Patent number: 6725357
    Abstract: A system comprises: a first execution unit, a second execution unit and a third execution unit; a first-in-first-out memory arranged to receive a plurality of instructions for the first to third execution units and to output the instructions to the execution units; a memory store for storing at least one instruction for one of the execution units, the at least one instruction being received from the first-in-first-out memory, the first and second execution units being arranged to receive their instructions from the first-in-first-out memory and the third execution unit being arranged to receive the instructions from the memory store, wherein a given instruction for the third execution unit is available to the third execution unit at substantially the same time that the instruction would be available to the first or second execution unit if that instruction was for the first or second execution unit.
    Type: Grant
    Filed: May 2, 2000
    Date of Patent: April 20, 2004
    Assignee: STMicroelectronics S.A.
    Inventor: Jean-Philippe Cousin