Download presentation
Presentation is loading. Please wait.
1
Formalizing the ARTS MPSoC Model in UPPAAL Jan Madsen Embedded Systems Engineering Group Informatics and Mathematical Modeling Technical University of Denmark ARTIST2
2
ARTIST2 Clustermeeting, Linkoping, May 14, 2007Jan Madsen [2] System Modelling Infrastructure MPARM DES ARTSUPPAAL Holistic MPASymTA/S Simulation-basedFormal-based Execution Platforms Test & Verification DTU UoB Linkoping TUBETHZ Linkoping AAU
3
ARTIST2 Clustermeeting, Linkoping, May 14, 2007Jan Madsen [3] abc Model of system implementation Motivation 1 2 os 3 4 L1L1 L2L2 L3L3 R1R1 R2R2 R3R3 1 3 4 2 Application model abc System platform System-level design tasks os
4
ARTIST2 Clustermeeting, Linkoping, May 14, 2007Jan Madsen [4] Outline The ARTS framework Formalizing ARTS MOVES Example 1 2 os 3 4 abc L1L1 L2L2 L3L3 R1R1 R2R2 R3R3 Model of system implementation
5
ARTIST2 Clustermeeting, Linkoping, May 14, 2007Jan Madsen [5] ARTS objectives System-level modeling framework Bridging, Application RTOS Execution platform Processing elements NoC Supporting System-level analysis Early design space exploration 1 2 os 3 4 abc L1L1 L2L2 L3L3 R1R1 R2R2 R3R3 Model of system implementation Cross-layer optimization
6
ARTIST2 Clustermeeting, Linkoping, May 14, 2007Jan Madsen [6] ARTS framework 1 2 os 3 4 abc L1L1 L2L2 L3L3 R1R1 R2R2 R3R3 Model of system implementation ARTS model in SystemC
7
ARTIST2 Clustermeeting, Linkoping, May 14, 2007Jan Madsen [7] ARTS Framework ARTS Simulation framework based on SystemC ARTS PE module: Application OS IO ports (OCP 2.0 interface) IO device drivers ARTS Communication module: Network topology and protocol Network adapters IO ports (OCP 2.0 interface) Applications of ARTS : MPSoC (NoC exploration) Wireless sensor networks Automotive systems (TT vs. ET) Dynamic reconfiguration IO Master OCP IO device Slave HW model Synchronnizer Resource Allocator Scheduler 1 n... A p p l i c a t i o n R T O S SoC communication interface(OCP)
8
ARTIST2 Clustermeeting, Linkoping, May 14, 2007Jan Madsen [8] Formalizing ARTS
9
ARTIST2 Clustermeeting, Linkoping, May 14, 2007Jan Madsen [9] Timed Automata for a task
10
ARTIST2 Clustermeeting, Linkoping, May 14, 2007Jan Madsen [10] MOVES: Hiding UPPAAL! abc Model of system implementation 1 2 os 3 4 L1L1 L2L2 L3L3 R1R1 R2R2 R3R3 1 3 4 2 Application model abc System platform System-level design tasks os
11
ARTIST2 Clustermeeting, Linkoping, May 14, 2007Jan Madsen [11] abc Model of system implementation MOVES 1 2 os 3 4 L1L1 L2L2 L3L3 R1R1 R2R2 R3R3 Model checking Required specification E<>missedDeadline E<>totalCostUsed(Memory)>=23 E<>totalCostUsed(Energy)>=15
12
ARTIST2 Clustermeeting, Linkoping, May 14, 2007Jan Madsen [12] Example: MPSoC specification
13
ARTIST2 Clustermeeting, Linkoping, May 14, 2007Jan Madsen [13] Specifying the application Task t1 = new Task(1, 3, 10, 10, 0, 1); Task t2 = new Task(2, 2, 8, 10, 0, 2); Task t3 = new Task(2, 2, 10, 10, 0, 3); Task t4 = new Task(1, 1, 5, 10, 0, 4);
14
ARTIST2 Clustermeeting, Linkoping, May 14, 2007Jan Madsen [14] Execution platform Processor p1 = new Processor(1, Processor.RM); Processor p2 = new Processor(1, Processor.RM); Processor p3 = new Processor(1, Processor.RM); Processor pm = new Processor(1, Processor.RM); Resource r1 = new Resource();
15
ARTIST2 Clustermeeting, Linkoping, May 14, 2007Jan Madsen [15] Mapping application onto platform Task[][] tasks = {{t1},{t2,t3},{t4},{tm1,tm2}}; Task tm1 = new Task(3, 3, 10, 5); Task tm2 = new Task(1, 1, 10, 6); apps.useResource(tm1,r1); apps.useResource(tm2,r1); apps.addDep(t1,tm1); apps.addDep(tm1,t2); apps.addDep(t3,tm2); apps.addDep(tm2,t4); 3 1 τ m1 τ m2
16
ARTIST2 Clustermeeting, Linkoping, May 14, 2007Jan Madsen [16] e(τ 1 )= [3] Traces e(τ 1 )= [1:3]
17
ARTIST2 Clustermeeting, Linkoping, May 14, 2007Jan Madsen [17] Handling realistic applications? [Application from Marcus Schmitz, TU Linkoping] Smart phone:
18
ARTIST2 Clustermeeting, Linkoping, May 14, 2007Jan Madsen [18] Smart phone Tasks: 114 Deadlines: [0.02: 0.5] sec Execution: [52 : 266.687] cycles Hyperperiod: 12.500.000 cycles ~2.500 task executions Platform: 6 processors, 25 MHz 1 bus Verified in 2.5 hours! Using a granularity of 400 cycles
19
ARTIST2 Clustermeeting, Linkoping, May 14, 2007Jan Madsen [19] Acknowledgements MOVES Michael R. Hansen Aske Brekling Jens Ellebæk Kristian S. Knudsen ARTS Shankar Mahadevan Kehuai Wu Kashif Virk Michael Storgaard Mercury Gonzalez
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.