application of data compression to the mil-std-1553 data bus scholar’s day feb. 1, 2008 by bernard...

30
Application of Data Application of Data Compression to the Compression to the MIL-STD-1553 Data Bus MIL-STD-1553 Data Bus Scholar’s Day Scholar’s Day Feb. 1, 2008 Feb. 1, 2008 By Bernard Lam By Bernard Lam

Upload: claire-lyons

Post on 01-Jan-2016

228 views

Category:

Documents


1 download

TRANSCRIPT

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 To extend the bandwidth capabilities of MIL-STD-1553 Bus, using compression MIL-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 Analysis

Get 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 Replacement of MIL-STD-1553 with updated bus protocol, such as with updated bus protocol, such as Fibre Channel, not a viable solution Fibre 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 % Zeros

78.6%90.1%96.3%Max % Zeros

5 Hz10 Hz20 Hz

Bus Trace AnalysisBus Trace Analysis

Percent of Zeros

Significant amount of zeros

3.3%3.3%3.9%Avg. % Changes

2%0%2.0%Min % Changes

78.6%27.5%21.7%Max % Changes

5 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 Ratio

compressed size

AFC1

AFC1

FFFF

FFFF

compress decompress AFC1

AFC1

FFFF

FFFF

yyyy

xxxx

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)

486486AA

0099

0088

00BB

0077

0066

AC9FAC9F55

4864860044

AC9FAC9F595933

5959FFFFFFFF22

FFFFFFFF0011

CCBBDD000000

EncodeEncoded Data d Data (Hex)(Hex)

ZTZTInput Input Data Data (Hex)(Hex)

Word Word Count Count (Hex)(Hex)

00

00

11

11

11

00

11

11

11

11

00

11 __

_

12_ 2.4

5

Original SizeCompression Ratio

Compressed 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)

98409840AA

9840984099

5604560488

B1F4B1F4BB

5604560477

5604560466

B1F4B1F45604560455

984098405604560444

56045604FFFFFFFF33

FFFFFFFF0022

000011

6677AA000000

EncodeEncoded Data d Data (Hex)(Hex)

RTRTInput Input Data Data (Hex)(Hex)

Word Word Count Count (Hex)(Hex)

00

11

11

00

00

11

00

11

11

11

11

00

__

_

12_ 2

6

Original SizeCompression Ratio

Compressed 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 A differential scheme takes advantage of the fact that for a given advantage of the fact that for a given rate group one transmission to the rate group one transmission to the next does not changenext does not change

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.4

5

Original SizeCompression Ratio

Compressed Size

Compression Ratio

11A14FA14F00520052BB

008966896689668966AA

11FDA9FDA98966896699

119FB29FB22222222288

00FFFFFFFFFFFFFFFF77

00FFFFFFFFFFFFFFFF66

00654265426542654255

A14FA14F00000000000000000044

FDA9FDA900000000000000000033

9FB29FB21112F812F8AF58AF5822

12F812F800081508150815081511

2200DD0000005400540054005400

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-Tracking

MC2MC1MC2MC1MC2MC1

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 Format

Compression 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?