You are on page 1of 58

D.

Nikolik, CompArch, 2004

Computer Systems Architecture

D. Nikolik, Ph.D Maastricht School of Management Maastricht, The Netherlands

D. Nikolik, CompArch, 2004

Summary

The Outline The Need for Frameworks and Models Work System Framework & Principles Relation between Information Systems and Work Systems Principle-based System Analysis Method: The Work System Framework Need for a Balanced View of a System Principle-Based System Analysis Method Computer Systems Overview A Computer: A Complex System Basic Functions Systems Performance Overview of Computer Systems Looking Inside the Black Box or how computers manipulate data Data Input: Capturing Data Storing and Retrieving Data Data Output: Displaying Data Studying Approaches Top-down decomposing vs. Bottom-up building-up Modular Development

D. Nikolik, CompArch, 2004

Summary (cont.)

Brief History Later Generations: Microprocessors (Intel) Client Architecture Server Architectures Computer Interconnection Structures Internal and External Memory Input / Output Direct Memory Access (DMA) Software, Programming, and AI Programming Viewed as a Business Process Four Generations of Programming Languages Other Major Developments in Programming Operating Systems Steps Toward Intelligent Computers Operating Systems Architecture CPU Structure & Function Control Unit Operation Parallel Organizations Fault - Tolerance Systems Reduced Instruction Set Computers RISC Pipelining (Graph Colouring)

D. Nikolik, CompArch, 2004

The Outline
Frameworks and Models An Overview: Introduction; A Brief History Computer Structure Decisions Computer Memory Hierarchy Input/Output Performance Operating Systems - Resource Sharing CPU Architectural Constraints CPU Performance Issues Efficiency, Reliability and Fault-tolerance New Computer Architecture Trends - RISC

D. Nikolik, CompArch, 2004

The Need for Frameworks and Models


Viewing Businesses as Systems
Information Systems and Work Systems Framework for Thinking About Any System in Business Five Perspectives for Viewing a Work System Analyzing an IT-Enabled System from a Business Professional's Viewpoint

D. Nikolik, CompArch, 2004

Work System Framework & Principles


Businesses as Systems consisting of Business Processes: core & support, info/management within its own Added Value Chain or as

part of a broader Supply Chain: up/down-stream.


Types of Business Processes and its Functional Areas of Business: management, product development, sales & marketing, production, accounting, finance & investment, logistics & delivery

D. Nikolik, CompArch, 2004

Relation between Information Systems and Work Systems

Which "System" Are We Talking About? Increasing Overlap Between Information Systems and Business-based Work Systems

D. Nikolik, CompArch, 2004

Principle-based System Analysis Method


The Work System Framework
Customers
Product Business Process Participants Information

Technology
Source: S. Alter, MIS, The foundation of e-Business, AWL, 2002

D. Nikolik, CompArch, 2004

Need for a Balanced View of a System


Business Results Focus: How well the System Operates

People & Organization; Organizational, Competitive, and Regulatory Environment Surrounding the System
Technology & Information Focus: System Components & How do they Operate Together Infrastructure: Essential Resources Shared with Other Systems Risks: Foreseeable Things that Can usually Go Wrong

D. Nikolik, CompArch, 2004

10

Principle-Based System Analysis Method


The General Idea of Systems Analysis
Systems Thinking: system analysis steps Organizing the Analysis around Work System Principles

Defining Problems and Computer - based Work Systems


Applying PBSA to Work Systems, IS, and Projects

Limitations and Pitfalls


Measuring Work System Performance Classification Related to the Elements of a Work System

D. Nikolik, CompArch, 2004

11

William Stallings Computer Organization and Architecture th 6 Edition


Chapter 1 Introduction

D. Nikolik, CompArch, 2004

12

Computer Systems Overview


Basic Model of a Computer System:
Computer Architecture

Computer Organisation
Architecture vs. Organisation Dilemma ex.: Multiplication oper. vs. Fmult. unit Implementation technology: IBM AS/400 IBM System/370 vs. IBM Station/9370

D. Nikolik, CompArch, 2004

13

A Computer: A Complex System


A hierarchic system: is a set of interrelated subsystems each of the latter in turn, hierarchic in structure until lowest level of elementary subsystem.
The hierarchic nature of complex systems is essential to both their design and to their descriptions. The behavior at a level depends only on a simplified, abstract characterization of the system at the level next, beneath. At each level the designer is concerned with: a level functionality appropriate to its structure.

D. Nikolik, CompArch, 2004

14

Basic Functions
Data storage, Data processing,
Operating Environment source & destination data Data movement Backup processing I/O processing Control mechanism processing Data storage Data processing

Data movement,
Control System Operations

D. Nikolik, CompArch, 2004

15

William Stallings Computer Organization and Architecture 6th Edition


