Towards A Formal Theory of On Chip Communications in the ACL2 Logic

Size: px
Start display at page:

Download "Towards A Formal Theory of On Chip Communications in the ACL2 Logic"

Transcription

1 (c) Julien Schmaltz, ACL2 2006, San José August p. 1/37 Towards A Formal Theory of On Chip Communications in the ACL2 Logic Julien Schmaltz Saarland University - Computer Science Department Saarbrücken, Germany Dominique Borrione TIMA Laboratory - VDS Group Grenoble, France

2 (c) Julien Schmaltz, ACL2 2006, San José August p. 2/37 A Motivation Example ecall Automatic emergency call system A phone call is automatically emitted when car sensors detect an accident Navigation Interface ecall Interface FlexRay Bus Phone Interface Sensors Interface

3 (c) Julien Schmaltz, ACL2 2006, San José August p. 3/37 FlexRay Bus Basic protocol Idle units 1, to start 0 Sync edges at each byte (from 1 to 0) Deterministic scheduling Time is divided into rounds Each unit has one slot per round Navigation Interface ecall Interface FlexRay Bus Phone Interface Sensors Interface

4 (c) Julien Schmaltz, ACL2 2006, San José August p. 4/37 Verification Proof of each component Proof of their interconnection Navigation Interface ecall Interface OK OK FlexRay OK Bus OK OK Phone Interface Sensors Interface

5 (c) Julien Schmaltz, ACL2 2006, San José August p. 5/37 Global Objective One model for all architectures...?

6 (c) Julien Schmaltz, ACL2 2006, San José August p. 6/37 Contribution A functional formalism for communications: GeNoC (Generic Network on Chip) Identifies the essential constituents and their properties Formalizes the interactions between them Correctness of the system is a consequence of the essential properties of the constituents Mechanized support in ACL2 Encapsulation allows abstraction Functional instantiation generates proof obligations automatically

7 (c) Julien Schmaltz, ACL2 2006, San José August p. 7/37 Outline Communication Principles GeNoC Definition and Correctness ACL2 Theorem/Removing Quantifiers Abstraction using Encapsulation s of GeNoC

8 (c) Julien Schmaltz, ACL2 2006, San José August p. 8/37 A Unifying Model Navigation Interface Phone ecall Interface Communication Architecture Interface Sensors Interface

9 (c) Julien Schmaltz, ACL2 2006, San José August p. 8/37 A Unifying Model messages Interface frames messages Interface frames Communication Architecture frames frames Interface Interface messages messages

10 (c) Julien Schmaltz, ACL2 2006, San José August p. 9/37 Functional Modeling messages messages frames frames Scheduling Scheduling Routing Routing frames frames messages messages System = F(Routing, Scheduling,, )

11 (c) Julien Schmaltz, ACL2 2006, San José August p. 10/37 Proof Obligations messages messages PO i PO i frames frames Routing Scheduling Scheduling Routing PO r PO s frames frames messages PO i messages POi

12 (c) Julien Schmaltz, ACL2 2006, San José August p. 11/37 System Theorem messages messages PO i PO i frames frames Routing Scheduling Scheduling Routing PO r PO s frames frames messages PO i messages POi Thm messages reach their destination

13 (c) Julien Schmaltz, ACL2 2006, San José August p. 11/37 System Theorem messages messages PO i PO i frames frames Routing Scheduling Scheduling Routing PO r PO s frames frames messages PO i messages POi Thm messages reach their destination

14 (c) Julien Schmaltz, ACL2 2006, San José August p. 12/37 Outline Communication Principles GeNoC Definition and Correctness ACL2 Theorem/Removing Quantifiers Abstraction using Encapsulation s of GeNoC

15 (c) Julien Schmaltz, ACL2 2006, San José August p. 13/37 Overall Modeling Principles Function GeNoC takes the list of pending communications returns the list of results and the list of aborted communications Transactions A transaction represents a pending communication, i.e. the intention of A of ing msg to B It is a 4-tuple (id A msg B)

16 Function GeNoC Scheduling Interface A Interface B A Messages Frames Frames Messages B Node A Node B (id 1 A msg 1 B) (id 2 D msg 2 T) (id 3 F msg 3 E) (id 4 R msg 4 Z) Routing Aborted Missives Transactions Results (c) Julien Schmaltz, ACL2 2006, San José August p. 14/37

17 From transactions to missives Scheduling Interface A Interface B A Messages Frames Frames Messages B Node A (id 1 A msg 1 B) (id 1 A msg 1 B) (id 2 D msg 2 T) (id 3 F msg 3 E) (id 4 R msg 4 Z) Routing Node B Aborted Missives Transactions Results (c) Julien Schmaltz, ACL2 2006, San José August p. 15/37

18 From transactions to missives Scheduling Interface A Interface B A Messages Frames Frames Messages B Node A (id 1 A frm 1 B) (id 1 A frm 1 B) (id 2 D frm 2 T) (id 3 F frm 3 E) (id 4 R frm 4 Z) Routing Node B Aborted Missives Missives Results (c) Julien Schmaltz, ACL2 2006, San José August p. 15/37

19 Routing Algorithm (id 1 frm 1 Routes 1 ) Scheduling Interface A Interface B A Messages Frames Frames Messages B Node A Node B (id 1 frm 1 Routes 1 ) (id 2 frm 2 Routes 2 ) (id 3 frm 3 Routes 3 ) (id 4 frm 4 Routes 4 ) Routing Aborted Missives Travels Results (c) Julien Schmaltz, ACL2 2006, San José August p. 16/37

20 Scheduling Policy Scheduling Scheduled (id 1 frm 1 Routes 1 ) (id 3 frm 3 Routes 3 ) Interface A Interface B A Messages Frames Frames Messages B Node A Node B Routing (id 2 frm 2 Routes 2 ) (id 4 frm 4 Routes 4 ) Aborted Missives Delayed Results (c) Julien Schmaltz, ACL2 2006, San José August p. 17/37

21 Results Scheduling Interface A Interface B A Messages Frames Frames Messages B Node A Node B (id 2 frm 2 Routes 2 ) (id 4 frm 4 Routes 4 ) Routing (id 1 B msg 1 ) (id 3 E msg 3 ) Aborted Missives Delayed Results (c) Julien Schmaltz, ACL2 2006, San José August p. 18/37

