1 / 50

IL MICROPROCESSORE

IL MICROPROCESSORE. Il microprocessore è un singolo circuito integrato in grado di effettuare operazioni decisionali, di calcolo o di elaborazione dell’informazione. SCHEMA GENERALE DI UNA CPU. PRELIEVO E DECODIFICA ISTRUZIONE (INSTRUCTION FETCHER E DECODER). INTERFACCIA CON LA RAM.

Download Presentation

IL MICROPROCESSORE

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. IL MICROPROCESSORE • Il microprocessore è un singolo circuito integrato in grado di effettuare operazioni decisionali, di calcolo o di elaborazione dell’informazione. Maurizio Sparacino - Note di tecnologie informatiche

  2. SCHEMA GENERALE DI UNA CPU PRELIEVO E DECODIFICA ISTRUZIONE (INSTRUCTION FETCHER E DECODER) INTERFACCIA CON LA RAM ALLA MEMORIA MEMORY INTERFACE ABILITAZIONI E DISABILITAZIONI FUNZIONI VARIE REGISTRI TEMPORIZZAZIONE UNITA’ CPU UNITA’ DI CONTROLLO E TEMPORIZZAZIONE Unità logico aritmetica Maurizio Sparacino - Note di tecnologie informatiche IMPULSI DI CLOCK

  3. Il microprocessore costituisce l’implementazione fisica della CPU più comune, utilizzata dalla quasi totalità dei computer e altri dispositivi digitali. Maurizio Sparacino - Note di tecnologie informatiche

  4. BUS DI SISTEMA 001110100000011110…..000001111100000000000011110101……….11111111111111110 CONTROLLER HD PR 1 PROCESSORE PR 2 UNITA’ DISCO ALU REGISTRI PR….. MEMORIA RAM PR N-1 MEMORIA CACHE (NASCONDIGLIO) PR N SISTEMA OPERATIVO Maurizio Sparacino - Note di tecnologie informatiche

  5. Microprocessore Intel 8086 Fondamenti architetturali Maurizio Sparacino - Note di tecnologie informatiche

  6. ISTRUZIONE 00110...001111 00000111…..11111110000000000111 CODICE OPERATIVO OPERANDI UN PROGRAMMA E’ COSTITUITO DA UNA SERIE DI ISTRUZIONI CIASCUNA DELLE QUALI SPECIFICA UNA DETERMINATA AZIONE. LA PRIMA PARTE PRENDE IL NOME DI CODICE OPERATIVO, E SERVE APPUNTO A SPECIFICARE IL TIPO DI OPERAZIONE DA COMPIERE (somma, prodotto, trasferimento di dato, confronto tra dati,… ) :“CAMPO CODICE OPERATIVO” LA SECONDA PARTE RIGUARDA LA SPECIFICAZIONE DI QUALI SIANO E DOVE SI TROVINO GLI OPERANDI : “CAMPO OPERANDI” (un operando può essere specificato direttamente, oppure indicando la sua posizione in un registro interno alla cpu oppure in memoria centrale o anche nell’interfaccia di una periferica) Maurizio Sparacino - Note di tecnologie informatiche

  7. Evoluzione in pillole Introdotto nel 1978, il chip 8086 a 16 bit conteneva appena 29.000transistor e operava a 5 MHz. In confronto, il processore Pentium 4 contiene 55 milioni di transistor e opera a 3,06 GHz, una velocità più di 600 volte più elevata. Maurizio Sparacino - Note di tecnologie informatiche

  8. Transistor I transistor vengono impiegati in ambito elettronico, principalmente, come amplificatori di segnali elettrici o come interruttori elettronici comandati da segnali elettrici Processo di fabbricazione di un transistor Maurizio Sparacino - Note di tecnologie informatiche

  9. Struttura esterna Il package ha una struttura dual in line che significa: “due file di 20 piedini (pin) parallele” Maurizio Sparacino - Note di tecnologie informatiche

  10. Chip • In informatica il termine chip può significare: • circuito integrato cioè un dispositivo elettronico costituito dall'integrazione di un circuito elettronico su di un substrato di materiale semiconduttore (in genere silicio, ma a volte anche arseniuro di gallio o altri). • microprocessore (spesso abbreviato con µP) cioè un componente elettronico digitale formato da transistor racchiuso in uno o più circuiti integrati. Uno o più processori sono utilizzati come CPU da un sistema di elaborazione digitale come può essere un personal computer, un palmare, un telefono cellulare o un altro dispositivo digitale. Maurizio Sparacino - Note di tecnologie informatiche

  11. Piedinatura (pin-out) Ogni piedino fornisce una funzionalità diversa. Il CLOCK ad esempio scandisce gli intervalli di tempo sulla base dei quali avvengono tutte le elaborazioni Maurizio Sparacino - Note di tecnologie informatiche

  12. Schema a blocchi Registri generali CU ALU Maurizio Sparacino - Note di tecnologie informatiche

  13. Dalla loro introduzione ad oggi, l’evoluzione del microprocessore ha seguito con una buona approssimazione la legge di Moore, una legge esponenziale che prevede il raddoppio del numero di transistor integrabili sullo stesso chip ogni 18 mesi. Maurizio Sparacino - Note di tecnologie informatiche

  14. Le caratteristiche principali di un processore sono • il numero di transistor, • il numero di bit (che determina la quantità di dati che il processore può elaborare) • la frequenza (cioè la velocità con il quale vengono elaborati i dati). Maurizio Sparacino - Note di tecnologie informatiche

  15. Il valore del processo produttivo espresso in nanometri indica la distanza fra i gate dei transistor. Il processo produttivo è connesso con le dimensioni dei transistor utilizzati in una CPU. Al diminuire del processo produttivo è richiesta una tensione di alimentazione minore dai transistor producendo così meno calore e diminuendo conseguentemente i consumi di energia elettrica.Per esempio, nell'anno 2006 il processo produttivo delle CPU era di 45 nanometri contro i 22 nanometri attuali, una gran bella differenza in termini di produzione di calore e di consumi. Più è minore il valore del processo produttivo più transistor si avranno per unità di superficie e generalmente più le frequenze di clock delle CPU potranno aumentare. Maurizio Sparacino - Note di tecnologie informatiche

  16. I processori Dual core e Multi core mettono insieme due o più CPU indipendenti con una propria cache, controller in un singolo package.Per quanto concerne i processori Dual core esistono tre modi diversi per crearli:1) Die singolo. Consiste nel combinare due core su un singolo die. Un esempio di die singolo sono il Pentium D SmithField.2) Die Doppio. In questo metodo due die separati vengono posti su un singolo package e poi collegati tra di loro da collegamenti esterni. Il primo progetto Intel cha ha sfruttato tale metodo è il Pentium D Presler.3) Die Monolitico. Tale metodo permette di condividere alcune unità del processore, tipo la cache che in tal mdo è condivisa con tutti i core. Oltre che alla cache anche il controller della memoria RAM può essere condiviso. Tale metodologia viene impiegata con successo sui processori multi core. Maurizio Sparacino - Note di tecnologie informatiche

  17. Per quanto riguarda i processori Multi core si tratta di combinare i modi descritti nel Dual Core. Così avremo per esempio due core Dual Core (Conroe) costruiti su un Die Monolitico accoppiati su Die Doppio per un numero 4 di core complessivi. Maurizio Sparacino - Note di tecnologie informatiche

  18. Generalmente la memoria cache ha la funzione di mantenere una copia dei dati a cui si accede più frequentemente nella memoria principale di sistema. Quando la CPU deve leggere un dato dalla memoria principale di sistema controlla se questo è residente in cache e in caso positivo lo carica velocemente. In questo caso si parla di cache hit, e nel caso contrario di cache miss. Maurizio Sparacino - Note di tecnologie informatiche

  19. Maurizio Sparacino - Note di tecnologie informatiche

  20. SISTEMA OPERATIVO E’ UN’INFRASTRUTTURA SOFTWARE (strato software) CHE SI PONE TRA L’INFRASTRUTTURA HARDWARE E L’UTENTE ( O IL SOFTWARE APPLICATIVO : EDITOR DI TESTI, BROWSER WEB, …) Maurizio Sparacino - Note di tecnologie informatiche

  21. APPLICAZIONI SISTEMA OPERATIVO KERNEL BIOS (firmware) HARDWARE Maurizio Sparacino - Note di tecnologie informatiche

  22. IL SISTEMA OPERATIVO Consente di utilizzare la risorse del sistema informatico senza preoccuparsi delle loro caratteristiche fisiche ( cioè tipo di processore, dimensione del bus dati, interfaccia video, … ) GRAZIE AL SISTEMA OPERATIVO L’UTENTE SI PONE AD “alto livello” RISPETTO ALL’HARDWARE Maurizio Sparacino - Note di tecnologie informatiche

  23. IL SISTEMA OPERATIVO • CONSENTE L’UTILIZZO CONCORRENTE DEL SISTEMA DA PARTE DI PIU’ PROGRAMMI : • PIU’ PROGRAMMI concorrono NELL’UTILIZZO DELLE RISORSE RENDENDO “trasparente” LA GESTIONE DELLA CONCORRENZA ( L’UTENTE NON SE NE PREOCCUPA) Maurizio Sparacino - Note di tecnologie informatiche

  24. IL SISTEMA OPERATIVO • TRASFORMA LA MACCHINA HARDWARE IN UNA “macchina astratta” ( O VIRTUALE) Maurizio Sparacino - Note di tecnologie informatiche

  25. ESISTE UNA GRANDE VARIETA’ DI SISTEMI OPERATIVI DIVERSI • UNIX • UBUNTU GNU/LINUX • MAC OS X • WINDOWS Maurizio Sparacino - Note di tecnologie informatiche

  26. IL SISTEMA OPERATIVO RISIEDE SU UNA MEMORIA DI MASSA (TIPICAMENTE UN HARD – DISK). I tablet utilizzano memorie di massa di tipo SSD ( Solid State Drive) Cella di memoria SSD Maurizio Sparacino - Note di tecnologie informatiche

  27. Transistor metallo ossido semiconduttore a canale N con GATE FLOTTANTE per la memorizzazione del bit Maurizio Sparacino - Note di tecnologie informatiche

  28. Schiera ( ARRAY) di celle di memoria SSD Maurizio Sparacino - Note di tecnologie informatiche

  29. I RICERCATORI STANNO CERCANDO DI REALIZZARE hard diskTRADIZIONALI ESTREMAMENTE SOTTILI, TALI DA POTER ESSERE UTILIZZATO ALL'INTERNO DI SISTEMI TABLET Maurizio Sparacino - Note di tecnologie informatiche

  30. RECENTEMENTE SI E’ LAVORATO ALLA REALIZZAZIONE DI HARD DISK IN FORMATO DA 2,5 POLLICI E DA 5 MILLIMETRI DI SPESSORE, CHE PUO’ ESSERE ADATTO PER LA REALIZZAZIONE DI unità di storage ibride DA USARSI ALL'INTERNO DI TABLET MULTIMEDIALI (I ricercatori hanno preso come riferimento lo spessore di iPad 2, 8,8 millimetri ) Maurizio Sparacino - Note di tecnologie informatiche

  31. Nella progettazione di un hard disk di ridotto spessore è importante riuscire a risolvere la sfida di ridurre adeguatamente le dimensioni del motore di rotazione evitando allo stesso tempo di compromettere le prestazioni del dispositivo e la sua stabilità meccanica, dato che la velocità di rotazione è di qualche migliaia di giri al minuto. Tali hard-disk possono fungere da base per la realizzazione di una soluzione ibrida provvista di elementi di memoria allo stato solido (porte logiche NAND in tecnologia NMOS di tipo flash [le flash-rom], in grado di migliorare prestazioni e consumo energetico dell'unità di storage). Maurizio Sparacino - Note di tecnologie informatiche

  32. Maurizio Sparacino - Note di tecnologie informatiche

  33. Resta comunque qualche dubbio sull'effettiva volontà da parte dei produttori di tablet di impiegare hard drive tradizionali : gli hard disk sono infatti costruiti con l'impiego di parti mobili, che li rendono pertanto meno affidabili dei dispositivi a stato solido. I tablet, inoltre, sono per lo più utilizzati in movimento e non su superfici stabili come ad esempio i sistemi notebook. La ricerca di per la realizzazione di hard-disk di ridotte dimensioni e alta capacità però continua, poiché il mercato dei TABLET è destinato ad arrivare a 200 milioni di unità nel corso del 2014. Maurizio Sparacino - Note di tecnologie informatiche

  34. E' inoltre opportuno tenere presente che le alluvioni che hanno funestato la Tailandia nel corso del 2011 e che hanno causato problemi a tutta la filiera dell'industria degli hard disk, comporteranno un ritardo anche nell'eventuale adozione di nuove tecnologie. Maurizio Sparacino - Note di tecnologie informatiche

  35. ATTUALMENTE I TABLET UTILIZZANO memorie di archiviazioni di massa di tipo Solide State Drive (SSD o Disco allo Stato Solido in italiano). Le SSD rappresentano l’ultima frontiera dell’archiviazione di massa per i nostri PC. A differenza del tradizionale Hard Disk, non sono presenti dischi: né magnetici né di altro tipo. Nonostante tutto gli si da l’appellativo di disco perché usato in sostituzione del vecchio Hard Disk. La capacità resta (normalmente) limitata a 32, 64, 128 Gbyte. Maurizio Sparacino - Note di tecnologie informatiche

  36. SSD: quando e a chi conviene abbandonare l’Hard Disk tradizionale? Il vantaggio di acquisire una SSD è quello di ottenere sia un miglioramento complessivo delle prestazioni del  PC sia un notevole aumento della capacità di trasferimento dati. Il prezzo di una SSD è fino a 10 volte maggiore quello di un Hard Disk tradizionale.  Facendo un confronto tra il TOP delle memorie attualmente in commercio, mentre una SSD può costare da 350 euro (per la versione da 120Gb) fino a 3.000 euro (per la versione da 1 TB), un Hard Disk tradizionale 3 TB costa circa 230 euro. Per l’utente normale di tablet, che difficilmente riempie l’hard disk , conviene sicuramente una memoria di massa di tipo SSD con capacità relativamente bassa, poiché i costi sono ancora modesti. In caso di necessità di archiviazione di grosse quantità di dati ( film, ad esempio) l’uso di memorie SSD diventerebbe piuttosto costoso. Maurizio Sparacino - Note di tecnologie informatiche

  37. ALL’ATTO DELL’ACCENSIONE DEL CALCOLATORE E’ NECESSARIA UNA PROCEDURA PER EFFETTUARE IL CARICAMENTO IN MEMORIA CENTRALE ( COSIDDETTA RAM, ESSA SI’ SEMPRE ALLO STATO SOLIDO – SI PENSI ALLE CELLE DELLE SSD MA PRIVE DEL float-gate ) DEL SISTEMA OPERATIVO ( O LE PARTI ESSENZIALI DEL S.O.) Tale operazione viene eseguita dal BIOS, che risiede in un opportuno firmware. Il firmware di un calcolatore è simile alle SSD, ma non è normalmente accessibile all’utente : esso è scritto su una memoria flash-rom, riprogrammabile solo attraverso particolari Procedure. Maurizio Sparacino - Note di tecnologie informatiche

  38. Il bios • Esegue dei test diagnostici sull’hardware inizializzando le unità I/O • Localizza il S.O. sull’H.D. e lo carica in RAM • Cede il controllo della macchina al S.O. • Solo quando il S.O controlla la macchina, può avvenire la richiesta • di esecuzione di un programma, che viene perciò caricato in RAM • divenendo così “processo” Maurizio Sparacino - Note di tecnologie informatiche

  39. Il sistema operativo fornisce all’utente le istruzioni astratte (lettura/scrittura) affinchè possa avvenire l’interazione con il calcolatore e il processo in esecuzione : le istruzioni di basso livello nei confronti delle periferiche (tastiera, mouse, monitor, stampante, …) vengono mascherate con comandi astratti (lettura/scrittura) disponibili all’utente. Maurizio Sparacino - Note di tecnologie informatiche

  40. Anche gli “Hard Disk” SSD devono essere organizzati logicamente al fine di poter reperire in modo efficiente le informazioni. Devono perciò essere “formattati” e suddivisi in cartelle (directory) organizzate in modo gerarchico. Il S.O. si occupa di gestire tale struttura tramite il file system. Maurizio Sparacino - Note di tecnologie informatiche

  41. Il file system rende trasparente i dettagli di lettura/scrittura dell’informazione indipendentemente dai supporti hardware. Nel corso degli anni la tendenza è stata quella di ridurre la funzionalità del kernel al minimo indispensabile in modo da poter integrare le varie funzionalità di gestione dell’hardware periferico con moduli personalizzati. Maurizio Sparacino - Note di tecnologie informatiche

  42. Il S.O. si occupa anche della gestione della CPU e della memoria centrale. In particolare pianifica l’utilizzo della CPU e l’allocazione in RAM da parte dei processi in esecuzione. Maurizio Sparacino - Note di tecnologie informatiche

  43. Un processo ( detto anche task – azione, lavoro, incombenza,…) è un programma in esecuzione. Contrariamente ad un programma che è un oggetto statico ( una pura sequenza di istruzioni), un processo è un oggetto dinamico : il suo ”stato” cambia nel tempo. Lo stato di un processo è costituito dai valori contenuti in memoria e nei registri della CPU. Maurizio Sparacino - Note di tecnologie informatiche

  44. Lo stesso programma può dare vita a più processi distinti ( detti “figli”, ad esempio più finestre di un browser web). Maurizio Sparacino - Note di tecnologie informatiche

  45. Quando più processi sono attivi, si parla di elaborazione parallela a livello di processo : viene gestito dal sistema operativo che viene perciò classificato come S.O. multitasking. Maurizio Sparacino - Note di tecnologie informatiche

  46. SE UN PROCESSO E’ IMPEGNATO IN OPERAZIONI DI I/O ( input/output –lettura di dati in ingresso o scrittura di dati in uscita) NON DEVE IMPEGNARE LA CPU NELL’ATTESA DELLA FINE DI TALE OPERAZIONE, FACENDOLA RIMANENERE INOPEROSA. LE OPERAZIONI DI I/O SONO INFATTI DI PERECCHI ORDINI DI GRANDEZZA PIU’ LENTE DELLE OPERAZIONI LOGICO/ARITMETICHE. E’ ANCHE NORMALE CHE LA MAGGIOR PARTE DEI PROCESSI SIANO COSTITUITI DA OPERAZIONI DI I/O, INTERVALLATE DA BREVI PERIODI DI ELABORAZIONE. L’ACCESSO AL H.D. COSTITUISCE ANCH’ESSO UN’ OPERAZIONE DI I/O Maurizio Sparacino - Note di tecnologie informatiche

  47. E’ CHIARO A QUESTO PUNTO CHE IN OGNI ISTANTE UN SOLO PROCESSO IMPEGNA LA CPU CON UNA SUA ISTRUZIONE. E’ POSSIBILE UN’ELABORAZIONE PARALLELA A LIVELLO DI ISTRUZIONI ( DUE PROCESSI CHE IN UN DATO MOMENTO HANNO UNA PROPRIA ISTRUZIONE IN ESECUZIONE IN MODO SIMULTANEO) SE L’HARDWARE HA DUE UNITA’ DI ELABORAZIONE, CIOE’ DUE CPU ( PROCESSORE DUAL-CORE ) Maurizio Sparacino - Note di tecnologie informatiche

  48. GLI ALTRI PROCESSI SI POSSONO TROVARE IN UNO DEI DUE STATI pronto ( cioè in grado di far eseguire una proria istruzione appena la cpu diviene disponibile ) in attesa ( di un evento esterno : accesso ad un h.d., pressione di un tasto,…) E’ IL KERNEL CHE GOVERNA IL CONTROLLO DEI PROCESSI, FACENDOLI PASSARE DA UNO STATO ALL’ALTRO A SECONDA DELLA FASE IN CUI SONO Maurizio Sparacino - Note di tecnologie informatiche

  49. SE UNA PERIFERICA HA PRONTO IL DATO RICHIESTO DA UN processo in attesa AVVISA IL KERNEL CON UN SEGNALE DETTO DI interrupt. A QUESTO PUNTO IL KERNEL “RISVEGLIA” IL PROCESSO PONENDOLO IN STATO DI pronto. LO SCHEDULER E’ IL MODULO DEL KERNEL CHE DECIDE QUALE TRA I PROCESSI pronti DEBBA IMPEGNARE LA CPU CON LE PROPRIE ISTRUZIONI. PRIMA DI RENDERE EFFETTIVA L’ESECUZIONE DI UN PROCESSO EFFETTIVO, LO SCHEDULER DEVE RECUPERARE IL SUO “contesto” CHE AVEVA SALVATO IN UNA AREA DI RAM. il contesto viene caricato nei registri interni della cpu. Maurizio Sparacino - Note di tecnologie informatiche

  50. FINE ESECUZIONE COMANDO DI ESECUZIONE DI UN PROGRAMMA FINE “QUANTO” DI TEMPO PROCESSO IN ESECUZIONE EFFETTIVA LISTA PROCESSI PRONTI PRIMO PROCESSO NELLA LISTA “PRONTI” INTERRUPT ESTERNA INTERRUPT INTERNA LISTA PROCESSI IN ATTESA Maurizio Sparacino - Note di tecnologie informatiche

More Related