Microelettronica. Organizzazione hardware del processore ARM. Stefano Salvatori. Università degli Studi Roma Tre.

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Microelettronica. Organizzazione hardware del processore ARM. Stefano Salvatori. Università degli Studi Roma Tre."

Transcript

1 Microelettronica Organizzazione hardware del processore ARM Stefano Salvatori Microelettronica 2016

2 Pipeline a 3 stadi Pipeline a 5 stadi Sommario Esecuzione delle istruzioni (datapath) Note design ARM Clock a due fasi e timing ALU Barrel shifter Moltiplicatore Banco dei registri Layout Control Interfacciamento verso un coprocessore Microelettronica 2016 Stefano Salvatori 2/52

3 Introduzione L organizzazione dell ARM è cambiata poco rispetto al primo progetto degli anni 90; con la tecnologia, da 3 um (ARM1) a 0.3 um (ARM7), sono migliorate le prestazioni mentre gli schemi di base sono rimasti gli stessi; Il successivo progresso (ARM9) ha previsto un cambio dell'architettura: pipeline a 5 stadi memoria dati e memoria programma separate (architettura Harward) Microelettronica 2016 Stefano Salvatori 3/52

4 Organizzazione per pipeline a 3-stadi Microelettronica 2016 Stefano Salvatori 4/52

5 Registri: 2 uscite 1 ingresso 2 linee dedicate per il PC Barrel-shifter ALU Organizzazione per pipeline a 3 stadi Address register + incrementer data registers 2 operandi per l'alu Decoder istruzioni + logica di controllo A L U b u s A[31:0] address register P C A b u s register bank ALU incrementer multiply register barrel shifter PC B b u s control instruction decode & control data out register data in register D[31:0] Microelettronica 2016 Stefano Salvatori 5/52

6 Pipeline a 3 stadi Fetch. L istruzione è prelevata dalla memoria e posta nella linea di pipeline dell istruzione. Decode. L istruzione occupa il blocco di decodifica (ma non il datapath): l istruzione è decodificata e sono preparati i segnali di datapath per il prossimo ciclo di clock. Execute. L istruzione occupa il datapath: sono letti gli operandi (registri), si ha lo shift, è svolta l operazione ALU e il risultato è scritto nel banco dei registri. 1 fetch decode execute 2 fetch decode execute 3 instruction fetch decode execute time Microelettronica 2016 Stefano Salvatori 6/52

7 Pipeline a 3 stadi L'hardware è diviso in sezioni. Ciascuna sezione è impegnata in ogni ciclo di clock instruction fetch decode execute fetch decode execute fetch decode execute time In ogni periodo è impegnata una differente sezione hardware; Per istruzioni di data-processing occorrono tre colpi di clock; Con la pipeline si ha l esecuzione di una istruzione per ciclo di clock e periodo di latenza pari a 3. throughput Microelettronica 2016 Stefano Salvatori 7/52

8 Esecuzione di un'istruzione a più cicli L esecuzione è meno regolare; Nell esempio: ADD seguita da STR: 1 fetch ADD decode execute 2 fetch STR decode calc. addr. data xfer 3 fetch ADD decode execute 4 fetch ADD decode execute 5 fetch ADD decode execute instruction time acc. mem decode datapath Microelettronica 2016 Stefano Salvatori 8/52

9 Program counter Il program counter PC (= r15 di uso generale) deve contenere un valore che consenta di caricare le istruzioni successive; In pratica, il PC punta 8 byte (2 istruzioni) oltre l istruzione corrente; Questo è di fondamentale importanza nel caso di salti relativi alla posizione attuale (è comunque il compilatore a calcolare l offset del salto) Per altri usi del PC, letto come r15, il programmatore deve svolgere un'attenta analisi Microelettronica 2016 Stefano Salvatori 9/52

10 Esempi di esecuzione di istruzioni per l'arm7 Microelettronica 2016 Stefano Salvatori 10/52

11 Data processing tra due registri 2 operandi provenienti da due registri Il secondo operando è passato per il barrel-shifter I due giungono alla ALU Il risultato giunge al banco di registri address register increment Rd PC registers Rn Rm mult as ins. operazione tra 2 registri datapath: as instruction Il PC è incrementato e l'istruzione successiva caricata in i.pipe data out data in i. pipe (a) register - register operations Microelettronica 2016 Stefano Salvatori 11/52

12 Data processing tra un reg. e un immediato 2 operandi: contenuto di un registro e un immediato (1 byte) Il secondo operando è passato per il barrel-shifter I due giungono alla ALU Il risultato giunge al banco di registri operazione tra registro e immediato datapath: Il PC è incrementato e l'istruzione successiva caricata in i.pipe address register Rd registers Rn increment mult PC as ins. as instruction [7:0] data out data in i. pipe (b) register - immediate operation Microelettronica 2016 Stefano Salvatori 12/52

13 Una istruzione di load/store calcola l indirizzo di memoria nello stesso modo con cui una istruzione di data-processing tratta gli operandi; Data transfer (store) 1 base address register registers Rn increment mult PC lsl #0 calcolo di PC (fine 1 ciclo) offset datapath: Primo ciclo = A / A + B / A - B [11:0] data out data in i. pipe (a) 1st cycle - compute addr ess Microelettronica 2016 Stefano Salvatori 13/52

14 Data transfer (store) 2 auto-indexing address register increment uscirà PC (fine 2 ciclo) datapath: secondo ciclo Rn PC registers Rd mult shifter Se riguarda 1 byte: Il valore è replicato 4 volte = A + B / A - B byte? data in i. pipe Nel caso di LOAD in un 3 ciclo si ha il trasferimento da data in nel registro (b) 2nd cycle - store data & auto-index Microelettronica 2016 Stefano Salvatori 14/52

15 In una istruzione di salto, nel 1 ciclo si calcola l'indirizzo L'offset (immediato a 24 bit) subisce lo shift di 2 bit allineamento con word e aggiunto a PC datapath: Primo ciclo Salti address register increment registers PC mult lsl #2 = A + B [23:0] data out data in i. pipe (a) 1st cycle - compute branch tar get Microelettronica 2016 Stefano Salvatori 15/52

16 Salti Nel caso di branch with link il PC è copiato in r14 address register increment datapath: secondo ciclo Nel 3 ciclo (pipeline refill) il valore è aggiustato: invece di PC+8 serve PC+4 (istruzione successiva al branch) R14 registers PC mult shifter = A data out data in i. pipe (b) 2nd cycle - save return address Microelettronica 2016 Stefano Salvatori 16/52

17 Organizzazione nel caso di pipeline a 5-stadi Microelettronica 2016 Stefano Salvatori 17/52

