SpaceWire DC-Balanced Character Encoding for SpaceWire

Similar documents
Reducing SpaceWire Time-code Jitter

FAULT TOLERANT SYSTEMS

CSCI-1680 Physical Layer Link Layer I Rodrigo Fonseca

COMPUTER NETWORKS UNIT I. 1. What are the three criteria necessary for an effective and efficient networks?

SpaceWire ECSS-E50-12A International SpaceWire Seminar (ISWS 2003)

Implimentation of SpaceWire Standard in SpaceWire CODEC using VHDL

SpaceWire-RT Update. EU FP7 Project Russian and European Partners. SUAI, SubMicron, ELVEES University of Dundee, Astrium GmbH

SpaceWire Technologies deliver multi-gigabit data rates for on-board Spacecraft. SpaceTech Expo Gregor Cranston Business Development Manager

Distributed System Chapter 16 Issues in ch 17, ch 18

CSE 123A Computer Networks

Module 15: Network Structures

Islamic University of Gaza Faculty of Engineering Department of Computer Engineering ECOM 4021: Networks Discussion. Chapter 2.

Module 16: Distributed System Structures. Operating System Concepts 8 th Edition,

Data Link Layer (1) Networked Systems 3 Lecture 6

RAID SEMINAR REPORT /09/2004 Asha.P.M NO: 612 S7 ECE

Telemetry Standard RCC Document , Chapter 4, September 2007 CHAPTER 4 PULSE CODE MODULATION STANDARDS TABLE OF CONTENTS LIST OF FIGURES

SRI RAMAKRISHNA INSTITUTE OF TECHNOLOGY DEPARTMENT OF INFORMATION TECHNOLOGY COMPUTER NETWORKS UNIT - II DATA LINK LAYER

8. Selectable I/O Standards in Arria GX Devices

CSCI-1680 Link Layer I Rodrigo Fonseca

Some portions courtesy Robin Kravets and Steve Lumetta

Chapter 10 Error Detection and Correction. Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

Understanding Performance of PCI Express Systems

SPACEFIBRE. Session: SpaceWire Standardisation. Long Paper.

PCI Express 1.0a and 1.1 Add-In Card Transmitter Testing

Advanced Modulation and Coding Challenges

Inst: Chris Davison

CHAPTER 4 PULSE CODE MODULATION STANDARDS TABLE OF CONTENTS

8b/10b encoding - Wikipedia, the free encyclopedia

The Frozen Mountain irtc White Paper Series

Efficient Majority Logic Fault Detector/Corrector Using Euclidean Geometry Low Density Parity Check (EG-LDPC) Codes

A (Very Hand-Wavy) Introduction to. PCI-Express. Jonathan Heathcote

CSMC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala Set 4. September 09 CMSC417 Set 4 1

Advanced Computer Networks. Rab Nawaz Jadoon DCS. Assistant Professor COMSATS University, Lahore Pakistan. Department of Computer Science

Module 5. Broadcast Communication Networks. Version 2 CSE IIT, Kharagpur

UNIT-II 1. Discuss the issues in the data link layer. Answer:

Data Link Networks. Hardware Building Blocks. Nodes & Links. CS565 Data Link Networks 1

DesignCon SerDes Architectures and Applications. Dave Lewis, National Semiconductor Corporation

Proposed Technical Solution for Half Duplex SpW

SpaceWire 101. Webex Seminar. February 15th, 2006

ECE 4450:427/527 - Computer Networks Spring 2017

Fig.12.5 Serial Data Line during Serial Communication

AN EFFICIENT DESIGN OF VLSI ARCHITECTURE FOR FAULT DETECTION USING ORTHOGONAL LATIN SQUARES (OLS) CODES

Chapter 3. The Data Link Layer

Lecture (02) Operations on numbering systems

FPGA BASED ADAPTIVE RESOURCE EFFICIENT ERROR CONTROL METHODOLOGY FOR NETWORK ON CHIP


Direct Link Networks: Building Blocks (2.1), Encoding (2.2), Framing (2.3)

A New CDMA Encoding/Decoding Method for on- Chip Communication Network

EECS150 - Digital Design Lecture 20 - Finite State Machines Revisited

AES67 Audio Networking Quick Start Guide

The SpaceWire CODEC International SpaceWire Seminar (ISWS 2003) 4-5 November 2003, ESTEC Noordwijk, The Netherlands

Redundancy in fault tolerant computing. D. P. Siewiorek R.S. Swarz, Reliable Computer Systems, Prentice Hall, 1992

