SlideShare a Scribd company logo
Removing the Barriers to SCA 4.0 Adoption
Software Defined Radio Webcast
Andrew Foster, Product Manager, PrismTech
May 7 2013
2Agenda
Introduction to SCA 4.0
SCA 4.0 CORBA PSM
SCA 4.0 Middleware
Migrating from SCA 2.2.2 to SCA 4.0
Conclusions
Introduction to SCA 4.0
4
The Software Communications
Architecture (SCA) has remained
largely unchanged since 2001
when v2.2 was released and the
Joint Tactical Radio System
(JTRS) program started.
SCA 4.0, approved February
2012, represents a radical shift in
the approach to specifying the
architecture, design and
implementation of a software
defined radio (SDR).
Background
4
5SCA 4.0 Approach
The SCA 4.0 specification has been developed following
the Model Driven Architecture (MDA) approach
The base specification has been developed as a
Platform Independent Model (PIM)
Appendices define transfer mechanisms to provide co-
located or distributed client/server operations
Currently the only transfer mechanism indentified in
Appendix E is based on the Common Object Request
Broker Architecture (CORBA)
Appendix E-1 defines the CORBA PSM for use with SCA
4.0
SCA v4.0
JPEO Objectives
Reduce development resources
Budget
Schedule
Reduce test and certification time
Reduce number of requirements
Increase use of automated testing
Improve performance
Reduce boot up latency
Reduce memory footprint
Technology refresh
Incorporate lessons learned
Backwards compatibility of applications is an
overarching tenet
6
SCA v4.0 Key Changes
Lightweight Components
Component Registration
Deployment Optimizations
Profiles and SCA Conformance
Platform Independent Model
7
8
Operating System
ORB and
CORBA
Services
Core Framework Control,
Services, Devices, and
File access
AEP
Application Resources
CORBA APIs
CF Interfaces
Operating System
ORB and
CORBA
Services
Core Framework Control,
Services, Devices, and
File access
AEP
Application Resources
CORBA APIs
CF Interfaces
SCA 2.2.2 OE and AEP
SCA 2.2.2 specifies the use of CORBA as the protocol for data transfer and inter-
process application function calls on the GPP.
It does not preclude the use of CORBA on a DSP or FPGA but assumes that these
are not CORBA capable CEs and recommends MHAL or MOCB instead.
SCA 2.2.2 - CORBA on GPP, MHAL to Communicate with DSP and FPGA
Host Development Tools
GPP DSP FPGA
SCA 2.2.2.
CF
CORBA ORB
MHAL transport
CORBA on GPP, MHAL to Communicate with DSP and FPGA
Component
A
SCA Resource
CORBA
MHAL
Waveform
Logic
C
Waveform
Logic
D
MHAL
Device
MHAL
Component
B
SCA Resource
CORBA
CORBA
transport
e.g., IIOP
(GIOP over
TCP/IP)
SCA 2.2.2 Communication Model
9
10SCA 4.0 OE and AEP
SCA products can be realized using a variety of transports and technologies (e.g.
CORBA, C++, SOAP, Data Distribution Service (DDS), MHAL Communication
Service, etc.). (excerpt from Appendix E)
11Model Driven Architecture Views
SCA 2.2
SCA 2.2.1
SCA 2.2.2
CIM – Computationally Independent Model
PIM – Platform Independent Model
PSM – Platform Specific Model
PSI – Platform Specific Implementation
SCA 4.0 AppendicesSCA 4.0
Functional
View
Architecture
View
Design
Model
Implementation
and Deployment
12PSM Appendices
E Transports and Technologies
E.1 – Common Object Request Broker
Architecture (CORBA)
Full – Provides features for general platforms and
applications
Lightweight – Provides minimal features for highly
constrained resources
Ultra-Lightweight – Essential capabilities supported
by FPGAs
E.2 – C++
E.3 – OMG Interface Definition Language
SCA 4.0 CORBA PSM
14Appendix E-1 CORBA PSM
Three CORBA profiles based on CORBA/e with
additional features from RT CORBA
The SCA CORBA profiles are characterized as follows:
1. SCA Full CORBA (Full) Profile – is the Full CORBA profile and is
targeted for applications hosted on GPPs
2. SCA Lightweight CORBA (LW) Profile – is more constrained than the
SCA Full CORBA Profile and is targeted towards environments with
limited computing support (e.g. DSPs)
3. SCA Ultra-Lightweight CORBA (ULW) Profile – is more constrained
than the SCA Lightweight CORBA Profile and is specifically intended
for processing elements with even more limited computing support
(e.g., DSPs & FPGAs)
15Appendix E-1 CORBA PSM
Each profile characterizes the IDL features allowed for definition of
interfaces between application components
The LW Profile narrows the IDL feature set in order to limit the
processing overhead caused by a number of types in the Full
Profile
The ULW Profile narrows the constructs even further to
accommodate typical limitations of DSP and FPGA environments
The shared IDL foundation of the profiles facilitates portability not
only between platforms, but also across processing elements and
transfer mechanisms
Component portability may be enhanced if the IDL from more
constrained profiles are used when defining application interfaces
targeted for components deployed within less constrained
processing elements
16Full Profile (Highlights)
Based on CORBA/e Compact Profile
IDL data types - boolean, octet, short, unsigned short, long,
unsigned long, enum, float, double, long double, long long,
unsigned long long, char, string, unions, arrays, struct, sequence,
object
Minimum CORBA POA
Restricted Any data type
SYNC_SCOPE_POLICY
RT CORBA – including PriorityModelPolicy,
PriorityBandedConnectionPolicy, ServerProtocolPolicy and RT
Thread Pools
COS Event – PushSupplier and PushConsumer
ORB_init() parameters - allows Root POA to be created with non
default parameters
17Lightweight Profile (Highlights)
Based on CORBA/e Micro Profile
IDL data types - boolean, octet, short, unsigned short,
long, unsigned long, enum, float, double, long double,
long long, unsigned long long, char, string, unions,
arrays, struct, sequence, object
Any data type not allowed
Root only POA
ORB_init() parameters - allows Root POA to be created
with non default parameters
18Ultra-Lightweight Profile (Highlights)
ULW profile only standardises
the subset of IDL a CORBA
capable FPGA can use
String, Any or Object data
types not allowed
ORB internal details are
unspecified and could be
implemented in a number of
ways, for example:
1. Software ORB – using a
processor core
embedded on the FPGA
2. Hardware ORB – key
functions of an ORB
implemented as an IP
core
IDL basic data types Short
Long
unsigned short
unsigned long
Boolean
Octet
IDL complex data types struct (restricted to supported basic data types)
sequence (restricted to supported basic data types)
Enum
IDL keywords Module
Interface
In
Out
Inout
Void
Typedef
oneway
Return value
Return values of a basic data type to be supported
SCA 4.0 – CORBA on GPP, DSP and FPGA
Host Development Tools
GPP DSP FPGA
SCA
2.2.2CFCORBA ORB CORBA ORB CORBA ORB
CORBA Transport
CORBA on GPP, DSP and FPGA
SCA Resource
Component
A
SCA Resource
CORBA
CORBA
CORBA
CORBA
Component
C
Component
D
SCA Resource
Component
B
SCA Resource
CORBA
SCA 4.0 Communication Model
CORBA
transport
e.g., IIOP
(GIOP over
TCP/IP)
19
SCA 4.0 Middleware
Spectra SDR Product Suite 21
Spectra
CX
Spectra
CF
Spectra
CDB
Spectra
DTP
Spectra CX is a model-
driven development tool
that enables SDR and
waveform software to be
rapidly developed,
integrated and tested.
Spectra CX allows radio
platform details to be
packaged and delivered to
distributed independent
development groups using
the tools to hide platform
complexities and IP as
needed.
Spectra Core
Framework (CF) is a
high-performance,
ultra low footprint,
radio management
framework providing
advanced capabilities
and extensibilities for
multiple software
radio architectures.
Spectra Common Data Bus
(CDB) is a high-
performance, integrated data
bus providing a unified data
exchange protocol and
format. Spectra CDB
supports a wide range of
General Purpose Processor
(GPP), Digital Signal
Processor (DSP) and Field
Programmable Gate Array
(FPGA) processing
elements.
Spectra DTP is an SDR
development and test
platform that supports
waveform design and
implementation for military,
homeland security and
commercial SDRs. Spectra
DTP is an optimized small
form-factor platform with low
power consumption that
enables the development,
testing and deployment of
waveforms.
PrismTech Proprietary Information
22Spectra Common Data Bus (CDB) – “SCA Everywhere”
SCA Everywhere
Spectra ORB
C & C++
Spectra ORB
C
Spectra ICO
VHDL
Extensible Transport Framework (TCP/IP, Rapid IO, Gigabyte Ethernet etc.)
Waveform
Component
Waveform
Component
Waveform
Component
GPP DSP FPGA
Spectra SCA
CF
Standards based, high performance, low footprint, fully interoperable COTS SCA middleware
solution that can be deployed across multiple processor types, including GPP, DSP and FPGA
environments
23Spectra Common Data Bus (CDB)
Spectra Common Data Bus (CDB) is a fully integrated and optimized
Software Defined Radio (SDR) middleware stack
Spectra Common Data Bus (CDB), runs across a wide range of
General Purpose Processor (GPP), Digital Signal Processor (DSP) and
Field Programmable Gate Array (FPGA) processing elements
Spectra CDB includes the following:
Spectra ORB
C++ ORB (for GPP)
C ORB (for GPP and DSP)
Spectra Lightweight Services
Spectra Lightweight Naming Service
Spectra Lightweight Event Service
Spectra Lightweight Log Service
Spectra IP Core ORB (ICO) for FPGA and ASIC
Spectra ORB SCA 4 Edition
Common Micro Kernel Architecture Supporting
Multiple Language Implementations (C & C++)
IDL
Compiler
Micro ORB Kernel
Server
IDL
Client
IDL ORB
Interface
GIOP
Extensible Transport Framework
IIOP DIOPSSLIOP
RT CORBA
Portable
Interceptors
CORBA
Messaging
Pluggable POA
RT-POAM-POA
Threading Models
Thread Pool
Thread Per Connection
3rd Party
Scheduler
SHMIOP
OpenFusion e*ORB SDR Lightweight COS – Naming, Event & Log
Thread per Request
UIOP
Key Features:
Fully compliant with the Software Communications
Architecture (SCA) v4.0 specification, including
pluggable support for :
SCA 4.0 Full Profile (C++ ORB)
SCA 4.0 Lightweight Profile (C & C++ ORBs)
Minimum CORBA (C & C++ ORBS)
CORBA/e Compact Profile (C & C++ ORBs)
CORBA/e Micro Profile (C ORB)
IDL compiler (C and C++)
GIOP 1.1
Extensible Transport Framework (ETF) – providing
multi-transport plug-in support, for transports such
as TCP/IP, UDP and Compact PCI
Multi-thread safe
Extensible server-side threading framework.
Pluggable POA framework
Pluggable ANY data type support
Request timeouts
Pluggable Real-Time CORBA support
Bundled Lightweight Naming. Event & Log Services
(both C & C++)
Availability:
Broad platform support, including:
OS: Windows, Solaris, Linux
RTOS: VxWorks, Integrity, LynxOS, QNX, ThreadX, TI BIOS, OSEck
CPU: x86, SPARC, ARM, PowerPC, TI C64x, TI C55x
24
25Spectra ORB SCA 4 Edition – Key Benefits
An ORB specifically designed for SDR and other resource
constrained DRE (Distributed Real-Time Embedded) systems
Smallest footprint and memory overhead
More efficient use of resources
Highest performance and throughput
The best ORB for SCA-compliant SDR development
Open and configurable architecture
Highly portable, scalable, flexible & reliable
An interoperable GPP and DSP solution in the same ORB family
Complementary SDR products & wireless software solutions
Key middleware component of the PrismTech’s SDR
products
Lowers Total Cost Of Ownership – no runtime fees for internal
use
Spectra IP Core ORB (ICO)
ICO CORBA Core Available For Any FPGA or ASIC
ICO is a hardware implementation of a
CORBA ORB
Implements a subset of the most commonly
used CORBA functions
Eliminates the need to develop custom proxies
(HALs) on GPP processor or DSP in order to
establish communication with the FPGA
ICO has been written in portable VHDL & can
be synthesized onto any FPGA or ASIC
platform
The ICO design environment
consists of:
The ICO engine (IP interface core)
IDL to VHDL code generator
A hardware developer treats ICO as
any other IP core interface
Software developers treat ICO
components as they would any other
CORBA object
26
ICO Feature Summary
Provides a superset of functionality that is fully compliant with the Software Communications
Architecture (SCA) v4.0 specification:
Ultra-Lightweight CORBA Profile
Supports GIOP version 1.0 protocol
Support for CORBA clients and servers
Servants implemented on FPGA in VHDL
Clients can be internal to the FPGA written in VHDL or external to FPGA(e.g., on a GPP or DSP) implemented by
a conventional software application
No arbitrary restriction on the number of clients and servers that can be supported on the FPGA IDL compiler
support
One way operations and two way operations
Supports IDL to VHDL language mapping and will auto generate VHDL equivalent of CORBA stubs and
skeletons allowing ICO to be easily connected to servants implementing waveform logic
Based on CORBA 3 grammar, but only supporting a subset of data types and constructs:
Simple data types - Char, Octet, Boolean, Short, Unsigned Short, Long, Unsigned Long, Long Long, Unsigned
Long Long, String
Any type (of simple data types)
Object Type
Enumerated Types
Complex data types
Struct
Sequence
Array
CORBA exceptions support
User exceptions
System exceptions
Pluggable and open transport interface allows user-defined custom transports to be plugged into ICO
Written in pure VHDL and portable across FPGA devices
27
Spectra ICO – Key Benefits
High performance standards based messaging for FPGAs
Greatly simplifies FPGA application integration
Helps support FPGA application portability
High throughput low latency messaging solution
Helps reduce time to market for new FPGA applications
Low footprint—efficient use of available FPGA resources
Available as part of a complete range of complementary SDR
products
Can support a unified messaging protocol across GPP, DSP and
FPGA processing elements
Can support a broad range of FPGA devices from the leading
vendors
No export restrictions - not subject to International Traffic in Arms
Regulations (ITAR) or Joint Tactical Radio System (JTRS) export
restrictions
28
29Spectra SCA 4.0 Roadmap
Spectra SCA 4 Edition – GA availability May
2013
Spectra ICO v2.3 – available now
ICO already supports SCA 4.0 Ultra-Lightweight Profile
ULW profile defines a subset of the functionality and data types that ICO can
actually support
Migrating from SCA 2.2.2 to 4.0
31SCA 4.0 Resource Interface
32Resource Interfaces Supported by Each CORBA Profile
Resource Interfaces Optional
Category
Attributes & Operations Full
Profile
Lightweight
Profile
Ultra-
Lightweight
Profile
LifeCycle Mandatory initialize():void
releaseObject(): void   
ComponentIdentifier INTERROBABLE identifier: string
  ×**
