Microcontrollori microprocessori e PC Introduzione Computer e macchina

  • Slides: 26
Download presentation
Microcontrollori, microprocessori e PC Introduzione

Microcontrollori, microprocessori e PC Introduzione

Computer e macchina di Turing • Il termine Computer sta ad indicare un dispositivo

Computer e macchina di Turing • Il termine Computer sta ad indicare un dispositivo che implementa una macchina di Turing • La macchina di Turing è un dispositivo immaginario in grado di manipolare i dati contenuti su un nastro infinito. • Tutti i computer possiedono una CPU ed una memoria • Un computer è formato da Hardware e Software; l’hardware è la parte circuitale; il software sono l’insieme dei programmi. • Un computer senza programmi non può funzionare. • Ma che cosa è un programma? È un insieme di istruzioni raggruppate in un a sequenza specifica.

Turing ed Hilbert • Nel 1936 Turing ideò una macchina a stati finiti per

Turing ed Hilbert • Nel 1936 Turing ideò una macchina a stati finiti per dare una risposta al seguente quesito del matematico David Hilbert: esiste sempre, in linea di principio, un metodo meccanico attraverso cui, dato un qualsiasi enunciato matematico, si possa stabilire se esso sia vero o falso? • La risposta di Turing fu falsa.

Alan Turing • Scienziato di origine inglese, nato a Londra nel 1912. Si laureò

Alan Turing • Scienziato di origine inglese, nato a Londra nel 1912. Si laureò in matematica al King's College di Cambridge. Pubblicò il suo primo lavoro intitolato "On Computable Numbers and an Application to the Entscheidungs problem (problema decisionale)”. In questo lavoro pose le basi per il computer. • Nel 1936 si trasferì negli Stati Uniti, alla Princeton University • Nel 1938 ottenne il Ph. D per poi occuparsi della crittografia

Turing e la II Guerra Mondiale • • Nel 1939, il giorno successivo alla

Turing e la II Guerra Mondiale • • Nel 1939, il giorno successivo alla dichiarazione della Seconda Guerra Mondiale, Alan Turing parte per Bletchley Park conosciuta come Stazione X utilizzato come sito principale dell'unità di Crittoanalisi del Regno Unito durante l'ultimo conflitto mondiale. Qui vennero decifrati tutti i messaggi trasmessi dai paesi dell'Asse. I messaggi più noti furoncodificati con la macchina Enigma utilizzata dai tedeschi per le comunicazioni criptate. Enigma era una macchina complessa e sofisticata, in grado di variare continuamente il proprio codice: la decifratura in tempo reale dei messaggi generati con questa macchina era indubbiamente un compito molto arduo per quei tempi. Turing ideò un metodo per violare i segreti del nemico L’attività di Turing e di altri suoi colleghi meno famosi, fu tenuta nascosta dai servizi segreti fino al 1974. Tutto il gruppo di Bletchley Park non ottennero riconoscimenti fino al 1974 quando la maggior parte era ormai deceduta. Nel 1942 il matematico Von Neumann, realizzò la macchina Colossus sulla base della macchina di Turing

Test di Turing • Nel 1950, Turing scrisse un saggio in cui venne descritto

Test di Turing • Nel 1950, Turing scrisse un saggio in cui venne descritto quello che successivamente è diventato famoso come il "test di Turing". Nel test una persona formula delle domande, tramite l'utilizzo di una tastiera, sia a un altra persona (che a una macchina dotata di intelligenza posti in altre stanze e comunque non visibili e quindi riconoscibili dalla persona che formula le domande. • Turing sosteneva che se questa persona non fosse stata in grado, entro un ragionevole lasso di tempo, di capire chi dall'altra parte era una persona vera e chi un calcolatore, il calcolatore avrebbe potuto essere definito come dotato di "intelligenza" propria.

La condanna di Turing • Nel 1952 Turing fu arrestato per omosessualità che nel

La condanna di Turing • Nel 1952 Turing fu arrestato per omosessualità che nel Regno Unito era illegale, considerata un reato e punibile con il carcere. • Turing fu immediatamente sospeso da tutte le sue attività di collaborazione governativa, e gli fu concesso di scegliere tra la detenzione o la castrazione chimica. • Alan optò per la seconda. • Nel giugno del 1954 fu trovato avvelenato da arsenico con una mela morsicata accanto al suo • . La versione ufficiale parlò di suicidio, anche se i familiari, tra cui la madre di Alan, sostennero che la morte fu accidentale e dovuta alle diverse sostanze chimiche Alan maneggiava nei suoi esperimenti. • Alcuni sostengono che il logo della Apple fu scelto proprio in onore di Alan Turing, ma forse si tratta soltanto di una leggenda metropolitana. • Un giornalista fece proprio questa domanda tempo fa a Steve Jobs, e la risposta fu: "no, non abbiamo scelto il nostro logo pensando a Turing, ma Dio, come vorrei che fosse stato così. . ".

