Computer Organization and Architecture
Computer Organization and Architecture
Outline
Definition and Scope
Structure and Function
Evolution of Computers
Brief History
Von Neumann Architecture
Interpretation of Instructions
Interconnection Structures
Instruction Cycle & Instruction Pipeline
RAM Model
Evolution of Intel Processor Architecture
From 4-bit to 64-bit
Computer Organization and Architecture
Definitions
Computer Architecture: Refers to the parts of a computer system that are visible to programmers and affect program execution. This includes:
Instruction set
Number of bits used to represent various data types (e.g., characters, integers)
I/O mechanisms and memory addressing techniques.
Computer Organization: Involves operational units and their connections that realize the architectural specifications. This includes:
Control signals
Interfaces with peripherals
Memory technology
Architectural Attributes: High-level design aspects that include:
Instruction set
Data representation
Memory addressing
Organizational Attributes: Low-level aspects that include:
Hardware details not necessarily visible to programmers, such as circuit designs and control signals.
Computer Architecture vs. Computer Organization
Computer Architecture:
Describes what a computer does:
Handles high-level functional behavior
Comprises logical functions like instruction sets, registers, and addressing modes.
Categorized into:
Von Neumann Architecture
Harvard Architecture
Instruction Set Architecture (ISA)
Micro-architecture
System Design
Computer Organization:
Describes how a computer achieves its functions:
Addresses low-level design issues, focusing on structural relationships within the hardware.
Known as Microarchitecture.
Provides details on physical units like circuit designs and peripherals.
Key Differences:
Architecture: Visible to programmers, affects instruction sets, and functionality.
Organization: Structure hidden from programmers, focuses on performance aspects and operational characteristics.
Examples of Architectural Implementations
Intel and AMD: Developed x86 processors.
Sun Microsystems et al.: Developed SPARC processors.
Apple, IBM, and Motorola: Developed PowerPC architecture.
Structure and Function of a Computer
Complex System: A computer system includes millions of electronic components, necessitating a hierarchical approach for both design and description.
Hierarchical Approach:
Divides a complex system into interrelated subsystems.
Describes structure and function at each level:
Structure: The interrelation of components.
Function: The operational role of individual components.
Can develop a description either from bottom-up (building a full description) or top-down (decomposing from a complete system view, preferred).
Functional View of a Computer
Basic Functions:
Data Processing: Requires the computer to modify data in various forms.
Data Storage: Temporary storage during processing and saving for later retrieval.
Data Movement: Involves transferring data to/from peripheral devices, also known as input-output (I/O) operations.
Control: Directing processes within the computer.
Input-Output (I/O): Data exchange between the computer and its environment; peripherals serve as data sources/destinations.
Data Communications: Involves longer-distance data transfer to/from remote devices.
Structural View of a Computer
Overall Architecture:
Interaction with the external environment.
Peripheral Devices: External devices classified as input or output devices.
Central Processing Unit (CPU): Controls operations and handles data processing.
System Interconnection: Communication pathways between CPU, main memory, and I/O devices, often through a system bus.
Main Memory: Stores data temporarily, can have multiple units in modern systems.
Conclusion
Understanding computer organization and architecture is fundamental for grasping how computer systems function systematically, impacting both hardware design and software interaction.
Acknowledgements
Vishwakarma Institute of Technology, Pune