26
+ CS 325: CS Hardware and Software Organization and Architecture Introduction

+ CS 325: CS Hardware and Software Organization and Architecture Introduction

Embed Size (px)

Citation preview

+ CS 325: CS Hardware and SoftwareOrganization and Architecture

Introduction

+Outline

Get to know each other

Course information

Course website

Syllabus

Term project

+Myself

Dr. Michael Galloway COHH 4135 [email protected]

Ph.D. – Computer Science – The University of Alabama, Aug. 2013 Specialization: Parallel and Distributed Computing, Cloud Computing

Local Infrastructure as a Service Cloud Architectures

M.S. – Computer Science – The University of Alabama, May 2008 Specialization: VANETs, MANETs, Network Protocols

B.W.E – Wireless Engineering – Auburn University, December 2005 Specialization: Wireless Communication Protocols, Resource Management of

Handheld Devices.

Taught classes at 6 colleges and universities First time teaching computer organization and architecture

Current Research: Infrastructure Cloud Architectures, Automated Resource Deployment, Vertical Educational Clouds, Power Modeling

Co-Chair: WKU ACM Student Chapter – Everyone should join!!

+Yourself

Your name

What you would like to be called

What would you like to learn from this class?

Anything you would like us to know

+Course Description

This course will provide a means for advanced coverage of computer systems and architecture, provide a bridge between low-level hardware systems and operating systems programming and provide a means for in-depth coverage of new generation hardware and computer systems.

Topics include computer number representations, computer arithmetic, CPU operations, instruction sets, I/O memory management, system performance, and parallelism.

+Important Information

Course Website: http://ip204-5.sth.wku.edu//cs325Web/

Required Book: “Computer Organization and Architecture”

by William Stallings, ninth edition.

Office Hours: 8am – 11am on Tuesday, Thursday

+Why Should We Study Computer

Architecture?

It’s required

Understand computer performance and cost factors.

Basis for understanding OS and programming concepts.

Understand how to write programs that are: Faster Smaller Less prone to error

To appreciate the relative cost of operations and the effect of programming choices.

Helps you to debug.

+The Bad News…

Digital Hardware Is complex Cannot be fully understood in one course Requires background in electrical engineering, physics,

chemistry

The CPU is the most complex device created by humans. Over 2 Billion transistors (2013) Transistor switching speed of over 4 billion/sec (4Ghz) 22nm fabrication process, and getting smaller

14nm scale projected for 2014 ~60 Si atoms!

+The Good News!

It is possible to understand the architectural components without knowing all of the low-level details.

Programmers only need to know the essentials Characteristics of major components Role in overall system Consequences for programmers

Computer Architecture

•The operational units and their interconnections that realize the architectural specifications

•Hardware details transparent to the programmer, control signals, interfaces between the computer and peripherals, memory technology used

• Instruction set, number of bits used to represent various data types, I/O mechanisms, techniques for addressing memory

•Attributes of a system visible to the programmer

•Have a direct impact on the logical execution of a program

Computer Architectur

e

Architectural

attributes include:

Computer Organizatio

n

Organizational

attributes include:

Computer Organization

+ IBM System

IBM System/370 architecture Was introduced in 1970 Included a number of models Could upgrade to a more expensive, faster model without having to

abandon original software New models are introduced with improved technology, but retain

the same architecture so that the customer’s software investment is protected

Architecture has survived to this day as the architecture of IBM’s mainframe product line

370 Architecture still in use by IBM today! IBM zSeries IBM zEnterprise Series

370 Architecture

+Intel x86

1978 – Introduced 8088, 16 – bit 80186, 80286

1985 – 80386, 32 – bit 80486, Pentium, Pentium MMX

1995 – Pentium Pro Pentium II, Pentium III

2000 – Pentium 4

2006 – Core 2, 64 – bit, multi-core

2008 – Core i3/i5/i7 Atom

Backward compatible instruction set architectures

+Basic Structure of Computers

+Sharing the CPU (Context

Switching)

+CPU Cache

+Function

A computer can perform four basic functions:

● Data processing● Data storage● Data movement● Control

+

Operations

(a) Data movement

+

Operations

(b) Data storage

+

Operations

(c) Data movement

+

Operations

(d)Control

The Computer

Structure

+ CPU – controls the

operation of the computer and performs its data processing functions

Main Memory – stores data

I/O – moves data between the computer and its external environment

System Interconnection – some mechanism that provides for communication among CPU, main memory, and I/O

There are four main structural componentsof the computer:

+CPU

Control Unit Controls the operation of the CPU

and hence the computer

Arithmetic and Logic Unit (ALU) Performs the computer’s data

processing function

Registers Provide storage internal to the

CPU

CPU Interconnection Some mechanism that provides

for communication among the control unit, ALU, and registers

Major structural components:

+ Summary

Computer Organization

Computer Architecture

Function Data processing Data storage Data movement Control

Structure CPU Main memory I/O System interconnection

CPU structural components Control unit ALU Registers CPU interconnection

+Internet Resources- Web site for book

http://WilliamStallings.com/COA/COA9e.html Links to sites of interest Links to sites for courses that use the book Errata list for book Information on other books by W. Stallings

http://WilliamStallings.com/StudentSupport.html Math How-to Research resources Misc