Memorie e Microprocessori



Documenti analoghi
Architettura dei computer

Elementi di base del calcolatore

Lezione 15. L elaboratore Elettronico

Architettura del. Calcolatori (1) Calcolatori (2) L architettura di Von Neumann. CPU RAM Memoria I/O. secondaria. bus

Architettura dei computer

ARCHITETTURA DI UN CALCOLATORE ELETTRONICO

Esame di INFORMATICA ARCHITETTURA DI VON NEUMANN. Lezione 4 ARCHITETTURA DI VON NEUMANN

Architettura del calcolatore (Seconda parte)

Architettura di un elaboratore

Memorie elettroniche. 1. Parametri delle memorie

Macchina di Von Neumann

Architettura di un elaboratore

La memoria principale

Esame di INFORMATICA Lezione 4

Cenni sull architettura del calcolatore

Architettura di un elaboratore

Architettura. Argomenti. Modello di Von Neumann. Corso di Laurea in Ingegneria Biomedica aa 2003/2004. Ing. Antonio Coronato. Modello di Von Neumann

Architettura del Calcolatore

Il modello di Von Neumann

Costruire memorie ancora più grandi

Modulo: Elementi di Informatica

Struttura di un elaboratore

ARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).!

Architettura di un calcolatore e ciclo macchina. Appunti per la classe 3 Dinf

Lezione 22 La Memoria Interna (1)

Modello di von Neumann

Il processore. Istituzionii di Informatica -- Rossano Gaeta

Le istruzioni del linguaggio gg macchina corrispondono ad operazioni elementari di elaborazione operazioni aritmetiche

Architettura di un calcolatore: primi cenni introduttivi. Calcolatore: sottosistemi

Moduli combinatori Barbara Masucci

Architettura di un calcolatore: introduzione. Calcolatore: sottosistemi

Architettura hardware

Il Processore: l unità di controllo

Architettura dei Calcolatori Elettronici

Introduzione. Un calcolatore digitale è costituito da un sistema interconnesso dei seguenti dispositivi:

Memorie a semiconduttore

La logica Cuniberti cucchi-vol.1 Segnali elettrici. Segnale analogico

Microelettronica Corso introduttivo di progettazione di sistemi embedded

Modulo 1: Le I.C.T. UD 1.4d: La Memoria Centrale

Architettura di un calcolatore: introduzione. Calcolatore: sottosistemi

Il Processore. Informatica di Base -- R.Gaeta 27

Architettura degli elaboratori CPU a ciclo singolo

La macchina di Von Neumann. UNIVERSITÀ DEGLI STUDI DEL SANNIO Benevento DING DIPARTIMENTO DI INGEGNERIA CORSO DI "PROGRAMMAZIONE I"

ARCHITETTURA DI UN ELABORATORE

Microelettronica Corso introduttivo di progettazione di sistemi embedded

Componenti principali. Programma cablato. Architettura di Von Neumann. Programma cablato. Cos e un programma? Componenti e connessioni

Calcolatore: sottosistemi

Il calcolatore. È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica

Laboratorio di Informatica L-A 1

Componenti di un processore

Memorie Corso di Calcolatori Elettronici A 2007/2008 Sito Web: Prof. G. Quarella

Architettura di un calcolatore: primi cenni introduttivi

L architettura del calcolatore (Seconda parte)

Architettura dei sistemi di elaborazione (La memoria parte 3)

Componenti e connessioni. Capitolo 3

ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE

Componenti principali

Corso di Calcolatori Elettronici I

Livello logico digitale bus e memorie

Appunti sull interconnessione tra registri

Architettura di un calcolatore: introduzione. Calcolatore: sottosistemi

Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).

Struttura di un sistema di elaborazione. SDE: basi. Descrizione dei componenti (2) Descrizione delle componenti

ARCHITETTURA DI UN ELABORATORE. Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).

Lezione 1: L hardware

Microcomputer e Microprocessori G. MARSELLA UNIVERSITÀ DEL SALENTO

Architettura hardware

LABORATORIO DI INFORMATICA

Struttura del calcolatore

