lab5_error_detection_correction

lab5_error_detection_correction - MASSACHUSETTS INSTITUTE...

Info iconThis preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon
6.02 Spring 2008 1 of 9 Lab #5 M ASSACHUSETTS I NSTITUTE OF T ECHNOLOGY D EPARTMENT OF E LECTRICAL E NGINEERING AND C OMPUTER S CIENCE 6.02: Introduction to EECS II Spring 2008 Lab #5: Error Detection and Correction Goal: Using Python, decode a sample bit stream as it might have come from a digital receiver. Provides exposure to the handling of packet framing, burst errors, and single-bit error correction. Instructions: 1. Complete the pre-lab (see first section below). There are questions to be answered; please write your responses on a separate sheet of paper and turn them in at the beginning of lab on Wednesday. 2. Complete the activities for Wednesday’s lab (see second section below). 3. Prepare the requested material and think about the questions posed on the Checkoff Sheet, then find a staff member to complete your post-lab interview. Pre-lab (due in lab on Wed, 3/19/08, at 9am or 2pm) For the next few labs we’ll be using Python, an easy-to-learn interpreted programming language that has a nice selection of data types including support for object-oriented programming, interesting control structures, and a huge (and growing) set of libraries that make it simple to implement almost any processing task. If you’d like to try out the 6.02 code on your own machine you’ll need to install: Python -- http://www.python.org/download/ wxPython (ansi version) -- http://www.wxpython.org/download.php There are pre-built binaries for Windows, Mac OS X and Linux. If you’d like to learn or brush up on Python, start with the 6.01 Resources webpage http://courses.csail.mit.edu/6.01/spring08/resource.html which has links to several quick tutorials. For a more comprehensive introduction, we recommend the Python Tutorial written by Python’s architect Guido von Rossum:
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
6.02 Spring 2008 2 of 9 Lab #5 http://docs.python.org/tut/tut.html The following sections of the Python Tutorial are particularly useful for what we’ll be doing in 6.02: Section 3: An Informal Introduction to Python Section 4.1: if Statements Section 4.2: for Statements Section 4.6: Defining Functions Section 5.1: More on Lists Section 5.5: Dictionaries Section 9.3: A First Look at Classes For the pre-lab, we’ll be reviewing the channel coding process that produced the bit stream you will decode during the lab on Wednesday. You’ll need the information presented here in order to correctly implement the decoding steps needed to recover the transmitted message. The purpose of the channel coding process is to add redundant information to the transmitted bit stream so that the receiver will be able to detect and correct errors that occurred along the way. As mentioned in lecture, there may be errors that can’t be corrected with even the additional information, a circumstance that will be handled by higher levels of the communication protocol, e.g., by checking for uncorrectable errors using, say, a CRC to confirm the correct receipt of the entire message and requesting a retransmission if the message is corrupted. Lab5.py is a Python module that defines several functions useful in channel coding tasks:
Background image of page 2
Image of page 3
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 9

lab5_error_detection_correction - MASSACHUSETTS INSTITUTE...

This preview shows document pages 1 - 3. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online