Applying Constraint Programming for Design Space ... · process1 process2 32 process4 32 process8...
Transcript of Applying Constraint Programming for Design Space ... · process1 process2 32 process4 32 process8...
Applying Constraint Programming forDesign Space Exploration in Avionics
Rodolfo Jordão1 Tage Mohammadat1 George Ungureanu1 Ingemar Söderquist2 Mats Ekman2
Ingo Sander1
1School of EECS, KTH Royal Institute of Technology, Stockholm, Sweden2Business Area Aeronautics, Saab AB, Linköping, Sweden
October 9, 2019
MotivationNFFP7 CORRECT Case Study : Platform
▶ CPM: Processing Module(CPU and Mem.)
▶ CPM’s execute real timeoperating systems complaintwith standard ARINC 653
▶ Switch communication ispredictable (Flight Crit. Basedon standard SAE AS6003 andMission Op. Based onstandard ARINC 664)
Flight Crit.CPM 1
Flight Crit.CPM 2
. . . Flight Crit.CPM nFlightCrit.
Flight Crit.Switch
Mission Op.CPM 1
Mission Op.CPM 2
. . . Mission Op.CPM nMissionOp.
Mission Op.Switch
Flight Crit. - Mission Op.Bridge
1 / 18
MotivationNFFP7 CORRECT Case Study : Platform
▶ CPM: Processing Module(CPU and Mem.)
▶ CPM’s execute real timeoperating systems complaintwith standard ARINC 653
▶ Switch communication ispredictable (Flight Crit. Basedon standard SAE AS6003 andMission Op. Based onstandard ARINC 664)
Flight Crit.CPM 1
Flight Crit.CPM 2
. . . Flight Crit.CPM nFlightCrit.
Flight Crit.Switch
Mission Op.CPM 1
Mission Op.CPM 2
. . . Mission Op.CPM nMissionOp.
Mission Op.Switch
Flight Crit. - Mission Op.Bridge
1 / 18
MotivationNFFP7 CORRECT Case Study : Platform
▶ CPM: Processing Module(CPU and Mem.)
▶ CPM’s execute real timeoperating systems complaintwith standard ARINC 653
▶ Switch communication ispredictable (Flight Crit. Basedon standard SAE AS6003 andMission Op. Based onstandard ARINC 664)
Flight Crit.CPM 1
Flight Crit.CPM 2
. . . Flight Crit.CPM nFlightCrit.
Flight Crit.Switch
Mission Op.CPM 1
Mission Op.CPM 2
. . . Mission Op.CPM nMissionOp.
Mission Op.Switch
Flight Crit. - Mission Op.Bridge
1 / 18
MotivationNFFP7 CORRECT Case Study : Platform
▶ CPM: Processing Module(CPU and Mem.)
▶ CPM’s execute real timeoperating systems complaintwith standard ARINC 653
▶ Switch communication ispredictable (Flight Crit. Basedon standard SAE AS6003 andMission Op. Based onstandard ARINC 664)
Flight Crit.CPM 1
Flight Crit.CPM 2
. . . Flight Crit.CPM nFlightCrit.
Flight Crit.Switch
Mission Op.CPM 1
Mission Op.CPM 2
. . . Mission Op.CPM nMissionOp.
Mission Op.Switch
Flight Crit. - Mission Op.Bridge
1 / 18
MotivationNFFP7 CORRECT Case Study : Applications I
▶ Independent periodic taskswith communication
▶ Different applications mayneed to be spatially isolateddepending upon criticalities
application1
application2
application3
application4
process1process2
32
process4
32process8
32
64
process3
32
32
32
64
64
64process5
1616
process6
16
process7
16
16
8
8
8
8
8
8
1
1
1
1
1
16
16
16
16
16
2 / 18
MotivationNFFP7 CORRECT Case Study : Applications I
▶ Independent periodic taskswith communication
▶ Different applications mayneed to be spatially isolateddepending upon criticalities
application1
application2
application3
application4
process1process2
32
process4
32process8
32
64
process3
32
32
32
64
64
64process5
1616
process6
16
process7
16
16
8
8
8
8
8
8
1
1
1
1
1
16
16
16
16
16
2 / 18
MotivationNFFP7 CORRECT Case Study : Applications I
▶ Independent periodic taskswith communication
▶ Different applications mayneed to be spatially isolateddepending upon criticalities
application1
application2
application3
application4
process1process2
32
process4
32process8
32
64
process3
32
32
32
64
64
64process5
1616
process6
16
process7
16
16
8
8
8
8
8
8
1
1
1
1
1
16
16
16
16
16
2 / 18
MotivationNFFP7 CORRECT Case Study : Sub-problem
▶ Designer’s job: decide where applications go to satisfy specifications.
Flight Crit.CPM 1
Flight Crit.CPM 2
. . . Flight Crit.CPM nFlightCrit.
Flight Crit.Switch
Mission Op.CPM 1
Mission Op.CPM 2
. . . Mission Op.CPM nMissionOp.
Mission Op.Switch
Flight Crit. - Mission Op.Bridge
application1
application2
application3
application4
process1process2
32
process4
32process8
32
64
process3
32
32
32
64
64
64process5
1616
process6
16
process7
16
16
8
8
8
8
8
8
1
1
1
1
1
16
16
16
16
16
▶ The set of the possibilities is called the Design Space.▶ Design Space Exploration (DSE) is the process of finding the decisions that meet the
specifications.
3 / 18
MotivationNFFP7 CORRECT Case Study : Sub-problem
▶ Designer’s job: decide where applications go to satisfy specifications.
Flight Crit.CPM 1
Flight Crit.CPM 2
. . . Flight Crit.CPM nFlightCrit.
Flight Crit.Switch
Mission Op.CPM 1
Mission Op.CPM 2
. . . Mission Op.CPM nMissionOp.
Mission Op.Switch
Flight Crit. - Mission Op.Bridge
application1
application2
application3
application4
process1process2
32
process4
32process8
32
64
process3
32
32
32
64
64
64process5
1616
process6
16
process7
16
16
8
8
8
8
8
8
1
1
1
1
1
16
16
16
16
16
▶ The set of the possibilities is called the Design Space.▶ Design Space Exploration (DSE) is the process of finding the decisions that meet the
specifications.
3 / 18
MotivationNFFP7 CORRECT Case Study : Sub-problem
▶ Designer’s job: decide where applications go to satisfy specifications.
Flight Crit.CPM 1
Flight Crit.CPM 2
. . . Flight Crit.CPM nFlightCrit.
Flight Crit.Switch
Mission Op.CPM 1
Mission Op.CPM 2
. . . Mission Op.CPM nMissionOp.
Mission Op.Switch
Flight Crit. - Mission Op.Bridge
application1
application2
application3
application4
process1process2
32
process4
32process8
32
64
process3
32
32
32
64
64
64process5
1616
process6
16
process7
16
16
8
8
8
8
8
8
1
1
1
1
1
16
16
16
16
16
▶ The set of the possibilities is called the Design Space.
▶ Design Space Exploration (DSE) is the process of finding the decisions that meet thespecifications.
3 / 18
MotivationNFFP7 CORRECT Case Study : Sub-problem
▶ Designer’s job: decide where applications go to satisfy specifications.
Flight Crit.CPM 1
Flight Crit.CPM 2
. . . Flight Crit.CPM nFlightCrit.
Flight Crit.Switch
Mission Op.CPM 1
Mission Op.CPM 2
. . . Mission Op.CPM nMissionOp.
Mission Op.Switch
Flight Crit. - Mission Op.Bridge
application1
application2
application3
application4
process1process2
32
process4
32process8
32
64
process3
32
32
32
64
64
64process5
1616
process6
16
process7
16
16
8
8
8
8
8
8
1
1
1
1
1
16
16
16
16
16
▶ The set of the possibilities is called the Design Space.▶ Design Space Exploration (DSE) is the process of finding the decisions that meet the
specifications.
3 / 18
MotivationNFFP7 CORRECT Case Study : Applications II
▶ How hard can DSE get?
4 / 18
MotivationNFFP7 CORRECT Case Study : Applications II
▶ How hard can DSE get? Check the Flight Critical part
4 / 18
MotivationNFFP7 CORRECT Case Study : Applications II▶ How hard can DSE get? Check the Flight Critical part (91 processes)
process1
process31
64
process30
64
process23
64
process26
64
process29
64
process42
64
process4
64
process27
64
process3
64
process2
64
process59
64
process8
32
8
8
8
8
8
8
process24
8
process25
8
process41
8
8
8
8
8
8
8
8
8
8
4
4
4
process89
4
8
8
8
8
8
8
8
8
8
64
64
64
64
64
64
process43
64
process73
64
64
8
8
8
8
8
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
process20
64
8
8
8
8
8
8
8
8
32
process5
32
process7
32
process6
32
process9
32
32
process61
32
process57
32
process60
32
process58
32
process86
32
process84
32
process91
32
process83
32
16
16
4
4
4
4
process21
32
process18
32
process19
32
4
16
16
4
44
4
1
1
32
32
32
32
process32
32
8
8
8
4
4
4
4
64
64
64
64
process16
64
process33
64
process37
64
process36
64
process35
64
process39
64
process38
64
process40
64
16
process10
process15
4process14
4
process17
4process13
4
process12
4
1
8
8
8
88
process11
88
8
888
864
64
8
64
8
88
88
88
32
32
32
3232
4
4
process22
32
32
32
4
4
4
32
32
32
8
8
8
8
8
8
8
8
process28
8
8
8
8
8
8
64
64
64
64
64
64
64
6464
64
64
64
64
64
32
32
32
3232
32
32
32
32
3232
32
32
32
32
32
32
32
32
32
32
3232
64
64
64
64
6464
321
process34
16
64
64
1
process44
8
process46
8
process45
8
4
4
4
88
process47
8
8
8
8
8
8
8
8
process71
8
process79
8
process56
8process75
8
process51
8
process50
8
process53
8
process54
8
process55
8
process48
8
process49
8
process72
8
16
16
process52
16 64
64
64
64
64
64
64
64
64
64
64
16
16
16
16
16
16
16
process80
16
process77
16
process76
16
process78
16
64
64
64
64
64
64
64
64
64
64
64
64
64
64
6464
64
8
8
8
8
8
8
8
8
8
8
8
8
8
88
8
8
8
8
8
64
64
64
64
64
64
64
8
8
8
8
8
8
64
64
64
64
64
64
64
64
64
6464
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
8
8
8
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
8
8
8
8
8
8
88
8
32
32
32
32
32
32
32
64
64
64
64
64
64
64
64
64
6464
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
8
8
8
8
8
8
8
8
8
process81
8
process85
8
process88
8
32
32
32
32
32
32
32
8
8
8
8
8
8
process62
6464
64
64
64
64
64
64
64
64
process69
64
process64
64
process66
64
process70
64
3232
32
32
32
32
32
32
32
32
4
44
4
4
4
4
4
4
4
4
4
4
4
4
6464
64
64
64
64
64
64
64
64
6464
64
64
32
32
32
32
32
process63
6464
64
64
64
64
64
64
64
process65
6464
64
64
64
64
64
64
64
process67
64
64
64
64
64
64
64
64
64
64
process68
6464
64
64
64
64
64
64
64
process74
1
64
64
64
64
64
64
32
32
32
32
32
32
32
32
32
32
64
64
64
process90
64
32
32
32
32
32
32
32
32
32
32
32process82
4
4
4
4
4
4
4
4
4
4
4
8
8
8
8
8
8
8
8
8
8
8
process87
8
8
8
8
8
8
8
8
8
8
8
4 / 18
MotivationNFFP7 CORRECT Case Study : Total problem
▶ Current total DSE problem:
Flight Crit.CPM 1
Flight Crit.CPM 2
. . . Flight Crit.CPM nFlightCrit.
Flight Crit.Switch
Mission Op.CPM 1
Mission Op.CPM 2
. . . Mission Op.CPM nMissionOp.
Mission Op.Switch
Flight Crit. - Mission Op.Bridge
application1
application2
application3
application4
process1process2
32
process4
32process8
32
64
process3
32
32
32
64
64
64process5
1616
process6
16
process7
16
16
8
8
8
8
8
8
1
1
1
1
1
16
16
16
16
16
process1
process31
64
process30
64
process23
64
process26
64
process29
64
process42
64
process4
64
process27
64
process3
64
process2
64
process59
64
process8
32
8
8
8
8
8
8
process24
8
process25
8
process41
8
8
8
8
8
8
8
8
8
8
4
4
4
process89
4
8
8
8
8
8
8
8
8
8
64
64
64
64
64
64
process43
64
process73
64
64
8
8
8
8
8
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
process20
64
8
8
8
8
8
8
8
8
32
process5
32
process7
32
process6
32
process9
32
32
process61
32
process57
32
process60
32
process58
32
process86
32
process84
32
process91
32
process83
32
16
16
4
4
4
4
process21
32
process18
32
process19
32
4
16
16
4
44
4
1
1
32
32
32
32
process32
32
8
8
8
4
4
4
4
64
64
64
64
process16
64
process33
64
process37
64
process36
64
process35
64
process39
64
process38
64
process40
64
16
process10
process15
4process14
4
process17
4process13
4
process12
4
1
8
8
8
88
process11
88
8
888
864
64
8
64
8
88
88
88
32
32
32
3232
4
4
process22
32
32
32
4
4
4
32
32
32
8
8
8
8
8
8
8
8
process28
8
8
8
8
8
8
64
64
64
64
64
64
64
6464
64
64
64
64
64
32
32
32
3232
32
32
32
32
3232
32
32
32
32
32
32
32
32
32
32
3232
64
64
64
64
6464
321
process34
16
64
64
1
process44
8
process46
8
process45
8
4
4
4
88
process47
8
8
8
8
8
8
8
8
process71
8
process79
8
process56
8process75
8
process51
8
process50
8
process53
8
process54
8
process55
8
process48
8
process49
8
process72
8
16
16
process52
16 64
64
64
64
64
64
64
64
64
64
64
16
16
16
16
16
16
16
process80
16
process77
16
process76
16
process78
16
64
64
64
64
64
64
64
64
64
64
64
64
64
64
6464
64
8
8
8
8
8
8
8
8
8
8
8
8
8
88
8
8
8
8
8
64
64
64
64
64
64
64
8
8
8
8
8
8
64
64
64
64
64
64
64
64
64
6464
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
8
8
8
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
8
8
8
8
8
8
88
8
32
32
32
32
32
32
32
64
64
64
64
64
64
64
64
64
6464
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
8
8
8
8
8
8
8
8
8
process81
8
process85
8
process88
8
32
32
32
32
32
32
32
8
8
8
8
8
8
process62
6464
64
64
64
64
64
64
64
64
process69
64
process64
64
process66
64
process70
64
3232
32
32
32
32
32
32
32
32
4
44
4
4
4
4
4
4
4
4
4
4
4
4
6464
64
64
64
64
64
64
64
64
6464
64
64
32
32
32
32
32
process63
6464
64
64
64
64
64
64
64
process65
6464
64
64
64
64
64
64
64
process67
64
64
64
64
64
64
64
64
64
64
process68
6464
64
64
64
64
64
64
64
process74
1
64
64
64
64
64
64
32
32
32
32
32
32
32
32
32
32
64
64
64
process90
64
32
32
32
32
32
32
32
32
32
32
32process82
4
4
4
4
4
4
4
4
4
4
4
8
8
8
8
8
8
8
8
8
8
8
process87
8
8
8
8
8
8
8
8
8
8
8
▶ Find a mapping that meets all deadlines and respects spatial constraints.▶ Also try to minimize the number of CPMs used!
5 / 18
MotivationNFFP7 CORRECT Case Study : Total problem
▶ Current total DSE problem:
Flight Crit.CPM 1
Flight Crit.CPM 2
. . . Flight Crit.CPM nFlightCrit.
Flight Crit.Switch
Mission Op.CPM 1
Mission Op.CPM 2
. . . Mission Op.CPM nMissionOp.
Mission Op.Switch
Flight Crit. - Mission Op.Bridge
application1
application2
application3
application4
process1process2
32
process4
32process8
32
64
process3
32
32
32
64
64
64process5
1616
process6
16
process7
16
16
8
8
8
8
8
8
1
1
1
1
1
16
16
16
16
16
process1
process31
64
process30
64
process23
64
process26
64
process29
64
process42
64
process4
64
process27
64
process3
64
process2
64
process59
64
process8
32
8
8
8
8
8
8
process24
8
process25
8
process41
8
8
8
8
8
8
8
8
8
8
4
4
4
process89
4
8
8
8
8
8
8
8
8
8
64
64
64
64
64
64
process43
64
process73
64
64
8
8
8
8
8
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
process20
64
8
8
8
8
8
8
8
8
32
process5
32
process7
32
process6
32
process9
32
32
process61
32
process57
32
process60
32
process58
32
process86
32
process84
32
process91
32
process83
32
16
16
4
4
4
4
process21
32
process18
32
process19
32
4
16
16
4
44
4
1
1
32
32
32
32
process32
32
8
8
8
4
4
4
4
64
64
64
64
process16
64
process33
64
process37
64
process36
64
process35
64
process39
64
process38
64
process40
64
16
process10
process15
4process14
4
process17
4process13
4
process12
4
1
8
8
8
88
process11
88
8
888
864
64
8
64
8
88
88
88
32
32
32
3232
4
4
process22
32
32
32
4
4
4
32
32
32
8
8
8
8
8
8
8
8
process28
8
8
8
8
8
8
64
64
64
64
64
64
64
6464
64
64
64
64
64
32
32
32
3232
32
32
32
32
3232
32
32
32
32
32
32
32
32
32
32
3232
64
64
64
64
6464
321
process34
16
64
64
1
process44
8
process46
8
process45
8
4
4
4
88
process47
8
8
8
8
8
8
8
8
process71
8
process79
8
process56
8process75
8
process51
8
process50
8
process53
8
process54
8
process55
8
process48
8
process49
8
process72
8
16
16
process52
16 64
64
64
64
64
64
64
64
64
64
64
16
16
16
16
16
16
16
process80
16
process77
16
process76
16
process78
16
64
64
64
64
64
64
64
64
64
64
64
64
64
64
6464
64
8
8
8
8
8
8
8
8
8
8
8
8
8
88
8
8
8
8
8
64
64
64
64
64
64
64
8
8
8
8
8
8
64
64
64
64
64
64
64
64
64
6464
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
8
8
8
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
8
8
8
8
8
8
88
8
32
32
32
32
32
32
32
64
64
64
64
64
64
64
64
64
6464
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
8
8
8
8
8
8
8
8
8
process81
8
process85
8
process88
8
32
32
32
32
32
32
32
8
8
8
8
8
8
process62
6464
64
64
64
64
64
64
64
64
process69
64
process64
64
process66
64
process70
64
3232
32
32
32
32
32
32
32
32
4
44
4
4
4
4
4
4
4
4
4
4
4
4
6464
64
64
64
64
64
64
64
64
6464
64
64
32
32
32
32
32
process63
6464
64
64
64
64
64
64
64
process65
6464
64
64
64
64
64
64
64
process67
64
64
64
64
64
64
64
64
64
64
process68
6464
64
64
64
64
64
64
64
process74
1
64
64
64
64
64
64
32
32
32
32
32
32
32
32
32
32
64
64
64
process90
64
32
32
32
32
32
32
32
32
32
32
32process82
4
4
4
4
4
4
4
4
4
4
4
8
8
8
8
8
8
8
8
8
8
8
process87
8
8
8
8
8
8
8
8
8
8
8
▶ Find a mapping that meets all deadlines and respects spatial constraints.▶ Also try to minimize the number of CPMs used!
5 / 18
MotivationNFFP7 CORRECT Case Study : Total problem
▶ Current total DSE problem:
Flight Crit.CPM 1
Flight Crit.CPM 2
. . . Flight Crit.CPM nFlightCrit.
Flight Crit.Switch
Mission Op.CPM 1
Mission Op.CPM 2
. . . Mission Op.CPM nMissionOp.
Mission Op.Switch
Flight Crit. - Mission Op.Bridge
application1
application2
application3
application4
process1process2
32
process4
32process8
32
64
process3
32
32
32
64
64
64process5
1616
process6
16
process7
16
16
8
8
8
8
8
8
1
1
1
1
1
16
16
16
16
16
process1
process31
64
process30
64
process23
64
process26
64
process29
64
process42
64
process4
64
process27
64
process3
64
process2
64
process59
64
process8
32
8
8
8
8
8
8
process24
8
process25
8
process41
8
8
8
8
8
8
8
8
8
8
4
4
4
process89
4
8
8
8
8
8
8
8
8
8
64
64
64
64
64
64
process43
64
process73
64
64
8
8
8
8
8
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
process20
64
8
8
8
8
8
8
8
8
32
process5
32
process7
32
process6
32
process9
32
32
process61
32
process57
32
process60
32
process58
32
process86
32
process84
32
process91
32
process83
32
16
16
4
4
4
4
process21
32
process18
32
process19
32
4
16
16
4
44
4
1
1
32
32
32
32
process32
32
8
8
8
4
4
4
4
64
64
64
64
process16
64
process33
64
process37
64
process36
64
process35
64
process39
64
process38
64
process40
64
16
process10
process15
4process14
4
process17
4process13
4
process12
4
1
8
8
8
88
process11
88
8
888
864
64
8
64
8
88
88
88
32
32
32
3232
4
4
process22
32
32
32
4
4
4
32
32
32
8
8
8
8
8
8
8
8
process28
8
8
8
8
8
8
64
64
64
64
64
64
64
6464
64
64
64
64
64
32
32
32
3232
32
32
32
32
3232
32
32
32
32
32
32
32
32
32
32
3232
64
64
64
64
6464
321
process34
16
64
64
1
process44
8
process46
8
process45
8
4
4
4
88
process47
8
8
8
8
8
8
8
8
process71
8
process79
8
process56
8process75
8
process51
8
process50
8
process53
8
process54
8
process55
8
process48
8
process49
8
process72
8
16
16
process52
16 64
64
64
64
64
64
64
64
64
64
64
16
16
16
16
16
16
16
process80
16
process77
16
process76
16
process78
16
64
64
64
64
64
64
64
64
64
64
64
64
64
64
6464
64
8
8
8
8
8
8
8
8
8
8
8
8
8
88
8
8
8
8
8
64
64
64
64
64
64
64
8
8
8
8
8
8
64
64
64
64
64
64
64
64
64
6464
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
8
8
8
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
8
8
8
8
8
8
88
8
32
32
32
32
32
32
32
64
64
64
64
64
64
64
64
64
6464
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
8
8
8
8
8
8
8
8
8
process81
8
process85
8
process88
8
32
32
32
32
32
32
32
8
8
8
8
8
8
process62
6464
64
64
64
64
64
64
64
64
process69
64
process64
64
process66
64
process70
64
3232
32
32
32
32
32
32
32
32
4
44
4
4
4
4
4
4
4
4
4
4
4
4
6464
64
64
64
64
64
64
64
64
6464
64
64
32
32
32
32
32
process63
6464
64
64
64
64
64
64
64
process65
6464
64
64
64
64
64
64
64
process67
64
64
64
64
64
64
64
64
64
64
process68
6464
64
64
64
64
64
64
64
process74
1
64
64
64
64
64
64
32
32
32
32
32
32
32
32
32
32
64
64
64
process90
64
32
32
32
32
32
32
32
32
32
32
32process82
4
4
4
4
4
4
4
4
4
4
4
8
8
8
8
8
8
8
8
8
8
8
process87
8
8
8
8
8
8
8
8
8
8
8
▶ Find a mapping that meets all deadlines and respects spatial constraints.
▶ Also try to minimize the number of CPMs used!
5 / 18
MotivationNFFP7 CORRECT Case Study : Total problem
▶ Current total DSE problem:
Flight Crit.CPM 1
Flight Crit.CPM 2
. . . Flight Crit.CPM nFlightCrit.
Flight Crit.Switch
Mission Op.CPM 1
Mission Op.CPM 2
. . . Mission Op.CPM nMissionOp.
Mission Op.Switch
Flight Crit. - Mission Op.Bridge
application1
application2
application3
application4
process1process2
32
process4
32process8
32
64
process3
32
32
32
64
64
64process5
1616
process6
16
process7
16
16
8
8
8
8
8
8
1
1
1
1
1
16
16
16
16
16
process1
process31
64
process30
64
process23
64
process26
64
process29
64
process42
64
process4
64
process27
64
process3
64
process2
64
process59
64
process8
32
8
8
8
8
8
8
process24
8
process25
8
process41
8
8
8
8
8
8
8
8
8
8
4
4
4
process89
4
8
8
8
8
8
8
8
8
8
64
64
64
64
64
64
process43
64
process73
64
64
8
8
8
8
8
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
process20
64
8
8
8
8
8
8
8
8
32
process5
32
process7
32
process6
32
process9
32
32
process61
32
process57
32
process60
32
process58
32
process86
32
process84
32
process91
32
process83
32
16
16
4
4
4
4
process21
32
process18
32
process19
32
4
16
16
4
44
4
1
1
32
32
32
32
process32
32
8
8
8
4
4
4
4
64
64
64
64
process16
64
process33
64
process37
64
process36
64
process35
64
process39
64
process38
64
process40
64
16
process10
process15
4process14
4
process17
4process13
4
process12
4
1
8
8
8
88
process11
88
8
888
864
64
8
64
8
88
88
88
32
32
32
3232
4
4
process22
32
32
32
4
4
4
32
32
32
8
8
8
8
8
8
8
8
process28
8
8
8
8
8
8
64
64
64
64
64
64
64
6464
64
64
64
64
64
32
32
32
3232
32
32
32
32
3232
32
32
32
32
32
32
32
32
32
32
3232
64
64
64
64
6464
321
process34
16
64
64
1
process44
8
process46
8
process45
8
4
4
4
88
process47
8
8
8
8
8
8
8
8
process71
8
process79
8
process56
8process75
8
process51
8
process50
8
process53
8
process54
8
process55
8
process48
8
process49
8
process72
8
16
16
process52
16 64
64
64
64
64
64
64
64
64
64
64
16
16
16
16
16
16
16
process80
16
process77
16
process76
16
process78
16
64
64
64
64
64
64
64
64
64
64
64
64
64
64
6464
64
8
8
8
8
8
8
8
8
8
8
8
8
8
88
8
8
8
8
8
64
64
64
64
64
64
64
8
8
8
8
8
8
64
64
64
64
64
64
64
64
64
6464
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
8
8
8
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
8
8
8
8
8
8
88
8
32
32
32
32
32
32
32
64
64
64
64
64
64
64
64
64
6464
64
64
64
64
64
64
64
64
64
64
64
64
64
64
64
8
8
8
8
8
8
8
8
8
process81
8
process85
8
process88
8
32
32
32
32
32
32
32
8
8
8
8
8
8
process62
6464
64
64
64
64
64
64
64
64
process69
64
process64
64
process66
64
process70
64
3232
32
32
32
32
32
32
32
32
4
44
4
4
4
4
4
4
4
4
4
4
4
4
6464
64
64
64
64
64
64
64
64
6464
64
64
32
32
32
32
32
process63
6464
64
64
64
64
64
64
64
process65
6464
64
64
64
64
64
64
64
process67
64
64
64
64
64
64
64
64
64
64
process68
6464
64
64
64
64
64
64
64
process74
1
64
64
64
64
64
64
32
32
32
32
32
32
32
32
32
32
64
64
64
process90
64
32
32
32
32
32
32
32
32
32
32
32process82
4
4
4
4
4
4
4
4
4
4
4
8
8
8
8
8
8
8
8
8
8
8
process87
8
8
8
8
8
8
8
8
8
8
8
▶ Find a mapping that meets all deadlines and respects spatial constraints.▶ Also try to minimize the number of CPMs used!
5 / 18
MotivationNFFP7 CORRECT Case Study : To consider
▶ ARINC 653 Partitions
▶ Communications between Flight Critical and Mission Operational parts▶ Temporal Isolation of applications▶ ...
▶ Complexity of the DSE problem ever increasing!▶ ...but the complexity and scale of the problems can be lowered with automated DSE
methods.
6 / 18
MotivationNFFP7 CORRECT Case Study : To consider
▶ ARINC 653 Partitions▶ Communications between Flight Critical and Mission Operational parts
▶ Temporal Isolation of applications▶ ...
▶ Complexity of the DSE problem ever increasing!▶ ...but the complexity and scale of the problems can be lowered with automated DSE
methods.
6 / 18
MotivationNFFP7 CORRECT Case Study : To consider
▶ ARINC 653 Partitions▶ Communications between Flight Critical and Mission Operational parts▶ Temporal Isolation of applications
▶ ...
▶ Complexity of the DSE problem ever increasing!▶ ...but the complexity and scale of the problems can be lowered with automated DSE
methods.
6 / 18
MotivationNFFP7 CORRECT Case Study : To consider
▶ ARINC 653 Partitions▶ Communications between Flight Critical and Mission Operational parts▶ Temporal Isolation of applications▶ ...
▶ Complexity of the DSE problem ever increasing!▶ ...but the complexity and scale of the problems can be lowered with automated DSE
methods.
6 / 18
MotivationNFFP7 CORRECT Case Study : To consider
▶ ARINC 653 Partitions▶ Communications between Flight Critical and Mission Operational parts▶ Temporal Isolation of applications▶ ...
▶ Complexity of the DSE problem ever increasing!
▶ ...but the complexity and scale of the problems can be lowered with automated DSEmethods.
6 / 18
MotivationNFFP7 CORRECT Case Study : To consider
▶ ARINC 653 Partitions▶ Communications between Flight Critical and Mission Operational parts▶ Temporal Isolation of applications▶ ...
▶ Complexity of the DSE problem ever increasing!▶ ...but the complexity and scale of the problems can be lowered with automated DSE
methods.
6 / 18
Putting it together
S
CPM
S
CPM
S
CPM
S
CPM
Predictable platform(Execution times, comm. times, ...)
7 / 18
Putting it together
S
CPM
S
CPM
S
CPM
S
CPM
Predictable platform(Execution times, comm. times, ...)
A1 A2
A3
B1
B2
Analyzable applications(Termination guarantess, buffers, ...)
7 / 18
Putting it together
S
CPM
S
CPM
S
CPM
S
CPM
Predictable platform(Execution times, comm. times, ...)
A1 A2
A3
B1
B2
Analyzable applications(Termination guarantess, buffers, ...)
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min total Throughput,Max total power,
colocations,non-colocations,
...
Local and global design constraints
7 / 18
Putting it together
S
CPM
S
CPM
S
CPM
S
CPM
Predictable platform(Execution times, comm. times, ...)
A1 A2
A3
B1
B2
Analyzable applications(Termination guarantess, buffers, ...)
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min total Throughput,Max total power,
colocations,non-colocations,
...
Local and global design constraints
Exploration of map and schedules of all applications in the platform respecting design constraints and applications behaviours.Optionally with optimization goals.
7 / 18
Putting it together
S
CPM
S
CPM
S
CPM
S
CPM
Predictable platform(Execution times, comm. times, ...)
A1 A2
A3
B1
B2
Analyzable applications(Termination guarantess, buffers, ...)
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min total Throughput,Max total power,
colocations,non-colocations,
...
Local and global design constraints
Exploration of map and schedules of all applications in the platform respecting design constraints and applications behaviours.Optionally with optimization goals.
Resources
Order
CPU1
...TDM1→n
...CPUn
A1 A2
A3B1 B2
Repeat
Repeat
A1 → A3 : 1 → n
Resources
Time
CPU1
...TDM1→n
...CPUn
A1 A2
A3
A1 → A3
B1 B2
Repeat7 / 18
Constraint ProgrammingWhy choose it?
▶ Additional specifications directly reflect additional variables and constraints.
Example:1. Two processes P1 and P2 cannot be co-located.2. Variables map(P1) and map(P2) represent their locations.3. Then map(P1) ̸= map(P2) reflects the co-location constraint.
▶ The problem description is separated from the solution method: different solvers may beused.
▶ Constraint programming solution frameworks are complete: guarantees of feasibility andoptimality available.
8 / 18
Constraint ProgrammingWhy choose it?
▶ Additional specifications directly reflect additional variables and constraints.Example:
1. Two processes P1 and P2 cannot be co-located.2. Variables map(P1) and map(P2) represent their locations.3. Then map(P1) ̸= map(P2) reflects the co-location constraint.
▶ The problem description is separated from the solution method: different solvers may beused.
▶ Constraint programming solution frameworks are complete: guarantees of feasibility andoptimality available.
8 / 18
Constraint ProgrammingWhy choose it?
▶ Additional specifications directly reflect additional variables and constraints.Example:
1. Two processes P1 and P2 cannot be co-located.2. Variables map(P1) and map(P2) represent their locations.3. Then map(P1) ̸= map(P2) reflects the co-location constraint.
▶ The problem description is separated from the solution method: different solvers may beused.
▶ Constraint programming solution frameworks are complete: guarantees of feasibility andoptimality available.
8 / 18
Constraint ProgrammingWhy choose it?
▶ Additional specifications directly reflect additional variables and constraints.Example:
1. Two processes P1 and P2 cannot be co-located.2. Variables map(P1) and map(P2) represent their locations.3. Then map(P1) ̸= map(P2) reflects the co-location constraint.
▶ The problem description is separated from the solution method: different solvers may beused.
▶ Constraint programming solution frameworks are complete: guarantees of feasibility andoptimality available.
8 / 18
Putting it together
S
CPM
S
CPM
S
CPM
S
CPM
Predictable platform(Execution times, comm. times, ...)
A1 A2
A3
B1
B2
Analyzable applications(Termination guarantess, buffers, ...)
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min total Throughput,Max total power,
colocations,non-colocations,
...
Local and global design constraints
9 / 18
Putting it together
S
CPM
S
CPM
S
CPM
S
CPM
Predictable platform(Execution times, comm. times, ...)
A1 A2
A3
B1
B2
Analyzable applications(Termination guarantess, buffers, ...)
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min total Throughput,Max total power,
colocations,non-colocations,
...
Local and global design constraints
Decision variables and constraints thatpreserve behaviour in the target platform
9 / 18
Putting it together
S
CPM
S
CPM
S
CPM
S
CPM
Predictable platform(Execution times, comm. times, ...)
A1 A2
A3
B1
B2
Analyzable applications(Termination guarantess, buffers, ...)
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min total Throughput,Max total power,
colocations,non-colocations,
...
Local and global design constraints
Decision variables and constraints thatpreserve behaviour in the target platform
Constraint Programmingsolver
9 / 18
Putting it together
S
CPM
S
CPM
S
CPM
S
CPM
Predictable platform(Execution times, comm. times, ...)
A1 A2
A3
B1
B2
Analyzable applications(Termination guarantess, buffers, ...)
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min total Throughput,Max total power,
colocations,non-colocations,
...
Local and global design constraints
Decision variables and constraints thatpreserve behaviour in the target platform
Constraint Programmingsolver
Resources
Order
CPU1
...TDM1→n
...CPUn
A1 A2
A3B1 B2
Repeat
Repeat
A1 → A3 : 1 → n
9 / 18
Putting it together
S
CPM
S
CPM
S
CPM
S
CPM
Predictable platform(Execution times, comm. times, ...)
A1 A2
A3
B1
B2
Analyzable applications(Termination guarantess, buffers, ...)
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min. Throughput,Max power,
...
Min total Throughput,Max total power,
colocations,non-colocations,
...
Local and global design constraints
Decision variables and constraints thatpreserve behaviour in the target platform
Constraint Programmingsolver
Resources
Order
CPU1
...TDM1→n
...CPUn
A1 A2
A3B1 B2
Repeat
Repeat
A1 → A3 : 1 → n
Resources
Time
CPU1
...TDM1→n
...CPUn
A1 A2
A3
A1 → A3
B1 B2
Repeat
9 / 18
Putting it togetherDeSyDe
ForSyDe’s logo
▶ This DSE flow is implemented inDeSyDe1, the DSE tool of the ForSyDe2
methodology and tooling ecosystem.
1https://github.com/forsyde/DeSyDe2https://forsyde.github.io/
10 / 18
DSE exampleTest Case I
▶ Given the platform,
applications and the constraints
S
CPM0
S
CPM2
S
CPM1
S
CPM3
frontE
rasta
pows
auds
comp
filter backE
1
1
1
11
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
11
1
1
1
1
1
1
1
1
1
1
1
a0
a1
a2
a9
a8
a4
a3
a5
a6
a7
1
1
1
1 1
1
1
11
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
11
11
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
RASTA-PLP Synthetic Cyclic Graph
▶ Rasta and Synth mustboth execute an actor inparallel at least once.
▶ Find a mapping and schedule that minimizes power.▶ DeSyDe finds a mapping and schedule using 3 CPMs after 10 minutes and proves its
optimality after 44 minutes.
11 / 18
DSE exampleTest Case I
▶ Given the platform, applications
and the constraints
S
CPM0
S
CPM2
S
CPM1
S
CPM3
frontE
rasta
pows
auds
comp
filter backE
1
1
1
11
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
11
1
1
1
1
1
1
1
1
1
1
1
a0
a1
a2
a9
a8
a4
a3
a5
a6
a7
1
1
1
1 1
1
1
11
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
11
11
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
RASTA-PLP Synthetic Cyclic Graph
▶ Rasta and Synth mustboth execute an actor inparallel at least once.
▶ Find a mapping and schedule that minimizes power.▶ DeSyDe finds a mapping and schedule using 3 CPMs after 10 minutes and proves its
optimality after 44 minutes.
11 / 18
DSE exampleTest Case I
▶ Given the platform, applications and the constraints
S
CPM0
S
CPM2
S
CPM1
S
CPM3
frontE
rasta
pows
auds
comp
filter backE
1
1
1
11
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
11
1
1
1
1
1
1
1
1
1
1
1
a0
a1
a2
a9
a8
a4
a3
a5
a6
a7
1
1
1
1 1
1
1
11
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
11
11
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
RASTA-PLP Synthetic Cyclic Graph
▶ Rasta and Synth mustboth execute an actor inparallel at least once.
▶ Find a mapping and schedule that minimizes power.▶ DeSyDe finds a mapping and schedule using 3 CPMs after 10 minutes and proves its
optimality after 44 minutes.
11 / 18
DSE exampleTest Case I
▶ Given the platform, applications and the constraints
S
CPM0
S
CPM2
S
CPM1
S
CPM3
frontE
rasta
pows
auds
comp
filter backE
1
1
1
11
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
11
1
1
1
1
1
1
1
1
1
1
1
a0
a1
a2
a9
a8
a4
a3
a5
a6
a7
1
1
1
1 1
1
1
11
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
11
11
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
RASTA-PLP Synthetic Cyclic Graph
▶ Rasta and Synth mustboth execute an actor inparallel at least once.
▶ Find a mapping and schedule that minimizes power.
▶ DeSyDe finds a mapping and schedule using 3 CPMs after 10 minutes and proves itsoptimality after 44 minutes.
11 / 18
DSE exampleTest Case I
▶ Given the platform, applications and the constraints
S
CPM0
S
CPM2
S
CPM1
S
CPM3
frontE
rasta
pows
auds
comp
filter backE
1
1
1
11
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
11
1
1
1
1
1
1
1
1
1
1
1
a0
a1
a2
a9
a8
a4
a3
a5
a6
a7
1
1
1
1 1
1
1
11
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
11
11
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
RASTA-PLP Synthetic Cyclic Graph
▶ Rasta and Synth mustboth execute an actor inparallel at least once.
▶ Find a mapping and schedule that minimizes power.▶ DeSyDe finds a mapping and schedule using 3 CPMs after 10 minutes and proves its
optimality after 44 minutes.11 / 18
DSE exampleTest Case II - Platform
▶ 5 by 6 predictable NoC Platform.
S
CPM0
S
CPM6
S
CPM12
S
CPM18
S
CPM24
S
CPM1
S
CPM7
S
CPM13
S
CPM19
S
CPM25
S
CPM2
S
CPM8
S
CPM14
S
CPM20
S
CPM26
S
CPM3
S
CPM9
S
CPM15
S
CPM21
S
CPM27
S
CPM4
S
CPM10
S
CPM16
S
CPM22
S
CPM28
S
CPM5
S
CPM11
S
CPM17
S
CPM23
S
CPM29
12 / 18
DSE exampleTest Case II - Applications
▶ 5 streaming applications.
getPx
gx gy
abs
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
getIm
usan
dir
thin
putIm
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
frontE
rasta
pows
auds
comp
filter backE
1
1
1
11
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
11
1
1
1
1
1
1
1
1
1
1
1
read
CC
DCT1
Huff1
1
1
1
1
DCT2
Huff2
1
1
1
1
DCT3
Huff3
1
1
1
1
DCT4
Huff4
1
1
1
1
DCT5
Huff5
1
1
1
1
DCT6
Huff6
1
1
1
1
CS
write
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
11111
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
11111
1
1
1
1
1
1
1
1
1
1
1
1
a0
a1
a2
a9
a8
a4
a3
a5
a6
a7
1
1
1
1 1
1
1
11
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
11
11
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
JPEG encoderRASTA-PLPSUSANSobel Synthetic Cyclic Graph
13 / 18
DSE exampleTest Case II
▶ There are no local or global constraints.
▶ The goal is to minimize power.▶ ...After 4 hours DeSyDe does not find any solution:▶ design space is too big! Many degrees of freedom to explore.
14 / 18
DSE exampleTest Case II
▶ There are no local or global constraints.▶ The goal is to minimize power.
▶ ...After 4 hours DeSyDe does not find any solution:▶ design space is too big! Many degrees of freedom to explore.
14 / 18
DSE exampleTest Case II
▶ There are no local or global constraints.▶ The goal is to minimize power.▶ ...After 4 hours DeSyDe does not find any solution:
▶ design space is too big! Many degrees of freedom to explore.
14 / 18
DSE exampleTest Case II
▶ There are no local or global constraints.▶ The goal is to minimize power.▶ ...After 4 hours DeSyDe does not find any solution:▶ design space is too big! Many degrees of freedom to explore.
14 / 18
DSE exampleTest Case II - Workaround
▶ Workaround: incorporate designer’s knowledge via a given mapping.
S0,0
R0
S0,1
R6
S0,2
R12
S0,3
R18
S0,4
R24
S1,0
R1
S1,1
R7
S1,2
R13
S1,3
R19
S1,4
R25
S2,0
R2
S2,1
R8
S2,2
R14
S2,3
R20
S2,4
R26
S3,0
R3
S3,1
R9
S3,2
R15
S3,3
R21
S3,4
R27
S4,0
R4
S4,1
R10
S4,2
R16
S4,3
R22
S4,4
R28
S5,0
R5
S5,1
R11
S5,2
R17
S5,3
R23
S5,4
R29getPx
gx
gy
abs
getIm
usan
dir
thin
putIm
frontE
rasta pows auds comp
filter
backE
read
CC
DCT1
Huff1
11 11DCT2
Huff2
11 11DCT3
Huff3
11 11DCT4
Huff4
11 11DCT5
Huff5
11 11DCT6
Huff6
11 11
CS
write
a0
a1
a2
a9
a8
a4
a3
a5
a6
a7
▶ DeSyDe now finds a schedule after 5 seconds and prove its optimality after 20 minutes.
15 / 18
DSE exampleTest Case II - Workaround
▶ Workaround: incorporate designer’s knowledge via a given mapping.
S0,0
R0
S0,1
R6
S0,2
R12
S0,3
R18
S0,4
R24
S1,0
R1
S1,1
R7
S1,2
R13
S1,3
R19
S1,4
R25
S2,0
R2
S2,1
R8
S2,2
R14
S2,3
R20
S2,4
R26
S3,0
R3
S3,1
R9
S3,2
R15
S3,3
R21
S3,4
R27
S4,0
R4
S4,1
R10
S4,2
R16
S4,3
R22
S4,4
R28
S5,0
R5
S5,1
R11
S5,2
R17
S5,3
R23
S5,4
R29getPx
gx
gy
abs
getIm
usan
dir
thin
putIm
frontE
rasta pows auds comp
filter
backE
read
CC
DCT1
Huff1
11 11DCT2
Huff2
11 11DCT3
Huff3
11 11DCT4
Huff4
11 11DCT5
Huff5
11 11DCT6
Huff6
11 11
CS
write
a0
a1
a2
a9
a8
a4
a3
a5
a6
a7
▶ DeSyDe now finds a schedule after 5 seconds and prove its optimality after 20 minutes.
15 / 18
DSE exampleTest Case II - Workaround
▶ Workaround: incorporate designer’s knowledge via a given mapping.
S0,0
R0
S0,1
R6
S0,2
R12
S0,3
R18
S0,4
R24
S1,0
R1
S1,1
R7
S1,2
R13
S1,3
R19
S1,4
R25
S2,0
R2
S2,1
R8
S2,2
R14
S2,3
R20
S2,4
R26
S3,0
R3
S3,1
R9
S3,2
R15
S3,3
R21
S3,4
R27
S4,0
R4
S4,1
R10
S4,2
R16
S4,3
R22
S4,4
R28
S5,0
R5
S5,1
R11
S5,2
R17
S5,3
R23
S5,4
R29getPx
gx
gy
abs
getIm
usan
dir
thin
putIm
frontE
rasta pows auds comp
filter
backE
read
CC
DCT1
Huff1
11 11DCT2
Huff2
11 11DCT3
Huff3
11 11DCT4
Huff4
11 11DCT5
Huff5
11 11DCT6
Huff6
11 11
CS
write
a0
a1
a2
a9
a8
a4
a3
a5
a6
a7
▶ DeSyDe now finds a schedule after 5 seconds and prove its optimality after 20 minutes.
15 / 18
Ongoing research and Future plans
▶ Use the knowledge gained with streaming application models to reach DSE problems withperiodic tasks formulations, akin to the motivation.
▶ Incorporating designer’s knowledge in DeSyDe as smart searches, other than fixedmappings.
▶ Use virtualization (partitioning) concepts to mix different application models into thesame platform.
▶ Incorporate platform exploration into the DSE framework.
16 / 18
References
K. Rosvall, T. Mohammadat, G. Ungureanu, J. Öberg, and I. Sander.Exploring Power and Throughput for Dataflow Applications on Predictable NoCMultiprocessors.In 2018 21st Euromicro Conference on Digital System Design (DSD), pages 719–726,August 2018.Kathrin Rosvall and Ingo Sander.Flexible and Tradeoff-Aware Constraint-Based Design Space Exploration for StreamingApplications on Heterogeneous Platforms.ACM Trans. Des. Autom. Electron. Syst., 23(2):21:1–21:26, November 2017.
17 / 18
Thank you!
(much) more in the ForSyDe webpage!https://forsyde.github.io/
18 / 18