Qualche anno dopo Il 10 settembre 2009. Gordon Brown, primo ministro del Governo Britannico,

Qualche anno dopo Il 10 settembre 2009. Gordon Brown, primo ministro del Governo Britannico, pronuncia un discorso in cui porge le scuse ufficiali per il trattamento e le umiliazioni inflitte a suo tempo a Alan Turing. "I'm proud to say sorry to a real war hero", "Sono orgoglioso di fare le mie scuse a un vero eroe di guerra". A Manchester è stata costruita una statua in onore dello scienziato con una targhetta sulla quale è riportato: Alan Mathison Turing 1912 -1954 Padre dell'informatica Matematico, Logico Eroe di guerra Vittima del pregiudizio

Alan Turing Disegno della mamma di Turing che riporta dei bimbi che giocano e

Alan Turing Disegno della mamma di Turing che riporta dei bimbi che giocano e Alan che osserva le margherite

Microprocessore e microcontrollore • Distinguiamo due dispositivi che possono sembrare equivalenti a che hanno

Microprocessore e microcontrollore • Distinguiamo due dispositivi che possono sembrare equivalenti a che hanno delle piccole caratteristiche differenti: – Microcontrollori – Microprocessori • Un computer è dotato di microprocessore

Microprocessore • Dispositivo complesso che integra funzionalità sia hardware che software • Dal punto

Microprocessore • Dispositivo complesso che integra funzionalità sia hardware che software • Dal punto di vista hardware il microprocessore è dotato di circuiti con funzioni interne o di interfaccia con l’esterno • Dal punto di vista software è dotato di capacità logiche e matematiche • Il microprocessore è legato al mondo del computer ed è adatto ad usi generali, general purpose, ha un’architettura di tipo CISC (Complex Instruction Set Computing)

Microcontrollore • Dispositivo completo e autosufficiente • Ha in un unico chip tutte le

Microcontrollore • Dispositivo completo e autosufficiente • Ha in un unico chip tutte le componenti utili • Le componenti aggiuntive sono esterne come le memorie , interfacce, contatore, timer… • È specializzato per poche funzioni, Special Purpose, ha un’architettura di tipo RISC (Reducted Instruction Set Computing) • Può essere integrato in schede elettroniche per controlli • È progettato per lavorare in real time

Architettura generale CPU RAM ROM INPUT OUTPUT

Architettura generale CPU RAM ROM INPUT OUTPUT

Architettura Von Neumann e architettura Harvard • Un microcontrollore è caratterizzato dall’architettura Harvard dove

Architettura Von Neumann e architettura Harvard • Un microcontrollore è caratterizzato dall’architettura Harvard dove memoria dati e memoria programmi sono separate ALU Memo prog Unità di cotrollo Mem dati I/O • L’architettura Von Neumann descrive bene un microprocessore dove memoria programma e memoria dati sono sullo stesso supporto CPU Mem I/O Bus controllo Bus indirizzi Bus dati

Bus • I bus sono degli elementi fondamentali per i microcontrollori e per i

Bus • I bus sono degli elementi fondamentali per i microcontrollori e per i microprocessori • Sono dei piccoli cavi conduttori a bassa tensione e corrente per la trasmissione dati • Trasmettono dei dati per mettere in comunicazione la CPU con la memoria e i dispositivi I/O • I bus dati, trasportano ovviamente i dati • I bus indirizzi trasportano gli indirizzi memoria dove attingere i dati • Il bus controllo trasporta il comando se di lettura o di scrittura • I bas dati sono bidirezionali; il comando dei controlli di lettura o scrittura viene dato dalla CPU quindi, il comando è in uscita dalla CPU ed in ingresso verso gli altri dispositivi. Nella CPU, tramite lo stesso bus controlli, entra il segnale di pronto inviato da parte dei vari dispositivi.

CPU-mem Bus indirizzi 111 00101101 CPU 00101101 read Bus controllo Bus dati

CPU-mem Bus indirizzi 111 00101101 CPU 00101101 read Bus controllo Bus dati

Clock • • Tutte le operazioni effettuate dalla CPU su registri, memorie e sistemi

Clock • • Tutte le operazioni effettuate dalla CPU su registri, memorie e sistemi input ed output, sono sincronizzate da un clock In ogni periodo di clock possono essere eseguita al più una sola operazione Può capitare invece, che una operazione abbia bisogno di più periodi di clock più lunghi e quindi viene eseguita in più periodi Il più delle volte, una operazione richiede un tempo brevissimo e, una volta terminata, bisogna aspettare che scatti il periodo successivo affinchè si possa passare all’operazione successiva Un clock lento non è utile per operazioni veloci. Nel tempo, sono stati creati pc con clock ad alte frequenze. Ciò ha creato riscaldamento eccessivo del sistema Per far fronte al riscaldamento sono stati realizzati sistemi a più core, processori che lavorano in parallelo per velocizzare i processi senza aumentare la frequenza del clock La nuova tecnologia core ix racchiude più unità pensanti in un unico chip; il problema è sempre il surriscaldamento dell’apparato quando la macchina deve lavorare molto come nei server. È più utile in questi casi la tecnologia penta core dove ci sono più unità separate