18 Aumentare il numero di slot La soluzione a 3-stadi è molto efficace ed adottata fino all ARM7; Per sistemi con migliori prestazioni dobbiamo ricercare soluzioni più efficienti: T progr N istr f CPI clk n medio di cicli di clock per istruzione Per diminuire il tempo complessivo di esecuzione di un programma: aumentare f CLK diminuire CPI numero maggiore di stadi per la pipeline Microelettronica 2016 Stefano Salvatori 18/52

19 Organizzazione per pipeline a 5 stadi Aumentare f CLK semplificare la logica di ogni stadio della pipeline aumentare il numero di stadi della pipeline Diminuire CPI le istruzioni devono essere riconfigurate in modo che diminuisca il numero di slot che esse occupano nella pipeline ridurre gli stalli dovuti ad istruzioni che siano interdipendenti Microelettronica 2016 Stefano Salvatori 19/52

20 Il collo di bottiglia Il modello di Von Neumann limita la possibilità di ridurre CPI a causa dell accesso alla memoria; Il sistema di memoria dovrebbe consentire di acquisire maggiori informazioni/ciclo (>32 bit) oppure: separare la memoria di programma da quella dei dati Microelettronica 2016 Stefano Salvatori 20/52

21 Pipeline a 5 stadi (ARM9TDMI) instruction fetch r. read decode shift/alu data memory access reg write mem Fetch Decode Execute buffer/data Write I processori ARM con pipeline a 5-stadi: fetch: l istr. è prelevata e depositata nella pipeline; decode: l istr. è decodificata e gli operandi prelevati dai registri; execute: shift dell operando e risultato dell ALU. Se l istr. è un load/store, con l ALU si calcola l indirizzo di memoria; buffer/data: eventuale accesso alla memoria, altrimenti il risultato dell ALU è posto in un buffer per mantenere lo stesso flusso della pipeline per tutte le istruzioni; write back: il risultato è caricato in un registro (incluso il load da memoria). Microelettronica 2016 Stefano Salvatori 21/52

22 Registri: 3 porte di lettura e 2 di scrittura (*) Memorie separate: I-cache: per istruzioni D-cache: per i dati Incr. per LDM e STM Data-forwarding: i risultati sono passati tra gli stadi appena sono disponibili ARM9TDMI (*) Normalmente nei RISC: 2 per lettura e 1 per scrittura. Microelettronica 2016 Stefano Salvatori 22/52

23 Data forwarding Nella pipeline a 5 stadi il ciclo di esecuzione è praticamente spezzato in 3 slot; Se un'istruzione ha bisogno del dato prodotto dall'istruzione precedente si ha dipendenza; Lo stallo si avrebbe se il dato fosse richiesto prima che il risultato venga trasferito nel registro di destinazione Nell'ARM9TDMI sono inseriti percorsi per i dati che presentano il risultato appena disponibile: data forwarding Microelettronica 2016 Stefano Salvatori 23/52

24 Stallo inevitabile Nella seguente sequenza: LDR r3, [..] ADD r1, r2, r3 il dato in r3 è disponibile dalla prima istruzione solo nel penultimo ciclo buffer/data mentre la seconda la richiede nel ciclo di esecuzione instruction fetch r. read decode shift/alu data memory access reg write Fetch Decode Execute Memory Write Il compilatore deve evitare di porre in sequenza questo tipo di istruzioni Microelettronica 2016 Stefano Salvatori 24/52

25 Compatibilità Per ARM con pipeline a 3 stadi il PC punta 8 byte (2 istruzioni) oltre l istruzione corrente; Con la pipeline a 5 stadi gli operandi sono letti un ciclo prima rispetto a quella a tre stadi: PC+4 anziché PC+8; Per avere compatibilità gli ARM con pipeline a 5 stadi emulano quelli a 3 stadi L'incrementer di PC bypassa il registro di pipeline tra fetch e decode PC+4 per l'istruzione attuale = PC+8 per l'istruzione successiva. Microelettronica 2016 Stefano Salvatori 25/52

26 Alcune soluzioni nell'architettura dell'arm Microelettronica 2016 Stefano Salvatori 26/52

27 Segnale di clock Datapath RTL Control FSM Sono utilizzati latch in luogo di flip-flop sensibili ai livelli e non ai fronti del clock È necessario un clock a due fasi Φ1 phase 1 Φ2 phase 2 1 clock cycle Le due fasi sono derivate da un unico segnale di clock in ingresso (PLL) dato Φ1 Φ2 Microelettronica 2016 Stefano Salvatori 27/52

28 phase 1 Ciclo datapath ALU operands latched register read time shift time read bus valid shift out valid phase 2 precharge invalidates buses register write time ALU time ALU out I bus sono dinamici (precaricati: anche se manca il clock lo stato è mantenuto) Ciclo = lett.reg + shift + ALU + scritt.reg + sep.fasi Microelettronica 2016 Stefano Salvatori 28/52

29 Adder nel primo prototipo ARM Ripple-carry adder (32 stadi) ARM1 : Cout OAI A B AOI sum Cin Microelettronica 2016 Stefano Salvatori 29/52

30 Adder in ARM2 4-bit Carry look ahead (8 stadi) ARM2 Cout[3] OAI A[3:0] B[3:0] G P 4-bit adder logic sum[3:0] AOI Cin[0] Microelettronica 2016 Stefano Salvatori 30/52

31 ALU per l 'ARM2 Logica per il risultato (1 bit) fs: NB bus carry logic G 4 NA bus P ALU bus Microelettronica 2016 Stefano Salvatori 31/52

32 Funzioni della ALU per l 'ARM2 fs5 fs4 fs3 fs2 fs1 fs0 ALU output A and B A and not B A xor B A plus not B plus carry A plus B plus carry not A plus B plus carry A A or B B not B zero Microelettronica 2016 Stefano Salvatori 32/52

33 Carry-select adder per l'arm6 a,b[3:0] a,b[31:28] + +, +1 c s s+1 +, +1 mux mux mux sum[3:0] sum[7:4] sum[15:8] sum[31:16] Microelettronica 2016 Stefano Salvatori 33/52

34 Organizzazione ALU per l'arm6 A operand latch B operand latch invert A XOR gates XOR gates invert B function logic functions adder C in C V logic/arithmetic result mux zero detect N Z result Microelettronica 2016 Stefano Salvatori 34/52

35 Carry arbitration encoding per ARM9 A B C u v unknown unknown Microelettronica 2016 Stefano Salvatori 35/52

