Computer Architecture - PowerPoint PPT Presentation

1 / 28
About This Presentation
Title:

Computer Architecture

Description:

DOS, CPM, MacOS, Windows NT, OS/2, Linux. ADA, C , Java, HTML. Big Picture ... 80x86/Pentium/P6, PowerPC, DEC Alpha, MIPS, SPARC, HP. Workstation performance ... – PowerPoint PPT presentation

Number of Views:29
Avg rating:3.0/5.0
Slides: 29
Provided by: studentweb1
Category:

less

Transcript and Presenter's Notes

Title: Computer Architecture


1
Computer Architecture Dr. W.
Intro
2
Overview
  • Goal of this course
  • break open the box
  • examine the guts of computers and system software
  • reveal the secrets of computers

3
Advances in Technology
  • Processor
  • logic capacity about 30 per year
  • clock rate about 20 per year
  • Memory
  • DRAM capacity about 60 per year (4x every 3
    years)
  • Memory speed about 10 per year
  • Cost per bit improves about 25 per year
  • Disk
  • capacity about 60 per year

4
Motivation
  • Embedded Systems
  • automotive electronics
  • high-end BMW has 88 microprocessors on 3
    different busses
  • drive-by-wire, anti-lock brakes, active
    suspension
  • avionics
  • fly-by-wire
  • consumer electronics
  • PDAs, cell phones, set-top boxes, stereo
    equipment
  • scientific equipment
  • Human Genome Project, measurement devices

5
Moore's Law
  • Moores Law the complexity of integrated
    circuits will double every 12, 18, 24 months
  • (Intel co-founder and chairman emeritus Gordon
    Moore.
  • Excerpts below from a July 10, 2002 interview )
  • Process technology able to put more and more
    functionality on the same chip as the cpu

6
History
  • J. Presper Eckert and John Mauchly build first
    electronic general-purpose computer at Moore
    School of UPenn during WWII
  • ENIAC - Electronic Numerical Integrator and
    Calculator
  • funded by US Army to calculate artillery firing
    tables
  • 80 feet long by 8.5 feet high
  • 18,000 vacuum tubes
  • 20 10-digit registers (each 2 feet long)
  • 1900 additions per second (0.19 MIPS machine)
  • programmed by plugging cables and setting switches

7
Generations
  • First generation
  • abacus, punch cards for textile machines
  • Second generation (1940 - 1960)
  • ENIAC
  • Whirlwind Project at MIT
  • 2K magnetic core memory (popular for 30 years,
    NASA)
  • 16 bit words
  • vacuum tubes
  • 100 times larger than todays machines
  • 1/10,000 speed of todays machines
  • programmed in machine code (1s and 0s)

8
Generations
  • Third generation (1960 -1968)
  • Microprogramming introduced
  • IBM 360 family
  • Early work with windows, pointing devices,
    networking (XEROX PARC)
  • Programming in FORTRAN, COBOL, Basic
  • Fourth generation (1969 -1977)
  • Minicomputers
  • First microprocessors
  • UNIX
  • Assembler, C, Pascal, Modula, Smalltalk

9
Generations
  • Fifth generation (1978 - ?)
  • VLSI (Very Large Scale Integration)
  • DOS, CPM, MacOS, Windows NT, OS/2, Linux
  • ADA, C, Java, HTML

10
Big Picture
Microsoft Office
Operating Systems
Netscape
Compilers/ Assemblers
Processor
Caches
System bus
11
Performance
  • Memory model has impact on performance
  • In 1960s 1970s memory was very expensive
  • fast programs were small programs
  • Today caches are relatively small (64-256Kbytes)
  • fast programs are small programs
  • To make a program faster we need to find the
    bottleneck
  • Amdahls Law optimize the common case (well
    revisit later)
  • How fast should a desktop computer be to make web
    surfing faster?

