Struttura schematica di un calcolatore. Processore. Componenti processore: Data Path. Il processore (CPU) Data Path. Micro-operazione.
|
|
- Taddeo Caruso
- 7 anni fa
- Visualizzazioni
Transcript
1 Processore Presentazione a livelli del calcolatore: dopo porte logiche, circuiti base e memorie, esaminiamo il: Processore (CPU - Central Processing Unit): cuore del calcolatore, l à che esegue le istruzioni macchina (cap. 2 e 4). Nel seguito le altre componenti del calcolatore: bus, I/O, memoria di massa. Struttura schematica di un calcolatore Central processing (CPU) Control Arithmetic logical () Registers I/O devices Main memory Disk Printer (Architettura degli Elaboratori) Processore 1 / 81 Bus (Architettura degli Elaboratori) Processore 2 / 81 Il processore (CPU) Compito del processore: eseguire il ciclo fetch-decode-execute; fetch: preleva un istruzione dalla memoria istruzione macchina; decode: determina il tipo di istruzione e i suoi argomenti; execute: esegui l istruzione: recupera gli argomenti, esegui un operazione, memorizza i risultati; ripete il ciclo. A Componenti processore: Data Path A + B A Registers B input register B input bus output register A + B (Architettura degli Elaboratori) Processore 3 / 81 (Architettura degli Elaboratori) Processore 4 / 81 Formata da: una serie di registri (memorie), un à aritmetica e logica (), dei bus di collegamento. Può eseguire micro-operazioni. Data Path Micro-operazione L operazione eseguibile dal data path in un singolo ciclo di clock. Azioni eseguibili da una micro-operazione: una singola operazione aritmetica-logica (i cui argomenti e risultato risiedono nei registri). una comunicare con la memoria (richiesta di lettura o scrittura di una locazione) Un istruzione macchina viene eseguita mediante una o più micro-operazioni. (Architettura degli Elaboratori) Processore 5 / 81 (Architettura degli Elaboratori) Processore 6 / 81 Unità di controllo Il funzionamento del data path viene regolato, mediante segnali, dall à di controllo. Circuito sequenziale che regola il funzionamento del processore. Esamina l istruzione corrente, contenuta Register (IR). Invia segnali di lettura e scrittura ai registri. Invia segnali di controllo alla. Gestisce la comunicazione con la memoria principale. Due alternative: Realizzazione cablata: si realizza un circuito sequenziale classico; micro-programmata: il controllo è un piccolo calcolatore capace di eseguire un micro-programma. (Architettura degli Elaboratori) Processore 7 / 81 (Architettura degli Elaboratori) Processore 8 / 81
2 Dicotomia: cablata - programmata Le stessa funzionalità possono essere implementate mediante: hardware (logica cablata): più complicata e costosa da realizzare, ma offre prestazioni migliori; software (logica programmata): più semplice e flessibile, ma più lenta. Diversi esempi di questa dicotomia: le istruzioni grafiche, l elaborazione dei segnali,... Un po di storia I primi processori: poche istruzioni, logica cablata. Anni 50: prime à di controllo micro-programmato, permette la costruzione di calcolatori economici ma con un ricco insieme di istruzioni. calcolatori con maggiori presazioni usano la logica cablata. Si costruiscono calcolatori molto diversi per prestazioni e costi con lo stesso insieme di istruzioni. (IBM 360) (Architettura degli Elaboratori) Processore 9 / 81 (Architettura degli Elaboratori) Processore 10 / 81 Anni 70 Le potenzialità della micro-programmazione vengo sfruttate al massimo. Linguaggi macchina sempre più sofisticati, vicini ai linguaggi di programmazione standard. Il calcolatore apice di questa filosofia: VAX (Digital DEC). Motivazioni tecnologiche: all epoca i control-store (la memoria micro-programma) sono molti più veloci della memoria principale (RAM). Anni 80, processori RISC Si cambia rotta: poche istruzioni, logica cablata le istruzioni complesse non sono così utili istruzioni semplici molto più veloci; si possono utilizzare controlli cablati; la velocità della RAM si avvicina a quella del control-store (Architettura degli Elaboratori) Processore 11 / 81 (Architettura degli Elaboratori) Processore 12 / 81 I primi RISC Reduced Set Computer 801 (IBM), CPU-RISC (Patterson - Berkley) Sparc, MIPS (Hennesey - Stanford), Alpha (Digital), PowerPC (Motorola, IBM), ARM, Anni 90, diatriba: RISC CISC Complex Set Computer. Tutti i processori di nuova concezione sono RISC. Ma i processori usati nei PC: architettura Intel x86, (IA-32), sono CISC. Motivi: compatibilità con il software preesistente, non si vogliono riscrivere i programmi (il codice). (Architettura degli Elaboratori) Processore 13 / 81 (Architettura degli Elaboratori) Processore 14 / 81 Attualmente La contrapposizione RISC CISC è più sfumata. La legge di Moore ha portato alla creazione di processori RISC con insiemi di istruzioni sempre più ampi. Il processori CISC (IA-32) usano al loro interno un cuore RISC, istruzioni semplici, più comuni: eseguite direttamente, istruzioni più complesse: scomposte in più istruzioni semplici, istruzioni sofisticate: eseguite mediante micro-programma. RISC CISC In linea di principio, i processori RISC sono preferibili, le architetture CISC hanno uno svantaggio del (20-30%), per i processori x86, lo svantaggio è compensato dalle economie di scala (vengono prodotti in gran numero). (Architettura degli Elaboratori) Processore 15 / 81 (Architettura degli Elaboratori) Processore 16 / 81
3 I processori nel libro di testo Per illustrare con maggior dettaglio il funzionamento dei processori, si mostra un esempio concreto di progettazione di un processore. Più precisamente: si mostra come costruire processore (Mic) che eseguire istruzioni del Java bytecode: si realizza la Java Virtual Machine (JVM) Approccio per esempi e bottom-up: prima descrizione delle componenti, poi quadro di insieme. (Architettura degli Elaboratori) Processore 17 / 81 Premessa: i compilatori Un programma ad alto livello (Java, C, C++, Scheme, Pascal,... ) deve essere tradotto in linguaggio macchina (istruzioni eseguibili dal calcolatore). Due alternative: compilatore: programma traduttore, dal programma sorgente genere un programma macchina equivalente. interprete: programma interprete, legge il programma sorgente e lo esegue direttamente (non genera codice intermedio). (Architettura degli Elaboratori) Processore 19 / 81 I processori nel libro di testo Pro: un esempio pratico, consistente con il resto. Contro: presentazione lunga, molti dettagli tecnici, difficile comprensione, linguaggio macchina non standard. A lezione presentazione più superficiale: descrizione dei principi, pochi dettagli. Argomenti affrontati in un ordine diverso. Problema: meno correlazione col libro di testo, non esiste un insieme di pagine che sia completo, autosufficiente e non sovrabbondante (molti più argomenti di quelli presentati a lezione). (Architettura degli Elaboratori) Processore 18 / 81 Java Java si propone come il linguaggio per le applicazioni in rete. I programmi Java devono poter migrare nella rete: codice compilato non ha questa possibilità, è specifico ad una particolare architettura (processore sistema operativo), inoltre: problemi di sicurezza; il codice sorgente non può essere spostato in maniera efficiente. (Architettura degli Elaboratori) Processore 20 / 81 Java Virtual Machine, JVM Soluzione: viene definito un codice intermedio (tra Java e il linguaggio macchina): Java bytecode, viene definita un macchina virtuale la Java Virtual Machine (JVM), capace di eseguire programmi scritti in Java bytecode, macchina virtuale: implementata, via software, su diverse piattaforme (processore, sistema operativo), livello Java bytecode (Architettura degli Elaboratori) Processore 21 / 81 Java bytecode Programmi Java compilati in Java bytecode, eseguibile da ogni calcolatore mediante la Java Runtime Environment (JRE), composto da: JVM (programma interpretare il Java bytecode); librerie. Vantaggi, svantaggi, vantaggi: codice universale, compatto, con meccanismi di protezione; svantaggi: minore efficienza rispetto alla compilazione diretta (mitigata dai compilatori just-in-time). (Architettura degli Elaboratori) Processore 22 / 81 Processori Mic (1,2,3,4) Implementazione hardware, cablata (non virtuale o programmata) della JVM. Mic è un processore capace di eseguire un sottoinsieme del Java bytecode. Progetto didattico, non esistono implementazioni. Esistono delle vere implementazioni, de picojava (Sun Microsystems), ARM926EJ-S, (architettura ARM estesa con il Java bytecode), Java bytecode Simili, per molti aspetti, ai linguaggi macchina. Alcune differenze importanti: meccanismi di protezione contro codice malevolo; compatto, istruzioni lunghe un byte (+ un eventuale argomento di 1-2 byte); primitive object-oriented (chiamate dei metodi). Per semplicità, i processori Mic implementano un piccolo sottoinsieme del Java bytecode. (Architettura degli Elaboratori) Processore 23 / 81 (Architettura degli Elaboratori) Processore 24 / 81
4 Il modello di memoria Il modello di memoria Memoria standard processori, monolitica, uno stesso spazio per programmi e dati. Memoria della JVM è divisa in quattro parti. area del codice (programmi) area delle costanti (dati utilizza dai programmi) stack delle variabili locali stack degli operandi (dati su cui eseguire operazioni) (Architettura degli Elaboratori) Processore 25 / 81 (Architettura degli Elaboratori) Processore 26 / 81 Stack delle variabili Stack degli operandi Usato per gestire le chiamate di procedura (metodi). Ogni procedura ha le sue variabili, spazio di memoria. Questi spazi gestiti come una pila. Ad ogni chiamata di procedura si alloca uno spazio. Spazio recuperato quando la procedura termina. JVM non è una macchina a registri (come quasi tutti i processori). Le operazioni aritmetiche logiche non fanno riferimento ai registri interni, ma ad uno: Stack degli operandi. Pila su cui: inserire o prelevare word, (sequenze di 32 bit) eseguire operazioni sugli ultimi dati inseriti. Esempio la JVM valuta l espressione (3 + 5) (4 + 2) in... (Architettura degli Elaboratori) Processore 27 / 81 (Architettura degli Elaboratori) Processore 28 / 81 I-Java bytecode Operazioni aritmetiche e logiche: IADD, IAND, IOR, ISUB, IINC vn con. Operazioni trasferimento dati, da e per la memoria: ILOAD vn, ISTORE vn, LDC_W i, (DUP, POP, SWAP, BIPUSH b). Operazioni per il controllo del flusso dell esecuzione: GOTO, IFEQ os, IFLT os, IF_ICMEQ os, Chiamate di metodi: INVOKEVIRTUAL d, IRETURN, Altro: NOP, WIDE Il processore Mic-1 Un semplice processore per il Java bytecode. Funzionamento: ad ogni ciclo di clock il data path può eseguire semplici operazioni, o spostare dati (micro-istruzione) un istruzione del Java bytecode viene realizzata mediante una sequenza di micro-istruzioni, sequenza composta da diverse parti: fetch-decode-execute. (Architettura degli Elaboratori) Processore 29 / 81 (Architettura degli Elaboratori) Processore 30 / 81 Mic-1: data path Unità aritmetica-logica () Componente di ogni processore, può eseguire le operazioni aritmetiche e logiche: Ingressi: due argomenti: 32, 64 bit; codifica operazione da eseguire. Uscite: risultato: 32, 64 bit; bit di condizione: segno, zero, overflow. (Architettura degli Elaboratori) Processore 31 / 81 (Architettura degli Elaboratori) Processore 32 / 81
5 Unità aritmetica-logica () MIC1 usa una semplice : implementa poche operazioni: AND, OR, NOT, somma, sottrazione, incremento, decremento 1, opposto. Operazioni eseguite bit per bit (locali): scomposta in à elementari, ciascuna operante su una coppia di bit. segnali di controllo: selezionano l operazione da svolgere, abilitano o meno gli ingressi, forniscono il riporto per le cifre meno significative. (Architettura degli Elaboratori) Processore 33 / 81 da un bit Logical Carry in AB INVA A A + B Output ENA B B ENB Sum Enable lines F0 Full adder F 1 Decoder Carry out (Architettura degli Elaboratori) Processore 34 / 81 da 8-32 bit completa formata da un sequenza di a 1 bit F1 F0 A 7 B 7 O 7 Carry in A 6 B 6 O 6 Carry out A 5 B 5 O 5 A 4 B 4 O 4 A 3 B 3 Mic 1 contiene una a 32 bit. O 3 A 2 B 2 O 2 A 1 B 1 O 1 A 0 B 0 O0 INC Oltre alle ovvie: Funzione calcolabili dalla A + B + 1, somma con Carry in = 1 A + 1, somma con ENB = 0, Carry in = 1 B A, somma con INVA = 1, Carry in = 1 B 1, somma con ENA = 0, INVA = 1 A, somma con ENB = 0, INVA = 1, Carry in = 1 (Architettura degli Elaboratori) Processore 35 / 81 (Architettura degli Elaboratori) Processore 36 / 81 Registri (specializzati) MAR: Memory Address Register, MDR: Memory Data Register; comunicazione memoria dati; PC: Program Counter, MBR: Memory Bytecode Register; comunicazione memoria codice; SP: Stack Pointer, TOS: Top Of Stack; stack degli operandi; LV: Local Variable; puntatore stack variabili; CPP: Constant Pool Pointer; punt. costanti; OPC, H: registri ausiliari. (Architettura degli Elaboratori) Processore 37 / 81 Esempio di implementazione L istruzione IADD viene realizzata dalla sequenza di micro-istruzioni: Main1: PC = PC + 1; fetch; goto (MBR) iadd1: MAR=SP=SP-1; rd iadd2: H = TOS iadd3: MDR=TOS=MDR+H; wr; goto Main1 Le altre istruzioni implementate in maniera analoga. (Architettura degli Elaboratori) Processore 38 / 81 Circuito di controllo Micro-programmato. Formata da memoria ROM (contiene il micro-codice), 2 registri, un multiplexer. semplice sia il circuito che la progettazione relativamente lento Micro-istruzioni di 36 bit in parte segnali di controllo, in parte determinano la prossima micro-istruzione, Memory control signals (rd, wr, fetch) 3 4 MAR 4-to-16 Decoder MDR MPC 9 PC O 8 MBR Bit control store SP for holding 9 the microprogram LV JMPC MIR CPP Addr J C M B TOS JAMN/JAMZ OPC H High B bus bit 2 Control flip flop signals 6 N Enable Z control onto B bus Shifter 2 C bus C bus to register Circuito di controllo (Architettura degli Elaboratori) Processore 39 / 81 (Architettura degli Elaboratori) Processore 40 / 81
6 Circuito di controllo: Control store (Architettura degli Elaboratori) Processore 41 / 81 Circuito di controllo Invia: ai registri i segnali di lettura e scrittura; alla memoria le istruzioni: read, write, fetch; alla il codice dell istruzione da eseguire. Determina micro-istruzione successiva via: MBR (prima micro-istruzione nelle esecuzione di un istruzione macchina); la micro-istruzione corrente (micro-istruzioni successive); in alcuni casi, il primo bit dell indirizzo determinato dall uscita della (per poter implementare i salti condizionati). (Architettura degli Elaboratori) Processore 42 / 81 Prestazioni MIC-1, processore (relativamente) completo ma inefficiente (molto più semplice dei processori attuali). Prestazioni: computazione eseguibile nell a di tempo. Due metodi: Miglioramento delle prestazioni Utilizzare istruzioni macchina più potenti, e flessibili. Esempi: Processori Intel x86: 8086 (1978) (1985) MMX 3DNow x86-64 (2000) AVX; ARM: ARMv1... ARMv8; MIPS: R2000 R3000 R4000; IJVM JVM. Eseguire più istruzione nell à di tempo (Architettura degli Elaboratori) Processore 43 / 81 (Architettura degli Elaboratori) Processore 44 / 81 Più istruzioni al secondo Il funzionamento della CPU scandito da un clock, diminuire il numero di micro-istruzioni (cicli di clock) necessari per eseguire un istruzione macchina; aumentare la computazione svolta nel ciclo di clock: ridurre il ciclo di clock. Più computazione per ciclo di clock Aumentare la potenza di calcolo del data path, micro-istruzioni più potenti. con più operazioni, più registri disponibili, più possibilità di scambio dati (3 bus distinti) un à separata per il caricamento delle istruzioni: Fetch Unit (IFU) (Architettura degli Elaboratori) Processore 45 / 81 (Architettura degli Elaboratori) Processore 46 / 81 To and from main memory fetch (IFU) Control signals Enable onto B bus C bus to register C bus Secondo progetto MIC-2 Memory MAR control registers MDR PC MBR MBR2 SP LV CPP TOS OPC B bus H Ridurre il ciclo di clock Segnale di clock abilita la scrittura dei registri. Periodo di clock dato dalla somma dei ritardi. Cycle 1 starts here Shifter output stable Registers loaded instantaneously from C bus and memory on rising edge of clock Clock cycle 1 Clock cycle 2 w x y z New MPC used to load MIR with next microinstruction here A bus control 6 Shifter N Z Set up signals to drive data path and shifter MPC available here (Architettura degli Elaboratori) Processore 47 / 81 Drive H Propagation (Architettura degli and Elaboratori) from shifter Processore 48 / 81
7 Due modi: Ridurre il ciclo di clock migliorare la tecnologici nei circuiti integrati: transistor più veloci, migliorare la strutture dei circuiti: realizzare circuiti con meno ritardi (a parità di tipo di transistor impiegati). Velocizzare il data-path: Architettura più veloce circuito di controllo cablato, e circuiti combinatori più veloci, (un intero settore di ricerca): l presentata nel testo particolarmente inefficiente. esecuzione parallela, spezzare l esecuzione della micro-operazione in più stadi: la tecnica della pipeline (Architettura degli Elaboratori) Processore 49 / 81 (Architettura degli Elaboratori) Processore 50 / 81 Terzo progetto: Mic-3 Memory MAR control registers Mic-3 Pipeline To and from main memory fetch (IFU) Control signals Enable onto B bus C bus to register C bus C latch MDR PC MBR1 MBR2 SP LV CPP TOS OPC H B bus A bus A latch B latch Pipeline: l esecuzione della micro-operazione viene divisa in più stadi ogni stadi eseguito più rapidamente i diversi stadi eseguiti in contemporanea su più istruzioni control 6 N Z Shifter (Architettura degli Elaboratori) Processore 51 / 81 (Architettura degli Elaboratori) Processore 52 / 81 Pipeline Paragoni Possibile paragone preso dalla vita comune, una lavanderia: vestiti da lavare micro-operazioni lavaggio acquisire i dati di ingresso asciugatura calcolo del risultato stiratura memorizzazione del risultato Le varie fasi di lavoro sono portata avanti in parallelo. (Architettura degli Elaboratori) Processore 53 / 81 La pipeline, secondo paragone. La catena di montaggio: il lavoro viene scomposto in fasi, ognuna eseguita da un dispositivo specifico, si svolgono le diverse fasi, su componenti diverse, in parallelo. In un processore si parallelizza l esecuzione delle micro-operazioni, (ciclo di clock); si migliora la banda passante ma non i tempi di risposta. Tecnica (Architettura degli utilizzata Elaboratori) in tutti Processore i processori. In ambito Intel: 54 / 81 dal 486 in poi (1989). Esempio di scomposizione: S1 S2 S3 S4 S5 Altro esempio: fetch decode Operand fetch execution back (a) IFU Decoder Queue Operands Exec back Memory S1: S2: S3: S4: S5: Time (b) Processori diversi usano scomposizioni, strutture della pipeline, diverse. Lunghezza tipica di una pipeline: 7 14 stadi. Caso limite Pentium IV: 20 stadi di pipeline (guerra dei GHz). (Architettura degli Elaboratori) Processore 55 / 81 (Architettura degli Elaboratori) Processore 56 / 81
8 Processori superscalari Aumentano ulteriormente il parallelismo: si migliora il rapporto istruzioni cicli di clock, Iniziano contemporaneamente l esecuzione di più istruzioni: più pipeline operanti in parallelo. S1 S2 S3 S4 S5 fetch decode decode Operand fetch Operand fetch execution execution back back Processori superscalari I primi stadi (singoli) prelevano più istruzioni dalla memoria, e le decodificano. Le istruzioni smistate su stadi successivi multipli. Spesso, uno stadio finale singolo che termina, in ordine, le istruzioni. (Architettura degli Elaboratori) Processore 57 / 81 (Architettura degli Elaboratori) Processore 58 / 81 Pipeline specializzate. Fetch Decode Group Esempio: processore SPARC Execute Register Integer pipeline Cache N1 Floating-point/graphics pipeline N2 X1 X2 X3 Attualmente processori con 4-15 pipeline, decine di micro-istruzione in contemporanea. N 3 Problemi del parallelismo Processori superscalari possono, potenzialmente, eseguire decine di istruzioni contemporaneamente. Due fenomeni impediscono un completo sfruttamento del parallelismo. Dipendenza tra istruzioni. Istruzioni di salto. (Architettura degli Elaboratori) Processore 59 / 81 (Architettura degli Elaboratori) Processore 60 / 81 Dipendenza tra istruzioni: In un programma le istruzioni sono stato pensate per essere eseguite in ordine. Un esecuzione parallela, senza controlli, può portare a risultati scorretti. Tre casi: RAW Read After : R0 = R1 R2 = R0 + 1 WAR After Read: R1 = R0 +1 R0 = R2 WAW After : R0 = R1 (Architettura degli Elaboratori) R0 = R2 + 1 Processore 61 / 81 Dipendenza tra istruzioni Le dipendenze vengono rilevate mediante una tabella delle dipendenze (scoreboard): memoria interna al processore che conta per ogni registro, le operazioni, di lettura e scrittura, in sospeso su quel registro. Le istruzioni dipendenti devono essere sospese: decadimento delle prestazioni, eseguiamo meno operazioni di quelle teoricamente possibili. Si creano bolle, zone inattive, nella pipeline. (Architettura degli Elaboratori) Processore 62 / 81 Gestire la dipendenza tra istruzioni Tecniche per recuperare le prestazioni perse: esecuzione fuori ordine: si mandano in esecuzione le istruzioni non dipendenti; registri ombra: si usano copie di registri su cui memorizzare temporaneamente i dati; register renaming: si usano nuovi registri, non specificati dal codice. multi-threading (hyper-threading): si eseguono più programmi contemporaneamente, necessario duplicare i registri. Primo passo verso processori multicore. (Architettura degli Elaboratori) Processore 63 / 81 Istruzioni di salto condizionato Problematiche per i processori con pipeline: il processore impiega alcuni cicli di clock per valutare la condizione, nel frattempo, non sa quali istruzioni eseguire. Due possibili soluzioni: stall non si inizia alcuna istruzione: corretta ma con decadimento delle prestazioni; si fa una predizione di salto: taken, not taken, si inizia l esecuzione condizionata di alcune istruzioni: esecuzione annullata se la previsione si rivela (Architettura degli Elaboratori) Processore 64 / 81
9 Tecniche per la predizione di salto Due classi: predizione statica, sul codice: semplice: si eseguono i salti indietro, suggerite dal compilatore, programmatore: istruzioni di salto con suggerimento, predizione dinamica, sull esecuzione: viene usata una history table (ricorda il comportamento passato di alcune istruzioni di salto, poche istruzioni, pochi bit), In un programma numerose istruzioni di salto: una buona predizione di salto è fondamentale per le prestazioni. (Architettura degli Elaboratori) Processore 65 / 81 Esecuzione Speculativa: nel caso di salto condizionato, non si tenta la predizione ma si eseguono entrambe le possibili continuazioni del programma. Pur di alimentare il processore, si eseguono anche alcune istruzioni che sicuramente verranno scartate. Problemi: l esecuzione deve essere reversibile: registri ombra, istruzioni che generano trap, evitare l esecuzione di istruzioni costose: SPECULATIVE LOAD. (Architettura degli Elaboratori) Processore 66 / 81 evensum = 0; oddsum = 0; i = 0; while (i < limit) { Esecuzione Speculativa i >= limit evensum = 0; oddsum = 0; i = 0; while (i < limit) La memoria principale troppo lenta La differenza di velocità tra processore e memoria è aumenta col tempo. } k = i * i * i; k = i * i * i; if ((i/2) * 2) == 0) else evensum = evensum + k; oddsum = oddsum + k; i = i + 1; (a) T if ((i/2) * 2) = = 0) evensum = evensum + k; oddsum = oddsum + k; i = i + 1; (b) F L accesso in memoria operazione costosa: il processore deve attendere il dato per più di una decina di cicli di clock. Memoria Cache: memoria piccola e veloce: contiene i dati utilizzati più frequentemente. (Architettura degli Elaboratori) Processore 67 / 81 (Architettura degli Elaboratori) Processore 68 / 81 Funzionamento: La memoria cache prima si cerca il dato in cache (cache hit), in caso di fallimento (cache miss): si carica il dato in cache dalla memoria principale. Migliori prestazioni solo con numerosi cache hit. (Architettura degli Elaboratori) Processore 69 / 81 Cache a più livelli Aumenta il divario di velocità tra CPU RAM; per evitare cache miss troppe costose, un secondo livello di cache: più ampio tecnologia meno costosa più lento contiene un sovrainsieme della memoria di primo livello Spesso sono presenti 3 livelli di cache. Esempio - Sandy Bridge: livello 1: 32KB; livello 2: 256KB, livello 3: 1 20MB; (Architettura degli Elaboratori) Processore 70 / 81 Split cache Esempio di configurazione cache divisa in due parti: dati e istruzioni normalmente cache L1 (di primo livello) permette di parallelizzare l accesso in memoria l IFU accede alle istruzioni l à Dispatch/Execute accede ai dati CPU package Processor board CPU chip L1-I L1-D Unified L2 cache Keyboard controller Graphics controller Unified L3 cache Disk controller Main memory (DRAM) Split L1 instruction and data caches Board-level cache (SRAM) (Architettura degli Elaboratori) Processore 71 / 81 (Architettura degli Elaboratori) Processore 72 / 81
10 Valutazione delle prestazioni Le velocità di un calcolatore con processore superscalare dipende fortemente da quanto viene sfruttato il potenziale parallelismo: percentuale delle istruzioni non bloccate per dipendenze, percentuale di predizioni di salto corrette, percentuale cache hit. Queste percentuali difficilmente valutabili a tavolino, dipendono dal tipo di programmi eseguiti. Una corretta valutazione delle prestazione può essere fatto solo tramite test. (Architettura degli Elaboratori) Processore 73 / 81 Architettura Sandy Bridge CPU Corei-7, Architett. Sandy-Bridge multicore, hyper-threading; processore CISC con cuore RISC; i primi stadi della pipeline traducono codice CISC in istruzioni RISC, depositate nella cache L0; più simile al Pentium II (P6) che al Pentium 4; risparmio energetico; predizione di salto sofisticata (algoritmo segreto) controllore memoria, cache L3 (condivisa) e processore grafico integrati nello stesso chip; nuove istruzioni grafiche AVX (Advanced Vector (Architettura degli Elaboratori) Processore 74 / 81 Extensions); Sandy Bridge, pipeline (Architettura degli Elaboratori) Processore 75 / 81 (Architettura degli Elaboratori) Processore 76 / 81 Sandy bridge, chip Architettura Cortex A9 Progettata ARM ltd, realizzata da vari costruttori; core che viene integrato in SoC (System on Chip), (calcolatori su un singolo chip) implemeta istruzione ARMv7 strutturalmente abbastanza simile al Sandy Bridge, manca lo stadio iniziale di traduzione istruzioni CISC -> RISC. (Architettura degli Elaboratori) Processore 77 / 81 (Architettura degli Elaboratori) Processore 78 / 81 Architettura Cortex A9 Architettura Cortex A9 (Architettura degli Elaboratori) Processore 79 / 81 (Architettura degli Elaboratori) Processore 80 / 81
11 Architettura Cortex A9 (Architettura degli Elaboratori) Processore 81 / 81
Struttura schematica di un calcolatore. Processore. Componenti processore: Data Path. Il processore (CPU)
Processore Presentazione a livelli del calcolatore: dopo porte logiche, circuiti base e memorie, esaminiamo il: Processore (CPU - Central Processing Unit): cuore del calcolatore, l à che esegue le istruzioni
DettagliLaboratorio di Architettura degli Elaboratori Laurea A.A
Laboratorio di Architettura degli Elaboratori Laurea A.A. 2000-2001 Dati del docente Docente: Prof. Rossano Gaeta E-mail: rossano@di.unito.it Home Page: www.di.unito.it/~rossano Tel. 011 670 67 70 Ricevimento:
DettagliCorso di Laurea in Informatica Architetture degli Elaboratori
Corso di Laurea in Informatica Architetture degli Elaboratori Corsi A e B Esonero del 7 luglio 2005 Esercizio 1 (punti 4) Le seguenti microistruzioni implementano l istruzione IJVM IINC varnum const che
DettagliArgomenti. Processori microprogrammati. Architetture CISC Architetture RISC. » Pipeline» Architetture superscalari
Argomenti Processori microprogrammati» Microistruzioni e microprogrammi» Esempio di architettura microprogrammata Architetture CISC Architetture RISC» Pipeline» Architetture superscalari Processori microprogrammati
DettagliCorso di Laurea in Informatica Architetture degli Elaboratori
Corso di Laurea in Informatica Architetture degli Elaboratori Corsi A e B Scritto del 7 luglio 2005 Esercizio 1 (punti 2) Considerare la rappresentazione dei numeri relativi su 10 bit in complemento a
DettagliCorso di Laurea in Informatica Architetture degli Elaboratori
Corso di Laurea in Informatica Architetture degli Elaboratori Corsi A e B Scritto del 6 dicembre 2005 Esercizio 1 (punti -1, 2) Considerare una codifica su 8 bit in complemento a due e rappresentare i
DettagliCorso di Laurea in Informatica
Corso di Laurea in Informatica Architetture degli Elaboratori Corsi A e B Scritto del 13 Dicembre 2004 Esercizio 1 (punti -1, 3) Si consideri l architettura nota come macchina di von Neumann (a) Come le
DettagliCorso di Laurea in Informatica Architetture degli Elaboratori
Corso di Laurea in Informatica Architetture degli Elaboratori Corsi A e B Scritto del 12 settembre 2005 Esercizio 1 (punti -1, 4) Considerare la rappresentazione in complemento a due del numero decimale
DettagliCorso di Laurea in Informatica Architetture degli Elaboratori
Corso di Laurea in Informatica Architetture degli Elaboratori Corsi A e B Scritto del 20 dicembre 2005 Esercizio 1 (punti 2) Considerare una codifica su 8 bit in complemento a due e rappresentare i seguenti
DettagliCorso di Laurea in Informatica Architetture degli Elaboratori
Corso di Laurea in Informatica Architetture degli Elaboratori Corsi A e B Scritto del 3 aprile 2006 Esercizio 1 (punti 3) Considerare una codifica su 8 bit in complemento a due e rappresentare i seguenti
DettagliLa CPU e la Memoria. Sistemi e Tecnologie Informatiche 1. Struttura del computer. Sistemi e Tecnologie Informatiche 2
La CPU e la Memoria Sistemi e Tecnologie Informatiche 1 Struttura del computer Sistemi e Tecnologie Informatiche 2 1 I registri La memoria contiene sia i dati che le istruzioni Il contenuto dei registri
DettagliLivello microarchitettura. Corso di. Architetture degli Elaboratori. Central Processing Unit (richiamo) Esempio: una microarchitettura per IJVM
Corso di Architettura degli Elaboratori Livello microarchitettura Il livello della microarchitettura: data path e formato delle microistruzioni Studio del Livello 1: ha il compito di interpretare il livello
DettagliParte IV Microarchitetture, Cache e Pipeline
Parte IV Microarchitetture, Cache e Pipeline IV.1 Interpretazione delle istruzioni In un architettura microprogrammata le istruzioni macchina non sono eseguite direttamente dall hardware L hardware esegue
DettagliProcessore. Memoria I/O. Control (Parte di controllo) Datapath (Parte operativa)
Processore Memoria Control (Parte di controllo) Datapath (Parte operativa) I/O Memoria La dimensione del Register File è piccola registri usati per memorizzare singole variabili di tipo semplice purtroppo
DettagliArchitettura hardware
Architettura hardware la parte che si può prendere a calci Architettura dell elaboratore Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione
DettagliMacchine Astratte. Luca Abeni. February 22, 2017
Macchine Astratte February 22, 2017 Architettura dei Calcolatori - 1 Un computer è composto almeno da: Un processore (CPU) Esegue le istruzioni macchina Per fare questo, può muovere dati da/verso la memoria
DettagliCalcolatori Elettronici A a.a. 2008/2009
Calcolatori Elettronici A a.a. 2008/2009 Instruction Set Architecture: nozioni generali Massimiliano Giacomin 1 DOVE CI TROVIAMO Livello del linguaggio specializzato Traduzione (compilatore) o interpretazione
DettagliARCHITETTURA DI UN SISTEMA DI ELABORAZIONE
ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE Il computer o elaboratore è una macchina altamente organizzata capace di immagazzinare, elaborare e trasmettere dati con notevole precisione e rapidità. Schematicamente
DettagliFondamenti di Informatica e Programmazione. P ro f. G i a n n i D A n g e l o
Fondamenti di Informatica e Programmazione CPU e Linguag gio Macchina P ro f. G i a n n i D A n g e l o Email: giadangelo@unisa.it A.A. 2018/19 Elaborazione dell Informazione L'elaborazione delle informazioni
DettagliUna microarchitettura per IJVM. Corso di Architettura degli Elaboratori. Architetture degli Elaboratori. Central Processing Unit (richiamo)
Corso di Architettura degli Elaboratori Il livello della microarchitettura: data path e formato delle microistruzioni Dipartimento di Informatica Università degli Studi di Torino C.so Svizzera, 185 I-10149
DettagliArchitettura del processore e esecuzione delle istruzioni
Architettura del processore e esecuzione delle istruzioni Prof. CAPEZIO Francesco Quest'opera è soggetta alla licenza Creative Commons Attribuzione Non Commerciale Introduzione Il compito di un processore
DettagliArchitettura dell elaboratore
Architettura dell elaboratore Riprendiamo il discorso lasciato in sospeso ad inizio corso Riepilogando I programmi e i dati risiedono nella memoria secondaria Per essere eseguiti (i programmi) e usati
DettagliArchitettura dell elaboratore
Architettura dell elaboratore Riprendiamo il discorso lasciato in sospeso ad inizio corso Riepilogando I programmi e i dati risiedono nella memoria secondaria Per essere eseguiti (i programmi) e usati
DettagliArchitettura e funzionamento del calcolatore
FONDAMENTI DI INFORMATICA Prof PIER LUCA MONTESSORO Università degli Studi di Udine Architettura e funzionamento del calcolatore Modello di calcolatore Si farà uso di un modello semplificato di elaboratore
DettagliIl processore. Istituzionii di Informatica -- Rossano Gaeta
Il processore Il processore (detto anche CPU, ovvero, Central Processing Unit) è la componente dell unità centrale che fornisce la capacità di elaborazione delle informazioni contenute nella memoria principale
DettagliA.A. 2018/2019. CPU e Linguaggio Macchina FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE. Docente Prof. Raffaele Pizzolante
A.A. 2018/2019 Docente Prof. Raffaele Pizzolante FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE Architettura di Von Neumann Modello concettuale di un architettura di computer che permette di rappresentare,
DettagliMAL. Fondamenti di Informatica II Ingegneria Informatica e Biomedica I anno, II semestre A.A. 2005/2006
Fondamenti di Informatica II Ingegneria Informatica e Biomedica I anno, II semestre A.A. 2005/2006 MAL Prof. Mario Cannataro Università degli Studi Magna Graecia di Catanzaro 24.05.2006 1 Sommario 1. Introduzione
DettagliParte V. Architettura della CPU
Parte V Architettura della CPU V.1 Interpretazione delle istruzioni In un architettura microprogrammata le istruzioni macchina non sono eseguite direttamente dall hardware L hardware esegue istruzioni
DettagliCorso di Laurea in Informatica
Corso di Laurea in Informatica Architetture degli Elaboratori Corsi A e B Scritto del 10 luglio 2006 Si ricorda che non è possibile usare appunti, calcolatrici, e nessun altro materiale cartaceo o elettronico.
DettagliCalcolatore: sottosistemi
Calcolatore: sottosistemi Processore o CPU (Central Processing Unit) Memoria centrale Sottosistema di input/output (I/O) CPU I/O Memoria Calcolatore: organizzazione a bus Il processore o CPU Unità di controllo
DettagliIl calcolatore. È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica
Il calcolatore È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica ogni livello di descrizione è caratterizzato da una struttura rappresentante l organizzazione
DettagliArchitettura di un calcolatore: introduzione. Calcolatore: sottosistemi
Corso di Calcolatori Elettronici I A.A. 2012-2013 Architettura di un calcolatore: introduzione Prof. Roberto Canonico Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e
DettagliARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).!
ARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).! MACCHINA DI VON NEUMANN! UNITÀ FUNZIONALI fondamentali! Processore
DettagliComponenti principali
Componenti e connessioni Capitolo 3 Componenti principali n CPU (Unità Centrale di Elaborazione) n Memoria n Sistemi di I/O n Connessioni tra loro Architettura di Von Neumann n Dati e instruzioni in memoria
DettagliPorte logiche di base. Cenni circuiti, reti combinatorie, reti sequenziali
Porte logiche di base Cenni circuiti, reti combinatorie, reti sequenziali NOT AND A R A B R OR A R B Quindi NAND o NOR sono complete circuiti con solo porte NAND o solo porte NOR. Reti combinatorie Rete
DettagliIntroduzione all'architettura dei Calcolatori. Maurizio Palesi
Introduzione all'architettura dei Calcolatori Maurizio Palesi 1 Agenda Architettura generale di un Sistema di Elaborazione La memoria principale Il sottosistema di comunicazione La CPU Miglioramento delle
DettagliPag. 1. Informatica Facoltà di Medicina Veterinaria a.a. 2012/13 prof. Stefano Cagnoni. Architettura del calcolatore (parte II)
1 Università degli studi di Parma Dipartimento di Ingegneria dell Informazione Informatica a.a. 2012/13 La inserita nella architettura dell elaboratore Informatica Facoltà di Medicina Veterinaria a.a.
DettagliArchitettura dei Calcolatori. Macchina di von Neumann /2. Macchina di von Neumann /1. Architettura dei Calcolatori
rchitettura dei Calcolatori Giuseppe Pozzi Impianti di Elaborazione Facoltà di Ingegneria dell'informazione Politecnico di Milano giuseppe.pozzi@polimi.it - versione del 20 settembre 2002 - rchitettura
DettagliCorso di Laurea in Informatica
Corso di Laurea in Informatica Architetture degli Elaboratori Corsi A e B Scritto del 18 gennaio 2007 Si ricorda che non è possibile usare appunti, calcolatrici, e nessun altro materiale cartaceo o elettronico.
DettagliInteger Java VM: IJVM
Integer Java VM: IJVM Calcolatori Elettronici C.Brandolese Politecnico di Milano Sommario Introduzione Architettura Data Path Stack Modello di Memoria Instruction Set Microarchitettura Il livello microistruzione
DettagliArchitettura degli Elaboratori
Architettura degli Elaboratori Ciclo di, classificazione e livelli delle architetture di calcolatore Lezioni del Corso di Laurea Triennale in Informatica Per gentilezza del Prof. Sebastiano Pizzutilo (Dipartimento
DettagliArchitettura di un calcolatore: introduzione. Calcolatore: sottosistemi
Corso di Calcolatori Elettronici I A.A. 2010-2011 Architettura di un calcolatore: introduzione Lezione 18 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso
DettagliArchitettura di un calcolatore: introduzione. Calcolatore: sottosistemi
Corso di Calcolatori Elettronici I Architettura di un calcolatore: introduzione Prof. Roberto Canonico Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e delle Tecnologie
DettagliMacchina di von Neumann/Turing
Macchina di von Neumann/Turing Concetto di programma memorizzato Memoria principale per dati e istruzioni ALU opera su dati in formato binario Unità di controllo che interpreta le istruzioni in memoria
Dettagli06 Livello di micro architettura
Livello di micro architettura Pagina 2 Introduzione il livello di micro architettura implementa le funzioni del livello sovrastante (ISA) come livello ISA di riferimento si sceglie una parte della JVM
DettagliLe istruzioni del linguaggio gg macchina corrispondono ad operazioni elementari di elaborazione operazioni aritmetiche
ELABORAZIONE Le istruzioni del linguaggio gg macchina corrispondono ad operazioni elementari di elaborazione operazioni aritmetiche operazioni relazionali (confronto tra dati) operazioni booleane altre
DettagliArchitettura degli Elaboratori
Architettura degli Elaboratori Università degli Studi di Padova Facoltà di Scienze MM.FF.NN. Corso di Laurea in Informatica docente: Alessandro Sperduti Informazioni Generali Lucidi ed esercizi disponibili
DettagliFormato delle istruzioni Tipi di istruzione Modi di indirizzamento CISC vs RISC Pipeline Note sui RISC
Formato delle istruzioni Tipi di istruzione Modi di indirizzamento CISC vs RISC Pipeline Note sui RISC S. Salvatori - Microelettronica aprile 2016 (16 di 39) Compilatore Il progettista del up definisce
DettagliCorso di. Stack: Procedure e variabili locali. Architetture degli Elaboratori. Uno stack anche per i calcoli. Lo stack di esecuzione
Corso di Architettura degli Elaboratori Il livello della microarchitettura: l'isa IJVM Stack: Procedure e variabili locali ambiente di esecuzione procedura A variabili locali di A variabili locali di B
DettagliUn quadro della situazione. Lezione 15 Il Set di Istruzioni (2) Le operazioni e gli operandi. Dove siamo nel corso. Cosa abbiamo fatto
Un quadro della situazione Lezione 15 Il Set di Istruzioni (2) Vittorio Scarano Architettura Corso di Laurea in Informatica Università degli Studi di Salerno Input/Output Sistema di Interconnessione Registri
DettagliCorso di Laurea in Informatica
Corso di Laurea in Informatica Architetture degli Elaboratori Corsi A e B Scritto del 13 dicembre 2006 Si ricorda che non è possibile usare appunti, calcolatrici, e nessun altro materiale cartaceo o elettronico.
DettagliComponenti principali. Programma cablato. Architettura di Von Neumann. Programma cablato. Cos e un programma? Componenti e connessioni
Componenti principali Componenti e connessioni Capitolo 3 CPU (Unita Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro 1 2 Architettura di Von Neumann Dati e instruzioni in memoria
DettagliCPU pipeline 4: le CPU moderne
Architettura degli Elaboratori e delle Reti Lezione 25 CPU pipeline 4: le CPU moderne Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 25 1/16
DettagliArchitettura dei computer
Architettura dei computer In un computer possiamo distinguere quattro unità funzionali: il processore la memoria principale (memoria centrale, RAM) la memoria secondaria i dispositivi di input/output La
DettagliComponenti e connessioni. Capitolo 3
Componenti e connessioni Capitolo 3 Componenti principali CPU (Unità Centrale di Elaborazione) Memoria Sistemi di I/O Connessioni tra loro Architettura di Von Neumann Dati e instruzioni in memoria (lettura
DettagliALU e Control Unit. ALU e Control Unit
Massimo VIOLANTE Politecnico di Torino Dipartimento di Automatica e Informatica Sommario Unità aritmentica/logica Unità di controllo. 2 M. Violante 1.1 Unità aritmetica/logica Contiene tutti i circuiti
DettagliComponenti di un processore
Componenti di un processore Unità di Controllo Bus Interno REGISTRI Program Counter (PC) Registro di Stato (SR) Registro Istruzioni (IR) Registri Generali Unità Aritmetico- Logica Registro Indirizzi Memoria
DettagliProcessore. Memoria I/O. Control (Parte di controllo) Datapath (Parte operativa)
Processore Memoria Control (Parte di controllo) Datapath (Parte operativa) I/O Memoria La dimensione del Register File è piccola registri usati per memorizzare singole variabili di tipo semplice purtroppo
DettagliArchitettura degli Elaboratori
Architettura degli Elaboratori Università degli Studi di Padova Scuola di Scienze Corso di Laurea in Informatica docente: Alessandro Sperduti Informazioni Generali Lucidi ed esercizi disponibili in formato
DettagliMicroelettronica. Note su RISC. Stefano Salvatori. Università degli Studi Roma Tre. Università degli Studi Roma Tre
Microelettronica Note su RISC Stefano Salvatori (salvator@uniroma3.it) Premessa 1980: Patterson e Ditzel, The case for the reduced instruction set computer Berkley: RISC I (progetto molto semplice rispetto
Dettagliarchitettura degli elaboratori Alberto Ferrari Alberto Ferrari Informatica e Laboratorio di Programmazione
architettura degli elaboratori Alberto Ferrari architettura la macchina di von Neumann memorie Input / Output canali di comunicazione CPU registri istruzioni struttura dell elaboratore o la struttura dei
DettagliArchitettura hardware
Architettura dell elaboratore Architettura hardware la parte che si può prendere a calci Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione
DettagliElementi di informatica
Elementi di informatica Architetture degli elaboratori Il calcolatore Un calcolatore è sistema composto da un elevato numero di componenti Il suo funzionamento può essere descritto se lo si considera come
DettagliArchitettura dei calcolatori
Cos'è un calcolatore? Architettura dei calcolatori Esecutore automatico di algoritmi Macchina universale Elementi di Informatica Docente: Giorgio Fumera Corso di Laurea in Edilizia Facoltà di Architettura
DettagliArchitettura degli Elaboratori
Architettura degli Elaboratori Università degli Studi di Padova Scuola di Scienze Corso di Laurea in Informatica docenti: Silvia Crafa, Nicolò Navarin (lab), Alessandro Sperduti Docenti Silvia Crafa Nicolò
DettagliCapitolo 2. Elaborazione dei dati. Mauro Giacomini Pearson Addison-Wesley. All rights reserved
Capitolo 2 Elaborazione dei dati Mauro Giacomini 2007 Pearson Addison-Wesley. All rights reserved Capitolo 2: Elaborazione dei dati 2.1 Architettura del Computer 2.2 Linguaggio macchina 2.3 Esecuzione
DettagliRichiami sull architettura del processore MIPS a 32 bit
Caratteristiche principali dell architettura del processore MIPS Richiami sull architettura del processore MIPS a 32 bit Architetture Avanzate dei Calcolatori Valeria Cardellini E un architettura RISC
DettagliCorso integrato di Sistemi di Elaborazione. Modulo I. Prof. Crescenzio Gallo.
Corso integrato di Sistemi di Elaborazione odulo I Prof. Crescenzio Gallo crescenzio.gallo@unifg.it Il Processore (CPU) 2 rchitettura del processore CPU Unità di Controllo Unità ritmetica Logica egistri
DettagliSistemi e reti CPU Concetti di base
Sistemi e reti CPU Concetti di base A cura dell Ing. Claudio Traini Cenni Storici 1971 il primo processore mai realizzato : Intel 4004 Progettato dal vicentino Federico Faggin 1 Cenni Storici 1976 Faggin
DettagliArchitettura dei sistemi di elaborazione: La CPU: Architettura (parte 2)
Architettura dei sistemi di elaborazione: La CPU: Architettura (parte 2) ALU L unità aritmetico logica o ALU rappresenta l apparato muscolare di un calcolatore, il dispositivo cioè che esegue le operazioni
DettagliEstensioni all architettura di Von Neumann
Estensioni all architettura di Von Neumann Vito Perrone Corso di Informatica A per Gestionali Indice Limiti dell architettura di Von Neumann Estensioni all architettura di Von Neumann CISC e RISC 2 1 La
DettagliIl modello di von Neumann
1 Organizzazione di (quasi) tutti gli elaboratori moderni: personal computer, workstation, portatili, smartphone,... CPU memoria Control Unit I/O ALU 2 Il cuore è la CPU (Control Processing Unit): esegue
DettagliArchitettura di un elaboratore
Architettura di un elaboratore Fondamenti di Informatica 1 Modello architetturale di un computer Ogni computer è costituito da un insieme di blocchi funzionali tra loro interconnessi da sistemi di comunicazioni,
DettagliIl processore Pentium
Caratteristiche principali (I) Architettura interna a 32 bit Address bus a 32 bit: si possono indirizzare fino a 4 GB di memoria fisica Data bus a 64 bit (si tratta in pratica di 2 data bus a 32 bit in
DettagliArchitettura dei calcolatori e sistemi operativi. Architettura MIPS e set istruzioni Capitolo 2 P&H
Architettura dei calcolatori e sistemi operativi Architettura MIPS e set istruzioni Capitolo 2 P&H Instruction Set Architecture ISA Linguaggio assemblatore e linguaggio macchina ISA processore MIPS Modello
DettagliMIPS MIPS MIPS MIPS. Registri. Dati e modi di indirizzamento. Formato Istruzioni. Lezione 5 e 6. Architettura degli Elaboratori A.
MS Architettura RISC Architettura molto regolare con insieme di istruzioni semplice e compatto Architettura progettata per una implementazione efficiente di pipeline (lo vedremo più avanti) Codifica delle
DettagliMIPS & SPIM. Modulo del Corso di Architettura degli Elaboratori. Nicola Paoletti. Università di Camerino Scuola di Scienze e Tecnologie
MIPS & SPIM Modulo del Corso di Architettura degli Elaboratori Nicola Paoletti Università di Camerino Scuola di Scienze e Tecnologie 10 Aprile 2013 AA 2012/2013 Informazioni utili (1/2) Email: nicola.paoletti@unicam.it
DettagliLa CPU a singolo ciclo
La CPU a singolo ciclo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo 5 (fino a 5.4) /46 Sommario
DettagliIl Processore: l unità di controllo
Il Processore: l unità di controllo La frequenza con cui vengono eseguiti i cicli di esecuzione è scandita da una componente detta clock Ad ogni impulso di clock la UC esegue un ciclo di esecuzione di
DettagliFondamenti di Informatica A. A / 1 9
Fondamenti di Informatica Prof. Marco Lombardi A. A. 2 1 8 / 1 9 Architettura di Von Neumann Architettura di Von Neumann: l Unità di Elaborazione L Unità di Elaborazione L unità di elaborazione (CPU) contiene
DettagliArchitettura del calcolatore (Seconda parte)
Architettura del calcolatore (Seconda parte) Ingegneria Meccanica e dei Materiali Università degli Studi di Brescia Prof. Massimiliano Giacomin LINGUAGGIO E ORGANIZZAZIONE DEL CALCOLATORE Linguaggio assembly
DettagliArchitettura del Calcolatore
Francesco Folino FUNZIONI DI UN CALCOLATORE Elaborazione Memorizzazione Trasferimento Controllo MACCHINA DI VON NEUMANN TRASFERIMENTO Obiettivo: permettere lo scambio di informazioni tra le varie componenti
DettagliArchitettura del Calcolatore
Giuseppe Manco Lezione 3 17 Ottobre 2003 Architettura del calcolatore Il calcolatore è uno strumento programmabile per la rappresentazione, la memorizzazione e l elaborazione delle informazioni un calcolatore
DettagliESERCIZIO: PROGETTO DI UNA CPU A PIU REGISTRI
ESERCIZIO: PROGETTO DI UNA CPU A PIU REGISTRI Progettare una unità centrale di elaborazione microprogrammata, dotata di registri ad uso generale di bit, che sia in grado di indirizzare una memoria di 64k
DettagliLa microarchitettura. Didattica della strumentazione digitale e sistemi a microprocessore anno accademico 2006 2007 pagina 1
La microarchitettura. anno accademico 2006 2007 pagina 1 Integer Java virtual machine Ogni microprocessore può avere una microarchitettura diversa, ma la modalità di funzionamento per certi aspetti è generale.
DettagliCorso di Fondamenti di Informatica Elementi di Architettura
di Cassino e del Lazio Meridionale Corso di Informatica Elementi di Architettura Anno Accademico 2016/2017 Francesco Tortorella Modello di von Neumann Bus di sistema CPU Memoria Centrale Interfaccia Periferica
DettagliArchitettura di un elaboratore
Architettura di un elaboratore Fondamenti di Informatica 1 Modello architetturale di un computer Ogni computer è costituito da un insieme di blocchi funzionali tra loro interconnessi da sistemi di comunicazioni,
DettagliProgettazione dell unità di elaborazioni dati e prestazioni. Il processore: unità di elaborazione. I passi per progettare un processore
Il processore: unità di elaborazione Architetture dei Calcolatori (lettere A-I) Progettazione dell unità di elaborazioni dati e prestazioni Le prestazioni di un calcolatore sono determinate da: Numero
DettagliCenni sull architettura del calcolatore
Programmazione M-Z Ingegneria e Scienze Informatiche - Cesena A.A. 2016-2017 Cenni sull architettura del calcolatore Pietro Di Lena - pietro.dilena@unibo.it hard-ware /h :dwe9 r / n. The part of the computer
DettagliIstruzioni e linguaggio macchina
Istruzioni e linguaggio macchina I linguaggi macchina sono composti da istruzioni macchina, codificate in binario, con formato ben definito processori diversi hanno linguaggi macchina simili scopo: massimizzare
DettagliArchitettura di un calcolatore e ciclo macchina. Appunti per la classe 3 Dinf
Architettura di un calcolatore e ciclo macchina Appunti per la classe 3 Dinf Il Sistema di Elaborazione Computer Hardware Software 2 Hardware Struttura fisica del calcolatore formata dai circuiti elettronici
DettagliLaboratorio di Architettura degli Elaboratori LabArch 2006 Secondo Quadimestre, a.a Docente: H. Muccini
[http://www.di.univaq.it/muccini/labarch] Laboratorio di Architettura degli Elaboratori LabArch 2006 Secondo Quadimestre, a.a. 2005-2006 Docente: H. Muccini Lecture 2: Prime Istruzioni -Concetti Fondamentali
DettagliL'architettura del processore MIPS
L'architettura del processore MIPS Piano della lezione Ripasso di formati istruzione e registri MIPS Passi di esecuzione delle istruzioni: Formato R (istruzioni aritmetico-logiche) Istruzioni di caricamento
DettagliCapitolo 5 Elementi architetturali di base
Capitolo 5 Elementi architetturali di base Giuseppe Lami Istituto di Scienza e Tecnologie dell Informazione CNR Via Moruzzi, 1 - Pisa giuseppe.lami@isti.cnr.it Struttura - Unità di elaborazione e controllo
Dettagli