36 Barrel shifter In molti processori shifter e ALU lavorano in parallelo -> Il ritardo dello shifter non è critico Poiché nell'arm i due lavorano in serie, lo shifter deve introdurre il minimo ritardo possibile -> matrice (32x32) right 3 right 2 right 1 no shift in[3] in[2] in[1] left 1 left 2 left 3 Con bus precaricato a V DD bastano NMOS in[0] out[0] out[1] out[2] out[3] Una logica separata gestisce il riempimento (shift logico o aritmetico) Microelettronica 2016 Stefano Salvatori 36/52

37 Moltiplicatore Esempio: moltiplicazione tra due numeri 8 bit moltiplicando moltiplicatore x = = È come la moltiplicazione a più cifre in decimale: devo usare il moltiplicatore cifra per cifra Ogni volta che il bit del moltiplicatore è '1' devo addizionare il moltiplicando spostato di un numero di bit pari al peso della cifra del moltiplicatore che sto utilizzando Microelettronica 2016 Stefano Salvatori 37/52

38 Moltiplicatore Esempio: moltiplicazione tra due numeri 8 bit moltiplicando moltiplicatore x = = Il risultato della moltiplicazione tra due numeri a n bit sarà in numero a 2xn bit Se uso la ALU Per fare questa operazione, serviranno n colpi di clock per giungere al risultato e uso la ALU per fare un'addizione con accumulo R ALU M shift Microelettronica 2016 Stefano Salvatori 38/52

39 Addizione con accumulo Moltiplicatore moltiplicando moltiplicatore x = = Registro per l'accumulo Moltiplicando M R shift ALU Shift se la cifra è '1', altrimenti addiziono zero Microelettronica 2016 Stefano Salvatori 39/52

40 Moltiplicatore Tutti i processori ARM, tranne il primo prototipo, includono un moltiplicatore; Il risultato è a 32 bit; Vi è la moltiplicazione con accumulo; Negli ARM più recenti l'hardware del moltiplicatore è avanzato e fornisce il risultato a 64 bit (anche con accumulo) Microelettronica 2016 Stefano Salvatori 40/52

41 Moltiplicatore La moltiplicazione tra numeri a 32 bit prevede 32 periodi di clock per essere eseguita. Per dimezzare il tempo di calcolo del moltiplicatore con la tecnica di addizione con accumulo si possono considerare cifre a 2 bit per il moltiplicatore: x2 è un semplice shift di un bit a sinistra Bisogna moltiplicare x3 moltiplicando moltiplicatore x = = Microelettronica 2016 Stefano Salvatori 41/ Il moltiplicatore a 2 bit deve essere in grado di svolgere l'operazione 'x3', più complessa delle x1, x2 e, ovviamente, x0 Nota: il moltiplicatore di ARM7 (1990) richiede 8 colpi di clock. In molti Cortex, oggi, si hanno anche moltiplicatori a singolo periodo di clock per presentare il risultato a 64 bit.

42 Moltiplicatore L'operazione x3 complica l'hardware moltiplicando moltiplicatore x = = Però: x3 = x4 1 x4 sarebbe uno shift di 2 bit a sinistra ma equivale ad addizionare una volta di più il moltiplicando nella moltiplicazione della cifra successiva. In questo modo non serve il moltiplicatore che sappia eseguire x3 ma basta una ALU che sappia fare l'addizione e la sottrazione e uno shifter Microelettronica 2016 Stefano Salvatori 42/52

43 M Moltiplicatore: 2 bit R shift x4 ALU p.es.: x3 = -1 x4 x2 = -2 X4! Carry-in Multiplier Shift ALU Carry-out 0 x 0 LSL #2N A x 1 LSL #2N A + B 0 x 2 LSL #(2N + 1) A B 1 x 3 LSL #2N A B 1 1 x 0 LSL #2N A + B 0 x 1 LSL #(2N + 1) A + B 0 x 2 LSL #2N A B 1 x 3 LSL #2N A Microelettronica 2016 Stefano Salvatori 43/52

44 R M shift Moltiplicatore: 2 bit x4 ALU p.es.: x3 = -1 x4 x2 = -2 X4! Carry-in Multiplier Shift ALU Carry-out 0 x 0 LSL #2N A x 1 LSL #2N A + B 0 x 2 LSL #(2N + 1) A B 1 x 3 LSL #2N A B 1 1 x 0 LSL #2N A + B 0 x 1 LSL #(2N + 1) A + B 0 x 2 LSL #2N A B 1 x 3 LSL #2N A Quindi: LSL #2N: shift di 2N bit per il calcolo della addizione parziale della cifra N-sima; LSL #(2N + 1): shift di 2N bit per il calcolo della addizione parziale della cifra N-sima e di un ulteriore bit per fare x2; Carry-out =1: alla prossima cifra viene aggiunta una unità alla cifra del moltiplicatore, cioè si ha x4 rispetto alla cifra precedente Moltiplicare per 3 significa moltiplicare per 4 e sottrarre il moltiplicando all'accumulo. Moltiplicare per 4 significa considerare una unità in più nella moltiplicazione relativa alla cifra successiva a 2 bit (due bit dopo abbiamo un peso 4 volte maggiore di quello attuale) Microelettronica 2016 Stefano Salvatori 44/52

45 Banco di registri 32 registri general purpose x 32 bit -> 1 kbit L'occupazione di silicio è limitata grazie alla regolarità della struttura Comunque, la cella deve essere molto compatta: ALU bus A bus B bus write read A read B Con bus precaricato a V DD bastano NMOS Nel caso di V DD basse si ricorre a porte di trasmissione CMOS (NMOS+PMOS) Microelettronica 2016 Stefano Salvatori 45/52

46 Struttura del banco di registri PC: 2 linee write 3 linee read più largo Vdd Vss ALU bus A bus read decoders B bus read decoders write decoders ALU bus PC bus PC register cells A bus INC bus B bus Microelettronica 2016 Stefano Salvatori 46/52

47 Datapath layout Pitch costante per bit <- ALU address register PC Ad inc A B incrementer register bank multiplier shift out W ALU shifter instruction Din data in instruction pipe data out Microelettronica 2016 Stefano Salvatori 47/52

48 Blocco principale di decodifica istr. Logica di controllo instruction FSM unità di controllo decentralizzate coprocessor decode PLA cycle count multiply control load/store multiple address control register control ALU control shifter control unità di controllo secondarie Microelettronica 2016 Stefano Salvatori 48/52

49 Coprocessori ARM ARM supporta l'estensione del suo set di istruzioni a livello hardware coprocessore o software (emulazione) Caratteristiche salienti: Fino a 16 coprocessori Ogni copr. può avere 16 registri propri (anche di dimensione diversa rispetto ai 32 bit) L'arch. è di tipo load/store In genere lo scambio delle informazioni avviene con handshake Microelettronica 2016 Stefano Salvatori 49/52

