LECTURE 1

INTRODUCTION TO COMPUTER SYSTEM ORGANIZATION

 

·                    In describing computers, a distinction is often made between computer architecture and computer organization.

·                    CA:  attributes of a system visible to a programmer or that have a direct impact on the logical execution of a program (Stallings 2003).

·                    CO:  operational units and their interconnections that realize the architectural specifications (Stallings 2003).

·                    CA:  architectural attributes include the instruction set, the number of bits used to represent various data types (e.g., numbers, characters), I/O mechanisms, and techniques for addressing memory.

·                    CO:  organizational attributes include those HW details transparent to the programmer, such as control signals, interfaces between the computer and peripherals, and the memory technology used.

·                    Historically, a computer was a job title, not a piece of equipment!

·                    Requirements of a computer include process data, store data, move data between the computer and the outside world and control the operation of the above.

·                    Process data: the data may take a wide variety of forms, and the range of processing requirements is broad.

·                    Store data: the computer must temporarily store at least those pieces of data that are being worked on at any given moment (short term and long term data storage function).

·                    Move 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 known as a peripheral.

·                    Move data: When data are moved over longer distances, to/from a remote device, the process is known as data communications.

·                    Control: is exercised by the individual(s) who provides the computer with instructions.

·                    History of computers is classified into the mechanical era and the electronic era.

·                    ME:  1600s-1940s.

·                    Wilhelm Schickhard (1623):

o                   Astronomer and mathematician.

o                   Automatically add, subtract, multiply, and divide.

·                    Blaise Pascal (1642):

o                   Mathematician.

o                   Mass-produced the first working machine (50 copies).

o                   Could only add and subtract.

o                   Maintenance and labor problems.

·                    Gottfried Liebniz (1673):

o                   Mathematician.

o                   Improved on Pascal’s machine.

o                   Add, subtract, multiply, and divide.

·                    Charles Babbage (1822):

o                   Mathematician.

o                   “Father of modern computer”.

o                   Difference engine.

§                    Government/science agreement.

§                    Automatic computation of math tables.

o                   Analytic engine.

§                    Perform any math operation.

§                    Punch cards.

§                    Modern structure: I/O, storage, ALU.

§                    Add in 1 second and multiply in 1 minute.

o                   Both engines plagued by mechanical problems.

·                    George Boole (1847):

o                   Mathematical analysis of logic.

o                   Investigation of laws of thought.

·                    Herman Hollerith (1889):

o                   Modern day punched card machine.

o                   Formed Tabulating Machine Company (became IBM).

o                   1880 census took 5 years to tabulate.

o                   Tabulation estimates 1890: 7.5 years.

o                   Tabulation estimates 1900: 10+ years.

o                   Hollerith’s machine tabulating machine reduced the 7.5-year estimate to 2 months.

·                    Konrad Zuse (1938):

o                   Built the first working mechanical computer the Z1.

o                   Binary machine.

o                   German government decided not to pursue development due to the WWII already started.

·                    Howard Aiken (1943):

o                   Designed the Harvard Mark I.

o                   Implementation of Babbage’s machine.

o                   Built by IBM.

·                    ME summary:

o                   Mechanical computers were designed to reduce the time required for calculations and increase accuracy of the results.

o                   1st Drawback:  Speed of operation limited by the inertia of moving parts (gears and pulleys).

o                   2nd Drawback: Cumbersome, unreliable, and expensive.

·                    EE: 1940s-????

·                    Generation 1 (1946-1957).

o                   ENIAC: Short form of Electronic Numerical Integrator and Computer.

o                   ENIAC: Developed for calculating artillery-firing tables.

o                   ENIAC: Designed by Mauchly and Echert of the University of Pennsylvania.

o                   ENIAC: Regarded as the first electronic computer-Colossus probably the first but was classified until recently.

o                   ENIAC was so big (18,000 tubes+70,000 resistors+10,000 capacitors+6,000 switches+30x50 feet size+140 kW of power rating).

o                   ENIAC: Used a decimal number system.

o                   ENIAC: Programmed by manually setting switches.

o                   IAS: Short form of Institute for Advanced Studies.

o                   IAS: Designed by von Neumann and Goldstine.

o                   IAS: Took idea of ENIAC and developed concept of storing a program in the memory.

o                   IAS: This architecture came to be known as the “von Neumann” architecture/machine and has been the basis for virtually every machine designed since then.

o                   IAS: 1st feature is data and instructions (programs) are stored in a single read-write (R/W) memory.

o                   IAS: 2nd feature is memory contents are addressable by location, regardless of the content itself.

o                   IAS: 3rd feature is sequential execution.

o                   IAS: Lots of initial and long-term fighting over patents, rights, credits, firsts, etc.

