Fundamental Algorithms for System Modeling, Analysis, and Optimization

Size: px
Start display at page:

Download "Fundamental Algorithms for System Modeling, Analysis, and Optimization"

Transcription

1 Fundamental lgorithms for System Modeling, nalysis, and Optimization Stavros Tripakis, Edward. Lee UC erkeley EECS 144/244 Fall 2013 Copyright , E.. Lee, J. Roydhowdhury, S.. Seshia, S. Tripakis, ll rights reserved Synchronous Systems part 3 Compositionality Fundamental principle in system design. Yet often overlooked. lso sometimes difficult to achieve. lso many facets. Here, we will see whether our 3 approaches to handle feedback are compositional in the following sense: can a composite system be treated in the same way as an atomic system? EECS 144/244, UC erkeley: 3 1

2 Non-deterministic approach Composite system = parallel composition = conjunction: Set of variables: Initial state formula: Next state formula:,, Grouping and together results in a similar system non-deterministic approach is compositional. EECS 144/244, UC erkeley: 4 What about the constructive fixpoint approach? Can handle open circuits = circuits with free inputs. Can compute characteristic functions for such circuits. Can plug them into larger circuit context => approach is compositional. EECS 144/244, UC erkeley: 5 2

3 What about the strict approach? Forbid instantaneous feedback = Forbid feedback unless if broken by unit-delay components (Moore machines) OK Not OK EECS 144/244, UC erkeley: 6 Composition of Mealy machines Suppose and are Mealy machines. Is a Mealy machine? EECS 144/244, UC erkeley: 7 3

4 Composition of Mealy machines If is a Mealy machine, it has an output function:.out.out(, ) returns (, ) { :=.out(); :=.out(); return (,); } EECS 144/244, UC erkeley: 8 roblem with treating in a monolithic way If is a Mealy machine, it has an output function:.out.out(, ) returns (, ); Instantaneous feedback => forbidden! EECS 144/244, UC erkeley: 9 4

5 roblem with treating in a monolithic way monolithic machine => false I/O dependencies.out(, ) returns (, ); EECS 144/244, UC erkeley: 10 State of the art tools suffer from this problem Note: replacing the CodeReuseSubsystem with a normal Subsystem allows Simulink to run the model without problems. Why? Simulink flattens Subsystems. EECS 144/244, UC erkeley: 11 5

6 Solution: non-monolithic Mealy machines Mealy machine with multiple output functions.out1( ) returns { return.out( ); }.out2( ) returns { return.out( ); } EECS 144/244, UC erkeley: 12 Non-monolithic interfaces.out1( ) returns ;.out2( ) returns ; EECS 144/244, UC erkeley: 13 6

7 Non-monolithic interfaces.out1( ) returns ;.out2( ) returns ; EECS 144/244, UC erkeley: 14 Non-monolithic interfaces Non-monolithic interface does not restrict usage.out1( ) returns ;.out2( ) returns ; EECS 144/244, UC erkeley: 15 7

8 Non-monolithic interfaces Interface is generally a graph: no cyclic dependency! // output function: UD.out( ) returns output { return state; } in UD.up unit-delay what if we add feedback? // state update function:.up( input ) returns void { state := input; } UD.out INTERFCE GRH out EECS 144/244, UC erkeley: 16 ottom-up interface synthesis C Given interfaces for sub-blocks,, C, compute interface for composite block. EECS 144/244, UC erkeley: 17 8

9 Simple non-monolithic interface.out1( ) returns ;.out2( ) returns ; EECS 144/244, UC erkeley: 18 What about more complex diagrams? what about this? or this? EECS 144/244, UC erkeley: 19 9

10 Interface synthesis for block diagrams = graph clustering block diagram interface EECS 144/244, UC erkeley: 20 How it s done C D EECS 144/244, UC erkeley: 21 10

11 How it s done Interface for Interface for Interface for C Interface for D EECS 144/244, UC erkeley: 22 How it s done clustering EECS 144/244, UC erkeley: 23 11

12 How it s done Interface for.out1().out2().out3() EECS 144/244, UC erkeley: 24 Different clusterings => different interfaces.out1().out2() x3.out3() non-monolithic interface for trade-off: interface size vs. reusability.out() x3 monolithic interface for EECS 144/244, UC erkeley: 25 12

13 Different clustering algorithms = different tradeoffs Details: Lublinerman, T. et al. [DTE 08,RTS 08,OL 09] Clustering method Complexity chieves maximal reusability? chieves minimal interface size? Modularity bound? chieves minimal code size? step-get olynomial No lmost <=2 Yes functions dynamic olynomial Yes Yes <=N+1 No functions* disjoint Ncomplete Yes Yes? Yes greedy olynomial Yes No? Yes * N = number of block outputs EECS 144/244, UC erkeley: 26 13

Modular code generation from synchronous models:

Modular code generation from synchronous models: Modular code generation from synchronous models: modularity vs. reusability vs. code size Stavros Tripakis Joint work with Roberto Lublinerman, Penn State CHESS seminar, Berkeley, Feb 2009 1 Semantics-preserving