PortAccessor CONNECTABLE connectUsesPorts(Connections): void
disconnectPorts(Connections): void
getProvidedPorts(Connections): void
  ×***
ControllableComponent CONTROLLABLE started: boolean
start(): void
stop(): void
  
PropertySet CONFIGURABLE configure(Properties): void
query(Properties): void  ×* ×
TestableObject TESTABLE runTest(unsigned long, Properties): void
 ×* ×
* Requires support for Any data type
** Requires support for String data type
** Requires support for Object data type
33SCA 2.2.2 Resource Interface
class Resource Interface
«CORBAInterface»
Resource
+ identifier: string
+ start() : void
+ stop() : void
«CORBAInterface»
PropertySet
+ query(configProperties :Properties) : void
+ configure(configProperties :Properties*) : void
«CORBAInterface»
PortSupplier
+ getPort(name :string) : Object
«CORBAInterface»
LifeCycle
+ initialize() : void
+ releaseObject() : void
«CORBAInterface»
TestableObject
+ runTest(testid :unsigned long, testValues :Properties*) : void
Waveform
Component
34
Leveraging The Benefits of SCA 4.0 Middleware in an
SCA 2.2.2 Environment
Can I use SCA 4.0 middleware to enable the redeployment of SCA
CORBA enabled components on a DSP or FPGA in an SCA 2.2.2
based system ?
Problem - SCA 2.2.2 Resource interface is fixed and the
Lightweight and Ultra-Lightweight Profiles do not support all of the
required IDL types
Solution
Spectra ORB SCA 4 Edition C ORB Full Profile can be used on a DSP and still
support full SCA 2.2.2 Resource interface
Spectra ICO with its “Meta Driven Design” can also support all of the IDL types
required by the SCA 2.2.2 Resource interface
Users can create SCA 2.2.2 compliant applications with Resource
components deployed on a DSP or FPGA
In an SCA 4.0 OE core business logic for DSP or FPGA component
can remain unchanged, but Resource interface IDL modified to
support light weight component interface hosted on Light or Ultra-
Lightweight Profile compliant middleware
35SCA 2.2.2 to SCA 4.0 Migration Issues
A significant issue that must be addressed is that SCA 4.0 does not
support backwards compatibility with SCA 2.2.2 application and
platform components as originally envisaged
An SCA 4.0 Core Framework will not be able to deploy an SCA
2.2.2 waveform
Parts of the Resource and Device interfaces such as the connection
APIs have changed between SCA 2.2.2 and 4.0
Manually migrating SCA 2.2.2 application or platform components to
SCA 4.0 could be a time consuming process
This is major area where PrismTech MDD approaches can bring
significant benefits by helping automate much of the migration
process
36Automating the SCA 2.2.2 to SCA 4.0 Migration Process
class Resource Interface
«CORBAInterface»
Resource
+ identifier: string
+ start() : void
+ stop() : void
«CORBAInterface»
PropertySet
+ query(configProperties :Properties) : void
+ configure(configProperties :Properties*) : void
«CORBAInterface»
PortSupplier
+ getPort(name :string) : Object
«CORBAInterface»
LifeCycle
+ initialize() : void
+ releaseObject() : void
«CORBAInterface»
TestableObject
+ runTest(testid :unsigned long, testValues :Properties*) : void
Wav eform
Component
SCA 4.0
SCA 2.2.2
MDD tools such as Spectra CX will be able to auto-generate an SCA 4.0 model from a SCA 2.2.2
model using a set of mapping rules
The MDD tools will generate the SCA 4.0 component container code (including XML, source
code, make files) based on the target PSM technologies
If the business code is also being maintained as part of the SCA 2.2.2 model as is possible with
tool such Spectra CX then it can also be automatically migrated into the new SCA 4.0 model
If the business code is being maintained independently (e.g. library includes) then these
references can be automatically migrated into the SCA 4.0 model
37Conclusions
SCA 4.0 introduces major changes to the standard
Interfaces now defined specified as a PIM that can be mapped to different
PSMs
Standard aligns with a Model Driven Development approach to developing
SDRs
New CORBA PSM extends SCA support for DSPs and FPGAs
Using Spectra ORB and ICO allows users to develop components for DSPs
and FPGAs and deploy in an SCA 2.2.2 OE
Migrating SCA 2.2.2 Resource components to SCA 4.0 Lightweight
Resource components is possible but requires IDL changes and CORBA
Profile Support
Spectra ORB and ICO’s support for multi profiles in single implementation
makes SCA 4.0 middleware adoption straight forward
Model Driven Development and advanced tooling with automated migration
support will be a key to the successful of adoption of SCA 4.0
Additional Information
Andrew Foster e-mail:
awf@prismtech.com
Web Site:
www.prismtech.com/spectra
Or contact your PrismTech account
manager
38
3939
Thank You

