application of data compression to the mil-std-1553 data bus
DESCRIPTION
Application of Data Compression to the MIL-STD-1553 Data Bus. Scholar’s Day Feb. 1, 2008 By Bernard Lam. Overview. Background MIL-STD-1553 Bus Trace Analysis Solutions – Compression Algorithms Zero-Tracking, Modified Run-Length, and Differential Error Analysis - PowerPoint PPT PresentationTRANSCRIPT
Application of Data Application of Data Compression to theCompression to the
MIL-STD-1553 Data BusMIL-STD-1553 Data Bus
Scholar’s Day Scholar’s Day Feb. 1, 2008Feb. 1, 2008
By Bernard LamBy Bernard Lam
OverviewOverview Background Background
MIL-STD-1553 MIL-STD-1553 Bus Trace AnalysisBus Trace Analysis Solutions – Compression AlgorithmsSolutions – Compression Algorithms
Zero-Tracking, Modified Run-Length, Zero-Tracking, Modified Run-Length, and Differentialand Differential
Error AnalysisError Analysis Conclusions & Future ResearchConclusions & Future Research
Goal Of ResearchGoal Of Research To extend the bandwidth capabilities of MIL-To extend the bandwidth capabilities of MIL-
STD-1553 Bus, using compression STD-1553 Bus, using compression techniques.techniques.
Develop algorithms suitable for legacy Develop algorithms suitable for legacy systemssystems
Demonstrate that the time to compress and Demonstrate that the time to compress and decompress data is offset by the overall decompress data is offset by the overall savings in data transmission time. savings in data transmission time.
Timing AnalysisTiming AnalysisGet Data
Transmit Outputs
Compute Outputs
Get Data
Transmit Outputs
Compression
No Compression
TIME SAVED
Time required to receive compressed data
Time saved in receiving fewer words
Extra time need to decompress data
Time required to transmit data
Extra time to compress data
Compute Outputs
Timing Diagram
Background ~ MIL-STD-Background ~ MIL-STD-15531553
MIL-STD-1553 serial MIL-STD-1553 serial data busdata bus Developed in the late Developed in the late
1960’s and early 1970’s1960’s and early 1970’s Limited/Low Bandwidth Limited/Low Bandwidth
1 Mb/s1 Mb/s Has lead to development of Has lead to development of
multiple independent bussesmultiple independent busses Time division multiple Time division multiple
(TDM) access(TDM) access
System Model
Background ~ MIL-STD-Background ~ MIL-STD-15531553
MIL-STD-1553 (cont’d)MIL-STD-1553 (cont’d) Manchester Bi-phase encoding Manchester Bi-phase encoding Data word size: 16 bitData word size: 16 bit Sync WaveformSync Waveform Parity BitParity Bit
Message Format
Background ~ MIL-STD-Background ~ MIL-STD-15531553
MIL-STD-1553 (cont’d)MIL-STD-1553 (cont’d) Max. single-command transmission Max. single-command transmission
size of 32 wordssize of 32 words Safety and Mission Critical SystemSafety and Mission Critical System Real-Time SystemReal-Time System
Replacement of MIL-STD-1553 with Replacement of MIL-STD-1553 with updated bus protocol, such as Fibre updated bus protocol, such as Fibre Channel, not a viable solution Channel, not a viable solution because of extensive costs. because of extensive costs.
Bus Trace AnalysisBus Trace Analysis Analysis was conducted using data Analysis was conducted using data
from multiple bus traces of data from multiple bus traces of data captured at the F/A – 18 Advanced captured at the F/A – 18 Advanced Weapons Laboratory. Weapons Laboratory.
Each trace represented roughly 30 Each trace represented roughly 30 seconds of flight data and included seconds of flight data and included examples of mode changes and start-examples of mode changes and start-up conditions. up conditions.
73.5%88.8%68%Avg. % Zeros 72.0%88.5%53.5%Min % Zeros78.6%90.1%96.3%Max % Zeros5 Hz10 Hz20 Hz
Bus Trace AnalysisBus Trace Analysis
Percent of Zeros
Significant amount of zeros
3.3%3.3%3.9%Avg. % Changes2%0%2.0%Min % Changes
78.6%27.5%21.7%Max % Changes5 Hz10 Hz20 Hz
Bus Trace AnalysisBus Trace Analysis
Percent of Changes
Limited number of changes between consecutive message transmissions
Data CompressionData Compression Lossless vs. Lossy Compression Lossless vs. Lossy Compression
LosslessLossless Original data is completely retrievable by Original data is completely retrievable by
means of decompressionmeans of decompression Ex. Winzip, GIFEx. Winzip, GIF
LossyLossy Lose information; original data not Lose information; original data not
retrievable when decompressedretrievable when decompressed Higher Compression RatiosHigher Compression Ratios E.g., jpeg, mpeg, mp3E.g., jpeg, mpeg, mp3
Coding Performance and Efficiency Coding Performance and Efficiency Measured by compression ratioMeasured by compression ratio
Data CompressionData Compression
___
raw sizeCompression Ratiocompressed size
AFC1AFC1FFFFFFFF
compress decompress AFC1
AFC1FFFFFFFF
yyyyxxxx
Data CompressionData Compression CriteriaCriteria
Lossless CompressionLossless Compression
Take advantage of message format of Take advantage of message format of MIL-STD-1553MIL-STD-1553
Limit worst case expansion Limit worst case expansion
Limit computational and memory Limit computational and memory requirementsrequirements
Compression AlgorithmsCompression Algorithms Common Value TrackingCommon Value Tracking
Zero-TrackingZero-Tracking
Modified Run-Length EncodingModified Run-Length Encoding
Differential EncodingDifferential Encoding
Zero TrackingZero Tracking Encodes long sequences containing Encodes long sequences containing
mostly zerosmostly zeros
Uses marker sequence to indicate Uses marker sequence to indicate the position of zerosthe position of zeros
Transmits Transmits Position Address (marker sequence)Position Address (marker sequence) Non-Zero Data WordsNon-Zero Data Words
Zero-Tracking Encoding Zero-Tracking Encoding (Example)(Example)
486486AA00990088
00BB
00770066
AC9FAC9F554864860044
AC9FAC9F5959335959FFFFFFFF22
FFFFFFFF0011CCBBDD000000
EncodeEncoded Data d Data (Hex)(Hex)
ZTZTInput Input Data Data (Hex)(Hex)
Word Word Count Count (Hex)(Hex)
00001111
1100111111110011 __
_12_ 2.45
Original SizeCompression RatioCompressed Size
Compression Ratio
Bit Position Word
Zero TrackingZero Tracking If a 32-word block is compressedIf a 32-word block is compressed
2 data words are required to indicate 2 data words are required to indicate positionspositions
Can transmit maximum of 31 Can transmit maximum of 31 uncompressed data wordsuncompressed data words Most significant bit in 1st address word is Most significant bit in 1st address word is
used to indicate if uncompress/compressedused to indicate if uncompress/compressed Worst Case Compression RatioWorst Case Compression Ratio
comp. ratio = 31/32comp. ratio = 31/32
Modified Run-Length Modified Run-Length EncodingEncoding
Encodes consecutive sequences of Encodes consecutive sequences of identical words identical words
Uses marker sequence to indicate the Uses marker sequence to indicate the presence of repeated sequences within presence of repeated sequences within block setblock set
For block of 32 wordsFor block of 32 words Worst Case Expansion – 31/32Worst Case Expansion – 31/32
Modified Run-Length Modified Run-Length (Example)(Example)
98409840AA98409840995604560488
B1F4B1F4BB
56045604775604560466
B1F4B1F4560456045598409840560456044456045604FFFFFFFF33FFFFFFFF0022
0000116677AA000000
EncodeEncoded Data d Data (Hex)(Hex)
RTRTInput Input Data Data (Hex)(Hex)
Word Word Count Count (Hex)(Hex)
00111100
0011001111111100
___
12_ 26
Original SizeCompression RatioCompressed Size
Compression Ratio
Bit Position Word
Differential EncodingDifferential Encoding Encodes only changes of previous vs. Encodes only changes of previous vs.
current word locationscurrent word locations A differential scheme takes advantage A differential scheme takes advantage
of the fact that for a given rate group of the fact that for a given rate group one transmission to the next does not one transmission to the next does not changechange
Two buffers are required for Two buffers are required for comparison of previous and current comparison of previous and current transmissionstransmissions
Differential EncodingDifferential Encoding
___
12_ 2.45
Original SizeCompression RatioCompressed Size
Compression Ratio
11A14FA14F00520052BB008966896689668966AA11FDA9FDA98966896699119FB29FB2222222228800FFFFFFFFFFFFFFFF7700FFFFFFFFFFFFFFFF6600654265426542654255
A14FA14F00000000000000000044FDA9FDA9000000000000000000339FB29FB21112F812F8AF58AF582212F812F8000815081508150815112200DD0000005400540054005400
EncodeEncoded Data d Data (Hex)(Hex)
DTDTCurrenCurrent Data t Data (Hex)(Hex)
PreviouPrevious Data s Data (Hex)(Hex)
Word Word CountCount(Hex)(Hex)
Bit Position Word
1.318.377.2214.475.7412.47Differential 1.172.132.802.441.971.34 Mod. Run-Length
2.602.443.394.651.662.63Zero-TrackingMC2MC1MC2MC1MC2MC1
5 Hz10 Hz20 Hz
Compression RatiosCompression Ratios
Average Compression Ratios For Algorithms
Compression Bit StatusCompression Bit Status
00 15 bits15 bits 16 bits16 bits
30 Data Words 30 Data Words
11 15 bits15 bits
31 Data Words 31 Data Words
Block Set FormatCompression Status
30 – 16 bit Data Words
Bit Position Word
Bit Position Word
31 – 16 bit Data Words
1st Bit of 1st 16-bit word indicates the compression status ‘1’ - equals uncompressed ‘0’ – equals compressed
Transmission Error Transmission Error EffectsEffects
Effects of data errors can be Effects of data errors can be amplified when using data amplified when using data compressioncompression
If higher levels of error detection If higher levels of error detection and correction (EDAC) are needed, and correction (EDAC) are needed, one or more data words can be one or more data words can be dedicated to EDACdedicated to EDAC
Transmission Error Transmission Error EffectsEffects
Standard 1553 Error CheckingStandard 1553 Error Checking Bit Errors can be detectedBit Errors can be detected Exception – multiple-bit errors without Exception – multiple-bit errors without
parity change cannot be detected parity change cannot be detected Common Value TrackingCommon Value Tracking
If an undetected error is in the bit position If an undetected error is in the bit position word, multiple words can be corrupted.word, multiple words can be corrupted.
If an undetected error is in the data word, If an undetected error is in the data word, only that word location is impactedonly that word location is impacted
Transmission Error Transmission Error EffectsEffects
Modified Run-Length Compression Modified Run-Length Compression Like zero tracking a error in the bit Like zero tracking a error in the bit
position word can invalidate a runposition word can invalidate a run Error dramatically worse result than that Error dramatically worse result than that
of zero-trackingof zero-tracking Differential EncodingDifferential Encoding
Error in address word can result Error in address word can result incorrect updatingincorrect updating
Worst Case – All data words are updatedWorst Case – All data words are updated Further Research RequiredFurther Research Required
Future ResearchFuture Research Error Handling Routines Error Handling Routines
Effects of mode-changing and start-Effects of mode-changing and start-upup
Timing analysis for Run-Length and Timing analysis for Run-Length and Differential EncodingDifferential Encoding
ConclusionsConclusions Reviewed Statistical Analysis of Trace DataReviewed Statistical Analysis of Trace Data
Able to achieve compression ratios greater Able to achieve compression ratios greater than one for all algorithmsthan one for all algorithms
Discussed Error AnalysisDiscussed Error Analysis
Preliminary timing simulations of timing Preliminary timing simulations of timing look promising look promising
AcknowledgementsAcknowledgements Dr. Russell DurenDr. Russell Duren
Dr. Michael ThompsonDr. Michael Thompson
QUESTIONS?QUESTIONS?