CA Classes-1-5
CA Classes-1-5
Structure:
1.1 Introduction
Objectives
1.2 Computational Model
The basic items of computations
The problem description model
The execution model
1.3 Evolution of Computer Architecture
1.4 Process and Thread
Concept of process
Concept of thread
1.5 Concepts of Concurrent and Parallel Execution
1.6 Classification of Parallel Processing
Single instruction single data (SISD)
Single instruction multiple data (SIMD)
Multiple instruction single data (MISD)
Multiple instruction multiple data (MIMD)
1.7 Parallelism and Types of Parallelism
1.8 Levels of Parallelism
1.9 Summary
1.10 Glossary
1.11 Terminal Questions
1.12 Answers
1.1 Introduction
As you all know computers vary greatly in terms of physical size, speed of
operation, storage capacity, application, cost, ease of maintenance and
various other parameters. The hardware of a computer consists of physical
parts that are connected in some way so that the overall structure achieves
the pre-assigned functions. Each hardware unit can be viewed at different
levels of abstraction. You will find that simplification can go on to still deeper
levels. You will be surprised to know that many technologies exist for
manufacturing microchips.
Multiplexers
De-multiplexers
Coders
Decoders
I/O Controllers
A common foundation or paradigm that links the computer architecture and
language groups is called a Computational Model. The concept or idea of
computational model expresses a higher level of abstraction than can be
achieved by either the computer architecture or the programming language
alone, and includes both.
The computational model consists of the subsequent three abstractions:
1. The basic items of computations
2. The problem description model
3. The execution model
Unlike the ordinary delusions, the set of abstractions that must be selected
to state computational models is not very clear. Some criteria will define
fewer but relatively basic computational models, while a wide variety of
criteria will result in a fairly a huge quantity of different models.
1.2.1 The basic items of computations
This concept recognises the basic items of computation. This is a
requirement of the items to which the computation is referred and the sort of
computations (operations) that are executed on them. For example, in the
von Neumann computational model, the fundamental items of computation
are data.
This data will normally be characterised by individual bodies so as to be
capable of distinguishing among several different data items in the course of
a computation. These identifiable bodies are commonly called variables in
programming languages and are put into operation by register addresses or
memory in architectures.
The acknowledged computational models, such as Turing model, the von
Neumann model and the data flow model stand on the theory of data. These
models are briefly explained as below:
There are two modes for conveying these relationships and facts. The first
employs functions, as in the applicative model of computation, while the
second declares the relationships and facts in the form of predicates, as in
the predicate-logic-based computational model. Now, we will study the
second component of the problem description model that is the problem
description method. It is understood in a different way for the procedural and
the declarative style. In the procedural style, the problem description model
states the way in which the clarification of the known problem has to be
explained. On the contrary, while using the declarative style, it states the
method in which the difficulty itself has to be explained.
1.2.3 The execution model
This is the third and the final constituent of computational model. It can be
divided into three stages.
Interpretation of how to perform the computation
Execution semantics
Control of the execution sequences
The first stage pronounces the analysis of the computation, which is
strongly linked to the problem description method. The selection of problem
description method and the analysis of the computation are mutually
dependent on one another.
The subsequent stage of the execution model states the execution
semantics. This is taken as a rule that identifies the way a particular
execution step is to be performed. This rule is, certainly, linked with the
selected problem description method and the way the implementation of the
computation is understood. The final stage of the model states the rule of
the execution sequences. In the basic models, implementation is either
control driven or data driven or demand driven.
In Control driven execution, it is supposed that there is a program
consisting of a succession of instructions. The execution sequence is
then absolutely specified by the command of the directions.
Nevertheless, explicit control instructions can also be used to identify an
exit from the implied execution sequence.
Data-driven execution is symbolised by the rule that an operation is
made active instantly after all the needed input data is available. Data-