http://www.cs.amherst.edu/ccm/cs14
This course will provide an introduction to digital electronics, computer architectures, and operating systems. The course will begin with Boolean logic and the design of combinatorial and sequential circuits; consider design of computer hardware components, microprocessing and interperetation of machine instructions; and then move on to assembly languages and machine architecture. The course will include a brief introduction to operating systems and network communication. A laboratory section will allow students to design and build digital circuits and to develop assembly language programs. Three class hours and one one-hour laboratory per week.
Grades will be based on two tests (100+100), two design projects (50+50), homeworks and almost-weekly lab projects (100), and a final exam (200).
Here is a week-by-week Course Syllabus.