60 likes | 218 Vues
CSE331 Computer Organization and Design Fall 2007 Read Me. Mary Jane Irwin ( www.cse.psu.edu/~mji ) Course url: www.cse.psu.edu/~cg331 [Adapted from Dave Patterson’s UCB CS152 slides]. An Initial Request.
E N D
CSE331Computer Organization and DesignFall 2007Read Me Mary Jane Irwin (www.cse.psu.edu/~mji) Course url: www.cse.psu.edu/~cg331 [Adapted from Dave Patterson’s UCB CS152 slides]
An Initial Request • This set of slides have been revised (and revised again) from an earlier set to more closely match the 3rd edition of COD (by Dave Patterson and John Hennessy). • This is the current set as of Fall 2007 • While you are welcome to use, modify, expand on the slides contained in this slide set, I do ask that you acknowledge my efforts in some way as well as the fact that my slides are adapted from a set I got from Dave Patterson many years back (I doubt that Dave would recognize most of them by this point). I do this on the first slide of each set of slides (one set per week of classes).
Course Structure and Goals • The slides are for a 15 week (full semester) first semester junior level course that is required for all computer science and computer engineering majors. • The course, CSE 331, covers an introduction to assembly language programming (using spim), VHDL and computer organization (covering the first 5 chapters (minus chapter 4), an intro to pipelining, and an intro to cache memories of the 3rd edition of COD) • The course prerequisite is a soph level course in logic design and two semesters of programming (C or java) • There is a follow on senior level course in computer architecture that covers the rest of the book plus superscalar, VLIW, hyperthreading, etc. My slides for this course are also available on-line.
Things to be Aware Of • Throughout the set of slides, you will often see two slides that are almost identical. One is for the class handout and is missing some key points (it is marked in the notes section as “for class handout”). The other is for lecture (marked “for lecture”) where the key points are included and are animated to appear as students respond to questions posed to them in class. • Put the “for lecture” slide in hide mode when preparing class handouts and the “for class handouts” in hide mode when preparing lectures • A sample pair of slides follows • Reminder - be sure to put the Dilbert comics in hide mode when printing class handouts or preparing pdf to post on the web. I have Bob Colwell’s (verbal) okay to use the quotes from him book (which is great, btw).
C compiler assembler Below the Program • High-level language program (in C) swap (int v[], int k) (int temp; temp = v[k]; v[k] = v[k+1]; v[k+1] = temp; ) • Assembly language program (for MIPS) swap: sll $2, $5, 2 add $2, $4,$2 lw $15, 0($2) lw $16, 4($2) sw $16, 0($2) sw $15, 4($2) jr $31 • Machine (object) code (for MIPS) 000000 00000 00101 0001000010000000 000000 00100 00010 0001000000100000 . . .