180 likes | 306 Views
Component Technologies. By: Ankur Agarwal. OPP Relevance. Spec Library. Requirements/ Specifications. Specification Phase. FSP Library UML Library MLD Library. Concurrency Modeling UML MLD Modeling Modeling. Design Phase (Modeling Phase). SystemC/C++ Library. Development
E N D
Component Technologies By: Ankur Agarwal
OPP Relevance Spec Library Requirements/ Specifications Specification Phase FSP Library UML Library MLD Library Concurrency Modeling UML MLD Modeling Modeling Design Phase (Modeling Phase) SystemC/C++ Library Development Phase Development Test Vectors Integration & Testing Phase Integration & Testing
Concurrency Modeling Cont. • Advantages of Concurrency Modeling • Better Performance • Lower Power Dissipation • Higher Reuse • Pitfalls of Concurrency • Intermittent & Catastrophic failures • Not a Traditional Coding Style • Poor Specification – Large Integration Time Example of Concurrency Failures • Denver Airport Baggage System • Airplane Software Glitch
Start With High Level System Specification Provide Annotation to Avoid Problem Recurrence in Future Specs Identify Concurrent Processes from System Specification Model Process Interaction with FSP Analyze the System for any Possible Deadlock/Livelock Add Concurrency Constructs as Needed Proceed to Design Phase Concurrency Modeling
Concurrency Modeling Cont. • Concurrency Modeling will ensure that there are no deadloack/livelocks in a system • Easier & quicker to integrate components into a subsystem, and a subsystem into a system • Concurrency modeling at an early stage will speed up system modeling and analysis • Enhanced Component Reuse via subsystem Design Patterns
Component Modeling • Component Modeling with MLDesigner • Abstract Component Modeling • Maturity • First release was in Year 2000 • Includes numerous libraries, 2000+ design blocks and 250+ executable demo systems
MLD Discussion Cont. • Uses ptlang and generates organized C++ code • Supports UML state charts and UML FSM’s • Supports Tcl/tk and Ptcl. • Unifies BONeS, SPW, MATLAB, and COSSAP • MLD3 expected to support synthesizable SystemC code generation if all primitives are described in DE and FSM’s
MLD Design Methodology • Define problem space • Questions to be answered • Identify key contributions to performance (components, channels, events) • Develop an initial design model • Define topology (components, HW/SW partitioning) and key events between components • Define the levels of abstraction required for each component • Define data structures to support modeling and analysis • Build abstract models of architecture and functionality
MLD Design Methodology Cont. • Execute and validate model • Compute and analyze performance measures • Compare to previous measurements of actual systems • Add detail to model • Add functional details to increase model fidelity • Test • Iterate the detail cycle (4) as needed • Analyze and perform tradeoff studies • Designate an executable specification
Specifications RF Specifications RF Interfaces Interfaces Huang, Ansley Aalo, Petty Huang, Ansley Aalo, Petty Multimedia Multimedia Real - Time Applications Real - Time Applications Kalva, Cruz Kalva, Cruz Cardei Cardei Freytag, Tezak, Shankar Freytag, Tezak, Shankar Component Verification Component Verification Shankar, Cardei, Ansley Semantic Web: Operating System Semantic Web: Shankar, Cardei, Ansley Operating System Barrett and Islam Barrett and Islam Architecture Architecture Shankar and Joshi Shankar and Joshi Communication Protocol Communication Protocol Agarwal Agarwal Communication Backbone VLSI and Technology Communication Backbone VLSI and Technology Agarwal, Iskander, Shankar Shankar and Barrett Agarwal, Iskander, Shankar Shankar and Barrett Components are Object Oriented and Interface to layers above and below