50 Coprocessore per ARM7TDMI Bus watching: il copr. è connesso al bus ARM e copia le istruzioni che arrivano in una sua pipeline Handshake: CPI: ARM coprocessori l'arm ha identificato un'istruzione per un coproc. CPA: coprocessore ARM CoProcessor Absent CPB: coprocessore ARM CoProcessor Busy Microelettronica 2016 Stefano Salvatori 50/52

51 Note sulla realizzazione I primi processori ARM erano progettati partendo, al limite, da standard cell Il progetto era full custom -> cambiando la tecnologia era necessario ridisegnare l'intero chip L'alternativa soft prevede l'uso di HDL Oggi un core ARM è disponibile sia come macrocelle che come descrizione in VHDL Nel primo caso si ha un'ottimizzazione dell'uso del silicio ma un dispendio nel tempo di realizzazione Nel secondo, una adattabilità al processo tecnologico ma l'ottimizzazione dipende molto dal compilatore VHDL. Microelettronica 2016 Stefano Salvatori 51/52

52 Riferimenti S. Furber, ARM, system-on-chip architecture, 2 nd ed., cap. 4 Microelettronica 2016 Stefano Salvatori 52/52

Microelettronica Corso introduttivo di progettazione di sistemi embedded

Microelettronica Corso introduttivo di progettazione di sistemi embedded Microelettronica Corso introduttivo di progettazione di sistemi embedded Architettura dei sistemi a microprocessore prof. Stefano Salvatori A.A. 2014/2015 Eccetto dove diversamente specificato, i contenuti

Dettagli

Implementazione semplificata

Implementazione semplificata Il processore 168 Implementazione semplificata Copre un sottoinsieme limitato di istruzioni rappresentative dell'isa MIPS aritmetiche/logiche: add, sub, and, or, slt accesso alla memoria: lw, sw trasferimento

Dettagli

Richiami sull architettura del processore MIPS a 32 bit

Richiami sull architettura del processore MIPS a 32 bit Richiami sull architettura del processore MIPS a 32 bit Architetture Avanzate dei Calcolatori Valeria Cardellini Caratteristiche principali dell architettura del processore MIPS E un architettura RISC

Dettagli

Capitolo 5 Elementi architetturali di base

Capitolo 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

Il Ciclo Fetch-Decode-Execute. C Nyssen/Aberdeen College 2003

Il Ciclo Fetch-Decode-Execute. C Nyssen/Aberdeen College 2003 Il Ciclo Fetch-Decode-Execute C Nyssen/Aberdeen College 2003 Linguaggio Assembler Op code (Mnemonico) Operando #assembly code program 0000 LDA-24 #loads 0001 ADD-25 #adds 0002 HLT #stops #end of program

Dettagli

Corso di Alfabetizzazione Informatica 2001/2002. La CPU. F. Tortorella Università degli Studi. di Cassino

Corso di Alfabetizzazione Informatica 2001/2002. La CPU. F. Tortorella Università degli Studi. di Cassino Corso di Alfabetizzazione Informatica / La CPU CPU (Central Processing Unit) Funzione: eseguire i programmi immagazzinati in memoria principale prelevando le istruzioni (e i relativi), interpretandole

Dettagli

La 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 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

Dettagli

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

Linguaggio macchina. 3 tipi di istruzioni macchina. Istruzioni per trasferimento dati. Istruzioni logico/aritmetiche 3 tipi di istruzioni macchina Linguaggio macchina e assembler 1) trasferimento tra RAM e registri di calcolo della CPU 2) operazioni aritmetiche: somma, differenza, moltiplicazione e divisione 3) operazioni

Dettagli

Sommario. Premessa Architettura ARM Programmer's model (ARM7) Sistemi di sviluppo. S. Salvatori - Microelettronica aprile 2016 (13 di 45)

Sommario. Premessa Architettura ARM Programmer's model (ARM7) Sistemi di sviluppo. S. Salvatori - Microelettronica aprile 2016 (13 di 45) Sommario Premessa Architettura ARM Programmer's model (ARM7) Sistemi di sviluppo S. Salvatori - Microelettronica aprile 2016 (13 di 45) Architettura di ARM Elevato numero di di registi 31 31 registri interni

Dettagli

Il processore. Istituzionii di Informatica -- Rossano Gaeta

Il 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

Dettagli

Architettura dei calcolatori

Architettura 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

Dettagli

Fasi (MIPS) Dove NPC è un registro temporaneo PC (program counter) è il registro IP (instruction pointer)

Fasi (MIPS) Dove NPC è un registro temporaneo PC (program counter) è il registro IP (instruction pointer) Fasi (MIPS) Fasi senza pipeline: IF (istruction fetch): IR Mem[PC] ; NPC PC + 4 ; Dove NPC è un registro temporaneo PC (program counter) è il registro IP (instruction pointer) Lezione Architettura degli

Dettagli

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

Il set istruzioni di MIPS Modalità di indirizzamento. Proff. A. Borghese, F. Pedersini Architettura degli Elaboratori e delle Reti Il set istruzioni di MIPS Modalità di indirizzamento Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

Struttura CPU. Struttura e Funzione del Processore. Capitolo 12. Compiti CPU:

Struttura CPU. Struttura e Funzione del Processore. Capitolo 12. Compiti CPU: Struttura e Funzione del Processore Capitolo 12 Struttura CPU Compiti CPU: Prelevare istruzioni Interpretare istruzioni Prelevare dati Elaborare dati Scrivere (memorizzare) dati 1 CPU con bus di sistema

Dettagli

Architettura 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 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

Dettagli

Sistemi di numerazione

Sistemi di numerazione SOMMARIO Sistemi di numerazione...2 Sistema decimale (o a base 10)...2 Sistema binario...2 Operazioni sui numeri binari...3 Espressioni logiche...4 Definizione...4 Prodotto Logico : AND...4 Somma Logica

Dettagli

ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE

ARCHITETTURA 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

Dettagli

ARCHITETTURA DI UN ELABORATORE

ARCHITETTURA DI UN ELABORATORE ARCHITETTURA DI UN ELABORATORE Unità funzionali Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40). La macchiana di Von Neumann: Non distingueva fra RAM

Dettagli

Architettura dei calcolatori e sistemi operativi. Il processore Capitolo 4 P&H

Architettura dei calcolatori e sistemi operativi. Il processore Capitolo 4 P&H Architettura dei calcolatori e sistemi operativi Il processore Capitolo 4 P&H 4. 11. 2015 Sommario Instruction Set di riferimento per il processore Esecuzione delle istruzioni Struttura del processore

Dettagli

Architettura dei sistemi di elaborazione: La CPU: Architettura (parte1)

Architettura dei sistemi di elaborazione: La CPU: Architettura (parte1) Architettura dei sistemi di elaborazione: La CPU: Architettura (parte1) La CPU Architettura L organizzazione interna di una CPU è caratterizzata dal data path, che è costituito da una serie di componenti,

