COURSE: COMPUTER ARCHITECTURE per week: Lectures 3h Lab 2h For the specialty: COMPUTER SYSTEMS AND TECHNOLOGIES Degree: BSc Semester: VII Lecturer: Assoc. Prof. PhD P. BOROVSKA Head of Computer Systems Dept. Faculty of Computer Systems and Control Room: 1201 Phone: 2524 Reception hours: Wednesday 11 a.m.- 1 p.m. 1
Basic topics outline: Computer Architecture Definition & Classifications Fundamentals of Computer Design Performance Evaluation Microprocessor Architecture and Microarchitecture Bus Architecture Cache Organization Instruction Set Architectures CISC vs. RISC Superscalar Processors & Hyperthreading Multithreaded Processors Dataflow Processors 2
Basic topics outline (cont.): Parallel Computer Architectures Parallel Abstract Machine Models Interconnection Networks: Switches, Interface, Communication Protocols Symmetric Shared-Memory Architectures Distributed Shared-Memory Architectures Multicomputers.. Massively Parallel Processors Clusters of servers and workstations 3
References: Basic: John Hennesy, David Patterson, Computer Architecture, A Quantitative Approach, Morgan Kaufmann Publishers, 2003. Additional: Theo Ungerer, Parallelrechner und parallele Programmierung, Spektrum Akademischer, Verlag Heidelberg Berlin, 1997. Brinkschulte Ungerer, Mikrocontroller und Mikroprozessoren, Springer, 2002. Kai Hwang, Zhiwei Xu, Scalable Parallel Computing, McGraw-Hill, 1998. Michael Flynn, Computer Architecture (Pipelined and Parallel Processor Design),, Jones and Bartlett Publishers, 1995. Harry Jordan, Gita Alaghband, Fundamentals of Parallel Processing, Prentice Hall, 2003. William Stallings, Computer Structure and Organization,, Prentice Hall, 2002. 4
TIMETABLE LECTURES: THURSDAY room No 4302 10.30-13.15h 13.15h LAB: GPSS: www.minutemansoftware.com Simured EXAM: At the end of winter semester Duration: 90 min 10 questions (brief and concise answers required) 5
1. COMPUTER ARCHITECTURE DEFINITION & CLASSIFICATIONS. COMPUTER ARCHITECTURE Df by Amdahl, Blaauw and Brooks (1967) COMPUTER ARCHITECTURE IS DEFINED AS THE ATTRIBUTES AND BEHAVIOUR OF A COMPUTER AS SEEN BY A MACHINE- LANGUAGE PROGRAMMER. THIS DEFINITION INCLUDES THE INSTRUCTION SET, INSTRUCTION FORMATS, OPERATION CODES, ADDRESSING MODES, AND ALL REGISTERS AND MEMORY LOCATIONS THAT MAY BE DIRECTLY MANIPULATED BY A MACHINE LANGUAGE PROGRAMMER. 6
The word architecture is intended to cover all three aspects of computer design instruction set architecture (ISA), organization and hardware. The architecture is a document that describes the behavior of all possible implementations. 7
IMPLEMENTATION 1. Is defined as THE ACTUAL HARDWARE STRUCTURE, LOGIC DESIGN, AND DATA PATH ORGANIZATION OF A PARTICULAR EMBODIMENT OF THE ARCHITECTURE. 2. THE IMPLEMENTATION OF A MACHINE HAS TWO COMPONENTS: ORGANIZATION AND HARDWARE. 3. The implementation may encompass IC design, packaging, power & cooling. 8
The INSTRUCTION SET ARCHITECTURE refers to the actual programmer-visible instruction set and serves as the boundary between the software and hardware. THE TERM ORGANIZATION INCLUDES THE HIGH-LEVEL ASPECTS OF A COMPUTER S DESIGN such as the memory system, the bus structure and the design of the internal CPU. HARDWARE is used to refer to the specifics of a machine, including the detailed logic design and the packaging technology of the machine. 9
VON NEWMANN ARCHITECTURE 10
VON NEWMANN ARCHITECTURE: ATTRIBUTES COMPUTATION DRIVEN AND CONTROLLED BY INSTRUCTION FLOW (STORED PROGRAM) SEQUENTIAL COMPUTATIONAL MODEL i.e. (i+1) st instruction is started after the completion of the i th instruction PROGRAM COUNTER ASSIGNMENT STATEMENT 11
PARALLEL COMPUTER ARCHITECTURES EVOLUTIONAL ARCHITECTURES (DERIVED FROM VON NEWMANN ARCHITECTURE) RADICAL COMPUTER ARCHITECTURES (DATA FLOW COMPUTERS, REDUCTION ARCHITECTURES, etc) no instructions, no program counter, no assignment statements) 12
PARALLEL COMPUTER ARCHITECTURES SHARED-NOTHING ARCHITECTURE 13
SHARED-DISK DISK ARCHITECTURE 14
SHARED-MEMORY ARCHITECTURE 15
FLYNN S CLASSIFICATION 16
17
18
19
2. FUNDAMENTALS OF COMPUTER DESIGN COMPUTER DESIGN EMPHASIZES ON BOTH ARCHITECTURAL INNOVATIONS AND TECHNOLOGICAL IMPROVEMENTS! 3 COMPUTING MARKETS (DIFFERENT APPLICATIONS, REQUIREMENTS & COMPUTING TECHNOLOGIES): DESKTOP COMPUTING SERVERS EMBEDDED COMPUTERS 20
DESKTOP COMPUTING Spans from low-end systems (under $1000) to high-end heavily configured workstations (over $10 000) Tends to be driven to optimize price-performance performance Newest highest-performance microprocessors appear Cost-reduced microprocessors and systems PC space is focused on clock rate, leading to poor decisions by consumers and designers 21
SERVERS Servers have become the backbone of large- scale enterprise computing Applications: brokerage operations, credit card authorization, package shipping services, home shopping channels, catalog sales center, airline reservation center, cellular service activation, online network fees, ATM service fees Emphasis on availability & scalability Efficient throughput in terms of transactions per minute or Web pages served per second Responsiveness to an individual request remains important 22
EMBEDDED COMPUTERS The fastest growing portion of the computing market Everyday machines microwaves, washing machines, printers, switches Digital devices palmtops, cell phones, network router Video games Digital signal processors (DSP s( DSP s) Use of assembly language, standardized operating systems The widest range of processing power and cost The primary goal is to meet the performance need at a minimum price The need to minimize memory and power Digital signal processors (DSP s( DSP s) 23
THE TASK OF THE COMPUTER DESIGNER Determine the important attributes for a new machine Design a machine maximizing performance while staying within cost and power constraints Optimizing the design requires familiarity with a very large range of technologies,, from compilers and OS to logic design and packaging 24
SYSTEM CHARACTERISTICS OF THE 3 COMPUTING CLASSES DESKTOP Price of system: $ 1000 - $ 10 000 Price of microprocessor module: $100-$1000 $1000 Microprocessors sold per year: 150 mln. Critical systems design issues: Price-performance Graphics performance 25
SERVERS Price of system: $10 000 - $ 10 mln Price of microprocessor module: $200-$2000 $2000 per processor Microprocessors sold per year: 4 mln. Critical systems design issues: Throughput, availability, scalability Need for very large-scale multiprocessor systems for high-end transaction processing and WEB server applications 26
EMBEDDED SYSTEMS Price of system: $10-$100 $100 000 (including network routers at the high end) Price of microprocessor module: $ 0.20 - $ 200 (per processor) Microprocessors sold per year: 1 billion including 8-bit 8 & 16-bit microprocessors The largest selling microprocessor of all times is an 8-bit microcontroller sold by Intel! Critical systems design issues: Price, power consumption, application- specific performance 27
Scientific desktops and servers Commercial servers Functional requirements Application area General-purpose desktop Target of computer Balanced performance for a range of tasks, including interactive performance for graphics, video, and audio High-performance floating point and graphics Support for database and transaction processing Embedded computing Requires special support for graphics or video or other application- specific extension; power limitations and power control may be required 28
Level of software compatibility Determines amount of existing software for machine: At programming language: : most flexible for designer; need new compiler Object code or binary code compatible: : ISA is completely defined little flexibility- but no investment needed in software or porting programs 29
Operating system requirements necessary features to support chosen OS Size of address space may limit applications Memory management required for modern OS; may be paged or segmented Protection page vs. segment protection 30
Standards Floating point : Format and arithmetic: IEEE 754 Special arithmetic for graphics or signal processing I/O bus : For I/O devices : PCI, Ultra SCSI, etc. Operating system : UNIX, PalmOS,, Windows, Windows NT, CISCO IOS, etc. Network support: Ethernet, etc. Programming languages: C++, C#, Java, etc. 31
Once a set of functional requirements has been established, the architect must try to optimize the design. Desktop computers remain focused on optimizing cost-performance as measured by a single user. Servers multiprocessor architecture, throughput cost-performance, availability & scalability Embedded computers driven by price & often power issues 32
Technology trends Four implementation technologies are critical to modern implementations: Integrated circuit logic technology transistor density increases by about 35% per year Intel Pentium 4 about 42 mln.. Transistors Semiconductor DRAM density increases 40%-60% per year, cycle time decreases 1/3 in 10 years Magnetic disk technology disk density improves >100% per year Network technology switches & transmission system 1Gb Ethernet, optical media & advanced switching hardware 33
E N D 34