slides for lecture 1
play

Slides for Lecture 1 ENCM 501: Principles of Computer Architecture - PowerPoint PPT Presentation

Slides for Lecture 1 ENCM 501: Principles of Computer Architecture Winter 2014 Term Steve Norman, PhD, PEng Electrical & Computer Engineering Schulich School of Engineering University of Calgary 9 January, 2014 slide 2/25 ENCM 501 W14


  1. Slides for Lecture 1 ENCM 501: Principles of Computer Architecture Winter 2014 Term Steve Norman, PhD, PEng Electrical & Computer Engineering Schulich School of Engineering University of Calgary 9 January, 2014

  2. slide 2/25 ENCM 501 W14 Slides for Lecture 1 Today’s Lecture ◮ introduction to ENCM 501 ◮ course organization ◮ review of computer organization basics ◮ what does “computer architecture” mean? Related material in Hennessy & Patterson (our course textbook): Sections 1.1–1.3..

  3. slide 3/25 ENCM 501 W14 Slides for Lecture 1 Contacting Steve Norman (your instructor) Office: ICT 411. This is near the north end of the 4th floor. You should be able to use your U of C ID cards to access the hallways outside academic offices on the 4th floor—ask at the ECE main office (ICT 402) if have trouble. I will post some office hours on the Course Home Page soon. Email: norman@ucalgary.ca Please try to come up with a detailed subject line. “Question about ENCM 501 Assignment 3 Exercise 5” is a good example. “ENCM 501” and “Problem with course” are examples of what not to do! I will try to answer all emails within 24 hours, except weekends and holidays.

  4. slide 4/25 ENCM 501 W14 Slides for Lecture 1 Course Web site Most course information will NOT be on Blackboard. Instead, please go to www.enel.ucalgary.ca/People/Norman/encm501winter2014

  5. slide 5/25 ENCM 501 W14 Slides for Lecture 1 In the Classroom Lectures will start at 12:30pm sharp (except today). Please try hard to be on time, and enter as non-disruptively as possible if you’re late. If you need to leave early, please notify your instructor at the beginning of class, and pick a seat that allows an easy exit. Please, no conversations! Please ask questions! Call out, “Question!” if I don’t see your raised hand.

  6. slide 6/25 ENCM 501 W14 Slides for Lecture 1 Tutorial Periods These start Wednesday, January 15. There will be several small pencil-and-paper exercises each week. There are NO marks for tutorial exercises, but the exercises will be helpful toward assignments, tests, and final exam.

  7. slide 7/25 ENCM 501 W14 Slides for Lecture 1 Assignments There will be assignments just about every week in ENCM 501. Assignments will consist of several small- to medium-size problems; there will be no large projects in this course. Some assignment problems will involve programming and others will be exercises that can be solved with pencil and paper, possibly also a simple calculator. Assignment 1 will be posted on the Course home page sometime Monday, January 13.

  8. slide 8/25 ENCM 501 W14 Slides for Lecture 1 Lab Periods Lab periods start Tuesday, January 14. They are for drop-in help with assignments, and may also be used to ask general questions about lecture content. It’s best to have done some work on the current assignment before the lab period. That way you can ask good questions starting at the beginning of lab period.

  9. slide 9/25 ENCM 501 W14 Slides for Lecture 1 The ENCM 501 Course Outline A link to the complete course outline can be found on the course Web site. Please read the whole thing carefully!

  10. slide 10/25 ENCM 501 W14 Slides for Lecture 1 Course Outline: Exams Quizzes (2): 40 minutes each, to be held in lecture periods, one in early February and one in late March. Midterm test: 75 minutes, to be held in a lecture period in late February or early March. Final exam: Duration 3 hours, to be scheduled by the Registrar’s Office. All quizzes, tests and exams will be closed-book and closed-notes. There will likely be instructor-provided reference material with formulas, instruction set documentation, etc., provided along with question papers.

  11. slide 11/25 ENCM 501 W14 Slides for Lecture 1 Course Outline: Grading Assignments: 20% Quizzes: 15% Midterm test: 25% Final exam: 40% Attention: There is no minimum score on the final exam that you must obtain to pass the course. (But you will get an F if both your term work and your final exam are very weak.) Read the Course Outline for more details about how letter grades will be determined.

  12. slide 12/25 ENCM 501 W14 Slides for Lecture 1 Course outline: Textbook Computer Architecture: A Quantitative Approach , Fifth Edition, by John L. Hennessy and David A. Patterson. This book is by the same authors who wrote the textbook used for many years in ENCM 369, but it’s a completely different and significantly more advanced book. It’s really important to have this textbook—students will be expected to do some serious reading, as there is no reasonable way to put so much detail into lecture notes. Attention: We will not cover everything in the book in this course! There is way too much material in the book for a single course!

  13. slide 13/25 ENCM 501 W14 Slides for Lecture 1 About ENCM 501 slides Reading these slides online is not a good substitute for attending lectures—in most lectures I will do some important hand-written work using the document camera. Please come to lectures prepared to take some notes.

  14. slide 14/25 ENCM 501 W14 Slides for Lecture 1 Typographical conventions Either bold text or bright red text will be used for emphasis. The typewriter font will usually be used for code in assembly language, C, or C ++ . (I might not use the typewriter font for code if it makes the code too wide to fit in a slide.) Text in a box is a general description of what could appear within a piece of code. Example: A C do statement has this syntax . . . do statement while ( expression ); (Usually statement is a compound statement that starts with { and ends with } .)

  15. slide 15/25 ENCM 501 W14 Slides for Lecture 1 Typographical conventions: Italics Italics will be used two different ways. One word or a few words in italics will be used to formally or informally define a term. Example: A bit is the basic unit of information in a digital system; the value of a bit is either 0 or 1. An entire sentence in italics indicates a pause to elaborate a concept or solve a problem under the document camera. Example: Let’s translate the C statement into a sequence of assembly language instructions.

  16. slide 16/25 ENCM 501 W14 Slides for Lecture 1 Review of Computer Organization Basics The next several slides will review concepts covered early in ENCM 369, and make comments about how those concepts are related to current computer design.

  17. slide 17/25 ENCM 501 W14 Slides for Lecture 1 Organization of a Simple Computer ◮ What is a bus ? Main Bus ◮ What is the role of the Memory processor ? ◮ What is the role of the Processor main memory ? I/O ◮ What does I/O stand Device for? . . . . . . ◮ What are important categories of I/O I/O devices ? Device

  18. slide 18/25 ENCM 501 W14 Slides for Lecture 1 Operation of our Simple Computer Within the processor, there is a special-purpose register called the program counter (or PC). The PC holds the memory address of the next instruction to be executed. When our computer is powered up, some kind of initialization circuit puts a specific address into the PC. After that, the processor repeats two steps, Step 1 and Step 2, over and over, until the computer is powered down.

  19. slide 19/25 ENCM 501 W14 Slides for Lecture 1 Operation of our Simple Computer, continued Step 1: Fetch an instruction and update the PC. Copy one or more bytes, starting at the address in the PC, into the processor, then make the PC point at the next byte in memory that wasn’t part of the instruction. Remark: Step 1 is simple if all instructions are the same size, but quite messy if some instructions occupy more memory than other instructions. Step 2: Execute the instruction. Perform whatever tiny, simple task is specified by the instruction. Let’s make an informal list of the kinds of instructions we’ve seen in various computer instruction sets, with one or more specific examples of each kind of instruction.

  20. slide 20/25 ENCM 501 W14 Slides for Lecture 1 Step 1, then Step 2, then Step 1, then Step 2 . . . This model for computer operation is simultaneously seriously misleading regarding current computer systems (except perhaps the very “lowest-end” embedded computers) and supremely important . Let’s make a list of reasons why the model is seriously misleading. But why then is the model still supremely important?

  21. slide 21/25 ENCM 501 W14 Slides for Lecture 1 What does “Computer Architecture” mean? (1) It is surprisingly hard to come up with a simple, short definition of computer architecture . It’s kind of an “umbrella” term that includes a bunch of related ideas and activities. Let’s start at the level of instructions . . . ◮ What instructions are available to applications programmers? This is often called instruction set architecture , or ISA . ◮ What additional instructions are provided to operating system kernel programmers? (Examples: Instructions to query system state when an interrupt occurs, to manage virtual memory hardware, to control I/O devices, and so on.)

Recommend


More recommend