·                    Generation 2 (1958-1964).

o                   Transistors widely used.

o                   ZSI (discrete component) used.

o                   High-level languages used.

o                   Floating-point arithmetic.

·                    Generation 3 (1965-1971).

o                   Introduction of integrated circuits (ICs).

o                   Semiconductor memory used.

o                   Microprogramming implemented.

o                   Multiprogramming implemented.

·                    Generation 4 (1972-1977).

o                   Large-scale integration (LSI) techniques used.

o                   LSI: >1,000 components per IC.

o                   Very LSI (VLSI) also introduced.

o                   VLSI: >10,000 components per IC.

o                   Single board computers.

·                    Generation 5 (1978-????).

o                   VLSI: >100,000 components per IC.

o                   Ultra LSI (ULSI) and Giga Scale Integration (GSI) techniques also used.

o                   Computer communication networks developed (LAN, MAN and WAN).

o                   Artificial Intelligence developed.

o                   Massively parallel machines.

·                    Summary of generations.

G

Example Machines

HW

SW

Performance

1

ENIAC

UNIVAC I

UNIVAC II

IBM 700

Vacuum tubes, magnetic drums, electrostatic tubes memory

Machine code, stored programs

2-4 KB memory,

40 KIPS

2

IBM 7094

PDP-1

Transistors, core memory,

ZSI

High level languages

4-32 KB memory, 200 KIPS

3

IBM 360 370,

PDP-2

ICs, semiconductor memory, microprocessors,

SSI, MSI

Timesharing, graphics, structure programming

2-8 MB memory, 1 MIPS

 

 

 

 

 

 

4

IBM 3090 Cray XMP IBM PC

Intel 4004-Intel 8088

LSI, VLSI, networks, optical disks

Packaged programs, object-oriented languages, expert systems

8-64 MB memory, 10 MIPS,

108 KHz-5 MHz clock speeds

 

5

Sun Sparc

Intel Paragon

(80286-Itanium)

PowerPC 601-PowerPC G4

VLSI, ULSI, GSI, GaAs, parallel systems

Parallel languages symbolic processing, Artificial Intelligence

64 MB-1 GB (currently) memory, 100 MIPS, 6 MHz-1.8 GHz (currently) clock speeds

 

·                    There are four basic components of the modern computer system:

1.                 HW component.

2.                 SW component.

3.                 Data.

4.                 Communication component.

·                    HW

o                   Provides the physical mechanisms to input and output data, for manipulating data, and for electronically controlling the various input, output, and storage components.

o                   The most visible part.

o                   Keyboard and mouse is used to provide input of program text and data, as well as for commands to the computer.

o                   A display screen or printer is used to observe output.

o                   These are all physical components.

o                   Calculations and other operations are performed by a central processing unit (CPU) inside the computer.

o                   Memory is provided to hold programs and data while processing is taking place.

o                   Other I/O devices, such as disk and tape are used to provide long-term storage of program and data files.

o                   The CPU itself composed of three subunits:

1.                 The arithmetic logic unit (ALU), where arithmetic and Boolean logical calculations are performed.

2.                 The control unit (CU), which controls the processing of instructions and the movement of internal CPU data from one part of the CPU to another.

3.                 The interface unit, which moves program instructions and data between the CPU and other HW components.

o                   In many computer systems, a bus interconnects the CPU, memory, and all of the I/O components.

o                   A bus is simply a bundle of wires that carry signals and power between different components.

o                   In other systems, the I/O modules are connected to the CPU through 1 or more separate processors known as channels.

o                   The main memory/primary storage/working storage/random access memory (RAM) holds programs and data for access by the CPU.

o                   RAM is made up of a large number of cells, each numbered and individually addressable.

o                   Each cell holds a single binary number representing data or an instruction.

o                   The basic size of the cell in most current computers is 8 bits, known as a byte of memory.

o                   In may systems, for example, 4 bytes of memory combine to form a word.

o                   A single CPU can process only 1 instruction at a time.

o                   Multiple CPUs can increase processing speed by allowing instructions that do not affect each other to be executed in parallel.

·                    SW

o                   SW consists of the programs that tell the computer what to do.

o                   Two major categories of SW are:

1.                 System SW.

2.                 Application SW.

o                   System SW helps user to manage files, to load and execute programs, and to accept commands from the mouse and keyboard.

o                   System SW program is collectively known as an operating system (OS), and differs from the application programs, such as MS Word, etc.

o                   Windows 2000, Windows XP, UNIX, and LINUX are the best-known examples of an OS.

o                   The application program interface (API), acts as an interface for application programs and utilities to access the internal services provided by the OS (such as services, I/O services, data communication services, user interface services, program execution services, and more).

