ECS154B Midterm Review Midterm is Comprehensive. What should you know? Everything in Chapters 1, 2, 4 and 5 of the book, plus what is in Appendix C and Appendix D (1-3), as well as what was covered in class. If you have attended class, done the reading and the lab assignments, you should be in good shape. Midterm will be closed book, but you can bring along 1 page of notes. As stated in class, emphasis will be on how well you know the material, and in particular how well you can solve problems. Expect to see problems very much like the problems in the chapters, because they are not only illustrative but they also have answers that you can check your work on. Review of what we have covered so far: Chapter 1: Primarily review Different types of machines Different types of languages (High level, assembler, etc.) Interesting information about the components of real machines Information on how chips are built Chapter 2: More review (basically, a single chapter review of ECS50) How instructions work How hardware works How instructions are represented Appendix D.1, D.2, D.3, and in-class: More detailed investigation of instruction sets How instruction set design influences hardware decisions Chapter 3: We will do this later. Chapter 4: Performance Defining performance (throughput vs response time) Measuring performance Wall time, system time, CPU time, etc. Time do do what? (representative programs ...) Reporting performance MIPS, MFLOPS, etc. Arithmetic mean, geometric mean, normalization Improving performance performance equation, what the different terms represent Amdahl's law Chapter 5: Design of single cycle and multicycle processor Datapath design Single cycle implementation Multicycle implementation Exceptions Microprogramming (section 5.7 on CD) Appendix C: Mapping control to hardware More about microcoding in here ...