architettura di calcolo classificazioneclassificazione

15
Architettura di Calcolo Classificazione

Upload: luciana-casadei

Post on 02-May-2015

228 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Architettura di Calcolo ClassificazioneClassificazione

Architettura di CalcoloArchitettura di CalcoloClassificazioneClassificazione

Page 2: Architettura di Calcolo ClassificazioneClassificazione

Classificazione dell’ArchitetturaClassificazione

dell’Architettura

2. Tipo di ELABORAZIONE della Macchina

1.Tipo di FLUSSO DATI / ISTRUZIONI che interessa la Macchina

3. SET DI ISTRUZIONI della Macchina

Architetturadi Calcolo

Flusso di Istruzioni

IstruzioniElaborate

Flusso di Dati

OperandiManipolati

Architetturadi Calcolo

Elaborazione

Flusso di Istruzioni Flusso di DatiArchitettura

di Calcolo

Instruction Set

Flusso di Istruzioni Flusso di Dati

Page 3: Architettura di Calcolo ClassificazioneClassificazione

Classificazione dell’ArchitetturaClassificazione

dell’ArchitetturaClassificazione di FLYNN

5

Architetturadi Calcolo

Flusso di Istruzioni

IstruzioniElaborate

Flusso di Dati

OperandiManipolati

• Tipo e Numero di ALU• Tipo di CU

Tipo diMemoria Dati

Page 4: Architettura di Calcolo ClassificazioneClassificazione

Classificazione dell’ArchitetturaClassificazione

dell’ArchitetturaClassificazione di Flynn

13

Architetturadi Calcolo

Flusso di Istruzioni

Singolo / Multiplo

Flusso di Dati

Singolo / Multiplo

Page 5: Architettura di Calcolo ClassificazioneClassificazione

Classificazione dell’ArchitetturaClassificazione

dell’ArchitetturaClassificazione di FLYNN

SIMD

ISTRUZIONEISTRUZIONE

6

Unità Omogenee e Sincrone

SISDSIMD

Macchina di Von

NeumanProcessore Vettoriale

ArrayProcessor

Page 6: Architettura di Calcolo ClassificazioneClassificazione

Classificazione dell’ArchitetturaClassificazione

dell’ArchitetturaClassificazione di FLYNN

7

UnitàDisomogenee

e Sincrone

Page 7: Architettura di Calcolo ClassificazioneClassificazione

Classificazione dell’ArchitetturaClassificazione

dell’ArchitetturaSuper-Scalare vs VLIW

8

Page 8: Architettura di Calcolo ClassificazioneClassificazione

Classificazione dell’ArchitetturaClassificazione

dell’ArchitetturaArchitettura VLIW

11

Pro

cess

ore

VL

IW UnitàDisomogenee

e Sincrone

Page 9: Architettura di Calcolo ClassificazioneClassificazione

Classificazione dell’ArchitetturaClassificazione

dell’ArchitetturaClassificazione di FLYNN

I calcolatori della classe MIMD si suddividono in:a. calcolatori MIMD a memoria condivisa (shared memory);b. calcolatori MIMD a memoria distribuita.

7

UnitàDisomogenee e Asincrone

Page 10: Architettura di Calcolo ClassificazioneClassificazione

Classificazione dell’ArchitetturaClassificazione

dell’ArchitetturaElaborazione Parallela e Distribuita

12

Architetturadi Calcolo

Elaborazione

Flusso di Istruzioni Flusso di Dati

Page 11: Architettura di Calcolo ClassificazioneClassificazione

Classificazione dell’ArchitetturaClassificazione

dell’ArchitetturaSet di Istruzioni

Con Set di Istruzioni di un Microprocessore o di una generica architettura di calcolo si intende l’insieme di comandi operativi riconosciuti dalla Macchina.

Il singolo comando assembler ha una forma tipica:

C.O. Op1, Op2, …, OpN, Dest ( SISD )

c.o.A op1A, op2A, destA c.o.B op1B, op2B, destB ( MISD )

Il programma eseguito da un architettura di calcolo è una lista di comandi assembler.

14

Architetturadi Calcolo

Instruction Set

Flusso di Istruzioni Flusso di Dati

Page 12: Architettura di Calcolo ClassificazioneClassificazione

• Type of the operations• Parallelismo delle operazioni

• Operand Storage In/Out the CPU • Number of Explicit operands for instruction

• operand Location

• Type and Size of operands

Classificazione dell’ArchitetturaClassificazione

dell’ArchitetturaSet di Istruzioni

• Integer

• Floating Point Float e Double Precision

Byte, Half Word, Word

15

Page 13: Architettura di Calcolo ClassificazioneClassificazione

Classificazione dell’ArchitetturaClassificazione

dell’Architettura

Aritmetico - Logiche Data Transfert Controllo Salto Incondizionato

Aritmetico - Logiche Data Transfert Controllo Salto Incondizionato

Set di Istruzioni

ADD, SUB, MULT, DIVSHIFT Aritm./Log., AND, OR, XOR … >, ≥, <, ≤, =

LOAD e STOREma anche operazioni aritmetico/logiche

BRANCH subordinato ad una comparazione semplice (=0) o

complessa (>, ≥, <, ≤)

JUMP senza condizione(istruzione a supporto di quella di

BRANCH)

Type of the operations:Istr 1Istr 2Istr 3Istr 4

Istr 5Istr 6Istr 7Istr 8

Jump

Brench

Istr 9

16

Page 14: Architettura di Calcolo ClassificazioneClassificazione

Classificazione dell’ArchitetturaClassificazione

dell’ArchitetturaSet di Istruzioni

Parallelismo of the Instruction:

Processore D

ual-CoreP

roce

ssor

e V

LIW

A: Parallelismo Spaziale (Ridondanza HW)B: Parallelismo Temporale (Pipeline) Trasparente al Programmatore

A: Parallelismo Spaziale (Ridondanza HW)B: Parallelismo Temporale (Pipeline) Trasparente al Programmatore

Parallelismodi Operazione

18

C.O. Op1, Op2, …, OpN, Dest ( SISD )

c.o.A op1A, op2A, destA c.o.B op1B, op2B, destB ( MISD )

Page 15: Architettura di Calcolo ClassificazioneClassificazione

Operand Storage In/Out the CPU: a Stack: the operands are implicitly on top of the stack

     an Accumulator: one operand is implicitly the accumulator

     a set of Registers: all operands are explicit either registers or memory locations

The code segment C = A + B how it would appear on the classes of instruction sets

StackPUSH A

PUSH B

ADD

POP C

RegisterLoad R1,A

ADD R1,B

Store C,R1

AccumulatorLoad A

ADD B

Store C

Classificazione dell’ArchitetturaClassificazione

dell’ArchitetturaSet di Istruzioni

General PurposeLonger Instruction

High Memory TrafficShort Instruction

NO Efficient CodeGood Code Density 17