SLS-CS_15

advertisement
Jet Propulsion Laboratory
California Institute of Technology
Short Uplink LDPC Codes: Proposed Methods
for CLTU Acquisition and Termination
Kenneth Andrews *
and Massimo Bertinelli †
* Jet Propulsion Laboratory, California Institute of Technology
† European Space Agency
© 2015 California Institute of Technology
Government sponsorship acknowledged.
CCSDS Fall Meetings
Darmstadt
November 9-12, 2015
1
Start and Tail Sequences for TC LDPC Codes
Jet Propulsion Laboratory
California Institute of Technology
Objective
• Our goal is to offer LDPC codes as an alternative to the existing BCH
code in the telecommand Blue Book
• We have agreed to add two binary rate-1/2 LDPC codes: (n=128,k=64)
and (n=512,k=256)
• A pseudo-randomizer will be used, as in the TM standard
• Communication is still via CLTUs (Communications Link Transmission
Units): independent transmissions consisting of one or more codewords
• Optimal applications remain similar: low data volume, low complexity
receivers, including emergency communications. High data-volume
links, likely at high data rates, would be better served by using the TM
standard.
Remaining issues
1. Method to detect the start of a CLTU
2. Method to detect the end of a CLTU
•
•
•
Four teleconferences (mostly) resolved these issues
The following slides are a summary of those discussions
If we reach consensus, we can proceed with Pink Sheets to add a chapter to the
TC Synchronization and Channel Coding Blue Book (231.0-B-2)
2
Start and Tail Sequences for TC LDPC Codes
Jet Propulsion Laboratory
California Institute of Technology
Methods to detect the start of a CLTU
1. Markerless acquisiton, using LDPC code structure
2. 16- or 32-symbol start sequences
3. Preferred option: 64-symbol start sequence, 0347 76C7 2728 95B0
Methods to detect the end of a CLTU
1.
2.
3.
4.
5.
In-band signaling: one bit per codeword
In-band signaling: one-byte count field in first codeword
Undecodable codeword
Preferred option: 64-symbol tail sequence, value TBD
Preferred option: No tail sequence; end of CLTU detected by
decoder failure
3
1. Start sequences of various lengths
Jet Propulsion Laboratory
California Institute of Technology
Markerless acquisition,
using LDPC code structure
• Advantage: No overhead
• Disadvantage: High
computational complexity
• Disadvantage: Insufficient
detection performance with
the (128,64) code
4
2. and 3. Start sequence of 16, 32, or 64 symbols
Jet Propulsion Laboratory
California Institute of Technology
Start sequences of various lengths
• Advantage: A shorter start sequence has less overhead
• Disadvantage: A shorter start sequence has poorer detection performance
• A 64-symbol marker is necessary and sufficient
Implementation options
• A hard correlator is sufficient if the threshold is well chosen
• The “approximate Massey” algorithm provides plenty of margin, with
modestly increased implementation complexity
5
3. 64-symbol start sequence
Jet Propulsion Laboratory
California Institute of Technology
Start sequence selection:
The 64-symbol sequence from the TM standard is familiar, and has reasonable
auto-correlation and cross-correlation properties.
Zero-one
balance
Auto-correlation
Cross-correlation with
...0101... idle seq.
64
±
6
TM-standard
64-sym ASM
35/29
(surplus of
3 zeros)
Max values: ±6
64
9,10,13
Randomized
all-ones
30/34
(surplus of
2 ones)
±
4
6
1. In-band signaling: one bit per codeword
Jet Propulsion Laboratory
California Institute of Technology
“Distributed” signaling, using first bit of each codeword
• Advantage: Low overhead, if CLTU consists of only a few codewords
(as it should)
• Disadvantage: Message length is an inconvenient 63 or 255 bits
7
2. In-band signaling: one-byte count field
Jet Propulsion Laboratory
California Institute of Technology
“One-shot” signaling, with count of codewords in CLTU
• Advantage: Modestly lower error rate
• Disadvantage: First message is 8 bits shorter than the others
• Disadvantage?: This treads into protocol territory
8
3. Terminate with undecodable codeword
Jet Propulsion Laboratory
California Institute of Technology
Undecodable codeword, as with BCH codes
• Advantage: Greatest similarity to existing standard
• Disadvantage: An undecodable LDPC codeword would be 128 or 512
symbols long.
• Disadvantage: This is not compatible with an incomplete decoder
9
4. Terminate with a tail sequence
Jet Propulsion Laboratory
California Institute of Technology
Termination with a 64-symbol tail sequence
• Advantage: Similar to start sequence detection in performance,
implementation, and complexity
• Advantage: Compatible with a complete LDPC decoder
• Disadvantage: More overhead than most of the alternatives, but this
may not be very important.
10
5. No tail sequence
Jet Propulsion Laboratory
California Institute of Technology
Use no tail sequence
•
•
•
•
Tail of CLTU is declared when decoder over-runs and fails to decode
Advantage: No overhead
Disadvantage: Incompatible with complete decoders
Disadvantage?: The end of a CLTU cannot be distinguished from a
communications error. This is a disadvantage if the receiver should behave
differently in the two cases.
Back up to beginning
of failed codeword
Event
Number
E3
Event
Name
CHANNEL
ACTIVATION
CHANNEL
DEACTIVATION
START SEQUENCE
FOUND
E4
CODEBLOCK
REJECTION
E1
E2
Event
Definition
Bit modulation is detected and bit lock is achieved:
channel bit stream is present.
Bit lock is lost or communications signal is lost: channel bit
stream is NOT present.
The Start Sequence pattern has been detected, signaling
the beginning of the first Codeblock of the CLTU.
The decoder has indicated uncorrected errors in a
Codeblock. No data from this Codeblock are transferred
to the sublayer above, and searching commences from
the beginning of the failed Codeblock.
Table 4-2: CLTU Reception Events (Receiving End)
11
Questions
Jet Propulsion Laboratory
California Institute of Technology
4. Preferred option: 64-symbol tail sequence, value TBD
5. Preferred option: No tail sequence; end of CLTU
detected by decoder failure
Open question: Should we allow both options 4 and 5?
• How does a complete decoder recover if it misses the tail sequence?
Open question: If a tail sequence is used, what should its
value be?
• I think it cannot be the start sequence, without creating confusion.
• The undecodable BCH tail sequence is C5C5 C5C5 C5C5 C579
• Any better suggestions?
12
Jet Propulsion Laboratory
California Institute of Technology
Backup
13
Error analysis with no tail sequence
Jet Propulsion Laboratory
California Institute of Technology
Probabilities and consequences of incorrect state transitions
•
•
•
•
Missed S2->S3; P(miss). Lost CLTU.
Accidental S2->S3; P(FA). If so, next outcome is one of ...
• Decoding failure; probability near unity. No consequence.
• Improper decoding; probability similar to code’s undetected error rate?
Codeword passed to protocol parser, and next outcome is one of ...
• If this appears as a multiple-codeword TF, one of them will probably fail. If
this appears as a one-codeword TF, it is probably rejected; probability near 1
if CRC is used, or if SCID and other fields verified.
• Unintended command received. Probability ~ P(FA) × P(UER) × P(proto)
per symbol, where P(proto)~2-16 if a CRC is used, or 2-10 if SCID is validated.
Accidental S3->S2. Lost remainder of CLTU; P(CWER) per CW.
Missed S3->S2; probability similar to code’s undetected error rate? If so, next
outcome is one of ...
• Improper decoding, as above.
• Probability of unintended command ~ P(UER) × P(proto) per CLTU.
14
Error analysis with 64-symbol tail sequence
Jet Propulsion Laboratory
California Institute of Technology
Decoder performance
Correlator performance
• With the (512,256) LDPC code, Eb/No~3.5 dB, the
hard correlator is sufficient. The Massey algorithm
provides plenty of margin with modestly increased
complexity.
15
Complexity analysis with 64-symbol tail sequence
Jet Propulsion Laboratory
California Institute of Technology
Complexity comparison
Method
64-symbol, hard correlator
(128,64) LDPC
Complexity
63 XORs/sym
(512,256) LDPC
Complexity
63 XORs/sym
64-symbol, Massey
32 ops/sym
32 ops/sym
LDPC decoding
114 ops/sym
177 ops/sym
Units
operation: add, subtract, table-lookup, clipping
XOR:
exclusive-OR; results are counted
16
Overhead analysis with 64-symbol tail sequence
Jet Propulsion Laboratory
California Institute of Technology
Overhead
A complete one-codeword transmission
• A complete transmission includes a carrier sweep, and
acquisition time for subcarrier and symbol lock.
carrier
only
•
•
176 symbol
acquisition
F symbol
start seq
n symbol
codeword
64 symbol
term. seq?
(carrier
only)
Acquisition time: a common value is 176 symbols
Carrier sweep: typical values are ±5 KHz (twice) at 200 Hz/sec, for
a total time of >100 sec. Carrier-only time at end could be zero.
f0+5 kHz
f0
f0+5 kHz
•
200 Hz/sec
time
Overhead: F symbols out of c+176+F+n+64 symbols, where
c=(carrier-only time)/(symbol period). Minimum data rate is typically
7.8125 bits/sec.
•
Example: F=64, n=128, c=100×7.8125=781. Overhead: 1.056=0.24 dB
17
Overhead analysis with 64-symbol tail sequence
Jet Propulsion Laboratory
California Institute of Technology
Overhead (continued)
A secure one-codeword transmission
• A spacecraft within range of a back-yard transmitter should use a
cryptographically secure uplink.
• Example: one (512,256) codeword, with 56 bits of USLP header, 48 bits
of security header, 24 bits of data, and 128 bits of message
authentication code.
•
Overhead: F symbols out of c+176+F+n+64 symbols, where c=(carrier-only
time)/(symbol period). Maximum data rate is typically 2Kbps.
•
Example: F=64, n=512, c=100×2000=2e5. Overhead: 1.0003=0.0014 dB
carrier
only
176 symbol
acquisition
64 sym
start seq
512 symbol 64 symbol
codeword
term. seq?
(carrier
only)
File upload
• JPL generally performs the carrier sweep and sends the acquisition
sequence once. Then many transfer frames are sent, one transfer frame
per CLTU. The minimum length of a transfer frame is one codeword; the
maximum length is 1024 bytes.
• Example: Suppose a file is transmitted as a series of 1024-byte CLTUs,
encoded with a rate-1/2 LDPC code.
• Overhead: (16384+64)/16384 = 1.004 = 0.017 dB
18
Overhead analysis with 64-symbol tail sequence
Jet Propulsion Laboratory
California Institute of Technology
Overhead conclusions
•
For short transmissions, the carrier sweep dominates the
transmit time. Overhead from the start sequence is not
important. The power efficiency of coding also is not important.
The primary value of coding is to lower the undetected error rate.
•
For long transmissions, the start sequence is repeated with each
CLTU. For long CLTUs, overhead from the start sequence is not
important. However, a large number of short CLTUs (i.e. short
transfer frames) is inefficient and should be avoided. Coding is
important for power efficiency, and long codewords should be
encouraged.
19
Download