Appendix B. Standards-Track TCP Evaluation

MIB BROADCAST STREAM SPECIFICATION

MISB EG Motion Imagery Standards Board Engineering Guideline. 24 April Delivery of Low Bandwidth Motion Imagery. 1 Scope.

CompSci 356: Computer Network Architectures. Lecture 4: Link layer: Encoding, Framing, and Error Detection Ref. Chap 2.2, 2.3,2.4

Multi-protocol monitoring using oscilloscopes

Section 3 - Backplane Architecture Backplane Designer s Guide

In modern computers data is usually stored in files, that can be small or very, very large. One might assume that, when we transfer a file from one

Module 16: Distributed System Structures

Optimizing Bandwidth Utilization in Packet Based Telemetry Systems

Chapter 6 Digital Data Communications Techniques

RFC 803. Dacom 450/500 Facsimile Data Transcoding A. Agarwal, M. J. O Connor and D. L. Mills 2 November Introduction

Advantages and disadvantages

Content beyond Syllabus. Parity checker and generator


Advances in Storage Connectivity ATTO Ultra320 SCSI The Next Generation A Technical Brief

The Data Link Layer Chapter 3

Overview. Performance metrics - Section 1.5 Direct link networks Hardware building blocks - Section 2.1 Encoding - Section 2.2 Framing - Section 2.

5. Current Sharing in Power Arrays

CSMC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. Nov 1,

MODEL FOR DELAY FAULTS BASED UPON PATHS

Housekeeping. Fall /5 CptS/EE 555 1

CHAPTER 17 - NETWORK AMD DISTRIBUTED SYSTEMS

Trading Capacity for Data Protection

Binary Systems and Codes

Configuration of Synchronous Protocols

Gigabit Ethernet Serial Link Codes

BISTed cores and Test Time Minimization in NOC-based Systems

EC500. Design of Secure and Reliable Hardware. Lecture 1 & 2

Chapter 10 Error Detection and Correction 10.1

Links. CS125 - mylinks 1 1/22/14

Data and Computer Communications. Protocols and Architecture

The Gray Code. Script

Lecture / The Data Link Layer: Framing and Error Detection

Layer 3: Network Layer. 9. Mar INF-3190: Switching and Routing

8b/10b Encoder/Decoder

CSC310 Information Theory. Lecture 22: Erasure (Deletion) Channels & Digital Fountain Codes. November 30, 2005 see

University of New Hampshire InterOperability Laboratory Gigabit Ethernet Consortium

CSEP 561 Error detection & correction. David Wetherall

SELECTION OF METRICS (CONT) Gaia Maselli

Lecture 3: Modulation & Layering"

Data link layer functions. 2 Computer Networks Data Communications. Framing (1) Framing (2) Parity Checking (1) Error Detection

ECE 333: Introduction to Communication Networks Fall Lecture 6: Data Link Layer II

RCRT:Rate-Controlled Reliable Transport Protocol for Wireless Sensor Networks

Digital Fundamentals

(Refer Slide Time: 2:20)

Selecting PLLs for ASIC Applications Requires Tradeoffs

plc numbers Encoded values; BCD and ASCII Error detection; parity, gray code and checksums

ABSTRACT ALGEBRA FINAL PROJECT: GROUP CODES AND COSET DECODING

Transcription:

DC-Balanced Character Encoding for Cliff Kimmery

Introduction Many applications migrating to from alternate communications protocols (e.g. MIL-STD-1553) provide much greater tolerance for long-term and transient differences between ground references Standard has limited support for applications requiring galvanic isolation between link endpoints Limited common-mode tolerance of ANSI/TIA/EIA 644 LVDS devices Unbalanced character-level encoding method established by ECSS E ST 50 12C, Clause 7 [1] Proposed solution: a practical alternative character-level encoding method Support galvanic isolation using conventional Alternating Current (AC)-coupling circuits Maintain current ANSI/TIA/EIA 644 LVDS technology Maintain the clock recovery benefits of Data-Strobe encoding Provide error detection comparable to the standard parity check Minimize the impact to link bandwidth efficiency [1] ECSS, Space engineering Links, nodes, routers and networks, ECSS-E-ST-50-12C, 31 July 2008, pages 52-56, http://spacewire.esa.int/content/standard/ecss-e50-12a.php November 8-10, 2011 International Conference 2011 2