Dettagli

Progetto CPU (ciclo singolo) Salvatore Orlando

Progetto CPU (ciclo singolo) Salvatore Orlando Progetto CPU (ciclo singolo) Salvatore Orlando Arch. Elab. - S. Orlando 1 Processore: Datapath & Control Possiamo finalmente vedere il progetto di un processore MIPS-like semplificato Semplificato in modo

Dettagli

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

Organizzata secondo il modello della macchina di von Neumann definita nei tardi anni 40 all Institute for Advanced Study di Princeton. Architettura di un Elaboratore Organizzata secondo il modello della macchina di von Neumann definita nei tardi anni 40 all Institute for Advanced Study di Princeton. È costituita da quattro elementi funzionali

Dettagli

Componenti di un processore

Componenti 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

Dettagli

Struttura del calcolatore

Struttura del calcolatore Struttura del calcolatore Proprietà: Flessibilità: la stessa macchina può essere utilizzata per compiti differenti, nessuno dei quali è predefinito al momento della costruzione Velocità di elaborazione

Dettagli

Architettura di tipo registro-registro (load/store)

Architettura di tipo registro-registro (load/store) Caratteristiche principali dell architettura del processore MIPS E un architettura RISC (Reduced Instruction Set Computer) Esegue soltanto istruzioni con un ciclo base ridotto, cioè costituito da poche

Dettagli

Architettura di un calcolatore e linguaggio macchina. Primo modulo Tecniche della programmazione

Architettura di un calcolatore e linguaggio macchina. Primo modulo Tecniche della programmazione Architettura di un calcolatore e linguaggio macchina Primo modulo Tecniche della programmazione CPU Central Processing Unit, processore Unita logica/aritmetica: elaborazione dati Unita di controllo: coordina

Dettagli

In realtà, non un solo microprocessore, ma un intera famiglia, dalle CPU più semplici con una sola pipeline a CPU molto complesse per applicazioni ad

In realtà, non un solo microprocessore, ma un intera famiglia, dalle CPU più semplici con una sola pipeline a CPU molto complesse per applicazioni ad Principi di architetture dei calcolatori: l architettura ARM. Mariagiovanna Sami Che cosa è ARM In realtà, non un solo microprocessore, ma un intera famiglia, dalle CPU più semplici con una sola pipeline

Dettagli

Le operazioni. di somma. e sottrazione

Le operazioni. di somma. e sottrazione Le operazioni di somma e sottrazione S. Salvatori marzo 2016 (36 di 171) L'unità aritmetico-logica La ALU rappresenta l'elemento principale di una CPU quale dispositivo di elaborazione. ALU AI BUS ESTERNI

Dettagli

Processore: Datapath & Control. Progetto CPU (ciclo singolo) Rivediamo i formati delle istruzioni. ISA di un MIPS-lite

Processore: Datapath & Control. Progetto CPU (ciclo singolo) Rivediamo i formati delle istruzioni. ISA di un MIPS-lite Processore: Datapath & Control Possiamo finalmente vedere il progetto di un processore MIPS-like semplificato Progetto CPU (ciclo singolo) Semplificato in modo tale da eseguire solo: istruzioni di memory-reference:

Dettagli

Calcolatori Elettronici

Calcolatori Elettronici Calcolatori Elettronici Classificazione dei calcolatori elettronici Sistemi basati sull architettura di Von Neumann Sistemi basati sull architettura Harward Architettura dei calcolatori: definizioni Evoluzione

Dettagli

Architettura di una CPU

Architettura di una CPU Massimo VIOLANTE Politecnico di Torino Dipartimento di Automatica e Informatica Sommario Organizzazione di un processore Linguaggio macchina Modi di indirizzamento Tipi di istruzioni 2 M. Violante 1.1

Dettagli

CPU. Maurizio Palesi

CPU. Maurizio Palesi CPU Central Processing Unit 1 Organizzazione Tipica CPU Dispositivi di I/O Unità di controllo Unità aritmetico logica (ALU) Terminale Stampante Registri CPU Memoria centrale Unità disco Bus 2 L'Esecutore

Dettagli

Corso di Informatica

Corso di Informatica CdLS in Odontoiatria e Protesi Dentarie Corso di Informatica Prof. Crescenzio Gallo crescenzio.gallo@unifg.it Il Processore (CPU) 2 rchitettura del processore CPU Unità di Controllo Unità ritmetica Logica

Dettagli

Architettura dei calcolatori

Architettura dei calcolatori Architettura dei calcolatori Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ Architettura dei calcolatori 2 Cos'è un computer?

Dettagli

Architettura hardware

Architettura 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

Dettagli

Architetture aritmetiche

Architetture aritmetiche Architetture aritmetiche Sommatori: : Full Adder, Ripple Carry Sommatori: Carry Look-Ahead Ahead, Carry Save, Add/Subtract Moltiplicatori: Combinatori, Wallace,, Sequenziali Circuiti per aritmetica in

Dettagli

Linguaggio Assembly e linguaggio macchina

Linguaggio Assembly e linguaggio macchina Architettura degli Elaboratori e delle Reti Lezione 11 Linguaggio Assembly e linguaggio macchina Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

Il Sottosistema di Memoria

Il Sottosistema di Memoria Il Sottosistema di Memoria Classificazione delle memorie Funzionalità Memoria di sola lettura (ROM) Memoria di lettura/scrittura Tecnologia Memoria a semiconduttori Memoria magnetica Memoria ottica Modalità

Dettagli

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

Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40). RCHITETTUR DI UN ELORTORE Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for dvanced Study, anni 40). MCCHIN DI VON NEUMNN UNITÀ FUNZIONLI fondamentali Processore (CPU) Memoria

Dettagli

I registri A, B, T contengono dati su cui è possibile eseguire operazioni elementari da parte dell ALU;

I registri A, B, T contengono dati su cui è possibile eseguire operazioni elementari da parte dell ALU; Il microprocessore La prima e più importante componente della scheda madre è sicuramente il microprocessore, ovvero la cosiddetta CPU (central processing unit). A dire il vero, microprocessore e CPU non

Dettagli

Cicli di clock e istruzioni

Cicli di clock e istruzioni Cicli di clock e istruzioni Numero di cicli di clock differenti per istruzioni differenti Le moltiplicazioni impiegano più tempo delle addizioni Operazioni in virgola mobile impiegano più tempo delle operazioni

Dettagli

SOLUZIONI DELLA PROVA SCRITTA DEL CORSO DI. NUOVO E VECCHIO ORDINAMENTO DIDATTICO 13 Luglio 2004

