Implementation Overview: p S'5066 Edition 2 Prototype
Implementation Overview: p S'5066 Edition 2 Prototype
Implementation Overview: p S'5066 Edition 2 Prototype
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Implementation</strong> <strong>Overview</strong>:<br />
S’5066 <strong>Edition</strong> 2 <strong>Prototype</strong><br />
prepared by:<br />
Donald G. Kallgren, Dr. Michael Street and Maarten Gerbrands<br />
presented to:<br />
the High Frequency Industry Association<br />
19 July 2007<br />
Rome, Italy
Agenda<br />
• <strong>Implementation</strong> <strong>Overview</strong><br />
• hardware environment<br />
• software environment<br />
• Software <strong>Overview</strong><br />
• code structure and size<br />
• availability<br />
• capability/PICs<br />
• Relation to other NC3A efforts<br />
• SDR<br />
• code repository<br />
• VHF / UHF Waveform Development<br />
• Summary<br />
NC3A TNSRC / IPT6
“CORBA-ized” S’5066 <strong>Implementation</strong><br />
• modified earlier hfstack design and<br />
implementation:<br />
• separate SW modules for hfstack and<br />
route56 synchronous serial interface<br />
• synchronous serial interface further<br />
abstracted as a CORBA resource in<br />
accordance with SCA design principles<br />
• CORBA interface specification<br />
• abstract object-oriented oriented interface<br />
applicable to any modem<br />
• remains constant as modem<br />
implementations ti change<br />
• towards an SDR modem implementation<br />
• initial designs encapsulate route56 driver<br />
interface to external modem via<br />
synchronous-serial serial port<br />
• ultimately replaced by SDR modem<br />
• operates as independent:<br />
• HF modem server, registered with CORBA<br />
name server<br />
• HF statck, which checks CORBA registry<br />
for available HF modem servers<br />
NC3A TNSRC / IPT6
Hardware Packaging: as multi-band wireless router<br />
Technical data<br />
MPCX47<br />
• MICROSPACE MPCX47 platform<br />
CPU<br />
Intel® Pentium® M 738, 1.4GHz<br />
2nd Level Cache 2048kB 16 cm<br />
Memory<br />
1GB<br />
Ext. temp. hard disk<br />
40GB, 2.5" (max. 80GB)<br />
6.6 cm<br />
Optical drive<br />
CD-RW/DVD-R drive<br />
Video controller<br />
Intel® 855GME<br />
Video memory<br />
64MB<br />
30 cm<br />
3D-Support DirectX 9<br />
Video interface<br />
1 QXGA; 2 DVI; 3 TV<br />
Resolution<br />
2048 x 1536 (@ 75Hz)<br />
Keyboard, mouse<br />
2x PS/2<br />
Serial interface COM1 RS232C - Asynchronous<br />
Serial interface COM2 RS232C - Asynchronous<br />
Serial interface COM3 Embedded GPS Module interface<br />
Serial interface COM4 Embedded GSM/GPRS Module interface<br />
DB-25 Interface RS232 – Synchronous (Embedded<br />
Sealevel Route56 PC104 Module)<br />
USB V2.0<br />
2x back, 2x front<br />
Firewire IEEE1394<br />
2x back, 1x front<br />
NC3A TNSRC / IPT6<br />
• Back View<br />
LAN Port A (with LAN boot) 100/10Base-T (RJ45) Synch/Serial Interface to external HF Modem<br />
Antenna Interfaces for embedded WiFi, GSM/GPRS, GPS
Synchronous Serial Interface Hardware<br />
• Currently limited to modified ‘Route56’ driver for Z16C32 chipset<br />
• Driver Modifications:<br />
• implement BiSYNC protocol w/ 0x90EB sync word<br />
• hardware-assisted assisted sync-word search<br />
• Low-Profile PCI form factor • PC-104 form-factorfactor<br />
• Sealevel Systems ACB-<br />
• Sealevel Systems ACB-104-<br />
Ultra.LPCI<br />
Ultra<br />
NC3A TNSRC / IPT6
Capabilities:<br />
<strong>Implementation</strong> of key (but NOT all) ) S’5066E2 features<br />
Annex<br />
A<br />
B<br />
C<br />
D<br />
E<br />
F<br />
G<br />
H<br />
I<br />
J<br />
K<br />
L<br />
M<br />
N<br />
O<br />
Short Title<br />
SIS<br />
CAS<br />
DTS<br />
COMM<br />
CONTROL<br />
CLIENT<br />
HSMODEM<br />
Capabilities / Comment<br />
Soft-links only; multiple soft links; multi-client support<br />
CAS-1 mode, with multiple physical link capability<br />
Multiple ARQ engines (one per physical link); no adaptive data rate;<br />
no piggy-backed DATA/ACK operation (i.e.., T2 DPDU defined, not used)<br />
interface types: serial port (route56 dev) | URI = tcp://host:port | CORBA<br />
No modem / radio control interface provided<br />
E1A1-compliant Raw Socket interface; Etherclient (supporting IPv4/IPv6)<br />
Supports High-Speed modem operation ( using ‘188-110B 110B or S’4539)<br />
GUIDE interleaved client streams; configurable DPDU-payload sizing<br />
i<br />
FREQCHG<br />
MAC<br />
RA/CSMA<br />
WTRP<br />
ATDMA<br />
ADDRESSING<br />
IP_OPS<br />
No capability for frequency change or ALE-control interface<br />
Implements Abstract MAC-layer C++ object class; extensible per Annex J<br />
Implemented without random backoff in a MAC-layer<br />
layer-derived class<br />
Implemented as a derived class from the Abstract MAC-layer, w/ token class<br />
and WTRP state machine; token-relay is limited and buggy;<br />
IP-interface<br />
auto-configuration support is not implemented<br />
No capability for adaptive TDMA; will require implementation of derived class<br />
Node addresses are fully programmable and compliant<br />
Stack & Etherclient compatible w/ static, OSFP, and OLSR routing<br />
NC3A TNSRC / IPT6
Software <strong>Overview</strong><br />
• Total Redesign of earlier prototype-SW development for S’5066E2<br />
• Linux 2.6 kernel, RedHat Fedora Core 6<br />
• all POSIX / C++ STD implementation<br />
• eliminates earlier prototype’s dependence on KDE/Qt libraries<br />
• Modularized/Object-Oriented Oriented Code:<br />
hfstack<br />
Layer<br />
Interface<br />
SIS 1.5 0.8<br />
CAS 1.4 2.0<br />
DTS 3.2 4.2<br />
MAC 4.6 46 03<br />
0.3<br />
sisetherclient<br />
Total = ~ 2.2 KSLOC<br />
COM 0.8 0.2<br />
CORBA - 0.3<br />
‘hfmodem’<br />
(i.e., serial interface)<br />
0.4<br />
04 libnc3a<br />
Total = < 20 KSLOC 11.9 7.8<br />
Total = ~ 19 KSLOC<br />
NC3A TNSRC / IPT6
Source-Code Availability<br />
• software repository established:<br />
• https://s5066.nc3a.nato.int/S5066loginreq/software/<br />
• accessible to NATO/PfP/CFBLNet nations with account / password,<br />
apply at: https://s5066.nc3a.nato.int/authrequest.php<br />
• SRPMs available:<br />
• hfstack, choose one of:<br />
• hfstack-0.3.10-00.src.rpm00.src.rpm<br />
470K<br />
• hfstack-sdr-0.3.10-00.src.rpm00.src.rpm<br />
470K<br />
• serial-port driver:<br />
• kernel-module-route56-0.1.3-9.src.rpm<br />
30K<br />
• libnc3a-0.5.01-00.src.rpm00.src.rpm<br />
540K<br />
• sisetherclient-0.2.10-00.src.rpm00.src.rpm<br />
319K<br />
• other (optional utilities)<br />
• sisnetsim-0.4.00-0.src.rpm0.src.rpm<br />
313K<br />
• sispipe-0.1.19-15.src.rpm15.src.rpm<br />
304K<br />
• Licensing:<br />
• GPL / LGPL for inherited Linux code<br />
• BSD for NC3A-generated code<br />
• additions/contributions/corrections to the code in the NC3A repository<br />
are not required (but would be appreciated! by all!)<br />
NC3A TNSRC / IPT6
Source-Code Browser<br />
• Browse-able Code<br />
• generated directly from the<br />
code using ‘Doxygen’ tool<br />
• code-changes changes directly<br />
reflected in browser files<br />
whenever the SW is re-built<br />
• various reports available<br />
• viewable source code<br />
• inheritance and dependency<br />
diagrams<br />
• Class-, Function-, variable,<br />
lists<br />
• Class-overview w/<br />
embeddable source code<br />
and called-by/call-listslists<br />
• browse-able code documentation at /docs/html/index.html<br />
• documentation outputs controllable by modifying file /docs/doxygen/doxygen.conf<br />
NC3A TNSRC / IPT6
Class Reference (1): e.g., DPDU Class<br />
Inheritance and code structure<br />
hyperlinked<br />
file<br />
reference<br />
hyper-linked<br />
inheritance<br />
it<br />
diagrams<br />
expanded/interpreted code structure and<br />
embedded programmer comments<br />
documentation page includes<br />
embedded d source code<br />
NC3A TNSRC / IPT6
Relationship to other NC3A/NATO Developments<br />
• support to SDR project<br />
• GPP-based code of NATO<br />
STANAGs<br />
• development roadmap for HF /<br />
VHF / UHF SDR software<br />
• exploration of low-cost base<br />
waveform implementations<br />
• explore mechanics / legalisms<br />
of a NATO sponsored code<br />
repository<br />
NC3A TNSRC / IPT6
NATO aims for SDR<br />
• … as a development platform<br />
• … to interoperate with legacy systems<br />
• … to share waveforms and enable interoperability<br />
NC3A TNSRC / IPT6
SDR … as a development platform<br />
• New waveform for land tactical domain<br />
• A new, efficient, sharable narrow band is being developed<br />
• Current V/UHF waveforms are not “NNEC ready”<br />
• Using work conducted by several nations<br />
• SDR provides a fast, flexible development platform<br />
• National work on layers 1, 2 and 4<br />
• All developed in software<br />
• Low-cost NC3A SDR platform to host national work<br />
• Fill in gaps to produce a working waveform<br />
• Resulting waveform / software can be shared<br />
• With NATO / PfP<br />
• Following o STANAG 5066 model for collaborative at development<br />
e e • Improved dissemination and implementation<br />
NC3A TNSRC / IPT6
NC3A development<br />
• NC3A has established an SDR development system<br />
• Host system for multi-national effort<br />
• National developments offered to NATO<br />
• NC3B request contributions to w/f development<br />
• From active programmes to develop waveform<br />
components which can be shared<br />
• NC3A hosting first meeting in early July for nations<br />
• Coordination of SDR development<br />
• Multiple nations involved<br />
• RTO provides a useful forum for technical cooperation<br />
• NC3A support to SDR UG provides coordination<br />
NC3A TNSRC / IPT6
SDR …to interoperate with legacy<br />
• SDR is the choice for many national procurements<br />
• Current and future<br />
• Software definitions of legacy waveforms<br />
• will provide backward compatibility<br />
• can be shared easily<br />
• ACT funded EPOW at NC3A<br />
• Coordination with SDRUG via NC3A support to NC3B<br />
NC3A TNSRC / IPT6
NC3A and existing radio standards<br />
• SCA based version of STANAG 5066<br />
• Based on SCA* standard d for SDR<br />
• Easily ported to SCA compliant platforms<br />
• (and most platforms are SCA based)<br />
• Tested on-air during STANAG 5066 trials at Combined Endeavor<br />
• Software has no IPR or security restrictions<br />
• RF data acquisition during Combined Endeavor<br />
• Software modules developed for RF receive<br />
• Real RF signals available in the lab for development and test<br />
• Developing SCA-based versions of<br />
• US Mil-Std 188-141A 141A for 2 nd generation ALE<br />
• STANAG 4539 – in conjunction with CRC<br />
• STANAG 4205c – UHF<br />
• (RTO developing SCA-based STANAG 4285)<br />
* SCA – Software Communications NC3A TNSRC / IPT6 Architecture<br />
Software Communications Architecture
NC3A and software / waveform sharing<br />
• Waveform / software definition sharing<br />
• Benefits from a standard format<br />
• Eases porting<br />
• SCA the likely candidate<br />
• But SCA does not address all aspects<br />
• Security still needs much work<br />
• Technical work needed d to address multi-national l issues<br />
• Waveform sharing mechanisms<br />
• Address technical aspects of NC3B business model<br />
• Lessons learned from NC3A SDR testbed and multi-<br />
national waveform development work<br />
• NC3A updates to SDRUG<br />
NC3A TNSRC / IPT6
Activities for RTO<br />
• Multi-national technical work needed on SCA<br />
• Address issues arising for non-US work e.g. security<br />
• Single-nation nation issues fixed e.g. JTRS<br />
• RTO planned activities will identify (and solve )<br />
issues<br />
• Technicalities of software sharing<br />
• Multi-national SDR collaboration via RTO can provide<br />
benefits for operational sharing / interoperability<br />
• Building a waveform library<br />
• NC3A work on legacy standards in SCA form<br />
• RTO plans will add to the library content<br />
NC3A TNSRC / IPT6
SDR Testbed<br />
• Low-cost / low-profile approach to testbed<br />
• GNU-Radio GPP DSP implementations<br />
• http://gnuradio.org/trac<br />
org/trac<br />
• Universal Software Radio Peripheral (USRP)<br />
• http://www.ettus.com/downloads/ettus_broch_trifold_v3b.pdf<br />
• USRP Motherboard<br />
• Four 64 MS/s 12-bit A/D Converters<br />
• Four 128 MS/s 14-bit D/A Converters<br />
• Four programmable digital downconverters<br />
• Two programmable digital upconverters<br />
• High-speed USB 2.0 interface (480 Mb/s)<br />
• Signal processing capability to 16 MHz wide<br />
• Daughterboards:<br />
• spectral coverage from<br />
DC to 2.9 GHz<br />
NC3A TNSRC / IPT6
SDR Issues under consideration<br />
•relevance of GNU-Radio to SCA and vice versa<br />
•GNU-radio based on:<br />
•Python scripts as specification of the<br />
•does implementation of a ‘Base Waveform’<br />
specification (i.e., a functional exemplar of a waveform)<br />
for SDR even require a standard:<br />
•may<br />
be non-real-time<br />
•must<br />
t be open source<br />
•presumed to provide unambiguous specification, design,<br />
and guidance to Target Waveform implementers<br />
•it’s Target Waveforms that require SDR-code portability!<br />
NC3A TNSRC / IPT6
Summary<br />
• NC3A – developed S’5055E2 prototype SW code<br />
is available for download, d review, comment, use<br />
• software repository established:<br />
• https://s5066.nc3a.nato.int/S5066loginreq/software/<br />
nato • accessible to NATO/PfP/CFBLNet nations with account / password,<br />
apply at: https://s5066.nc3a.nato.int/authrequest.php<br />
• Initial entires in NC3A SDR software repository<br />
• provides initial support/exploration-of-use for SDR<br />
SCA<br />
• to be expanded to support NATO efforts in<br />
developing a VHF/UHF STANAG<br />
NC3A TNSRC / IPT6