Dr. Clincy Professor of CS Chapter 4 Handout #3 Dr. Clincy Professor of CS Notice: Exam 4 will cover all chapters, sections and lectures regarding data communications up to (but NOT including), "block coding". Today’s Agenda: Lecture 23_24_25 Go over Exam 3 Team works on final project (will close door to lab at 4pm) Dr. Clincy Lecture
Recap: Data Vs Signal Fully explain the difference between signal and data before getting into the details Today’s Lecture (Digital Transmission) DATA SIGNAL D D A Next Lecture (Analog Transmission) A D Dr. Clincy Lecture
Chapter 4: Digital Transmission Physical Layer Issues Chapter 4: Digital Transmission Dr. Clincy Lecture
DIGITAL-TO-DIGITAL CONVERSION Can represent digital data by using digital signals. The conversion involves three techniques: line coding – converting bit sequences to signals block coding – adding redundancy for error detection scrambling – deals with the long zero-level pulse issue Line coding is always needed; Block coding and scrambling may or may not be needed. Dr. Clincy Lecture
Line coding and decoding At Tx - Digital data represented as codes is converted to a digital signal via an encoder At Rx – Digital signal is converted back to digital codes via a decoder Dr. Clincy Lecture
Signal element versus data element Data element - smallest entity representing info Signal element – shortest unit of a digital signal (carriers) r – is the ratio of # of data elements carried per signal element Example of adding extra signal elements for synchronization Example of increasing data rate Dr. Clincy Lecture
Data Rate Versus Signal Rate Data rate (or bit rate) - # of data elements (or bits) transmitted in 1 second – bits-per-second is the unit Signal rate (pulse rate or baud rate) - # of signal elements transmitted in 1 second – baud is the unit OBJECTIVE ALWAYS: increase data rate while decreasing signal rate – more “bang” for the “buck” Is it intuitive that if you had a data pattern of all 0s or 1s, it would effect the signal rate ? Therefore to relate data-rate with signal-rate, the pattern matters. Worst Case Scenario – we need the maximum signaling rate (alternating 1/0s) Best Case Scenario – we need the minimum signaling rate (all 1/0s) Focus on average case S = c x N x 1/r N – data rate (bps) c – case factor S - # of signal elements r – ratio of data to signal Dr. Clincy Lecture
Example A signal is carrying data in which one data element is encoded as one signal element ( r = 1). If the bit rate is 100 kbps, what is the average value of the baud rate if c is between 0 and 1? Solution We assume that the average value of c is 1/2 . The baud rate is then Dr. Clincy Lecture
Bandwidth Now we understand what baud rate is And we understand what bit rate (or data rate) is Baud rate - # of carriers on the transport Data rate - # of passengers (or bits) in the carriers With this, we clearly see that baud rate effects bandwidth usage Signaling changes relate to frequency changes – therefore the bandwidth is proportionate with the baud rate: Bmin = c x N x 1/r or Nmax = 1/c x B x r minimum bandwidth maximum data rate (given the bandwidth) N – data rate C – case factor This formula is consistent with Nyquist formula r – data to signal ratio Dr. Clincy Lecture
Example The maximum data rate of a channel (see Chapter 3) is Nmax = 2 × B × log2 L (defined by the Nyquist formula). Does this agree with the previous formula for Nmax? Solution A signal with L levels actually can carry log2L bits per level. If each level corresponds to one signal element and we assume the average case (c = 1/2), then we have Dr. Clincy Lecture
Decoding Issue 1 Keep in mind the Rx decodes the digital signal – how is it done ? Rx determines a “moving average” of the signal’s power or voltage levels This average is called the baseline Then the Rx compares incoming signal power to this average (or baseline) If higher than the baseline, could be a 1 If lower than the baseline, could be a 0 In using such a technique, is it intuitive that long runs of 0s or 1s could skew the average (baseline) ?? – this is called baseline wandering (effects Rx’s ability to decode correctly) Dr. Clincy Lecture
Decoding Issue 2 Effect of lack of synchronization For the Rx, to correctly read the signal, both the Tx and Rx “bit intervals” must be EXACT Example of Rx timing off – therefore decoding the wrong data from the signal To fix this, the Tx could insert timing info into the data that synchs the Rx to the start, middle and end of a pulse – these points could reset an out-of-synch Rx Dr. Clincy Lecture
Example In a digital transmission, the receiver clock is 0.1 percent faster than the sender clock. How many extra bits per second does the receiver receive if the data rate is 1 kbps? How many if the data rate is 1 Mbps? Solution At 1 kbps, the receiver receives 1001 bps instead of 1000 bps. At 1 Mbps, the receiver receives 1,001,000 bps instead of 1,000,000 bps. NOTE: Keep in mind that a FASTER clock means SHORTER intervals Dr. Clincy Lecture
Line coding scheme categories Dr. Clincy Lecture
Unipolar NRZ scheme Data Signal Voltages on one side of the axis Positive voltage signifies 1 Almost zero voltage signifies 0 Power needed to send 1 bit unit of resistance Dr. Clincy Lecture
Polar NRZ-L and NRZ-I schemes (non-return-to-zero) change no change Voltages on both sides of the axis NRZ-L (level) version – voltage level determines the bit value NRZ-I (invert) version – voltage change or no-change determines the bit value (no change = 0, change = 1) Dr. Clincy Lecture
Polar RZ scheme Uses 3 values: positive, negative and zero Signal changes Not between bits BUT during the bit H-to-L in middle for 1 L-to-H in middle for 0 Positioning occurs at the beginning of the period Dr. Clincy Lecture
Polar biphase: Manchester and Differential Manchester Schemes Manchester: H-to-L=0, L-to-H=1 Differential Manchester: H-to-L or L-to-H at begin=0, No change at begin=1 Dr. Clincy Lecture
Bipolar schemes: AMI and pseudoternary Bipolar encoding uses 3 voltage levels: positive, negative and zero. One data element is at ZERO, while the others alternates between negative and positive Alternate Mark Inversion (AMI) scheme – neutral zero voltage is 0 and alternating positive and negative voltage represents 1 Pseudoternary scheme – vice versa from the AMI scheme Dr. Clincy Lecture
Multilevel Schemes These schemes attempt to increase the number of bits per baud Given m data elements, could produce 2m data patterns Given L levels, could produce Ln combinations of signal patterns (where n is the length of the signal patterns) If 2m = Ln, each data pattern is encoded into one signal pattern (1-to-1) If 2m < Ln, data patterns use a subset of signal patterns – could use the extra signal patterns for fixing baseline wandering and error detection Classify these codes as mBnL where: m – length of the binary pattern B – means Binary data n – length of the signal pattern L - # signaling levels (letters in place of L: B=2, T=3 and Q=4) Dr. Clincy Lecture
Multilevel: 2B1Q scheme 2B1Q Data patterns of size 2 bits Encodes 2-bit patterns in one signal element 4 levels of signals If previous level was positive and the next level becomes +3, represents 01 If previous level was positive and the next level becomes -3, represents 11 Dr. Clincy Lecture
Multilevel: 8B6T scheme Data patterns of size 8 bits Encodes 8-bit patterns in six signal elements Using 3 levels of signal Dr. Clincy Lecture
Multilevel: 4D-PAM5 scheme 4-dimensional five-level pulse amplitude modulation scheme Instead of transmitting in serial form – parts of the code are in sent in parallel over 4 wires (versus 1 wire) In this particular case, it would take ¼ less time to transmit Dr. Clincy Lecture
Multitransition: MLT-3 scheme Multi-line transmission, three-level scheme Uses three levels and three transition rules to jump between levels: - if the next bit is 0, there is no transition - if the next bit is 1 and the current level is not 0, the next level is 0 - if the next bit is 1 and the current level is 0, the next level is the opposite of the last nonzero level Dr. Clincy Lecture
Dr. Clincy Professor of CS Chapter 4 Handout #4 Dr. Clincy Professor of CS Dr. Clincy Lecture
Block coding concept Block coding provides redundancy for synchronization and error detection Block coding changes a block of m bits into a block of n bits (where n>m) Block coding is also called mB/nB encoding Dr. Clincy Lecture
Using block coding 4B/5B with NRZ-I line coding scheme Fixes that PROBLEM of long stream of 0s Use 4B/5B to change the long stream of 0s prior to using NRZ-I For example, for 4B/5B encoding, 4-bit groups or replaced with 5-bit groups and those 5-bit groups are re-combined – NOTE: the 5-bit code could be completely different from the original 4-bit code Dr. Clincy Lecture
4B/5B mapping codes Because the 5-bit code has 25 = 32 codes, the extra codes can be used for control sequences and error detection For example, for 4B/5B encoding, 4-bit groups or replaced with 5-bit groups and those 5-bit groups are re-combined – NOTE: the 5-bit code could be completely different from the original 4-bit code Dr. Clincy Lecture
8B/10B block encoding Eight binary, ten binary encoding scheme If there are more consecutive 0s over 1s (or vice versa), controller detects and complements either the 0s or 1s – uses 768 redundant bit groups for this Eight binary, ten binary encoding scheme 8-bit codes replaced with 10-bit codes Provide greater error detection 5 most significant bits are fed to 5B/6B encoder 3 least significant bits are fed to 3B/4B encoder Done to simplify mapping table Dr. Clincy Lecture
Scrambling The biphase encoding schemes are suited for long-distance communication due to bandwidth requirement. However, bipolar AMI encoding is good because of the narrow bandwidth requirement – however, long streams of 0s could throw off the synchronization In dealing with synchronization issue, we could substitute long zero-level pulses with a combination of other levels to provide synchronization This is called scrambling Dr. Clincy Lecture
AMI used with scrambling Unlike block coding, scrambling is done at the SAME time encoding is done System inserts the require pulses based on “scrambling rules” Two techniques: (1) bipolar with 8-zero substitution (B8ZS), (2) high-density bipolar 3-zero (HDB3) Dr. Clincy Lecture
Two cases of B8ZS scrambling technique Takes 8 consecutive zeros and replace with 000VB0VB where V denotes violation (a non-zero voltage not in accordance with the AMI rule) and B denotes bipolar (a non-zero voltage in accordance with AMI rule) Recall the Bipolar AMI scheme on page 110 [Alternate Mark Inversion (AMI) scheme – neutral zero voltage is 0 and alternating positive and negative voltage represents 1] Dr. Clincy Lecture
Different situations in HDB3 scrambling technique For HDB3, 4 consecutive zeros are replaced with 000V or B00V With the two choices, an even number of non-zero pulses can be maintained Rule 1: if the # of non-zero pulses is odd after the last substitution, use pattern 000V – which will make the total number even Because # of non-zero pulses here is even, used B00V. Now we have only 1 non-zero pulse (odd), so use 000V Since there are no non-zero pulses after the 2nd substitution, the 3rd substitution is B00V because this is an even case Rule 2: if the # of non-zero pulses is even after the last substitution, use pattern B00V – which will make the total number even Dr. Clincy Lecture
Block Coding Lecture completed Notice: Exam 4 will cover all chapters, sections and lectures regarding data communications up to (but NOT including), "block coding". Dr. Clincy Lecture