9ea1765d5fdb2f787304d246a1473b11.ppt
- Количество слайдов: 16
Ptolemy II The automotive challenge problems version 4. 1 Johan Eker Edward Lee with thanks to Jie Liu, Paul Griffiths, and Steve Neuendorffer Mo. BIES Working group meeting, 27 -28 September 2001, Dearborn
Overview n Yellowstone recap n Selected challenge problems n 1. 1 Multiple-view modeling n 1. 2 Automated composition of subcomponents n 3. 3 Code generation Eker & Lee, UC Berkeley
Yellowstone recap: Design of embedded control systems n Different phases, different tools, different people makes it difficult to debug: n Control engineer view n n n plant dynamics, stability, phase margins, rise time, etc. assumes: equidistant sampling with no or little latency Embedded system engineer view n n scheduling, priorities, memory usage, communication setup, etc assumes: fixed controller design n A good toolset supports close interaction between the different phases/teams n The only interesting performance metric is the behavior of the controlled system Eker & Lee, UC Berkeley
“Classical” development cycle n Sign-offs are expensive n Feedback slow Eker & Lee, UC Berkeley
Closing the “system design/control design” loop hardware setup communication priorities RTOS tuning evaluate system performance system design control design evaluate system performance controller parameters delay compensation reviewing specs Eker & Lee, UC Berkeley
Idealized Model Assumes equidistant sampling constant latency More realistic model n. Multitasking njitter, execution time n. RTOS domain n. Communication n. Transport, routing, medium access Eker & Lee, UC Berkeley
1. 1 Multi-view modeling n Different granularity models n Level 1: Hybrid automata w/ cont. dynamics n Level 2: Discrete controllers and some scheduling info n Level 3: Platform specific info n Component refinement n Start with a naïve implementation and make it gradually more complex n Ptolemy II n Component based n Hierarchical & heterogeneous n Functional behavior & control flow decoupled through the use of directors n Composite actors treated like atomic Eker & Lee, UC Berkeley
Multi-view modeling in Ptolemy II continuous time finite-state machine discrete time Hierarchical, heterogeneous model Eker & Lee, UC Berkeley
Component refinement in Ptolemy II Example model 1 Eker & Lee, UC Berkeley
Component refinement in Ptolemy II Example model 2 Eker & Lee, UC Berkeley
Composite actors n From top level view: the behavioral semantics of the component has not changed! n Aggregation not just syntactical n Composite actor is opaque Eker & Lee, UC Berkeley
1. 2 Automated composition of sub-components n What is the actual problem? n Example: Many states and many signals in a Stateflow + Simulink gets means and whole lot of wiring n Lack of proper aggregation! n Ptolemy addresses the problem through hierarchy n Smarter editor vs. new languages Eker & Lee, UC Berkeley
The Modal. Model in Ptolemy II n Wiring of the state refinements is done automatically, n All wires are hidden under the hood Eker & Lee, UC Berkeley
3. 3 Code generation n From Java to Java & Java to C at Maryland n Actor libraries are built and maintained in Java n polymorphic libraries are rich and small n Collapsing composite actors to atomic actors n Director + actors => actor n Efficiency gotten through code transformations n specialization of polymorphic types n code substitution using Mo. C semantics n removal of unnecessary code Eker & Lee, UC Berkeley
Outline of our Approach Jeff Tsay, Christopher Hylands, Steve Neuendorffer Model of Computation semantics defines communication, flow of control parser Ptolemy II model scheduler Schedule: - fire Gaussian 0 - fire Ramp 1 - fire Sine 2 - fire Add. Subtract 5 - fire Sequence. Scope 10 method call All actors are given in Java, then translated to embedded Java, C, VHDL, etc. if block method call block abstract syntax tree … for (int i = 0; i < plus. get. Width(); i++) { if (plus. has. Token(i)) { if (sum == null) { sum = plus. get(i); } else { sum = sum. add(plus. get(i)); } } } … target code Eker & Lee, UC Berkeley
Conclusions n Hierarchically heterogeneous modeling matches the applications well. n Component based technologies and hierarchical heterogeneity gives good support for Multi-view modeling n Piecewise refinement n n Tool integration as a more fundamental problem n About designing the proper protocol for communication between subsystems Eker & Lee, UC Berkeley
9ea1765d5fdb2f787304d246a1473b11.ppt