1 / 21

An Object Oriented Framework for the Implementation of SDL Designs

An Object Oriented Framework for the Implementation of SDL Designs. U.Mascia, PXL M.Mosciatti, NCS G.Razzano, InfoCom Dpt., “La Sapienza” R.Cusani, InfoCom Dpt., “La Sapienza” G.Scarano, InfoCom Dpt., “La Sapienza”. Overview. A real experience in TLC systems

Download Presentation

An Object Oriented Framework for the Implementation of SDL Designs

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. An Object Oriented Framework for the Implementation of SDL Designs U.Mascia, PXL M.Mosciatti, NCS G.Razzano, InfoCom Dpt., “La Sapienza” R.Cusani, InfoCom Dpt., “La Sapienza” G.Scarano, InfoCom Dpt., “La Sapienza”

  2. Overview • A real experience in TLC systems • SDL: Specification and Description Language • SDL Framework: goals and architecture • Some consequences • Conclusion ISSPIT 2004 - 1/19

  3. Embedded systems • Telecommunications • Radio device in UHF band (225-400 MHz) • Channel band: 25 KHz • MSK numeric modulation • Frequency hopping • defense against jammers • modulation carrier changed according to a pseudorandom sequence • 2000 hops/s ISSPIT 2004 - 2/19

  4. Architecture of the embedded system Motorola PPC860 OS: VxWorks Texas Instruments TMS320C5402 (100 Mips) Xilinx XC2V1000 Virtex II (1 MGate) ISSPIT 2004 - 3/19

  5. SDL: language elements ISSPIT 2004 - 5/19

  6. SDL: signals ISSPIT 2004 - 6/19

  7. states incoming signals actions outgoing signals SDL: Finite State Machines ISSPIT 2004 - 7/19

  8. SDL: CASE tools • Several commercial (= expensive) tools available • static structure • dynamic structure • verification of correctness • test and simulation • automatic code generation • C language • code not suited to direct use ISSPIT 2004 - 8/19

  9. Goals of the work • Maintenance • Portability • Optimization • Reuse ISSPIT 2004 - 9/19

  10. SDL-F: class diagram SDL-F artifacts SDL elements ISSPIT 2004 - 10/19

  11. Process as Active Object • SDL_Process responsibilities • context of execution for FSM • queue for incoming signals • sending outgoing signals • signal dispatching (and saving) ISSPIT 2004 - 11/19

  12. «interface» SDL_GateTermination SDL_Object #m_ComponentList SDL_Component +Run() +Halt() SDL_Block SDL_Process +Run() +Run() +Halt() +Halt() +ExtendedInfo() +E xtendedInfo() +ShortInfo() +ShortInfo() +Check() +Check() +Attach() +Self() +Offspring() +Sender() +Parent() +NextSignal() +GetGate() +Save() Blocks and Processes: Composite Pattern void SDL_Process::Run() { activate(); } void SDL_Block::Run() { for (ComponentSet::size_type i=0 ; i<m_ComponentList.size() ; ++i) { m_ComponentList[i]->Run(); } } ISSPIT 2004 - 12/19

  13. visitor hierarchy visited hierarchy STATE::handle SIGNAL::dispatch STATE::handle_i State Machine: Visitor Pattern ISSPIT 2004 - 13/19

  14. Sending signals: Strategy Pattern ISSPIT 2004 - 14/19

  15. Memory Management • Context • long-lived objects: blocks, processes, FSMs ... • short-lived objects: signals • Problem • standard memory allocator not suited to real-time • Solution:MemoryAllocator • long-lived strategy: pool continuously allocated; no free • short-lived strategy: pools with constant access time ISSPIT 2004 - 15/19

  16. Portability through ACE • A key element: ACE • Adaptive Concurrent Environment • freely available, open source • OO framework with a lot of good implementations of useful patterns • Some examples • SDL_Process derives from ACE_Task • SDL_MemoryManager contains ACE_StaticAllocator and ACE_CachedAllocator • SDL_TimeOutManager relies on ACE_Reactor ISSPIT 2004 - 16/19

  17. ACE ACE classes SDL - F SDL Framework “glue” SDL language classes USER SDL-F derived classes SDL-F layers ISSPIT 2004 - 17/19

  18. VxWorks Windows BSP Target Target Stubs A portability consequence: Simulator • Advantages • increased availability of development resources • increased capability of debugging/logging • “Separation of concerns” strategy • simulator: formal correctness • target: functional correctness ISSPIT 2004 - 18/19

  19. Conclusions • SDL-F reached the desired goals: • maintenance • portability • optimization • Reuse • readable code is possible going from SDL to C++ • open issue: automatic code-skeleton generator ISSPIT 2004 - 19/19

  20. Thank you, and... ? …any questions?

More Related