A Formal Methodology for Hardware/Software Co-design of Embedded Systems


Abstract:

Our methodology for control-dominated embedded reactive systems is based on an implementation-independent representation, Codesign Finite State Machines (CFSMs). This representation allows us to preserve semantical correctness throughout the design process, because CFSMs assume unbounded, non-zero reaction delays, that correspond both to hardware and software behavior. CFSMs can be generated from a variety of specification languages, such as Esterel, StateCharts, VHDL, Verilog. Partitioning is user-driven, while our codesign environment performs automatically all other synthesis tasks. We derive hardware directly from CFSMs, assuming single-cycle reaction delays (but pipelining is also allowed by the model semantics). We synthesize software using an intermediate representation, Software Graphs, that allows better optimization and tighter control over implementation costs than general-purpose compilers. We are also planning to synthesize automatically a real-time scheduler and I/O port drivers, depending on the chosen micro-controller. We perform system validation by mixing formal verification (made possible by our finite-state model) with simulation (to identify and rule out special cases).
UCB Design Technology Warehouse Homepage
Contact 
©2002-2018 U.C. Regents