Digital computers and digital information processing systems; Boolean algebra, principles and methodology of logic design; machine language programming; register transfer logic; microprocessor hardware, software and interfacing; fundamentals of circuits and systems; computer organization and control; memory systems, arithmetic unit design. Occasional laboratory exercises. Prerequisites: CSE 131 or 126. Credit: 3 units.
This is a first course in digital logic design and elements of computer architecture. The course covers much of the Wakerly textbook. The book comes with a CD ROM for the student edition of the Xilinx logic design tools. These will be used throughout the course, in both lectures and homework. Schematic capture, VHDL and logic simulation will all be introduced and used fairly extensively. The tools are also available from the Xilinx web site (details below).
Class Preparation There are assignments for each class that will be posted on the web site (see table below). These include reading and doing a couple problems covered by the reading. Each class will start with a quick review of the material for that day. This is not intended as an in-depth review, but rather a chance for you to bring up questions that you could not work out before class. I will then pose questions for each of several students. Your responses to these questions will constitute your class participation grade. (Note that if you are one of the people I call on but you're not there, you will get zero credit for that question. If you plan to be absent, be sure to let me know in advance. Email is fine.) We'll typically spend the remainder of the class on some activity/lecture that will give you a chance to further deepen your understanding of the material and develop your design skills.
Problem Sets and Quizzes. Quizzes will be given weekly, every Wednesday
when problem sets are due.
Quiz problems are based directly on problem sets. The problem sets will appear
on the
web site. The web site provides both the problems and the solutions.
You are strongly encouraged to work the problems on your own
before consulting the solutions. This is the best preparation for the quizzes. Problem sets are not collected or graded. However, the course
TAs will review your solutions on request and will help you with any
questions you may have. You are encouraged to form study groups and to
work with your fellow students to improve your understanding of the
course material, but don't let this become a crutch. The only way
to really learn the material is to work problems on your own.
On quizzes and exams you will not be allowed to use any calculation device.
Please know how to do arithmetic and base conversions without such aids.
The two exams are closed-book except that you will be allowed one 8.5x11 inch cheat-sheet
that will be handwritten (no photocopies or mechanical productions).
Quizzes are strictly closed-book with no cheat-sheet allowed.
Design Problems. The design problems involve use of computer-aided design tools to design and simulate circuits to solve particular problems. Several design problems will be assigned during the semester. Some of these require considerable time and effort. Do not leave them to the last minute. You are expected to do ALL your own work on design problems. You may discuss general approaches to the design problems with your fellow students, and the TAs will provide hints and general guidance to point you in the right direction. However, you are expected to turn in your own work and only your own work. You should not share any specific details of your design with other students. Sharing of schematics, VHDL code, simulation output or any other written material is expressly forbidden. Any group of students found to have collaborated inappropriately on a design problem will have the full value of the design problem deducted from the grades of all students involved. Repeat offenses will not be treated so leniently.
Expectations. This course covers a great deal of material and you will need to devote substantial time and effort to mastering it. You should plan to read the textbook, work problem sets and do the design problems. You cannot expect to learn the material simply by attending class. Engineering is not a spectator sport. It requires your active and energetic participation. The good news is that the more you let yourself get involved in what you're doing, the more you will learn and the more you will enjoy the creative and inventive aspects of engineering that make it both fun and rewarding.
Late Policy. Design problems are due at the beginning of class on the day indicated. Solutions will be posted on the web site after the due date. Late submissions will not be accepted, not even for partial credit. No exceptions. If, for some reason, you cannot make it to class, have a friend bring it or turn it in to the instructor any time before the class when due. If you come late to a class or have to leave early and miss a quiz or are called on for a question, you will receive no credit unless prior arrangements have been made.
On-line Communication. Most information about the course can be obtained electronically. All homework will be posted online as well as the solutions.
There is also a link to the web site for the textbook. This includes supplementary material that I encourage you to peruse and answers to selected textbook problems. In addition, the course web site has a link to the Xilinx web site, which you will find useful when we start to use the Xilinx CAD software.
Computer Aided Design Tools.
The course makes extensive use of the Xilinx design
tools.
I STRONGLY RECOMMEND that you install the tools on a personal
PC if you have access to one, since CEC can get busy and at times the software
might not be available.
They will run fine on a laptop (I do it all the time).
They require close to 2 GB of disk space for installation
and in general, the more memory you have the better
(512 MB is adequate). They run fine on a 1 GHz class machine.
The tools are also available in the Urbauer labs (115/116) and login information
will be posted in class.
Consulting Hours. The primary role of the TAs in this course
is to help you learn the material. All of the TAs hold regular
consulting sessions. (Times below.) If you're having trouble
with the problem sets, or need some guidance to help you get started
on a design problem, take the time to go see the TAs, and they
will do their best to help you. Don't expect them to do your work for
you. They are there to help you learn how to do it yourself. Unless
otherwise noted, all will be in the Urbauer labs (Urbauer 115/116).
| 11:00 a.m.-1:00 p.m. | 11:30-1:30 p.m. |
2:30-4:30 p.m. | |
| Saturday | |||
| Sunday | Ben | ||
| Monday | Eitan | ||
| Tuesday | Ben | ||
| Wednesday | Eitan |
Examinations. There will be two exams given during the semester, during class periods. The mid-term exam is scheduled for Wednesday, October 10, in class. If this date needs to change, it will be announced at least two weeks prior to the exam date. The final exam will be given on Thursday December 22, 1:00 PM - 3:00 PM (not subject to change).
| Date | Lecture Notes | Wakerly | Problems (links at left) | Other |
| 8-29-2007 | 1.1-1.14 | - | 1.3, 1.7 | review web site, read Processor Tutorial |
| 9-5-2007 | 2.1-2.12 | 1.1-1.5, 4.2 | 2.1, 2.2, 2.3 | - |
| 9-10-2007 | 6.1-6.15 | - | 2.4 | - |
| 9-12-2007 | 3.1-3.8 | 4.1 | 3.1 | - |
| 9-17-2007 | 3.8-3.16 | 4.3 | 3.2, 3.3 | - |
| 9-19-2007 | 4.1-4.14 | 3.1-3.3 | 4.3, 4.4 | - |
| 9-24-2007 | 3.17-3.27 | 6.4.1-6.4.4, 6.5.1-6.5.2, 6.7.1-6.7.3 (in 3rd edition, 5.4.1-5.4.5, 5.5.1,-5.5.2, 5.7.1-5.7.3) |
- | |
| 9-26-2007 | 5.1-5.11 | 6.10.1-6.10.3, 6.11.1 (in 3rd edition, 5.10.1-5.10.3, 5.11.1) |
- | |
| 10-1-2007 | 5.12-5.22 | 6.9.1-6.9.3, 6.10.1-6.10.4, 6.11.1 (in 3rd edition, 5.9.1-5.9.3, 5.10.1,-5.10.4, 5.11.1) |
- | |
| 10-3-2007 | 7.1-7.13 | 5.1, 5.3.1-5.3.2,5.3.6, 5.3.7, 5.3.12 (in 3rd edition, 4.7.1-4.7.3, 4.7.7, 4.7.8, 4.7.10) |
online VHDL tutorial | |
| 10-8-2007 | catch-up | what you haven't read yet | ditto | - |
| 10-10-2007 | Midterm | Midterm Exam | Midterm | Midterm |
| 10-15-2007 | 7.1-7.15 | 5.1, 5.3.1-5.3.2,5.3.6, 5.3.7, 5.3.12 (in 3rd edition, 4.7.1-4.7.3, 4.7.7, 4.7.8, 4.7.10) |
- | |
| 10-17-2007 | S3 Board Tutorial | |||
| 10-22-2007 | 9.1-9.16 | 7.3-7.5, 7.7,7.8 | - | |
| 10-24-2007 | 9.17-9.20 | 7.3-7.5, 7.7,7.8 | - | |
| 10-29-2007 | 8.1-8.7 | 7.12 | online VHDL tutorial, sections 3, 4 | |
| 10-31-2007 | 9.21-9.30 | 7.1,7.2 | - | |
| 11-5-2007 | 8.8-8.14 | 8.9.1-8.9.3 | - | |
| 11-7-2007 | 10.1-10.10 | 8.2.1-8.2-5, 8.2.7, 8.4.1-8.4.4, 8.4.6, 8.5.1-8.5.4 | - | |
| 11-12-2007 | 10.11-10.26, 8.15-8.24 | - | - | |
| 11-14-2007 | 11.1-11.21 | - | Processor Tutorial | |
| 11-19-2007 | 12.1-12.15 | - | Processor Tutorial | |
| 11-26-2007 | 12.16-12.33 | - | Processor Tutorial | |
| 11-28-2007 | 13.1-13.11 | 9.2, 9.3, 9.4 | - | |
| 12-3-2007 | 14.1-14.14 | - | - | |
| 12-5-2007 | 14.15-14.20 | - | - | |
| 12-10-2007 | 15.1-15.9 | 9.1, 9.5, 9.6 | - |
Prepared by David M. Zar: dzar@wustl.edu, Updated Monday, October 22, 2007 .