SOLUZIONI DELLA PROVA SCRITTA DEL CORSO DI. NUOVO E VECCHIO ORDINAMENTO DIDATTICO 13 Luglio 2004 SOLUZIONI DELLA PROVA SCRITTA DEL CORSO DI NUOVO E VECCHIO ORDINAMENTO DIDATTICO 13 Luglio 2004 MOTIVARE IN MANIERA CHIARA LE SOLUZIONI PROPOSTE A CIASCUNO DEGLI ESERCIZI SVOLTI ESERCIZIO 1 (9 punti) Si

Dettagli

Architettura dei calcolatori. Architettura dei calcolatori. Cos'è un computer?

Architettura dei calcolatori. Architettura dei calcolatori. Cos'è un computer? Moreno Marzolla Dipartimento di Informatica Scienza e Ingegneria (DISI) Università di Bologna http://www.moreno.marzolla.name/ 2 Cos'è un computer? 3 Cos'è un computer? E' un dispositivo in grado di Elaborare

Dettagli

Pipeline nel Mondo Reale

Pipeline nel Mondo Reale Pipeline nel Mondo Reale Luca Abeni May 26, 2016 Pipeline Ideali... Abbiamo visto come fare il bucato eseguire un istruzione macchina usando un pipeline... Pipeline a 5 stadi: Fetch Decode Exec Memory

Dettagli

(a) INTRODUZIONE ALLE ARCHITETTURE E ALLA SIMULAZIONE VERILOG DI PROCESSORI

(a) INTRODUZIONE ALLE ARCHITETTURE E ALLA SIMULAZIONE VERILOG DI PROCESSORI 1 (a) INTRODUZIONE ALLE ARCHITETTURE E ALLA SIMULAZIONE VERILOG DI PROCESSORI ISA E MICROARCHITETTURA DI PROCESSORI IL PROCESSORE MU0 MODELLAZIONE VERILOG E SIMULAZIONE DEL PROCESSORE MU0 2 ISA E MICROARCHITETTURA

Dettagli

Il Sottosistema di Memoria

Il Sottosistema di Memoria Il Sottosistema di Memoria Calcolatori Elettronici 1 Memoria RAM RAM: Random Access Memory Tempi di accesso indipendenti dalla posizione Statica o Dinamica Valutata in termini di Dimensione (di solito

Dettagli

L architettura di riferimento

L architettura di riferimento Architetture degli elaboratori e delle reti Lezione 10 L architettura di riferimento Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 10 1/27

Dettagli

Il processore N.12. Vediamo come è strutturato un microprocessore e con quale sequenza esegue le istruzioni dettate da un programma assembler.

Il processore N.12. Vediamo come è strutturato un microprocessore e con quale sequenza esegue le istruzioni dettate da un programma assembler. Il processore N.12 Struttura di base di un microprocessore Il microprocessore (detto comunemente CPU, per Central Processing Unit) è preposto al coordinamento di tutte le componenti che formano l'architettura

Dettagli

Instruction Level Parallelism Salvatore Orlando

Instruction Level Parallelism Salvatore Orlando Instruction Level Parallelism Salvatore Orlando Arch. Elab. - S. Orlando 1 Organizzazione parallela del processore I processori moderni hanno un organizzazione interna che permette di eseguire più istruzioni

Dettagli

Lezione 20. Assembly MIPS: Il set istruzioni, strutture di controllo in Assembly

Lezione 20. Assembly MIPS: Il set istruzioni, strutture di controllo in Assembly Architettura degli Elaboratori Lezione 20 Assembly MIPS: Il set istruzioni, strutture di controllo in Assembly Prof. F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

Informatica: Lez. 1. Andrea Payaro. (European Logistics Association)

Informatica: Lez. 1. Andrea Payaro. (European Logistics Association) Informatica: Lez. 1 Andrea Payaro Consulente Certificato da ELA (European Logistics Association) andrea@payaro.it Andrea Payaro Ph.D. in Business Management at University of Padova Committee member of

Dettagli

Architettura dei computer

Architettura 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

Dettagli

Architettura di un processore basato su registri generali.

Architettura di un processore basato su registri generali. Architettura di un processore basato su registri generali. M. Esposito (mesposit@unina.it) 26 febbraio 2007 In Fig. 1 è riportato uno schema di principio che raffigura l architettura di un processore basato

Dettagli

Un circuito integrato è una piastrina di silicio (o chip), quadrata o rettangolare, sulla cui superficie vengono realizzati e collegati

Un circuito integrato è una piastrina di silicio (o chip), quadrata o rettangolare, sulla cui superficie vengono realizzati e collegati Il Livello LogicoDigitale i Blocchi funzionali combinatori Circuiti integrati Un circuito integrato è una piastrina di silicio (o chip), quadrata o rettangolare, sulla cui superficie vengono realizzati

Dettagli

L ARCHITETTURA DEI CALCOLATORI. Il processore La memoria centrale La memoria di massa Le periferiche di I/O

L ARCHITETTURA DEI CALCOLATORI. Il processore La memoria centrale La memoria di massa Le periferiche di I/O L ARCHITETTURA DEI CALCOLATORI Il processore La memoria centrale La memoria di massa Le periferiche di I/O Caratteristiche dell architettura 2 Flessibilità adatta a svolgere diverse tipologie di compiti

Dettagli

Macchina di von Neumann

Macchina di von Neumann Il processore PD32 Macchina di von Neumann Unità di Ingresso Memoria di lavoro Unità di Uscita Unità di Calcolo Unità di Controllo Suddivisione SCA-SCO Unità di Ingresso Memoria di lavoro Unità di Uscita

Dettagli

ARCHITETTURA DI UN ELABORATORE

ARCHITETTURA DI UN ELABORATORE ARCHITETTURA DI UN ELABORATORE Unità funzionali Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40) Macchina di Von Neumann: Non distingueva fra RAM e ROM

Dettagli

Struttura del processore. Funzionamento del processore

Struttura del processore. Funzionamento del processore Struttura del processore L unità di elaborazione Funzionamento del processore. Prelievo dell istruzione dalla memoria al processore (dall indirizzo indicato dal PC al registro di istruzione IR) IR [[PC]]

Dettagli

Lezione4: MIPS e Istruzioni (1 Parte)

Lezione4: MIPS e Istruzioni (1 Parte) Architettura degli Elaboratori Lezione4: MIPS e Istruzioni (1 Parte) Michele Nappi mnappi@unisa.it http://www.biplab.unisa.it/ Alcune slide di questa lezione sono prodotte dal Prof. Luigi Palopoli AGENDA

Dettagli

La memoria - tecnologie

La memoria - tecnologie Architettura degli Elaboratori e delle Reti Lezione 26 La memoria - tecnologie Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 26 1/24 Indirizzi

