ELEC 379 : Microcomputer System Design
Contents: [
Instructor |
Lectures |
Lecture Notes |
Office Hours |
Tutorials |
Teaching Assistants |
Web Page |
Newsgroup |
Intended Audience |
Prerequisites |
Text |
Other References |
Assignments and Labs |
Evaluation |
Objectives |
Course Outline |
Related Courses |
]
Ed Casas.
You can contact me by e-mail (edc@ece.ubc.ca) or at my office in
MCLD 155 (822-2592) (preferably during office hours). MCLD 155
is in the basement of the Electrical and Computer Engineering
building.
Wednesdays and Fridays, 8:30 to 9:30 am in MCLD 402. Lectures
start January 7 and end April 8. No lectures February 18 or 20
due to mid-term break.
Fridays 11:30 to 12:30.
Mondays 8:30 -- 9:30 pm. The tutorials will be used to review
difficult lecture material and to solve problems from the
assignments. No tutorial January 5 or February 16.
The TA is Henry Lee henryl@ece.ubc.ca He will
alternate in marking the assignments and may run some tutorials.
The course Web page (http://www.ece.ubc.ca/~elec379)
will be used to make announcements and to distribute some 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.
The course news group (news:ubc.courses.elec.379) can
be used to ask or answer questions or to make comments about the
course. Most Web browsers can be used to read and post to
newsgroups.
Students who will design systems that include digital
electronics.
ELEC 379 is a new course, 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 464 (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 464 rather than this course. Ask your
faculty advisor for more details.
Student should have experience in the design of simple digital
circuits and have done some machine language programming of a
microprocessor.
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).
The Indispensable PC Hardware Book, second edition, by
Hans-Peter Messmer (Addison-Wesley, 1995, C$52) is a detailed
reference on the IBM PC Architecture.
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. The Synopsys VHDL Compiler Reference Manual
(available in the VLSI lab) is also a good reference on synthesis
with VHDL. 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.
An assignment or lab will be given out each week. Solutions will
be given out for all questions but not all questions will be
marked. Late assignments and labs will be given a mark of
zero.
This is a new course and lab space and equipment are not yet
available. Most of the labs will involve the design and
simulation of logic circuits using VHDL synthesis and simulation
software available on the deparment's Sun workstations. Other
labs will involve assembly-language programming of the peripheral
interfaces on the department's PC's.
Assignments and labs are to be done individually. Students are
encouraged to seek help from classmates but copying is not
allowed. Possible penalties include a mark of zero for all labs
and assignments.
There will be a one-hour mid-term examination in late October
(date TBD). The final mark will be calculated as follows:
final exam 55%
midterm exam 25%
assignments/labs 20%
By the end of the course the student should have the background
required to begin designing microprocessor-based systems using
standard ICs. In general, the student should be able to:
- design simple combinational and sequential circuits using
the synthesis subset of VHDL covered in the course
- describe the response of a circuit described in VHDL to a
given input
- describe in detail the 80386 processor bus and the behaviour
of its signals during read and write cycles
- describe in detail the response of an 80386 processor to an
interrupt
- compute timing margins for read and write cycles from CPU
and memory timing specifications
- design multi-chip memory banks that meet bus loading and
timing requirements using common memory ICs (SRAM, DRAM, EPROM)
- select and justify the choice of I/O strategy (polled,
interrupt, or DMA) for a given application
- write software to control programmable peripheral chips
(e.g. DMA, interrupt controller, timer/counter, parallel and
serial interfaces) in 80x86 assembly language
- describe and analyze the behaviour of SCSI and RS-232 bus
signals during common operations
Detailed objectives will be provided in the introduction to each
set of lecture notes.
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 the Xilinx 4000 or Altera
10K FPGAs, the Intel 80386 CPU, the ISA and PCI system buses and
RS-232 and SCSI peripheral interfaces.
- review of digital logic design
- logic synthesis with VHDL
- the 80386 microprocessor
- memory system design
- polled, interrupt-driven and DMA interfaces
- system buses (ISA, PCI)
- peripheral buses (Serial, Centronics, SCSI)
This course deals with the design of digital logic circuits,
primarily those involving microprocessors. Related topics that
are not covered in this course include:
- microprocessor CPU design is covered in ELEC 476.
- IC design is covered in ELEC 479.
- operating systems are covered in CPSC 415 or ELEC 494.
Contents: [
Instructor |
Lectures |
Lecture Notes |
Office Hours |
Tutorials |
Teaching Assistants |
Web Page |
Newsgroup |
Prerequisites |
Text |
Other References |
Assignments and Labs |
Evaluation |
Objectives |
Course Outline |
Related Courses |
]
ELEC 379 Home Page