Struttura e funzionamento di un microprocessore.

Slides:



Advertisements
Presentazioni simili
A. FERRARI MATERIALE DALLA DISPENSA DI P. OLLARI
Advertisements

La struttura fisica e logica di un elaboratore
Classe III A A.s – 2011 Sistemi di Elaborazione e Trasmissione dell’Informazione 4 ore settimanali (2 laboratorio) Docenti Prof. Alberto Ferrari.
Organizzazione della memoria
IL MICROCONTROLLORE ST6
Elaboratore e Sistemi Operativo
Architettura di un sistema informatico Hardware
CdL Ingegneria Informatica n.o. Anno Accademico 2007/08 Fondamenti di Informatica I – corso A Giacomo Piscitellipag. 1/30 Architettura dei calcolatori.
2. Architettura di un calcolatore
Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A Architettura di un calcolatore Ing. Simona Colucci.
1 Corso di Informatica (Programmazione) Lezione 4 (24 ottobre 2008) Architettura del calcolatore: la macchina di Von Neumann.
Il Linguaggio Macchina
Com’è fatto un elaboratore?
3. Architettura Vengono descritte le principali componenti hardware di un calcolatore.
ARCHITETTURA DEL CALCOLATORE
EVOLUZIONE DEL PC Legge di Moore: La potenza dei calcolatori raddoppia ogni 18 mesi Metà anni 80 (Personal Computer IBM AT) Architettura 16 bit interna,
CPU (central process unit)
La macchina di von Neumann
La macchina di von Neumann
L’Architettura del Sistema di Elaborazione
Architettura dell’elaboratore
Il Modello logico funzionale dell’elaboratore
Microprocessore Intel 8086
ARCHITETTURA DEGLI ELABORATORI
ELETTRONICA DIGITALE (II Parte)
Introduzione al linguaggio assemby del microprocessore a parte
SISTEMA DI CONTROLLO Circuito di controllo trasduttori attuatori NOTA:
I vettore interruzioni
Architettura del calcolatore
Dimitri Caruso Classe 2^ Beat ISIS G. Meroni Anno Scolastico 2007/08
GESTIONE INTERRUPT CPU INTEL 8086
Introduzione al linguaggio assembly del microprocessore a parte
ARCHITETTURA DI UN ELABORATORE
LOGICA DI FUNZIONAMENTO
Sistemi di elaborazione e trasmissione delle informazioni
Unità centrale di processo
Informatica Lezione 4 Scienze e tecniche psicologiche dello sviluppo e dell'educazione Anno accademico:
STRUTTURA DI UN COMPUTER
Realizzazione a cura di
Hardware e software Hardware Software
Architettura di una CPU
Architettura del calcolatore
Il µP Intel 8086 Marco Lettieri 3 C Informatica A.S. 2009/2010 All’attenzione del Professor Claudio Gatto.
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Calcolatori Elettronici Il Processore
Luglio 2004Generalità Hardware1 Luglio Generalità Hardware2 MACCHINA DI VON NEUMAN (1947) BUS Processore Elaborazione Controllo Memoria Ingresso.
Architettura IA - 16 M. Mezzalama - M. Rebaudengo - M. Sonza Reorda
Informatica Lezione 5 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
Corsi di Laurea in Biotecnologie
Laboratorio Informatico
Corso di Laurea in Informatica Architettura degli elaboratori a.a La macchina programmata Instruction Set Architecture (2) Istruzioni I-type Indirizzamento.
Gestione dei dispositivi di I/O:
MICROPROCESSORI Un processore è un circuito integrato in grado di effettuare operazioni di calcolo o di elaborazione dell'informazione Il circuito contiene.
Architettura di un calcolatore e linguaggio macchina.
Corso di Laurea in Scienze e Tecnologie Chimiche corso di Informatica Generale Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
L’esecuzione dei programmi
Informatica Generale Marzia Buscemi
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
Struttura Fondamentale degli Elaboratori Elaboratore –È un sistema numerico –È un sistema automatico –È un sistema a programamzione registrabile –Ha una.
STRUTTURA DELL’ELABORATORE
Architettura 8086/8088 M. Rebaudengo - M. Sonza Reorda
Dalla macchina di Von Neumann …
Presentazione di sistemi Ambrosio Federica Anna Esposito 3C inf.
Click to add text L’ Unità di Elaborazione. Struttura : Unità di controllo: coordina attività CPU ALU: unità aritmetico-logica, esegue operazioni tra.
I Microprocessori Unità 3 del libro Internet Working Sistemi e reti.
Tipi di Computer MainframeSupercomputerMinicomputerMicrocomputerHome Computer Personal Computer WorkstationMicrocontrollori Sistemi Barebone.
Il modello di Von Neumann
Hardware Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche.
Architettura degli elaboratori
Transcript della presentazione:

Struttura e funzionamento di un microprocessore

Campi di utilizzo dei mP Dai primi calcolatori alle attuali applicazioni

Contenuti ENIAC: il primo computer elettrico Lo schema di Von Neumann EDVAC Nuovi computer con componenti elettronici a semiconduttore: APPLE II Campi di applicazione dei microprocessori Dal mondo analogico al PC Memorie a semiconduttore: RAM e ROM

