Introdcutory class in digital logic, assembly language, networks,
robotics, and other topics in computer engineering. 2 units.
CE12C: Computer Organization, W98,
F99
Assembly language and computer organization using MIPS and an HC11
microkit developed by Stephen Petersen and CE123.
For other instructors, source for my TeX
notes based on those of K. Miller and M. Hill is are available.
Computer architecture. In addition to a study of the basics of
computer arithmetic and current processor architecture, my hope in
several assignments is to provide direct knowledge of the effects
(read havoc) that computer architecture can play on the unwary
programmer. Although this is most visible in the memory system
(caches and virtual memory), some effects of pipelines can also be
seen in execution times.
CE121: Microprocessor System Design, S92,W93,S94,W95,
W97
Complete design of a microprocessor system. In past years, students
have build complete 68008 systems, hooking up processors, memory,
communication chips, and A/D and D/A converters. The final project
has been creation of a digital music synthesizer using the hardware
and software built during the quarter.
This course is a basic introduction to parallel processing with an
emphasis on architecture and basic algorithms. It alternates with
CE290M, a course of changing topics. In Spring 95, this course
studied transform-based algorithm mapping in addition to basic
parallel architecture. Our 4096 MasPar, as well as the
Kestrel simulator.
In Spring 98 and Fall 99, we studied parallel algorithms.
The focus in Spring 94 was numerical algorithms, such as a partial
differential equation solvers, for array processors. In S96,
the focus was on parallel programming, using a variety of
vector, distributed, and parallel programming languages and machines,
both here and at the San Diego
Supercomputer Center (SDSC).
The text was Ian Foster's
Designing and Building Parallel Programs.
Before giving me any written work, please read my personal
list of things that bug me in
formal writing.