Cos'è un microprocessore, oggi tutti lo sanno. Questa è una delle più interessanti innovazioni tecnologiche in elettronica dall'apparizione del transistor nel 1948. I dispositivi di Wonder non solo hanno iniziato una rivoluzione nell'elettronica digitale, ma sono anche penetrati in quasi tutte le sfere della vita umana. Sono utilizzati in controller complessi, apparecchiature di controllo del dispatcher, macchine da gioco semplici e persino giocattoli.
Un computer grande e poco funzionale (in forma semplificata) può essere rappresentato sotto forma di un diagramma di flusso costituito da tre parti principali:
Il microprocessore è un circuito integrato progettato per funzionare come CPU del microcomputer.
Lo scopo del microprocessore è di leggere ogni comando dalla memoria, decodificarlo ed eseguirlo. La CPU elabora i dati secondo le istruzioni del programma sotto forma di operazioni logiche e aritmetiche. Le informazioni vengono recuperate dalla memoria o provengono da dispositivi di input e il risultato dell'elaborazione viene memorizzato o inviato al dispositivo di uscita appropriato come indicato nelle istruzioni. Questo è ciò che sono i microprocessori. Per eseguire tutte queste funzioni, hanno diversi blocchi funzionali. Questa struttura interna o organizzativa della CPU, che determina il suo lavoro, è chiamata la sua architettura.
Uno schema tipico del dispositivo a microprocessore è presentato alla tua attenzione nella foto qui sotto.
Il microcomputer funziona con un codice binario. Le informazioni binarie sono rappresentate da cifre binarie chiamate bit. Un gruppo di bit forma una parola macchina (il loro numero dipende dall'implementazione specifica). Le normali dimensioni delle parole sono 4, 8, 12, 16, 32 e 64 bit. Byte e nibble rappresentano rispettivamente un set di 8 e 4 bit.
I pneumatici collegano varie unità del dispositivo e consentono loro di scambiare le parole della macchina. Sono realizzati sotto forma di un cavo separato per ogni bit, che consente di scambiare tutti i bit della parola macchina nello stesso momento. Elaborazione delle informazioni nella CPU si verifica anche in parallelo. Pertanto, i bus possono essere considerati come linee di dati. La loro larghezza è determinata dal numero delle loro linee di segnale. Sul bus degli indirizzi, la CPU trasmette l'indirizzo del dispositivo I / O o la posizione di memoria a cui desidera accedere. Questo indirizzo è accettato da tutti i dispositivi collegati al processore. Ma solo quello a cui è stata indirizzata la risposta risponde ad esso. Il bus dati viene utilizzato per inviare e ricevere informazioni dai dispositivi di input-output e dalla memoria, inclusi i comandi. Ovviamente, è bidirezionale, e indirizzo - unidirezionale. Il bus di controllo viene utilizzato per trasmettere e ricevere segnali di controllo tra il microprocessore e i vari elementi del sistema.
È una rete combinatoria che esegue operazioni logiche e aritmetiche sui dati.
Il microprocessore di solito include un numero di registri. Sono utilizzati per memorizzare temporaneamente comandi, dati e indirizzi durante l'esecuzione del programma. Ad esempio, il microprocessore Intel 8085 ha una batteria a 8 bit (Acc), 6 registri general purpose a 8 bit (B, C, D, E, H e L), un registro di comando a 8 bit (IR) che memorizza il successivo eseguibile istruzione, un contatore di programma a 16 bit con l'indirizzo del prossimo comando da selezionare dalla memoria in IR, un puntatore stack a 16 bit, un registro flag che segnala determinate condizioni che si verificano durante l'esecuzione di operazioni logiche e aritmetiche, e alcuni altri registri speciali per processi interni e al quale il programmatore non è.
Decodifica ogni comando e controlla i blocchi esterni e interni, assicurando il corretto funzionamento logico del sistema.
Per memorizzare istruzioni, dati e risultati di calcolo, sono necessari dispositivi di memoria a semiconduttore. Il programma viene scritto nella memoria collegata al microprocessore tramite il bus indirizzo e i bus dati e di controllo (come i dispositivi I / O).
Se uno o più dispositivi I / O devono essere collegati alla CPU, è necessaria un'interfaccia appropriata. Esegue le seguenti 4 funzioni:
Lo scambio di dati che avviene tra il dispositivo periferico e il microcomputer si riferisce al loro trasferimento di programma o per l'accesso diretto alla memoria.
Nel primo caso, il programma caricato richiede il sistema I / O trasferimento dati microprocessore o fuori di esso. Di norma, le informazioni entrano nella batteria, sebbene possano essere coinvolti anche altri registri interni. Il trasferimento del programma viene solitamente utilizzato quando si invia una piccola quantità di dati a dispositivi I / O relativamente lenti, ad esempio un moltiplicatore periferico, una ALU periferica, ecc. In questi casi, il trasferimento viene solitamente eseguito parola per parola.
L'accesso diretto alla memoria o l'acquisizione del loop è controllato dispositivo periferico. In questo caso, il sistema I / O ritarda forzatamente il funzionamento del microprocessore fino al completamento del trasferimento. Poiché il processo è controllato dall'hardware, l'interfaccia è più complicata di quanto richiesto per il trasferimento dei dati del software. Utilizzato quando è necessario inviare un grande blocco di informazioni, ad esempio, dalla memoria periferica come i floppy disk e un lettore di schede ad alta velocità.
Vasto hardware è disponibile per lo sviluppo di interfacce utente. Include multiplexer e demultiplexer, line driver e ricevitori, buffer, multivibratori stabili e monostabili, latch di trigger, circuiti di gate, registri a scorrimento, ecc. Ci sono anche interfacce programmabili più complesse le cui funzioni possono essere modificate dal comando a microprocessore. Queste interfacce possono avere uno scopo generale o speciale.
Poiché il computer può memorizzare ed elaborare le informazioni in forma binaria, i comandi per l'invio alla macchina devono essere in formato binario. In questa forma, il programma è un linguaggio macchina.
Nel linguaggio assembly, i comandi, incluse le posizioni di memorizzazione, sono caratteri alfanumerici chiamati mnemonici. Rispetto al linguaggio macchina, il loro uso rende i programmi di scrittura molto più semplici. Tuttavia, se il programma è scritto in un linguaggio mnemonico, deve essere tradotto in istruzioni che la macchina può comprendere in modo che possano essere memorizzate ed eseguite in un microcomputer. Fondamentalmente, un comando assemblatore è tradotto in un comando di linguaggio macchina.
Scrivere programmi in linguaggio assembly è molto faticoso e richiede molto tempo. Pertanto, linguaggi di alto livello come Fortran, Cobol, Algol, Pascal sono diventati molto diffusi e possono quindi essere tradotti nella lingua della macchina. In questo caso, un operatore di solito corrisponde a diverse istruzioni della lingua della macchina.
Le principali caratteristiche del microprocessore sono anche determinate dal set di istruzioni. Di solito è composto da 5 gruppi:
Le istruzioni memorizzate con i dati in memoria possono essere lunghi 1 o più byte. I comandi lunghi vengono memorizzati in posizioni di memoria consecutive e l'indirizzo del primo byte viene sempre utilizzato come indirizzo dell'intero comando. Inoltre, il primo byte è sempre l'opcode.
A proposito di cosa sono i microprocessori, il mondo ha imparato nel 1971, quando la società americana Intel ha annunciato per la prima volta l'Intel 4004. È stato eseguito su un singolo chip ed era a 4 bit (cioè ha funzionato simultaneamente con 4 bit di dati). Ispirato dal successo della 4004, Intel ha introdotto una versione migliorata di Intel 4040. Molte altre aziende hanno anche annunciato microprocessori a 4 bit. Ad esempio, Rockwell International PPS4, NEC μCOM 4 e Toshiba T3472. La prima CPU a 8 bit è stata introdotta nel 1973 dalla stessa azienda. Era l'Intel 8008, seguito da una versione migliorata dell'8030. Diversi altri produttori seguirono l'esempio. I microprocessori a 8 bit più noti sono Intel 8085, Motorola M6800, NEC μCOM85AF, National * SC / MP, Zilog Z80 e Fairchild F8.
Poi sono arrivate le CPU a 12 e 16 bit. Esempi del primo sono IM 6100 Intersil e Toshiba T3190, e questi ultimi sono Intel 8086, Texas Instruments TMS 9940 e 9980, Fairchild 9440, Motorola M68000, Zilog Z670,.
Le modifiche delle caratteristiche del microprocessore dal 1971 miravano a migliorare l'architettura, il set di istruzioni, l'aumento della velocità, la semplificazione dei requisiti di alimentazione e l'aumento della quantità di memoria e delle strutture input-output in un singolo chip.
I primi tipi di microprocessori (4004, 4040, 8008) erano basati sulla tecnologia PMOS, che a causa delle limitazioni di velocità ha lasciato il posto a NMOS. Altre tecnologie sono CMOS, TTL, DTL, RTL.