ELEC 379 : Digital and Microcomputer System Design

Instructor

Ed Casas. You can contact me by e-mail (edc@ece.ubc.ca) or at my office in MCLD 451 (822-2592) (preferably during office hours).

Office Hours

TBD.

Lectures and Tutorials

Monday, Wednesdays and Fridays, 12:30 to 1:30 AM in MCLD 402. Tutorials may cover new and important material and attendance is required.

Labs

Alternate Thursdays, in MCLD 254. You must register through Telereg for one of the three sections. Sections A and B are from 11:30 to 2:30 while section C is from 8:30 to 11:30. Lab sections A and C will start January 15.

All labs are to be done individually.

The tentative lab schedule is as follows:

Lab   Topic                                Starts (L2A) Report Due

 1    Counter and LED Display              Jan 14        Jan 28
 2    LED Display Peripheral (o/p port)    Jan 28        Feb 11
 3    Timer Peripheral (i/p port)          Feb 11        Mar  4 
 4    Interrupt-Driven I/O Port            Mar  4        Mar 18
 5    to be decided                        Mar 18        Apr  1 
Dates are shown for section L2A and L2C, section L2B dates are one week later except that the last lab will be due on Apr 8.

All labs will require that you design and simulate a circuit before the lab. You will be required to hand in the source code for your design before starting the lab.

You must print out the source code and demonstrate your working design to the TA before the end of the lab session. The TA will then ask you one or two questions about your program to make sure you understand the material. If did your own work you shouldn't have any problems answering the question(s).

A short lab report must be handed in to the course assignment box (see below) the start of your next lab on the due dates shown above. This report should include a brief description of your design, source code listings and schematics, and answers to any questions posed in the lab notes. Lab reports should be placed in the box marked "ELEC 379 Assignments" outside MCLD 332.

Each lab will be marked out of 5 as follows:

	correct program/circuit		3
	answers after demo		1
	accurate/complete/neat report	1 

If a lab is not demonstrated on time you will receive a mark of zero for that lab (0/5). If the report is not handed in on time you will receive zero for the report (0/1).

You must complete all labs to pass the course -- even if you would get a mark of zero for a lab.

Each student must submit an original solution. Possible penalties for plagiarism include a mark of zero for all labs.

Assignments

Assignment will be given out approximately once a week and will be due one week later. Solutions will be given out for all questions but not all questions will be marked. Late assignments will be given a mark of zero. Assignments should be placed in the box marked "ELEC 379 Assignments" outside MCLD 332.

Assignments are to be done individually. Students are encouraged to seek help from classmates but copying is not allowed. Possible penalties for plagiarism include a mark of zero for all assignments.

Teaching Assistants

Robert Coenen (robertc@ece.ubc.ca) and Icarus Chau (icarusc@ece.ubc.ca) will mark assignments and supervise the labs.

Web Page

The course Web page (http://www.ece.ubc.ca/~edc/379/) will be used to make announcements and to distribute course material (e.g. data sheets). You can also use the Web page to check your marks. Any browser can be used read these pages.

The lecture notes, assignments, labs and solutions will be available from the Web page in PDF format. Free software to view and print PDF documents (Ghostview, Adobe Acrobat) is available for most computers.

Mailing List

The lecturer will post important announcements about the course on the elec379-announce mailing list. All students in the course should subscribe to this mailing list.

Students should post questions or answers about the course material to the elec379 mailing list.

Instructions on subscribing are available on the course Web page.

The mailing lists can also be accessed through the elec379-announce and elec379 archives.

Text

We will not use a textbook in this course. Concepts will be explained in the lecture notes and we will use manufacturers' data sheets and standards documents as examples and reference material. I hope this will give you a better introduction to the design process than using a textbook.

Detailed notes will be distributed before the relevant lecture. The notes will often contain exercises or sections to be completed during the lecture.

Please wait until the end of the lecture before taking extra copies. You can always print copies from the course's Web page (see below).

Other References

Much of the material on logic design is covered in the ELEC 259 textbook (Katz : Contemporary Logic Design, Addison Wesley, 1993) and if you already have that textbook you may wish to refer to it for alternative explanations of various topics.

The Indispensable PC Hardware Book, third edition, by Hans-Peter Messmer (Addison-Wesley, 1997) is a detailed reference on the IBM PC Architecture.

The lecture notes and Web references will cover the small subset of the VHDL language that we will need. However, a number of texbooks and references are available if you would like to learn more about logic synthesis with VHDL.

VHDL for Logic Synthesis: An Introductory Guide for Achieving Design Requirements by Andrew Rushton (McGraw-Hill, 1996, US$55) is a good text on logic synthesis using VHDL. VHDL Made Easy by David Pellerin and Douglas Taylor (Prentice-Hall, 1997) is an easy-to-read introduction to using VHDL for design. The Designer's Guide to VHDL by Peter J Ashenden (Morgan Kaufmann, 1996) is an complete reference on the VHDL language. The 80x86 Family by John Uffenbeck (Prentice-Hall, 1998) covers the 80x86 family of microprocessors and their support chips in detail. These books cover much more than you will need for this course. A number of tutorials and a short book on VHDL are available on the net (see the Web page).

The Art of Electronics, second edition, by Paul Horowitz and Winfield Hill, Cambridge University Press, 1989, is a good practical reference book on most aspects of electronics although much of the material is now dated.

Evaluation

There will be a one-hour mid-term examination on Friday February 26 from 8:30 to 9:20 PM and a 3-hour final exam in December. The final mark will be calculated as follows:
	final exam  		50%
	midterm exam 		25%
	assignments 		10%
	labs			15%

Software

The Altera MaxPlusII VHDL synthesis and simulation software will be available on the department's PC and Sun networks and you may also install it on your PC (MS-Windows 3.11, 95 or NT) if you wish.

A free 80x86 assembler is available on the course Web page and on the department's PCs.

Intended Audience

Students who will design systems that include digital electronics.

ELEC 379 is designed for students in the Electrical Engineering rather than the Computer Engineering stream. The course covers the same material as a combination of ELEC 353 (logic design) and ELEC 465 (microcomputer design) but does not cover the material in as much depth.

If you are in the computer engineering option you should probably take ELEC 353 plus ELEC 465 rather than this course. Ask your faculty advisor for more details.

Prerequisites

Student should have experience in the design of simple digital circuits and have done some machine language programming of a microprocessor.

Objectives

By the end of the course the student should have the background required to begin designing microprocessor-based systems using programmable logic ICs. In general, the student should be able to: Detailed objectives will be provided in the introduction to each set of lecture notes.

Course Outline

The course is structured in a bottom-up order: digital logic circuits, the processor bus, the system bus, and peripheral interfaces. As examples we will use Altera 10K FPGAs, the Intel 80386 CPU, the ISA/PC-104 and PCI system buses and RS-232 and SCSI peripheral interfaces.
ELEC 379 Home Page