Introduction The result is a class of codes that simultaneously Direct Current (DC)-balance both the Data and Strobe bit streams Members of the class with a larger code size increase encoding overhead Members with a smaller code size have greater algorithm complexity To track running disparity, etc. Examples of the class 10 bits smaller code size and complex encoding method 12 bits large code size and simple encoding method 14 bits large code size and complex encoding method Note that the term character is used in this presentation as defined by the standard and includes data characters and control characters The term code is defined as a binary value used to represent a character when transmitted on the link In standard, a character and the corresponding code are identical November 8-10, 2011 International Conference 2011 3

Outline character encoding background DC-Balanced character encoding background Development of DC-Balanced character encoding Evaluation of code value candidates Code set size Code set selection results Effects of code length on bandwidth efficiency Error detection capability Results and conclusions Summary November 8-10, 2011 International Conference 2011 4

Character Encoding Background character-level encoding starts with Non-Returnto-Zero (NRZ) encoded ten-bit characters serialized as the Data signal The Strobe signal is generated from the Data signal by Exclusive OR (XOR) with an alternating binary one-zero pattern of identical length (see the figure) The alternating one-zero pattern represents a one-half-rate clock with transitions corresponding to the bit intervals of the Data signal Commonly known as a Double-Data Rate (DDR) clock Because standard encoding uses raw binary values to form NRZ-encoded characters for the Data signal, the degree of DC balancing achieved is determined by the character sequence transmitted Introducing a balanced Data signal bit stream doesn t automatically create a balanced bit stream for the corresponding Strobe signal Data Strobe Clock November 8-10, 2011 International Conference 2011 5

DC-Balanced Character Encoding Background Each transmitted bit stream (Data and Strobe) must have the same transition-rich characteristics so that the frequency content is equivalent The DC-Balanced Data character encoding must result in comparable transition density and run-length for Data and Strobe The initial transition density and run-length benchmarks were established from the well-known 8b10b encoding method 8b10b encoding guarantees a transition-rich data stream so that the receiving device can recover clock from the serial data (embedded clock) Definition of transition rich [2] For every 20 successive bits transferred 1. The disparity (the difference in the number of ones and the number of zeros) cannot be more than two 2. There cannot be more than five ones or five zeros in a row Why not use the 8b10b encoding method directly? Because of the need to DC-balance both the Data and Strobe signals simultaneously The Strobe bit stream generated from an 8b10b encoded Data bit stream does not have adequate DC-balancing characteristics [2] Alex Goldhammer and John Ayer Jr., Understanding Performance of PCI Express Systems, September 4, 2008, page 2, http://www.xilinx.com/support/documentation/white_papers/wp350.pdf November 8-10, 2011 International Conference 2011 6

Development of DC-Balanced Character Encoding Convert the 8b10b run-length benchmark criterion to a form that allows easy evaluation of candidate binary values The number of consecutive same-value bits within any two successive encoded characters should be five or less Including the boundary between the two characters Translating the disparity benchmark criterion is nontrivial when the code size is greater than 10 bits Use a somewhat stronger approximation The disparity of any single code must be one or less (corresponding to two consecutive codes with combined disparity of two or less) Each code that has nonzero disparity must have at least one alternate code with the opposite (negative) disparity Any character can occur in combination with any other character (including itself) A binary value with an even number of bits has even disparity 0, 2, 4, etc. A binary value with an odd number of bits has odd disparity 1, 3, 5, etc. November 8-10, 2011 International Conference 2011 7

Evaluation of Code Value Candidates Selection for membership in a candidate DC-Balanced code set was based on the following parameters 1. Maximum disparity (8b10b criterion: 2 for any 20-bit sequence) The disparity of each code in the code set must be no greater than the maximum disparity parameter 2. Maximum run-length (8b10b criterion: 5 for any 20-bit sequence) The number of consecutive one bits or zero bits must be no greater than the maximum run-length parameter 3. Maximum leading run-length The number of consecutive leading one bits or zero bits must be no greater than the maximum leading run-length parameter 4. Maximum trailing run-length The number of consecutive trailing one bits or zero bits must be no greater than the maximum trailing run-length parameter The code boundary run-length issue was addressed by including the maximum leading and maximum trailing run-length parameters Maximum Disparity Maximum Run-Length Maximum Leading Run-Length Maximum Trailing Run-Length 1 5 2 3 November 8-10, 2011 International Conference 2011 8

