Definition of Embedded Software using the Waveform

Download Report

Transcript Definition of Embedded Software using the Waveform

Racal Research
Definition of Embedded Software using
the Waveform Description Language,
E.D.Willink, Racal Research Limited,
[email protected],
Software Defined Radio Forum,
12th September 2000,
UK Programmable Digital Radio (PDR) Phase 1,
Waveform Description Language (WDL) programme
(DERA contract CU009-0000002745)
Raytheon, Communication Systems Division, Fort Wayne, Indiana,
Racal, Racal Research Limited, England
P6957-25-013
A Thomson-CSF Racal Company
1
Racal Research
Introduction
•
•
•
•
Specifications
Examples
Architectural Mapping (JTRS)
Summary
P6957-25-013
A Thomson-CSF Racal Company
2
Racal Research
The SDRF Software Architecture
http://www.sdrforum.org/MTGS/mtg_19_jun00/tech_comm_seattle.ppt slide 20
1..*
1..*
0..*
1
is available
SW
via
FileSyste
0..*
m
stores &
retrieves
bases
configurations
allowable
on
Domai 1..*
File
are
types
of
Executabl
e SW
1
1 1
Messag
e
Repeate
r
1
sets up virtual
destinations
path
via
DomainManag
er
controls
1..*
of radio
ModemAdapte
P6957-25-013
accesses
SW
files via
1
registers
with
1
1
OE
Non-Core (Radio)
Applications
Core Framework
(CF)
Commercial
Off-the-Shelf
(COTS)
1..*
oversee
ResourceManag
s 1..*
er
1
1
1
1
request
loads core
resources
s
1..* &non-core1..*
of
creates 1
Factory
1..*
1..*
1..* sets/getsResourc states
e
via
loads
StateManageme
&
unloads
nt
resource
s
Securit
1
acts on
r
BB / IF
implement
complex
/
s API 1
1..* Modem
RF for Mode
Signal for
/Antenn
m
Gen.
a
1
applicatio
n
Bridge
bridges decrypts
Waveform1 retransmit
ssignals
PT for 1..*
to/from 1..*
RF
of
RF API Modem
Link
1
1..*
1..*
translate 1..* 1 intercept
acts on 1
A/D,
C
protocols
s
sT
D/A for
to/from
for
1
1
analog
1
LifeCycl
e
MessageRegistrati
on
are
types
radio
via
1..*
acts on
C2 for
guides start-up
&
teardownvia 1..*
nProfile
Resource
FileManage
r what
knows
Router
1 provide
s
CF
Services
Logger
Installer
Timer
Access
y
1 sends
1 sends
1 provide 1..*
PT to
1..* provide
services
s
CT to
services
for
decrypts
routes
for
1 1
for
CT
1..* to/from
provide
1..* Networ
Utility
s
1..* services
1
1
for
intercept 1 k translate 1
PT
s
protocols
s
to/from1
for
1
SecurityAdapte
r
implement
Infosec
s API 1
GPL for
Crypto
Key
Fill
Gatewa
y
HostAdapte
r
GPS
Etherne
t
Serial
Audio
HW
Device
1
provide
1 saccess
to
detects &
reports
0..*
A Thomson-CSF Racal Company
3
Racal Research
Contrasting/Complementary approach
• Implementation
– How it can be done
• Specification
– What needs to be done
Waveform Definition Language (WDL)
– one specification
– many alternate implementations
P6957-25-013
A Thomson-CSF Racal Company
4
Racal Research
Specification of Systems and
Subsystems
• subsystems exist at many scales
– international/national/regional/local/internal phone network
– cabinet/rack/module/board/component equipment
• CORBA components support two scales
– inside
– outside
• WDL
– same approach for many scales
– specify without implementing
– refine specification into an implementation
P6957-25-013
A Thomson-CSF Racal Company
5
Racal Research
Specification of Communication
• High level systems
– sporadic control events
• Low level systems
– intensive calculation
– ‘continuous’ communication
• WDL
– sporadic and continuous flows are supported
– continuous and discrete time are interchangeable
P6957-25-013
A Thomson-CSF Racal Company
6
Racal Research
Complete specification (Low Level)
• Amplifier relatively easy
– vout = 10 * vin
• In practice need constraints
– frequency < 1 GHz
– load impedance 50Ω ± 10%
– third harmonic ...
• WDL
– mathematical definition of the ideal behaviour
– constraints to bound permitted behaviour
P6957-25-013
A Thomson-CSF Racal Company
7
Racal Research
Complete specification (High Level)
• System specifications
– large, unreadable
• Informal specification
– omissions lead to ambiguities
– duplications lead to contradictions
• Formal specification
– good in principle
– impractical for real applications
– unapproachable for most practitioners
• WDL
– pragmatic compromise
* formalisable, modular, familiar, practical, acceptable
P6957-25-013
A Thomson-CSF Racal Company
8
Racal Research
Specification in WDL
• Progressive decomposition
– systems - subsystems - components - building blocks
• Single hierarchical perspective
– clear readable specification
– removes ambiguities, avoids contradictions
Implementation in WDL
• Progressive refinement
– further decomposition
– practical constraints
– recomposition
• Minimal refinement
– executable reference model
P6957-25-013
A Thomson-CSF Racal Company
9
Racal Research
WDL Transformations
Decomposition
Text
Editors
Refinement
WDL Specification
Refiner
Schematic
Editors
WDL Program
Checker
WDL
Compilers
WDL Products, Waveform Bundle
P6957-25-013
A Thomson-CSF Racal Company
10
Racal Research
Sponsor
WDL
Refinement
Implementer
Abstract Specification
layers
coders
modulators
Actual Specification
algorithms
parameters
bit-truth
Reference Model
precisions
acquisition algorithms
System Design
filter characteristics
acquisition algorithms
minimum precisions
System Configuration
filter characteristics
decimation ratios
Hardware Mapping
partitioning
library matching
WDL Specification
Component Configuration
parameterisation
actual precisions
bit-truth
WDL Program
Reference Model
P6957-25-013
Product
A Thomson-CSF Racal Company
11
Racal Research
Refinement
• Abstract WDL specification (unimplementable)
• Waveform sponsor refines to support
– a reference model
• System designers refine to support
–
–
–
–
–
hardware partitioning
analogue/digital partitioning
concrete filter designs
specific acquisition strategies
apportion implementation loss budgets
• Implementers refine to
– exploit pre-existing object libraries
– compensate for compiler limitations
P6957-25-013
A Thomson-CSF Racal Company
12
Racal Research
Hierarchical decomposition
• Entity
– module of specified behaviour
– not necessarily an implementation object
• Message
– user defined data types (and array shapes)
– four scheduling flow types
• Hierarchical Diagrams
– message flow diagrams
– statecharts
• Leaf specification
– mathematical definition
P6957-25-013
A Thomson-CSF Racal Company
13
Racal Research
(UML) Statechart
StateChartEntity
event
guard
out
State1
event[guard]
/out(...)
WDL extension to UML:
state behaviour may be a
message flow
P6957-25-013
State2
A Thomson-CSF Racal Company
14
Racal Research
MessageFlowEntity
Message
Flow Diagram
in1
in2
out
Entity2
in1
in
out
in2
Entity1
in1
in2
out
out
UML Collaboration diagram
external scheduling, connection points have no semantics
WDL Message Flow Diagram
each arc has defined data and flow type, connecting at ports
each entity is self-scheduling - rendez-vous of relevant ports
external ports to define hierarchy
P6957-25-013
A Thomson-CSF Racal Company
15
Racal Research
FM3TR
Protocol
Layers
data_in
Nwk
Hci
nwk
data_in
hci
in_from_dlc
data_out
data_out
out_to_dlc
Dlc
Fm3tr
data_in
data_out
voice_in voice_out
antenna
dlc
out_to_nwk
tx_to_mac
Mac
Application
Presentation
in_from_nwk
hci
rx_from_mac
mac
Session
tx_from_dlc
rx_to_dlc
hci
rx_from_phl
carrier_detect tx_to_phl
Transport
Network
Data Link
Physical
Phl
phl
voice_in
tx
hci
voice_in
rx
carrier_detect
antenna
voice_out
antenna
voice_out
OSI layers
P6957-25-013
A Thomson-CSF Racal Company
16
Racal Research
TUNING_TIME
Hop Modulator
GuardModulator
config
hop
config
hop
modulation
modulation
after(config.tuning_time)
RISE_TIME
HopModulator
hop
config
RiseModulator
modulation
config
hop
config
hop
modulation
modulation
after(config.rise_time)
INFORMATION
InfoModulator
config
hop
config
hop
modulation
modulation
exit
FALL_TIME
tuning
time
rise
time
information
time
fall
time
FallModulator
config
hop
config
hop
modulation
modulation
after(config.fall_time)
P6957-25-013
A Thomson-CSF Racal Company
17
Racal Research
Hop
Rise
Time
F(t)
out
amp
Constructor
Constant
out
shift
RiseModulator
config
hop
amplitude
frequency_shift
frequency
modulation
modulation
Constant
modulation
out
freq
constraint: amp.out = range
{
minimum 0;
value 0.5 * (1 - cos(2*pi*t/config.rise_time));
maximum 1;
};
constraint: shift.out = 0;
constraint: freq.out = hop.frequency;
P6957-25-013
A Thomson-CSF Racal Company
18
Racal Research
Language for specification
• need expressions for
– configuration constraints, state machine guards
• need statements for
– state machine actions
• need types for
– messages
need a language
–
–
–
–
P6957-25-013
implementation languages do not specify
specification languages are unapproachable
specification languages have unhelpful focus
new language is new
A Thomson-CSF Racal Company
19
Racal Research
Specification
Subtractor
entity Subtractor
{
in minuend;
in subtrahend;
out difference;
response minuend subtrahend
{
specification
{
difference(minuend - subtrahend);
};
};
};
minuend
subtrahend
difference
Polymorphic
– type, shape, flow, language
P6957-25-013
A Thomson-CSF Racal Company
20
Racal Research
Hardware Mapping
• Bespoke hardware
– direct compilation
* one executable per processor
• ‘Virtual’ hardware - software radio
– identify components and messages
– indirect compilation
* one executable per component per platform
* one interface declaration per message
* configuration profiles per application
P6957-25-013
A Thomson-CSF Racal Company
21
Racal Research
Din
data_in
Dout
data_out
HtoN
Nwk
Hci
data_in
hci
in_from_dlc
nwk
FM3TR
Layers
as
JTRS
Components
and
Messages
Fm3trNetwork
out_to_dlc
NtoD
DtoN
HtoD
Dlc
in_from_nwk
hci
rx_from_mac
dlc
out_to_nwk
Fm3trLink
tx_to_mac
DtoM
MtoD
HtoM
Mac
tx_from_dlc
rx_to_dlc
hci
rx_from_phl
carrier_detect tx_to_phl
mac
Fm3trModem
HtoP
Phl
phl
Fm3trHci
voice_in
P6957-25-013
data_out
tx
hci
voice_in
Vin
rx
carrier_detect
antenna
voice_out
Vout
antenna
voice_out
A Thomson-CSF Racal Company
22
Racal Research
JTRS Mapping
Fm3trHci
Fm3trModem
Fm3trModem.Phl.nonTranSec
Fm3trModem.Mac
DSP Executive
Board Support Package
CF Core
DomainManager
C++ CORBA DeviceManager
ORB and
File Services
Services
Logger
Timer
Device
Posix RTOS
Network Protocol Stacks
Board Support Package
Fm3trNetwork
Fm3trModem.Phl.TranSec
Fm3trLink
INFOSEC Algorithm
Black
Red
INFOSEC
INFOSEC
Adapter
Adapter
Posix RTOS
DSP Executive
Network Protocol Stacks
Board Support Package
CF Core
DomainManager
C++ CORBA DeviceManager
ORB and
File Services
Services
Logger
Timer
Device
Posix RTOS
Network Protocol Stacks
Board Support Package
Black cPCI
Modem
P6957-25-013
Red cPCI
Black Control Processor
INFOSEC
Red Control Processor
A Thomson-CSF Racal Company
23
Racal Research
WDL & JTRS Summary
• JTRS
– a common radio architecture for waveform development
– modelled after very successful PC paradigm
– allows third party development of low cost applications
• WDL
– efficient methodology for developing many waveforms
– provides unambiguous specification
– provides portable implementation
P6957-25-013
A Thomson-CSF Racal Company
24
Racal Research
Summary
• WDL specifies a determinate behaviour
• Decomposition to manageable sub-specifications
• Refinement to support a reference model
• Refinement to support product implementations
• Polymorphism to exploit generic libraries
• Realistic scheduling models
• Type-oriented code generation for flexibility
P6957-25-013
A Thomson-CSF Racal Company
25
Racal Research
Status
• Phase 1
– Initial consideration of language concepts
– Example decomposition of FM3TR (1 month)
* clearer
* many anomalies reported back
• Future
– Better quality specifications
* sponsor provides reference model
– Semi-automated code generation
* months rather than years
P6957-25-013
A Thomson-CSF Racal Company
26