Chapter 2 Computer Evolution and Performance

D. Nikolik, CompArch, 2004

16

Systems Performance
Performance Variables for IT

Bits and Bytes: Technical Terms for Describing and Measuring Technology Operation
Technology Performance from a Business Viewpoint Overview of Computer Systems Looking Inside the Black Box Data Input: Capturing Data Storing and Retrieving Data Data Output: Displaying Data

D. Nikolik, CompArch, 2004

17

Overview of Computer Systems


Basic Model of a Computer System
Types of Computers: Hosts and C/S Four Approaches to Computing: Centralized, Personal, Distributed, Network Computer System Architectures

Client-Server (C/S) and Beyond


Thin vs. Fat Clients and Servers

D. Nikolik, CompArch, 2004

18

Looking Inside the Black Box or how computers manipulate data


Coding Data for Computer Processing: programming
Machine Languages: assembling, compiling, debugging Programming Languages & Systems Development Approaches for Increasing Computer Performance: modular, broader/wider, faster, in parallel, code/data

Impact of Miniaturization & Integration on Performance


Other Approaches for Improving Performance

D. Nikolik, CompArch, 2004

19

Data Input: Capturing Data

Keyboards and Pointing Devices

Optical Character Recognition


Capturing Pictures, Sounds, and Video New Digital Devices (wireless WAP & JINI standards)

D. Nikolik, CompArch, 2004

20

Storing and Retrieving Data


Paper and Micrographics Magnetic Tapes and Disks (RAID)

Lossy vs. Lossless Compression


Optical Disks

Flash Memory
Smart Cards

D. Nikolik, CompArch, 2004

21

Data Output: Displaying Data


Screen Outputs
Paper Outputs Audio Outputs Intelligent Reasoning: Neural Networks

Fuzzy Logic
Case-Based Reasoning Intelligent Mobile Agents

D. Nikolik, CompArch, 2004

22

Studying Approaches
Top-down decomposing vs. Bottom-up building-up
OPERATING ENVIRONMENT Peripherials COMPUTER I/O System interconnection Main memory Communication lines

Hierarchical computer structure CENTRAL PROCESSING UNIT The CPUs


ALU CPU Transfer Bus CONTROL UNIT Registers

CPU Interconnection Structures


System Components Sequencing

Control RO memory CU Registers & Decoder

D. Nikolik, CompArch, 2004

23

Modular Development
Brief history;

Interconnection structures - data and control signals exchange;


Internal & External Memories - memory hierarchy; Input-Output - programmed and interrupt I/O, DMA;

Operating System - resource management and scheduling;


CPU Structure and Function - executing machine instructions; Control Unit Operations - micro-operations and control;

Parallel Organization - sequential vs. parallel machine;


RISC Architecture - a new trend in CPU architecture; Parallel PC NUMA Networks - the Beowulf Project.

D. Nikolik, CompArch, 2004

24

Brief History
The Mill Arithmetic function The Store Memory function Printer & Card Punch

Operational cards - what

Variable cards - where

The Structure of Babbage's Analytical Engine: the layout John Atanasoff, Clifford Berry: ABC, 1939; John Mauchly & John Eckert:ENIAC, 1946, First GP Comp., IAS - Prototype of Subsequent General Purpose Computers Structure First Commercial Computers: IBM System/360; DEC PDP-8 The Second Generation: Transistors The Third Generation : Integrated Circuits Micro Electronics: a New Technology in Electronics

D. Nikolik, CompArch, 2004

25

Later Generations: Microprocessors (Intel)


Contemporary computers

Characteristics of some contemporary computers


Personal Computer (WinIntel): Component-based bus architectures Minicomputer
CPU next address r/w memory I/O address I/O data MAR MBR I/O AR I/O BR Memory 0 1 2 3 4 Instruction buffer memory Data I/O Module

Mainframes
Super computers

Cray Y-MP IBM 3090/600 VAX 8842 IBM AS/400 IBM PS/50

D. Nikolik, CompArch, 2004

26

William Stallings Computer Organization and Architecture th 6 Edition


Chapter 3 System Buses

D. Nikolik, CompArch, 2004

27

Client Architecture
MMXs Cache
Audio DRAMs Video

Bus

LAN

Bridge

SCSI

Graphics

Exp. Bus

I/Os

D. Nikolik, CompArch, 2004

28

Symmetrical Multi-Processing (SMP)


CPU CPU MEM MEM

Massively Parallel Processing (MPP)


CPU MEM

MEM

CPU

Systembus

Server Architectures
I/O Bus
MEM CPU CPU MEM

Non Uniform Memory Access (NUMA)

MEM

CPU

MEM

CPU

MEM

CPU

MEM

CPU

MEM

CPU

MEM

CPU

