Upload
nuri
View
42
Download
3
Embed Size (px)
DESCRIPTION
Architettura di Calcolo. Classificazione. Architettura di Calcolo Elaborazione. Architettura di Calcolo Instruction Set. Flusso di Istruzioni. Flusso di Istruzioni. Flusso di Dati. Flusso di Dati. Architettura di Calcolo. Flusso di Istruzioni Istruzioni Elaborate. Flusso di Dati - PowerPoint PPT Presentation
Citation preview
Architettura di CalcoloArchitettura di CalcoloClassificazioneClassificazioneClassificazioneClassificazione
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
ArchitetturaArchitetturadi Calcolodi Calcolo
Flusso di IstruzioniFlusso di Istruzioni
IstruzioniIstruzioniElaborateElaborate
Flusso di DatiFlusso di Dati
OperandiOperandiManipolatiManipolati
ArchitetturaArchitetturadi Calcolodi Calcolo
ElaborazioneElaborazione
Flusso di IstruzioniFlusso di Istruzioni Flusso di DatiFlusso di DatiArchitetturaArchitettura
di Calcolodi Calcolo
Instruction SetInstruction Set
Flusso di IstruzioniFlusso di Istruzioni Flusso di DatiFlusso di Dati
Classificazione dell’ArchitetturaClassificazione
dell’ArchitetturaClassificazione di FLYNNClassificazione di FLYNN
55
ArchitetturaArchitetturadi Calcolodi Calcolo
Flusso di IstruzioniFlusso di Istruzioni
IstruzioniIstruzioniElaborateElaborate
Flusso di DatiFlusso di Dati
OperandiOperandiManipolatiManipolati
• Tipo e Numero di ALU• Tipo di CU
• Tipo di Memoria Dati
Classificazione dell’ArchitetturaClassificazione
dell’ArchitetturaClassificazione di FlynnClassificazione di Flynn
1313
ArchitetturaArchitetturadi Calcolodi Calcolo
Flusso di IstruzioniFlusso di Istruzioni
Singolo / MultiploSingolo / Multiplo
Flusso di DatiFlusso di Dati
Singolo / MultiploSingolo / Multiplo
Classificazione dell’ArchitetturaClassificazione
dell’ArchitetturaClassificazione di FLYNNClassificazione di FLYNN
SIMDSIMD
ISTRUZIONEISTRUZIONE
66
Unità Omogenee e Sincrone
SISDSIMD
Macchina Macchina di Von di Von
NeumanNeumanProcessore Vettoriale
ArrayProcessor
Classificazione dell’ArchitetturaClassificazione
dell’ArchitetturaClassificazione di FLYNNClassificazione di FLYNN
77
UnitàDisomogenee
e Sincrone
Classificazione dell’ArchitetturaClassificazione
dell’ArchitetturaSuper-Scalare vsSuper-Scalare vs VLIWVLIW
88
Classificazione dell’ArchitetturaClassificazione
dell’ArchitetturaArchitettura VLIWArchitettura VLIW
1111
Pro
cess
ore
VL
IW UnitàDisomogenee
e Sincrone
Classificazione dell’ArchitetturaClassificazione
dell’ArchitetturaClassificazione di FLYNNClassificazione di FLYNN
I calcolatori della classe MIMDMIMD si suddividono in:a. calcolatori MIMD a memoria condivisa (shared memory);b. calcolatori MIMD a memoria distribuita.
77
UnitàDisomogenee e Asincrone
Classificazione dell’ArchitetturaClassificazione
dell’ArchitetturaClassificazione di FlynnClassificazione di Flynn
1313
Classificazione dell’ArchitetturaClassificazione
dell’ArchitetturaElaborazione Parallela e Elaborazione Parallela e DistribuitaDistribuita
1212
ArchitetturaArchitetturadi Calcolodi Calcolo
ElaborazioneElaborazione
Flusso di IstruzioniFlusso di Istruzioni Flusso di DatiFlusso di Dati
Classificazione dell’ArchitetturaClassificazione
dell’ArchitetturaSet di IstruzioniSet 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. C.O. Op1, Op2, …, OpN, DestOp1, Op2, …, OpN, Dest ( SISD )( SISD )
c.o.A c.o.A op1A, op2A, destA op1A, op2A, destA c.o.B c.o.B op1B, op2B, destB op1B, op2B, destB ( MISD )( MISD )
Il programma eseguito da un architettura di calcolo è una lista di comandi assembler.
1414
ArchitetturaArchitetturadi Calcolodi Calcolo
Instruction SetInstruction Set
Flusso di IstruzioniFlusso di Istruzioni Flusso di DatiFlusso di Dati
• Type of the operationsType of the operations• ParallelismoParallelismo delle operazionidelle operazioni
• Operand StorageOperand Storage In/Out the CPUIn/Out the CPU • Number of Explicit operandsNumber of Explicit operands for instructionfor instruction
• operand Locationoperand Location
• TypeType andand Size Size of of operandsoperands
Classificazione dell’ArchitetturaClassificazione
dell’ArchitetturaSet di IstruzioniSet di Istruzioni
• Integer
• Floating Point Float e Double Precision
Byte, Half Word, Word
1515
Classificazione dell’ArchitetturaClassificazione
dell’Architettura
Aritmetico - Logiche Data Transfert Controllo Salto Incondizionato
Aritmetico - Logiche Data Transfert Controllo Salto Incondizionato
Set di IstruzioniSet 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 operationsType of the operations::Istr 1Istr 2Istr 3Istr 4
Istr 5Istr 6Istr 7Istr 8
Jump
Brench
Istr 9
1616
Classificazione dell’ArchitetturaClassificazione
dell’ArchitetturaSet di IstruzioniSet di Istruzioni
Parallelismo of the InstructionParallelismo 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
ParallelismoParallelismodi Operazionedi Operazione
1818
C.O. C.O. Op1, Op2, …, OpN, DestOp1, Op2, …, OpN, Dest ( SISD )( SISD )
c.o.A c.o.A op1A, op2A, destA op1A, op2A, destA c.o.B c.o.B op1B, op2B, destB op1B, op2B, destB ( MISD )( MISD )
Operand StorageOperand Storage In/Out the CPU: In/Out the CPU: a a StackStack:: the operands are implicitly on top of the stack
an an AccumulatorAccumulator:: one operand is implicitly the accumulator
a set of a set of RegistersRegisters:: all operands are explicit either registers or memory locations
The code segment C = A + BC = A + B how it would appear on the classes of instruction sets
StackStackPUSH A
PUSH B
ADD
POP C
RegisterRegisterLoad R1,A
ADD R1,B
Store C,R1
AccumulatorAccumulatorLoad A
ADD B
Store C
Classificazione dell’ArchitetturaClassificazione
dell’ArchitetturaSet di IstruzioniSet di Istruzioni
General PurposeLonger Instruction
High Memory TrafficShort Instruction
NO Efficient CodeGood Code Density 1717