o                   The kernel module provides many of the internal services.

o                   The remaining services are provided by other modules that are controlled by the kernel.

o                   The kernel manages memory by locating and allocating space to programs that need it, schedules time for each application to execute, provides communication between programs that are being executed, manages/arranges services/resources provided by other modules, and provides security.

o                   The file management system allocates/manages secondary storage space and translates file requests from their name-based form into specific I/O requests.

o                   The I/O drivers that comprise the I/O component perform the actual storage/retrieval of the files.

o                   Each I/O driver controls 1 or more HW devices of similar type.

o                   The OS SW is nearly always stored on a HD but on a few systems, the OS is provided as a network service when the program is turned on.

o                   In either case, the bootstrap or Initial Program Load (IPL) program in the OS is stored within the computer using the Read Only Memory (ROM).

o                   The bootstrap program provides the tools to test the system/to load the remainder of the OS from the disk/network.

o                   The SW is considered intangible although it is stored in the physical medium.

·                    Data.

o                   The component, which is being manipulated.

o                   It may be numeric or alphanumeric or graphic or in some other form.

o                   It must be representable to be manipulated by the computer.

·                    Communication component.

o                   Most modern computers do not operate alone.

o                   Instead, they are tied to other computers directly via a network (LAN/MAN/WAN).

o                   The communication component requires both HW and SW.

o                   A communication channel provides the connection between computers.

o                   The channel may be a wire cable, a fiber optic cable, a telephone line, or a wireless technology, such as infrared (IR) light or radio frequency (RF).

o                   Special I/O HW consisting of a modulator demodulator (modem) or network interface card (NIC) within the computer serves as an interface between the computer and the communication channel.

o                   The SW component consists of additional programs within the OS of each computer that establish a common set of ground rules known as protocols (such as OSI, TCP/IP, IPX/SX, ATM, NetBios, Netware etc.) that make it possible for each computer to understand what other computers that they are connected with are saying.

o                   International standards ensure that the protocols are universally compatible.

o                   The Internet is a measure of the success to which protocols have been standardized.

·                    Since computers all operates so similarly, regardless of size or type, it is not difficult today to transfer data between these different systems, allowing each system to do part of the processing for higher overall efficiency (known as the distributed computing concept).

·                    The fact that different types of computers can work together, share files, and communicate successfully is known as open computing.

·                    Generally, computers are classified based on its variety sizes, from tiny to monstrous, in both appearance and power.

·                    Traditionally, they have been classified as mainframes and supercomputers (large systems), minicomputers and superminis (middle-sized systems) and personal computers, microcomputers and workstations (small systems).

·                    However, technology continues to advance rapidly, blurring edges of such classifications.

·                    Mainframes: Capable of processing data at very fast speeds at MIPS and have access to billions of data characters.

·                    Mainframes: Principal use is for processing vast amounts of data quickly, thus, obvious customers are ISPs, banks, insurance companies and manufacturers.

·                    Supercomputers:  Process data at a speed of BIPS.

·                    Supercomputers:  Although their number is limited compared to the cheaper mainframes, they are used for mammoth jobs, such as worldwide weather forecasting, the census, oil exploration, and military uses.

·                    Minicomputers:  Smaller computers which are slower and less costly than mainframes (fall within the price range of many SMEs).

·                    Minicomputers:  Became known as superminis as their popularity, power and speed grew until the top of the line.

·                    Personal Computers (PCs):  The smallest computers also known as microcomputers.

·                    PCs:  The top of the line became known as supermicros or referred as workstations.

·                    The characteristics used differentiate mainframes and minicomputers are speed, instruction repertoire, number of CPU registers, word length, main memory size, complexity of I/O modules, OS complexity, physical size, cost, virtual address space, secondary memory size, and degree of multiprogramming.

·                    Computer system model can be classified into three models:

1.                 von Neumann model.

2.                 Onion model.

3.                 Neural network (NN) model.

·                    Von Neumann model:

o                   Have 3 basic components:

1.                 CPU.

2.                 Main memory.

3.                 I/O system.

o                   Use program and data that can be manipulated in computer memory.

o                   Use multipurpose processor to process instruction (sequential) by instruction: fetch cycle and execute cycle.

o                   Use bus system between memory and CPU:  data and parallel access.

·                    Onion model:

o                   Computer system is distributed into several layers.

 

 

·                    NN model:

o                   Computer system is assumed to be equal to human body (brain-nerve cells).

o                   NN is a computational and engineering methodology based on emulating how nature has implemented biological brain (in particular, the brain’s massively parallel and learning aspects).

o                   CPU becomes as the brain of computer.

 

1