MEM

CPU

MEM

CPU

SMP SHV clusters


Scalable InterConnect Systembus

D. Nikolik, CompArch, 2004

29

Computer Interconnection Structures


Data Sequence of Arithmetic and Logic functions Results

Computer components

Programming in Hardware
Instr. interpreter

Programming in Software
Data

Interrupt cycle I/O function

General-purpose Arithmetic and Logic functions


Start Fetch cycle

Results

Interconnection structures Bus interconnection Elements of the Bus design


CPU

Fetch next instruction Execute cycle Execute instruction Disabled Enabled Check & process interupt Halt Interupt cycle

Memory

....

Memory

I/O

....

I/O

Control lines BUS Address lines Data lines

D. Nikolik, CompArch, 2004

30

William Stallings Computer Organization and Architecture 6th Edition


Chapter 4 Cache Memory

D. Nikolik, CompArch, 2004

31

William Stallings Computer Organization and Architecture 6th Edition


Chapter 5 Internal Memory

D. Nikolik, CompArch, 2004

32

William Stallings Computer Organization and Architecture th 6 Edition


Chapter 6 External Memory

D. Nikolik, CompArch, 2004

33

Internal & External Memory


Computer Memory System Overview
Memory Hierarchy Organisation
CPU Register Cache Main memory Buffer memory RA access disk Sequen. access tape

Error Correction (ECC)


Cache Memory Magnetic Disk

internal
CPU Cache

external
Main memory

word transfer block transfer Characteristics of Disk Systems: direct-access device DAD

Magnetic Tape: sequential access device - Archive memory Optical memory: compact drives - CD memory

D. Nikolik, CompArch, 2004

34

William Stallings Computer Organization and Architecture 6th Edition


Chapter 7 Input/Output

D. Nikolik, CompArch, 2004

35

Input / Output
I/O Module in/out Control Status Buffer memory Transducer Data store conversion I/O Module not/ready Data bits to/from

Control Logic

External Devices

Data (device unique) to/from environment


Interface to the system bus Data Lines Address Lines Control Lines Data Register Status & Control Register I/O Logic External Inteface Logic External Inteface Logic Interface to the external device Data Status Control Data Status Control

Visual Display Units (VDU)


Disk Drive

I/O Modules
Programmed I/O Interrupt-driven I/O

D. Nikolik, CompArch, 2004

36

Direct Memory Access (DMA)


System Bus CPU DMA I/O : I/O Memory Inexpensive, but inefficient - 2 bus cycles/transfer, data transfer System Bus CPU DMA : DMA Memory

I/O

I/O

I/O

Integrated DMA & I/O aside the system bus System Bus CPU DMA I/O bus I/O I/O I/O : Memory

Integrated DMA & I/O bus

I/O Channels and Processors

D. Nikolik, CompArch, 2004

37

Software, Programming, and AI


Thinking about the Current Limits of Software Types of Software Programming Viewed as a Business Process

Four Generations of Programming Languages


Other Major Developments in Programming Object-Oriented Component-Based Development Operating Systems (Windows vs.Unix/Linux) Steps Toward Programming Intelligence into Machines

D. Nikolik, CompArch, 2004

38

Programming Viewed as a Business Process


Programming as a Translation Process Organizing Ideas: Modelling vs. Workflow of Thought, Creating, Developing, Testing & Deploying Programs The Changing Nature of Programming & Data Structures

The Trend Toward Object-Oriented Programming - OOP:


State of Objects, Class Instances, Encapsulation, Inheritance, and Polymorphism

D. Nikolik, CompArch, 2004

39

Four Generations of Programming Languages


Machine Languages Assembly Languages Higher-Generation Languages

4GL & Scripting Languages

D. Nikolik, CompArch, 2004

40

Other Major Developments in Programming


Special-Purpose Languages Spreadsheets & Macro Routines Structural vs. OO Programming Computer Aided Software Engineering: CASE Tools

Component-Based Software Development: CBD Tools

D. Nikolik, CompArch, 2004

41

William Stallings Computer Organization and Architecture th 6 Edition


Chapter 8 Operating System Support

D. Nikolik, CompArch, 2004

42

Operating Systems
Operating Systems for Personal & Mobile Computers: Windows CE vs. Symbian OS

Operating Systems for Multi-User Computer Systems:


8/16 bit vs. 32/64 bit OS Architectures MS DOS/Windows 3.1/95/98/NT/2000/XP vs. Unix/Linux Why Operating Systems Are Important?

D. Nikolik, CompArch, 2004

43

Steps Toward Intelligent Computers


Natural Language Processing (NLP) Expert Systems (ES)

Artificial Neural Networks (ANN)


Fuzzy Logic

Case-Based Reasoning
Intelligent Agents (IA)

