Architettura degli. Introduzione al corso Modello della Macchina di Von Neumann Una architettura reale: MIPS. Dott.

Documenti analoghi
ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE

Architettura dell elaboratore

Architettura dell elaboratore

Macchina di Von Neumann

Un quadro della situazione. Lezione 15 Il Set di Istruzioni (2) Le operazioni e gli operandi. Dove siamo nel corso. Cosa abbiamo fatto

Architettura di un calcolatore: primi cenni introduttivi. Calcolatore: sottosistemi

Fondamenti di Informatica A. A / 1 9

ARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).!

Informatica. Mario Pavone - Dept. Mathematics & Computer Science - University of Catania. Trasferimento. Ambiente esterno.

memoria PSW R1 R2 CPU Struttura logica dell elaboratore unità di controllo ALU unità di ingresso unità organo coordinatore clock di uscita

Calcolatore: sottosistemi

Fondamenti di Informatica Laurea in Ingegneria Civile e Ingegneria per l ambiente e il territorio

Architettura e funzionamento del calcolatore

Architettura dei Calcolatori elettronici

ARCHITETTURA DI UN ELABORATORE. Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).

Linguaggi e moduli. Dott. Franco Liberati

Architettura dell elaboratore

Architettura di una CPU

Un quadro della situazione. Lezione 14 Il Set di Istruzioni (2) Dove siamo nel corso. I principi di progetto visti finora. Cosa abbiamo fatto

Architettura di un calcolatore: primi cenni introduttivi

Architettura di Von Neumann. Architettura di Von Neumann. Architettura di Von Neumann INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042)

Corso di Laurea in Informatica

ARCHITETTURA DI UN ELABORATORE

A.A. 2018/2019. CPU e Linguaggio Macchina FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE. Docente Prof. Raffaele Pizzolante

Microelettronica Corso introduttivo di progettazione di sistemi embedded

Microelettronica Corso introduttivo di progettazione di sistemi embedded

Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Fondamenti di Informatica.

Fondamenti di Informatica e Programmazione. P ro f. G i a n n i D A n g e l o

Architettura degli Elaboratori

Linguaggio macchina. 3 tipi di istruzioni macchina. Istruzioni per trasferimento dati. Istruzioni logico/aritmetiche

Architettura di un calcolatore

CPU a singolo ciclo. Lezione 18. Sommario. Architettura degli Elaboratori e delle Reti. Proff. A. Borghese, F. Pedersini

Ogni CPU è in grado di eseguire un insieme limitato di istruzioni macchina codificate in binario secondo il seguente schema generale.

Introduzione all'architettura dei Calcolatori. Maurizio Palesi

Cenni sull architettura del calcolatore

ARCHITETTURA DI UN ELABORATORE

CPU a singolo ciclo. Lezione 18. Sommario. Architettura degli Elaboratori e delle Reti

Laboratorio di Informatica L-A 1

La CPU a singolo ciclo

Il calcolatore. È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica

Sistemi di numerazione

La CPU a singolo ciclo

Lezione 15. L elaboratore Elettronico

ALU e Control Unit. ALU e Control Unit

Informatica. Mario Pavone - Dept. Mathematics & Computer Science - University of Catania. Trasferimento. Ambiente esterno.

Macchina di Von Neumann

Linguaggio macchina: utilizzo di costanti, metodi di indirizzamento

Architettura degli Elaboratori

Abilità Informatiche e Telematiche

A c r h c i h te t t e t t u t r u a r d g e li el e abo b ra r t a o t ri Assemblatore

Il set istruzioni di MIPS Modalità di indirizzamento. Proff. A. Borghese, F. Pedersini

Abilità Informatiche e Telematiche

Il set istruzioni di MIPS Modalità di indirizzamento. Proff. A. Borghese, F. Pedersini

Architettura del Calcolatore

Fetch Decode Execute Program Counter controllare esegue prossima

La macchina di Von Neumann

Architettura degli elaboratori CPU a ciclo singolo

Architettura. Argomenti. Modello di Von Neumann. Corso di Laurea in Ingegneria Biomedica aa 2003/2004. Ing. Antonio Coronato. Modello di Von Neumann

Architettura del. Calcolatori (1) Calcolatori (2) L architettura di Von Neumann. CPU RAM Memoria I/O. secondaria. bus

Macchina di Riferimento: argomenti

Architettura del calcolatore (Seconda parte)

Architettura degli elaboratori CPU a ciclo singolo

L unità di controllo di CPU a singolo ciclo

Architettura di un calcolatore: introduzione. Calcolatore: sottosistemi

architettura degli elaboratori Alberto Ferrari Alberto Ferrari Informatica e Laboratorio di Programmazione

Il processore - CPU (CENTRAL PROCESSING UNIT)

Manualino minimale MIPS

Il processore: unità di elaborazione

Architettura di un calcolatore: introduzione

Pag. 1. Informatica Facoltà di Medicina Veterinaria a.a. 2012/13 prof. Stefano Cagnoni. Architettura del calcolatore (parte II)

