Intel 8086 A FERRARI MATERIALE DALLA DISPENSA DI

  • Slides: 13
Download presentation
Intel 8086 A. FERRARI MATERIALE DALLA DISPENSA DI P. OLLARI

Intel 8086 A. FERRARI MATERIALE DALLA DISPENSA DI P. OLLARI

Intel 8086 � L'Intel 8086 è un microprocessore a 16 bit progettato dalla Intel

Intel 8086 � L'Intel 8086 è un microprocessore a 16 bit progettato dalla Intel nel 1978, che diede � � � origine all'architettura x 86. È basato sull'8080 e sull'8085 (è compatibile con l'assembly dell'8080), con un insieme di registri simili, ma a 16 bit. Ha quattro registri a 16 bit per uso generico, a cui si può accedere come se fossero otto registri a 8 bit, e quattro registri a 16 bit di indice (incluso lo stack pointer). I registri per i dati sono spesso utilizzati implicitamente dalle istruzioni, complicando l'uso degli stessi per memorizzare valori temporanei. Ha uno spazio di indirizzamento a 16 bit per l'I/O (cioè può accedere a 65. 536 dispositivi di I/O a 8 bit e dispone di una tabella di vettori per gli interrupt fissa. La maggior parte delle istruzioni possono accedere ad una sola locazione di memoria, perciò uno degli operandi deve essere un registro. Il risultato viene memorizzato in uno degli operandi. Ci sono anche quattro registri per i segmenti che possono essere calcolati dai registri di indice. I registri di segmento permettono alla CPU di accedere ad un megabyte di memoria in un modo particolare. Il processore ha una velocità di clock tra i 4, 77 (nei primi pc IBM) e i 10 MHz. Wikipedia

X-86 � Con x-86 si intende l’architettura di microprocessori inizialmente sviluppata dall’azienda Intel negli

X-86 � Con x-86 si intende l’architettura di microprocessori inizialmente sviluppata dall’azienda Intel negli anni ’ 70, e che è ancora oggi predominante sul mercato mondiale. Altre importanti aziende producono calcolatori basati su questa tecnologia, i cui diritti sono stati a suo tempo venduti, ad esempio AMD. � Il nome x-86 deriva dal primo microprocessore della serie, Intel 8086 (1976), a cui sono seguite numerose versioni via più potenti che hanno mantenuto il suffisso nel nome: 8088 (1979), 80186 (1980), 80286 (1982), 80386 (1986), 80486 (1989). � Sono da considerarsi macchine x-86 anche i modelli successivi all’ 80486, che hanno dovuto rinunciare al nome ‘numerico’ per l’impossibilità di brevettarlo: Pentium (o P 5, 1993), Pentium Pro (o P 6, 1995), Pentium II (1997), Pentium III (1999), Pentium 4 (o P 7, 2000), Pentium M (2003), Pentium D (2005), Core 2 Duo (o P 8, 2006). � Tutti i processori di questa famiglia sono tutti retrocompatibili e, in particolare, tutti ancora in grado di eseguire le istruzioni originali dell’ISA primitiva del progenitore, l’Intel 8086, benché esso fosse una macchina a 16 bit, mentre le ultime citate sono tutte a 32 bit e, in parte, a 64 bit.

Chip 8086

Chip 8086

Intel 8088 � Intel 8088 è un microprocessore a 4. 77 MHz prodotto dalla

Intel 8088 � Intel 8088 è un microprocessore a 4. 77 MHz prodotto dalla Intel basato sull'8086. � Ha un'architettura interna a 16 bit (come l'8086), un data bus a 8 bit (la metà dell'8086) e un address bus da 20 bit, quindi l'8088 è in grado di indirizzare 220 = 1. 048. 576 byte = 1 MB di memoria. � Questo processore fu utilizzato nei primi PC IBM. � Quando uscì sul mercato i pregi dell'8088 rispetto all'8086 erano la frequenza di clock maggiore (4. 77 MHz) e il prezzo inferiore. � Nonostante l'introduzione di modelli successivi e di gran lunga più avanzati, l'8088 è uscito di produzione solo nel settembre del 2007; non veniva più usato come processore per PC dal 1992, ma nell'industria aveva trovato altri interessanti impieghi. Wikipedia

Chip 8088

Chip 8088

Architettura 8086 �L'Intel 8086 (consideriamo l’Intel 8088 come del tutto equivalente, anche se il

Architettura 8086 �L'Intel 8086 (consideriamo l’Intel 8088 come del tutto equivalente, anche se il bus dati è a 8 bit), è un microprocessore a 16 bit (ampiezza dei registri e del Dbus) con 20 linee sull’Abus per un totale di 1 Mbyte di spazio di indirizzamento fisico (220 = 1048756 celle). �L'unità di interfaccia con il bus o Unità di Controllo è denominata BIU (Bus Interface Unit), e passa le istruzioni all'ALU (detta EU da Execution Unit.

Architettura Address bus (20 bits) Execution Unit (EU) AH AL BH BL CH CL

Architettura Address bus (20 bits) Execution Unit (EU) AH AL BH BL CH CL DH DL General purpose register SP Segment register BP SI DI CS Data bus (16 bits) DS SS ALU Data bus (16 bits) ALU Flag register ES IP Instruction Queue Bus control External bus EU control Bus Interface Unit (BIU)

� L'Intel 8086 possiede 14 registri da 16 bit, di cui quattro registri per

� L'Intel 8086 possiede 14 registri da 16 bit, di cui quattro registri per uso generico (AX, BX, CX, DX), a cui si può accedere anche come se fossero otto registri a 8 bit (AH e AL, BH e BL, CH e CL, DH e DL), due registri indice per indirizzare in memoria (SI, DI) e due registri dedicati alla gestione dello stack (BP e SP). � A questi si aggiungono altri quattro registri detti di segmento (CS, ES, DS e ES), dedicati specificatamente all’indirizzamento della Memoria. Completano il set di registri l’Instruction Pointer IP e il registro PSW (Program Status Word), denominato Flag register. � Lo spazio degli indirizzi di I/O si avvale di un indirizzamento a 16 bit, per un totale di 64 KByte (216 = 65536) registri di Input/Output disponibili. Completa la sezione di I/O un set di 8 linee di interruzione hardware (poi ampliato a 16) e un canale DMA per dispositivi di I/O con ampio traffico. � La frequenza originale del clock di CPU valeva 4, 77 MHz.

Registri

Registri

Registri � 4 registri di uso generale, pur utilizzati frequentemente come registri di memorizzazione

Registri � 4 registri di uso generale, pur utilizzati frequentemente come registri di memorizzazione temporanea (a 16 o a 8 bit), sono dedicati a precisi compiti e sono coinvolti implicitamente in numerose istruzioni. AX, o registro Accumulatore, è predisposto per le istruzioni aritmetiche (somme, sottrazioni, moltiplicazioni e divisioni). BX, o registro Base, è l’unico dei registri di uso generale che può specificare un indirizzo di memoria CX, o registro Contatore, è utilizzato implicitamente nelle istruzioni di conteggio dei cicli DX, o registro di I/O consente di indirizzare le porte di I/O. Usato anche in moltiplicazioni e divisioni. � 2 registri indice sono usati nelle istruzioni per manipolare array di caratteri (stringhe). � SI, o registro Indice Sorgente, specifica l’indirizzo da cui leggere l’array � DI, o registro Indice Destinazione, specifica l’indirizzo in cui scrivere l’array. � 2 registri dedicati allo stack sono in grado di indirizzare in memoria, anche se non liberamente. BP, o Base Pointer, contiene l’indirizzo di partenza della pila di stack, per poter gestire il passaggio dei parametri delle procedure SP, o Stack pointer, contiene sempre l’indirizzo di memoria dell’ultimo elemento sullo stack. � IP e Flag, sono registri non modificabili esplicitamente. IP, o Instruction Pointer, contiene la parte meno significativa dell’indirizzo della prossima istruzione da eseguire. Il programmatore non lo modifica mai. Flag, o registro dei Flags, è l’unico registro intepretato a singolo bit, ove ogni bit ha un significato differente e concorre a descrivere lo stato attuale del Processore dopo l’esecuzione dell’ultima istruzione.

Tebella riassuntiva

Tebella riassuntiva

Core i 7 Extreme � Core i 7 Extreme è il nome commerciale di

Core i 7 Extreme � Core i 7 Extreme è il nome commerciale di una serie di microprocessori x 86 di nona generazione sviluppati da Intel e presentati il 17 novembre 2008. � Le CPU Core i 7 Extreme, insieme alle controparti di fascia medio alta Core i 7, sono state le prime incarnazioni della nuova architettura Nehalem, successiva alla Intel Core Microarchitecture, e che andrà progressivamente a sostituire in tutti i settori di mercato, prendendo gradualmente il posto dei Core 2 Duo, Core 2 Quad e Core 2 Extreme. � Come ormai abitudine da parte di Intel, i processori "Extreme" vengono proposti per la fascia più alta del mercato desktop (e in un secondo tempo anche mobile), e oltre ad avere valori di clock più elevati, vengono anche accompagnati dalla presenza del moltiplicatore sbloccato sia verso il basso che verso l'alto in modo da semplificare le operazioni di overclock tipiche di questa fascia di utenti. Wikipedia