Code Set Size The character set has 256 data characters and 4 control characters At least 260 distinct code pairs are needed to encode the complete character set A set of code pairs with a nonzero maximum disparity characteristic must include a minimum of 520 distinct code pairs Each pair must be matched with another pair with the opposite disparity to allow representation of the same character with either pair Odd-length codes must always include a minimum of 1,040 distinct code pairs Non-zero disparity is inherent The nature of Data-Strobe encoding causes two identical odd-length Data codes in succession to produce different Strobe codes It is convenient to require that successive identical characters be encoded to different odd-length codes November 8-10, 2011 International Conference 2011 9

Code Set Selection Results Code Result by Length Bits Maximum Disparity Maximum Run-Length Set Size Even length codes require a set size of 260 (disparity 0) or 520 10 4 7 552 12 0 6 284 14 2 4 1144 16 0 4 260 Odd length codes require a set size of 1,040 11 3 8 1048 13 1 7 1040 15 1 4 1188 Note: the Maximum Run-Length is the greater of the Run-Length and the sum of the Leading Run-Length and the Trailing Run-Length Note: the Set Size is the number of codes that met the corresponding evaluation criteria. The codes to be used are chosen from the full set as desired. November 8-10, 2011 International Conference 2011 10

Effects of Code Length on Bandwidth Efficiency Standard characters have differing lengths depending upon function Any code length greater than the standard length can have a significant impact on link bandwidth efficiency Overall link efficiency is dynamically determined by the mix of characters transmitted Data characters and FCT characters dominate link traffic End-of-packet characters are relatively rare Time code characters are rarer still Null characters are only used to keep the link active November 8-10, 2011 International Conference 2011 11

Error Detection Capability Standard adds a parity bit to each encoded character to detect transmission bit errors The error response is to disconnect the link, report the error and attempt to reconnect the link (the same approach is used to recover from all link errors) The DC-Balanced codes have intrinsic characteristics that make transmission error detection straightforward The error response defined by standard is unchanged The DC-Balanced decoding mechanism has inherent error detection capability since an unrecognized code is considered an error A transmission error occurring in a DC-Balanced code must convert that code to a different valid code for the error to be undetectable The members of a DC-Balanced code set can be selected to have sufficient Hamming distance to prevent many transmission errors from being undetectable Either the Data code or the Strobe code can be decoded to the equivalent character In cases where an adequate Hamming distance is not achievable, the Data code and the Strobe code can be independently decoded and then compared to detect most transmission errors The two mechanisms can clearly be combined to provide very robust transmission error detection November 8-10, 2011 International Conference 2011 12

Results and Conclusions The 15-bit length code set is the most bandwidth efficient of the DC-Balanced code sets that fully met the 8b10b benchmark criteria The bandwidth efficiency is at best 63% that of standard The other fully qualified code set (16-bits) is less efficient than the 15-bit code set, but is simpler to implement Relaxing the benchmark criteria allows use of DC-Balanced code sets with greater bandwidth efficiency The effects of relaxing the benchmark criteria on link performance must be determined by signal integrity analysis and experimentation The 12-bit length DC-Balanced code set has the advantage of zero-disparity implementation simplicity Exceeds the run-length benchmark criterion by 20% The bandwidth efficiency can be improved to approximately 80% by choosing an FCT code with at most 6-bit length November 8-10, 2011 International Conference 2011 13

Results and Conclusions The 10-bit DC-Balanced code has the best bandwidth efficiency Improves the bandwidth efficiency to within 5% of standard when using a 6-bit FCT code length Misses the disparity criterion significantly The achievable running disparity varies based on the tracking method used DC-Balanced encoding must track the running disparity for both signals (Data and Strobe) simultaneously The goal is to minimize the running disparity of each signal without unnecessarily minimizing one at the expense of the other Modeling has shown that the 10-bit code set running disparity can be limited to eight or less for a bit stream composed of a random code sequence Misses the run-length criterion by 40% (no mitigation method is available) The ability to take advantage of the bandwidth efficiency of the 10- bit code set will depend on signal integrity analysis and experimentation November 8-10, 2011 International Conference 2011 14

Summary An alternative character-level encoding method Supports galvanic isolation of links using conventional AC-coupling circuits Limits changes to the character-level of the standard Provides transmission error detection comparable to the standard parity check The major tradeoffs to be considered The impacts to link bandwidth efficiency Encoding/decoding implementation complexity Frequency performance using AC-coupled circuits Needs further analysis and experimentation November 8-10, 2011 International Conference 2011 15