A Petri net based unified representation for hardware/software co-design

University dissertation from Linköping : Univ

Abstract:

This thesis describes and defines a design representation model for hardware/software co-design. To illustrate its usefulness we show how designs captured in the representation can be repartitioned by moving functionality between hardware and software. We also describe a co-simulator which has been implemented using the representation and can be used to validate systems consisting of hardware and software components.The term co-design implies the use of design methodologies for heterogeneous systems which emphasize the importance of keeping a system-wide perspective throughout the design process and letting design activities in different domains influence each other. In the case of hardware/software systems this means that the design of hardware and software subsystems should not be carried out in isolation from each other.We are developing a design environment for hardware/software co-design and the objective of the work presented in this thesis has been to define the internal representation that will be used in this environment to capture designs as they evolve. The environment should support transformation-based design methods and in particular it should be possible to introduce transformations that move functionality from hardware to software and vice versa, thus allowing repartitioning of designs to be performed as a part of the normal optimization process.Our co-design representation captures systems consisting of hardware circuits cooperating with software processes run on pre-defined processors. Its structure and semantics are formally defined, and hardware and software are represented in very similar manners, as regards both structure and semantics. Designs are represented as subsystems linked by communication channels. Each subsystem has a local controller which is represented by a Petri net. Data manipulation representation is based on datapaths in hardware and syntax trees in software. The representation is executable. It captures both abstract and concrete aspects of designs and supports transformation-based design methods. Implementation of the co-design representation has demonstrated that it can be used for several important tasks of the hardware/software co-design process.

  This dissertation MIGHT be available in PDF-format. Check this page to see if it is available for download.