12
Classic Computer Organization
Computer
13
Computer Organization
  • Comprised of 4 parts
  • Input - mouse, keyboard, microphone, disk
  • Output - display, disk, sound
  • Memory - main memory, cache, video ram
  • CPU
  • ALU
  • control logic
  • Parts are connected by busses
  • Bus
  • address
  • data
  • control
  • common busses PCI, SCSI, USB, serial, ethernet,
    Firewire

14
Memory
  • Storage for
  • instructions
  • data
  • Recipe box analogy
  • ingredients (data)
  • recipe (instructions)

15
Memory
  • DRAM - dynamic random access memory
  • very dense (cheap) because memory cell is simple
  • need to periodically refresh or contents lost
  • commonly used as main memory
  • SRAM - static random access memory
  • cell is more complicated (expensive)
  • refresh not required
  • cache memory
  • Hard disks
  • cheap for the amount of storage
  • 10 gigabyte of RAM vs. 10 gigabyte disk
  • ram access 50ns disk access 5ms (5000ns)

16
DRAM capacity
17
Where are we now?
  • "... global DRAM demand is gathering steam
    following the semiconductor industry's worst-ever
    slowdown. Prices of standard 128Mbit DRAM have
    recovered significantly from about 1 last year,
    analysts said Infineon expects that production
    at Winbond will begin with 256Mbit DDR memory
    chips, with a potential future migration to
    512Mbit components. " 03/11/02
  • http//www.ebnonline.com/story/OEG20020311S0016

18
Architecture
  • Two main architectures Von Neumann and Harvard
  • John Von Neumann from Princeton
  • Howard Aiken from Harvard
  • Von Neumann architecture
  • combines data and instructions in same physical
    memory
  • Harvard architecture
  • data and instructions each have their own
    physical memory

19
Architecture
  • Most contemporary machines based on Von Neumann
  • Von Neumann bottleneck
  • memory bandwidth
  • data and address signals use same bus

20
Instruction Set Architecture (ISA)
  • A very important abstraction
  • interface between hardware and low-level software
  • standardizes instructions, machine language bit
    patterns, ...
  • advantage different implementations of the same
    architecture
  • disadvantage sometimes prevents using new
    innovations
  • consider Intels 80x86 ISA
  • same software runs on Pentium, 80486, 80386,
    80286, 8086
  • Modern instruction set architectures
  • 80x86/Pentium/P6, PowerPC, DEC Alpha, MIPS,
    SPARC, HP

21
Workstation performance
22
  • http//www.anandtech.com/

23
Software
  • Computer is a programmable machine
  • changing software changes its functionality
  • able to act like other machines (JavaVM, Virtual
    PC)
  • Early programming in machine code
  • Wrote a program to output machine code from
    assembly
  • Wrote a program to output assembly from a higher
    level language (e.g. C)
  • Wrote a program to output C from an even higher
    level language
  • Ex Janus is a language designed for distributed
    constraint programming. The tool jc compiles
    Janus programs down to C code.

24
Combining hardware and software
  • Functional specification find sum of 2 and 3
  • Need to translate above into a representation
    that computer can handle
  • can have many different translations (not
    unique)
  • translation is called software design
  • result is a computer program
  • Still need to translate to get to machine language

25
Application Software (User Program)
26
Compilers/Assemblers
  • A compiler is a tool for translating programs
  • One target is assembly language
  • At this point, program is machine-dependent
  • Assembler takes assembly language and outputs
    machine language
  • binary code (1s and 0s)

27
Linker/Loader
  • All variables and data structures
  • must reside in memory
  • each needs an address
  • Addresses
  • which address should we use
  • absolute vs relocatable
  • assembler generates relocatable code
  • How do we use existing code without typing it in
    every time?
  • Linker/loader
  • links program modules together
  • resolves addresses
  • At this point we have a computer program on the
    hard drive

28
Running the program
  • Program copied from hard drive to main memory
  • Next to cache
  • Finally to instruction register
Write a Comment
User Comments (0)
About PowerShow.com