D. Nikolik, CompArch, 2004

44

Operating Systems Architecture


End User Application Programs Utilities Operating System System's Hardware Programmers's view OS designer's view

High-level Job Scheduling Short-term Job Scheduling a Dispatcher Memory Management


Virtual address miss TLB Page# Offset hit Page table + Cache operation Real address Tag Remainder Cache miss hit Main Memory Value

Virtual Memory Concept

State Management, Threads

D. Nikolik, CompArch, 2004

45

William Stallings Computer Organization and Architecture 6th Edition


Chapter 9 Computer Arithmetic

D. Nikolik, CompArch, 2004

46

William Stallings Computer Organization and Architecture 6th Edition


Chapter 10 Instruction Sets: Characteristics and Functions

D. Nikolik, CompArch, 2004

47

William Stallings Computer Organization and Architecture th 6 Edition


Chapter 11 Instruction Sets: Addressing Modes and Formats

D. Nikolik, CompArch, 2004

48

William Stallings Computer Organization and Architecture th 6 Edition


Chapter 12 CPU Structure and Function

D. Nikolik, CompArch, 2004

49

CPU Structure & Function


System Bus

Inside the CPU: Cycles

CPU ALU
Fetch

Registers Control Unit

Bus Address Control Data

Instructions Fetch
Indirect Cycle
Interrupt

Indirect Execute

Interrupt Cycle Processing


Execution CPU Data Flow

System

CPU Bus

Arithmetic and Logic Unit Status Flags Shifter Control Paths Complementer Arithmetic & Boolean Logic Control Unit Registers

D. Nikolik, CompArch, 2004

50

William Stallings Computer Organization and Architecture 6th Edition


Chapter 14 Instruction Level Parallelism and Superscalar Processors

D. Nikolik, CompArch, 2004

51

Control Unit Operation


Program Execution Instruction Cycle Instruction Cycle Fetch : ::

Indirect Execute Interrupt Fetch mOP mOP mOP


PC

Indirect mOP
MAR

Execute Interrupt mOP :


Control Bus

mOP
1 3a 8 high IR

Micro-code operations

Address Bus Data Bus 2 4 3b low 7 6

Execute micro-cycles

Control Unit MBR

Memory

Hardwired implementation (Firmware)

D. Nikolik, CompArch, 2004

52

William Stallings Computer Organization and Architecture 6th Edition


Chapter 18 Parallel Processing

D. Nikolik, CompArch, 2004

53

Parallel Organizations
CPU CPU : : : CPU I/O ... I/O Main Memory Interconections

Computer - a Sequential Machine?


Multiprocessing of Multiprocessors Systems Time-shared Bus Multiport Memory System Central Control Unit System (CCU) concept
M1 M2
CPU Cache CPU Cache I/O I/O System Bus Memory

Memory

Uniform Multiprocessor OS
P1

Mk I/O1 ... I/On

Vector Computational Systems

... Pm

Non-Uniform Memory Architectures (NUMA) Systems vs. Pool of Linux Networked PCs - the Beowulf Project

D. Nikolik, CompArch, 2004

54

Fault - Tolerance Systems


CPU Input Arbitration CPU Input Switch Output CPU CPU CPU Voter Output

Fault-tolerance - continue to process reliably even when a component fails Failure Conditions Software vs. Hardware Failures Characteristics of Fault-tolerant Systems
microprocessor microprocessor Gate Control Bus Gate Control Compare Logic microprocessor

Fault-tolerant Organisations Availability, Scalability, Reliability

Compare Logic microprocessor

D. Nikolik, CompArch, 2004

55

William Stallings Computer Organization and Architecture 6th Edition


Chapter 13 Reduced Instruction Set Computers

D. Nikolik, CompArch, 2004

56

Reduced Instruction Set Computers


parameter local temporary registers registers registers level j call/return parameter local registers registers

Instruction Execution Characteristics The use of a Large Register File


level j+1

Large Register File vs. Cache Memory Why the Trend in Reduced Instruction Set Architecture Technology?

registers

Instruction R(shorter code) Register file Decoder Window #

Data

RISC Pipeline Issues window-based register file approach Parallel Execution Instruction A(full address) Resolving Conflicts Tags Maintaining optimal Data Flow Compare cache-approach Data Tags: operation, data, mode/type

Data Select

Cache Data

D. Nikolik, CompArch, 2004

57

RISC Pipelining (Graph Colouring)


a r2 r3 d a X X X b X X X X X c X X X X X X X X d e f b r1 register assignem ents r2 e r3

f register m em ory store sym bolic registers X - register incidence

X X X

tim e instances

D. Nikolik, CompArch, 2004

58

William Stallings Computer Organization and Architecture 6th Edition


Chapter 15 IA-64 Architecture

You might also like