Comparch04 - MBA Program Resources

Download Report

Transcript Comparch04 - MBA Program Resources

1
D. Nikolik, CompArch, 2004
Computer Systems Architecture
D. Nikolik, Ph.D
Maastricht School of Management
Maastricht, The Netherlands
D. Nikolik, CompArch, 2004
Summary
2
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)
3
4
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
5
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
6
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
7
Relation between Information Systems and
Work Systems
Which "System" Are We Talking About?
Increasing Overlap
Between Information Systems
and
Business-based Work Systems
8
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
9
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
System’s 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
11
D. Nikolik, CompArch, 2004
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.
14
D. Nikolik, CompArch, 2004
Basic Functions
Data storage,
Data processing,
Operating Environment
source & destinat ion data
Data movement,
Data movement
Control
I/O processing
Backup processing
System Operations
Cont rol mechanism
processing
Data storage
Data processing
D. Nikolik, CompArch, 2004
William Stallings
Computer Organization
and Architecture
6th Edition
Chapter 2
Computer Evolution and
Performance
15
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)
20
D. Nikolik, CompArch, 2004
Storing and Retrieving Data
Paper and Micrographics
Magnetic Tapes and Disks (RAID)
Lossy vs. Lossless Compression
Optical Disks
Flash Memory
Smart Cards
21
D. Nikolik, CompArch, 2004
Data Output: Displaying Data
Screen Outputs
Paper Outputs
Audio Outputs
Intelligent Reasoning:
Neural Networks
Fuzzy Logic
Case-Based Reasoning
Intelligent Mobile Agents
22
D. Nikolik, CompArch, 2004
Studying Approaches
Top-down decomposing vs. Bottom-up building-up
OPERAT ING ENVIRONMENT
Peripherials
Communication lines
COMPUT ER
I/O
Main memory
System interconnect ion
Hierarchical computer
structure
CENT RAL PROCESSING UNIT
The CPUs
ALU
Registers
CP U T ransfer Bus
CPU Interconnection Structures
CONT ROL UNIT
System Components
Sequencing
Cont rol RO memory
CU Registers & Decoder
D. Nikolik, CompArch, 2004
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.
23
24
D. Nikolik, CompArch, 2004
Brief History
T he Mill
T he Store
Arithmetic funct ion
Memory funct ion
Operational cards - what
Variable cards - where
P rint er & Card P unch
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
25
D. Nikolik, CompArch, 2004
Later Generations:
Microprocessors (Intel)
Contemporary computers
Characteristics of some contemporary computers
Personal Computer (WinIntel): Component-based bus architectures
Minicomputer
Mainframes
Super computers
CP U
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
I/O Module
Instruction
buffer memory
Data
Cray Y-MP IBM 3090/600 VAX 8842 IBM AS/400 IBM PS/50
26
D. Nikolik, CompArch, 2004
William Stallings
Computer Organization
and Architecture
th
6 Edition
Chapter 3
System Buses
27
D. Nikolik, CompArch, 2004
Client Architecture
MMXs
Cache
Audio
Video
DRAMs
Bus
LAN
Bridge
Exp. Bus
I/Os
SCSI
Graphics
28
D. Nikolik, CompArch, 2004
Symmetrical Multi-Processing (SMP)
CPU
MEM
CPU
Massively Parallel Processing (MPP)
MEM
MEM
CPU
CPU
MEM
Systembus
Server Architectures
I/O Bus
MEM
CPU
CPU
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
MEM
29
D. Nikolik, CompArch, 2004
Computer Interconnection
Structures
Computer components
S e que n ce of
Arithm e tic and
Logi c fun cti ons
Data
Re su lts
Programming in Hardware
In str. in te rpre te r
Programming in Software
Ge ne ral-purpose
Arith m e tic an d
Logi c fu nctions
Data
Interrupt cycle
Re su lts
St art
I/O function
Fetch cycle
Interconnection structures
Fetch next instruction
Execute cycle
Execute instruction
Disabled
Enabled
Bus interconnection
Halt
Interupt cycle
Check & process int erupt
Elements of the Bus design
CPU
Memory
....
Memory
Cont rol lines
BUS
Address lines
Data lines
I/O
....
I/O
30
D. Nikolik, CompArch, 2004
William Stallings
Computer Organization
and Architecture
6th Edition
Chapter 4
Cache Memory
31
D. Nikolik, CompArch, 2004
William Stallings
Computer Organization
and Architecture
6th Edition
Chapter 5
Internal Memory
32
D. Nikolik, CompArch, 2004
William Stallings
Computer Organization
and Architecture
th
6 Edition
Chapter 6
External Memory
33
D. Nikolik, CompArch, 2004
Internal & External
Memory
Computer Memory System Overview
Memory Hierarchy
Organisation
CPU
Cache
Register
Error Correction (ECC)
Main
Buffer
memory memory
internal
RA
access
disk
external
Cache Memory
Magnetic Disk
CP U
Sequen.
access
tape
Cache
word transfer
Main memory
block transfer
Characteristics of Disk Systems: direct-access device DAD
Magnetic Tape: sequential access device - Archive memory
Optical memory: compact drives - CD memory
34
D. Nikolik, CompArch, 2004
William Stallings
Computer Organization
and Architecture
6th Edition
Chapter 7
Input/Output
35
D. Nikolik, CompArch, 2004
Input / Output
I/O Module
in/out
Control
St atus
Control Logic
I/O Module
not/ready
Data bits to/from
Buffer memory
T ransducer
External Devices
Data store
conversion
Data (device unique)
to/from environment
Visual Display Units (VDU)
Disk Drive
Interface to the
external device
Interface to the
system bus
I/O Modules
Programmed I/O
Interrupt-driven I/O
Data
Lines
Data Register
St atus & Control Register
Address
Lines
Control
Lines
I/O
Logic
External
Inteface
Logic
External
Inteface
Logic
Data
St atus
Control
Data
St atus
Control
36
D. Nikolik, CompArch, 2004
Direct Memory Access
(DMA)
System Bus
CP U
DMA
I/O
:
I/O
Memory
Inexpensive, but inefficient - 2 bus cycles/transfer, data t ransfer
System Bus
CP U
DMA
:
I/O
DMA
I/O
Memory
I/O
Integrat ed DMA & I/O aside the system bus
System Bus
CP U
DMA
:
Memory
I/O bus
I/O
I/O
I/O
Integrat ed 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
Four Generations of
Programming Languages
Machine Languages
Assembly Languages
Higher-Generation Languages
4GL & Scripting Languages
39
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
41
D. Nikolik, CompArch, 2004
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)
44
D. Nikolik, CompArch, 2004
Operating Systems Architecture
End User
Application P rograms
Utilities
P rogrammers's view
Operating System
OS designer's view
System's Hardware
High-level Job Scheduling
Short-term Job Scheduling – a Dispatcher
Memory Management
Virtual Memory Concept
Virtual address
miss
T LB
Page# Offset
hit
Page t able
State Management, Threads
+
Cache operat ion
Real address
T ag Remainder Cache
miss hit
Main Memory
Value
45
D. Nikolik, CompArch, 2004
William Stallings
Computer Organization
and Architecture
6th Edition
Chapter 9
Computer Arithmetic
46
D. Nikolik, CompArch, 2004
William Stallings
Computer Organization
and Architecture
6th Edition
Chapter 10
Instruction Sets:
Characteristics
and Functions
47
D. Nikolik, CompArch, 2004
William Stallings
Computer Organization
and Architecture
th
6 Edition
Chapter 11
Instruction Sets:
Addressing Modes
and Formats
48
D. Nikolik, CompArch, 2004
William Stallings
Computer Organization
and Architecture
th
6 Edition
Chapter 12
CPU Structure
and Function
49
D. Nikolik, CompArch, 2004
CPU Structure & Function
System Bus
Inside the CPU: Cycles
CPU
Instruction’s Fetch
ALU
Indirect Cycle
CPU Data Flow
Control
Unit
Bus Address
Control Data
Fetch
Interrupt
Indirect
Interrupt Cycle Processing
Execution
Registers
Execute
System
CPU Bus
Arithmetic and Logic Unit
St atus Flags
Registers
Shift er
Cont rol P aths
Complement er
Arithmetic & Boolean Logic
Cont rol
Unit
50
D. Nikolik, CompArch, 2004
William Stallings
Computer Organization
and Architecture
6th Edition
Chapter 14
Instruction Level Parallelism
and Superscalar Processors
51
D. Nikolik, CompArch, 2004
Control Unit Operation
Program Execution
Instruction
Cycle
Fetch
:
Instruction
Cycle
::
Indirect Execute Interrupt Fetch
mOP
mOP
mOP
mOP
Indirect
mOP
Execute Interrupt
Address Bus
Micro-code operations
PC
1
3a
Execute micro-cycles
8 high
IR
:
mOP
MAR
2
Control
3b
Unit
low 7
MBR
Hardwired implementation (Firmware)
Data Bus
Control Bus
4
5
6
Memory
52
D. Nikolik, CompArch, 2004
William Stallings
Computer Organization
and Architecture
6th Edition
Chapter 18
Parallel Processing
53
D. Nikolik, CompArch, 2004
Parallel Organizations
CP U
CP U
CP U
: : :
I/O
...
I/O
Interconect ions
Computer - a Sequential Machine?
Main Memory
Multiprocessing of Multiprocessors Systems
Time-shared Bus
CPU
CPU
Cache
Cache
I/O
Multiport Memory System
I/O
Memory
Memory
System Bus
Central Control Unit System (CCU) concept
M1
Uniform Multiprocessor OS
Vector Computational Systems
M2
:
Mk
P1
I/O1
...
...
Pm
I/On
Non-Uniform Memory Architectures (NUMA) Systems
vs. Pool of Linux Networked PCs - the Beowulf Project
54
D. Nikolik, CompArch, 2004
Fault - Tolerance Systems
CPU
Input
Arbit rat ion
CPU
Switch
Input
Output
CPU
Voter
CPU
Output
CPU
Fault-tolerance - continue to process
reliably even when a component fails
Failure Conditions
Software vs. Hardware Failures
Characteristics of Fault-tolerant Systems
microprocessor
Fault-tolerant Organisations
Availability, Scalability, Reliability
Compare
Logic
microprocessor
microprocessor
Gate
Control
Gate
Control
Bus
Compare
Logic
microprocessor
55
D. Nikolik, CompArch, 2004
William Stallings
Computer Organization
and Architecture
6th Edition
Chapter 13
Reduced Instruction
Set Computers
56
D. Nikolik, CompArch, 2004
Reduced Instruction Set
Computers
param e te rlocal
te m porary
re giste rs re giste rs re giste rs
Instruction Execution Characteristics
The use of a Large Register File
level j+1
Large Register File vs. Cache Memory
level j
call/return
param e te r local
re giste rs re giste rs re giste rs
Why the Trend in Reduced Instruction
Instruction R(short er code)
Set Architecture Technology?
Window #
Register file
Data
Decoder
RISC Pipeline Issues
window-based register file approach
Parallel Execution
Instruction A(full address)
Resolving Conflicts
T ags
Maintaining optimal Data Flow Compare
Data Tags: operation, data,cache-approach
mode/type
Data
Select
Cache
Data
57
D. Nikolik, CompArch, 2004
RISC Pipelining (Graph Colouring)
b r1 register assignements
a r2
c
e r3
r2
r3
f register memory store
d
a
X
b
c
X
X
X
X
X
X
X
X
X
X
d
f
e
X - register incidence
X
X
X
X
X
X
X
X
time instances
symbolic registers
58
D. Nikolik, CompArch, 2004
William Stallings
Computer Organization
and Architecture
6th Edition
Chapter 15
IA-64 Architecture