Velocità della CPU • La velocità di elaborazione della CPU si misura in MIPS

Velocità della CPU • La velocità di elaborazione della CPU si misura in MIPS Milion Instruction Per Seconds

Tipi di computer • Possono essere monoutente o multiutente – Un computer monoutente è

Tipi di computer • Possono essere monoutente o multiutente – Un computer monoutente è il classico pc sul quale può lavorare un operatore alla volta – Un computer multiutente, è una unità centrale con più postazioni dislocate anche in stanze differenti, dalle quali possono accedere contemporaneamente più utenti. Questi sistemi si dicono timesharing, a divisione di tempo. La CPU divide il tempo a disposizione in piccoli intervalli da dedicare un po’ alla volta ai diversi utenti. Gli intervalli temporali sono così piccoli che gli operatori non si rendono conto dei tempi morti. • Un’altra distinzione è in base al numero di processi: – Monotasking se il pc può elaborare un processo alla volta – Multitasking se il pc può elaborare tanti processi in contemporanea; un processo multiutente è anche multitasking.

Legge di Moore • Nel 1965 Moore enunciò questa legge: Il numero di transistor

Legge di Moore • Nel 1965 Moore enunciò questa legge: Il numero di transistor presenti all’interno di un pc aumentano in maniera esponenziale negli anni • Nel 1975 vennero progettati chip più complessi e sofisticati di quelli precedenti ma che non rispettavano la legge di Moore. • Moore dovette quindi, rivedere la legge affermando che da quel momento in poi, il numero di transistor sarebbero raddoppiati ogni anno.

Legge di Moore

Legge di Moore

Architettura • • Il computer è un dispositivo più complesso rispetto ad un sistema

Architettura • • Il computer è un dispositivo più complesso rispetto ad un sistema dotato di microcontrollore Per descriverlo utilizziamo uno schema gerarchico, una architettura Applicazioni Gestione rete Sistema operativo firmware hardware

Core • Il core è il nucleo elaborativo di un processore. • Esempio: un

Core • Il core è il nucleo elaborativo di un processore. • Esempio: un dual core, è un processore composto da due nuclei di processori “fisici” montati sullo stesso package, cioè sullo stesso alloggiamento dove vengono inseriti i circuiti elettronici. • Ma quali sono i vantaggi? il parallelismo, rispetto all’aumento della frequenza, permette di migliorare notevolmente le prestazioni; la velocità di 4 GHz è raggiungibile tranquillamente con un solo core ma la CPU potrebbe surriscaldarsi.

Bilancio energetico • Un processore dual core o multicore, richiede mediamente più energia rispetto

Bilancio energetico • Un processore dual core o multicore, richiede mediamente più energia rispetto ad un processore single core, ma un processore dual core finirà il lavoro più velocemente rispetto ad un processore single core, e questo, si tradurrà in consumi generali che saranno addirittura inferiori rispetto ad una CPU single core. • Questo, però, non vuol dire che un processore dual core da, ad esempio, 2 GHz funzioni a 4 GHz, ma semplicemente che ogni core lavora indipendentemente alla stessa frequenza di 2 GHz.

Intel e AMD • • I principali produttori di processori sul mercato sono AMD

Intel e AMD • • I principali produttori di processori sul mercato sono AMD e Intel. AMD propone i seguenti prodotti: – la linea più economica è la Athlon – Alla linea intermedia appartengono le APU ( Accelerated processing unit (unità d'elaborazione accelerata) o APU è un sistema d'elaborazione per il calcolo eterogeneo, che include capacità di elaborazione aggiuntive, progettate per accelerare uno o più tipi di calcoli al di fuori della componente CPU Tale sistema può includere un'unità d'elaborazione grafica GPU utilizzata per il calcolo generico (GPGPU), un field-programmable gate array, o simili sistemi di elaborazione specializzati) della serie A, che in un unico prodotto integrano CPU e GPU – I processori dotati delle prestazioni migliori appartengono alla famiglia Ryzen. • Per quanto riguarda Intel, è possibile trovare invece cinque linee di prodotti dedicate agli utenti privati; – – – la più economica Celeron l’economica Pentium la più costosa Core, che a sua volta si divide in Core i 3, Core i 5 e Core i 7 per chi vuole proprio il massimo, ci sono anche le serie Core i 7 Extreme Edition e Core X. Per server intel core i 7 extreme edition

Macchine virtuali • VM Virtual Machine: simulazione di macchine diverse dal PC affinchè sia

Macchine virtuali • VM Virtual Machine: simulazione di macchine diverse dal PC affinchè sia possibile l’esecuzione di un sistema operativo diverso da quello esistente su un qualsiasi PC • Es: l’emulazione di un sistema Android • La VM rallenta molto il PC perché assorbe molta memoria