Dettagli

Pipeline Problemi 1. Pipeline Problemi 2

Pipeline Problemi 1. Pipeline Problemi 2 Problemi 1 Vari fenomeni pregiudicano il raggiungimento del massimo di parallelismo teorico (stallo) Sbilanciamento delle fasi Durata diversa per fase e per istruzione Problemi strutturali La sovrapposizione

Dettagli

Esercitazione su Instruction Level Parallelism

Esercitazione su Instruction Level Parallelism Esercitazione su Instruction Level Parallelism Salvatore Orlando Arch. Elab. - S. Orlando 1 Pipeline con e senza forwarding Si considerino due processori MIPS (processore A e B) entrambi con pipeline a

Dettagli

Architettura del calcolatore

Architettura del calcolatore Architettura del calcolatore La prima decomposizione di un calcolatore è relativa a due macro-componenti: Hardware Software Architettura del calcolatore L architettura dell hardware di un calcolatore reale

Dettagli

Calcolo numerico e programmazione Architettura dei calcolatori

Calcolo numerico e programmazione Architettura dei calcolatori Calcolo numerico e programmazione Architettura dei calcolatori Tullio Facchinetti 30 marzo 2012 08:57 http://robot.unipv.it/toolleeo Il calcolatore tre funzionalità essenziali:

Dettagli

Lez. 4 L hardware. Prof. Pasquale De Michele Gruppo 2

Lez. 4 L hardware. Prof. Pasquale De Michele Gruppo 2 Lez. 4 L hardware 1 Dott. Pasquale De Michele Dipartimento di Matematica e Applicazioni Università di Napoli Federico II Compl. Univ. Monte S.Angelo Via Cintia, I-80126, Napoli pasquale.demichele@unina.it

Dettagli

static dynamic random access memory

static dynamic random access memory LA MEMORIA SRAM e D R A M static dynamic random access memory SRAM: unità che memorizza un gran numero di parole in un insieme di flip-flop, opportunamente connessi, mediante un sistema di indirizzamento

Dettagli

Abilità Informa/che. capitolo 3. Prof. Fabio Calefato a.a Giurisprudenza

Abilità Informa/che. capitolo 3. Prof. Fabio Calefato a.a Giurisprudenza Abilità Informa/che capitolo 3 Prof. Fabio Calefato a.a. 2015-16 Giurisprudenza Archite3ura Hardware Degli Elaboratori Elemen> della macchina di Von Neumann Memoria principale Processore Memoria secondaria

Dettagli

Elementi base per la realizzazione dell unità di calcolo

Elementi base per la realizzazione dell unità di calcolo Elementi base per la realizzazione dell unità di calcolo Memoria istruzioni elemento di stato dove le istruzioni vengono memorizzate e recuperate tramite un indirizzo. ind. istruzione Memoria istruzioni

Dettagli

Laboratorio di Architettura degli Elaboratori

Laboratorio di Architettura degli Elaboratori Laboratorio di Architettura degli Elaboratori Dott. Massimo Tivoli Set di istruzioni del MIPS32: istruzioni aritmetiche e di trasferimento Istruzioni (Alcune) Categorie di istruzioni in MIPS Istruzioni

Dettagli

Blocchi di più parole

Blocchi di più parole Blocchi di più parole Per trarre vantaggio dalla località spaziale non conviene avere blocchi di una sola parola ma blocchi di più parole che occupano nella memoria principale posizioni vicine. Esempio:

Dettagli

La memoria - tecnologie

La memoria - tecnologie Architettura degli Elaboratori e delle Reti Lezione 26 La memoria - tecnologie Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 26 1/25 Struttura

Dettagli

ARM PROCESSORS FAMILY

ARM PROCESSORS FAMILY 1 ARM PROCESSORS FAMILY INTRODUZIONE ALL ISA ARM PIPELINES UTILIZZATE DAI PROCESSORI ARM ARM PROCESSOR CORES ARM CPU CORES EMBEDDED ARM-BASED SYSTEMS 2 INTRODUZIONE ALL'ISA ARM PROCESSORI ARM 3 I processori

Dettagli

La macchina programmata Instruction Set Architecture (1)

La macchina programmata Instruction Set Architecture (1) Corso di Laurea in Informatica Architettura degli elaboratori a.a. 2014-15 La macchina programmata Instruction Set Architecture (1) Schema base di esecuzione Istruzioni macchina Outline Componenti di un

Dettagli

Corso di Calcolatori Elettronici I A.A. 2010-2011 Il processore Lezione 18

Corso di Calcolatori Elettronici I A.A. 2010-2011 Il processore Lezione 18 Corso di Calcolatori Elettronici I A.A. 2010-2011 Il processore Lezione 18 Università degli Studi di Napoli Federico II Facoltà di Ingegneria Calcolatore: sottosistemi Processore o CPU (Central Processing

Dettagli

Università degli Studi di Cassino e del Lazio Meridionale

Università degli Studi di Cassino e del Lazio Meridionale di Cassino e del Lazio Meridionale Corso di Tecnologie per le Memorie Anno Accademico Francesco Tortorella Gerarchia di memoria: vista complessiva Gerarchia di memoria: tecnologie Accesso casuale (random):

Dettagli

Architettura di un calcolatore: introduzione

Architettura di un calcolatore: introduzione 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

Dettagli

Esempio: aggiungere j

Esempio: aggiungere j Esempio: add Esempio: load Esempio: beq Esempio: aggiungere j Eccezioni e interruzioni Il progetto del controllo del processore si complica a causa della necessità di considerare, durante l esecuzione

Dettagli

Elementi di Architettura

Elementi di Architettura Elementi di Architettura Fondamenti di Informatica Roberto BASILI Marzo, 2007 Classi di Istruzioni Istruzioni di assegnamento/modifica Istruzioni di controllo delle sequenze Istruzioni di I/O Classi di

Dettagli

Dispensa di Informatica I.3

Dispensa di Informatica I.3 IL MICROPROCESSORE (CPU) L architettura del calcolatore secondo Von Neumann può essere schematizzata come segue. I programmi sono composti da istruzioni e dati ed entrambi risiedono in memoria centrale.

Dettagli

La macchina di Von Neumann. Architettura di un computer. Central Processing Unit (CPU) Elementi base MEMORIA CENTRALE PERIFERICHE SR PC A B INTR

La macchina di Von Neumann. Architettura di un computer. Central Processing Unit (CPU) Elementi base MEMORIA CENTRALE PERIFERICHE SR PC A B INTR Architettura di un computer Architettura organizzata secondo il modello della macchina di von Neumann definita nei tardi anni 40 all Institute for Advanced Study di Princeton. È costituita da quattro elementi

Dettagli

I bistabili ed il register file

I bistabili ed il register file I bistabili ed il register file Prof. Alberto Borghese ipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano 1/32 Sommario I problemi dei latch trasparenti sincroni

Dettagli

Lezione 1: L hardware

Lezione 1: L hardware Architettura del calcolatore Lezione 1: L hardware Architettura Componenti e funzionamento Il calcolatore è uno strumento programmabile per la rappresentazione, la memorizzazione e l elaborazione delle

Dettagli

NOZIONI BASE DEL PROCESSORE (CPU)

NOZIONI BASE DEL PROCESSORE (CPU) NOZIONI BASE DEL PROCESSORE (CPU) Il processore di un computer è di solito indicato come il microprocessorea causa delle sue dimensioni, che sono circa la dimensione di un'unghia. Un microprocessore elabora

Dettagli

CALCOLATORI ELETTRONICI A cura di Luca Orrù. Lezione n.7. Il moltiplicatore binario e il ciclo di base di una CPU

CALCOLATORI ELETTRONICI A cura di Luca Orrù. Lezione n.7. Il moltiplicatore binario e il ciclo di base di una CPU Lezione n.7 Il moltiplicatore binario e il ciclo di base di una CPU 1 SOMMARIO Architettura del moltiplicatore Architettura di base di una CPU Ciclo principale di base di una CPU Riprendiamo l analisi

Dettagli

Lezione 3: Architettura del calcolatore

Lezione 3: Architettura del calcolatore Lezione 3: Architettura del calcolatore Architettura di Von Neumann BUS, CPU e Memoria centrale Ciclo di esecuzione delle istruzioni Architettura del calcolatore Il calcolatore è: uno strumento programmabile

Dettagli

ARCHITETTURA 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). 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 (CPU)

