Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
11
COURSE:COURSE:
COMPUTER ARCHITECTURECOMPUTER ARCHITECTUREper week: Lectures 3h Lab 2hper week: Lectures 3h Lab 2h
For the specialty: For the specialty:
COMPUTER SYSTEMS AND TECHNOLOGIESCOMPUTER SYSTEMS AND TECHNOLOGIESDegree: BScDegree: BSc
Semester: VIISemester: VII
Lecturer: Lecturer:
Assoc. Prof. PhD Assoc. Prof. PhD P. BOROVSKAP. BOROVSKAHead of Computer Systems Dept.Head of Computer Systems Dept.
Faculty of Computer Systems and ControlFaculty of Computer Systems and Control
Room: 1201Room: 1201 Phone: 2524Phone: 2524
Reception hours: Wednesday 11 a.m.Reception hours: Wednesday 11 a.m.-- 1 p.m.1 p.m.
©BOROVSKA
22
Basic topics outline:Basic topics outline:
�� Computer Architecture Definition & Computer Architecture Definition & ClassificationsClassifications
�� Fundamentals of Computer DesignFundamentals of Computer Design
�� Performance EvaluationPerformance Evaluation
�� Microprocessor Architecture and Microprocessor Architecture and MicroarchitectureMicroarchitecture
�� Bus ArchitectureBus Architecture
�� Cache OrganizationCache Organization
�� Instruction Set Architectures Instruction Set Architectures –– CISC vs. RISCCISC vs. RISC
�� Superscalar Processors & Superscalar Processors & HyperthreadingHyperthreading
�� Multithreaded ProcessorsMultithreaded Processors
�� Dataflow ProcessorsDataflow Processors
©BOROVSKA
33
Basic topics outline (cont.):Basic topics outline (cont.):
�� Parallel Computer ArchitecturesParallel Computer Architectures
�� Parallel Abstract Machine ModelsParallel Abstract Machine Models
�� Interconnection Networks: Switches, Interconnection Networks: Switches,
Interface, Communication ProtocolsInterface, Communication Protocols
�� Symmetric SharedSymmetric Shared--Memory ArchitecturesMemory Architectures
�� Distributed SharedDistributed Shared--Memory ArchitecturesMemory Architectures
�� MulticomputersMulticomputers. Massively Parallel . Massively Parallel
ProcessorsProcessors
�� Clusters of servers and workstationsClusters of servers and workstations
©BOROVSKA
44
References:References:
Basic:Basic:
John Hennesy, David Patterson,John Hennesy, David Patterson,
Computer Architecture, A Quantitative Approach, Computer Architecture, A Quantitative Approach, Morgan Kaufmann Publishers, 2003.Morgan Kaufmann Publishers, 2003.
Additional:Additional:�� Theo Theo UngererUngerer, , ParallelrechnerParallelrechner und und paralleleparallele ProgrammierungProgrammierung, ,
SpektrumSpektrum AkademischerAkademischer, , VerlagVerlag Heidelberg Berlin, 1997. Heidelberg Berlin, 1997. �� BrinkschulteBrinkschulte UngererUngerer, , MikrocontrollerMikrocontroller und und MikroprozessorenMikroprozessoren, ,
Springer, 2002.Springer, 2002.�� Kai Hwang, Kai Hwang, ZhiweiZhiwei XuXu, , Scalable Parallel Computing, Scalable Parallel Computing, McGrawMcGraw--Hill, Hill,
1998.1998.�� Michael Flynn, Michael Flynn, Computer Architecture (Pipelined and Parallel Computer Architecture (Pipelined and Parallel
Processor Design)Processor Design), Jones and Bartlett Publishers, 1995., Jones and Bartlett Publishers, 1995.�� Harry Jordan, Harry Jordan, GitaGita AlaghbandAlaghband, , Fundamentals of Parallel ProcessingFundamentals of Parallel Processing, ,
Prentice Hall, 2003.Prentice Hall, 2003.�� William Stallings, William Stallings, Computer Structure and OrganizationComputer Structure and Organization, Prentice , Prentice
Hall, 2002.Hall, 2002.
©BOROVSKA
55
TIMETABLETIMETABLE
��LECTURES:LECTURES:
THURSDAY room No 4302 10.30THURSDAY room No 4302 10.30--13.15h13.15h
�� LAB:LAB:
GPSS: GPSS: www.minutemansoftware.comwww.minutemansoftware.com
SimuredSimured
��EXAM:EXAM:
At the end of winter semesterAt the end of winter semester
Duration: 90 minDuration: 90 min
10 questions 10 questions
(brief and concise answers required)(brief and concise answers required)
©BOROVSKA
66
1. COMPUTER ARCHITECTURE 1. COMPUTER ARCHITECTURE ––
DEFINITION & CLASSIFICATIONS.DEFINITION & CLASSIFICATIONS.
�� COMPUTER ARCHITECTURECOMPUTER ARCHITECTURE
DfDf by Amdahl, by Amdahl, BlaauwBlaauw and Brooks (1967)and Brooks (1967)
COMPUTER ARCHITECTURE IS DEFINED AS COMPUTER ARCHITECTURE IS DEFINED AS
THE ATTRIBUTES AND BEHAVIOUR OF A THE ATTRIBUTES AND BEHAVIOUR OF A
COMPUTER AS SEEN BY A MACHINECOMPUTER AS SEEN BY A MACHINE--
LANGUAGE PROGRAMMERLANGUAGE PROGRAMMER.. THIS DEFINITION THIS DEFINITION
INCLUDES THE INSTRUCTION SET, INCLUDES THE INSTRUCTION SET,
INSTRUCTION FORMATS, OPERATION INSTRUCTION FORMATS, OPERATION
CODES, ADDRESSING MODES, AND ALL CODES, ADDRESSING MODES, AND ALL
REGISTERS AND MEMORY LOCATIONS THAT REGISTERS AND MEMORY LOCATIONS THAT
MAY BE DIRECTLY MANIPULATED BY A MAY BE DIRECTLY MANIPULATED BY A
MACHINE LANGUAGE PROGRAMMER.MACHINE LANGUAGE PROGRAMMER.©BOROVSKA
77
••The word The word architecturearchitecture is intended is intended
to cover all three aspects of to cover all three aspects of
computer design computer design –– instruction set instruction set
architecture (ISA), organization architecture (ISA), organization
and hardwareand hardware..
The architecture is a document that The architecture is a document that
describes the behavior of all describes the behavior of all
possible implementations. possible implementations.
©BOROVSKA
88
••IMPLEMENTATIONIMPLEMENTATION
1.1. Is defined as Is defined as THE ACTUAL HARDWARE THE ACTUAL HARDWARE
STRUCTURE, LOGIC DESIGN, AND STRUCTURE, LOGIC DESIGN, AND
DATA PATH ORGANIZATIONDATA PATH ORGANIZATION OF A OF A
PARTICULAR EMBODIMENT OF THE PARTICULAR EMBODIMENT OF THE
ARCHITECTUREARCHITECTURE..
2.2. THE IMPLEMENTATION OF A MACHINE THE IMPLEMENTATION OF A MACHINE
HAS TWO COMPONENTS: HAS TWO COMPONENTS:
ORGANIZATION AND HARDWAREORGANIZATION AND HARDWARE..
3.3. The implementation may encompass The implementation may encompass
IC design, packaging, power & cooling.IC design, packaging, power & cooling.
©BOROVSKA
99
�� The The INSTRUCTION SET ARCHITECTUREINSTRUCTION SET ARCHITECTURErefers to the actual programmerrefers to the actual programmer--visible visible instruction set and instruction set and serves as the boundary serves as the boundary between the software and hardwarebetween the software and hardware..
�� THE TERM THE TERM ORGANIZATIONORGANIZATION INCLUDES INCLUDES THE HIGHTHE HIGH--LEVEL ASPECTS OF A LEVEL ASPECTS OF A COMPUTER’S DESIGN such as the COMPUTER’S DESIGN such as the memory system, the bus structure and the memory system, the bus structure and the design of the internal CPU. design of the internal CPU.
�� HARDWAREHARDWARE is used to refer to the specifics is used to refer to the specifics of a machine, including of a machine, including the detailed logic the detailed logic designdesign and and the packaging technologythe packaging technology of the of the machine.machine.
©BOROVSKA
1010
VON NEWMANN ARCHITECTUREVON NEWMANN ARCHITECTURE
©BOROVSKA
1111
VON NEWMANN ARCHITECTURE: VON NEWMANN ARCHITECTURE:
ATTRIBUTESATTRIBUTES
�� COMPUTATION DRIVEN AND CONTROLLED COMPUTATION DRIVEN AND CONTROLLED
BY INSTRUCTION FLOW (STORED PROGRAM)BY INSTRUCTION FLOW (STORED PROGRAM)
�� SEQUENTIAL COMPUTATIONAL MODEL SEQUENTIAL COMPUTATIONAL MODEL
i.e.i.e. (i+1)(i+1)st st instruction is started after the completion instruction is started after the completion
of the of the iithth instructioninstruction
�� PROGRAM COUNTERPROGRAM COUNTER
�� ASSIGNMENT STATEMENTASSIGNMENT STATEMENT
©BOROVSKA
1212
PARALLEL COMPUTER PARALLEL COMPUTER
ARCHITECTURESARCHITECTURES
�� EVOLUTIONAL ARCHITECTURES EVOLUTIONAL ARCHITECTURES
(DERIVED FROM VON NEWMANN (DERIVED FROM VON NEWMANN
ARCHITECTURE)ARCHITECTURE)
�� RADICAL COMPUTER ARCHITECTURESRADICAL COMPUTER ARCHITECTURES
(DATA FLOW COMPUTERS, REDUCTION (DATA FLOW COMPUTERS, REDUCTION
ARCHITECTURES, etc) ARCHITECTURES, etc) –– no instructions, no instructions,
no program counter, no assignment no program counter, no assignment
statements)statements)
©BOROVSKA
1313
PARALLEL COMPUTER PARALLEL COMPUTER
ARCHITECTURESARCHITECTURES
�� SHAREDSHARED--NOTHING ARCHITECTURENOTHING ARCHITECTURE
©BOROVSKA
1414
��SHAREDSHARED--DISK ARCHITECTUREDISK ARCHITECTURE
©BOROVSKA
1515
SHAREDSHARED--MEMORY ARCHITECTUREMEMORY ARCHITECTURE
©BOROVSKA
1616
FLYNN’S CLASSIFICATIONFLYNN’S CLASSIFICATION
©BOROVSKA
1717©BOROVSKA
1818©BOROVSKA
1919©BOROVSKA
2020
2. FUNDAMENTALS OF 2. FUNDAMENTALS OF
COMPUTER DESIGNCOMPUTER DESIGN
COMPUTER DESIGN EMPHASIZES ON COMPUTER DESIGN EMPHASIZES ON BOTH BOTH ARCHITECTURAL INNOVATIONS ARCHITECTURAL INNOVATIONS
AND TECHNOLOGICAL IMPROVEMENTSAND TECHNOLOGICAL IMPROVEMENTS!!
3 COMPUTING MARKETS (DIFFERENT 3 COMPUTING MARKETS (DIFFERENT APPLICATIONS, REQUIREMENTS & APPLICATIONS, REQUIREMENTS &
COMPUTING TECHNOLOGIES):COMPUTING TECHNOLOGIES):
�� DESKTOP COMPUTINGDESKTOP COMPUTING
�� SERVERSSERVERS
�� EMBEDDED COMPUTERSEMBEDDED COMPUTERS
©BOROVSKA
2121
DESKTOP COMPUTINGDESKTOP COMPUTING
�� Spans from lowSpans from low--end systems (under $1000) to end systems (under $1000) to
highhigh--end heavily configured workstations (over end heavily configured workstations (over
$10 000)$10 000)
�� Tends to be driven to optimize Tends to be driven to optimize priceprice--performanceperformance
�� Newest highestNewest highest--performance microprocessors performance microprocessors
appearappear
�� CostCost--reduced microprocessors and systemsreduced microprocessors and systems
�� PC space is focused on clock rate, leading to PC space is focused on clock rate, leading to
poor decisions by consumers and designerspoor decisions by consumers and designers
©BOROVSKA
2222
SERVERSSERVERS�� Servers have become Servers have become the backbone of largethe backbone of large--
scale enterprise computingscale enterprise computing
�� ApplicationsApplications:: brokerage operations, credit brokerage operations, credit card authorization, package shipping services, card authorization, package shipping services, home shopping channels, catalog sales center, home shopping channels, catalog sales center, airline reservation center, cellular service airline reservation center, cellular service activation, online network fees, ATM service activation, online network fees, ATM service feesfees
�� Emphasis on Emphasis on availability & scalabilityavailability & scalability
�� Efficient throughputEfficient throughput in terms of in terms of transactions transactions per minute or Web pages served per secondper minute or Web pages served per second
�� Responsiveness to an individual requestResponsiveness to an individual requestremains importantremains important
©BOROVSKA
2323
EMBEDDED COMPUTERSEMBEDDED COMPUTERS�� The fastest growing portion of the computing marketThe fastest growing portion of the computing market
�� Everyday machinesEveryday machines –– microwaves, washing microwaves, washing machines, printers, switchesmachines, printers, switches
�� Digital devicesDigital devices –– palmtops, cell phones, network palmtops, cell phones, network routerrouter
�� Video gamesVideo games
�� Digital signal processors (Digital signal processors (DSP’sDSP’s)) Use of assembly Use of assembly language, standardized operating systemslanguage, standardized operating systems
�� The widest range of processing power and costThe widest range of processing power and cost
�� The primary goal is to meet the performance need at The primary goal is to meet the performance need at a minimum pricea minimum price
�� The need to minimize memory and powerThe need to minimize memory and power
�� Digital signal processors (Digital signal processors (DSP’sDSP’s))©BOROVSKA
2424
THE TASK OF THE COMPUTER THE TASK OF THE COMPUTER
DESIGNERDESIGNER
��Determine the important Determine the important attributesattributes for a new for a new machinemachine
��Design a machine Design a machine maximizing performancemaximizing performancewhile staying within while staying within cost and power cost and power constraintsconstraints
��Optimizing the design requires familiarity Optimizing the design requires familiarity with a very with a very large range of technologieslarge range of technologies, from , from compilers and OS to logic design and compilers and OS to logic design and packagingpackaging
©BOROVSKA
2525
SYSTEM CHARACTERISTICS OF SYSTEM CHARACTERISTICS OF
THE 3 COMPUTING CLASSESTHE 3 COMPUTING CLASSES
DESKTOPDESKTOP
�� Price of system: $ 1000 Price of system: $ 1000 -- $ 10 000$ 10 000
�� Price of microprocessor module: Price of microprocessor module:
$100$100--$1000$1000
�� Microprocessors sold per year: 150 Microprocessors sold per year: 150 mlnmln..
�� Critical systems design issues:Critical systems design issues:
��PricePrice--performanceperformance
��Graphics performanceGraphics performance
©BOROVSKA
2626
SERVERSSERVERS
�� Price of system: $10 000 Price of system: $10 000 -- $ 10 $ 10 mlnmln
�� Price of microprocessor module: Price of microprocessor module:
$200$200--$2000 per processor$2000 per processor
�� Microprocessors sold per year: 4 Microprocessors sold per year: 4 mlnmln..
�� Critical systems design issues:Critical systems design issues:
Throughput, availability, scalabilityThroughput, availability, scalability
�� Need for Need for very largevery large--scale multiprocessor scale multiprocessor
systems for highsystems for high--end transaction end transaction
processing and WEB server applicationsprocessing and WEB server applications
©BOROVSKA
2727
EMBEDDED SYSTEMSEMBEDDED SYSTEMS
�� Price of system: $10Price of system: $10--$100 000 (including $100 000 (including network routers at the high end)network routers at the high end)
�� Price of microprocessor module: Price of microprocessor module:
$ 0.20 $ 0.20 -- $ 200 (per processor)$ 200 (per processor)
�� Microprocessors sold per year: 1 billion Microprocessors sold per year: 1 billion including 8including 8--bit & 16bit & 16--bit microprocessorsbit microprocessors
The largest selling microprocessor of all times is an The largest selling microprocessor of all times is an 88--bit microcontroller sold by Intel!bit microcontroller sold by Intel!
�� Critical systems design issues:Critical systems design issues:
Price, power consumption, applicationPrice, power consumption, application--specific performancespecific performance
©BOROVSKA
2828
Functional requirementsFunctional requirements
Requires special support for graphics Requires special support for graphics
or video or other applicationor video or other application-- specific specific
extension; power limitations and power extension; power limitations and power
control may be requiredcontrol may be required
Embedded Embedded
computingcomputing
Support for database and transaction Support for database and transaction
processingprocessingCommercial Commercial
serversservers
HighHigh--performance floating point and performance floating point and
graphicsgraphicsScientific Scientific
desktops and desktops and
serversservers
Balanced performance for a range of Balanced performance for a range of
tasks, including tasks, including interactive performance interactive performance
for graphics, video, and audiofor graphics, video, and audio
GeneralGeneral--purpose purpose
desktopdesktop
Target of computerTarget of computerApplication areaApplication area
©BOROVSKA
2929
Level of software compatibilityLevel of software compatibility
Determines amount of existing software Determines amount of existing software
for machine:for machine:
At programming languageAt programming language: most : most
flexible for designer; need new flexible for designer; need new
compilercompiler
Object code or binary code Object code or binary code
compatiblecompatible: ISA is completely defined : ISA is completely defined
–– little flexibilitylittle flexibility-- but no investment but no investment
needed in software or porting programsneeded in software or porting programs©BOROVSKA
3030
Operating system requirements Operating system requirements ––
necessary features necessary features
to support chosen OSto support chosen OS
�� Size of address spaceSize of address space –– may limit may limit
applicationsapplications
�� Memory managementMemory management –– required for required for
modern OS; may be paged or modern OS; may be paged or
segmentedsegmented
�� ProtectionProtection –– page vs. segment page vs. segment
protectionprotection
©BOROVSKA
3131
Standards Standards
�� Floating pointFloating point ::
Format and arithmetic: IEEE 754 Format and arithmetic: IEEE 754
Special arithmetic for graphics or signal Special arithmetic for graphics or signal processingprocessing
�� I/O bus :I/O bus :
For I/O devices : PCI, Ultra SCSI, etc.For I/O devices : PCI, Ultra SCSI, etc.
�� Operating system :Operating system :
UNIX, UNIX, PalmOSPalmOS, Windows, Windows NT, CISCO , Windows, Windows NT, CISCO IOS, etc.IOS, etc.
�� Network support: Network support: Ethernet, etc.Ethernet, etc.
�� Programming languages: Programming languages: C++, C#, Java, etc.C++, C#, Java, etc.©BOROVSKA
3232
Once a set of functional requirements has Once a set of functional requirements has been established, the architect must try been established, the architect must try to optimize the design.to optimize the design.
�� Desktop computersDesktop computers remain focused on remain focused on optimizing costoptimizing cost--performance as measured performance as measured by by a single usera single user..
�� Servers Servers –– multiprocessor architecture, multiprocessor architecture, throughputthroughput costcost--performance, availability & performance, availability & scalabilityscalability
�� Embedded computers Embedded computers –– driven by price & driven by price & often power issuesoften power issues
©BOROVSKA
3333
Technology trendsTechnology trendsFour implementation technologies are critical to modern Four implementation technologies are critical to modern
implementations:implementations:
�� Integrated circuit logic technology Integrated circuit logic technology –– transistor transistor
density increases by about 35% per yeardensity increases by about 35% per year
Intel Pentium 4 Intel Pentium 4 –– about 42 about 42 mlnmln. Transistors. Transistors
�� Semiconductor DRAM Semiconductor DRAM –– density increases 40%density increases 40%--60% 60%
per year, cycle time decreases 1/3 in 10 yearsper year, cycle time decreases 1/3 in 10 years
�� Magnetic disk technology Magnetic disk technology –– disk density improves disk density improves
>100% per year>100% per year
�� Network technology Network technology –– switches & transmission switches & transmission
system system –– 1Gb Ethernet, optical media 1Gb Ethernet, optical media && advanced advanced
switching hardwareswitching hardware
©BOROVSKA
3434
E N DE N D
©BOROVSKA