1 / 13

Interface-based Design

Interface-based Design. Donald Chai EE249. Outline. Orthogonalization of concerns Formalisms Interface-based Design Example Cheetah Simulator Future Inroads. Orthogonalization of Concerns. Behavior (or computation, coordination) Communication (or interfaces)

Download Presentation

Interface-based Design

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Interface-based Design Donald Chai EE249 Interface-based Design

  2. Outline • Orthogonalization of concerns • Formalisms • Interface-based Design Example • Cheetah Simulator • Future Inroads

  3. Orthogonalization of Concerns • Behavior • (or computation, coordination) • Communication • (or interfaces) • These two are (or should be) independent

  4. Interface-based Design • Done all the time • OSI stack • Memory mapped I/O • Virtual memory

  5. Required Tools • A good formalism with which to perform: • Abstraction (and hierarchy) • Decomposition (and composition) • These concepts exist for both computation and communication

  6. 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

  7. Refinement (Abstraction-1) • Simple channel through which tokens are passed • REQ/ACK protocol • Master requests, slave acknowledges • Repartition

  8. (De)composition • Largely ignored in this paper • Consider at least three communicating processes

  9. 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?

  10. Cheetah Simulator • Event driven • Built with communication platforms

  11. 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

  12. 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

  13. Future Inroads (II) • Verification • Abstraction and Decomposition are necessary • Can be used between steps in communication platform • Formal specification allows test generation

More Related