Interface-based Design Donald Chai EE249. Outline Orthogonalization of concerns Formalisms Interface-based Design Example Cheetah Simulator Future Inroads.

Slides:



Advertisements
Similar presentations
Network II.5 simulator ..
Advertisements

Network Research Group Universiti Sains Malaysia.
Embedded System, A Brief Introduction
A hardware-software co-design approach with separated verification/synthesis between computation and communication Masahiro Fujita VLSI Design and Education.
SoC Challenges & Transaction Level Modeling (TLM) Dr. Eng. Amr T. Abdel-Hamid ELECT 1002 Spring 2008 System-On-a-Chip Design.
Accessing I/O Devices Processor Memory BUS I/O Device 1 I/O Device 2.
1  1998 Morgan Kaufmann Publishers Interfacing Processors and Peripherals.
System Area Network Abhiram Shandilya 12/06/01. Overview Introduction to System Area Networks SAN Design and Examples SAN Applications.
ECOE 560 Design Methodologies and Tools for Software/Hardware Systems Spring 2004 Serdar Taşıran.
Why to learn OSI reference Model? The answer is too simple that It tells us that how communication takes place between computers on internet but how??
Chapter 10 Input/Output Organization. Connections between a CPU and an I/O device Types of bus (Figure 10.1) –Address bus –Data bus –Control bus.
Lecture Objectives: 1)Explain the limitations of flash memory. 2)Define wear leveling. 3)Define the term IO Transaction 4)Define the terms synchronous.
Avishai Wool lecture Introduction to Systems Programming Lecture 8 Input-Output.
An Automata-based Approach to Testing Properties in Event Traces H. Hallal, S. Boroday, A. Ulrich, A. Petrenko Sophia Antipolis, France, May 2003.
Transaction Level Modeling with SystemC Adviser :陳少傑 教授 Member :王啟欣 P Member :陳嘉雄 R Member :林振民 P
Introduction Designing cost-sensitive real-time control systems for safety-critical applications requires a careful analysis of the cost/fault-coverage.
Addressing the System-on-a-Chip Interconnect Woes Through Communication-Based Design N. Vinay Krishnan EE249 Class Presentation.
I/O Channels I/O devices getting more sophisticated e.g. 3D graphics cards CPU instructs I/O controller to do transfer I/O controller does entire transfer.
Communication-Based Design 2 Motivation: System-on-a-Chip Design s Migration of the system from board to chip s Complexity of chip design increases s.
1 Interfacing Processors and Peripherals I/O Design affected by many factors (expandability, resilience) Performance: — access latency — throughput — connection.
Active Messages: a Mechanism for Integrated Communication and Computation von Eicken et. al. Brian Kazian CS258 Spring 2008.
1 Pupil Detection and Tracking System Lior Zimet Sean Kao EE 249 Project Mentors: Dr. Arnon Amir Yoshi Watanabe.
EE 4272Spring, 2003 EE4272: Computer Networks Instructor: Tricia Chigan Dept.: Elec. & Comp. Eng. Spring, 2003.
Software Engineering, COMP201 Slide 1 Protocol Engineering Protocol Specification using CFSM model Lecture 30.
Applying Ulysses to Bluetooth Alvise Bonivento Mentor: Marco Sgroi.
Automatic Interface Generation P.I.G. : Presented by Trevor Meyerowitz Sonics: Presented by Michael Sheets EE249 Discussion November 30, 1999.
SNAL Sensor Networks Application Language Alvise Bonivento Mentor: Prof. Sangiovanni-Vincentelli 290N project, Fall 04.
Dipartimento di Informatica - Università di Verona Networked Embedded Systems The HW/SW/Network Cosimulation-based Design Flow Introduction Transaction.
9/20/6Lecture 3 - Instruction Set - Al Hardware interface (part 2)
5 th Biennial Ptolemy Miniconference Berkeley, CA, May 9, 2003 MESCAL Application Modeling and Mapping: Warpath Andrew Mihal and the MESCAL team UC Berkeley.
System-Level Types for Component-Based Design Paper by: Edward A. Lee and Yuhong Xiong Presentation by: Dan Patterson.
1 What is an operating system? CSC330Patricia Van Hise.
INPUT/OUTPUT ARCHITECTURE By Truc Truong. Input Devices Keyboard Keyboard Mouse Mouse Scanner Scanner CD-Rom CD-Rom Game Controller Game Controller.
Lecture 12 Today’s topics –CPU basics Registers ALU Control Unit –The bus –Clocks –Input/output subsystem 1.
(1) Modeling Digital Systems © Sudhakar Yalamanchili, Georgia Institute of Technology, 2006.
Presenter : Cheng-Ta Wu Vijay D’silva, S. Ramesh Indian Institute of Technology Bombay Arcot Sowmya University of New South Wales, Sydney.
Ryan McAlister CONNECTORS. Introduction Integration and interaction As important as developing functionality More challenging decisions Transfer control.
CASTNESS‘11 Computer Architectures and Software Tools for Numerical Embedded Scalable Systems Workshop & School: Roma January 17-18th 2011 Frédéric ROUSSEAU.
ICOM 5995: Performance Instrumentation and Visualization for High Performance Computer Systems Lecture 7 October 16, 2002 Nayda G. Santiago.
Windows Operating System Internals - by David A. Solomon and Mark E. Russinovich with Andreas Polze Unit OS6: Device Management 6.1. Principles of I/O.
Contact Information Office: 225 Neville Hall Office Hours: Monday and Wednesday 12:00-1:00 and by appointment.
CHAPTER 3 TOP LEVEL VIEW OF COMPUTER FUNCTION AND INTERCONNECTION
1 Microprocessor-based Systems Course 9 Design of the input/output interfaces (continue)
Operating Systems Lecture 2 Processes and Threads Adapted from Operating Systems Lecture Notes, Copyright 1997 Martin C. Rinard. Zhiqing Liu School of.
Computer Architecture Lecture10: Input/output devices Piotr Bilski.
(More) Interfacing concepts. Introduction Overview of I/O operations Programmed I/O – Standard I/O – Memory Mapped I/O Device synchronization Readings:
1 H ardware D escription L anguages Modeling Digital Systems.
A Comparative Study of the Linux and Windows Device Driver Architectures with a focus on IEEE1394 (high speed serial bus) drivers Melekam Tsegaye
- 1 - Embedded Systems - SDL Some general properties of languages 1. Synchronous vs. asynchronous languages Description of several processes in many languages.
TEMPLATE DESIGN © Hardware Design, Synthesis, and Verification of a Multicore Communication API Ben Meakin, Ganesh Gopalakrishnan.
David Weiss Software Product-Line Engineering: A Family-Based Software Development Process: Designing The Family David Weiss
I/O management is a major component of operating system design and operation Important aspect of computer operation I/O devices vary greatly Various methods.
Design & Co-design of Embedded Systems Next Step: Transaction-Level Modeling Maziar Goudarzi.
Issues Autonomic operation (fault tolerance) Minimize interference to applications Hardware support for new operating systems Resource management (global.
August 1, 2001Systems Architecture II1 Systems Architecture II (CS ) Lecture 9: I/O Devices and Communication Buses * Jeremy R. Johnson Wednesday,
Blue Brain Project Carlos Osuna, Carlos Aguado, Fabien Delalondre.
1 Copyright  2001 Pao-Ann Hsiung SW HW Module Outline l Introduction l Unified HW/SW Representations l HW/SW Partitioning Techniques l Integrated HW/SW.
©2008 R. Gupta, UCSD COSMOS Summer 2008 Peripheral Interfaces Rajesh K. Gupta Computer Science and Engineering University of California, San Diego.
SystemC Semantics by Actors and Reduction Techniques in Model Checking Marjan Sirjani Formal Methods Lab, ECE Dept. University of Tehran, Iran MoCC 2008.
Layers Architecture Pattern Source: Pattern-Oriented Software Architecture, Vol. 1, Buschmann, et al.
Networked Embedded Systems Sachin Katti & Pengyu Zhang EE107 Spring 2016 Lecture 9 Serial Buses – SPI, I2C.
COMPUTER NETWORKS Lecture-8 Husnain Sherazi. Review Lecture 7  Shared Communication Channel  Locality of Reference Principle  LAN Topologies – Star.
FIGURE 4.1 SOC System Overview.. FIGURE 4.2 Memory Map Representation for an Intel Platform.
Introduction to Operating Systems Concepts
DIRECT MEMORY ACCESS and Computer Buses
CS 286 Computer Organization and Architecture
Communication-Based Design
Layering & protocol stacks Johan Lukkien
Chapter 13: I/O Systems.
Presentation transcript:

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) 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 ) 1. Simple channel through which tokens are passed 2. REQ/ACK protocol Master requests, slave acknowledges 3. 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