More Related Content

PPTX
Transport douments
PDF
Export procedure
PDF
Xen Hypervisor
DOCX
Export import procedures, documentation & logistics
PPTX
Export Credit Guarantee Corporation of India (ECGC) 
PPSX
Methods of financing
PDF
Assurance Technology Coporation : Capabilities
PPT
Spectra IP Core ORB - high-performance, low-latency solution for FPGA-GPP com...
Transport douments
Export procedure
Xen Hypervisor
Export import procedures, documentation & logistics
Export Credit Guarantee Corporation of India (ECGC) 
Methods of financing
Assurance Technology Coporation : Capabilities
Spectra IP Core ORB - high-performance, low-latency solution for FPGA-GPP com...

Similar to SCA_4_adoption_may2013 (20)

PPT
Spectra OE Webcast July 2010
PPT
SCA Next Part 1 - Software Defined Radio (SDR) Webcast Slides
PPTX
Corba model ppt
PDF
Software Defined Radio
PPTX
DOCX
85305524 i-t-case-study
PPT
Corba introduction and simple example
PDF
corbaintroductionandexample-140703005744-phpapp02.pdf
PPT
C O R B A Unit 4
PDF
Software defined radio
PPT
Interoperability
PDF
CORBA - Introduction and Details
PPTX
corba-151024114450-lva1-app6891.pptx
DOCX
SOFTWARE DEFINED RADIO
DOCX
82159587 case-study-on-corba
PPT
cr2016-L1.ppt Cognitive radio for wireless
PPT
PPTX
final presentation
PPTX
Fiware: Connecting to robots
PPT
Rpc Case Studies (Distributed computing)
Spectra OE Webcast July 2010
SCA Next Part 1 - Software Defined Radio (SDR) Webcast Slides
Corba model ppt
Software Defined Radio
85305524 i-t-case-study
Corba introduction and simple example
corbaintroductionandexample-140703005744-phpapp02.pdf
C O R B A Unit 4
Software defined radio
Interoperability
CORBA - Introduction and Details
corba-151024114450-lva1-app6891.pptx
SOFTWARE DEFINED RADIO
82159587 case-study-on-corba
cr2016-L1.ppt Cognitive radio for wireless
final presentation
Fiware: Connecting to robots
Rpc Case Studies (Distributed computing)
Ad

