CCSE251 Introduction to Computer Organization

Slides:



Advertisements
Similar presentations
4/23/2015Engineering Problem Solving with C++ second edition, J. ingber 1 Engineering Problem Solving with C++, Etter/Ingber Chapter 1.
Advertisements

Introduction to Computer Programming Nai-Wei Lin Department of Computer Science and Information Engineering National Chung Cheng University.
History of Computers.
HARDWARE AND SOFTWARE DEVELOPMENT By: Pratama Wahyu Purnama ( ) Maulida Yulianti ( )
Chapter 1: Introduction We begin with a brief, introductory look at the components in a computer system We will then consider the evolution of computer.
Chapter 1 Introduction. Computer Architecture Instruction Set Architecture (ISA): The part of the processor that is visible to the programmer or compiler.
Chapter 1 Introduction.
Chapter Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing Describe.
Chapter 01 Introduction Chapter 0 Introduction. Chapter 02 History of Computing - Early Computers Abacus (ancient orient, still in use) Slide rule (17C,
Appendix The Continuing Story of the Computer Age.
Lecture 2 Computer development history. Topic History of computer development Computer generation Programming language.
1 Computer Systems Hardware, Software and Layers of Abstraction.
1 The development of modern computer systems Early electronic computers Mainframes Time sharing Microcomputers Networked computing.
1 Chapter 1 The Big Picture. 2 2 Computing systems are dynamic entities used to solve problems and interact with their environment. They consist of devices,
Some of these slides are based on material from the ACM Computing Curricula 2005.
Computer Organization and Assembly language
Prepared by: Jasper Francisco. The Early Years 1  In the early years, before the computer was invented, there were several inventions of counting machine.
Chapter 01 Nell Dale & John Lewis.
Wilhelm Schickhard (1623) Astronomer and mathematician Automatically add, subtract, multiply, and divide Blaise Pascal (1642) Mathematician Mass produced.
The History of Computers
Overview Introduction The Level of Abstraction Organization & Architecture Structure & Function Why study computer organization?
CS 1410 Intro to Computer Tecnology Computers and History1.
Lecture 1: What is a Modern Computer
Chapter 1 The Big Picture.
Computer system overview1 The Effects of Computers Pervasive in all professions How have computers affected my life? How have computers affected my life?
1.1 The Computer Revolution. Computer Revolution Early calculating machines Mechanical devices used to add and subtract By Babylonian (Iraq) 5000 years.
Cosc 2150: Computer Organization
Computer Architecture And Organization UNIT-II Multilevel View Point Of A Machine.
Introduction Computer Organization and Architecture: Lesson 1.
From the abacus to microprocessors Exploring the Digital Domain The History of Digital Computers.
1 Why study computer organization and architecture? –Design better programs, including system software such as compilers, operating systems, and device.
CMSC 120: Visualizing Information 1/29/08 Introduction to Computing.
COMP 268 Computer Organization and Assembly Language A Brief History of Computing Architecture.
Introduction. 2 Objectives Know the difference between computer organization and computer architecture. Understand units of measure common to computer.
Computer Generations Evolution of the Computer. Modern Computers Modern computers – Binary, electrical, computational devices.
Chapter 1 Introduction.
Computer Architecture And Organization UNIT-II General System Architecture.
Computer Engineering Rabie A. Ramadan Lecture 1. 2 Welcome Back.
History of Computer Wyatt Feiling Did you know... The first idea for a computer was in the early 1800s Charles Babbage is the man who is credited with.
Computer Architecture Lec 06: Computer Architecture Introduction.
Computer Generations ITSC 1401, Intro to Computers Instructor: Glenda H. Easter.
Why build a computer? u Computers were developed to mechanize mathematical computations. u Two definitions:  A computer is “a programmable electronic.
Chapter 1 INTRODUCTION, EVOLUTION & PERFORMANCE. Chapter 1 Objectives Computer system organization and architecture. Units of measure common to computer.
Von Neumann Computers Article Authors: Rudolf Eigenman & David Lilja
a.Mecanical Era A mechanical computer is a computer whose components are gearwheel, shaft, crank, and plat made from iron/steel To move it, powerful energy.
+ CS 325: CS Hardware and Software Organization and Architecture Introduction 2 2/2/
1 Chapter 2 Computer Evolution and Performance by Sameer Akram.
CS 101 INTRODUCTION TO COMPUTING * image from The Central Eglinton Community Centre website.
Computer Architecture
Evolution of the Computer. Zeroth Generation- Mechanical 1.Blaise Pascal –Mechanical calculator only perform Von Leibiniz –Mechanical.
Computer Operation. Binary Codes CPU operates in binary codes Representation of values in binary codes Instructions to CPU in binary codes Addresses in.
Computer Organization IS F242. Course Objective It aims at understanding and appreciating the computing system’s functional components, their characteristics,
Computer A Computer may be defined as an electronic device that operates upon data. So, a computer can store, process and retrieve data as and when desired.
Unit 0 What is COSC 2410?. Chapter 1 Objectives Computer organization and architecture. Units of measure common to computer systems. Computer as a layered.
Chapter 1 Introduction.
4. History of Computing Technology
Computer Organization and Architecture Lecture 1 : Introduction
CSC235 Computer Organization & Assembly Language
Computer Organization and Machine Language Programming CPTG 245
Chapter 1 The Big Picture
COMPUTER ARCHITECTURE
History Computers.
Architecture & Organization 1
Architecture & Organization 1
BIC 10503: COMPUTER ARCHITECTURE
A primer on Computers and Programs
CS 330 Programming Languages
Chapter 0 Introduction Introduction Chapter 0.
Dr. Clincy Professor of CS
CSCI-100 Introduction to Computing
Presentation transcript:

CCSE251 Introduction to Computer Organization Overview

What is Computer Organization about? refers to the level of abstraction above the digital logic level, but below the operating system level. At this level the major components are functional units or subsystems that correspond to specific pieces of hardware (e.g., memory, register) built from the lower level building blocks (e.g., logic gates) How does a computer work???

Why Study Computer Organization? Gain an understanding of the underlying implementation of code. pointers, memory usage, code constructs Design better programs. including system software such as compilers, operating systems, and device drivers. Learn important computer science concepts. dual between hardware and software Optimize program behavior. Understand time, space, and price tradeoffs. hardware or software decisions?

Principle of Equivalence of Hardware and Software Anything that can be done with software can also be done with hardware, and anything that can be done with hardware can also be done with software. Assumes speed and cost are not a concern. Hardware is almost always faster and more expensive.

Computer Components At the most basic level, a computer is a device consisting of three pieces:

Computer Level Hierarchy A hierarchical design divides a computer system into manageable layers. Each layer can be implemented without intimate knowledge of the other layers. Each layer is an abstraction of the level below it. Each layer executes their own particular instructions, calling upon lower layers to perform tasks as required. Computer circuits ultimately carry out the work.

Computer Level Hierarchy

Computer Level Hierarchy Level 6: User Program execution and user interface level. The level with which we are most familiar.

Computer Level Hierarchy Level 5: High-Level Language The level with which we write programs in languages such as C, Pascal, Lisp, and Java.

Computer Level Hierarchy Level 4: Assembly Language Acts upon assembly language produced from Level 5, as well as instructions programmed directly at this level.

Computer Level Hierarchy Level 3: System Software Controls executing processes on the system. Protects system resources. Inserts system library code. Assembly language instructions often pass through Level 3 without modification.

Computer Level Hierarchy Level 2: Machine Also known as the Instruction Set Architecture (ISA) Level. Consists of instructions that are particular to the architecture of the machine.

Computer Level Hierarchy Level 1: Control A control unit decodes and execute instructions and moves data through the system. Internal to the microprocessor and can be microprogrammed or hardwired.

Computer Level Hierarchy Level 0: Digital Logic This level is where we find digital circuits (the chips). Digital circuits consist of gates and wires. These components implement the mathematical logic of all other levels. Note: Gates are abstractions of actual hardware.

We are going to cover

von Neumann Model von Neumann computers have the following characteristics: Three hardware systems: A central processing unit (CPU) A main memory system An I/O system The capacity to carry out sequential instruction processing. A single data path between the CPU and main memory. This single path is known as the von Neumann bottleneck.

von Neumann Architecture This is a general depiction of a von Neumann system: These computers employ a fetch-decode-execute cycle to run programs as follows . . .

von Neumann Architecture The control unit fetches the next instruction from memory using the program counter to determine where the instruction is located.

von Neumann Architecture The instruction is decoded into a language that the ALU can understand.

von Neumann Architecture Any data operands required to execute the instruction are fetched from memory and placed into registers within the CPU.

von Neumann Architecture The ALU executes the instruction and places results in registers or memory.

History of Computing Devices Generation Zero: Mechanical Calculating Machines (1642-1945) First Generation: Vacuum Tube Computers (1945-1953) Second Generation: Transistorized Computers (1954-1965) Third Generation: Integrated Circuit Computers (1965-1980) Fourth Generation: VLSI Computers (1980-present)

Generation Zero: Mechanical Calculating Machines (1642-1945) Calculating Clock - Wilhelm Schickard (1592 - 1635). Pascaline - Blaise Pascal (1623 - 1662). Difference Engine - Charles Babbage (1791 - 1871), also designed but never built the Analytical Engine. Punched card tabulating machines - Herman Hollerith (1860 - 1929).

Generation Zero: Mechanical Calculating Machines (1642-1945) Charles Babbage Analytical Engine Started in 1834 Never finished No Hertz Rating

First Generation: Vacuum Tube Computers (1945-1953) Atanasoff Berry Computer (1937-1938) John Atanasoff and Clifford Berry of Iowa State University solved systems of linear equations. Electronic Numerical Integrator and Computer (ENIAC) (1946) John Mauchly and J. Presper Eckert of University of Pennsylvania First general-purpose computer.

First Generation: Vacuum Tube Computers (1945-1953) Eckert and Mauchly 18,000 Vacuum tubes 1,800 instructions/sec 3,000 ft3

Second Generation: Transistorized Computers (1954-1965) IBM 7094 (scientific) and 1401 (business) Digital Equipment Corporation (DEC) PDP-1 Univac 1100 Control Data Corporation 1604 . . . and many others

Third Generation: Integrated Circuit Computers (1965-1980) IBM 360 DEC PDP-8 and PDP-11 Cray-1 supercomputer . . . and many others By this time, IBM had gained overwhelming dominance in the industry. Computer manufacturers of this era were characterized as IBM and the BUNCH (Burroughs, Unisys, NCR, Control Data, and Honeywell).

Fourth Generation: VLSI Computers (1980-present) VLSI (very large scale integration) enable more than 10,000 components per chip. The first was the 4-bit Intel 4004. first microprocessor Later versions, such as the 8080, 8086, and 8088 spawned the idea of “personal computing.”

Fourth Generation: VLSI Computers (1980-present) Intel 8086 29,000 transistors 33 mm2 5 MHz Introduced in 1979 Basic architecture of the IA32 PC

Fourth Generation: VLSI Computers (1980-present) Pentium 3,100,000 transistors 296 mm2 60 MHz Introduced in 1993 1st superscalar implementation of IA32

Multi Core Processors A single chip has multiple processing units Dual core has 2 processing units Quad core has 4 processing units Allows multiple programs to be executed at once. Programs can also take advantage of multiple processing units. Software must be specifically designed to do this. Software is hard to write Faster than having multiple processors (each on a separate chip) Processing elements are “closer” Communication off-chip is slow

What next? Enormous improvements in computational power require departure from the classic von Neumann architecture. Possible 5th generations? A computer that would use artificial intelligence techniques to learn, reason, and converse in natural languages resembling human languages.