More information

Compositionality in system design: interfaces everywhere! UC Berkeley

Compositionality in system design: interfaces everywhere! UC Berkeley Compositionality in system design: interfaces everywhere! Stavros Tripakis UC Berkeley DREAMS Seminar, Mar 2013 Computers as parts of cyber physical systems cyber-physical ~98% of the world s processors

More information

Main application of SDF: DSP hardware modeling

Main application of SDF: DSP hardware modeling EE 144/244: Fundamental lgorithms for System Modeling, nalysis, and Optimization Fall 2014 Dataflow Timed SDF, Throughput nalysis Stavros Tripakis University of California, erkeley Stavros Tripakis (UC

More information

Compositionality in Synchronous Data Flow: Modular Code Generation from Hierarchical SDF Graphs

Compositionality in Synchronous Data Flow: Modular Code Generation from Hierarchical SDF Graphs Compositionality in Synchronous Data Flow: Modular Code Generation from Hierarchical SDF Graphs Stavros Tripakis Dai Bui Marc Geilen Bert Rodiers Edward A. Lee Electrical Engineering and Computer Sciences

More information

Modular Code Generation from Synchronous Block Diagrams

Modular Code Generation from Synchronous Block Diagrams Modular Code Generation from Synchronous Block Diagrams Modularity vs. Code Size Roberto Lublinerman Computer Science and Engineering Pennsylvania State University rluble@psu.edu Christian Szegedy Cadence

More information

Modularity vs. Reusability: Code Generation from Synchronous Block Diagrams

Modularity vs. Reusability: Code Generation from Synchronous Block Diagrams Modularity vs. Reusability: Code Generation from Synchronous Block Diagrams Roberto Lublinerman Department of Computer Science and Engineering The Pennsylvania State University University Park, P 16802

More information

Compositionality in Synchronous Data Flow: Modular Code Generation from Hierarchical SDF Graphs

Compositionality in Synchronous Data Flow: Modular Code Generation from Hierarchical SDF Graphs Compositionality in Synchronous Data Flow: Modular Code Generation from Hierarchical SDF Graphs STAVROS TRIPAKIS and DAI BUI, University of California, Berkeley MARC GEILEN, Eindhoven University of Technology

More information

Fundamental Algorithms for System Modeling, Analysis, and Optimization

Fundamental Algorithms for System Modeling, Analysis, and Optimization Fundamental Algorithms for System Modeling, Analysis, and Optimization Stavros Tripakis, Edward A. Lee UC Berkeley EECS 144/244 Fall 2014 Copyright 2014, E. A. Lee, J. Roydhowdhury, S. A. Seshia, S. Tripakis

More information

Modular Code Generation from Triggered and Timed Block Diagrams

Modular Code Generation from Triggered and Timed Block Diagrams Modular Code Generation from Triggered and Timed lock Diagrams Roberto Lublinerman Computer Science and Engineering The ennsylvania State University University ark, 682, US rluble@psu.edu Stavros Tripakis

More information

Model-Based Design for Large High Integrity Systems: A Discussion Regarding Model Architecture

Model-Based Design for Large High Integrity Systems: A Discussion Regarding Model Architecture Model-Based Design for Large High Integrity Systems: A Discussion Regarding Model Architecture By Mike Anthony and Jon Friedman MathWorks Inc, Natick, MA, 01760 INTRODUCTION From complex controls problems

More information

Resource-bound process algebras for Schedulability and Performance Analysis of Real-Time and Embedded Systems

Resource-bound process algebras for Schedulability and Performance Analysis of Real-Time and Embedded Systems Resource-bound process algebras for Schedulability and Performance Analysis of Real-Time and Embedded Systems Insup Lee 1, Oleg Sokolsky 1, Anna Philippou 2 1 RTG (Real-Time Systems Group) Department of

More information

EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization

EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization Dataflow Lecture: SDF, Kahn Process Networks Stavros Tripakis University of California, Berkeley Stavros Tripakis: EECS

More information

From synchronous models to distributed, asynchronous architectures

From synchronous models to distributed, asynchronous architectures From synchronous models to distributed, asynchronous architectures Stavros Tripakis Joint work with Claudio Pinello, Cadence Alberto Sangiovanni-Vincentelli, UC Berkeley Albert Benveniste, IRISA (France)

More information

Quantitative Verification and Synthesis of Systems

Quantitative Verification and Synthesis of Systems Quantitative Verification and Synthesis of Systems Sanjit A. Seshia Assistant Professor EECS, UC Berkeley Software-at-Scale Workshop August 2010 Quantitative Analysis / Verification Does the brake-by-wire

More information

Communication Systems Design in Practice

Communication Systems Design in Practice Communication Systems Design in Practice Jacob Kornerup, Ph.D. LabVIEW R&D National Instruments A Word About National Instruments Annual Revenue: $1.14 billion Global Operations: Approximately 6,870 employees;

More information

Overview of Lecture 4. Memory Models, Atomicity & Performance. Ben-Ari Concurrency Model. Dekker s Algorithm 4

Overview of Lecture 4. Memory Models, Atomicity & Performance. Ben-Ari Concurrency Model. Dekker s Algorithm 4 Concurrent and Distributed Programming http://fmt.cs.utwente.nl/courses/cdp/ Overview of Lecture 4 2 Memory Models, tomicity & Performance HC 4 - Tuesday, 6 December 2011 http://fmt.cs.utwente.nl/~marieke/

More information

Introduction to Embedded Systems

Introduction to Embedded Systems Introduction to Embedded Systems Sanjit A. Seshia UC Berkeley EECS 149/249A Fall 2015 2008-2015: E. A. Lee, A. L. Sangiovanni-Vincentelli, S. A. Seshia. All rights reserved. Chapter 3: Discrete Dynamics,

More information

Ptolemy II The automotive challenge problems version 4.1

Ptolemy II The automotive challenge problems version 4.1 Ptolemy II The automotive challenge problems version 4.1 Johan Eker Edward Lee with thanks to Jie Liu, Paul Griffiths, and Steve Neuendorffer MoBIES Working group meeting, 27-28 September 2001, Dearborn

More information

Communication Systems Design in Practice

Communication Systems Design in Practice Communication Systems Design in Practice Jacob Kornerup, Ph.D. LabVIEW R&D National Instruments '87 '88 '89 '90 '91 '92 '93 '94 '95 '96 '97 '98 '99 '00 '01 '02 03 04 '05 '06 '07 '08 '09 '10 '11 '12 '13

More information

Hardware-Software Codesign

Hardware-Software Codesign Hardware-Software Codesign 8. Performance Estimation Lothar Thiele 8-1 System Design specification system synthesis estimation -compilation intellectual prop. code instruction set HW-synthesis intellectual

More information

Advanced Digital Logic Design EECS 303

Advanced Digital Logic Design EECS 303 Advanced Digital Logic Design EECS 303 http://ziyang.eecs.northwestern.edu/eecs303/ Teacher: Robert Dick Office: L477 Tech Email: dickrp@northwestern.edu Phone: 847 467 2298 Outline 1. Finite state machines

More information

A framework for automatic generation of audio processing applications on a dual-core system

A framework for automatic generation of audio processing applications on a dual-core system A framework for automatic generation of audio processing applications on a dual-core system Etienne Cornu, Tina Soltani and Julie Johnson etienne_cornu@amis.com, tina_soltani@amis.com, julie_johnson@amis.com

More information

EECS 144/244. Fundamental Algorithms for System Modeling, Analysis, and Optimization. Lecture 1: Introduction, Systems

EECS 144/244. Fundamental Algorithms for System Modeling, Analysis, and Optimization. Lecture 1: Introduction, Systems EECS 144/244 Fundamental Algorithms for System Modeling, Analysis, and Optimization Lecture 1: Introduction, Systems Stavros Tripakis UC Berkeley Spring 2013 1 Computers as parts of Systems ~98% of the

More information

1 Construct implication chart, one square for each combination of states. 2 Square labeled S i, S j, if outputs differ than square gets X (0).

1 Construct implication chart, one square for each combination of states. 2 Square labeled S i, S j, if outputs differ than square gets X (0). Advanced Digital Logic Design EECS 33 http://ziyang.eecs.northwestern.edu/eecs33/ FSM design overview Teacher: Robert Dick Office: L477 Tech Email: dickrp@northwestern.edu Phone: 847 467 2298 State diagram

More information

Library-Based Scalable Refinement Checking for Contract-Based Design

Library-Based Scalable Refinement Checking for Contract-Based Design Library-Based Scalable Refinement Checking for Contract-Based Design Antonio Iannopollo Pierluigi Nuzzo Stavros Tripakis Alberto Sangiovanni-Vincentelli EXCAPE ANNUAL MEETING 10-11 MARCH 2014 UC BERKELEY

More information

Sequential Logic Synthesis

Sequential Logic Synthesis Sequential Logic Synthesis Logic Circuits Design Seminars WS2010/2011, Lecture 9 Ing. Petr Fišer, Ph.D. Department of Digital Design Faculty of Information Technology Czech Technical University in Prague

More information

Actor-Oriented Design: Concurrent Models as Programs

Actor-Oriented Design: Concurrent Models as Programs Actor-Oriented Design: Concurrent Models as Programs Edward A. Lee Professor, UC Berkeley Director, Center for Hybrid and Embedded Software Systems (CHESS) Parc Forum Palo Alto, CA May 13, 2004 Abstract

More information

Modal Models in Ptolemy

Modal Models in Ptolemy Modal Models in Ptolemy Edward A. Lee Stavros Tripakis UC Berkeley Workshop on Equation-Based Object-Oriented Modeling Languages and Tools 3rd International Workshop on Equation-Based Object-Oriented Modeling

More information

Linear Time Unit Propagation, Horn-SAT and 2-SAT

Linear Time Unit Propagation, Horn-SAT and 2-SAT Notes on Satisfiability-Based Problem Solving Linear Time Unit Propagation, Horn-SAT and 2-SAT David Mitchell mitchell@cs.sfu.ca September 25, 2013 This is a preliminary draft of these notes. Please do

More information

Voting Machines and Automotive Software: Explorations with SMT at Scale

Voting Machines and Automotive Software: Explorations with SMT at Scale Voting Machines and Automotive Software: Explorations with SMT at Scale Sanjit A. Seshia EECS Department UC Berkeley Joint work with: Bryan Brady, Randy Bryant, Susmit Jha, Jon Kotker, John O Leary, Alexander

More information

Redundant States in Sequential Circuits

Redundant States in Sequential Circuits Redundant States in Sequential Circuits Removal of redundant states is important because Cost: the number of memory elements is directly related to the number of states Complexity: the more states the

More information

VHDL for Synthesis. Course Description. Course Duration. Goals

VHDL for Synthesis. Course Description. Course Duration. Goals VHDL for Synthesis Course Description This course provides all necessary theoretical and practical know how to write an efficient synthesizable HDL code through VHDL standard language. The course goes

More information

Overview. CSE372 Digital Systems Organization and Design Lab. Hardware CAD. Two Types of Chips

Overview. CSE372 Digital Systems Organization and Design Lab. Hardware CAD. Two Types of Chips Overview CSE372 Digital Systems Organization and Design Lab Prof. Milo Martin Unit 5: Hardware Synthesis CAD (Computer Aided Design) Use computers to design computers Virtuous cycle Architectural-level,

More information

Verilog Synthesis and FSMs. UCB EECS150 Fall 2010 Lab Lecture #3

Verilog Synthesis and FSMs. UCB EECS150 Fall 2010 Lab Lecture #3 Verilog Synthesis and FSMs UCB EECS150 Fall 2010 Lab Lecture #3 Agenda Logic Synthesis Behavioral Verilog HDL Blocking vs. Non-Blocking Administrative Info Lab #3: The Combo Lock FSMs in Verilog HDL 2

More information

I 3 I 2. ! Language of logic design " Logic optimization, state, timing, CAD tools

I 3 I 2. ! Language of logic design  Logic optimization, state, timing, CAD tools Course Wrap-up Let s Try the Priority Encoder One More Time = =! Priority Encoder Revisited! What (We Hope) You Learned I 3 O 3 I j O j! Design Methodology! I 2 O 2 I O I O Zero Oj Ij Ij CS 5 - Spring

More information

A Schedulability-Preserving Transformation Scheme from Boolean- Controlled Dataflow Networks to Petri Nets

A Schedulability-Preserving Transformation Scheme from Boolean- Controlled Dataflow Networks to Petri Nets Schedulability-Preserving ransformation Scheme from oolean- ontrolled Dataflow Networks to Petri Nets ong Liu Edward. Lee University of alifornia at erkeley erkeley,, 94720, US {congliu,eal}@eecs. berkeley.edu

More information

Towards Lab Based MOOCs: Embedded Systems, Robotics, and Beyond

Towards Lab Based MOOCs: Embedded Systems, Robotics, and Beyond Towards Lab Based MOOCs: Embedded Systems, Robotics, and Beyond Sanjit A. Seshia UC Berkeley Joint work with: Edward A. Lee, Jeff. C. Jensen, Alexandre Donzé, Garvit Juniwal, Andy Chang UC Berkeley & NI

More information

Networked CPS: Some Fundamental Challenges

Networked CPS: Some Fundamental Challenges Networked CPS: Some Fundamental Challenges John S. Baras Institute for Systems Research Department of Electrical and Computer Engineering Fischell Department of Bioengineering Department of Mechanical

More information

Concurrent Models of Computation

Concurrent Models of Computation Concurrent Models of Computation Edward A. Lee Robert S. Pepper Distinguished Professor, UC Berkeley EECS 219D Concurrent Models of Computation Fall 2011 Copyright 2009-2011, Edward A. Lee, All rights

More information

CS 3640: Introduction to Networks and Their Applications

CS 3640: Introduction to Networks and Their Applications CS 3640: Introduction to Networks and Their Applications Fall 2018, Lecture 7: The Link Layer II Medium Access Control Protocols Instructor: Rishab Nithyanand Teaching Assistant: Md. Kowsar Hossain 1 You

More information

Requirements and Design Overview

Requirements and Design Overview Requirements and Design Overview Robert B. France Colorado State University Robert B. France O-1 Why do we model? Enhance understanding and communication Provide structure for problem solving Furnish abstractions

More information

Boolean Functions (Formulas) and Propositional Logic

Boolean Functions (Formulas) and Propositional Logic EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving Part I: Basics Sanjit A. Seshia EECS, UC Berkeley Boolean Functions (Formulas) and Propositional Logic Variables: x 1, x 2, x 3,, x

More information

Future Directions. Edward A. Lee. Berkeley, CA May 12, A New Computational Platform: Ubiquitous Networked Embedded Systems. actuate.

Future Directions. Edward A. Lee. Berkeley, CA May 12, A New Computational Platform: Ubiquitous Networked Embedded Systems. actuate. Future Directions Edward A. Lee 6th Biennial Ptolemy Miniconference Berkeley, CA May 12, 2005 A New Computational Platform: Ubiquitous Networked Embedded Systems sense actuate control Ptolemy II support

More information

A Deterministic Concurrent Language for Embedded Systems

A Deterministic Concurrent Language for Embedded Systems A Deterministic Concurrent Language for Embedded Systems Stephen A. Edwards Columbia University Joint work with Olivier Tardieu SHIM:A Deterministic Concurrent Language for Embedded Systems p. 1/38 Definition

More information

Operating Systems. Synchronization

Operating Systems. Synchronization Operating Systems Fall 2014 Synchronization Myungjin Lee myungjin.lee@ed.ac.uk 1 Temporal relations Instructions executed by a single thread are totally ordered A < B < C < Absent synchronization, instructions

More information

Internet Architecture. Network Layer Overview. Fundamental Network Layer Function. Protocol Layering and Data. Computer Networks 9/23/2009

Internet Architecture. Network Layer Overview. Fundamental Network Layer Function. Protocol Layering and Data. Computer Networks 9/23/2009 omputer Networks 9//9 Network Layer Overview Kai Shen Internet rchitecture ottom-up: : electromagnetic signals on the wire : data transfer between neighboring elements encoding, framing, error correction,

More information

Lecture Notes for Chapter 2: Getting Started

Lecture Notes for Chapter 2: Getting Started Instant download and all chapters Instructor's Manual Introduction To Algorithms 2nd Edition Thomas H. Cormen, Clara Lee, Erica Lin https://testbankdata.com/download/instructors-manual-introduction-algorithms-2ndedition-thomas-h-cormen-clara-lee-erica-lin/

More information

EE382N.23: Embedded System Design and Modeling

EE382N.23: Embedded System Design and Modeling EE38N.3: Embedded System Design and Modeling Lecture 5 Process-Based MoCs Andreas Gerstlauer Electrical and Computer Engineering University of Texas at Austin gerstl@ece.utexas.edu Lecture 5: Outline Process-based

More information

Chapter 39: Concepts of Time-Triggered Communication. Wenbo Qiao

Chapter 39: Concepts of Time-Triggered Communication. Wenbo Qiao Chapter 39: Concepts of Time-Triggered Communication Wenbo Qiao Outline Time and Event Triggered Communication Fundamental Services of a Time-Triggered Communication Protocol Clock Synchronization Periodic

More information

EECS150. Implement of Processor FSMs

EECS150. Implement of Processor FSMs EECS5 Section Controller Implementations Fall Implement of Processor FSMs Classical Finite State Machine Design Divide and Conquer Approach: Time-State Method Partition FSM into multiple communicating

More information

Concurrent Models of Computation for Embedded Software

Concurrent Models of Computation for Embedded Software Concurrent Models of Computation for Embedded Software Edward A. Lee Professor, UC Berkeley EECS 219D Concurrent Models of Computation Fall 2011 Copyright 2009-2011, Edward A. Lee, All rights reserved

More information

Outline. EECS Components and Design Techniques for Digital Systems. Lec 11 Putting it all together Where are we now?

Outline. EECS Components and Design Techniques for Digital Systems. Lec 11 Putting it all together Where are we now? Outline EECS 5 - Components and Design Techniques for Digital Systems Lec Putting it all together -5-4 David Culler Electrical Engineering and Computer Sciences University of California Berkeley Top-to-bottom

More information

Combined Code and Data Minimization Algorithms

Combined Code and Data Minimization Algorithms Problem Statement ombined ode and ata Minimization lgorithms March, 995 Mini onference on Ptolemy Praveen K Murthy (U erkeley, Shuvra S hattacharyya (Hitachi merica Ltd, dward Lee (U erkeley {murthy,shuvra,eal}@eecsberkeleyedu

More information

Programming Languages for Real-Time Systems. LS 12, TU Dortmund

Programming Languages for Real-Time Systems. LS 12, TU Dortmund Programming Languages for Real-Time Systems Prof. Dr. Jian-Jia Chen LS 12, TU Dortmund 20 June 2016 Prof. Dr. Jian-Jia Chen (LS 12, TU Dortmund) 1 / 41 References Slides are based on Prof. Wang Yi, Prof.

More information

Uncertain Data Models

Uncertain Data Models Uncertain Data Models Christoph Koch EPFL Dan Olteanu University of Oxford SYNOMYMS data models for incomplete information, probabilistic data models, representation systems DEFINITION An uncertain data

More information

CSE 332 Autumn 2016 Final Exam (closed book, closed notes, no calculators)

CSE 332 Autumn 2016 Final Exam (closed book, closed notes, no calculators) Name: Sample Solution Email address (UWNetID): CSE 332 Autumn 2016 Final Exam (closed book, closed notes, no calculators) Instructions: Read the directions for each question carefully before answering.

More information

Introduction to Embedded Systems

Introduction to Embedded Systems Introduction to Embedded Systems Edward A. Lee & Sanjit A. Seshia UC Berkeley EECS 124 Spring 2008 Copyright 2008, Edward A. Lee & Sanjit A. Seshia, All rights reserved Lecture 19: Execution Time Analysis

More information

Design Pattern Detection

Design Pattern Detection Design Pattern Detection Design Patterns EECS 6431 Design Pattern Detection 2/22 A design pattern systematically names, explains and evaluates an important and recurring design problem and its solution

More information

Specifications Part 1

Specifications Part 1 pm3 12 Specifications Part 1 Embedded System Design Kluwer Academic Publisher by Peter Marwedel TU Dortmund 2008/11/15 ine Marwedel, 2003 Graphics: Alexandra Nolte, Ges Introduction 12, 2008-2 - 1 Specification

More information

Tokens vs. Signals: On Conformance between Formal Models of Dataflow and Hardware

Tokens vs. Signals: On Conformance between Formal Models of Dataflow and Hardware DOI 10.1007/s11265-015-0971-y Tokens vs. Signals: On Conformance between Formal Models of Dataflow and Hardware Stavros Tripakis Rhishikesh Limaye Kaushik Ravindran Guoqiang Wang Hugo Andrade Arkadeb Ghosal

More information

Black Box Testing. EEC 521: Software Engineering. Specification-Based Testing. No Source Code. Software Testing

Black Box Testing. EEC 521: Software Engineering. Specification-Based Testing. No Source Code. Software Testing Black Box Testing EEC 521: Software Engineering Software Testing Black-Box Testing Test-Driven Development Also known as specification-based testing Tester has access only to running code and the specification

More information

Accelerating Geometric Queries. Computer Graphics CMU /15-662, Fall 2016

Accelerating Geometric Queries. Computer Graphics CMU /15-662, Fall 2016 Accelerating Geometric Queries Computer Graphics CMU 15-462/15-662, Fall 2016 Geometric modeling and geometric queries p What point on the mesh is closest to p? What point on the mesh is closest to p?

More information

Stateflow for Signal Processing and Communications Applications with Code Generation Capabilities

Stateflow for Signal Processing and Communications Applications with Code Generation Capabilities Stateflow for Signal Processing and Communications Applications with Code Generation Capabilities MathWorks Korea 이웅재부장 Senior Application Engineer 2013 The MathWorks, Inc. 1 Agenda State Machines in Signal

More information

Classes and Inheritance in Actor- Oriented Models

Classes and Inheritance in Actor- Oriented Models Classes and Inheritance in Actor- Oriented Models Stephen Neuendorffer Edward Lee UC Berkeley Chess Review May 8, 2003 Berkeley, CA Introduction Component-based design Object-oriented components Actor-oriented

More information

CMSC 330: Organization of Programming Languages

CMSC 330: Organization of Programming Languages CMSC 330: Organization of Programming Languages Multithreading Multiprocessors Description Multiple processing units (multiprocessor) From single microprocessor to large compute clusters Can perform multiple

More information

EMBEDDED OPERATING SYSTEMS

EMBEDDED OPERATING SYSTEMS EMBEDDED OPERATING SYSTEMS Embedded Operating Systems Requirements Real-time OSes General requirements Scheduling, task switching, and I/O Require the support of an OS for embedded applications Some very

More information

nalysis, Control, and Design of Stochastic Flow Systems Limited Storage

nalysis, Control, and Design of Stochastic Flow Systems Limited Storage nalysis, Control, and Design of Stochastic Flow Systems 1 / 42 Analysis, Control, and Design of Stochastic Flow Systems with Limited Storage Stanley B. Gershwin Department of Mechanical Engineering Massachusetts

More information

CSE 332: Data Structures & Parallelism Lecture 22: Minimum Spanning Trees. Ruth Anderson Winter 2018

CSE 332: Data Structures & Parallelism Lecture 22: Minimum Spanning Trees. Ruth Anderson Winter 2018 SE 33: Data Structures & Parallelism Lecture : Minimum Spanning Trees Ruth nderson Winter 08 Minimum Spanning Trees iven an undirected graph =(V,E), find a graph =(V, E ) such that: E is a subset of E

More information

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18 601.433/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18 22.1 Introduction We spent the last two lectures proving that for certain problems, we can

More information

Distributed Systems. 09. State Machine Replication & Virtual Synchrony. Paul Krzyzanowski. Rutgers University. Fall Paul Krzyzanowski

Distributed Systems. 09. State Machine Replication & Virtual Synchrony. Paul Krzyzanowski. Rutgers University. Fall Paul Krzyzanowski Distributed Systems 09. State Machine Replication & Virtual Synchrony Paul Krzyzanowski Rutgers University Fall 2016 1 State machine replication 2 State machine replication We want high scalability and

More information

Verilog for High Performance

Verilog for High Performance Verilog for High Performance Course Description This course provides all necessary theoretical and practical know-how to write synthesizable HDL code through Verilog standard language. The course goes

More information

Graduate Institute of Electronics Engineering, NTU. Lecturer: Chihhao Chao Date:

Graduate Institute of Electronics Engineering, NTU. Lecturer: Chihhao Chao Date: Design of Datapath Controllers and Sequential Logic Lecturer: Date: 2009.03.18 ACCESS IC LAB Sequential Circuit Model & Timing Parameters ACCESS IC LAB Combinational Logic Review Combinational logic circuits

More information

Joint Entity Resolution

Joint Entity Resolution Joint Entity Resolution Steven Euijong Whang, Hector Garcia-Molina Computer Science Department, Stanford University 353 Serra Mall, Stanford, CA 94305, USA {swhang, hector}@cs.stanford.edu No Institute

More information

Writing Circuit Descriptions 8

Writing Circuit Descriptions 8 8 Writing Circuit Descriptions 8 You can write many logically equivalent descriptions in Verilog to describe a circuit design. However, some descriptions are more efficient than others in terms of the

More information

The Ptolemy Kernel Supporting Heterogeneous Design

The Ptolemy Kernel Supporting Heterogeneous Design February 16, 1995 The Ptolemy Kernel Supporting Heterogeneous Design U N T H E I V E R S I T Y A O F LET THERE BE 1868 LIG HT C A L I A I F O R N by The Ptolemy Team 1 Proposed article for the RASSP Digest

More information

fakultät für informatik informatik 12 technische universität dortmund Specifications Peter Marwedel TU Dortmund, Informatik /11/15

fakultät für informatik informatik 12 technische universität dortmund Specifications Peter Marwedel TU Dortmund, Informatik /11/15 12 Specifications Peter Marwedel TU Dortmund, Informatik 12 2008/11/15 Graphics: Alexandra Nolte, Gesine Marwedel, 2003 Structure of this course Application Knowledge 3: Embedded System HW 2: Specifications

More information

Scalable Semantic Annotation using Lattice-based Ontologies

Scalable Semantic Annotation using Lattice-based Ontologies Scalable Semantic Annotation using Lattice-based Ontologies Ben Lickly 1 Man-Kit Leung 1 Thomas Mandl 2 Edward A. Lee 1 Elizabeth Latronico 2 Charles Shelton 2 Stavros Tripakis 1 1 University of California,

More information

Data Center TCP (DCTCP)

Data Center TCP (DCTCP) Data Center TCP (DCTCP) Mohammad Alizadeh, Albert Greenberg, David A. Maltz, Jitendra Padhye Parveen Patel, Balaji Prabhakar, Sudipta Sengupta, Murari Sridharan Microsoft Research Stanford University 1

More information

A Deterministic Concurrent Language for Embedded Systems

A Deterministic Concurrent Language for Embedded Systems SHIM:A A Deterministic Concurrent Language for Embedded Systems p. 1/28 A Deterministic Concurrent Language for Embedded Systems Stephen A. Edwards Columbia University Joint work with Olivier Tardieu SHIM:A

More information

EECS 219C: Formal Methods Binary Decision Diagrams (BDDs) Sanjit A. Seshia EECS, UC Berkeley

EECS 219C: Formal Methods Binary Decision Diagrams (BDDs) Sanjit A. Seshia EECS, UC Berkeley EECS 219C: Formal Methods Binary Decision Diagrams (BDDs) Sanjit A. Seshia EECS, UC Berkeley Boolean Function Representations Syntactic: e.g.: CNF, DNF (SOP), Circuit Semantic: e.g.: Truth table, Binary

More information

UC Berkeley Mobies Technology Project

UC Berkeley Mobies Technology Project UC Berkeley Mobies Technology Project Process-Based Software Components for Networked Embedded Systems PI: Edward Lee CoPI: Tom Henzinger Heterogeneous Modeling Discrete-Event RAM mp I/O DSP DXL ASIC Hydraulic

More information

! Why is synchronization needed? ! Synchronization Language/Definitions: ! How are locks implemented? Maria Hybinette, UGA

! Why is synchronization needed? ! Synchronization Language/Definitions: ! How are locks implemented? Maria Hybinette, UGA Chapter 6: Process [& Thread] Synchronization CSCI [4 6] 730 Operating Systems Synchronization Part 1 : The Basics! Why is synchronization needed?! Synchronization Language/Definitions:» What are race

More information

Introduction to Algorithms / Algorithms I Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/18/14

Introduction to Algorithms / Algorithms I Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/18/14 600.363 Introduction to Algorithms / 600.463 Algorithms I Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/18/14 23.1 Introduction We spent last week proving that for certain problems,

More information

Node Prefetch Prediction in Dataflow Graphs

Node Prefetch Prediction in Dataflow Graphs Node Prefetch Prediction in Dataflow Graphs Newton G. Petersen Martin R. Wojcik The Department of Electrical and Computer Engineering The University of Texas at Austin newton.petersen@ni.com mrw325@yahoo.com

More information

NP and computational intractability. Kleinberg and Tardos, chapter 8

NP and computational intractability. Kleinberg and Tardos, chapter 8 NP and computational intractability Kleinberg and Tardos, chapter 8 1 Major Transition So far we have studied certain algorithmic patterns Greedy, Divide and conquer, Dynamic programming to develop efficient

More information

Lecture 06: Rule Scheduling

Lecture 06: Rule Scheduling Bluespec SystemVerilog Training Lecture 06: Rule Scheduling Copyright Bluespec, Inc., 2005-2008 Lecture 06: Rule Scheduling A rule has no internal sequencing Untimed rule semantics are one-rule-at-a-time

More information

Introduction to the Distributed Real-Time System

Introduction to the Distributed Real-Time System Introduction to the Distributed Real-Time System Insup Lee Department of Computer and Information Science School of Engineering and Applied Science University of Pennsylvania www.cis.upenn.edu/~lee/ CIS

More information

Understandable Concurrency

Understandable Concurrency Edward A. Lee Professor, Chair of EE, and Associate Chair of EECS Director, CHESS: Center for Hybrid and Embedded Software Systems Director, Ptolemy Project UC Berkeley Chess Review November 21, 2005 Berkeley,

More information

Lecture1: Symbolic Model Checking with BDDs. Edmund M. Clarke, Jr. Computer Science Department Carnegie Mellon University Pittsburgh, PA 15213

Lecture1: Symbolic Model Checking with BDDs. Edmund M. Clarke, Jr. Computer Science Department Carnegie Mellon University Pittsburgh, PA 15213 Lecture: Symbolic Model Checking with BDDs Edmund M Clarke, Jr Computer Science Department Carnegie Mellon University Pittsburgh, PA 523 Temporal Logic Model Checking Specification Language: A propositional

More information

DREMS: A Toolchain and Platform for the Rapid Application Development, Integration, and Deployment of Managed Distributed Real-time Embedded Systems

DREMS: A Toolchain and Platform for the Rapid Application Development, Integration, and Deployment of Managed Distributed Real-time Embedded Systems DREMS: A Toolchain and Platform for the Rapid Application Development, Integration, and Deployment of Managed Distributed Real-time Embedded Systems William Emfinger, Pranav Kumar, Abhishek Dubey, William

More information

HOW TO TEST CROSS-DEVICE PRECISION & SCALE

HOW TO TEST CROSS-DEVICE PRECISION & SCALE HOW TO TEST CROSS-DEVICE PRECISION & SCALE Introduction A key consideration when implementing cross-device campaigns is how to strike the right balance between precision and scale. Your cross-device campaign

More information

MS Excel 2010 Tip: Using Fuzzy Lookup plugin for difficult lookup requirements

MS Excel 2010 Tip: Using Fuzzy Lookup plugin for difficult lookup requirements MS Excel 2010 Tip: Using Fuzzy Lookup plugin for difficult lookup requirements Submitted by Jess on Thu, 08/22/2013-17:08 If you have been using MS Excel for some time already, then the thing is, you might

More information

Operating Systems Overview. Chapter 2

Operating Systems Overview. Chapter 2 1 Operating Systems Overview 2 Chapter 2 3 An operating System: The interface between hardware and the user From the user s perspective: OS is a program that controls the execution of application programs

More information

Algorithm State Machines(ASM) Principal Component Of An ASM Chart State Box Decision box.

Algorithm State Machines(ASM) Principal Component Of An ASM Chart State Box Decision box. Algorithm State Machines(ASM) ASM stands for 'Algorithm State Machine 'or simply state machine is the another name given to sequential network is used to control a digital system which carries out a step

More information

Software Synthesis from Dataflow Models for G and LabVIEW

Software Synthesis from Dataflow Models for G and LabVIEW Software Synthesis from Dataflow Models for G and LabVIEW Hugo A. Andrade Scott Kovner Department of Electrical and Computer Engineering University of Texas at Austin Austin, TX 78712 andrade@mail.utexas.edu

More information

Lecture 15: Datacenter TCP"

Lecture 15: Datacenter TCP Lecture 15: Datacenter TCP" CSE 222A: Computer Communication Networks Alex C. Snoeren Thanks: Mohammad Alizadeh Lecture 15 Overview" Datacenter workload discussion DC-TCP Overview 2 Datacenter Review"

More information

Notes and Comments for [1]

Notes and Comments for [1] Notes and Comments for [1] Zhang Qin July 14, 007 The purpose of the notes series Good Algorithms, especially for those natural problems, should be simple and elegant. Natural problems are those with universal

More information

Digital System Design with SystemVerilog

Digital System Design with SystemVerilog Digital System Design with SystemVerilog Mark Zwolinski AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris Madrid Capetown Sydney Tokyo

More information

Concurrent Models of Computation

Concurrent Models of Computation Concurrent Models of Computation Edward A. Lee Robert S. Pepper Distinguished Professor, UC Berkeley EECS 219D: Concurrent Models of Computation Fall 2011 Copyright 2011, Edward A. Lee, All rights reserved

More information

EE 231 Fall EE 231 Homework 8 Due October 20, 2010

EE 231 Fall EE 231 Homework 8 Due October 20, 2010 EE 231 Homework 8 Due October 20, 20 1. Consider the circuit below. It has three inputs (x and clock), and one output (z). At reset, the circuit starts with the outputs of all flip-flops at 0. x z J Q

More information