Role of Petri Nets in Asynchronous Hardware Design: History, Principles, and Applications, Slides of Electronic Circuits Design

An overview of the role of petri nets in modern hardware design, focusing on asynchronous circuits. It covers the history of their relationship, the benefits of using petri nets for modeling and design, and the application of petri nets in asynchronous circuit design. The document also includes examples of muller c-elements and their behavior as petri net transitions.

Typology: Slides

2012/2013

Uploaded on 03/17/2013

kale
kale 🇮🇳

3.7

(3)

50 documents

1 / 100

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Advanced Tutorial on Hardware
Design and Petri nets
Jordi Cortadella Univ. Politècnica de Catalunya
Luciano Lavagno Università di Udine
Alex Yakovlev Univ. Newcastle upon Tyne
Docsity.com
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d
pf5e
pf5f
pf60
pf61
pf62
pf63
pf64

Partial preview of the text

Download Role of Petri Nets in Asynchronous Hardware Design: History, Principles, and Applications and more Slides Electronic Circuits Design in PDF only on Docsity!

Advanced Tutorial on Hardware

Design and Petri nets

Jordi Cortadella Univ. Politècnica de Catalunya

Luciano Lavagno Università di Udine

Alex Yakovlev Univ. Newcastle upon Tyne

Tutorial Outline

Introduction

  • Modeling Hardware with PNs
  • Synthesis of Circuits from PN specifications
  • Circuit verification with PNs
  • Performance analysis using PNs

Role of Hardware in modern systems

  • Technology soon allows putting 1 billion

transistors on a chip

  • Systems on chip is a reality – 1 billion operations

per second

  • Hardware and software designs are no longer

separate

  • Hardware becomes distributed, asynchronous

and concurrent

Role of Hardware design tools

  • Design productivity is a problem due to chip

complexity and time to market demands

  • Need for well-integrated CAD with simulation,

synthesis, verification and testing tools

  • Modelling of system behaviour at all levels of

abstraction with feedback to the designer

  • Design re-use is a must but with max technology

independence

Why Petri nets are good

  • Finite State Machine is still the main formal tool in hardware design but it may be inadequate for distributed, concurrent and asynchronous hardware
  • Petri nets:
    • simple and easy to understand graphical capture
    • modelling power adjustable to various types of behaviour at different abstraction levels
    • formal operational semantics and verification of correctnes (safety and liveness) properties
    • possibility of mechanical synthesis of circuits from net models

A bit of history of their marriage

  • 1950’s and 60’s: Foundations (Muller & Bartky, Petri, Karp & Miller, …)
  • 1970’s: Toward Parellel Computations (MIT, Toulouse, St. Petersburg, Manchester …)
  • 1980’s: First progress in VLSI and CAD, Concurrency theory, Signal Transition Graphs (STGs)
  • 1990’s: First asynchronous design (verification and synthesis) tools: SIS, Forcage, Petrify
  • 2000’s: Powerful asynchronous design flow

What is an asynchronous circuit

  • No global clock; circuits are self-timed or self-clocked
  • Can be viewed as hardwired versions of parallel and distributed programs – statements are activated when their guards are true
  • No special run-time mechanism – the “program statements” are physical components: logic gates, memory latches, or hierarchical modules
  • Interconnections are also physical components: wires, busses

Synchronous Design

Register Sender Logic^

Register Receiver

Clock

Data

Data input

Clock

Tsetup Thold

Timing constraint: input data must stay unchanged within a setup/hold window around clock event. Otherwise, the latch may fail (e.g. metastability)

Physical (Analogue) level

  • Strict view: an asynchronous circuit is a (analogue) dynamical system – e.g. to be described by differential equations
  • In most cases can be safely approximated by logic level (0-to-1 and 1-to-0 transitions) abstraction; even hazards can be captured
  • For some anomalous effects, such as metastability and oscillations, absolute need for analogue models
  • Analogue aspects are not considered in this tutorial (cf. reference list)

Logical Level

  • Circuit behaviour is described by sequences of up (0-to-
    1. and down (1-to-0) transitions on inputs and outputs
  • The order of transitions is defined by causal relationship, not by clock ( a causes b, directly or transitively)
  • The order is partial if concurrency is present
  • A class of async timed (yet not clocked!) circuits allows special timing order relations ( a occurs before b, due to delay assumptions )

Simple circuit example

req x y

req a b^ +

req

C

ack

ack2 (^) ack out

out=(x+y)*(a+b)

x

y a b

out

Data flow graph

Simple circuit example

req x y

req a b^ +

req

C

ack

ack2 (^) ack out

out=(x+y)*(a+b)

x

y a b

out

Data flow graph (^) Control flow graph – Petri net

req

req

ack

ack

req3 (^) ack

Muller C-element

Key component in asynchronous circuit design – like a Petri net transition

C

x y x

y=x1*x2+(x1+x2)y Set-part (^) Reset-part

Muller C-element

Key component in asynchronous circuit design – like a Petri net transition

C

x y x

y=x1*x2+(x1+x2)y Set-part (^) Reset-part

0 0

0