Cal

Welcome to Computer Science 61CL!

Machine Structures (lab-centric version), Fall 2009

University of California, Berkeley
Department of Electrical Engineering and Computer Sciences

David E. Culler, Instructor

Cal

We will do our work on the UC-WISE portal. You need to have an account, and be enrolled in a section. (There is guest access, although you won't be able to do any work)
CS61CL Fall 2009 Preliminary Schedule
Week Session Date Topic Projects Reading
1 Wed 8/26/09 No Labs    
1 Th-Fr Lab 8/27/09 Introductory Activities    
1 Lecture 8/28/09 Course Overview, Binary    
2 Tu-W Lab 9/1/09 Arrays and Strings   K&R: sections 1.1-1.9, chapter 2, sections 3.1-3.7, and sections 4.1 and 4.2
2 Th-Fr Lab 9/3/09 References in C; Files   K&R: sections 5.1 through 5.10, 6.1 through 6.3, and 7.5.
2 Lecture 9/4/09 Manipulating Representations    
Labor day 9/7/09      
3 Tu-W Lab 9/8/09 Structures, abstract data types, dynamic storage   K&R: sections 6.4 through 6.7.
3 Lecture 9/9/09 Mapping Complex Types to Storage [ppt] [pdf]
   
3 Th-Fr Lab 9/10/09 Memory Layout, pointers, linked lists   K&R: appendix B, sections B1, B2, B3, B5, and B11.
4 Tu-W Lab 9/15-16/09 Intro to assembly language Cal 16 Asm P&H sections 2.1, 2.2, 2.3, and 2.7 (4th) ; or 2.1, 2.2, 2.3, and 2.6 (3rd).
  Lecture 9/16/09  C to MIPS [ppt] [pdf]
 
4 Th-Fr Lab 9/17-18/09 MIPS equivalents of C constructs P&H sections 2.7 and 2.14 (4th); or sections 2.6 and 2.15 (3rd).
5 Tu-W Lab 9/21/09 MIPS procedures P&H, section 2.8 (4th) or 2.7 (3rd)
  Lecture 9/23/09 Instruction Set Arch HW5
5 Th-Fr Lab 9/24-25/09 More on MIPS procedures; logic operators P&H, section 2.6 (4th) or 2.5 (3rd)
6 Tu-W Lab 9/29-30/09 Table-driven programming; MIPS machine instructions P&H, sections 2.5 and 2.10 (4th) or 2.4 and 2.9 (3rd)
  Lecture  9/30/09
Number Representation [ppt][pdf]  
6 Th-Fr Lab 10/1-2/09 Number representation P&H, sections 2.4 and 3.2 (4th) or 3.2 and 3.3 (3rd)
7 Tu-W Lab 10/6-7/09 Issues relating to floating-point computation snprintf P&H, sections 3.5, 3.7, and 3.8 (4th) or sections 3.6, 3.7, and 3.8 (3rd)
Mid Term I 10/7/09  

7 Th-Fr Lab 10/8-9/09 IEEE Floating Point Representation P&H, sections 2.12 and B.1-B.3 (4th) or sections 2.10 and A.1-A.3 (3rd)
8 Tu-W Lab 10/13-14/09 Interpreters and Linkers P&H, sections C.1-C.3 (4th) or sections B.1-B.3 (3rd)

Lecture
10/14 Intro to Digital Design [ppt][pdf] HW6
8 Th-Fr Lab 10/15-16/09 Circuits basics P&H, sections C.5-C.8 (4th) or sections B.5-B.8 (3rd)
9 Tu-W Lab 10/20-21/09 Combinational Logic  

Lecture 8 10/21 State and Registers Transfers [ppt][pdf]

9 Th-Fr Lab 10/22-23/09 Synchronous circuits and flip flops P&H, sections C.9-C.11 (4th) or sections B.9-B
10 Tu-W Lab 10/27-28/09 Registers Cal16 Logisim P&H, sections 4.1-4.4 (4th) or sections 5.1-5.4 (3rd)

Lecture
10/28 Implementing an Instruction Set [ppt][pdf] HW7
10 Th-Fr Lab 10/29-30/09 MIPS CPU: datapath  
11 Tu-W Lab 11/3-4/09 MIPS CPU: sequencer and control P&H sections 4.5 through 4.8 (4th) or sections 6.1 through 6.6 (3rd)
Lecture 10 11//4 Controllers and Pipelining

11 Th-Fr Lab 11/5-6/09 A Pipelined Architecture  
Mid Term II 11/9/09    
12 Tu-W Lab 11/10-1109 Slack  
W Veterans Day 11/11/09    
12 Th-Fr Lab 11/12-13/09 More on MIPS pipeline P&H sections 5.1-5.3 (4th) or 7.1-7.3 (3rd)
13 Tu-W Lab 11/17-18/09 Caches MIPS interp  
13 Th-Fr Lab 11/19-20/09 More on Caches P&H sections 5.4 and 5.5 (4th) or 7.4 and 7.5 (3rd)
14 Tu-W Lab 11/24-25/09 Virtual Memory K&R, section 8.7
14 Th-Fr Lab 11/26-27/09 no lab  
Thanksgiving 11/26-27/09    
15 Tu-W Lab 12/1-2/09 Memory management: Malloc & Free P&H 6.1-6.7 and B.7 and B.8 (4th) or 8.1-8.6, A.7, and A.8 (3rd)
  Lecture 13 12/2/09  What is an Operating System [ppt] [pdf]
(guest lecturer Andy Konwinski)
 
15 Th-Fr Lab 12/3-4/09 Input/Output  
16 Tu-W Lab 12/8-9/09 Threads    
Final   12/15/09 12:30-3:30