Connexions

You are here: Home » Content » DMT: A/D and D/A Conversion
Content Actions
Lenses

What is a lens?

Lenses

A lens is a custom view of Connexions content. You can think of it as a fancy kind of list that will let you see Connexions through the eyes of organizations and people you trust.

What is in a lens?

Lens makers point to Connexions materials (modules and collections), creating a guide that includes their own comments and descriptive tags about the content.

Who can create a lens?

Any individual Connexions member, a community, or a respected organization.

This content is ...
Affiliated with (?)
This content is either by members of the organizations listed or about topics related to the organizations listed. Click each link to see a list of all content affiliated with the organization.
  • This module is included inLens: Rice University ELEC 301 Project Lens
    By: Rice University ELEC 301As a part of collection:"ECE 301 Projects Fall 2003"

    Click the "Rice University ELEC 301 Projects" link to see all content affiliated with them.

    Rice University ELEC 301 Projects
  • This module is included inLens: Rice University OpenCourseWare
    By: OpenCourseWare ConsortiumAs a part of collection:"ECE 301 Projects Fall 2003"

    Click the "Rice University OCW" link to see all content affiliated with them.

    Rice University OCW
Tags

(?)

These tags come from the endorsement, affiliation, and other lenses that include this content.

DMT: A/D and D/A Conversion

Module by: Cosme Garza

Summary: Gives details about the A/D and D/A converters used in our DMT project.

Why, you might ask, did we implement our system by using a sampled analog waveform as the input rather than an arbitrary bit stream? First, it allowed us to actaully see and hear the errors introduced by a noisy channel, rather than just having a tally of the bit errors. Second, we found it motivational to have a visible goal (i.e. the input waveform) to shoot for as we watched our results improved with every version of our code. Finally, it gave us more experience coding and lets us put these nifty plots in this module, which helps constrast the encoded time-domain plots seen in other subsystems with a real speech signal.

Analog-to-Digital (A/D)

The A/D converter in our system takes in a MATLAB vector corresponding to a sampled analog signal and converts it to a bit stream. This is a two step process: quantization and bit assignment. In quantization, the amplitude axis of the input signal is broken up into 2^B levels and each sample is rounded to the nearest level. Each level is assigned a B-bit binary number, so the length Q input vector of samples is mapped to a length BQ bitstream. Below are figures of the input and quantized input waveforms.
Input sampled waveform
speechin.jpg
Figure 1: The input waveform used was the 'Handel' sound file built into MATLAB
Quantized input waveform
quantin.jpg
Figure 2: Quantized version of 'Handel'

Digital-to-Analog (D/A)

The D/A converter in our system performs the inverse operation of the A/D converter: it takes in a MATLAB bitsream and converts it to sampled analog signal. Here, it is only a one step process: since we performed B-bit A/D conversion, we assign each block of B bits the original associated quantization level. There is an implicit error induced in D/A conversion due to quantization: since we originally rounded the sampled points to the nearest level, the information regarding their exact values is lost. This is called quantization error. However, with a speech waveform, a 4-bit (16 quantization level) approximation of the signal sounds reasonably close to the real thing. To actually see how well our output signal matched up with our input, we compared it with a quantized version of the input waveform.
Other sources for information about A/D conversion: Amplitude Quantization
Our related MATLAB functions: a2d.m, d2a.m

Comments, questions, feedback, criticisms?

Send feedback