CSSequencer CS Workshop 2007 February 1 st 2007
CSSequencer CS Workshop 2007 February 1 st, 2007 Holger Brand, GSI January 1 st, 2007 H. Brand@gsi. de
Contents & Acknowledgements • Contents – – – Kickoff Requirements Use Cases CSSequences classes Status • Acknowledgements – Michael Sayed – Maximilian Kugler – Igor Gunko January 1 st, 2007 H. Brand@gsi. de 2
GSI Accellerator Control System January 1 st, 2007 H. Brand@gsi. de 3
CSSequencer - Requirements • CS events enable the usage of already existing Base. Process classes within the CSSequencer Framework. • Modular and Hierarchical Design • Parallel and concurrent execution of Sequences • Reservation mechanism to avoid interference of concurrent sequences • Elementary sequences (may be a linked list of CS events) can be triggered by one singel event. • Elementary sequences can be combined to a new complex sequence (linked list). • Sequences can be repeated or conditionaly branched to different Subsequences. – The execution logic is configurable at runtime. • A sequence includes: 1. stimulate 2. response 3. compare January 1 st, 2007 H. Brand@gsi. de 4
Belab Device Layer - Detailed It is complicate and not trivial! You do not need to read this diagram! January 1 st, 2007 H. Brand@gsi. de 5
Belab Device Layer – Simplefied January 1 st, 2007 H. Brand@gsi. de 6
CSSequencer – Use. Cases January 1 st, 2007 H. Brand@gsi. de 7
CSDu. T - Device under Test • New base class CSDu. T – – Definition of Events that cause the execution of a sequence step Definition of Sequence Data Format Enables concurrent elementary sequences Reservation of addressed Base. Process objects • CSDu. T subclasses – Provide implementation of elementary sequence steps • virtual CSDut. Stimulate() • virtual CSDut. Response() • virtual CSDut. Compare() January 1 st, 2007 H. Brand@gsi. de 8
CSSeq. Exec - Sequencer • The CSSeq. Exec executes Sequences • Sequences are stored in double linked lists • The CSSeq. Exec execution is driven by a state machine January 1 st, 2007 H. Brand@gsi. de 9
CSDu. T – threat. vit January 1 st, 2007 H. Brand@gsi. de 10
CSSeq. Control – Main Panel January 1 st, 2007 H. Brand@gsi. de 11
CSSeq. Control – Subpanels January 1 st, 2007 H. Brand@gsi. de 12
First Test January 1 st, 2007 H. Brand@gsi. de 13
Pros and Cons • Extreme approches – complete Event-driven -> Maximum flexibility! – Complex CSDu. T sequence steps via call by wire • Event processing overhead -> Maximum Perfomance • Configurable Sequences -> Flexibility • Less Flexibility • Parallel and Concurrent Sequence execution -> Flexibility & Performance • Hierachical & Modular -> Reusability • Overhead due to Reservation mechanism January 1 st, 2007 • Inconsistant link between stored sequence configuration and results • Hard to debug H. Brand@gsi. de 14
Status of CSSequencer • Diploma thesis in August 2006 finished – CSSequencer framework based on CS 2. 10 d 4 – Additional Proxy to enable reservation mechnism – Becomes obsolete with CS 3. 0 because it is built-in – Proof of principle with • Simulation classes and • Basic implementation of the Belab Device Layer class library • But, no real application! • SYSTEC ported the CSSequencer classes to CS 3. 0 as is – No redesign with respect to new CS 3. 0 features – especially no replacement of Reservation Proxy – No real application yet • M. Kugler reported that all existing Base. Process classes can be used for concrete event-driven Sequences. • Belab development is on hold, waiting for decision January 1 st, 2007 H. Brand@gsi. de 15
- Slides: 15