More from ADLINK Technology IoT (20)

PDF
Connected Mobile and Web Applications with PrismTech Vortex Data Sharing Plat...
PDF
Vortex Cloud Beyond Cloud Messaging
PDF
Introducing Vortex Lite
PDF
Vortex Tutorial Part 2
PDF
Harnessing DDS in Next Generation Healthcare Systems
PDF
PrismTech Vortex Tutorial Part 1
PDF
Building and Scaling Internet of Things Applications with Vortex Cloud
PDF
Desktop, Embedded and Mobile Apps with PrismTech Vortex Cafe
PDF
Real-Time Web Programming with PrismTech Vortex Web
PDF
Introduction to PrismTech's Vortex Intelligent Data Sharing Platform for the ...
PPTX
PrismTech Integrated Communications Systems Modeling
PPTX
PrismTech Reflective Language for Communication Systems
PDF
Model_Driven_Development_SDR
PDF
Using Model Driven Development to Easily Manage Variations in Software Define...
PDF
Sca 4 0 _may16_2012_final
PDF
Spectra dtp4700h march2012_final
PDF
Spectra CX 3.4 Launch Webcast
PDF
Spectra DTP4700 Linux Based Development for Software Defined Radio (SDR) Soft...
PPTX
Migrating Legacy Waveforms to the Software Communications Architecture (SCA)
PDF
Rapid Software Communications Architecture (SCA) Development for DSPs with Sp...
Connected Mobile and Web Applications with PrismTech Vortex Data Sharing Plat...
Vortex Cloud Beyond Cloud Messaging
Introducing Vortex Lite
Vortex Tutorial Part 2
Harnessing DDS in Next Generation Healthcare Systems
PrismTech Vortex Tutorial Part 1
Building and Scaling Internet of Things Applications with Vortex Cloud
Desktop, Embedded and Mobile Apps with PrismTech Vortex Cafe
Real-Time Web Programming with PrismTech Vortex Web
Introduction to PrismTech's Vortex Intelligent Data Sharing Platform for the ...
PrismTech Integrated Communications Systems Modeling
PrismTech Reflective Language for Communication Systems
Model_Driven_Development_SDR
Using Model Driven Development to Easily Manage Variations in Software Define...
Sca 4 0 _may16_2012_final
Spectra dtp4700h march2012_final
Spectra CX 3.4 Launch Webcast
Spectra DTP4700 Linux Based Development for Software Defined Radio (SDR) Soft...
Migrating Legacy Waveforms to the Software Communications Architecture (SCA)
Rapid Software Communications Architecture (SCA) Development for DSPs with Sp...
Ad

