130 likes | 254 Vues
This document outlines the principles of interface-based design, emphasizing the orthogonalization of concerns in both computation and communication. It discusses formal models of computation, including FSMs and CSPs, and explores the Cheetah Simulator as an application of these concepts. The paper highlights the importance of abstraction, decomposition, and refinement in design processes, demonstrating their necessity for improved modeling and synthesis. Future directions include enhanced design exploration, verification, and improved communication behaviors, promoting better design reuse and extraction.
E N D
Interface-based Design Donald Chai EE249 Interface-based Design
Outline • Orthogonalization of concerns • Formalisms • Interface-based Design Example • Cheetah Simulator • Future Inroads
Orthogonalization of Concerns • Behavior • (or computation, coordination) • Communication • (or interfaces) • These two are (or should be) independent
Interface-based Design • Done all the time • OSI stack • Memory mapped I/O • Virtual memory
Required Tools • A good formalism with which to perform: • Abstraction (and hierarchy) • Decomposition (and composition) • These concepts exist for both computation and communication
Formalism – Models of Computation • All models of computation specify a set of actors and a communication mechanism • FSMs – synchronous composition • CFSMs – event broadcast • Dataflow/KPN – lossless queues • CSP – rendezvous • Some models conflate communication and computation
Refinement (Abstraction-1) • Simple channel through which tokens are passed • REQ/ACK protocol • Master requests, slave acknowledges • Repartition
(De)composition • Largely ignored in this paper • Consider at least three communicating processes
Design Example • What • Software thread sending packets through a hardware transmitter • Asynchronous Transfer Mode (ATM) • How • Communication through bus (PCI, EISA, or PI) • Single byte transmission or burst mode?
Cheetah Simulator • Event driven • Built with communication platforms
Cheetah Simulator (II) • At most abstract level, channel has a simple delay • With more detail, expands in both space and time • Simulation speed varies from 7x to 175x RTL
Future Inroads • Better modeling and design exploration • Can mix and match communication and behaviors • Better synthesis • Allows design reuse • Improves don’t care extraction • Composeability
Future Inroads (II) • Verification • Abstraction and Decomposition are necessary • Can be used between steps in communication platform • Formal specification allows test generation