Computer Organization and Architecture

Chapter 1 - Introduction


Computer Architecture

Computer Organization

Attributes visible to the programmer

e.g. - instruction sets

  • I/O mechanisms

  • addressing techniques

  • number of bits used for data representation

How features are implemented

e.g. - memory technology

  • control signals

  • interfaces 

All Intel x86 or IBM/ 370 family share the same basic architecture

Organization differs between different versions


Structure

Function

the way in which components relate to each other

  • Top Level (CPU, Memory, I/O, Systems interconnection) 

  • CPU (ALU, Control Unit, Registers or high speed memories, Internal CPU interconnection) 

  • ALU (Registers and decoders, control memory)

the operation of individual components as part of the structure



All computer functions are:

  • Data processing

  • Data storage

  • Data movement

  • control


Machine Language



Language    Virtual Machine

A machine defined                                 A machine with HPL like C/ C++,

by a language out of an                         Java, Modula 2

electronic circuit

- complicated and expensive                 - complex but conceivable



Multilevel Machine Principles

  • Layer/Levels

  • Translation – produce new program 

  • Interpretation – line by line

  • Designing new computers or new levels must be familiar with levels other than the top ones


What is “Computer Architecture”?

  • Coordination of many levels of abstraction

  • Under a rapidly changing set of forces

  • Design, Measurement, and Evaluation



Multilevel Machine

  • Level 6 and above - machines tailored to certain applications 

  • Level 5 – Problem Oriented Language level 

  • Level 4 – Assembly Language Level

  • Level 3 – Operating System Machine Level 

  • Level 2 – Conventional Machine Level 

  • Level 1 – Microprogramming Level 

  • Level 0 – Digital Logic Level


Digital Logic Level (Level 0)

  • machine’s true hardware

  • its circuitry carries out the machine language programs of level 1

  • interesting objects are GATES



Microprogramming Level (Level 1)

  • true machine level language

  • a definite program (microprogram) whose job is to interpret the instructions of level 2 (each micro-program implicitly defines a level 2 language)

  • directly executed by the hardware



Conventional Machine Level (Level 2)

  • MANUFACTURERS describing the machine’s instruction set

    • Instructions carried out interpretively by the micro-program

    • Though some computers don’t have a microprogramming level interpretation (micro-program)



Operating System Machine Level (Level 3)

  • implemented by systems programmers 

  • hybrid level” – most of the instructions are also in the level 2 

  • additional features like memory organization, ability to run 2 or more programs in parallel, etc, are included 

  • some are interpreted by the OS and some instructions are interpreted by the microprogram 



Assembly Language Level (Level 4)

  • intended for the applications programmers with problems to solve 

  • change – the method by which the higher levels are supported (supported by translation)

  • Languages contain words and abbreviations meaningful to people



Problem Oriented Language Level (Level 5)

  • Consists of languages designed to be used by applications programmers with problems to solve (HLL)

  • Translation (compiler) - translates level 5 to level 3 or 4 (although, occasionally they are interpreted)



Level 6 and above

  • Consists of collections of programs designed to create machines specifically tailored to certain applications (e.g. administration, education, computer design, etc.)

  • These levels are in area of research and development



Different classification of today’s Computers



Microcomputers

  • smallest, least costly, and most popular computers on the market. The availability of lowcost, easy-to-use programs plays a major role in consumer acceptance of microcomputer brands.


Minicomputers

  • performs specialized tasks such as handling data communications. Smaller, cheaper, easier to maintain and install than mainframes. (Quickly disappearing because micros can now perform what minis can do).


Mainframes

  • are large, fast systems capable of supporting several hundred input and output devices. Frequently used as repositories of huge amounts of data. 

  • Staff operates and programs the mainframe computer.


Supercomputers

  • are the fastest, most expensive computers.

  • Can run different calculations simultaneously, thereby processing in a minute what would take PCs several weeks or months. 

  • Most of them are used for scientific research, weather forecasting, pollution/ environment condition analysis, etc.