ELEC 5200-001/6200-001
Computer Architecture and Design
Spring 2015
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
[email protected]
Spr 2015, Jan 14
ELEC 5200-001/6200-001 Lecture 1
1
Course Webpage
http://www.eng.auburn.edu/~vagrawal/
COURSE/E6200_Fall14/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.
Spr 2015, Jan 14
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,
[email protected]
Graduate Assistant: George Conover,
[email protected], Broun 357, consulting hours
MW 1:00-2:00PM.
Classroom: Broun 235, MWF 11:00-11:50AM.
Lab: Broun 320.
Spr 2015, Jan 14
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.
Spr 2015, Jan 14
ELEC 5200-001/6200-001 Lecture 1
4
Author of the Text Book
Spr 2015, Jan 14
ELEC 5200-001/6200-001 Lecture 1
5
Student Performance Evaluation
Homework (25%): 1 per week, most weeks.
Two Class Tests (25%):
Test 1, TBA, 11:00-11:50AM, Broun 235.
Test 2, TBA, Oct 22, 11:00-11:50AM, Broun 235.
CPU Design Project (25%).
Final Exam (25%): Thursday, May 7, 2015, 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.
Spr 2015, Jan 14
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).
Spr 2015, Jan 14
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
Spr 2015, Jan 14
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
Spr 2015, Jan 14
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
Spr 2015, Jan 14
ELEC 5200-001/6200-001 Lecture 1
10
Instruction Set Architecture (ISA)
Application
software
Systems software
Hardware
Spr 2015, Jan 14
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)
Spr 2015, Jan 14
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
Spr 2015, Jan 14
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.
Spr 2015, Jan 14
ELEC 5200-001/6200-001 Lecture 1
14
Architecture and Organization
ISA
Hardware
Engineers
Software
Programmers
Spr 2015, Jan 14
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
Spr 2015, Jan 14
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, . . .
Spr 2015, Jan 14
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):
– L. Hoffmann, “Q&A: RISC and Reward (An Interview with David
Patterson),” Comm. ACM, vol. 57, no. 3, pp. 112, 111, March
2014.
– S. Borkar and A. A. Chen, “The Future of Microprocessors,”
Comm. ACM, vol. 54, no. 5, pp. 67-77, May 2011.
Spr 2015, Jan 14
ELEC 5200-001/6200-001 Lecture 1
18
Descargar

Slide 1