Introduction ELEC 5200-001/6200-001 Computer Architecture and Design Spring 2016

advertisement
ELEC 5200-001/6200-001
Computer Architecture and Design
Spring 2016
Introduction
Vishwani D. Agrawal
James J. Danaher Professor
Department of Electrical and Computer Engineering
Auburn University, Auburn, AL 36849
http://www.eng.auburn.edu/~vagrawal
vagrawal@eng.auburn.edu
Spring 2016, Jan 13
ELEC 5200-001/6200-001 Lecture 1
1
Course Webpage
http://www.eng.auburn.edu/~vagrawal/
COURSE/E6200_Spr16/course.html
Or,
Go to professor’s webpage
http://www.eng.auburn.edu/~vagrawal/
Click on ELEC5200-001/6200-001 Computer
Architecture and Design, MWF 11AM, Broun
235.
Spring 2016, Jan 13
ELEC 5200-001/6200-001 Lecture 1
2
Course Organization
Text book: D. A. Patterson and J. L. Hennessy, Computer
Organization & Design, the Hardware/Software Interface,
Fifth Edition, Morgan Kaufman (Elsevier), 2014, ISBN 978-012-407726-3.
Instructor: Vishwani D. Agrawal, Broun 323, x41853,
vagrawal@eng.auburn.edu.
Graduate Assistant: Yun Wang,
hltyzw0041@tigermail.auburn.edu, Broun 357, consulting
hours: Friday 3-5PM.
Classroom: Broun 235, MWF 11:00-11:50AM.
Lab: Broun 320.
Spring 2016, Jan 13
ELEC 5200-001/6200-001 Lecture 1
3
Author of the Text Book
Q&A: RISC and Reward, Communications of the ACM,
Volume 57, No. 3, pp. March 2014, pages 112 and 111.
Spring 2016, Jan 13
ELEC 5200-001/6200-001 Lecture 1
4
Author of the Text Book
Spring 2016, Jan 13
ELEC 5200-001/6200-001 Lecture 1
5
Student Performance Evaluation
Homework (25%): 1 per week, most weeks.
Two Class Tests (25%):
Test 1, TBD, 11:00-11:50AM, Broun 235.
Test 2, TBD, 11:00-11:50AM, Broun 235.
CPU Design Project (25%).
Final Exam (25%): Tuesday, May 3, 2016, 12:00 –
2:30PM, Broun 235.
Class Presentation, if time permits, on assigned
topic by ELEC6200 Students; “Satisfactory” grade
necessary; attendance necessary for ELEC5200
students.
Spring 2016, Jan 13
ELEC 5200-001/6200-001 Lecture 1
6
Course Objective
Learn what a digital computer contains
and how it works.
Learn design concepts of a modern
computer.
Gain design experience (through project).
Spring 2016, Jan 13
ELEC 5200-001/6200-001 Lecture 1
7
The Concept of a Computer
Application software
Systems software
User
Hardware
Operating system
compiler
assembler
Programs user
writes and runs
Spring 2016, Jan 13
ELEC 5200-001/6200-001 Lecture 1
8
Software
Compiler
Application software,
a program in C:
MIPS compiler output,
assembly language program:
swap (int v[ ], int k)
swap;
{int temp;
temp = v[k];
v[k] = v[k+1];
v[k+1] = temp;
}
Application
software
Assembler
muli
add
lw
lw
sw
sw
jr
$2,
$2,
$15,
$16,
$16,
$15,
$31
$5, 4
$4, $2
0 ($2)
4 ($2)
0 ($2)
4 ($2)
MIPS binary machine code:
00000000101000010000000000011000
00000000000110000001100000100001
10001100011000100000000000000000
10001100111100100000000000000100
10101100111100100000000000000000
10101100011000100000000000000100
00000011111000000000000000001000
Systems software
Hardware
Spring 2016, Jan 13
See pages 122-123
ELEC 5200-001/6200-001 Lecture 1
9
The Hardware of a Computer
Control
Datapath
Application
software
Central Processing
Unit (CPU)
or “processor”
Input
Memory
Output
Systems software
Hardware
FIVE EASY PIECES
Spring 2016, Jan 13
ELEC 5200-001/6200-001 Lecture 1
10
Instruction Set Architecture (ISA)
Application
software
Systems software
Hardware
Spring 2016, Jan 13
Software
Instruction
set
A set of assembly language instructions (ISA)
provides a link between software and hardware.
Given an instruction set, software programmers
and hardware engineers work more or less
independently.
ISA is designed to extract the most performance
out of the available hardware technology.
ELEC 5200-001/6200-001 Lecture 1
Hardware
11
ISA
Defines registers
Defines data transfer modes between registers,
memory and I/O
Types of ISA: RISC, CISC, VLIW, Superscalar
Examples:
–
–
–
–
–
IBM370/X86/Pentium/K6 (CISC)
PowerPC (Superscalar)
Alpha (Superscalar)
MIPS (RISC and Superscalar)
Sparc (RISC), UltraSparc (Superscalar)
Spring 2016, Jan 13
ELEC 5200-001/6200-001 Lecture 1
12
Computer Architecture
Architecture: System attributes that have a
direct impact on the logical execution of a
program
Architecture is visible to a programmer:
– Instruction set
– Data representation
– I/O mechanisms
– Memory addressing
Spring 2016, Jan 13
ELEC 5200-001/6200-001 Lecture 1
13
Computer Organization
Organization: Physical details that are
transparent to a programmer, such as
– Hardware implementation of an instruction
– Control signals
– Memory technology used
Example: System/370 architecture has
been used in many IBM computers, which
widely differ in their organization.
Spring 2016, Jan 13
ELEC 5200-001/6200-001 Lecture 1
14
Architecture and Organization
ISA
Hardware
Engineers
Software
Programmers
Spring 2016, Jan 13
ELEC 5200-001/6200-001 Lecture 1
15
CPU Design Project
Design and implementation of a
processor:
– Define instruction set
– Design datapath and control hardware
– Implement hardware in FPGA
– Verify
Spring 2016, Jan 13
ELEC 5200-001/6200-001 Lecture 1
16
Research and Developments of
Continuing Interest
Instruction level parallelism (ILP)
Multi-core systems and chip multi-processing (CMP)
Processors
Inter-processor communication
Memory organization
Operating system
Programming languages
Computing algorithms
Energy efficiency and low power design
Embedded systems
Quantum computing, biological computing, . . .
Spring 2016, Jan 13
ELEC 5200-001/6200-001 Lecture 1
17
Summary
A computer processes digital data.
A user solves problems by writing and running programs
written in a high-level programming language like C.
Inside computer, system programs called compiler and
assembler break the user program down into assembly
code (instruction set) and then into binary machine code.
The machine code is processed by the 5-piece hardware
(control unit, datapath, memory, input and output) to
obtain the desired result.
Readings on architecture (posted at course website):
– S. Borkar and A. A. Chen, “The Future of Microprocessors,”
Comm. ACM, vol. 54, no. 5, pp. 67-77, May 2011.
– L. Hoffmann, “Q&A: RISC and Reward (An Interview with David
Patterson),” Comm. ACM, vol. 57, no. 3, pp. 112, 111, March
2014.
Spring 2016, Jan 13
ELEC 5200-001/6200-001 Lecture 1
18
Download