HM-ES-th2 Les 9 en 10 Electronic System Level Design and Verification.

Slides:



Advertisements
Verwante presentaties
Wat denkt men over euthanasie in Benelux?
Advertisements

KWALITEITSZORG november 2012


Wat was toen het grootste het grootste probleem van de van de FOD?
Astrid Etman (Afd. Maatschappelijke Gezondheidszorg)
Amsterdam Open Air Festival Aantallen bezoekers Vergunning: 2 x Bezoekers zaterdag: Bezoekers zondag:
Presentatie cliëntenonderzoek. Algemeen Gehouden in december 2013 (doorlopend tot eind januari) DoelgroepVerzondenOntvangen% LG wonen en dagbesteding.

Inkomen les 17 Begrippen & 81 t/ 84
Duurzaamheid en kosten
Toepassingen op regressie
PROS2 Les 12 Programmeren en Software Engineering 2.
7 december 2011 Evolutie van de projecten: de webservices, de toepassing RRNADMIN en de evolutie van het RR naar een relationele databank.
4e Bruse Boys voetbalquiz
INITIATIE DEFINITIESELECTIECONCIPIËREN INBEDDING IN ORGANISATIE ONDERHOUD Opdrachtgever/ Projectleider Eigenaar Architect en zijn team Stakeholders INITIATIEDEFINITIESELECTIECONCIPIËRENINBEDDINGONDERHOUD.
HM-ES-th2 Les 1 t/m 4 Electronic System Level Design and Verification.
DAIR Indicatorenstelsel1 Naar een indicatorenstelsel Jim Allen Ger Ramaekers Rolf van der Velden Researchcentrum voor Onderwijs en Arbeidsmarkt.
MMNM 2012 (Marketing) communicatie.
Tevredenheidsonderzoek 2007
Nooit meer onnodig groen? Luuk Misdom, IT&T
Uitslag Ouder Tevredenheids Onderzoek 2010 Basisschool Los Hoes Haaksbergen.
1 SOCS Hoofdstuk 1 Programmeertaal C. 2 Kenmerken van C Hogere programmeertaal  Grote verzameling types, strenge type controle  Zelf nieuwe types definiëren.
1 SOCS Hoofdstuk 3 Basisprogrammatuur. 2 Inhoud De Vertaler De Voorvertaler De Lader De Binder De Vertolker Het Speurprogramma Het Opstarten van de Computer.
Elke 7 seconden een nieuw getal
Lineaire functies Lineaire functie
1 het type x² = getal 2 ontbinden in factoren 3 de abc-formule
Programma SIEL week 4 SIEL week 4 Sensorprincipes Meettechnieken
Sequentiële schakelingen
1 Vocoost – Boemerang 16/11/ Ge mut zo nie kijken manneke. Hebt ge uwe kop al wel een is gezien.
Real-Time Systems (RTSYST) Week 2. Process/Thread states Scheduler = deel van OS dat de toestanden van processen/threads bepaald. OS gebruikt timerinterrupt.
In dit vakje zie je hoeveel je moet betalen. Uit de volgende drie vakjes kan je dan kiezen. Er is er telkens maar eentje juist. Ken je het juiste antwoord,
Hogere-ordefuncties nVoeg de elementen van een lijst samen nCombineer twee functies foldr :: (a  b  b)  b  [a]  b [a] (.) :: (b  c)  (a  b)  a.
Foto 65 – wegenis + parking + rechts G01 Foto 66 – G01.
CONTROLESTRUCTUREN (DEEL 1)
Meten BMI Dat is in de veilige zone, want de BMI zit tussen 18,5 en 25
Inkomen les t/m 75 plus Zelftest Kennisvragen.
Inkomen les 14 Begrippen & 65 t/m Begrippen Primaire sector Bedrijven die zaken aan de natuur onttrekken (landbouw, jacht, bosbouw, visserij)
Ben Bruidegom 1 Sequentiële schakelingen Toestand uitgang bepaald door:  ingangen;  vorige toestand uitgang.
Inger Plaisier Marjolein Broese van Groenou Saskia Keuzenkamp
Landelijke Monitor VVE 2011 LEA-conferentie Sabine Peterink Sardes.
Help! ‘Niet vorderende ontsluiting’
SAMENWERKING WO EN HBO BIJ AANSLUITINGSONDERZOEK V0-HO Rob Andeweg DAIR 7 en 8 november 2007.
CQI- ziekenhuisopname ontwikkeling en discriminerend vermogen
Deel I: Programmeertaal C 6. Arrays en Pointers
Cijfers Zorg en Gezondheid
Liaison dangereuse? Secretarissen en ontvangers over hun onderlinge verhouding en de werking van het managementteam Prof. Dr. Herwig Reynaert Dr. Kristof.
EFS Seminar Discriminatie van pensioen- en beleggingsfondsen
Eerst even wat uitleg. Klik op het juiste antwoord als je het weet.
Op reis naar een dierentuin
Het timing model in VHDL
Uitleg scheikundige begrippen
Niet- rokersfaciliteiten in de Horeca. Bron: OIVO Rookvrije plaatsen? 25% 34% 31% 10% Moeilijk Eerder moeilijk Eerder gemakkelijk Gemakkelijk - 59% +
STIMULANS KWALITEITSZORG juni 2014.
Lesson 8. Today’s lesson  Exam material  Check homework  Grammar: the passive voice.
Concurrency en Deadlock ICT Infrastructuren David N. Jansen Stallings hoofdstukken 5 en 6.
Ongelijkheid in toegang tot digitale systemen Twee voorbeelden Invloedsfactoren Statistieken en Bronnen Alexandre Vantomme.
Voor wie hartrevalidatie? “Bijna elke patiënt met cardiale aandoening” Traditionele indicaties: –Acuut coronair syndroom –CABG / klepoperatie –PCI –Angina.
Culturele Atlas 2004 Gelderland en Overijssel. Culturele Atlas, Enschede ( 76)Apeldoorn ( 92) Zwolle (121)Nijmegen
Resultaten leesverbeterplan Enschede
DIGITAL ANALYTICS TOOLS. 2 DIGITALE MEDIA - METEN.
Openbaar je talent Service public, talent particulier.
HRM - netwerk 03 september 2004 Personeelsresultatenonderzoek 2004.
tircms02-p les 1 Operating Systems practicum
Tircms03-p les 4 Klassen. Abstracte datatypes in C struct stack { char info[100]; int top; }; void reset(stack *s) { s->top = -1; } void push(stack *s,
1 XSLT processing & control Datamodellering 2006.
C++ Les 1: introductie. Programmeren Programma’s scripts Websites libraries (Sound, GUI, netwerking…)
IF() ELSE() LES 4: VOORWAARDEN. BOOL Een variabele die slechts 2 mogelijke waarden kan hebben: true(waar) of false(niet waar) duid je aan met bool bool.
Tinpro015b-les4 Klassen.
Transcript van de presentatie:

HM-ES-th2 Les 9 en 10 Electronic System Level Design and Verification

HM-ES-th2 Les 9 Electronic System Level Design and Verification

UPPAAL  UPPAAL is een geïntegreerde tool voor het modeleren, valideren en verifiëren van real-time systemen.  Een UPPAAL model bestaat uit een netwerk van timed finite state machines, uitgebreid met datatypes.  UPPAAL is gratis te gebruiken voor niet-commercieel gebruik in het hoger onderwijs. Voor commercieel gebruik moet worden betaald. 54

UPPAAL model  Een UPPAAL model bestaat uit:  Globale declaraties  Types  Bounded integers  Arrays  Structs  Variabelen  Functies (in C syntax)  Channels (voor synchronisatie)  Clocks (voor het bijhouden van de tijd)  Proces templates  Grafisch weergegeven als een timed FSMD (Finite State Machine with Data)  Lokale declaraties  System declarations  Instantieert processen 55

UPPAAL proces  Een UPPAAL proces wordt grafisch weergegeven en bestaat uit:  Toestanden (positions)  Overgangen (transitions) eventueel voorzien van:  Guard (voorwaarde waaronder transition mogelijk is)  Synchronization (rendezvous via een channel):  c!  synchroniseer met c? op channel c  c?  synchroniseer met c! channel c  Update:  Toekenningen aan variabelen.  Reset van de tijd 56

UPPAAL template  We kunnen een UPPAAL proces definiëren als een template met parameters (vergelijkbaar met een C++ template)  Er kunnen verschillende instances van deze template worden aangemaakt (met verschillende argumenten) 57

UPPAAL voorbeeld  Dining Philosophers 58

Dining Philosophers 59

Dining Philosophers 60 start position position name reference parameter

Dining Philosophers 61 synchronization guard update

Dining Philosophers 62 bounded integer

Dining Philosophers 63

UPPAAL Model  We kunnen een UPPAAL model:  Simuleren (valideren)  Checken (verifiëren)  Met behulp van Requirement Specification Language (Query Language)  Subset van TCTL = Timed Computation Tree Logic 64

Requirement Specification Language  Proposities  Vergelijkingen bijvoorbeeld a>3 bijvoorbeeld Init.i==5 (lokale variabele i in proces Init)  Proces bevind zich in een bepaalde toestand bijvoorbeeld P0.Eat  Expressies met meerdere proposities  Propositielogica: &&, and, ||, or, !, not, imply  Predicatenlogica: A (voor alle), E (er is een)  Linear Temporal Logic: [] (altijd), <> (ooit) 65

Requirement Specification Language 66 ExpressieBetekenisGelijk aan E<> pEr is een pad waar ooit p A[] pVoor alle paden altijd p! (E<> !p) E[] pEr is een pad waarvoor altijd p A<> pVoor alle paden ooit p! (E[] !p) p --> qLeid totA[] (p imply A<> q) A[] !deadlockEr kan nooit een deadlock optreden

Dining Philosophers 67

Dining Philosophers 68

Diagnostic trace van deadlock 69

Dining Philosophers  Wat is het verschil tussen het UPPAAL model en het op het practicum bestudeerde SPIN model? 70 In het UPPAAL model kan een filosoof een vork niet neerleggen, maar alleen doorgeven aan een andere filosoof Huiswerk! Pas het model aan zodat een vork neergelegd kan worden!

71 UPPAAL Huiswerk! Bestudeer: “Uppaal 4.0: Small Tutorial” en bedenk vragen!

HM-ES-th2 Les 10 Electronic System Level Design and Verification

Uitwerking huiswerk 73 chan pickup[5]; chan laydown[5]; P0 = Philo(pickup[0], laydown[0], pickup[1], laydown[1]); P1 = Philo(pickup[1], laydown[1], pickup[2], laydown[2]); P2 = Philo(pickup[2], laydown[2], pickup[3], laydown[3]); P3 = Philo(pickup[3], laydown[3], pickup[4], laydown[4]); P4 = Philo(pickup[4], laydown[4], pickup[0], laydown[0]); F0 = Fork(pickup[0], laydown[0]); F1 = Fork(pickup[1], laydown[1]); F2 = Fork(pickup[2], laydown[2]); F3 = Fork(pickup[3], laydown[3]); F4 = Fork(pickup[4], laydown[4]); system F0, F1, F2, F3, F4, P0, P1, P2, P3, P4; chan& pickup_left, chan& laydown_left, chan& pickup_right, chan& laydown_right chan& pickup, chan& laydown Declarations: System declarations: Fork: Philo:

E<> (P0.Eat && P2.Eat) 74

E<> (P0.Eat && P2.Eat) 75

Verifier 76

Tijd in UPPAAL  Tijd wordt bijgehouden in clocks (er kunnen meerdere clocks zijn)  Bijvoorbeeld: clock c;  Clocks worden “vanzelf” (allemaal gelijk) opgehoogd  Clocks kan gereset worden  Bijvoorbeeld c:=0  We kunnen een invariant bij een toestand gebruiken  Bijvoorbeeld: c<=5  We kunnen een guard bij een overgang gebruiken  Bijvoorbeeld: c>=3 77

Voorbeeld CounterTest1 78 CounterTest: System declarations: CT = CounterTest(); system CT; invariant guard

Verify CounterTest1 79 Is dit wat je verwacht?

Voorbeeld CounterTest2 80 CounterTest: System declarations: CT = CounterTest(); system CT; urgent state (de tijd kan niet verhoogd worden in een urgent state)

Verify CounterTest2 81

Voorbeeld timed model 82 Lamp: System declarations: system Lamp, User; Declarations: clock c; chan press; User: Wat wordt hier gemodelleerd?

Simulation (in state Low) 83

Simulation (in state Low) 84

Verification 85