Il processore N.12. Vediamo come è strutturato un microprocessore e con quale sequenza esegue le istruzioni dettate da un programma assembler.

Architettura del calcolatore. Prima parte

Studio a scatola nera

Abilità Informatiche e Telematiche

L ARCHITETTURA DEI CALCOLATORI. Il processore La memoria centrale La memoria di massa Le periferiche di I/O

A.A. 2018/2019. CPU e Linguaggio Macchina FONDAMENTI DI INFORMATICA E PROGRAMMAZIONE. Docente Prof. Raffaele Pizzolante

RIASSUNTO La codifica delle informazioni

CPU. ALU e Registri della CPU. Elementi della CPU. CPU e programmazione (Parte 1) Central Processing Unit, processore

ARCHITETTURA DI UN ELABORATORE

Fondamenti di Informatica e Programmazione. P ro f. G i a n n i D A n g e l o

Architettura dei calcolatori

Architettura di un calcolatore: introduzione

I registri A, B, T contengono dati su cui è possibile eseguire operazioni elementari da parte dell ALU;

2. Architettura di un calcolatore

G L O S S A R I O. Fondamenti di Informatica I - Università degli Studi di Trento Dott. Roberti Pierluigi

Ogni CPU è in grado di eseguire un insieme limitato di istruzioni macchina codificate in binario secondo il seguente schema generale.

Pag. 1. Informatica Facoltà di Medicina Veterinaria a.a. 2012/13 prof. Stefano Cagnoni. Architettura del calcolatore (parte II)

Introduzione all'architettura dei Calcolatori. Maurizio Palesi

Capitolo 5 Elementi architetturali di base

Il Ciclo Fetch-Decode-Execute. C Nyssen/Aberdeen College 2003

Abilità Informatiche e Telematiche

Architettura del Calcolatore

Fondamenti di Informatica B

CALCOLATORI ELETTRONICI. I dispositivi di memoria

ARCHITETTURA DEL CALCOLATORE

Organizzata secondo il modello della macchina di von Neumann definita nei tardi anni 40 all Institute for Advanced Study di Princeton.

Transcript:

Contenuti MEMORIE E MICROPROCESSORI... 3 MEMORIE... 3 CONNESSIONI MEMORIE... 4 MEMORIE ROM... 4 ROM PROGRAMMABILI... 5 MEMORIE RAM... 6 MICROPROCESSORE... 7 UNITÀ ARITMETICO-LOGICA... 7 UNITÀ DI CONTROLLO... 8 REGISTRI DELLA CPU... 8 BUS ESTERNI... 9 STRUTTURA ISTRUZIONI... 10 SISTEMA CON CPU... 10 Pag. 2 di 10

Memorie e microprocessori Memorie Per memorizzare dati binari vengono utilizzati dei particolari circuiti integrati che vengono genericamente indicati con il termine memorie; normalmente le memorie sono individuate dalla loro capacità di memorizzazione, cioè dalla quantità di parole che sono in grado di memorizzare, e dalla lunghezza in bit di tale parola. Ad esempio una memoria 1024x8 sta ad indicare che tale circuito è in grado di memorizzare 1024 parole da 8 bit (1 byte). Nel disegno si vede una memoria a struttura di matrice dove per individuare una cella ci sono due decodificatori di riga e di colonna. Le linee di ingresso dei codificatori A0A1-A2A3 attivano, rispettivamente, una sola riga e una sola colonna per volta e quindi selezionano una sola cella per volta. Pertanto i valori sulle linee degli ingressi A0A1A2A3 costituiscono l'indirizzo di ciascuna cella o locazione di memoria. Una cella di memoria può avere la capacità i memorizzare 4 o 8 bit(un byte)in questo caso è detta memoria a 16x8. Di conseguenza avrà otto linee di uscite per i dati. Le memorie si classificano anche in volatili e non volatili. Nelle volatili la memorizzazione è solo temporanea, di queste ne fanno parte le memorie RAM a lettura e scrittura. Mentre nelle memorie non volatili la memorizzazione è permanente, cioè l'informazione rimane per un tempo illimitato, un esempio di tali memorie sono le memorie ROM (Ready only memory). Pag. 3 di 10

