IL PROCESSORE INTEL 8086 per studenti PDF

Summary

Questo documento fornisce una panoramica del processore Intel 8086, concentrandosi su vari aspetti come i registri, la gestione della memoria e l'architettura CISC. È un'analisi dettagliata dei componenti e delle caratteristiche tecniche del processore, utile per studenti di informatica e sistemi di elaborazione.

Full Transcript

IL PROCESSORE INTEL 8086 La Famiglia Intel  8086: il primo processore per PC (1979)  80286: 16 MB di memoria, ma ancora a 16 Bit (1982)  La gamma 386: 32 bit e Memoria Cache (1985)  Il 486: FPU e moltiplicatore (1989)  Pentium: un fastidioso bug (1993)  Pen...

IL PROCESSORE INTEL 8086 La Famiglia Intel  8086: il primo processore per PC (1979)  80286: 16 MB di memoria, ma ancora a 16 Bit (1982)  La gamma 386: 32 bit e Memoria Cache (1985)  Il 486: FPU e moltiplicatore (1989)  Pentium: un fastidioso bug (1993)  Pentium Pro: il primo a gestire oltre 4 GB di memoria (1995)  Pentium II e III: fratelli (1997 e 1999)  Celeron e Xeon: Intel cerca di conquistare altre fasce di mercato  Pentium III Coppermine sfonda il muro del GHz  Pentium 4: tanto rumore per nulla (2000)  Pentium M: i notebook mostrano i muscoli (2003)  Il Pentium 4 guadagna i 64-bit e un altro core (2005)  Core 2 Duo: a 64 bit è presente nel mercato desktop, mobile e server (2006)  Gamma Nehalem: i3, i5, i7 e i7extreme (2008-09-10) CARATTERISTICHE  Bus dati a 16 bit  Bus indirizzi a 20 bit (1MB)  Multiplexaggio dati ed indirizzi  14 registri interni a 16 bit  Architettura CISC (Complex Instruction Set Computing) 70 istruzioni di base  Coda di Prefetch  Coprocessore 8087 (floating point)  Organizzazione della memoria a segmenti  40 pin  8 MHz REGISTRI  4 registri GENERALI o di transito  AX: registro accumulatore  I/O  Calcolo  BX: registro base  Indirizzamenti  CX: registro contatore  Iterazioni  DX: registro dati  Dati  I/O coppie di registri a 8 bit indirizzabili singolarmente  HIGH: AH, BH, CH, DH  LOW: AL, BL, CL, DL REGISTRI per l’indirizzamento della memoria  4 registri SEGMENTO  CS: code segment (codice)  DS: data segment (dati)  SS: stack segment (stack)  ES: extra segment (ausiliario)  5 registri PUNTATORI o INDICE  IP: instruction pointer = PC (in CS)  SI: source index (in DS)  DI: destination index (in DS o ES)  SP: stack pointer (in SS)  BP: base pointer (in SS) REGISTRI  registro dei FLAG: flag di stato + flag di controllo GESTIONE DELLA MEMORIA  Lo spazio di memoria indirizzabile dalla CPU è diviso in segmenti logici (massimo di 64kbyte)  La CPU può accedere direttamente a 4 segmenti  Lo spazio di memoria viene visto come un gruppo di segmenti  Ogni segmento: – è un'unità logica di memoria indipendente, indirizzabile separatamente dalle altre unità – inizia a un indirizzo di memoria multiplo di 16 – è costituito da locazioni contigue di memoria – è al massimo di 64k byte  I quattro registri segmento puntano ai quattro segmenti correntemente utilizzabili Generazione dell’Indirizzo fisico Un indirizzo fisico è un valore di 20 bit che identifica in modo univoco ogni byte dello spazio di memoria di 1Mbyte Per trasferire dati tra la CPU e la memoria è necessario utilizzare gli indirizzi fisici I programmi utilizzano indirizzi formati da indirizzo del segmento e offset nel segmento entrambi quantità di 16 bit senza segno segmento : offset Bus indirizzi 20bit => 1Mbyte complessivo Registri a 16 bit => 64Kbyte per ogni segmento LITTLE ENDIAN: i byte di una word vengono scritti in ordine inverso Il BIU converte la coppia segmento:offset in indirizzo fisico Ciò avviene moltiplicando l'indirizzo del segmento per 16 e sommando al risultato l'offset nel segmento BUS INTERFACE UNIT  FUNZIONI: (fetch)  Prelevare la istruzioni dalla RAM  Accodare le istruzioni  Prelevare ed immagazzinare gli operandi (attraverso il bus esterno)  Rilocare gli indirizzi  Generare i segnali di controllo del bus  Formata da  Registri di segmento  Program counter  Coda di prefetch  Sommatore di indirizzi (dedicato)  Controllore del bus esterno EXECUTION UNIT  FUNZIONI: (decode + execute)  decodifica le istruzioni  esegue le istruzioni  fornisce dati e indirizzi al BIU  modifica registri generali e registro flag  Formata da:  8 registri (generali + indice + puntatori)  ALU  Unità di Controllo (preleva le istruzioni dalla coda della BIU)  SR (letto/scritto da ALU)  2 registri temporaneti (non accessibili al programmatore) CODA di PREFETCH  6 byte  BIU carica in coda le prossime istruzioni  Coda non piena  Bus esterno disponibile  Precedenza alla EU  Istruzioni di salto  Idle state (bus inutilizzato) ISTRUZIONI  Vari tipi di istruzioni di lunghezza diversa  Ogni istruzione occupa un ben definito numero di cicli macchina  Mancanza di Ortogonalità Ortogonalità: possibilità per le istruzioni di utilizzare uno qualsiasi dei registri come operando Esistono: istruzioni che utilizzano i registri generali in modo implicito istruzioni che funzionano solo con particolari registri generali

Use Quizgecko on...
Browser
Browser