CU website

ECEN 2120

Information

Assignments

Lecture Schedule

Supporting Material

Syllabus

Staff

 

About The Course

You should look at the catalog description for information about academic credit and prerequisites.

Our objective in this course is to familiarize you with the way a computer interacts with its environment, so that you can design systems using an appropriate mix of hardware and software. We can only reach this objective by teaching you general principles; the intricate details of the latest processor will be rendered obsolete by technical innovation before you graduate!

Although the course stresses general principles, those principles must be practiced with a specific processor. We have chosen the Motorola 68000 for this role. The 68000 and later members of its family are commonly used in a wide range of embedded systems. It illustrates all of the basic ideas, and the architecture is relatively free of odd quirks.

You will learn the material through a combination of reading, discussion, and assignments. Your mastery will be assessed via three examinations.

Reading

The text for this course is the second edition of The Motorola MC68000 Microprocessor Family: Assembly Language, Interface Design, and System Design, by Thomas L. Harman and David T. Hein. It was published in 1996 by Prentice-Hall, and its ISBN is 0-13-158742-0.

Harman and Hein provide an encyclopedic treatment of the 68000 and discuss how it fits into the family of related processors. They explain all of the central processor instructions, and the assembly language in which algorithms can be constructed using those instructions. Important I/O interfaces are described in detail, giving sample programs to manipulate them. General principles of programming methodology are also mentioned and illustrated.

Unfortunately, an encyclopedic treatment of a single computer usually does not provide the best explanation of basic principles because the presentation order and attention to detail obscures important points. Nevertheless, the attention to detail is vital if one actually wants to test one's understanding by building working systems. We believe that this text represents the best compromise available, and that it meets the needs of the course.

Because the text is focused on the MC68000, it does not cover the higher-level aspects of controlling external devices and concurrent processes. For this material, we turn to the second edition of Operating Systems, by Andrew Tanenbaum and Albert S. Woodhull. It was published in 1997 by Prentice-Hall, and its ISBN is 0-13-638677-6. A reference to the relevant material from this book is found on the Supporting Materials page.

Each of the classroom sessions has an associated set of required reading from the text, manuals, or other documents. We have put PDF or HTML files of the material not found in the text but, that constitute required reading on the Supporting Materials page. Thus you will not need to copy those sections or contend with your classmates for access to the physical material.

Do the required reading before you come to class. Be prepared to ask questions and discuss the material with your classmates and the professor during the class and laboratory periods. You are responsible for all of the material covered by the required reading, whether or not it is discussed in class.

Classroom Sessions

The purpose of the classroom sessions is to discuss the course material, solidifying your understanding and exposing areas that are unclear. Topics are partitioned among class sessions according to the faculty's experience with the amount of time students need to absorb them. Since every student brings different experiences to the class, however, we yield authority over the flow of information within a given class period to you. You must accept this authority by preparing carefully, contributing to the discussion, determining how deeply to explore each issue, and deciding when to switch topics.

Assignments

The general purpose of assignments is to focus your attention on important aspects of the material, giving you practice in applying your knowledge and exposing any areas of misunderstanding. Each assignment specifies the areas of interest and outlines what you are expected to gain from doing it.

Assignments are required each week, and involve both written work to be handed in and practical work to be demonstrated in the laboratory. Written work is due at the beginning of your second assigned laboratory period each week; demonstrations of practical work must be given no later than your first assigned laboratory period the following week. Late written work and demonstrations will not be accepted under any circumstances. By prior arrangement, with sufficient justification, you may be excused from an assignment. You may also be excused after the fact due to a serious personal emergency, but such an excuse will require copious documentation.

Computer Resources

The computers in ECEE 282 are used for this class. They are execution engines only, with all user files residing on the department's central server. In order to use the machines, you must have an account on that server. You may already have such an account, since all of the department's laboratories use the same server and student accounts are retained from semester to semester.

If you don't have an account on the ECE server, you must create one before your first laboratory session. Instructions for account creation are available at http://eces.colorado.edu. You must use a public terminal (i.e. not a machine in an ECE Laboratory) to create your account.

Your account on the ECE server will be your home directory for any work you do in this course. That is, once you have established an account you will be able to log onto the ECEN 2120 machines in the lab and you will be able to access files stored on the server via the Z: drive. When you are in the laboratory, you should always work from (a descendant of) your home directory on the Z: drive.

Written Material

Each assignment requires you to answer a set of questions, prepare a design document, or prepare a test plan. These documents should help you to organize your attack on the problem, forcing you to think about the basic principles on which your solution must be based. They will prepare you for class discussion of any sticky points, and allow you to use the lab period and the presence of your TA to best advantage.

It is important to note that there is no one ``right'' answer to many of the assignments. A solution requires you to weigh a number of viable alternatives, and make a consistent set of choices. This means that you must think about your approach, identify decision points, and develop appropriate strategies. Answering the questions associated with early assignments allows you to practice these skills within a given framework. As the semester progresses, and you gain experience, the burden of creating this framework is shifted to you.

Demonstrations

You are responsible for preparing appropriate demonstrations of your practical work. For each assignment, prepare a demonstration lasting no more than five minutes
  • verifying that you have completed the assignment and
  • showing that you understand the principles the assignment illustrates.
After the demonstration, the TA might ask questions about the assignment.

Each demonstration is worth some number of points, and will be graded on the basis of clarity (50%) and demonstrated understanding (50%).

You will not be able to demonstrate everything you have done in five minutes, so you must be selective. For example, if being able to do A depends upon being able to do B, then demonstrating that you can do A also demonstrates that B has been done. The ability to effectively present your work is vital to success in engineering, or in any other creative career. You will almost invariably be making such presentations under a time constraint, and therefore they will have to be carefully planned.

Examinations

The dates and times of the examinations are:

FinalWednesday, May 7th7:30am-10:00am

Examinations are intended to measure your individual mastery of the material. They concentrate on your understanding of the important concepts, rather than your ability to memorize details. (Look at some previous examinations to get an idea of the kinds of questions you might expect.)

Group discussions, in which you try to explain course material to your peers, are a good way to study for these examinations: The best way to learn something is to try to explain it to someone else. However, it is important that you limit your frustration! If the group has a question that baffles all of its members, it's time to see the instructor or one of the TA's.

The University's final examination policy states that when a student has three or more examinations on the same day, they are entitled to arrange an alternative examination for the last exam or exams scheduled on that day. Such arrangements must be made no later than the end of the sixth week of the semester. Students are expected to provide evidence that they have three or more examinations to qualify for the exemption. Since our final exam is the second one of the day, the policy does not apply to this course.

Grading Policy

The primary assessment vehicle in this course is the examinations. Each hour exam will provide 15% of your total points and the final exam will provide 35%. Assignments are responsible for the remaining 35%.

Grades will be assigned according to the University's standardized grading system (see the University of Colorado Catalog):

A-superior/excellent
B-good/better than average
C-competent/average
D-minimum passing
F-failing

Periodically, grades will be posted for this course. You are responsible for verifying that the individual grades reported for you are correct. If there are any problems with the grades, they must be reported to the instructor before 5pm on the last day of classes.

Because of federal privacy regulations, we are not allowed to use any part of your student ID to identify you, nor are we allowed to present grades for individual students in alphabetical order. At the time of the first exam, you will be asked to provide an identifier that will be used as a ``Grade ID'' for reporting grades. You will also have the option not to have your grade posted.


Instructor Revision 1.36 (2007/08/27 00:15:38)