Patents by Inventor David Alan Edwards

David Alan Edwards 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: 9696966
    Abstract: The software development tool (701) forms part of a software development kit (700). The software development tool (701) receives as input object files (606) and library files (607) and subjects the object file instructions and data definitions of the object files and the library files to re-sequencing to generate new object files and the links between them which are semantically equivalent to the input object files and library files and which are used to generate an optimized executable. The software development tool (701) is capable of automatically generating an executable, without requiring any modification of the source code, which is optimized to execute more deterministically and with respect to execution time; reduced processor and memory requirements; reduced off-chip memory accesses; reduced memory latency.
    Type: Grant
    Filed: August 1, 2014
    Date of Patent: July 4, 2017
    Assignee: Somnium Technologies Limited
    Inventors: David Alan Edwards, Martin Charles Young
  • Publication number: 20160196112
    Abstract: The software development tool (701) forms part of a software development kit (700). The software development tool (701) receives as input object files (606) and library files (607) and subjects the object file instructions and data definitions of the object files and the library files to re-sequencing to generate new object files and the links between them which are semantically equivalent to the input object files and library files and which are used to generate an optimized executable. The software development tool (701) is capable of automatically generating an executable, without requiring any modification of the source code, which is optimized to execute more deterministically and with respect to execution time; reduced processor and memory requirements; reduced off-chip memory accesses; reduced memory latency.
    Type: Application
    Filed: August 1, 2014
    Publication date: July 7, 2016
    Inventors: David Alan Edwards, Martin Charles Young
  • Patent number: 8850394
    Abstract: A method and processor for debugging a target processor. The method comprises: executing code on the target processor to generate trace information for debugging; and during execution of that code, periodically incrementing a value of a counter on the target processor. The execution of the code includes executing a plurality of timestamp instructions on the target processor each to associate a respective timestamp with the trace information. The execution of each timestamp instruction comprises generating the respective timestamp by reading the value of the counter into a software accessible storage location and subsequently resetting the counter.
    Type: Grant
    Filed: May 7, 2009
    Date of Patent: September 30, 2014
    Assignee: Icera Inc.
    Inventor: David Alan Edwards
  • Patent number: 8689197
    Abstract: Disclosed herein is a method of optimizing an executable program to improve instruction cache hit rate when executed on a processor. A method of predicting instruction cache behavior of an executable program is also disclosed. According to further aspects of the present invention, there is provided a software development tool product comprising code which when executed on a computer will perform the method of optimizing an executable program. A linker product and a computer program are also disclosed.
    Type: Grant
    Filed: October 2, 2009
    Date of Patent: April 1, 2014
    Assignee: Icera, Inc.
    Inventors: David Alan Edwards, Alan Alexander
  • Patent number: 8479039
    Abstract: The present invention provides a method of protecting against errors in a boot memory, the method comprising initiating booting of a processor by executing primary boot code from a primary boot memory, and based on the execution of the primary boot code: accessing a data structure comprising a plurality of redundant portions of boot information stored on a secondary boot memory; performing an error check on a plurality of the portions to determine whether those portions contain errors and, based on the error checks, to identify a valid portion; and booting the processor using the valid portion of boot information.
    Type: Grant
    Filed: July 20, 2011
    Date of Patent: July 2, 2013
    Assignee: Icera Inc.
    Inventors: David Alan Edwards, Joe Woodward
  • Patent number: 8321718
    Abstract: The present invention provides a processor comprising: an execution unit arranged to execute a plurality of program threads, clock generating means for generating first and second clock signals, and storage means for storing at least one thread-specific clock-control bit. The execution unit is configured to execute a first one of the threads in dependence on the first clock signal and to execute a second one of the threads in dependence on the second clock signal. The clock generating means is operable to generate the second clock signal with the second frequency selectively differing from the first frequency in dependence on the at least one clock-control bit. A corresponding method and computer program product are also provided.
    Type: Grant
    Filed: November 21, 2008
    Date of Patent: November 27, 2012
    Assignee: Icera Inc.
    Inventor: David Alan Edwards
  • Publication number: 20110283136
    Abstract: The present invention provides a method of protecting against errors in a boot memory, the method comprising initiating booting of a processor by executing primary boot code from a primary boot memory, and based on the execution of the primary boot code: accessing a data structure comprising a plurality of redundant portions of boot information stored on a secondary boot memory; performing an error check on a plurality of the portions to determine whether those portions contain errors and, based on the error checks, to identify a valid portion; and booting the processor using the valid portion of boot information.
    Type: Application
    Filed: July 20, 2011
    Publication date: November 17, 2011
    Applicant: Icera Inc.
    Inventors: David Alan Edwards, Joe Woodward
  • Patent number: 7996711
    Abstract: The present invention provides a method of protecting against errors in a boot memory, the method comprising initiating booting of a processor by executing primary boot code from a primary boot memory, and based on the execution of the primary boot code: accessing a data structure comprising a plurality of redundant portions of boot information stored on a secondary boot memory; performing an error check on a plurality of the portions to determine whether those portions contain errors and, based on the error checks, to identify a valid portion; and booting the processor using the valid portion of boot information.
    Type: Grant
    Filed: November 26, 2008
    Date of Patent: August 9, 2011
    Assignee: Icera Inc.
    Inventors: David Alan Edwards, Joe Woodward
  • Patent number: 7793261
    Abstract: An microcomputer is provided including a processor and a debug circuit including a dedicated link which transfers information between the processor and debug circuit to support debugging operations. In one aspect, the processor provides program counter information, which is stored in a memory-mapped register of the debug circuit. The program counter information may be a value of the processor program counter at a writeback stage of a processor pipeline. Also, trace information including message information is transferred in a non-intrusive manner over the dedicated link. In one aspect, the microcomputer is implemented as a single integrated circuit.
    Type: Grant
    Filed: October 1, 1999
    Date of Patent: September 7, 2010
    Assignee: STMicroelectronics Limited
    Inventors: David Alan Edwards, Margaret Rose Gearty, Glenn A. Farrall, Atsushi Hasegawa, Anthony Willis Rich
  • Publication number: 20100088688
    Abstract: Disclosed herein is a method of optimising an executable program to improve instruction cache hit rate when executed on a processor. A method of predicting instruction cache behaviour of an executable program is also disclosed. According to further aspects of the present invention, there is provided a software development tool product comprising code which when executed on a computer will perform the method of optimising an executable program. A linker product and a computer program are also disclosed.
    Type: Application
    Filed: October 2, 2009
    Publication date: April 8, 2010
    Applicant: ICERA Inc.
    Inventors: David Alan Edwards, Alan Alexander
  • Publication number: 20090282294
    Abstract: A method and processor for debugging a target processor. The method comprises: executing code on the target processor to generate trace information for debugging; and during execution of that code, periodically incrementing a value of a counter on the target processor. The execution of the code includes executing a plurality of timestamp instructions on the target processor each to associate a respective timestamp with the trace information. The execution of each timestamp instruction comprises generating the respective timestamp by reading the value of the counter into a software accessible storage location and subsequently resetting the counter.
    Type: Application
    Filed: May 7, 2009
    Publication date: November 12, 2009
    Inventor: David Alan Edwards
  • Publication number: 20090138879
    Abstract: The present invention provides a processor comprising: an execution unit arranged to execute a plurality of program threads, clock generating means for generating first and second clock signals, and storage means for storing at least one thread-specific clock-control bit. The execution unit is configured to execute a first one of the threads in dependence on the first clock signal and to execute a second one of the threads in dependence on the second clock signal. The clock generating means is operable to generate the second clock signal with the second frequency selectively differing from the first frequency in dependence on the at least one clock-control bit. A corresponding method and computer program product are also provided.
    Type: Application
    Filed: November 21, 2008
    Publication date: May 28, 2009
    Inventor: David Alan Edwards
  • Publication number: 20090138754
    Abstract: The present invention provides a method of protecting against errors in a boot memory, the method comprising initiating booting of a processor by executing primary boot code from a primary boot memory, and based on the execution of the primary boot code: accessing a data structure comprising a plurality of redundant portions of boot information stored on a secondary boot memory; performing an error check on a plurality of the portions to determine whether those portions contain errors and, based on the error checks, to identify a valid portion; and booting the processor using the valid portion of boot information.
    Type: Application
    Filed: November 26, 2008
    Publication date: May 28, 2009
    Inventors: David Alan Edwards, Joe Woodward
  • Patent number: 6918065
    Abstract: A system for performing non-intrusive trace is provided which receives trace information from one or more processors. The trace system may be configured by a user to operate in various modes for flexibly storing or transmitting the trace information. The trace system includes a FIFO which is memory-mapped and is capable of being accessed without affecting processor performance. In one aspect, the trace system includes a trace buffer which receives trace information at an internal clock speed of the processor. In another embodiment, a compression protocol is provided for compressing trace messages on-chip prior to transmitting the messages to an external system or storing the messages in memory.
    Type: Grant
    Filed: October 1, 1999
    Date of Patent: July 12, 2005
    Assignee: Hitachi, Ltd.
    Inventors: David Alan Edwards, Anthony Willis Rich
  • Patent number: 6859891
    Abstract: An microcomputer is provided including a processor and a debug circuit including a dedicated link which transfers information between the processor and debug circuit to support debugging operations. In one aspect, the processor provides program counter information, which is stored in a memory-mapped register of the debug circuit. The program counter information may be a value of the processor program counter at a writeback stage of a processor pipeline. Also, trace information including message information is transferred in a non-intrusive manner over the dedicated link. In one aspect, the microcomputer is implemented as a single integrated circuit.
    Type: Grant
    Filed: October 1, 1999
    Date of Patent: February 22, 2005
    Assignee: STMicroelectronics Limited
    Inventors: David Alan Edwards, Margaret Rose Gearty, Bernard Ramanadin, Anthony Willis Rich
  • Patent number: 6732307
    Abstract: A system for performing non-intrusive trace is provided which receives trace information from one or more processors. The trace system may be configured by a user to operate in various modes for flexibly storing or transmitting the trace information. The trace system includes a FIFO which is memory-mapped and is capable of being accessed without affecting processor performance. In one aspect, the trace system includes a trace buffer which receives trace information at an internal clock speed of the processor. In another embodiment, a compression protocol is provided for compressing trace messages on-chip prior to transmitting the messages to an external system or storing the messages in memory.
    Type: Grant
    Filed: October 1, 1999
    Date of Patent: May 4, 2004
    Assignee: Hitachi, Ltd.
    Inventor: David Alan Edwards
  • Patent number: 6684348
    Abstract: A system for performing non-intrusive trace is provided which receives trace information from one or more processors. The trace system may be configured by a user to operate in various modes for flexibly storing or transmitting the trace information. The trace system includes a FIFO which is memory-mapped and is capable of being accessed without affecting processor performance. In one aspect, the trace system includes a trace buffer which receives trace information at an internal clock speed of the processor. In another embodiment, a compression protocol is provided for compressing trace messages on-chip prior to transmitting the messages to an external system or storing the messages in memory.
    Type: Grant
    Filed: October 1, 1999
    Date of Patent: January 27, 2004
    Assignee: Hitachi, Ltd.
    Inventors: David Alan Edwards, Anthony Willis Rich
  • Patent number: 6665737
    Abstract: A computer system comprising a microprocessor on a single integrated circuit chip connected to an external computer device via an adapter device; the integrated circuit chip having an on-chip CPU with a plurality of registers and a communication bus providing a parallel communication path between the CPU and a first memory local to the CPU, the integrated circuit further comprising an external communication port connected to the said bus on the integrated circuit chip, the port having an internal connection to the said bus of an internal parallel signal format and an external connection to the adapter unit of a first external format less parallel than the said internal format; the adapter device being connected to the external communication port with the first external format and to the external computer with a second external format having a higher latency than the first external format, the adapter device having an interface for translating between the first external format and the second external format; t
    Type: Grant
    Filed: March 12, 1999
    Date of Patent: December 16, 2003
    Assignee: STMicroelectronics Limited
    Inventor: David Alan Edwards
  • Patent number: 6665816
    Abstract: A system and method for communicating with an integrated circuit is provided that allows an integrated circuit to communicate debugging information and system bus transaction information with an external system. The system may include an interface protocol that provides flow control between the integrated circuit and the external system. The system may include a high-speed link and/or a JTAG link for communicating information. A link may be automatically selected by a debug circuit, or selected by an on-chip device or external system. The high-speed link enables real-time collection of trace information. Links may be memory-mapped, such that on-chip devices and other devices attached to the system bus may access the external system. The high-speed link may also operate at a rate which is integrally coupled with a rate of the processor or system bus. Further, the high-speed link may be adapted to change speeds in response to a change in operating speed of the system bus or processor.
    Type: Grant
    Filed: October 1, 1999
    Date of Patent: December 16, 2003
    Assignee: STMicroelectronics Limited
    Inventors: David Alan Edwards, Stephen James Wright
  • Patent number: 6615370
    Abstract: A system for performing non-intrusive trace is provided which receives trace information from one or more processors. The trace system may be configured by a user to operate in various modes for flexibly storing or transmitting the trace information. The trace system includes a FIFO which is memory-mapped and is capable of being accessed without affecting processor performance. In one aspect, the trace system includes a trace buffer which receives trace information at an internal clock speed of the processor. In another embodiment, a compression protocol is provided for compressing trace messages on-chip prior to transmitting the messages to an external system or storing the messages in memory.
    Type: Grant
    Filed: October 1, 1999
    Date of Patent: September 2, 2003
    Assignee: Hitachi, Ltd.
    Inventors: David Alan Edwards, Anthony Willis Rich