Lecture 01 - CH 01 - Introduction
Lecture 01 - CH 01 - Introduction
Organization
1
Course Book
• ‘Computer Organization and Architecture’ by William Stallings (9th
Edition or up)
• Reference Books:
• ‘The Intel Microprocessors’ by Barry B. Brey (8th edition)
2
Course Outline (CA&Org)
• Chapter-1: Basic Concepts and Computer Evolution.
• Chapter-2: Computer Evolution and Performance.
• Chapter-3: A top-level View of Computer Function and Interconnection.
• Pipelining + Parallelism
After Mids:
• Chapter-4: Cache Memory.
• Chapter-5: Internal Memory.
• Chapter-6: External Memory.
• Chapter-7: Input-Output.
3
Marks Distribution
• Assignments & Lab Reports: The assignments will be submitted as desired
by the instructor. The labs will be conducted as required for the course.
• Grading Policy:
• Internal assessment: 25%
• Mid Term Exam : 25%
• End Semester Exam : 50%
• Labs Work : 25% (absolute marks)
Application
t
tpu
Describe what U learn
ou
t
tpu
ou
output Application
Teach your friends
out
p ut
ou Application
tp Build something
u t
Application
Practice, practice, practice
6
Rules of Class
• Always get in the class in time. 5 minutes till start time.
• Concentrate on what is being taught in class.
• Don’t involve in talking or using mobiles.
• Ask questions by first raising your hand and then delivering words.
• Do not pass comments in the class.
• Always make notes for your own benefit.
• Teachers decision will be final in every aspect. No late Assig/Quiz etc.
7
Difference b/w Organization & Architecture
Computer Organization Computer Architecture
Physical components (Circuit design, Adders, Signals, Logic (Instruction set, Addressing modes, Data types,
Peripherals) Registers)
8
Architecture and Organization
Computer Architecture Computer Organization
1. Architecture is the underlying hardware. Computer Organization is realization of Architecture.
2. Architecture describes what a computer does. Organization describes how it does it.
3. For designing a computer, architecture is fixed first Organization is decided after its architecture.
4. It deals with high level design issues. It deals with low-level design issues.
5. It includes instruction set, supported data types, It includes hardware details such as control signals,
I/O mechanism used, addressing modes, registers. interfaces of peripherals, memory technology used.
6. As a programmer you should know about it first. A programmer should not be aware of it.
7. No operating system can be designed without it. Organization indicates its performance.
9. Architecture is abstract or higher level. It changes with changing technology.
10. Example: Intel and AMD created x86 processor. Organization may be different for both.
Difference between Organization & Architecture
• Computer Architecture refers to those attributes of a system visible
to a machine language programmer. (e.g. If the program may run on
system)
13
32-bit and 64-bit (Continued)
• The terms 32-bit and 64-bit refer to the way a computer's processor
(also called a CPU), handles information. The 64-bit version of
Windows handles large amounts of random access memory (RAM)
more effectively than a 32-bit system.
• Does 32-bit software run on 64-bit Operating System?
• Yes, a 32 bit software can be run on a 64 bit Operating System. When
a 32 bit software is launched, in Windows for example, an emulator is
launched. The emulator 'tricks' the 32 bit software and makes it think
that it's running on a 32 bit system.
14
Difference between Organization & Architecture
• Computer Organization refers to the operational units and their
interconnections that realize the architectural specifications.
15
Notes
• Computer organization refers to the interconnections between the
operational units that form the architecture.
• Control signals tell the computer’s memory, ALU unit and I/O devices
how to respond to a program’s instructions. Such signals are
generated by a ‘Control Unit’ (CU).
• Interface means how external devices connect and communicate with
the computer system. This interface is provided by a ‘port’ on a
compute system.
• Memory technology such as cache memory, RAM, magnetic disk etc.
This is called a ‘memory hierarchy’. Data is organized in this hierarchy.
16
Notes
• The technology is constantly changing, based on business demands
and advancements in industry.
• Organizational attributes adapts to these changes by restricting
components e.g. splitting the cache into two, one for instruction and
one for data. Or adding or removing components e.g. adding another
level of cache to improve performance.
• Architectural component models represent high level designs.
Pentium-4 CPU was introduced in 2000. Intel introduced ‘core’
technology in 2006. So the change in architecture is gradual and it
remains the same for quite some time.
17
Difference between Organization & Architecture
• For Example-1:
• It is an ‘architectural’ design issue whether a computer will have a
multiply instruction.
• However it is an ‘organizational’ issue whether that instruction will be
executed by a special multiply unit or by add unit with repeated
additions.
• The ‘organizational Decision’ may be based on the anticipated
frequency of use of the ‘multiply’ instruction, the relative speed of
the two approaches, and the cost and physical size of a special
multiply unit.
18
Example-2
• It is an ‘architectural’ design issue whether a computer will have a
add instruction.
• However the choices of an adder will affect the time taken by an ADD
instruction to complete its operation, and this ultimately affects
systems ‘Performance’.
19
Example-3
• For example, both Intel and AMD processors have the same X86
architecture.
• The same programs run correctly on both, because the architecture
(instruction set and hardware components) is the same.
• But how the two companies implement that architecture (their
computer organization) is usually very different.
• But the programs on both machines may run at different speeds,
because the organization are different.
• Different organization means their ‘realization of architecture is
different’ from one another.
20
Dell, HP, Lenovo etc.
• Many computer manufacturers offer a family of computer models, all
with the same architecture but with differences in organization.
• Consequently, the different models in the family have different price
and performance characteristics.
• Furthermore, a particular architecture may span many years and
encompass a number of different computer models, its organization
changing with changing technology.
• The customer with modest requirements could buy a cheaper, slower
model and, if demand increased, later upgrade to a more expensive,
faster model without having to abandon software that had already
been developed.
21
Final Note
• ‘Computer Architecture’ can be considered as an agreement between
Hardware and Software people.
22
Computer : A Hierarchical SystemComputer -> CPU -> Control Unit
• A ‘computer’ is a complex ‘hierarchical system’, whose major
components are processor, memory and I/O.
• A hierarchical system has different levels, and at each level, the
system consists of a set of components and their relationships.
• In ‘top-down’ approach, we begin with a top view and decompose the
system into its sub-parts.
• The behaviour at each level depends only on a simplified working of
the system at the next lower level. And at each level the designer
deals with structure and function.
• Structure is the way in which the components are inter-related.
• Function is the operation of each individual component as part of the
structure. Figure Next Slide ->
23
Hierarchical System: Block Diagram
24
Four basic ‘Functions’ of a Computer
• Function is the operation of each individual component as part of the
structure.
• Four basic functions that a computer system can perform are:
1) Data processing 2) Data storage 3) Data movement 4) Control
1) The computer must be able to process data. The data may take a
wide variety of forms and the range of processing requirements is
broad. Process of items of data to produce meaningful information.
2) It is also essential that a computer must store data. Files of data are
stored on the computer for subsequent retrieval and update.Fly processing
25
Four basic ‘Functions’
3) The computer must be able to move data between itself and the
outside world and connects to devices that serve as either sources
or destinations of data.
• When data are received from or delivered to a device that is directly
connected to the computer, the process is known as Input/Output
(I/O), and the device is referred to as Peripheral. Data communication for remote devices.
4) Finally, there must be control of these three functions. This control
is exercised by the individual(s) who provide the computer with
instructions. A ‘control unit’ manages the computer’s resources in
response to those instructions.
26
Internal Structure of the Computer
• A computer has four main components: Their Functions are:
1) CPU 2) Main memory 3) I/O 4) System interconnections
1) Central Processing Unit (CPU) controls the operation of the
computer and performs its data processing functions as ‘processor’.
2) Main memory stores program’s instructions and data at runtime.
3) I/O moves data between the computer and its external
environment.
4) System interconnections provides for communication among CPU,
main memory and I/O by means of a ‘system bus’.
27
Structural Components of a Processor
CPU is the component that executes a program by performing arithmetic and logical operations on data.
29
The Computer: Top-Level Structure
30
Multicore Computer Structure
• Multicore processor is a semiconductor chip having multiple
processor called cores embedded on it.
• Each ‘Core’ is an individual processor having its own ALU and
execution unit.
• Each core executes its own set of instructions at the same time.
• Having multiple cores in a system enhances its ‘performance’.
• A multicore system supports ‘multitasking’ and ‘multi threading’.
• Thread is an individual piece of code assigned to a single core.
• Hyper-threading: A single core appears to the OS as two virtual cores.
31
The motherboard is a rigid, flat board, that
holds and interconnects chips and other
electronic components.
32
Components and Working of Control Unit
(CU) Morris Page 231, Page 137
• See book figure.
• design of control unit in computer architecture (google)
• https://
www.studytonight.com/computer-architecture/design-of-control-unit
.php
• http://nptel.ac.in/courses/106103068/20
• https://en.wikipedia.org/wiki/Control_unit
• http://whatis.techtarget.com/definition/clock-speed
• control signals in computer architecture (google)
33
design of arithmetic logic unit Morris Page
117 and page 164
• http://www.explainthatstuff.com/howtransistorswork.html
• How do transistors work in calculators and computers? ALU Logic
• And or operations in weather and logic gates
• The transistor is the primary building block of all microchips,
including your CPU, and is what creates the binary 0's and 1's (bits)
your computer uses to communicate and deal with Boolean logic.
When placed in different configurations, transistors form logic gates,
which can be combined into arrays called half adders that can also be
combined into full adders. [ALU]
34