Dettagli

Università degli Studi di Cassino e del Lazio Meridionale

Università degli Studi di Cassino e del Lazio Meridionale di Cassino e del Lazio Meridionale Corso di Pipeline Anno Accademico Francesco Tortorella Progettazione del datapath Prima soluzione: d.p. a ciclo singolo Semplice da realizzare Condizionato dal worst

Dettagli

CALCOLATORI ELETTRONICI

CALCOLATORI ELETTRONICI CALCOLATORI ELETTRONICI Giuseppe Coldani Tel. 0382 985678 e-mail: giuseppe.coldani@unipv.it giuseppe.coldani@tin.it orario delle lezioni: Mercoledì 14.00-18.00 orario di ricevimento: su appuntamento 1

Dettagli

Fondamenti Teorici. Antonio Pescapè e Marcello Esposito Parte Seconda v2.0

Fondamenti Teorici. Antonio Pescapè e Marcello Esposito Parte Seconda v2.0 Fondamenti Teorici Antonio Pescapè e Marcello Esposito Parte Seconda v2.0 Agenda Modello di Von Neumann Algoritmo del Processore Linguaggio Macchina e Linguaggio Assembler Hardware e Software Compilatori

Dettagli

Esercitazione su Instruction Level Parallelism Salvatore Orlando

Esercitazione su Instruction Level Parallelism Salvatore Orlando Esercitazione su Instruction Level Parallelism Salvatore Orlando Arch. Elab. - S. Orlando 1 Pipeline con e senza forwarding Si considerino due processori MIPS (processore A e B) entrambi con pipeline a

Dettagli

Il processore. Il processore. Il processore. Il processore. Architettura dell elaboratore

Il processore. Il processore. Il processore. Il processore. Architettura dell elaboratore Il processore Architettura dell elaboratore Il processore La esegue istruzioni in linguaggio macchina In modo sequenziale e ciclico (ciclo macchina o ciclo ) Effettuando operazioni di lettura delle istruzioni

Dettagli

Esercizio 1.A Aritmetica binaria (nel presentare le soluzione mostrare, almeno nei passaggi piú significativi, i calcoli eseguiti) (3 punti)

Esercizio 1.A Aritmetica binaria (nel presentare le soluzione mostrare, almeno nei passaggi piú significativi, i calcoli eseguiti) (3 punti) Cognome e Nome: Matr.: Architettura degli Elaboratori Inf A 14 febbraio 2013 Esercizio 1.A Aritmetica binaria (nel presentare le soluzione mostrare, almeno nei passaggi piú significativi, i calcoli eseguiti)

Dettagli

IL DSP - Digital Signal Processor

IL DSP - Digital Signal Processor IL DSP - Digital Signal Processor Processore dei segnali digitali 1. Generalità Il Digital Signal Processor (DSP, processore di segnali digitali) è un particolare tipo di microprocessore, ottimizzato per

Dettagli

Calcolatori Elettronici A a.a. 2008/2009

Calcolatori 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

Dettagli

Architettura del calcolatore

Architettura del calcolatore Architettura del calcolatore ( 1 ) Calcolatori Introdotti all'inizio degli anni 1940 Costruiti assemblano componenti elettronici elementari per memorizzare informazioni ed eseguire programmi informazioni

Dettagli

Gli attori principali di un architettura

Gli attori principali di un architettura Memoria Architettura degli Elaboratori e delle Reti, Turno I Alberto Borghese Università degli Studi di Milano Dipartimento di Scienze dell Informazione email: borghese@dsi.unimi.it Gli attori principali

Dettagli

Microelettronica. Architettura del processore ARM. Stefano Salvatori. Università degli Studi Roma Tre. (salvator@uniroma3.it) Microelettronica

Microelettronica. Architettura del processore ARM. Stefano Salvatori. Università degli Studi Roma Tre. (salvator@uniroma3.it) Microelettronica Microelettronica Architettura del processore ARM Stefano Salvatori (salvator@uniroma3.it) Microelettronica Sommario Architettura ARM Differenze con i RISC Programmer s model Sistemi di sviluppo Microelettronica

Dettagli

Firmware Division & Floating pointer adder

Firmware Division & Floating pointer adder Firmware Division & Floating pointer adder Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@di.unimi.it Università degli Studi di Milano Riferimenti sul Patterson: 3.4, 3.5 1/47

Dettagli

Il Modello di von Neumann (2) Prevede 3 entità logiche:

Il Modello di von Neumann (2) Prevede 3 entità logiche: Introduzione all Architettura degli Elaboratori Sommario Macchina di von Neumann Esecuzione dei programmi Rappresentazione dei dati Dati numerici Dati alfabetici 1 2 Il Modello di von Neumann (1) L architettura

Dettagli

Lezione 7 Sommatori e Moltiplicatori

Lezione 7 Sommatori e Moltiplicatori Architettura degli Elaboratori e delle Reti Lezione 7 Sommatori e Moltiplicatori Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 7 1/36 Sommario!

Dettagli