ENIAC: primo computer elettrico L’ENIAC (electric numerical integrator analyzer and computer) fu costruito tra il 1943 e il 1945 dall’esercito statunitense per calcolare la traiettoria delle prime armi atomiche. Costruito da più di 17000 valvole a vuoto, Eniac eseguiva 5000 operazioni al secondo, risolvendo un problema medio in circa 2 secondi, ma richiedendo due giorni per la preparazione. Pesava 30 tonnellate era lungo 30 m alto 2,5 m. Assorbiva 200 Kw di potenza.

Lo schema di Von Neumann RAM (Memoria Centrale) RAM Unità di Calcolo INPUT OUTPUT Memorie Ausiliarie Una delle innovazioni introdotte fu la RAM (Random Access Memory) cioè la memoria centrale o memoria di lavoro (allora memoria a nuclei magnetici), una memoria elettronica interna all’elaboratore destinata a contenere il programma. RAM L’idea fu quella di memorizzare all’interno del computer, non solo i dati ma anche il programma che li doveva elaborare.

RAM (Memoria Centrale) il calcolatore (macchina per calcolare) elaboratore (macch. per il trattamento delle informazioni) diventa Elaboratore RAM (Memoria Centrale) Unità di Calcolo INPUT OUTPUT Memorie Ausiliarie

EDVAC EDVAC ideato da VON NEUMANN Primo diagramma di flusso ideato da Von Neumann per l’EDVAC

Nuovi computer con componenti elettronici a semiconduttore Con l’avvento dei transistor a semicondutore (Bell labs 1947) L’IBM nel 1954 realizzò il primo computer a transistor, e anche il primo messo in commercio. Ne furono vendute 120 unità. Nel 1958 la TEXAS INSTRUMENTS costruì il primo circuito integrato, consentendo la costruzione dei microprocessori, e di computer sempre più piccoli e potenti, ma sempre dai costi non accessibili a tutti limitandone così la vendita, e quindi la produzione. Solamente nel 1975 fu costruito il primo prototipo di PC l’ALTAIR 8800 della MITS il processore era l’INTEL 8080 e aveva 256 byte di RAM. Costava 367 dollari.

APPLE II Il trionfo del software Realizzato nel 1976, fu il primo vero PC commerciale, che sancì il successo del calcolo elettronico grazie ai software a lui dedicati. In particolare venne realizzato il primo foglio elettronico (Visicalc) Ma intanto l’IBM realizza il suo primo PC cercando di accontentare le richieste di mercato: basso prezzo e possibilità di aggiornare i componenti e il software. Non brevettò il PC, consentendo ai concorrenti di copiarne la struttura. Questa fu l’idea di mercato vincente, perché la maggior parte dei PC erano così compatibili con i componenti IBM,e i creatori di software si basarono sul loro hardware, tra questi c’era la Microsoft. Nasce l’era del software, che deciderà il futuro dei PC.

CAMPI DI APPLICAZIONE DEI MICROPROCESSORI

logica di funzionamento Architettura e logica di funzionamento

Contenuti Blocchi di un sistema a mP Architettura a BUS CPU CPU Disp. di I/O Memoria Blocchi di un sistema a mP Memoria Architettura a BUS BUS Suddivisione del BUS ALU UC  Architettura interna del mP Prelievo (fetch) ed esecuzione (execute) di istruzioni in memoria

Blocchi componenti un sistema a mP CPU (mP) CPU Esegue operazioni (ALU) ALU REG Prende decisioni (UC) UC Memorizza temp. dati (Registri) Memoria Conserva Istruzioni e Dati Memoria 00110101 00110101 sotto forma di parole binarie 0000h accessibili mediante un indirizzo Dispositivi di I/O Consentono lo scambio informazioni con il mondo esterno

Architettura a BUS CPU Dispositivi di Memoria I/O BUS Il BUS di collegamento consente lo scambio di informazioni: dalla memoria verso il microprocessore (LETTURA da Memoria) dai dispositivi di I/O verso il microprocessore (LETTURA da I/O) dal microprocessore verso la memoria (SCRITTURA su Memoria) dal microprocessore verso i dispositivi di I/O (SCRITTURA su I/O) CPU Memoria Dispositivi di I/O 00110101 00110101 00110101 BUS SCRITTURA su Mem LETTURA da Mem LETTURA da I/O SCRITTURA su I/O

Suddivisione del BUS CPU Dispositivi di Memoria I/O Dal punto di vista funzionale il BUS di collegamento può essere suddiviso in: CPU BUS INDIRIZZI BUS CONTROLLI Memoria Dispositivi di I/O BUS DATI

Architettura interna del Microprocessore CPU ALU UC REG Architettura interna del Microprocessore BUS INTERNO Reg. istruzioni Reg. di Stato Registri di uso generale CPU Accumulatore Decodificatore di istruzioni ALU Reg. temporaneo Stack Pointer Unità di controllo e temporizzazione …… Program Counter Buffer Dati Buffer Indirizzi RESET CLOCK BUS CONTROLLI BUS DATI BUS INDIRIZZI