22 Aborted Missives Scheduling Interface A Interface B A Messages Frames Frames Messages B Node A Node B (id 2 D frm 2 T) (id 4 R frm 4 Z) Routing (id 1 B msg 1 ) (id 3 E msg 3 ) Aborted Missives Missives Results (c) Julien Schmaltz, ACL2 2006, San José August p. 19/37

23 Aborted Missives Scheduling Interface A Interface B A Messages Frames Frames Messages B Node A Node B Routing (id 4 R frm 4 Z) (id 1 B msg 1 ) (id 3 E msg 3 ) (id 2 T msg 2 ) Aborted Missives Results (c) Julien Schmaltz, ACL2 2006, San José August p. 19/37

24 Correctness Criterion Scheduling Interface A Interface B A Messages Frames Frames Messages B Node A Node B (id 1 A msg 1 B) (id 2 D msg 2 T) (id 3 F msg 3 E) (id 4 R msg 4 Z) Routing (id 1 B msg 1 ) (id 3 E msg 3 ) (id 2 T msg 2 ) (id 4 R frm 4 Z) Aborted Missives Transactions Results (c) Julien Schmaltz, ACL2 2006, San José August p. 20/37

25 (c) Julien Schmaltz, ACL2 2006, San José August p. 21/37 Termination Function GeNoC is a recursive function and must be proved to terminate because: it is a prerequisite for mechanized reasoning (here ACL2) it is necessary to ensure liveness To ensure the termination, we associate to every node a finite number of attempts. At every recursive call of GeNoC, every node with a pending transaction consumes one attempt.

26 (c) Julien Schmaltz, ACL2 2006, San José August p. 22/37 Formal Definition From a list of transactions, T, the set of nodes NodeSet and a list of attempt numbers att, function GeNoC produces: The list R of results The list A for aborted missives GeNoC : D T GenNodeSet AttLst D R D M (T, NodeSet, att) (R, A)

