570 likes | 753 Views
ECE 456 Computer Architecture. Instructor: Dr. Honggang Wang hwang1@umassd.edu, II-209B Fall 2013. Welcome to ECE456!. Today’s lecture Course Syllabus & Operational Details Background Survey Introduction to Computer Systems. Course Description. 3 credit units
E N D
ECE 456 Computer Architecture Instructor: Dr. Honggang Wang hwang1@umassd.edu, II-209B Fall 2013
Welcome to ECE456! • Today’s lecture • Course Syllabus & Operational Details • Background Survey • Introduction to Computer Systems Lecture #1
Course Description • 3 credit units • meet on Mon & Wed 2:00 ~ 3:15pm, in II- 212 • Prerequisites: • ECE 260 or equivalent: basic digital logic design and computer design • ECE 161 or CIS 215 or equivalent: introductory programming ability • Not a lab course • Not a programming course either Lecture #1
Course Topics • Overview of computer organization and architecture • Memory hierarchy and virtual memory • Input/output: virtual I/O, I/O methods • CPU: organization, registers, instruction sets, pipelining • CPU design: RISC vs. CISC, super-scalar processors, IA-64 • Control unit: implementation, micro-programming • Parallel computers: Flynn's taxonomy, organizations Lecture #1
Related Courses • ECE 562: Advanced Computer Architecture (Spring, required for CPE, elective for ELE) • ECE 561: Computer Systems (Graduate student) • ECE 566: Microprocessor I (Fall, elective for both CPE and ELE) • ECE 567: Microprocessor II (Spring, elective for both CPE and ELE) Lecture #1
Learning Objectives (1) Upon completion of this course, you should be able to… • Gain an understanding of the role of each component of a computer system such as CPU, memory, I/O, and busses as well as how they work together • Understand how interrupt mechanism works and its role in contemporary computer architecture • Understand the memory hierarchy, and learn how virtual memory works • Design memory according to required organization schemes such as one-word-per-chip and one-bit-per-chip • Design error detecting and correcting logic and codes in memory • Understand the function and operation of the CPU Lecture #1
Learning Objectives (2) Upon completion of this course, you should be able to… • Learn the modern CPU design techniques • Learn how microprogramming and assembler instructions are used to control the operation of the CPU • Develop an understanding of the format of instruction sets and the operation of the instruction cycle • Write assembler routines using a given instruction set • Understand the concept of pipelining and parallelism • Acquire an understanding of how the modern computers tolerate faults • Research and discuss an advanced topic in computer organization and architecture Lecture #1
Resources (1) • Required Textbook • W. Stallings, "Computer Organization and Architecture: Designing for Performance(8th Ed., 2009)", NJ: Prentice Hall • available in the university bookstore • Lecture notes, available from the class website Lecture #1
Resources (2) • References • M. Murdocca and V. Heuring, “Computer Architecture and Organization”, John Wiley & Sons, 2007 • A.S. Tanenbaum, “Structured Computer Organization (5th Ed., 2005)”, NJ: Prentice Hall • B. Parhami, “Computer Architecture”, Oxford University Press, 2005 • J. L. Hennessy & D. A. Patterson, "Computer Architecture: A Quantitative Approach (3rd Ed.)", Morgan Kaufmann, 2002 Lecture #1
Resource (3) - Course Website • Http://www.faculty.umassd.edu/honggang.wang/teaching.html, click “Click” under ECE456 • News and announcements • Syllabus, Major deadlines, • Homework, Project • Lecture notes, Exams • Frequently asked questions on assignments, exams • Relevant and useful links, click Bookmark • Check frequently! Lecture #1
Course Requirements Lecture #1
Homework • Complete all assignments on time. Assignments are always due at the beginning of class on the due date (2:00pm). • Assignments one day late subtract 10%; two days late loses 25%; three days late loses 50%. After 3 days the assignments will be considered a ZERO. This penalty rule will be strictly enforced, except for some exceptional cases (You must inform the instructor ahead of time!) • Keep each homework for helping you prepare for the exams • See website for details about submission Lecture #1
Project • Form: • state-of-art research survey • team work • See handout (or website) about project description and guidelines for proposal, report, and presentation • Required work and time-line: • Project team set-up (due Mon.. 9/23/13) • Proposal (due Mon. 10/21/13) • Final written report (due Wed. 12/4/13) • Oral presentation (Mon. 12/9/13) Lecture #1
Exams • Exam #1 • Monday, Oct. 7, 2013 Tentative schedule • Exam #2 • Monday, Nov. 11, 2013 Tentative schedule • Final Exam • Wed, Dec. 11, 2011 Tentative schedule • (See Final exam schedule at: http://www.umassd.edu/calendar/finals/welcome.cfm) • No early/late-taken exams unless you have a legitimate reason and your absence is excused by your advisor or the student Dean Lecture #1
Cancelled Classes and Exams • If class is cancelled on the day an exam is scheduled, we will have the exam the next time the class meets. • If class is cancelled for the session prior to the exam (the day for review and for asking questions), then the next class meeting will be the “review session”, and the exam will take place in the class meeting after that. Lecture #1
Attendance Policy • Students are expected to attend every class and all other scheduled activities related to the course. • Students are required to attend all scheduled project presentations at the end of the semester • Students who miss a lecture, must make arrangements with colleagues to obtain any missed material and information. Lecture #1
Academic Honesty • Unless specifically stated otherwise, all homework assignments and exams in this class are to be completed individually. Any collaboration with others or use of work completed by others for previous offerings of this class is considered to be unauthorized aid. Furthermore, you should explicitly acknowledge any sources of ideas used that are not your own; this includes other people, books, papers, web pages, etc. Academic dishonesty will be "rewarded" with a grade of "F". http://www.umassd.edu/studenthandbook/academicregs/ethicalstandards.cfm Lecture #1
Other Course Requirements • Please feel free to ask questions at any time, I am here to help you. • Check the class website frequently; the News section will be used as a primary means of notification • Do not surf the Internet while in class • Disable cell phones, pagers, and other distracting devices while in class Lecture #1
Grading • Homework: 20% • Group Project: 20% • Exam #1: 20% • Exam #2: 20% • Final: #20% • In-class extra-credit problems The letter grades will be assigned using the following approximate scale: (A+,A) [100-90]; (A-,B+,B) [90-80]; (B-, C+,C) [80-70]; (C-,D+,D) [70-60]; F[60-0]. Lecture #1
In Case of Trouble If you feel yourself slipping behind, feel free to come and see the instructor for advice. If you do decide the class is not happening for you at this semester, • the last day to Add/Drop is Tuesday, Sept. 10, and • the last day to Withdraw is Wednesday, Nov. 13, 2013. However, before you withdraw, discuss your decision with the instructor and your advisor. Lecture #1
Academic Support Services • Academic Advising Center • Science and Engineering Center • Writing and Reading Center • Disabled Student Service http://www.umassd.edu/studenthandbook/univservices/univservices1.cfm Lecture #1
Please feel free to contact the instructor if you have any special needs questions about homework, projects, or exams comments, feedbacks on how to improve lectures interesting experiences or tips on how to do well in the class Constructive criticism will be appreciated; ID: umass_ece546@hotmail.com PWD: umass123456 Contacting Instructor • Contact information Lecture #1
Welcome to ECE456 • Today’s lecture • Course Syllabus & Operational Details • Background Survey • Introduction to Computer Systems Lecture #1
Things To Do • Finish the Background Survey before you leave • Review the course syllabus and project materials • Find your partners for the project • Check out the class website Http://www.faculty.umassd.edu/honggang.wang/teaching.html Lecture #1
Enjoy the class! Have A Fruitful & Joyful Semester! Lecture #1
Welcome to ECE456 • Today’s lecture • Course Syllabus & Operational Details • Background Survey • Introduction to Computer Systems Lecture #1
Introduction to Computer Systems • History of computers • Evolution of the Intel family • Issue of performance balancing Lecture #1
History of Computers Table 2.2 Lecture #1
The 1st GenerationVacuum Tubes Lecture #1
Vacuum Tubes • Vacuum tubes are glass tubes with circuits inside. • Vacuum tubes have no air inside of them, which protects the circuitry. http://en.wikipedia.org/wiki/Vacuum_tube Lecture #1
ENIAC (Electronic Numerical Integrator And Computer) • First general-purpose electronic digital computer • designed by Mauchly & Eckert at the University of Pennsylvania • started 1943, finished 1946 • disassembled 1955 • 18,000 vacuum tubes • 30 tons • 30 feet × 50 feet • 140 kw power consumption Lecture #1
ENIAC (Cont’d) • A decimal machine (not binary) • 5000 additions per second • Data was entered on punched cards • Entering & altering programs was extremely tedious • programmed manually by setting switches and plugging & unplugging cables • programming for typical calculations required from 1/2 hour to a whole day Lecture #1
Stored-Program Concept Programming could be facilitated if program could be represented in a form suitable for storing in memory alongside the data. Then a computer could get its instructions by reading from memory, and a program could be set or modified by setting the values of a portion of memory • Proposed by Von Neumann in 1945 • Developed by Turing about the same time • Applied to IAS computer by Von Neumann et al. Lecture #1
IAS Computer • Named for the Institute for Advanced Study at Princeton University • Began 1946, completed 1952 • The prototype of all subsequent general-purpose computers • Structure • Von Neumann machines Lecture #1
First Computer Bug - 1945 • Grace Hopper found a moth stuck in a relay responsible for a malfunction • An error in a computer program that prevents it from working correctly or produces an incorrect result http://www.jamesshuggins.com/h/tek1/first_computer_bug.htm Lecture #1
The 2nd GenerationTransistor Lecture #1
First Transistor • Invented at Bell labs in 1947 • Won a Nobel prize • Uses Silicon • Advantages http://www.cedmagic.com/history/transistor-1947.html William Shockley (seated at Brattain's laboratory bench), John Bardeen (left) and Walter Brattain (right) http://en.wikipedia.org/wiki/Transistor Lecture #1
Transistor-Based Computers • National Cash Register & Radio Company of America (NCR & RCA, front-runners) • InternationalBusiness Machines (IBM 7000 series) • Digital Equipment Corporation (DEC, 1957, PDP-1) Lecture #1
First Chip • Invented by Jack Kilby at Texas Instruments in 1958 • Integrated Circuits are transistors, resistors, and capacitors integrated together into a single “chip” • Won a Nobel prize Lecture #1
3rd+ Generation - Integrated Circuits • Small-Scale Integration (SSI, 1965 on, 3rd generation) • up to 100 devices/chip, • Medium-Scale Integration (MSI, to 1971, 3rd) • 100 - 3,000 devices/chip, • Large-Scale Integration (LSI, 1972-1977, 4th) • 3,000 - 100,000 devices/chip, • Very Large-Scale Integration (VLSI, 1978 – 1991, 5th) • 100,000 - 1,000,000 devices/chip, • Ultra Large-Scale Integration (ULSI, 1991 – present, 6th) • More than 1 million devices /chip Lecture #1
Moore’s Law • Number of transistors on a chip will double every year - by Gordon Moore, Intel cofounder in 1965 • The pace slowed to a doubling every 18 months and sustained ever since 1970s (refer to Figure 2.8 in textbook) Lecture #1
Moore’s Law (Cont’d) • How long will Moore's Law hold? • Moore (1997): It'll go for at least a few more generations of technology. Then, in about a decade, we're going to see a distinct slowing in the rate at which the doubling occurs. I haven't tried to estimate what the rate will be, but it might be half as fast - three years instead of eighteen months. • See class web-site (Lecture Reading) for details Lecture #1
The FIRSTs • The first general-purpose electronic digital computer: ENIAC (Electronic Numerical Integrator And Computer), 1943 ~ 1955 • The first computer bug, found by Grace Hopper in 1945 • The first transistor, invented at Bell labs in 1947 (Nobel Prize) • The first chip (Integrated Circuit), invented by Jack Kilby at Texas Instruments in 1958 (Nobel Prize) • More … Lecture #1
The First Minicomputer - 1964 • DEC PDP-8 • Small enough to sit on a lab bench • Embedded applications • Flexible bus structure ... Console controller CPU Main memory I/O module I/O module Omnibus Lecture #1
The First Microprocessor – 1971 • The Intel 4004 had 2,250 transistors • four-bit • 108Khz • Called “Microchip” The Pioneer 10 spacecraft used the 4004 microprocessor. It was launched on March 2, 1972 and was the first spacecraft and microprocessor to enter the Asteroid Belt. Lecture #1
Part II: Introduction to Computer Systems • History of computers • Evolution of the Intel family • Issue of performance balancing Lecture #1
Intel Pentium Evolution • 4004 (1971, 4 bit) • first microprocessor (all CPU components on a single chip) • 8008 (1972, 8 bit) • designed for specific applications • 8080 (1974, 8 bit) • first general-purpose microprocessor • used in the first personal computer - Altair • 8086/8088 (1978, 16 bit) • instruction cache, 1 M (220)-byte addressable memory • used in IBM’s first PC Lecture #1
Intel Pentium Evolution (Cont’d) • 80286 (1982, 16 bit) • 16 Mbyte addressable memory • 80386 (1985, 32 bit) • supporting multitasking • 80486 (1989, 32 bit) • powerful cache & instruction pipelining • built-in math co-processor • Pentium (1993, 32 bit) • superscalar Lecture #1
Intel Pentium Evolution (Cont’d) • Pentium Pro. (1995, 32 bit) • register renaming, branch prediction, data flow analysis, and speculative execution • Pentium II (1997, 32 bit) • Intel MMX technology: video, audio, graphics data • Pentium III (1999, 32 bit) • Additional floating-point instructions for 3D graphics • Pentium 4 (2000, 32 bit) • Further floating-point and multi-media enhancements • Itanium (2001, 64 bit, IA-64 architecture, EPIC) • Itanium 2 (2002, second member of 64-bit) • Pentium M (2003, mobile technology) Lecture #1