Upload
miles-strickland
View
216
Download
1
Embed Size (px)
Citation preview
1
Jet Propulsion Laboratory California Institute of Technology
Short Uplink LDPC Codes: Proposed Methodsfor CLTU Acquisition and Termination
Kenneth Andrews *and Massimo Bertinelli †
* Jet Propulsion Laboratory, California Institute of Technology† European Space Agency
© 2015 California Institute of TechnologyGovernment sponsorship acknowledged.
CCSDS Fall Meetings Darmstadt November 9-12, 2015
2
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 issues1. Method to detect the start of a CLTU2. 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)
Start and Tail Sequences for TC LDPC Codes
3
Jet Propulsion Laboratory California Institute of Technology
Methods to detect the start of a CLTU1. Markerless acquisiton, using LDPC code structure2. 16- or 32-symbol start sequences3. Preferred option: 64-symbol start sequence, 0347 76C7 2728 95B0
Methods to detect the end of a CLTU1. In-band signaling: one bit per codeword2. In-band signaling: one-byte count field in first codeword3. Undecodable codeword4. Preferred option: 64-symbol tail sequence, value TBD5. Preferred option: No tail sequence; end of CLTU detected by
decoder failure
Start and Tail Sequences for TC LDPC Codes
4
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
1. Start sequences of various lengths
5
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
2. and 3. Start sequence of 16, 32, or 64 symbols
6
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.
Randomizedall-ones
TM-standard64-sym ASM
Cross-correlation with ...0101... idle seq.Auto-correlation
±6
±4
64
64
Zero-one balance
35/29(surplus of
3 zeros)
30/34(surplus of
2 ones)
Max values: ±6
9,10,13
3. 64-symbol start sequence
7
Jet Propulsion Laboratory California Institute of Technology1. In-band signaling: one bit per codeword
“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
8
Jet Propulsion Laboratory California Institute of Technology2. In-band signaling: one-byte count field
“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
9
Jet Propulsion Laboratory California Institute of Technology3. Terminate with undecodable codeword
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
10
Jet Propulsion Laboratory California Institute of Technology4. Terminate with a tail sequence
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.
11
Jet Propulsion Laboratory California Institute of Technology5. No tail sequence
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
Table 4-2: CLTU Reception Events (Receiving End)
12
Jet Propulsion Laboratory California Institute of Technology
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?
Open question: Should we allow both options 4 and 5?• How does a complete decoder recover if it misses the tail sequence?
4. Preferred option: 64-symbol tail sequence, value TBD5. Preferred option: No tail sequence; end of CLTU
detected by decoder failure
Questions
13
Jet Propulsion Laboratory California Institute of Technology
Backup
14
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.
Error analysis with no tail sequence
15
Jet Propulsion Laboratory California Institute of Technology
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.
Decoder performance
Error analysis with 64-symbol tail sequence
16
Jet Propulsion Laboratory California Institute of Technology
Complexity comparison
(128,64) LDPC (512,256) LDPCMethod Complexity Complexity64-symbol, hard correlator 63 XORs/sym 63 XORs/sym
64-symbol, Massey 32 ops/sym 32 ops/sym
LDPC decoding 114 ops/sym 177 ops/sym
Unitsoperation: add, subtract, table-lookup, clippingXOR: exclusive-OR; results are counted
Complexity analysis with 64-symbol tail sequence
17
Jet Propulsion Laboratory California Institute of Technology
• 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
A complete one-codeword transmission• A complete transmission includes a carrier sweep, and
acquisition time for subcarrier and symbol lock.
Overhead
time
f0
f0+5 kHz
f0+5 kHz
200 Hz/sec
• 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.
carrier only
176 symbol acquisition
F symbol start seq
n symbol codeword
64 symbol term. seq?
(carrier only)
Overhead analysis with 64-symbol tail sequence
18
Jet Propulsion Laboratory California Institute of Technology
• 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
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 (continued)
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
carrier only
176 symbol acquisition
64 sym start seq
512 symbol codeword
64 symbol term. seq?
(carrier only)
Overhead analysis with 64-symbol tail sequence
19
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.
Overhead analysis with 64-symbol tail sequence