Architettura e funzionamento del calcolatore

Richiami sull architettura del processore MIPS a 32 bit

Organizzata secondo il modello della macchina di von Neumann definita nei tardi anni 40 all Institute for Advanced Study di Princeton.

Modulo 1: Le I.C.T. UD 1.4b: Anatomia del Computer

Architettura di un elaboratore. Il modello di von Neumann

Architettura di un calcolatore: introduzione. Calcolatore: sottosistemi

Architettura di un elaboratore

CPU. ALU e Registri della CPU. Elementi della CPU. CPU e programmazione (Parte 1) Central Processing Unit, processore

Sistemi e reti CPU Concetti di base

Il modello di Von Neumann

ARCHITETTURA DI UN ELABORATORE

Informatica B a.a 2005/06 (Meccanici 4 squadra) PhD. Ing. Michele Folgheraiter

Elementi di informatica

Architettura di un calcolatore: introduzione. Calcolatore: sottosistemi

Architettura del processore e esecuzione delle istruzioni

Lezione4: MIPS e Istruzioni (1 Parte)

Rappresentazione dell informazione

Architettura di un Computer

Il processore. Istituzionii di Informatica -- Rossano Gaeta

Progettazione dell unità di elaborazioni dati e prestazioni. Il processore: unità di elaborazione. I passi per progettare un processore

L architettura di riferimento

Laboratorio di Calcolatori 1 Corso di Laurea in Fisica A.A. 2006/2007

Provolo Sergio, Agosto Francesco

Architettura degli Elaboratori Lez. 8 CPU MIPS a 1 colpo di clock. Prof. Andrea Sterbini

Transcript:

Architettura degli Elaboratori Introduzione al corso Modello della Macchina di Von Neumann Una architettura reale: MIPS Dott. Franco Liberati

Argomenti della lezione Un modello di elaboratore elettronico: la Macchina di Von Neumann Architettura di un elaboratore elettronico (nozioni di base del MIPS)

Architettura degli Elaboratori Modello della Macchina di Von Neumann Dott. Franco Liberati

Macchina di Von Neumann Modello di un sistema di calcolo automatico che elabora le istruzioni e gli operandi di un programma memorizzato CU ALU MEM I/O STRUTTURA DI INTERCONESSIONE

Macchina di Von Neumann Unità di controllo (control unit) Sottosistema deputato all elaborazione delle istruzioni, all invio dei comandi e alle operazioni di controllo CU ALU MEM I/O Registro 1 Registro 2 DECODIFICATORE DI ISTRUZIONI CLOCK FASE MEM Registro 3 Registro n Rete combinatoria o sequenziale GENERATORE DI COMANDI PC SR CLOCK: scandisce i tempi per il cambiamento di stato FASE: scandisce le fasi di caricamento (load), decodifica (decode) ed esecuzione (execute) e archiviazione (store) PC: contiene l indirizzo in memoria dell istruzione da elaborare

Macchina di Von Neumann CU Unità logico-aritmetica (logical-aritmetical unit) Componente dove vengono effettuate operazioni Logiche: shift, rotazione, and, or, not Aritmetiche: somma, complemento a due ALU MEM I/O Funzione Operando 1 Operando 2 AND 1 0 1 1 1 0 1 0 0 0 1 1 1 1 1 1 0 0 1 1 1 0 1 0 ALU Risultato SR SOMMA 1 0 1 0 1 0 1 0 + 0 0 1 1 1 1 1 1 1 1 1 0 1 0 0 1

Macchina di Von Neumann Unità logico-aritmetica: il registro di stato CU ALU MEM I/O Dopo ogni operazione si aggiorna, tramite i codici di condizione (condition code o flag) il registro di stato che contiene lo stato della macchina W: overflow; C: trabocco Z: zero; S: segno ; P: parità Funzione Operando 1 Operando 2 0 0 0 0 0 0 0 SOMMA ALU 1 0 1 0 1 0 1 0 + 1 0 1 1 1 1 1 1 1 0 1 1 0 1 0 0 1 Risultato Z W C S P I T 0 1 1 0 1 0 0

Macchina di Von Neumann Memoria CU ALU MEM I/O Componente dove risiedono istruzioni, dati o indirizzi. È caratterizzata da un indirizzo e una locazione (o cella) di memoria Accesso casuale e non sequenziale (RAM: randomaccessmemory). INDIRIZZO 00000000 00000001 00000010 00000011 00000100 00000101 00000110 LOCAZIONE 11111111

Macchina di Von Neumann Memoria:funzionamento CU ALU MEM I/O In lettura l elaboratore invia un indirizzo; dalla memoria ritorna l operando o l istruzione (o un nuovo indirizzo) allocato all indirizzo richiesto In scrittura l elaboratore invia un indirizzo ed un operando; in memoria è stipato l operando all indirizzo allegato Indirizzo: 00000101 Indirizzo: 00000010 Operando: 10110111 Address Data Operation(R/W) 00000000 00000001 00000010 00000011 00000100 00000101 00000110 11111111

