One of the greatest success stories that can be directly attributed to digital signal processing is the enormous improvement in the last 50 years or so of the quantity and quality of data that can be reliably transmitted between people or machines. At the beginning of this class, we gave you some examples of the dramatic change that technology in general but especially digital technology in the last 20 years has carried about when it comes to transmitting data over long distances. For instance, the transatlantic cables that allow telephony from Europe to the United States, have seen an improvement that went from five bits per second in 1866 with the first cable to 60 terabytes per second in 2012, and similarly something you use every day at home, your modem that allows you to connect to the Internet has increased its data rate from 1,200 bits per second in the '50s to 24 megabits per second with the current incarnation of ADSL. Now, what are the reasons behind this incredible success. Well, the first one clearly is the power of the DSP paradigm. The fact that DSP works with integers means that for instance signals are very easy to regenerate. We have seen an example in the introduction, and we will see it again in a second. Also digital filters allow us to implement very precise phase control, and we will see how important phases in the detection of a transmitted signal. Finally, we can seamlessly integrate adaptive algorithms into a DSP system. Adaptive algorithms are algorithmic procedures that adapt their behavior as a function of the received signal. It's a very hard things to do in our old hardware but very easy to do in digital hardware. As a reminder of what happens when we use digital signals for communication, think of the problem of transmitting a string of binary digits over an analog channel. To do that, we build a very simple signal, an analog signal, where we associate the values plus five volts to the symbol zero and minus five volts to the symbol one. Now the signal is analog, but it encodes binary information, namely it encodes a string of integers. When we transmit this over a wire, two things happen; the signal gets attenuated, and noise gets added to the signal. So what we receive at the other end of the channel is the original signal attenuated by a factor G, some to some random noise that corrupts the original signal. Now if you want to regenerate the signal, the first thing we do is undo the attenuation. So we multiply the received signal by a gain factor, that is the reciprocal of the attenuation. So we multiply the signal by G, we obtain a signal that has once again the amplitude of the original signal, but in so doing we also amplified noise, and so we have very unclean levels here which could cause all sorts of problems, but since we know that the signal is bi-level, all we need to do is threshold the signal, and when we see that it's positive, we set at plus five, and when we see that it's negative, we set it at minus five. This is easily accomplished in digital domain by taking the sign of the signal before undoing the attenuation factor, and this is the signal that we get at the other end of the transmission channel, and we can repeat this procedure as many times as we need, and that explains why we can send so much information over very very long cables that go all the way under the ocean. The second success factor for digital communications today comes from the algorithmic nature of DSP techniques. We have seen an example in image coding in JPEG where signal processing techniques such as the discrete cosine transform could be matched seamlessly to information theorem techniques that involve the compression of bitstreams, and this interplay between these two techniques from different domains creates such a powerful compression algorithms. Other everyday examples can be found in CDs or DVDs where you have encoding of acoustic or video information matched to powerful error correcting codes so that DVDs or CDs that are scratched or dusty still play. In communication systems, techniques such as trellis-coded modulation and Viterbi decoding are used to exploit all the capacity of an analog communication channel. The third success factor for digital communications is related to hardware advancements. We can have today miniaturized devices that we can keep in our pocket, we can have general purpose platforms used to develop advanced communication systems, so we don't need to develop specific hardware for each different task, and communication devices have become very power efficient so that we can have large data centers or central offices that process an enormous number of communication channels in parallel.