Intel 8051: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
FrescoBot (discussione | contributi)
fix incipit
 
(8 versioni intermedie di 7 utenti non mostrate)
Riga 1:
[[File:KL Intel P8051.jpg|right|thumb|Microcontrollore Intel P8051.]]
[[File:SAB-C515-LN.jpg|thumb|Microcontrollore SAB-C515-LN di Infineon, basato sul core 8051.]]
 
L{{'}}'''Intel 8051''' è un [[microcontrollore]] a 8 [[bit]] su singolo chip basato su [[architettura Harvard]], prodotto da [[Intel]] nela partire dal [[1980]] come processore per [[Sistema embedded|sistemi integrati]]. La versione originale di Intel era popolare negli [[anni 1980|anni ottanta]] e i primi [[anni 1990|anni novanta]] ma è stata in seguito ampiamente sorpassata da una vasta gamma di dispositivi 8051-compatibili, più veloci e/o funzionali, prodotti da oltre 20 aziende indipendenti come [[Atmel]], [[Infineon Technologies]] (precedentemente [[Siemens AG]]), [[Maxim Integrated Products]] (tramite la sua sussidiaria [[Dallas Semiconductor]]), [[NXP Semiconductors|NXP]] (precedentemente [[Philips]] Semiconductor), Nuvoton (precedentemente [[Winbond]]), [[ST Microelectronics]], [[Silicon Laboratories]] (precedentemente Cygnal), [[Texas Instruments]] e [[Cypress Semiconductor]].
La differenza tra una vera e propria CPU e l'8051 è che quest'ultimo possiede 32 linee di I/O, organizzate in gruppi di 8 bit ciascuno. ad ognuno di questi è possibile collegare un pulsante, un LED, oppure altri dispositivi che possano fornire I/O all'8051.
 
La designazione ufficiale di Intel per la famiglia 8051 di microcontrollori è '''MCS 51'''. La prima versione fu prodotta utilizzando tecnologia [[Logica NMOS|NMOS]] mentre le versioni successive, identificate da una lettera C nel loro nome (es., 80C51) usavano tecnologia [[CMOS]] ed erano quindi più efficienti dal punto di vista energetico dei loro predecessori NMOS. Ciò li rendeva particolarmente adatti per l'uso su dispositivi a [[Batteria (chimica)|batteria]].
 
== Architettura 8051 ==
L'8051 possiede 60000 transistor. Il cuore dell'8051 è rappresentato dal bus principale cui sono collegati vari registri, quasi tutti destinati a lettura o scrittura, sotto il controllo del programma.
 
L'8051 è dotato di due memorie separate per codice e dati. La RAM dei dati è di soli 128256 byte, mentre la memoria RAMROM del codice può raggiungere i 64 KB. Oltre al bus principale e ai registri, sul chip dell'8051 ci sono due timer a 16 bit che risultano indispensabili per le applicazioni in tempo reale. Sono presenti anche 4 porte I/O a 8 bit, che permettono all'8051 di controllare 32 dispositivi esterni come pulsanti, luci, sensori, attuatori.. e altro.
 
L'8051 è un processore sincrono in cui la maggior parte delle istruzioni, seppur non tutte, impiegano un solo ciclo macchina. Ogni ciclo macchina è suddiviso in dodici cicli di clock, e da sei stati. Ad ogni stato viene eseguita una precisa operazione che portano all'esecuzione dell'istruzione.
 
== Applicazioni e funzioni importanti ==
[[File:Intel 8051 arch.svg|right|thumb|Microarchitettura i8051.]]
 
Il chip dell'8051 integra le funzionalità seguenti:
* [[Central processing unit|CPU]] a 8 bit
Riga 20 ⟶ 22:
* [[Bus (informatica)#Bus dati|bus dati]] a 8 bit
* [[Bus (informatica)#Bus indirizzi|Bus indirizzi]] a 16 bit (spazio indirizzabile complessivo: 2<sup>16</sup> = 64[[kilobyte|kB]] indipendenti su RAM e ROM)
* RAM interna (memoria dati) - 128256 [[byte]]
* ROM interna (memoria programma) - 4kB
* Quattro porte di I/O orientate al byte
* [[UART]] (porte seriali) di tipo sincrono (SPI, ''Serial Peripheral Interface'') e asincrono
* Due contatori/[[timer (informatica)|timer]] a 16 bit
* Gestore di ''[[interrupt]]'' a due livelli di priorità
* Controllo del consumo (modalità di risparmio energetico)
 
Una caratteristica particolarmente utile dell'8051 è la possibilità di elaborare direttamente e in modo efficiente [[Variabile booleana|variabili booleane]] a un solo bit, nei registri e nella RAM. Questa caratteristica ha contribuito a consolidare la popolarità dell'8051 in applicazioni di controllo industriale. Un'altra caratteristica apprezzata è la presenza di quattro gruppi separati di registri di contesto, usati per ridurre drasticamente le latenze degli ''interrupt'' rispetto ai metodi tradizionali di immagazzinamento del contesto su [[Pila (informatica)|stack]].
 
Le porte seriali dell'8051 rendono semplice l'uso del chip come interfaccia di comunicazione. È infatti possibile configurare la modalità di connessione tra i pin esterni e i registri a scorrimento interni, collegandoli anche ai timer interni, ottenendo così il supporto di diverse modalità di comunicazione seriale, di tipo sia sincrono (SPI) che asincrono.
Riga 656 ⟶ 658:
 
== Varianti ==
[[File:INTEL8031AH.png|thumb|right|Processore Intel 8031]]
 
{| class="wikitable" border="1"
Riga 713 ⟶ 715:
* {{Cita libro | cognome=Payne | nome=William |
titolo=Embedded Controller Forth for the 8051 Family |tipo=hardcover |
data=19 dicembre 1990 | editore=Elsevier | città= | lingua=inglese |isbn=978-0-12-547570-9 | pagine=528 }}
 
* Andrew S. Tanenbaum, Architettura degli elaboratori, un approccio strutturale, Pearson Prentice Hall
 
== Altri progetti ==
{{interprogetto|preposizione=sull'}}
 
== Collegamenti esterni ==
* {{Collegamenti esterni}}
* {{cita web|http://www.atmel.com/products/8051/|Atmel}}
* {{cita web | 1 = http://www.cast-inc.com/cores/r8051xc2/index.shtml | 2 = CAST, Inc. (8051 IP core provider) | accesso = 21 maggio 2009 | urlarchivio = https://web.archive.org/web/20090430022418/http://www.cast-inc.com/cores/r8051xc2/index.shtml | dataarchivio = 30 aprile 2009 | urlmorto = sì }}
* {{cita web | 1 = http://www.standardics.nxp.com/products/80c51/ | 2 = NXP (Philips) | accesso = 21 maggio 2009 | urlarchivio = https://web.archive.org/web/20090428045327/http://www.standardics.nxp.com/products/80c51/ | dataarchivio = 28 aprile 2009 | urlmorto = sì }}
* {{cita web |1=http://para.maxim-ic.com/cache/en/results/4592.html |2=Maxim Integrated Products |accesso=21 maggio 2009 |urlarchivio=https://web.archive.org/web/20070307014316/http://para.maxim-ic.com/cache/en/results/4592.html |dataarchivio=7 marzo 2007 |urlmorto=sì }}
Riga 730 ⟶ 732:
* {{cita web|url=http://focus.ti.com/mcu/docs/mcugeneralcontent.tsp?sectionId=98&tabId=1515|titolo=Texas Instruments}}
* {{cita web | 1 = http://mcu-memory.com/ | 2 = STC Semiconductor (Chinese supplier of 8051-based products) | accesso = 21 maggio 2009 | urlarchivio = https://web.archive.org/web/20090228171624/http://www.mcu-memory.com/ | dataarchivio = 28 febbraio 2009 | urlmorto = sì }}
* {{cita web |1=http://www.dolphin.fr/flip/logic/logic_overview.html |2=Dolphin Integration (8051 IP provider) |accesso=21 maggio 2009 |urlarchivio=https://web.archive.org/web/20090601183242/http://www.dolphin.fr/flip/logic/logic_overview.html |dataarchivio=1º giugno 2009 |urlmorto=sì }}
* {{cita web|url=http://www.dcd.pl/acore.php?idcore=44|titolo=DIGITAL CORE DESIGN, DCD (8051/80390 IP core provider)|accesso=21 maggio 2009|urlarchivio=https://web.archive.org/web/20080213042913/http://www.dcd.pl/acore.php?idcore=44|dataarchivio=13 febbraio 2008|urlmorto=sì}}
 
{{Controllo di autorità}}
{{Portale|informatica}}