Understanding Structured Computer Organization: Multilevel Machines and Virtual Machines, Slides of Information and Computer Technology

An introduction to structured computer organization, focusing on languages, levels, and virtual machines. It explains the concept of machine language and the need for abstractions, as well as translation and interpretation methods. The text also covers the evolution of multilevel machines and the role of operating systems.

Typology: Slides

2012/2013

Uploaded on 04/29/2013

architay
architay 🇮🇳

4.4

(17)

112 documents

1 / 39

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Introduction to Computer
Architecture
Docsity.com Docsity.com
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27

Partial preview of the text

Download Understanding Structured Computer Organization: Multilevel Machines and Virtual Machines and more Slides Information and Computer Technology in PDF only on Docsity!

Introduction to Computer

Architecture

Structured Computer

Organization

• A computer’s native language, machine

language, is difficult for human’s to use to

program the computer

  • Due to this difficulty, computers are often

structured as a series of abstractions, each

building on the one below it

  • In this way, complexity can be mastered
  • This approach is called structured computer

organization

Languages, Levels, and Virtual

Machines

  • Translation and interpretation are similar. Both methods, and a combination of the two, are widely used
  • Rather than think of translation/interpretation, it is often simpler to imagine a virtual machine whose machine language is L1. Call this machine M1.
  • Why not implement M1 directly? It might be too expensive or complicated to construct out of electrical circuits.
  • In order to make translation practical, M0 (the real machine) and M1 must not be too different. So, L1 might still be difficult to program! Solution? Create a new VM M2. If necessary repeat until we have a useful machine. This leads to a computer consisting of a number of layers or levels , one on top of another.

Computer as Multilevel Machine

Contemporary Multilevel

Machines

  • The next level up is the microarchitecture

level

  • At this level we see a collection of (typically) 8 to 32 registers that form a local memory and a circuit called an ALU ( Arithmetic Logic Unit ) capable of performing simple arithmetic operations.
  • The registers are connected to the ALU to form a data path over which data flow
  • On some machines the operation of the data path is controlled by a program called a microprogram. On other machines the data path is controlled directly by hardware.

Contemporary Multilevel

Machines

  • Level 2 is the Instruction Set Architecture (ISA) level. This level consists of the instructions that can be carried out by the computer.
  • The facilities added at level 3 are carried out by an interpreter running at level 2 called an operating system. This level is called the operating system level.
  • Levels 4 and 5 are used by application programmers (only systems programmers use the lower three levels). The languages of levels 4 and 5 are usually translated while those of levels 2 and 3 are always interpreted.

A Six-Level Computer

Evolution of Multilevel Machines

  • The first digital computers had only two levels: the ISA level (where programming was done) and the digital logic level. The digital logic circuits were very complicated. - In 1951, Maurice Wilkes suggested the idea of a three- level computer in order to simplify the hardware. The machine was to have a built-in unchangeable program (the microprogram whose function was to execute ISA-level programs. The microprogram was easier to implement in hardware then the instruction set, so the circuits needed were simpler. - A few three-level machines were constructed in the 1950s, more during the 1960s and by 1970 microprogrammed machines were dominant.

Evolution of Multilevel Machines

  • Early operating systems read card decks and printed output on the line printer. These were known as batch systems. In the early 1960s timesharing systems in which users were connected to the CPU using terminals and the CPU was shared were introduced.
  • Due to the ease of introducing new instructions in microprogrammed architectures, by the 1970s instruction sets had grown large and the microprogram large and slow. At this point researchers realized that by simplifying the instruction set and implementing it directly in hardware the computer could be much faster.

Milestones in Computing History

(i)

Milestones in Computing History

(iii)

A von Neumann Machine