×

EMBEDDED SYSTEM PERFORMANCE

  • US 20130080993A1
  • Filed: 04/04/2011
  • Published: 03/28/2013
  • Est. Priority Date: 04/23/2010
  • Status: Active Grant
First Claim
Patent Images

1. A computer-implemented method of generating an embedded system (4999) comprising a parallelized hardware and/or software implementation of an original computer program (996), which parallelized implementation satisfies one or more criteria regarding hardware constraints of the embedded system (4999), the method comprising the steps of:

  • subjecting (1000) the original computer program (996) to static and dynamic program analysis to obtain structural and behavioral program models,deriving (2000) a preferred design (3999) that satisfies the one or more criteria regarding hardware constraints using the obtained structural and behavioral program models, andbuilding (4000) the embedded system (4999) by transforming the design (3999) to a parallel implementation that comprises a plurality of parallel processes that execute in software and/or hardware,characterized in that the step of subjecting (1000) the original computer program to static and dynamic program analysis is performed on a version of the original computer program (996) in which load and store instructions are annotated with information that links these instructions back to a specific part of a control-dataflow graph (1157),the step of subjecting (1000) comprises adding to the structural and behavioral program models indications of memory dependencies and indications of streaming dependencies,the step of deriving (2000) the design (3999) comprises using the structural and behavioral program models and providing information about mutually parallel implementation of each part of the preferred design (3999), which step comprisesa) introducing a separation into different partitions of load and store instructions that have a detected streaming dependency between them, using the added indications of streaming dependencies from the models,b) introducing a separation into different partitions of load and store instructions that have a detected memory dependency with synchronization protection between them, using the added indications of memory dependencies from the models,c) retaining in a single partition load and store instructions that have another detected memory dependency between them, using the added indications of memory dependencies from the models,the step of deriving (2000) the design (3999) further comprising a step of adding to the structural and behavioral program models indications of source lines and variables in said original computer program to relate the introduced partitions and the detected dependencies in the program model with locations in the original program source code, andthe step of building (4000) the embedded system (4999) comprising specifying the preferred design (3999) by means of a series of changes to be made to the original computer program (996) based at least in part on the added indications, applying the series of changes to the original computer program (996), and using the thus-changed original computer program (996) in the building of the embedded system (4999).

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×