Software Communications Architecture
Encyclopedia
The Software Communications Architecture (SCA) is an open architecture framework that tells designers how elements of hardware and software are to operate in harmony within a software defined radio. SCA governs the structure and operation of the U.S. military's Joint Tactical Radio System
(JTRS), enabling programmable radios to load waveforms, run applications, and be networked into an integrated system. A Core Framework, providing a standard operating environment, must be implemented on every hardware set. Interoperability among radio sets is enhanced because the same waveform software can be easily ported to all radio sets.
The Object Management Group
(OMG), a not-for-profit consortium that produces and maintains computer industry specifications for interoperable enterprise applications, has established a Software Based Communications Domain Task Force (SBC-DTF). This group and the Wireless Innovation Forum
(formerly Software Defined Radio Forum) (WINNF), are working on an international commercial standard based on the SCA.
The SCA is extending its coverage to programmable hardware FPGA and digital signal processors.
's transmitter can be changed through software, not hardware, to alter frequency range, modulation type, and maximum radiated or conducted output power. The Software Communication Architecture (SCA) outlines several interfaces, which describe what operations the various components can be made to do.
attributes to C++ member variables and CORBA operations to C++ operations. In CORBA, both attributes and operations are operations. Attributes have implicit set and query operations. Again using the device interface in the diagram as an example, the label attribute has implicit operation signatures:
The software component provides the internal storage variable for the label string. It is not directly available to the outside world. The CORBA interface provides the implicit operations for changing the variable.
In contrast, the allocateCapacity operation of the device interface has a defined function signature instead of the implicit signatures of attributes. Since operations handle exceptions better, many programmers use only operations in an interface definition. However, the SCA uses both attributes and operations in some interfaces.
The resource interface is inherited by applications and hardware devices. Because of its importance, the example in this section will define a software component that inherits the resource interface. It could inherit other interfaces, but this would add complexity without providing further insight into the development of SCA components.
After objects are instantiated, they may be co-located, or distributed among the different processing elements within the radio. These objects do not have any knowledge of other application objects or the hardware resources within the radio.
A set of XML files is associated with each software and hardware object. These files provide information about the objects, including their port references. The application factory parses these files along with an application schematic file, the Software Assembly Descriptor (SAD). The SAD provides the necessary information to connect the hardware and software components together.
Most previous military radios had a specialized downconverter and modulator integrated circuits. With the non-standard JTRS configuration shown here, the waveform developers must provide FPGA code that can perform the function of operating directly with the A/Ds and D/As. The hardware does not provide direct digital synthesizers and upsamplers typical in previous radios. The waveform designer must provide that functionality in specialized FPGA code that constitutes part of the delivered waveform.
Joint Tactical Radio System
The Joint Tactical Radio System is planned to be the next-generation voice-and-data radio used by the U.S. military in field operations after 2010...
(JTRS), enabling programmable radios to load waveforms, run applications, and be networked into an integrated system. A Core Framework, providing a standard operating environment, must be implemented on every hardware set. Interoperability among radio sets is enhanced because the same waveform software can be easily ported to all radio sets.
The Object Management Group
Object Management Group
Object Management Group is a consortium, originally aimed at setting standards for distributed object-oriented systems, and is now focused on modeling and model-based standards.- Overview :...
(OMG), a not-for-profit consortium that produces and maintains computer industry specifications for interoperable enterprise applications, has established a Software Based Communications Domain Task Force (SBC-DTF). This group and the Wireless Innovation Forum
Wireless Innovation Forum
The Wireless Innovation Forum is a non-profit "mutual benefit corporation" dedicated to technology innovation in commercial, civil, and defense communications around the world...
(formerly Software Defined Radio Forum) (WINNF), are working on an international commercial standard based on the SCA.
The SCA is extending its coverage to programmable hardware FPGA and digital signal processors.
Overview
A software-defined radioSoftware-defined radio
A software-defined radio system, or SDR, is a radio communication system where components that have been typically implemented in hardware are instead implemented by means of software on a personal computer or embedded computing devices...
's transmitter can be changed through software, not hardware, to alter frequency range, modulation type, and maximum radiated or conducted output power. The Software Communication Architecture (SCA) outlines several interfaces, which describe what operations the various components can be made to do.
Member variables
Member variables are not exposed to the outside world. The device interface in the diagram provides an interface with attributes, shown in the first compartment, and operations, shown in the second. It is easy to make the erroneous association of CORBACommon Object Request Broker Architecture
The Common Object Request Broker Architecture is a standard defined by the Object Management Group that enables software components written in multiple computer languages and running on multiple computers to work together .- Overview:CORBA enables separate pieces of software written in different...
attributes to C++ member variables and CORBA operations to C++ operations. In CORBA, both attributes and operations are operations. Attributes have implicit set and query operations. Again using the device interface in the diagram as an example, the label attribute has implicit operation signatures:
- label(in listString:string):void
- label(void):string
The software component provides the internal storage variable for the label string. It is not directly available to the outside world. The CORBA interface provides the implicit operations for changing the variable.
In contrast, the allocateCapacity operation of the device interface has a defined function signature instead of the implicit signatures of attributes. Since operations handle exceptions better, many programmers use only operations in an interface definition. However, the SCA uses both attributes and operations in some interfaces.
Resource interface
The SCA's resource interface inherits interfaces from four other interfaces:- TestableObject
- PortSupplier
- LifeCycle
- PropertySet
The resource interface is inherited by applications and hardware devices. Because of its importance, the example in this section will define a software component that inherits the resource interface. It could inherit other interfaces, but this would add complexity without providing further insight into the development of SCA components.
Component Placement
- The CORBA middleware allows software components to be distributed anywhere within the radio.
- The Core Framework provides distributed object launchers for each processor board within the set.
- The radio’s application factory launches a waveform or application by providing the object files and execution parameters to the various processors within the radio.
After objects are instantiated, they may be co-located, or distributed among the different processing elements within the radio. These objects do not have any knowledge of other application objects or the hardware resources within the radio.
A set of XML files is associated with each software and hardware object. These files provide information about the objects, including their port references. The application factory parses these files along with an application schematic file, the Software Assembly Descriptor (SAD). The SAD provides the necessary information to connect the hardware and software components together.
Hardware Configuration
The SCA System Communications Architecture does not specify a hardware configuration. However, one of the requirements for SCA certification is that the waveform must be ported successfully to a government test platform.Most previous military radios had a specialized downconverter and modulator integrated circuits. With the non-standard JTRS configuration shown here, the waveform developers must provide FPGA code that can perform the function of operating directly with the A/Ds and D/As. The hardware does not provide direct digital synthesizers and upsamplers typical in previous radios. The waveform designer must provide that functionality in specialized FPGA code that constitutes part of the delivered waveform.
External links
- Software Communications Architecture Homepage
- FREE SCA 2.2 Core Framework Browser
- SCA 2.2, SCA 2.2.2 and OMG SWRadio CF implementation and development tools - PrismTech
- SCA Development Tools - Zeligsoft
- SCA Tools and Core Framework - CRC
- Open Source SCA Implementation - Embedded (OSSIE) - Virginia Tech
- SCA Waveform Development - Etherstack
- SCA-related Working Groups - Wireless Innovation Forum (formerly SDR Forum)