Microcontrollori e microprocessori Introduzione
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 RISC
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, ha un’architettura di tipo RISC Può essere integrato in schede elettroniche per controlli È progettato per lavorare in real time
Architettura generale CPU RAM ROM INPUT OUTPUT
Architettura Von Neumann e architettura Harvard Un microcontrollore è caratterizzato dall’architettura Harvard dove memoria dati e memoria programmi sono separate L’architettura Von Neumann descrive bene un microprocessore dove memoria programma e memoria dati sono sullo stesso supporto ALU Unità di cotrollo Mem dati Memo prog I/O I/O CPU Mem Bus controllo Bus indirizzi Bus dati
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 111 00101101 00101101 CPU read Bus controllo Bus dati
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