Connessioni memorie Qualsiasi memoria sarà dotata delle linee di indirizzo, che sono degli ingressi, che consentono di selezionare la parola a cui si vuole accedere, e di linee dati su cui viene letto-scritto il dato, queste sono sia di ingrsso che di uscita. Esisteranno anche altre linee di ingresso che servono ad indicare il tipo di operazione (lettura-scrittura se sono supportate entrambe le attività) che si sta compiendo sulla memoria, ed altre linee che controllano lo stato dell'integrato oltre ai piedini di alimentazione del circuito stesso. Memorie ROM Le memorie ROM sono realizzate per immagazzinare dati non soggetti a modifiche, cioè le informazioni che essa contiene possono essere solo lette e quindi non è possibile alterarne il contenuto che viene impostato durante il processo di costruzione dell'integrato stesso. Esistono però memorie a sola lettura che possono anche essere programmate dall'utente stesso con tecniche varie. Esse costituiscono la classe delle ROM programmabili. L'architettura di una ROM è di tipo unidimansionale se c'è un solo decodificatore di indirizzo che seleziona direttamente la cella. Per le ROM a capacità elevate vengono utilizzate le memorie di tipo matriciale bidimensionale. Nel disegno è rappresentata una ROM da 512x4.(2048 bit organizzati in parole da 4 bit). L'elemento memorizzatore è costituito da 64 righe e 8 colonne e ciascuna locazione è costituita da 4 celle di un bit. Il decodificatore di riga seleziona (con gli Pag. 4 di 10

ingressi A0-A5 ) una delle 64 righe. La colonna da cui deve essere prelevato il dato è selezionata dagli altri tre bit di indirizzo (A6A7A8) che controllano un multiplexer da 8 a 1. Ponendo ad esempio A6A7A8=101 (in binario 5) i mux selezioneranno ciascuno la quinta colonna, le quali intersecheranno la riga già selezionata e preleveranno il dato. Le uscite dei mux rappresentano il dato di 4 bit. ROM Programmabili Alla famiglia delle ROM programmabili appartengono diversi tipi di memorie che vengono tra di loro distinte in base possibilità di scriverle per una volta o per più volte e alla tecnica necessaria per la loro cancellazione. Alla famiglia delle ROM programmabili solo per una volta appartengono, oltre alle ROM propriamente dette il cui valore memorizzato nelle singole celle è impostato dal costruttore del dispositivo, le PROM in cui i valori memorizzati nelle celle sono impostati attraverso una apposita macchina programmatrice che ne altera il valore iniziale in modo indelebile. Le ROM programmabili più volte vengono ulteriormente divise tra di loro in base alla tecnica necessaria per riportarle allo stato iniziale precedente alla loro programmazione; esistono due categorie fondamentali di queste memorie: quelle cancellabili attraverso raggi ultravioletti e quelle cancellabili elettricamente. Alla prima categoria appartengono le EPROM in cui la tecnica di cancellazione consiste nell'esposizione del chip ai raggi ultravioletti, attraverso una finestrella trasparente praticata sulla faccia superiore del contenitore. Alla famiglia delle ROM cancellabili elettricamente appartengono le EEPROM che consentono, attraverso opportuni impulsi elettrici, una cancellazione selettiva delle singole celle; sostanzialmente simili sono le EAROM ormai in disuso per le maggiori complessità elettriche rispetto alle EEPROM. Una ulteriore classe di memorie programmabili e cancellabili elettricamente è costituita dalle NVRAM costituite essenzialmente da una RAM e da una EEPROM abbinate in modo che il contenuto della RAM venga copiato nella EEPROM ogni volta che la tensione di alimentazione del chip scende al di sotto di un certo valore. Pag. 5 di 10