Prelievo istruz. dalla mem. ( fetch ) e loro esecuzione (execute) Memoria Reg. istruzioni 00001100 ADD A,B A 0000h 00001100 0001h 11000011 11000011 INC A CPU 11010000 00001000 11010000 00001000 11010001 Decodificatore di istruzioni PROG ADD A,B INC A + +1 ALU B Unità di controllo e temporizzazione 11001000 11001000 …… Program Counter 0002h 0001h 0001h 0000h 0000h 1 1 DATI

logica di funzionamento del MICROPROCESSORE 8088 INTEL Architettura e logica di funzionamento del MICROPROCESSORE 8088 INTEL

Contenuti Il circuito integrato I registri Architettura interna AD[0:7] A [8:19] WR# RD# IO/M# CPU Il circuito integrato I registri Architettura interna La segmentazione degli indirizzi AX EXTRA SEGMENT STACK SEGMENT DATA SEGMENT CODE SEGMENT

Circuito integrato: segnali per il controllo della memoria e delle periferiche AD[0:7]: linee del BUS DATI multiplexate con le prime 8 linee del BUS INDIRIZZI A[8:19]: le rimanenti 12 linee del BUS INDIRIZZI WR#: segnale di scrittura RD#: segnale di lettura IO/M#: segnale di attivazione periferica I/O o memoria AD[0:7] A [8:19] CPU WR RD IO/M

Circuito integrato: segnali per la separazione DATI/INDIRIZZI ALE: indica la presenza degli indirizzi sulle linee AD[0:7] DEN#: indica la presenza di un dato valido sulle linee AD[0:7] DT/R#: indica la direzione dei dati AD[0:7] ALE A [8:19] WR DEN RD DT/R IO/M

I Registri di uso generale AX registro ACCUMULATORE BX registro BASE CX registro CONTATORE DX registro DATI Possono essere divisi in due byte (es.:AL e AH), dando luogo a un set possibile di 8 registri a 8 bit L = LOW (BASSO) H = HIGH (ALTO) AX AH AL

UTILIZZO dei registri di uso generale Operazioni aritmetiche a 8 o a 16 bit Operazioni logiche Trasferimento dati Funzioni specifiche ( es.: AX è coinvolto nelle operazioni di Input/Output dei dati, BX è usato come puntatore nell’indirizzamento della memoria)

Status Register (Registro di Stato) Memorizza lo stato del processore dopo ogni operazione Ogni singolo bit viene modificato singolarmente 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 x STATUS REGISTER OF O F DF IF I F TF SF S F ZF Z F AF PF CF C F Overflow 0: l’ultima operazione non ha avuto overflow 1:l’ultima operazione ha avuto overflow Flag Interrupt 0: Interrupt abilitato 1: Interrupt non abilitato Flag Sign 0: il risultato dell’ultima operazione è positivo 1: il risultato dell’ultima operazione è negativo Flag Zero 0: il risultato dell’ultima operazione non è nullo 1: il risultato dell’ultima operazione è nullo Flag Carry 0: il risultato dell’ultima operazione non ha generato riporto 1: il risultato dell’ultima operazione ha generato riporto Flag

Architettura interna Registri di segmento INTERFACCIA BUS BIU AD[O:7] A[8:19] DT/R# DEN# ALE Registri di segmento CS INTA# DS INTERFACCIA BUS SS RD# ES WR# Program counter Logica di Controllo IP CK BIU VCC MN/MX# RESET BUS INTERNO (16 bit) CODA (4 byte) INTR NMI READY Registri di uso generale AH AL GND BH BL CH CL ALU DH DL Registri indice SI DI STATUS REGISTER Registri Puntatori SP BP EU

I Segmenti (1) Un segmento è un’area di memoria di 64 Kilobyte (216 byte) 01001111 b ………… 10101010 b 11001110 b 0FFFF h FFFF 00000 h 0000

I Segmenti (2) 1FFFF h 10000 h 30000 h 3FFFF h 60000 h 6FFFF h 80000 h 8FFFF h FFFFFh 00000h Contemporaneamente la CPU 8088 può utilizzare al massimo 4 segmenti (256 Kilobyte): CODE SEGMENT: contiene il codice (programma) DATA SEGMENT: contiene i dati (iniziali e i risultati) STACK SEGMENT: contiene lo stack, magazzino temporaneo di dati e indirizzi EXTRA SEGMENT: è un ampliamento del Data Segment EXTRA SEGMENT FFFF 64K 0000 STACK SEGMENT FFFF 64K 0000 DATA SEGMENT FFFF 64K 0000 CODE SEGMENT FFFF 64K 0000

Posizione dei segmenti I segmenti possono essere: Disgiunti Adiacenti Coincidenti Sovrapposti EXTRA SEGMENT STACK SEGMENT DATA SEGMENT CODE SEGMENT

Indirizzi fisici e indirizzi segmentati Indirizzo segmentato: usato dal programmatore Offset o spiazzamento 1000 1000 : 2345 2345 Indirizzo di base del segmento + 12345 INDIRIZZO FISICO Indirizzo fisico: usato dal microprocessore