Recently uploaded (20)

PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Encapsulation theory and applications.pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
Big Data Technologies - Introduction.pptx
PDF
Electronic commerce courselecture one. Pdf
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
NewMind AI Monthly Chronicles - July 2025
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
Cloud computing and distributed systems.
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Encapsulation theory and applications.pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?
Review of recent advances in non-invasive hemoglobin estimation
Big Data Technologies - Introduction.pptx
Electronic commerce courselecture one. Pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Reach Out and Touch Someone: Haptics and Empathic Computing
Understanding_Digital_Forensics_Presentation.pptx
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Mobile App Security Testing_ A Comprehensive Guide.pdf
MYSQL Presentation for SQL database connectivity
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
NewMind AI Monthly Chronicles - July 2025
Advanced methodologies resolving dimensionality complications for autism neur...
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Cloud computing and distributed systems.
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Spectral efficient network and resource selection model in 5G networks
Per capita expenditure prediction using model stacking based on satellite ima...

SCA_4_adoption_may2013

  • 1. Removing the Barriers to SCA 4.0 Adoption Software Defined Radio Webcast Andrew Foster, Product Manager, PrismTech May 7 2013
  • 2. 2Agenda Introduction to SCA 4.0 SCA 4.0 CORBA PSM SCA 4.0 Middleware Migrating from SCA 2.2.2 to SCA 4.0 Conclusions
  • 4. 4 The Software Communications Architecture (SCA) has remained largely unchanged since 2001 when v2.2 was released and the Joint Tactical Radio System (JTRS) program started. SCA 4.0, approved February 2012, represents a radical shift in the approach to specifying the architecture, design and implementation of a software defined radio (SDR). Background 4
  • 5. 5SCA 4.0 Approach The SCA 4.0 specification has been developed following the Model Driven Architecture (MDA) approach The base specification has been developed as a Platform Independent Model (PIM) Appendices define transfer mechanisms to provide co- located or distributed client/server operations Currently the only transfer mechanism indentified in Appendix E is based on the Common Object Request Broker Architecture (CORBA) Appendix E-1 defines the CORBA PSM for use with SCA 4.0
  • 6. SCA v4.0 JPEO Objectives Reduce development resources Budget Schedule Reduce test and certification time Reduce number of requirements Increase use of automated testing Improve performance Reduce boot up latency Reduce memory footprint Technology refresh Incorporate lessons learned Backwards compatibility of applications is an overarching tenet 6
  • 7. SCA v4.0 Key Changes Lightweight Components Component Registration Deployment Optimizations Profiles and SCA Conformance Platform Independent Model 7
  • 8. 8 Operating System ORB and CORBA Services Core Framework Control, Services, Devices, and File access AEP Application Resources CORBA APIs CF Interfaces Operating System ORB and CORBA Services Core Framework Control, Services, Devices, and File access AEP Application Resources CORBA APIs CF Interfaces SCA 2.2.2 OE and AEP SCA 2.2.2 specifies the use of CORBA as the protocol for data transfer and inter- process application function calls on the GPP. It does not preclude the use of CORBA on a DSP or FPGA but assumes that these are not CORBA capable CEs and recommends MHAL or MOCB instead.
  • 9. SCA 2.2.2 - CORBA on GPP, MHAL to Communicate with DSP and FPGA Host Development Tools GPP DSP FPGA SCA 2.2.2. CF CORBA ORB MHAL transport CORBA on GPP, MHAL to Communicate with DSP and FPGA Component A SCA Resource CORBA MHAL Waveform Logic C Waveform Logic D MHAL Device MHAL Component B SCA Resource CORBA CORBA transport e.g., IIOP (GIOP over TCP/IP) SCA 2.2.2 Communication Model 9
  • 10. 10SCA 4.0 OE and AEP SCA products can be realized using a variety of transports and technologies (e.g. CORBA, C++, SOAP, Data Distribution Service (DDS), MHAL Communication Service, etc.). (excerpt from Appendix E)
  • 11. 11Model Driven Architecture Views SCA 2.2 SCA 2.2.1 SCA 2.2.2 CIM – Computationally Independent Model PIM – Platform Independent Model PSM – Platform Specific Model PSI – Platform Specific Implementation SCA 4.0 AppendicesSCA 4.0 Functional View Architecture View Design Model Implementation and Deployment
  • 12. 12PSM Appendices E Transports and Technologies E.1 – Common Object Request Broker Architecture (CORBA) Full – Provides features for general platforms and applications Lightweight – Provides minimal features for highly constrained resources Ultra-Lightweight – Essential capabilities supported by FPGAs E.2 – C++ E.3 – OMG Interface Definition Language
  • 14. 14Appendix E-1 CORBA PSM Three CORBA profiles based on CORBA/e with additional features from RT CORBA The SCA CORBA profiles are characterized as follows: 1. SCA Full CORBA (Full) Profile – is the Full CORBA profile and is targeted for applications hosted on GPPs 2. SCA Lightweight CORBA (LW) Profile – is more constrained than the SCA Full CORBA Profile and is targeted towards environments with limited computing support (e.g. DSPs) 3. SCA Ultra-Lightweight CORBA (ULW) Profile – is more constrained than the SCA Lightweight CORBA Profile and is specifically intended for processing elements with even more limited computing support (e.g., DSPs & FPGAs)
  • 15. 15Appendix E-1 CORBA PSM Each profile characterizes the IDL features allowed for definition of interfaces between application components The LW Profile narrows the IDL feature set in order to limit the processing overhead caused by a number of types in the Full Profile The ULW Profile narrows the constructs even further to accommodate typical limitations of DSP and FPGA environments The shared IDL foundation of the profiles facilitates portability not only between platforms, but also across processing elements and transfer mechanisms Component portability may be enhanced if the IDL from more constrained profiles are used when defining application interfaces targeted for components deployed within less constrained processing elements
  • 16. 16Full Profile (Highlights) Based on CORBA/e Compact Profile IDL data types - boolean, octet, short, unsigned short, long, unsigned long, enum, float, double, long double, long long, unsigned long long, char, string, unions, arrays, struct, sequence, object Minimum CORBA POA Restricted Any data type SYNC_SCOPE_POLICY RT CORBA – including PriorityModelPolicy, PriorityBandedConnectionPolicy, ServerProtocolPolicy and RT Thread Pools COS Event – PushSupplier and PushConsumer ORB_init() parameters - allows Root POA to be created with non default parameters
  • 17. 17Lightweight Profile (Highlights) Based on CORBA/e Micro Profile IDL data types - boolean, octet, short, unsigned short, long, unsigned long, enum, float, double, long double, long long, unsigned long long, char, string, unions, arrays, struct, sequence, object Any data type not allowed Root only POA ORB_init() parameters - allows Root POA to be created with non default parameters
  • 18. 18Ultra-Lightweight Profile (Highlights) ULW profile only standardises the subset of IDL a CORBA capable FPGA can use String, Any or Object data types not allowed ORB internal details are unspecified and could be implemented in a number of ways, for example: 1. Software ORB – using a processor core embedded on the FPGA 2. Hardware ORB – key functions of an ORB implemented as an IP core IDL basic data types Short Long unsigned short unsigned long Boolean Octet IDL complex data types struct (restricted to supported basic data types) sequence (restricted to supported basic data types) Enum IDL keywords Module Interface In Out Inout Void Typedef oneway Return value Return values of a basic data type to be supported
  • 19. SCA 4.0 – CORBA on GPP, DSP and FPGA Host Development Tools GPP DSP FPGA SCA 2.2.2CFCORBA ORB CORBA ORB CORBA ORB CORBA Transport CORBA on GPP, DSP and FPGA SCA Resource Component A SCA Resource CORBA CORBA CORBA CORBA Component C Component D SCA Resource Component B SCA Resource CORBA SCA 4.0 Communication Model CORBA transport e.g., IIOP (GIOP over TCP/IP) 19
  • 21. Spectra SDR Product Suite 21 Spectra CX Spectra CF Spectra CDB Spectra DTP Spectra CX is a model- driven development tool that enables SDR and waveform software to be rapidly developed, integrated and tested. Spectra CX allows radio platform details to be packaged and delivered to distributed independent development groups using the tools to hide platform complexities and IP as needed. Spectra Core Framework (CF) is a high-performance, ultra low footprint, radio management framework providing advanced capabilities and extensibilities for multiple software radio architectures. Spectra Common Data Bus (CDB) is a high- performance, integrated data bus providing a unified data exchange protocol and format. Spectra CDB supports a wide range of General Purpose Processor (GPP), Digital Signal Processor (DSP) and Field Programmable Gate Array (FPGA) processing elements. Spectra DTP is an SDR development and test platform that supports waveform design and implementation for military, homeland security and commercial SDRs. Spectra DTP is an optimized small form-factor platform with low power consumption that enables the development, testing and deployment of waveforms. PrismTech Proprietary Information
  • 22. 22Spectra Common Data Bus (CDB) – “SCA Everywhere” SCA Everywhere Spectra ORB C & C++ Spectra ORB C Spectra ICO VHDL Extensible Transport Framework (TCP/IP, Rapid IO, Gigabyte Ethernet etc.) Waveform Component Waveform Component Waveform Component GPP DSP FPGA Spectra SCA CF Standards based, high performance, low footprint, fully interoperable COTS SCA middleware solution that can be deployed across multiple processor types, including GPP, DSP and FPGA environments
  • 23. 23Spectra Common Data Bus (CDB) Spectra Common Data Bus (CDB) is a fully integrated and optimized Software Defined Radio (SDR) middleware stack Spectra Common Data Bus (CDB), runs across a wide range of General Purpose Processor (GPP), Digital Signal Processor (DSP) and Field Programmable Gate Array (FPGA) processing elements Spectra CDB includes the following: Spectra ORB C++ ORB (for GPP) C ORB (for GPP and DSP) Spectra Lightweight Services Spectra Lightweight Naming Service Spectra Lightweight Event Service Spectra Lightweight Log Service Spectra IP Core ORB (ICO) for FPGA and ASIC
  • 24. Spectra ORB SCA 4 Edition Common Micro Kernel Architecture Supporting Multiple Language Implementations (C & C++) IDL Compiler Micro ORB Kernel Server IDL Client IDL ORB Interface GIOP Extensible Transport Framework IIOP DIOPSSLIOP RT CORBA Portable Interceptors CORBA Messaging Pluggable POA RT-POAM-POA Threading Models Thread Pool Thread Per Connection 3rd Party Scheduler SHMIOP OpenFusion e*ORB SDR Lightweight COS – Naming, Event & Log Thread per Request UIOP Key Features: Fully compliant with the Software Communications Architecture (SCA) v4.0 specification, including pluggable support for : SCA 4.0 Full Profile (C++ ORB) SCA 4.0 Lightweight Profile (C & C++ ORBs) Minimum CORBA (C & C++ ORBS) CORBA/e Compact Profile (C & C++ ORBs) CORBA/e Micro Profile (C ORB) IDL compiler (C and C++) GIOP 1.1 Extensible Transport Framework (ETF) – providing multi-transport plug-in support, for transports such as TCP/IP, UDP and Compact PCI Multi-thread safe Extensible server-side threading framework. Pluggable POA framework Pluggable ANY data type support Request timeouts Pluggable Real-Time CORBA support Bundled Lightweight Naming. Event & Log Services (both C & C++) Availability: Broad platform support, including: OS: Windows, Solaris, Linux RTOS: VxWorks, Integrity, LynxOS, QNX, ThreadX, TI BIOS, OSEck CPU: x86, SPARC, ARM, PowerPC, TI C64x, TI C55x 24
  • 25. 25Spectra ORB SCA 4 Edition – Key Benefits An ORB specifically designed for SDR and other resource constrained DRE (Distributed Real-Time Embedded) systems Smallest footprint and memory overhead More efficient use of resources Highest performance and throughput The best ORB for SCA-compliant SDR development Open and configurable architecture Highly portable, scalable, flexible & reliable An interoperable GPP and DSP solution in the same ORB family Complementary SDR products & wireless software solutions Key middleware component of the PrismTech’s SDR products Lowers Total Cost Of Ownership – no runtime fees for internal use
  • 26. Spectra IP Core ORB (ICO) ICO CORBA Core Available For Any FPGA or ASIC ICO is a hardware implementation of a CORBA ORB Implements a subset of the most commonly used CORBA functions Eliminates the need to develop custom proxies (HALs) on GPP processor or DSP in order to establish communication with the FPGA ICO has been written in portable VHDL & can be synthesized onto any FPGA or ASIC platform The ICO design environment consists of: The ICO engine (IP interface core) IDL to VHDL code generator A hardware developer treats ICO as any other IP core interface Software developers treat ICO components as they would any other CORBA object 26
  • 27. ICO Feature Summary Provides a superset of functionality that is fully compliant with the Software Communications Architecture (SCA) v4.0 specification: Ultra-Lightweight CORBA Profile Supports GIOP version 1.0 protocol Support for CORBA clients and servers Servants implemented on FPGA in VHDL Clients can be internal to the FPGA written in VHDL or external to FPGA(e.g., on a GPP or DSP) implemented by a conventional software application No arbitrary restriction on the number of clients and servers that can be supported on the FPGA IDL compiler support One way operations and two way operations Supports IDL to VHDL language mapping and will auto generate VHDL equivalent of CORBA stubs and skeletons allowing ICO to be easily connected to servants implementing waveform logic Based on CORBA 3 grammar, but only supporting a subset of data types and constructs: Simple data types - Char, Octet, Boolean, Short, Unsigned Short, Long, Unsigned Long, Long Long, Unsigned Long Long, String Any type (of simple data types) Object Type Enumerated Types Complex data types Struct Sequence Array CORBA exceptions support User exceptions System exceptions Pluggable and open transport interface allows user-defined custom transports to be plugged into ICO Written in pure VHDL and portable across FPGA devices 27
  • 28. Spectra ICO – Key Benefits High performance standards based messaging for FPGAs Greatly simplifies FPGA application integration Helps support FPGA application portability High throughput low latency messaging solution Helps reduce time to market for new FPGA applications Low footprint—efficient use of available FPGA resources Available as part of a complete range of complementary SDR products Can support a unified messaging protocol across GPP, DSP and FPGA processing elements Can support a broad range of FPGA devices from the leading vendors No export restrictions - not subject to International Traffic in Arms Regulations (ITAR) or Joint Tactical Radio System (JTRS) export restrictions 28
  • 29. 29Spectra SCA 4.0 Roadmap Spectra SCA 4 Edition – GA availability May 2013 Spectra ICO v2.3 – available now ICO already supports SCA 4.0 Ultra-Lightweight Profile ULW profile defines a subset of the functionality and data types that ICO can actually support
  • 30. Migrating from SCA 2.2.2 to 4.0
  • 31. 31SCA 4.0 Resource Interface
  • 32. 32Resource Interfaces Supported by Each CORBA Profile Resource Interfaces Optional Category Attributes & Operations Full Profile Lightweight Profile Ultra- Lightweight Profile LifeCycle Mandatory initialize():void releaseObject(): void    ComponentIdentifier INTERROBABLE identifier: string   ×** PortAccessor CONNECTABLE connectUsesPorts(Connections): void disconnectPorts(Connections): void getProvidedPorts(Connections): void   ×*** ControllableComponent CONTROLLABLE started: boolean start(): void stop(): void    PropertySet CONFIGURABLE configure(Properties): void query(Properties): void  ×* × TestableObject TESTABLE runTest(unsigned long, Properties): void  ×* × * Requires support for Any data type ** Requires support for String data type ** Requires support for Object data type
  • 33. 33SCA 2.2.2 Resource Interface class Resource Interface «CORBAInterface» Resource + identifier: string + start() : void + stop() : void «CORBAInterface» PropertySet + query(configProperties :Properties) : void + configure(configProperties :Properties*) : void «CORBAInterface» PortSupplier + getPort(name :string) : Object «CORBAInterface» LifeCycle + initialize() : void + releaseObject() : void «CORBAInterface» TestableObject + runTest(testid :unsigned long, testValues :Properties*) : void Waveform Component
  • 34. 34 Leveraging The Benefits of SCA 4.0 Middleware in an SCA 2.2.2 Environment Can I use SCA 4.0 middleware to enable the redeployment of SCA CORBA enabled components on a DSP or FPGA in an SCA 2.2.2 based system ? Problem - SCA 2.2.2 Resource interface is fixed and the Lightweight and Ultra-Lightweight Profiles do not support all of the required IDL types Solution Spectra ORB SCA 4 Edition C ORB Full Profile can be used on a DSP and still support full SCA 2.2.2 Resource interface Spectra ICO with its “Meta Driven Design” can also support all of the IDL types required by the SCA 2.2.2 Resource interface Users can create SCA 2.2.2 compliant applications with Resource components deployed on a DSP or FPGA In an SCA 4.0 OE core business logic for DSP or FPGA component can remain unchanged, but Resource interface IDL modified to support light weight component interface hosted on Light or Ultra- Lightweight Profile compliant middleware
  • 35. 35SCA 2.2.2 to SCA 4.0 Migration Issues A significant issue that must be addressed is that SCA 4.0 does not support backwards compatibility with SCA 2.2.2 application and platform components as originally envisaged An SCA 4.0 Core Framework will not be able to deploy an SCA 2.2.2 waveform Parts of the Resource and Device interfaces such as the connection APIs have changed between SCA 2.2.2 and 4.0 Manually migrating SCA 2.2.2 application or platform components to SCA 4.0 could be a time consuming process This is major area where PrismTech MDD approaches can bring significant benefits by helping automate much of the migration process
  • 36. 36Automating the SCA 2.2.2 to SCA 4.0 Migration Process class Resource Interface «CORBAInterface» Resource + identifier: string + start() : void + stop() : void «CORBAInterface» PropertySet + query(configProperties :Properties) : void + configure(configProperties :Properties*) : void «CORBAInterface» PortSupplier + getPort(name :string) : Object «CORBAInterface» LifeCycle + initialize() : void + releaseObject() : void «CORBAInterface» TestableObject + runTest(testid :unsigned long, testValues :Properties*) : void Wav eform Component SCA 4.0 SCA 2.2.2 MDD tools such as Spectra CX will be able to auto-generate an SCA 4.0 model from a SCA 2.2.2 model using a set of mapping rules The MDD tools will generate the SCA 4.0 component container code (including XML, source code, make files) based on the target PSM technologies If the business code is also being maintained as part of the SCA 2.2.2 model as is possible with tool such Spectra CX then it can also be automatically migrated into the new SCA 4.0 model If the business code is being maintained independently (e.g. library includes) then these references can be automatically migrated into the SCA 4.0 model
  • 37. 37Conclusions SCA 4.0 introduces major changes to the standard Interfaces now defined specified as a PIM that can be mapped to different PSMs Standard aligns with a Model Driven Development approach to developing SDRs New CORBA PSM extends SCA support for DSPs and FPGAs Using Spectra ORB and ICO allows users to develop components for DSPs and FPGAs and deploy in an SCA 2.2.2 OE Migrating SCA 2.2.2 Resource components to SCA 4.0 Lightweight Resource components is possible but requires IDL changes and CORBA Profile Support Spectra ORB and ICO’s support for multi profiles in single implementation makes SCA 4.0 middleware adoption straight forward Model Driven Development and advanced tooling with automated migration support will be a key to the successful of adoption of SCA 4.0
  • 38. Additional Information Andrew Foster e-mail: awf@prismtech.com Web Site: www.prismtech.com/spectra Or contact your PrismTech account manager 38