Memorie RAM Le memorie RAM sono invece sostanzialmente diverse in quanto il loro contenuto può essere letto ed anche scritto, senza l'ausilio di macchine programmatrici, utilizzando i relativi piedini del circuito integrato; il contenuto della RAM permane solo fino a quando esiste tensione di alimentazione, in assenza della quale il contenuto viene perso. Le RAM vengono utilizzate laddove ci sia la necessità di alterarne il contenuto, mentre le ROM verranno utilizzate per mantenere dei dati costanti. Le RAM sono divise in due grandi famiglie: le RAM statiche e le RAM dinamiche che differiscono tra di loro per la tecnica con cui vengono realizzate. Le RAM statiche sono costituite essenzialmente da tante celle elementari di memoria di un bit costituite ognuna da un latch; nelle memorie RAM dinamiche la cella elementare di memoria è costituita da un condensatore che viene caricato oppure scaricato a seconda del livello logico che deve mantenere. A causa delle correnti di fuga dei condensatori dopo un certo tempo il valore logico può essere perso e questo richiede una riscrittura periodica di ogni cella; questa operazione, che è sempre necessaria nelle RAM dinamiche, prende il nome di refresh (rinfresco). Pag. 6 di 10

Microprocessore Un microprocessore o CPU è in circuito integrato complesso che è in grado di svolgere parecchie attività, ed è costituito essenzialmente da tre blocchi: l'unità di controllo, l'unità aritmetico-logica (ALU) e dai registri. Essi sono collegati da un bus interno Indirizzi o Dati a seconda del collegamento tra le unità. L'unità di controllo provvederà ad abilitare al funzionamento i vari blocchi circuitali previsti per ogni fase; nell'unità aritmetico-logica verranno eseguite le varie operazioni matematiche e logiche, mentre i registri sono delle locazioni di memoria interne alla CPU. Unità Aritmetico-Logica L'unita aritmetico-logica ALU è un sistema capace di eseguire operazioni arimetiche con due numeri binari che possono essere a quattro, otto, sedici, trentadue bit ma anche di eseguire funzioni logiche di due variabili. Il modo di funzionamento(aritmetico oppure logico) viene determinato da un opportuno ingresso chiamato ingresso di modo, mentre la funzione che si vuol eseguire viene scelta attraverso degli ingressi chiamati di selezione. Gli ingressi di selezione saranno tanti quanti ne sono necessari per determinare quale operazione verrà eseguita sui due operandi; ad esempio se l'alu può eseguire sedici tipi differenti di operazioni saranno necessari quattro ingressi di selezione. Saranno inoltre presenti tanti ingressi quanti ne servono per ciascun operando e tante uscite quante ne sono necessarie per il risultato. Pag. 7 di 10

Unità di Controllo L'unità di controllo è il circuito che provvede ad abilitare al funzionamento i blocchi circuitali previsti per ogni fase. La temporizzazione delle azioni che vengono svolte dall'unità di controllo è determinata dal segnale di clock mentre le azioni stesse sono determinate dal tipo di istruzione che è in corso di esecuzione; le istruzioni che devono essere eseguite sono prelevate dal registro delle istruzioni (IR) e decodificate all'interno dell'unità di controllo. A seconda dell'istruzione che è in corso di esecuzione la logica di controllo provvede ad attivare e controllare le opportune linee che costituiscono il bus controlli che controlla il funzionamento dei vari dispositivi; dall'unità di controllo partono anche le linee che gestiscono l'utilizzo dell'alu. Registri della CPU All'interno del microprocessore esistono delle locazioni di memoria chiamate registri che possono essere o non essere accessibili al programmatore ma il cui contenuto può variare a seconda dell'istruzione che è in corso di esecuzione. Il numero di registri, il loro uso, e la loro dimensione variano a seconda del tipo di microprocessore ma in una descrizione generale ne possiamo identificare alcuni. Il registro PC (contatore di programma) è il registro che contiene l'indirizzo dell'istruzione successiva che deve essere eseguita; la presenza del contatore di programma è fondamentale Pag. 8 di 10