27 (c) Julien Schmaltz, ACL2 2006, San José August p. 23/37 Correctness Criterion res R,!trans T, { Id R (res) = Id T (trans) Msg R (res) = Msg T (trans) Dest R (res) = Dest T (trans) For any result res, there exists a unique transaction trans such that trans and res have the same identifier, message, and destination.

28 (c) Julien Schmaltz, ACL2 2006, San José August p. 23/37 Correctness Criterion res R,!trans T, { Id R (res) = Id T (trans) Msg R (res) = Msg T (trans) Dest R (res) = Dest T (trans) Typical formula scheme Always check for Id equality In ACL2, the idea is filtering according to Id s

29 (c) Julien Schmaltz, ACL2 2006, San José August p. 24/37 Outline Communication Principles GeNoC Definition and Correctness ACL2 Theorem/Removing Quantifiers Abstraction using Encapsulation s of GeNoC

30 (c) Julien Schmaltz, ACL2 2006, San José August p. 25/37 ACL2 Correctness Predicate (defun genoc-thm (R T /R ids ) (and (equal (R-msgs R) (T-msgs T /R ids )) (equal (R-dests R) (T-dests T /R ids )))) T /R ids = T filtered according to the ids of R Check that the messages and the destinations of T /R ids and R are equal.

31 (c) Julien Schmaltz, ACL2 2006, San José August p. 26/37 ACL2 Theorem (defthm GeNoC-is-correct (mv-let (R A) (GeNoC T NodeSet att) (declare (ignore A)) (implies (T lstp T ) (GeNoC-thm R (filters T (R-ids R))))))

32 Proof Obligations Interfaces The composition is an identity Routing (id A frm B) (id frm Routes) Missive/Travel matching Same frame and identifier Routes effectively go from the correct origin to the correct destination Scheduling Mutual exclusion between Scheduled and Delayed No addition of new identifiers Preserve frames and route correctness (c) Julien Schmaltz, ACL2 2006, San José August p. 27/37

33 (c) Julien Schmaltz, ACL2 2006, San José August p. 28/37 Proof of the theorem Routing correctness + preserved by scheduling right destination No modification on frames every result is obtained by Interfaces correctness received message = sent message Mutual exclusion between Scheduled and Delayed + no new identifiers cut the proof in two parts

34 (c) Julien Schmaltz, ACL2 2006, San José August p. 29/37 Outline Communication Principles GeNoC Definition and Correctness ACL2 Theorem/Removing Quantifiers Abstraction using Encapsulation s of GeNoC

35 (c) Julien Schmaltz, ACL2 2006, San José August p. 30/37 Encapsulation: Interfaces Function builds a frame from a message: (( ) ) Function recovers a message from a frame: (( ) ) Their composition is an identity: (defthm InterfaceCorrectness ;; (msg) = msg (equal ( ( msg)) msg)) Some additional constraints

36 (c) Julien Schmaltz, ACL2 2006, San José August p. 31/37 Interfaces Encapsulate Event (encapsulate ((( ) ) (( ) )) ;; local witnesses (local (defun (msg) msg)) (local (defun (frm) frm)) ;; proof obligations (defthm InterfaceCorrectness (equal ( ( msg)) msg)) (defthm -nil (not ( nil))) (defthm -not-nil (implies msg ( msg))))

37 (c) Julien Schmaltz, ACL2 2006, San José August p. 32/37 Checking Compliance (defthm check-instance-interface t ;; we prove true :rule-classes nil ;; no rule :hints (("GOAL" ;; we use InterfaceCorrectness ;; with flexray for ;; and flexray for :use (:functional-instance InterfaceCorrectness ( flexray ) ( flexray )))))

38 (c) Julien Schmaltz, ACL2 2006, San José August p. 33/37 Outline Communication Principles GeNoC Definition and Correctness ACL2 Theorem/Removing Quantifiers Abstraction using Encapsulation s of GeNoC

39 (c) Julien Schmaltz, ACL2 2006, San José August p. 34/37 s of GeNoC OSI Layer 1 - Bi-Φ-M OSI Layer 2 - Ethernet Scheduling Scheduling on networks - Circuit switching - Packet switching Bus arbitration - AMBA AHB arbiter Interface A Interface B A Messages Frames Frames Messages B Node A Node B Routing Deterministic routing - Octagon - XY algorithm Adaptive routing - Double Y channel

40 (c) Julien Schmaltz, ACL2 2006, San José August p. 35/37 Conclusion A generic model: GeNoC Identifies the essential constituents and their properties Formalizes the global property as a consequence of proof obligations Its expression in ACL lines, 71 functions and 119 theorems One fourth is dedicated to the modules Abstraction using encapsulation Automatic generation of proof obligations using functional instantiation

41 Future Work Master/Slave protocols Deadlocks (structural and protocol level) Adding queues and channels wormhole routing in Hermes (TIMA, Grenoble, France) Verified Distributed Stacks Verisoft Stack (O.S., compiler, assembly, gates) Interconnected Stacks through a time triggered FlexRay bus Show that FlexRay matches GeNoC!... (c) Julien Schmaltz, ACL2 2006, San José August p. 36/37

42 THANK YOU!! (c) Julien Schmaltz, ACL2 2006, San José August p. 37/37

A Functional Specification and Validation Model for Networks on Chip in the ACL2 Logic

A Functional Specification and Validation Model for Networks on Chip in the ACL2 Logic A Functional Specification and Validation Model for Networks on Chip in the ACL2 Logic J. Schmaltz * and D. Borrione TIMA Laboratory - VDS Group Grenoble, France * Part of this work was done while visiting

More information

Towards A Formally Verified Network-on-Chip

Towards A Formally Verified Network-on-Chip Towards A Formally Verified Network-on-Chip Tom van den Broek 1 Julien Schmaltz 12 1 Institute for Computing and Information Sciences Radboud University Nijmegen The Netherlands 2 School of Computer Science

More information

Mathematica for the symbolic. Combining ACL2 and. ACL2 Workshop 2003 Boulder,CO. TIMA Laboratory -VDS Group, Grenoble, France

Mathematica for the symbolic. Combining ACL2 and. ACL2 Workshop 2003 Boulder,CO. TIMA Laboratory -VDS Group, Grenoble, France Combining ACL2 and Mathematica for the symbolic simulation of digital systems AL SAMMANE Ghiath, BORRIONE Dominique, OSTIER Pierre, SCHMALTZ Julien, TOMA Diana TIMA Laboratory -VDS Group, Grenoble, France

More information

A formalisation of XMAS

A formalisation of XMAS A formalisation of XMAS Bernard van Gastel Julien Schmaltz Open University of the Netherlands {Bernard.vanGastel, Julien.Schmaltz}@ou.nl Communication fabrics play a key role in the correctness and performance

More information

A Tool for Simplifying ACL2 Definitions

A Tool for Simplifying ACL2 Definitions 1/27 A Tool for Simplifying ACL2 Definitions Matt Kaufmann The University of Texas at Austin May 3, 2016 2/27 INTRODUCTION (1) In this talk we present a tool for simplifying ACL2 definitions. Used in Kestrel

More information

TIMA Lab. Research Reports

TIMA Lab. Research Reports ISSN 1292-862 TIMA Lab. Research Reports TIMA Laboratory, 46 avenue Félix Viallet, 38000 Grenoble France A Functional Approach to the Formal Specification of Networks on Chip Julien Schmaltz 1 and Dominique

More information

Formal Verification of Communications in Networks on Chips

Formal Verification of Communications in Networks on Chips Formal Verification of Communications in Networks on Chips Sebastiaan J.C. Joosten Julien Schmaltz Freek Verbeek Bernard van Gastel Open University of the Netherlands, Heerlen Radboud University Nijmegen

More information

Milawa an extensible proof checker

Milawa an extensible proof checker Milawa an extensible proof checker Jared Davis ACL2 Seminar, November 16, 2005 Outline The Milawa logic A primitive proof checker An extended proof checker Soundness of the extended checker A reflection

More information

Finite Set Theory. based on Fully Ordered Lists. Jared Davis UT Austin. ACL2 Workshop 2004

Finite Set Theory. based on Fully Ordered Lists. Jared Davis UT Austin. ACL2 Workshop 2004 Finite Set Theory based on Fully Ordered Lists Jared Davis UT Austin ACL2 Workshop 2004 Motivation (1/2) Unique representation for each set No mutual recursion needed for membership, subset, and set equality

More information

Using macros to mimic VHDL in ACL2

Using macros to mimic VHDL in ACL2 Using macros to mimic VHDL in ACL2 Dominique Borrione & Philippe Georgelin TIMA, Grenoble, France ACL2 Workshop Austin, Texas, March 1999 VDS Dominique Borrione & Philippe Georgelin 1 Contents Context

More information

Verification of Building Blocks for Asynchronous Circuits

Verification of Building Blocks for Asynchronous Circuits Verification of Building Blocks for Asynchronous Circuits Freek Verbeek and Julien Schmaltz Open University of The Netherlands Heerlen, The Netherlands School of Computer Science {freek.verbeek,julien.schmaltz}@ou.nl

More information

Polymorphic Types in ACL2

Polymorphic Types in ACL2 Polymorphic Types in ACL2 Benjamin Selfridge University of Texas at Austin Austin, TX benself@cs.utexas.edu Eric Smith Kestrel Institute Palo Alto, CA eric.smith@kestrel.edu This paper describes a tool

More information

TDT Appendix E Interconnection Networks

TDT Appendix E Interconnection Networks TDT 4260 Appendix E Interconnection Networks Review Advantages of a snooping coherency protocol? Disadvantages of a snooping coherency protocol? Advantages of a directory coherency protocol? Disadvantages

More information

ACL2 Challenge Problem: Formalizing BitCryptol April 20th, John Matthews Galois Connections

ACL2 Challenge Problem: Formalizing BitCryptol April 20th, John Matthews Galois Connections ACL2 Challenge Problem: Formalizing BitCryptol April 20th, 2005 John Matthews Galois Connections matthews@galois.com Roadmap SHADE verifying compiler Deeply embedding Cryptol semantics in ACL2 Challenge

More information

Modeling Asynchronous Circuits in ACL2 Using the Link-Joint Interface

Modeling Asynchronous Circuits in ACL2 Using the Link-Joint Interface Modeling Asynchronous Circuits in ACL2 Using the Link-Joint Interface Cuong Chau ckcuong@cs.utexas.edu Department of Computer Science The University of Texas at Austin April 19, 2016 Cuong Chau (UT Austin)

More information

Deadlock. Reading. Ensuring Packet Delivery. Overview: The Problem

Deadlock. Reading. Ensuring Packet Delivery. Overview: The Problem Reading W. Dally, C. Seitz, Deadlock-Free Message Routing on Multiprocessor Interconnection Networks,, IEEE TC, May 1987 Deadlock F. Silla, and J. Duato, Improving the Efficiency of Adaptive Routing in

More information

Compositional Cutpoint Verification

Compositional Cutpoint Verification Compositional Cutpoint Verification Eric Smith (Stanford University) Collaborators: David Dill (Stanford University) David Hardin (Rockwell Collins) Contact ewsmith@stanford.edu Background Based on A Symbolic

More information

An Overview of the DE Hardware Description Language and Its Application in Formal Verification of the FM9001 Microprocessor

An Overview of the DE Hardware Description Language and Its Application in Formal Verification of the FM9001 Microprocessor An Overview of the DE Hardware Description Language and Its Application in Formal Verification of the FM9001 Microprocessor Cuong Chau ckcuong@cs.utexas.edu Department of Computer Science The University

More information

Progress Report: Term Dags Using Stobjs

Progress Report: Term Dags Using Stobjs Progress Report: Term Dags Using Stobjs J.-L. Ruiz-Reina, J.-A. Alonso, M.-J. Hidalgo and F.-J. Martín-Mateos http://www.cs.us.es/{~jruiz, ~jalonso, ~mjoseh, ~fmartin} Departamento de Ciencias de la Computación

More information

Theorem proving. PVS theorem prover. Hoare style verification PVS. More on embeddings. What if. Abhik Roychoudhury CS 6214

Theorem proving. PVS theorem prover. Hoare style verification PVS. More on embeddings. What if. Abhik Roychoudhury CS 6214 Theorem proving PVS theorem prover Abhik Roychoudhury National University of Singapore Both specification and implementation can be formalized in a suitable logic. Proof rules for proving statements in

More information

Improving Eliminate-Irrelevance for ACL2

Improving Eliminate-Irrelevance for ACL2 1/19 Improving Eliminate-Irrelevance for ACL2 Matt Kaufmann (Joint Work with J Moore) The University of Texas at Austin October 14, 2016 2/19 OUTLINE Organization of this talk. 2/19 OUTLINE Organization

More information

Verification Condition Generation via Theorem Proving

Verification Condition Generation via Theorem Proving Verification Condition Generation via Theorem Proving John Matthews Galois Connections Inc. J Strother Moore University of Texas at Austin Sandip Ray University of Texas at Austin Daron Vroon Georgia Institute

More information

The Formal Verification of a Distributed Realtime System. Lecture 2: Overview

The Formal Verification of a Distributed Realtime System. Lecture 2: Overview Single ECU Distributed System Notation Wolfgang Paul {sknapp, wjp}@wjpserver.cs.uni-sb.de Institute for Computer Architecture and Parallel Computing, Saarland University Lecture 2: Overview March 19, 2007

More information

CIS 1.5 Course Objectives. a. Understand the concept of a program (i.e., a computer following a series of instructions)

CIS 1.5 Course Objectives. a. Understand the concept of a program (i.e., a computer following a series of instructions) By the end of this course, students should CIS 1.5 Course Objectives a. Understand the concept of a program (i.e., a computer following a series of instructions) b. Understand the concept of a variable

More information

An Executable Model for JFKr

An Executable Model for JFKr An Executable Model for JFKr An ACL2 approach to key-establishment protocol verification Presented by: David Rager Outline Derivation of JFKr Books developed for JFKr reasoning Demonstrate the JFKr executable

More information

A Single Chip Shared Memory Switch with Twelve 10Gb Ethernet Ports

A Single Chip Shared Memory Switch with Twelve 10Gb Ethernet Ports A Single Chip Shared Memory Switch with Twelve 10Gb Ethernet Ports Takeshi Shimizu, Yukihiro Nakagawa, Sridhar Pathi, Yasushi Umezawa, Takashi Miyoshi, Yoichi Koyanagi, Takeshi Horie, Akira Hattori Hot

More information

Reasoning about copydata

Reasoning about copydata Reasoning about copydata Yet Another Account of a Proof of Correctness of an x86 Machine-Code Program Shilpi Goel ACL2 Seminar 19th October, 2015 Quick Background This talk is about machine-code program

More information

Distributed Systems Programming (F21DS1) Formal Verification

Distributed Systems Programming (F21DS1) Formal Verification Distributed Systems Programming (F21DS1) Formal Verification Andrew Ireland Department of Computer Science School of Mathematical and Computer Sciences Heriot-Watt University Edinburgh Overview Focus on

More information

Mechanized Operational Semantics

Mechanized Operational Semantics Mechanized Operational Semantics J Strother Moore Department of Computer Sciences University of Texas at Austin Marktoberdorf Summer School 2008 (Lecture 2: An Operational Semantics) 1 M1 An M1 state consists

More information

NOC Deadlock and Livelock

NOC Deadlock and Livelock NOC Deadlock and Livelock 1 Deadlock (When?) Deadlock can occur in an interconnection network, when a group of packets cannot make progress, because they are waiting on each other to release resource (buffers,

More information

EE 6900: Interconnection Networks for HPC Systems Fall 2016

EE 6900: Interconnection Networks for HPC Systems Fall 2016 EE 6900: Interconnection Networks for HPC Systems Fall 2016 Avinash Karanth Kodi School of Electrical Engineering and Computer Science Ohio University Athens, OH 45701 Email: kodi@ohio.edu 1 Acknowledgement:

More information

Development of a Translator from LLVM to ACL2

Development of a Translator from LLVM to ACL2 Development of a Translator from LLVM to ACL2 David Hardin, Jennifer Davis, David Greve, and Jedidiah McClurg July 2014 Introduction Research objectives: Reason about machine code generated from high-level

More information

Efficient, Formally Verifiable Data Structures using ACL2 Single-Threaded Objects for High-Assurance Systems

Efficient, Formally Verifiable Data Structures using ACL2 Single-Threaded Objects for High-Assurance Systems Efficient, Formally Verifiable Data Structures using ACL2 Single-Threaded Objects for High-Assurance Systems David Hardin Rockwell Collins Samuel Hardin Iowa State University Introduction Bounded versions

More information

ECE 669 Parallel Computer Architecture

ECE 669 Parallel Computer Architecture ECE 669 Parallel Computer Architecture Lecture 21 Routing Outline Routing Switch Design Flow Control Case Studies Routing Routing algorithm determines which of the possible paths are used as routes how

More information

Extending ACL2 with SMT solvers

Extending ACL2 with SMT solvers Extending ACL2 with SMT solvers Yan Peng & Mark Greenstreet University of British Columbia October 2nd, 2015 Smtlink handles tedious details of proofs so you can focus on the interesting parts. 1 / 24

More information

Lecture 3: Flow-Control

Lecture 3: Flow-Control High-Performance On-Chip Interconnects for Emerging SoCs http://tusharkrishna.ece.gatech.edu/teaching/nocs_acaces17/ ACACES Summer School 2017 Lecture 3: Flow-Control Tushar Krishna Assistant Professor

More information

The Arbitrated Network Control Systems Approach to CPS

The Arbitrated Network Control Systems Approach to CPS The Arbitrated Network Control Systems Approach to CPS Anuradha Annaswamy Active-Adaptive Control Laboratory Massachusetts Institute of Technology Active-adaptive Control Seminar Series, Spring 2011 1

More information

To be or not programmable Dimitri Papadimitriou, Bernard Sales Alcatel-Lucent April 2013 COPYRIGHT 2011 ALCATEL-LUCENT. ALL RIGHTS RESERVED.

To be or not programmable Dimitri Papadimitriou, Bernard Sales Alcatel-Lucent April 2013 COPYRIGHT 2011 ALCATEL-LUCENT. ALL RIGHTS RESERVED. To be or not programmable Dimitri Papadimitriou, Bernard Sales Alcatel-Lucent April 2013 Introduction SDN research directions as outlined in IRTF RG outlines i) need for more flexibility and programmability

More information

Cover Page. The handle holds various files of this Leiden University dissertation

Cover Page. The handle   holds various files of this Leiden University dissertation Cover Page The handle http://hdl.handle.net/1887/22891 holds various files of this Leiden University dissertation Author: Gouw, Stijn de Title: Combining monitoring with run-time assertion checking Issue

More information

SoC Design. Prof. Dr. Christophe Bobda Institut für Informatik Lehrstuhl für Technische Informatik

SoC Design. Prof. Dr. Christophe Bobda Institut für Informatik Lehrstuhl für Technische Informatik SoC Design Prof. Dr. Christophe Bobda Institut für Informatik Lehrstuhl für Technische Informatik Chapter 5 On-Chip Communication Outline 1. Introduction 2. Shared media 3. Switched media 4. Network on

More information

M.Sc. (Computer Science) I Year Assignments for May Paper I DATA STRUCTURES Assignment I

M.Sc. (Computer Science) I Year Assignments for May Paper I DATA STRUCTURES Assignment I Paper I DATA STRUCTURES (DMCS 01) 1. Explain in detail about the overview of Data structures. 2. Explain circular linked list and double-linked list. 3. Explain CPU scheduling in Multiprogramming Environment.

More information

NOW Handout Page 1. Outline. Networks: Routing and Design. Routing. Routing Mechanism. Routing Mechanism (cont) Properties of Routing Algorithms

NOW Handout Page 1. Outline. Networks: Routing and Design. Routing. Routing Mechanism. Routing Mechanism (cont) Properties of Routing Algorithms Outline Networks: Routing and Design Routing Switch Design Case Studies CS 5, Spring 99 David E. Culler Computer Science Division U.C. Berkeley 3/3/99 CS5 S99 Routing Recall: routing algorithm determines

More information

Lecture 18: Communication Models and Architectures: Interconnection Networks

Lecture 18: Communication Models and Architectures: Interconnection Networks Design & Co-design of Embedded Systems Lecture 18: Communication Models and Architectures: Interconnection Networks Sharif University of Technology Computer Engineering g Dept. Winter-Spring 2008 Mehdi

More information

ON THE EFFECTIVENESS OF ASSERTION-BASED VERIFICATION

ON THE EFFECTIVENESS OF ASSERTION-BASED VERIFICATION ON THE EFFECTIVENESS OF ASSERTION-BASED VERIFICATION IN AN INDUSTRIAL CONTEXT L.Pierre, F.Pancher, R.Suescun, J.Quévremont TIMA Laboratory, Grenoble, France Dolphin Integration, Meylan, France Thales Communications

More information

ECE 551 System on Chip Design

ECE 551 System on Chip Design ECE 551 System on Chip Design Introducing Bus Communications Garrett S. Rose Fall 2018 Emerging Applications Requirements Data Flow vs. Processing µp µp Mem Bus DRAMC Core 2 Core N Main Bus µp Core 1 SoCs

More information

Modeling Algorithms in SystemC and ACL2. John O Leary, David Russinoff Intel Corporation

Modeling Algorithms in SystemC and ACL2. John O Leary, David Russinoff Intel Corporation Modeling Algorithms in SystemC and ACL2 John O Leary, David Russinoff Intel Corporation Algorithm Design Architects Designers? RTL DC PrimeTime Forte Jasper Gold t t+6 t+9 A recent experience A design

More information

Configuring MPLS L2VPN

Configuring MPLS L2VPN Contents Configuring MPLS L2VPN 1 MPLS L2VPN overview 1 About MPLS L2VPN 1 Comparison with traditional VPN 2 Comparison with MPLS L3VPN 2 Basic concepts 2 MPLS L2VPN implementation 3 MPLS L2VPN configuration

More information

Hardware Verification 2IMF20

Hardware Verification 2IMF20 Hardware Verification 2IMF20 Julien Schmaltz Lecture 06: Verification of on-chip communications Living a revolution It is a really exiting time to be in computing right now, because we are [experiencing]

More information

Future Gigascale MCSoCs Applications: Computation & Communication Orthogonalization

Future Gigascale MCSoCs Applications: Computation & Communication Orthogonalization Basic Network-on-Chip (BANC) interconnection for Future Gigascale MCSoCs Applications: Computation & Communication Orthogonalization Abderazek Ben Abdallah, Masahiro Sowa Graduate School of Information

More information

Configuring MPLS L2VPN

Configuring MPLS L2VPN Contents Configuring MPLS L2VPN 1 Overview 1 Comparison with traditional VPN 1 Comparison with MPLS L3VPN 2 Basic concepts 2 MPLS L2VPN implementation 3 MPLS L2VPN configuration task list 4 Configuring

More information

Formal Verification of Stack Manipulation in the SCIP Processor. J. Aaron Pendergrass

Formal Verification of Stack Manipulation in the SCIP Processor. J. Aaron Pendergrass Formal Verification of Stack Manipulation in the SCIP Processor J. Aaron Pendergrass High Level Challenges to developing capability in formal methods: Perceived high barrier to entry, Specialized tools

More information

A Framework for Asynchronous Circuit Modeling and Verification in ACL2

A Framework for Asynchronous Circuit Modeling and Verification in ACL2 A Framework for Asynchronous Circuit Modeling and Verification in ACL2 Cuong Chau 1, Warren A. Hunt, Jr. 1, Marly Roncken 2, and Ivan Sutherland 2 {ckcuong,hunt}@cs.utexas.edu, marly.roncken@gmail.com,

More information

Chapter 5: Link layer

Chapter 5: Link layer Chapter 5: Link layer our goals: v understand principles behind link layer services: error detection, correction sharing a broadcast channel: multiple access link layer addressing local area networks:

More information

Deadlock- and Livelock-Free Routing Protocols for Wave Switching

Deadlock- and Livelock-Free Routing Protocols for Wave Switching Deadlock- and Livelock-Free Routing Protocols for Wave Switching José Duato,PedroLópez Facultad de Informática Universidad Politécnica de Valencia P.O.B. 22012 46071 - Valencia, SPAIN E-mail:jduato@gap.upv.es

More information

Module 17: "Interconnection Networks" Lecture 37: "Introduction to Routers" Interconnection Networks. Fundamentals. Latency and bandwidth

Module 17: Interconnection Networks Lecture 37: Introduction to Routers Interconnection Networks. Fundamentals. Latency and bandwidth Interconnection Networks Fundamentals Latency and bandwidth Router architecture Coherence protocol and routing [From Chapter 10 of Culler, Singh, Gupta] file:///e /parallel_com_arch/lecture37/37_1.htm[6/13/2012

More information

NetSpeed ORION: A New Approach to Design On-chip Interconnects. August 26 th, 2013

NetSpeed ORION: A New Approach to Design On-chip Interconnects. August 26 th, 2013 NetSpeed ORION: A New Approach to Design On-chip Interconnects August 26 th, 2013 INTERCONNECTS BECOMING INCREASINGLY IMPORTANT Growing number of IP cores Average SoCs today have 100+ IPs Mixing and matching

More information

Interconnection Structures. Patrick Happ Raul Queiroz Feitosa

Interconnection Structures. Patrick Happ Raul Queiroz Feitosa Interconnection Structures Patrick Happ Raul Queiroz Feitosa Objective To present key issues that affect interconnection design. Interconnection Structures 2 Outline Introduction Computer Busses Bus Types

More information

ADMINISTRATIVE MANAGEMENT COLLEGE

ADMINISTRATIVE MANAGEMENT COLLEGE First Semester ADMINISTRATIVE MANAGEMENT COLLEGE BACHELOR OF COMPUTER APPLICATION COURSE OUTCOME (CO) Problem solving techniques Using C CO 1: Understand the basic concepts of programming, software and

More information

Sri Vidya College of Engineering and Technology. EC6703 Embedded and Real Time Systems Unit IV Page 1.

Sri Vidya College of Engineering and Technology. EC6703 Embedded and Real Time Systems Unit IV Page 1. Sri Vidya College of Engineering and Technology ERTS Course Material EC6703 Embedded and Real Time Systems Page 1 Sri Vidya College of Engineering and Technology ERTS Course Material EC6703 Embedded and

More information

Embedded Systems 1: On Chip Bus

Embedded Systems 1: On Chip Bus October 2016 Embedded Systems 1: On Chip Bus Davide Zoni PhD email: davide.zoni@polimi.it webpage: home.deib.polimi.it/zoni Additional Material and Reference Book 2 Reference Book Chapter Principles and

More information

An Industrially Useful Prover

An Industrially Useful Prover An Industrially Useful Prover J Strother Moore Department of Computer Science University of Texas at Austin July, 2017 1 Recap Yesterday s Talk: ACL2 is used routinely in the microprocessor industry to

More information

Reconfigurable Computing. On-line communication strategies. Chapter 7

Reconfigurable Computing. On-line communication strategies. Chapter 7 On-line communication strategies Chapter 7 Prof. Dr.-Ing. Jürgen Teich Lehrstuhl für Hardware-Software-Co-Design On-line connection - Motivation Routing-conscious temporal placement algorithms consider

More information

Model-based Analysis of Event-driven Distributed Real-time Embedded Systems

Model-based Analysis of Event-driven Distributed Real-time Embedded Systems Model-based Analysis of Event-driven Distributed Real-time Embedded Systems Gabor Madl Committee Chancellor s Professor Nikil Dutt (Chair) Professor Tony Givargis Professor Ian Harris University of California,

More information

Software development using B method. Julien Cervelle LACL - UPEC

Software development using B method. Julien Cervelle LACL - UPEC Software development using B method Julien Cervelle LACL - UPEC Outline Introduction B abstract machine First order logic of set theory Substitutions Proof obligations Refinement Introduction B method

More information

Hyperkernel: Push-Button Verification of an OS Kernel

Hyperkernel: Push-Button Verification of an OS Kernel Hyperkernel: Push-Button Verification of an OS Kernel Luke Nelson, Helgi Sigurbjarnarson, Kaiyuan Zhang, Dylan Johnson, James Bornholt, Emina Torlak, and Xi Wang The OS Kernel is a critical component Essential

More information

Today. Last Time. Motivation. CAN Bus. More about CAN. What is CAN?

Today. Last Time. Motivation. CAN Bus. More about CAN. What is CAN? Embedded networks Characteristics Requirements Simple embedded LANs Bit banged SPI I2C LIN Ethernet Last Time CAN Bus Intro Low-level stuff Frame types Arbitration Filtering Higher-level protocols Today

More information

A Michael Jackson presentation. CSE503: Software Engineering. The following slides are from his keynote at ICSE 1995

A Michael Jackson presentation. CSE503: Software Engineering. The following slides are from his keynote at ICSE 1995 A Michael Jackson presentation CSE503: Software Engineering The following slides are from his keynote at ICSE 1995 David Notkin University of Washington Computer Science & Engineering Spring 2006 1 2 3

More information

Property-based design with HORUS / SYNTHORUS

Property-based design with HORUS / SYNTHORUS Property-based design with HORUS / SYNTHORUS Dominique Borrione, Negin Javaheri, Katell Morin-Allory, Yann Oddos, Alexandre Porcher Radboud University, Nijmegen 1 March 27, 2013 Functional specifications

More information

Chapter 2 & 3: Representations & Reasoning Systems (2.2)

Chapter 2 & 3: Representations & Reasoning Systems (2.2) Chapter 2 & 3: A Representation & Reasoning System & Using Definite Knowledge Representations & Reasoning Systems (RRS) (2.2) Simplifying Assumptions of the Initial RRS (2.3) Datalog (2.4) Semantics (2.5)

More information

Reasoning About Programs Panagiotis Manolios

Reasoning About Programs Panagiotis Manolios Reasoning About Programs Panagiotis Manolios Northeastern University March 1, 2017 Version: 101 Copyright c 2017 by Panagiotis Manolios All rights reserved. We hereby grant permission for this publication

More information

An introduction to Category Theory for Software Engineers*

An introduction to Category Theory for Software Engineers* An introduction to Category Theory for Software Engineers* Dr Steve Easterbrook Associate Professor, Dept of Computer Science, University of Toronto sme@cs.toronto.edu *slides available at http://www.cs.toronto.edu/~sme/presentations/cat101.pdf

More information

CSCD 433/533 Advanced Networks

CSCD 433/533 Advanced Networks CSCD 433/533 Advanced Networks Lecture 2 Network Review Winter 2017 Reading: Chapter 1 1 Topics Network Topics Some Review from CSCD330 Applications Common Services Architecture OSI Model AS and Routing

More information

Computer Networking. Introduction. Quintin jean-noël Grenoble university

Computer Networking. Introduction. Quintin jean-noël Grenoble university Computer Networking Introduction Quintin jean-noël Jean-noel.quintin@imag.fr Grenoble university Based on the presentation of Duda http://duda.imag.fr 1 Course organization Introduction Network and architecture

More information

Propositional Calculus. Math Foundations of Computer Science

Propositional Calculus. Math Foundations of Computer Science Propositional Calculus Math Foundations of Computer Science Propositional Calculus Objective: To provide students with the concepts and techniques from propositional calculus so that they can use it to

More information

Design and Performance Evaluation of a New Spatial Reuse FireWire Protocol. Master s thesis defense by Vijay Chandramohan

Design and Performance Evaluation of a New Spatial Reuse FireWire Protocol. Master s thesis defense by Vijay Chandramohan Design and Performance Evaluation of a New Spatial Reuse FireWire Protocol Master s thesis defense by Vijay Chandramohan Committee Members: Dr. Christensen (Major Professor) Dr. Labrador Dr. Ranganathan

More information

RM3 - Cortex-M4 / Cortex-M4F implementation

RM3 - Cortex-M4 / Cortex-M4F implementation Formation Cortex-M4 / Cortex-M4F implementation: This course covers both Cortex-M4 and Cortex-M4F (with FPU) ARM core - Processeurs ARM: ARM Cores RM3 - Cortex-M4 / Cortex-M4F implementation This course

More information

Lecture 24: Interconnection Networks. Topics: topologies, routing, deadlocks, flow control

Lecture 24: Interconnection Networks. Topics: topologies, routing, deadlocks, flow control Lecture 24: Interconnection Networks Topics: topologies, routing, deadlocks, flow control 1 Topology Examples Grid Torus Hypercube Criteria Bus Ring 2Dtorus 6-cube Fully connected Performance Bisection

More information

Cyber Physical System Verification with SAL

Cyber Physical System Verification with SAL Cyber Physical System Verification with July 22, 2013 Cyber Physical System Verification with Outline 1 2 3 4 5 Cyber Physical System Verification with Table of Contents 1 2 3 4 5 Cyber Physical System

More information

Flow Control can be viewed as a problem of

Flow Control can be viewed as a problem of NOC Flow Control 1 Flow Control Flow Control determines how the resources of a network, such as channel bandwidth and buffer capacity are allocated to packets traversing a network Goal is to use resources

More information

White Paper AHB to Avalon & Avalon to AHB Bridges

White Paper AHB to Avalon & Avalon to AHB Bridges White Paper AHB to & to AHB s Introduction For years, system designers have been manually connecting IP peripheral functions to embedded processors, taking anywhere from weeks to months to accomplish.

More information

A Futures Library and Parallelism Abstractions for a Functional Subset of Lisp

A Futures Library and Parallelism Abstractions for a Functional Subset of Lisp A Futures Library and Parallelism Abstractions for a Functional Subset of Lisp David L. Rager {ragerdl@cs.utexas.edu} Warren A. Hunt, Jr. {hunt@cs.utexas.edu} Matt Kaufmann {kaufmann@cs.utexas.edu} The

More information

The Procedure Abstraction Part I Basics

The Procedure Abstraction Part I Basics The Procedure Abstraction Part I Basics Procedure Abstraction The compiler must deal with interface between compile time and run time Most of the tricky issues arise in implementing procedures Procedures

More information

Orc and ACL2. Nathan Wetzler May 4, University of Texas, Austin

Orc and ACL2. Nathan Wetzler May 4, University of Texas, Austin Orc and ACL2 Nathan Wetzler nwetzler@cs.utexas.edu University of Texas, Austin May 4, 2008 Outline Orc Problem Overview of Orc Sites Combinators Parallel Combinator Sequential Combinator Pruning Combinator

More information

Deadlock and Livelock. Maurizio Palesi

Deadlock and Livelock. Maurizio Palesi Deadlock and Livelock 1 Deadlock (When?) Deadlock can occur in an interconnection network, when a group of packets cannot make progress, because they are waiting on each other to release resource (buffers,

More information

Embedded Systems. 8. Communication

Embedded Systems. 8. Communication Embedded Systems 8. Communication Lothar Thiele 8-1 Contents of Course 1. Embedded Systems Introduction 2. Software Introduction 7. System Components 10. Models 3. Real-Time Models 4. Periodic/Aperiodic

More information

Prototyping a Formal Verification Platform for SoCs

Prototyping a Formal Verification Platform for SoCs This work is partially funded by the German Federal Ministry of Education, Science, Research and Technology (BMBF) in the framework of the Verisoft project under grant 01 IS C38. The responsibility for

More information

Algorithmic Verification. Algorithmic Verification. Model checking. Algorithmic verification. The software crisis (and hardware as well)

Algorithmic Verification. Algorithmic Verification. Model checking. Algorithmic verification. The software crisis (and hardware as well) Algorithmic Verification The software crisis (and hardware as well) Algorithmic Verification Comp4151 Lecture 1-B Ansgar Fehnker Computer become more powerful (Moore s law) The quality of programs cannot

More information

1.3 Primitive Recursive Predicates and Bounded Minimalization

1.3 Primitive Recursive Predicates and Bounded Minimalization 12 1 Primitive Recursive Functions 1.3 Primitive Recursive Predicates and Bounded Minimalization 1.3.1 Case discrimination function The case discrimination function D is defined by D(x, y, z) = v x 0 v

More information

Modelling and simulation of guaranteed throughput channels of a hard real-time multiprocessor system

Modelling and simulation of guaranteed throughput channels of a hard real-time multiprocessor system Modelling and simulation of guaranteed throughput channels of a hard real-time multiprocessor system A.J.M. Moonen Information and Communication Systems Department of Electrical Engineering Eindhoven University

More information

Lecture 7: Flow Control - I

Lecture 7: Flow Control - I ECE 8823 A / CS 8803 - ICN Interconnection Networks Spring 2017 http://tusharkrishna.ece.gatech.edu/teaching/icn_s17/ Lecture 7: Flow Control - I Tushar Krishna Assistant Professor School of Electrical

More information

Lecture 13: Interconnection Networks. Topics: lots of background, recent innovations for power and performance

Lecture 13: Interconnection Networks. Topics: lots of background, recent innovations for power and performance Lecture 13: Interconnection Networks Topics: lots of background, recent innovations for power and performance 1 Interconnection Networks Recall: fully connected network, arrays/rings, meshes/tori, trees,

More information

Problems and Solutions to the January 1994 Core Examination

Problems and Solutions to the January 1994 Core Examination Problems and Solutions to the January 1994 Core Examination Programming Languages PL 1. Consider the following program written in an Algol-like language: begin integer i,j; integer array A[0..10]; Procedure

More information

A More Sophisticated Snooping-Based Multi-Processor

A More Sophisticated Snooping-Based Multi-Processor Lecture 16: A More Sophisticated Snooping-Based Multi-Processor Parallel Computer Architecture and Programming CMU 15-418/15-618, Spring 2014 Tunes The Projects Handsome Boy Modeling School (So... How

More information

Synchronous Specification

Synchronous Specification Translation Validation for Synchronous Specification in the Signal Compiler Van-Chan Ngo Jean-Pierre Talpin Thierry Gautier INRIA Rennes, France FORTE 2015 Construct a modular translation validationbased

More information

Quantitative Analysis of Transaction Level Models for the AMBA Bus

Quantitative Analysis of Transaction Level Models for the AMBA Bus Quantitative Analysis of Transaction Level Models for the AMBA Bus Gunar Schirner and Rainer Dömer Center for Embedded Computer Systems University of California, Irvine Motivation Higher productivity is

More information

Parameterized Congruences in ACL2

Parameterized Congruences in ACL2 Parameterized Congruences in ACL2 David Greve Rockwell Collins Advanced Technology Center Cedar Rapids, IA dagreve@rockwellcollins.com ABSTRACT Support for congruence-based rewriting is built into ACL2.

More information

Design and Simulation of Router Using WWF Arbiter and Crossbar

Design and Simulation of Router Using WWF Arbiter and Crossbar Design and Simulation of Router Using WWF Arbiter and Crossbar M.Saravana Kumar, K.Rajasekar Electronics and Communication Engineering PSG College of Technology, Coimbatore, India Abstract - Packet scheduling

More information

Atacama: An Open Experimental Platform for Mixed-Criticality Networking on Top of Ethernet

Atacama: An Open Experimental Platform for Mixed-Criticality Networking on Top of Ethernet Atacama: An Open Experimental Platform for Mixed-Criticality Networking on Top of Ethernet Gonzalo Carvajal 1,2 and Sebastian Fischmeister 1 1 University of Waterloo, ON, Canada 2 Universidad de Concepcion,

More information

Networks. Other Matters: draft Assignment 2 up (Labs 7 & 8 v. important!!) Ref: [Coulouris&al Ch 3, 4] network performance and principles

Networks. Other Matters: draft Assignment 2 up (Labs 7 & 8 v. important!!) Ref: [Coulouris&al Ch 3, 4] network performance and principles Networks Other Matters: draft Assignment 2 up (Labs 7 & 8 v. important!!) Ref: [Coulouris&al Ch 3, 4] network performance and principles OSI protocol; routing TCP/IP layers and packet organization IP addresses

More information

1/5/2012. Overview of Interconnects. Presentation Outline. Myrinet and Quadrics. Interconnects. Switch-Based Interconnects

1/5/2012. Overview of Interconnects. Presentation Outline. Myrinet and Quadrics. Interconnects. Switch-Based Interconnects Overview of Interconnects Myrinet and Quadrics Leading Modern Interconnects Presentation Outline General Concepts of Interconnects Myrinet Latest Products Quadrics Latest Release Our Research Interconnects

More information