Architecture lecture 1, Lecture notes of Architecture

Architecture lecture 1 slides

Typology: Lecture notes

2016/2017

Uploaded on 04/29/2017

syed-najeeb-hassan
syed-najeeb-hassan 🇵🇰

4

(2)

2 documents

1 / 4

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Computational Models
The concept of a computational model
Basic computational models
The von Neumann computational model
Key concepts relating to computational models
CH01
TECH
Computer Science
The concept of a
computational model
Model: Foundation or paradigm
Level of abstraction
Computational Model
4Computer architecture
4Computer language
Interpretation of concept of a
computational model
Computational Model
4(1) Basic items of computation
4(2) Problem description model
4(3) Execution model
(1) Basic items of computation
4e.g. data, object, argument and functions, element of
sets and the predicates
(2) Problem description model
Problem description model
4Style
4Method
Problem description style
4Procedural
4Declarative
Procedure style
f(algorithm for solving the problem is stated)
Declarative style
f(all the facts and relationships relevant to the given problem is
stated)
Problem description style (e.g.)
Calculate n factorial, n!
Procedural style
int nfac (int n) {
int fac = 1;
if (n > 0)
for ( int i = 2; i <= n; i++ )
fac = fac * i;
return fac; }
Declarative style
fac (0) = 1;
fac ( n>0 ) = n * fac ( n-1 );
pf3
pf4

Partial preview of the text

Download Architecture lecture 1 and more Lecture notes Architecture in PDF only on Docsity!

Computational Models

  • The concept of a computational model
  • Basic computational models
  • The von Neumann computational model
  • Key concepts relating to computational models

CH

TECH

Computer Science

The concept of a

computational model

  • Model: Foundation or paradigm
  • Level of abstraction
  • Computational Model 4 Computer architecture 4 Computer language

Interpretation of concept of a

computational model

  • Computational Model 4 (1) Basic items of computation 4 (2) Problem description model 4 (3) Execution model

(1) Basic items of computation

4 e.g. data, object, argument and functions, element of sets and the predicates

(2) Problem description model

  • Problem description model 4 Style 4 Method
  • Problem description style 4 Procedural 4 Declarative
  • Procedure style f (algorithm for solving the problem is stated)
  • Declarative style f (all the facts and relationships relevant to the given problem is stated)

Problem description style (e.g.)

Calculate n factorial, n!

  • Procedural style
  • int nfac (int n) { int fac = 1; if (n > 0) for ( int i = 2; i <= n; i++ ) fac = fac * i; return fac; }
  • Declarative style fac (0) = 1; fac ( n>0 ) = n * fac ( n-1 );

Declarative style

  • Using functions 4 in a model called applicative, (Pure Lisp)
  • Using predicates 4 in a model called predicate logic-based, (Prolog)

Problem description method

  • Procedural method 4 how a solution of the given problem has to be described 4 e.g. sequence of instructions
  • Declarative method 4 how the problem itself has to be described 4 e.g. set of functions

(3) Execution Model

  • Interpretation of how to perform the computation related to the problem description method
  • Execution semantics rule that prescribes how a single execution step is to be performed
  • Control of the execution sequence ordering of execution sequence

Execution semantic

  • State transition semantics f Turing model f von Neumann model f object-based model
  • Dataflow semantics f dataflow model
  • Reduction semantics f applicative model (Pure Lisp)
  • SLD-resolution f Predicate logic-based model (Prolog)

Control of the execution sequence

  • Control driven 4 assumed that there exists a program consisting of sequence of instructions f execution sequence is then implicitly given by the order of the instruction f explicit control instructions to change the order
  • Data driven 4 an operation is activated as soon as all the needed input data is available (eager evaluation)
  • Demand driven 4 an operation is activated only when execution is needed to achieve the final result

Concepts of computational model,

programming language, and architecture

Computational model

Programming Language

Computer Architecture

Specification tool

Implementation tool

Execution

Extensions of the von Neumann

computational model

  • new abstraction of parallel execution
  • communication mechanism allows the transfer of data between executable units 4 unprotected shared (global) variables 4 shared variables protected by modules or monitors 4 message passing, and 4 rendezvous
  • synchronization mechanism 4 semaphores 4 signals 4 events 4 queues 4 barrier synchronization

Key concepts relating to

computational models

  • Granularity 4 complexity of the items of computation 4 size 4 fine-grained 4 middle-grained 4 coarse-grained
  • Typing 4 data based type ~ Tagged 4 object based type (object classes)