












Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Community
Ask the community for help and clear up your study doubts
Discover the best universities in your country according to Docsity users
Free resources
Download our free guides on studying techniques, anxiety management strategies, and thesis advice from Docsity tutors
This course focuses on quantitative principle of computer design, instruction set architectures, datapath and control, memory hierarchy design, main memory, cache, hard drives, multiprocessor architectures, storage and I/O systems, computer clusters. This lecture includes: Quatntitative, Principles, Laws, Princilples, Performance, Producer, Queue, server, Buffer
Typology: Slides
1 / 20
This page cannot be seen from the preview
Don't miss anything!
Module 1: Introduction
Module 2: Instruction Set Architecture
Module 3: Computer hardware design
Module 4: Instruction Level Parallelism – Dynamic
Module 5: Instruction Level Parallelism – Static
Module 6: Memory Hierarchy system
Module 7: Multiprocessing
Module 8: I/O Systems
Module 9: Networks and Clusters
We started this course distinguishing the computer organization and computer architecture
Architecture refers to those attributes of a computer visible to the programmer or compiler writer; e.g.,
instruction set, memory addressing techniques, I/O mechanisms etc.
We also introduced the computers developments with academic and commercial perspectives
Academically, modern computer developments have their infancy in 1944-49,
when John von Neumann introduced the concept of stored-program computer, referred to as Electronic Discrete Variable Automatic Computer – EDVAC
Commercially, the first machine was built by Eckert-Mauchly Computer Corporation in 1949
In 1971, Intel introduced first cheep microprocessor 4004 and then 80 x 86 series
In 1998, more than 350 million microprocessors with different instruction set architectures were in use; this number has risen to more than a billion in 2006
The key to the quantitative analysis in determining the effectiveness of the entire computing system is the computer hardware and software performance
In this respect , we discussed:
Price-performance design CPU performance metrics CPU benchmark suites
Module 1: Price-Performance Design
The issue of cost-performance is complex one
At one extreme, high-performance computers designer may not give importance to the cost in achieving the performance goal.
At the other end, low-cost designer may sacrifice performance to some extent.
The price-performance design lies between these extremes where the designer balances cost and hence price verses performance.
Five levels of programs are used as benchmarks:
1. Real Applications – scientific programs evaluate the performance of a machine 2. Modified Applications – the real applications with certain blocks modified to focus desired aspects of application, 3. Kernels – the small key pieces extracted from the real program 4. Toy benchmarks – small codes normally used as beginning programming assignments. 5. Synthetic benchmarks – the small section of Artificially created program
Quantitatively the performance of a system can be enhanced by speedup of a fraction of system based on the concept of the common case first
Amdahl’s Law is the basis of the measure of the performance enhancement
which defines the Speedup due to enhancement E that accelerates a fraction F of the task as:
The three pillars of computer architecture are:
hardware, instruction set software
Hardware facilitates to run the software and instruction set is the interface between the hardware and software
While talking about the Instruction set architecture the focus of our discussion has been:
ISA Taxonomy
Types of operands
Types of operations
Memory Addressing modes
Module 2: Types of Operands and Operations
Module 2: Types of Operands addressing
Immediate, register, direct (absolute) and Indirect
Register, indexed, relative (i.e. with displacement) and memory
Auto-increment, auto-decrement and scaled
Branch, jump and procedure call/return
Data Path
CONTRO
Sub-systems of Central Processing Unit
At a “higher level” a CPU can be viewed as consisting of two sub-systems
Module 3: Datapath Implementations