Computer Architecture - es.cs.uni-frankfurt.de · Computer Architecture – Part 1 – page 3 of 27...
Transcript of Computer Architecture - es.cs.uni-frankfurt.de · Computer Architecture – Part 1 – page 3 of 27...
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 1 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Part 1 Introduction
Computer Architecture
Slide Sets
WS 2013/2014
Prof. Dr. Uwe Brinkschulte M.Sc. Benjamin Betting
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 2 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Prof. Dr. Uwe Brinkschulte Chair for Embedded Systems [email protected] Robert-Mayer-Straße 11-15 Secretary: Linda Stapleton, room 211a [email protected]
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 3 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Lecture Canon
Hardware-Architektur & Rechnersysteme SS
Computer Architecture WS
Rechnertechnologie SS
Eingebettete Systeme SS
Ausgewählte Themen bei Eingebetteten Systemen - Organic Computing SS/WS
Praktikum Grundlagen Hardwaresysteme WS/SS
Praktikum Mikrocontroller & Eingebettete Systeme (Master) WS
Praktikum Eingebettete Systeme (Bachelor) WS
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 4 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Research Area:
Hard- and Software for Embedded Systems Especially:
• Microcontroller & Microprozessors • Embedded Real-time Systems • Distributed Embedded Systems • Real-time Middleware • Organic Computing • Self-Organization and Real-time • Dependable Embedded Systems
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 5 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Some Projects
Middlewarekern OSA+
Anwen-dungs-dienst
Anwen-dungs-dienst
…
Basis-dienste
Erwei-terungs-dienste
Komodo CAR-SoC CARISMA
DODOrg
OSA+ REMIS
MixedCoreSoC
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 6 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Computer Architecture 3 L + 1 E
Lecture: Time and place: Wednesday, 12:15 - 14:45, break at 13:30 - 13:45, SR 307, RM 11-15 Exercise: Time and place: Thursday, 12:00 - 13:00, SR 307, RM 11-15 Exercise start: Thur. October 31th. Courses: Bachelor, Master, Bioinformatik, L3, (CSC Master expiring) ECTS-Credits: 6 Language: English or German
Computer Architecture – Part 1 – page 6 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 7 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
People / Office Hours
Lecture
Prof. Dr. rer. nat. Uwe Brinkschulte
Institut für Informatik Eingebettete Systeme Robert-Mayer-Str. 11-15 60325 Frankfurt Room 210 Phone 069/798-28234 [email protected]
Office Hour: on appointment
Exercise
M.Sc. Benjamin Betting
Institut für Informatik Eingebettete Systeme Robert-Mayer-Str. 11-15 60325 Frankfurt Room 212 Phone 069/798-28252 [email protected]
Office Hour: We. 11:00-12:00 and on appointment
Computer Architecture – Part 1 – page 7 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 8 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Slides available at:
http://www.es.cs.uni-frankfurt.de
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 9 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Computer Architecture
Literature: • David A. Patterson, John L. Hennessy: Computer Organization and Design – The Hardware/Software Interface, Morgan Kaufmann Publishers • Jurij Silc, Borut Robic, Theo Ungerer: Processor Architecture, Springer Verlag • Uwe Brinkschulte, Theo Ungerer: Mikrocontroller & Mikroprcessoren, Springer Verlag (German)
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 10 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Computer Architecture
Content: Fundamentals 01. Introduction 02. Microprocessor Development 03. Fundamentals in Computer Architecture 04. Fundamentals in Computer Technology 05. Fundamentals in Computer Design 06. Fundamentals in Performance Evaluation
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 11 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Computer Architecture
Content (cont.): Current Microprocessor-Architectures 07. Instruction Set Architecture 08. Instruction Level Parallelism - Pipelining 09. Instruction Level Parallelism - Concurrency 10. Thread and Task Level Parallelism Memory-Systems 11. Memory Management 12. Memory Hierarchy and Caches
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 12 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Architecture … „The types of architecture are established not by architects but by society, according to the needs of the different institutions. Society sets the goals and assigns to the architect the job of finding the means of achieving them.“ (Encyclopaedia Britannica)
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 13 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Architecture in general follows one or more different goals (functionalities).
These functionalities can be specified by types
Architecture (construction)
Example:
• architecture type 1 (private goals): {home building, factory, ...}
• architecture type 2 (public goals): {sports arena, hospital, railway station, airport, ...}
. .
Architecture (construction) vs. Computer architecture
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 14 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Computer Architecture computer architecture type 1: {universal computer}
computer architecture type 2: {special computer}
computer architecture type special computer: {signal processing computer, simulation computer, graphics computer, …}
summary: The increasing importance of embedded and networked systems in future will create further types in computer architecture concerning their functionality.
Architecture (construction) vs. Computer architecture
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 15 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Note: The term “architecture” is also frequently used in other context as e.g.:
• system architecture • software architecture • chip architecture
Architecture (construction) vs. Computer architecture
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 16 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Beside the most important functional concept of the architecture, several nonfunctional constraints has to be considered for the design.
Some of these nonfunctional constraints are:
• speed
• performance
• security
• safety
• scalability
• power awareness etc.
The design process of computer architectures is controlled and directed by these nonfunctional constraints.
Nonfunctional constraints
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 17 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Parallel Computing
Superscalar
VLIW
Multi-threaded
SMP
Multi-core FPGA
Microgrid Parallel embedded system (MPSoC)
Cluster of workstations
Grid computing
Public resource computing
network
Multi-Processing
High Performance Computing
Instruction-level Parallelism
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 18 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Topics
© C. Müller-Schloer 2003
The Information Technology (IT) is based more and more on completely networked systems, so called
ubiquitous computing systems
with
• adaptive, flexible and biologically inspired cooperative system behavior
• a comfortable user interface
Systems with these features are called „Organic“ which refers to the biological inspiration.
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 19 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Computing Trends
Size Number
1 computer many people
1 computer per person
many computers per person
© C. Müller-Schloer 2003
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 20 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Scenarios First of all: Many computers per person means
There is great potential for parallel processing!
But:
Highly heterogeneous devices
No stable networks, very dynamic
Spontaneous entry and exit of devices
Therefore:
Very different from classical parallel computing!
Consider the following scenarios for innovative application of parallel computing:
many computers per person
© Hartmut Schmeck
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 21 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Smart house
Intelligent control of house functions
Knows what you need when you get home
Smart car
Adapts to different drivers, road conditions
Gives advice on currently best routes
Communicates with other cars on special events
Integrates your personal devices into its network
Smart factory
Intelligent control of production (federations of robots,…)
Integrates supply chain management
Reacts to unexpected disturbances
Maintains predetermined quality levels
many computers per person
Scenarios
© Hartmut Schmeck
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 22 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Smart office Takes care of your time-table, projects, events,… Provides all the office resources you need Takes care of travel arrangements …
Smart shop / smart warehouse Monitors current supply levels and takes appropriate actions Knows your shopping preferences Observes your shopping habits …
Smart clothes / Wearable devices Check your “personal parameters” Adapt their properties / behaviour to current personal data Give proactive advice on fitness / wellness actions Enabling technology for e-health / e-care …
many computers per person
Scenarios
© Hartmut Schmeck
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 23 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Emergence
Emergent creation of a snow flake
Emergence in perception
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 24 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Emergence Local actions/behaviour of the members of a self-organizing system may lead to observable, emergent global patterns, structure, or behaviour.
This global behaviour is of a different kind than the behaviour of its components (in particular, not a linear combination of the individual actions).
The removal of (single) components does not lead to a failure of the global functions of the system.
The global behaviour is completely new compared to that of the existing components, i.e. the emergent behaviour seems to be unpredictable and not deducible from the individual components of the system, and it cannot be reduced on these.
(cf: Emergence, a Journal of Complexity Issues in Organisation and Management)
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 25 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Vision
Organic computer systems are biological or life inspired
Organic computer systems consist of autonomous system parts (autonomous agents) and behave selforganizing.
self organisation means:
self-configuring self optimizing self healing
© Hartmut Schmeck
Thy are called in general self-X features
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 26 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
Organic Computing
It is not the question,
whether adaptive and self-organising systems will emerge,
but how they will be designed
© Hartmut Schmeck
Hier wird Wissen Wirklichkeit Computer Architecture – Part 1 – page 27 of 27 – Prof. Dr. Uwe Brinkschulte, M.Sc. Benjamin Betting
High performance computing Beside modern trends as e.g. embedded systems, ubiquitous computing, organic computing, pervasive systems etc. exists still classical parallel computing for high performance application
- Parallel High performance computing (vector machines)
- Computer cluster
- Grid computing systems
- Public resource computing (Internet)
- Multi processor systems (SMP) (Multi and many core processors)
High performance computing