all'esecuzione dei programmi infatti per accedere alla prossima istruzione è necessario portarla dalla memoria esterna all'interno del microprocessore. Una volta che l'istruzione che deve essere eseguita è stata individuata attraverso il PC, viene prelevata dalla memoria esterna e portata all'interno del microprocessore dove viene depositata nel registro IR (registro di istruzione) per essere in seguito decodificata. Il registro MAR (registro indirizzi di memoria) conterrà l'indirizzo dell'istruzione che deve essere prelevata dalla memoria oppure del dato che deve essere trasferito da o verso la memoria o i dispositivi di I/O attraverso il Bus Indirizzi; quando è in corso il prelevamento di una istruzione esso copia il PC altrimenti esso contiene l'indirizzo su cui si sta compiendo una determinata operazione. Il registro dati di memoria (MDR) provvede allo scambio sincronizzato di dati tra microprocessore e memoria o dispositivi di I/O e può essere gestito sia dal microprocessore che dai dispositivi esterni attraverso il bus dei dati a cui risulta essere collegato. Il registro di stato (SR) memorizza un insieme di bit detti di flag che forniscono indicazioni sull'esito di una determinata operazione aritmetica o logica eseguita dall'alu del microprocessore; il significato di ciascun bit dipende dal tipo di microprocessore in uso. Bus Esterni Per comunicare con l'esterno la CPU utilizza tre bus: il bus indirizzi, il bus dati ed il bus dei controlli. Il bus dati verrà utilizzato per inviare o ricevere dati verso o da circuiti esterni come memorie o circuiti di ingresso uscita; il bus indirizzi sarà utilizzato per la selezione di una particolare locazione di memoria esterna alla CPU o per indirizzare un particolare dispositivo, mentre il bus dei controlli è costituito da un insieme particolare di linee addette al controllo dei dispositivi. Il bus dati normalmente è costituito da un numero di linee pari al numero di bit che costituiscono le parole che possono essere scambiate tra il microprocessore e i dispositivi esterni tramite una unica operazione; ad esempio se il microprocessore gestisce parole di un byte si parlerà di microprocessore ad otto bit ed il bus dati sarà costituito da otto linee che sono utilizzabili sia come ingresso sia come uscita. Il bus indirizzi sarà costituito normalmente da un numero di linee pari al numero di bit necessari per potere indirizzare completamente la memoria esterna; ad esempio se il microprocessore può indirizzare fino a 65536 locazioni di memoria il bus indirizzi sarà costituito da sedici linee che risultano normalmente essere linee di uscita. Il bus dei controlli è costituito da un numero di linee il cui numero varia a seconda del tipo di microprocessore e la cui funzionalità dipende dalla implementazione dello stesso; il bus dei controlli contiene sia linee di ingresso che di uscita che vengono utilizzate per il controllo dei dispositivi esterni. Pag. 9 di 10

Struttura Istruzioni Le istruzioni sono costituite da una sequenza di byte in cui il primo viene chiamato codice dell'istruzione (Op Code) ed indica l'operazione da compiere, mentre i byte seguenti possono essere sia dati su cui agire od indirizzi a cui accedere, ciò dipende dal tipo di indirizamento; il codice dell'istruzione viene immesso in un registro, interno alla CPU, chiamato registro delle istruzioni IR per poi essere adeguatamente interpretato dall'unità di controllo. Terminata l'istruzione corrente ne viene prelevata un'altra per poi essere eseguita. Per un funzionamento utile è necessario che il microprocessore esegua automaticamente una sequenza di operazioni. Ciò si ottiene inserendo nella memoria esterna una sequenza di istruzioni relative alle operazioni che debbono essere eseguite ed ai dati su cui si agisce; tali istruzioni vengono richiamate, una alla volta, tramite il contatore di programma Program Counter, che invia sul bus indirizzi l'indirizzo dell'istruzione da eseguire o degli operandi a cui accedere. Sistema con CPU In un sistema a microprocessore sono presenti il circuito di clock, che genere un segnale ad onda quadra per la temporizzazione delle operazioni, il circuito di reset, che genera un impulso necessario all'inizializzazione della CPU, una memoria ROM, che contiene istruzioni e dati necessari ad ogni accensione del sistema, una memoria RAM, che conterrà istruzioni o dati che possono essere variati, ed una serie di circuiti, chiamati chip di ingresso-uscita, necessari al funzionamento del sistema. Pag. 10 di 10