Macchina di Von Neumann Dispositivi di ingresso e uscita (input/output) Componenti che permettono l interazione con il mondo esterno CU ALU MEM I/O I/O

Macchina di Von Neumann Esempio di funzionamento CU ALU MEM I/O Registro $t1 Registro $t2 Registro $t3 ALU TRANSCODIFICATORE SR MEM Registro n PC FASE CLOCK 1000: lb $t1,(100) 1004: li $t2,54 1008: add $t3,$t1,$t2 1012: sb $t3,(300)

Architettura degli Elaboratori Una architettura reale: MIPS Microprocessor without Interlocked Pipeline Stage Dott. Franco Liberati

MIPS Architettura Architettura di tipo RISC ha un set ridotto di istruzioni: pochi modi di indirizzamento) basata su canalizzazione (pipeline) realizzata da John L. Hennessy della Stanford University nel 1981 Segue l architettura di Von Neumann CU ALU MEM I/O STRUTTURA DI INTERCONESSIONE

MIPS CPU CLOCK DECODIFICATORE DI ISTRUZIONI FASE PC MEM Registri Rete combinatoria GENERATORE DI COMANDI HI LO SP SR HIContiene il risultato della divisione: parte alta (HI) LO: Contiene il risultato della divisione: parte bassa (LO) SP: Contiene l indirizzo che punta alla cima dello stack

MIPS CPU (senza unità di controllo): esempio

MIPS Unità di controllo: registri REGISTRI TEMPORANEI NON PRESERVANTI: si azzerano dopo un salto a sub-routine $t0 $t1 $t2 $t3 $t4 $t5 $t6 $t7 $t8 $t9 REGISTRI TEMPORANEI PRESERVANTI: mantengono sempre i valori $s0 $s1 $s2 $s3 $s4 $s5 $s6 $s7 $s8 $s9 REGISTRI TEMPORANEI PER LE SUB ROUTINE $v0 $v1 Risultati della sub-routine $a0 $a1 $a2 $a3 REGISTRI PER I NUMERI REALI (NUMERI IN VIRGOLA MOBILE, floatingpoint) $fp0 $fp31 Parametri di ingresso della sub-routine

MIPS Unità Logica Aritmetica Funzione Operando 1 Operando 2 ALU Risultato Funzione SR COPROCESSORE MATEMATICO (calcoli con numeri in virgola mobile, logaritmi, radice quadrata, ) Risultato

MIPS Memoria 0 4194304 AREA PROCESSI 0x00000000 0x00400000 Locazione in cui è posizionato il programma SP 2147479548 STACK 0x7FFFEFFC KERNEL 4294967295 0xFFFFFFFF

.text lb $t2,primo lb $t3,secondo add $t1,$t2,$t3 sb $t1,risultato lui$1,0x00001001 lb $10,0x00000000($1) lui$1,0x00001001 lb $11,0x00000001($1) add $9,$10,$11 lui$1,0x00001001 sb $9,0x00000002($1) MIPS Memoria 0 4194304 AREA PROCESSI 0x00000000 0x00400000 0x400000: 0x3C011001 0x400004: 0x802A000 0x400008: 0x3C011001 0x40000C: 0x802B0001 0x400010: 0x014B4820 0x400014: 0xC011001 0x400018: 0xA0290002 lui$1,0x00001001 lb $10,0x00000000($1) lui$1,0x00001001 lb $11,0x00000001($1) add $9,$10,$11 lui$1,0x00001001 sb $9,0x00000002($1) 2147479548 STACK 0x7FFFEFFC KERNEL 4294967295 0xFFFFFFFF

MIPS Dispositivi di ingresso e uscita (input/output) Componenti che permettono l interazione con il mondo esterno I/O ESEMPIO1.ASM Finestra di input per l immissione dei dati da tastiera li $v0,5 # servizio di lettura di un intero da tastiera syscall #chiamata di sistema move$t0,$v0 #spostamentodel valore letto da tastiera #residente in $v0 dopo la syscall Finestra di output (mostrata dal simulatore) per la visualizzazione dei risultati move $a0,$t0 #spostamento del valore intero da stampare #da$t0 a $a0 li $v0,1 #servizio di stampa di un intero syscall #chiamata di sistema

MIPS Dispositivi di ingresso e uscita (input/output) Esempio interaizone con tastiera e consolle di output video ESEMPIO1.ASM.text.globl main main: li $v0,5 # servizio di lettura di un intero da tastiera syscall #chiamata di sistema move $t0,$v0 #spostamento del valore letto da tastiera residente in $v0 dopo la syscall add $t0,$t0,1 #calcolo del valore successivo move $a0,$t0 #spostamento del valore intero da stampare da $t0 a $a0 li $v0,1 #servizio di stampa di un intero syscall #chiamatadi sistemali $v0,10 syscall

Fine