Architettura dei calcolatori



Documenti analoghi
Architettura dei calcolatori

Architettura hardware

Il processore. Il processore. Il processore. Il processore. Architettura dell elaboratore

C. P. U. MEMORIA CENTRALE

Esame di INFORMATICA

Architettura del calcolatore

All interno del computer si possono individuare 5 componenti principali: SCHEDA MADRE. MICROPROCESSORE che contiene la CPU MEMORIA RAM MEMORIA ROM

Struttura del calcolatore

Introduzione all'architettura dei Calcolatori

CPU. Maurizio Palesi

Architettura dei computer

Lezione 3: Architettura del calcolatore

Architettura di un calcolatore

Architettura dei calcolatori I parte Introduzione, CPU

Calcolo numerico e programmazione Architettura dei calcolatori

Parte II.2 Elaboratore

NOZIONI ELEMENTARI DI HARDWARE E SOFTWARE

Informatica - A.A. 2010/11

Funzionalità di un calcolatore

ARCHITETTURA DELL ELABORATORE

Tecnologia dell Informazione

Contenuti. Visione macroscopica Hardware Software. 1 Introduzione. 2 Rappresentazione dell informazione. 3 Architettura del calcolatore

In un modello a strati il SO si pone come un guscio (shell) tra la macchina reale (HW) e le applicazioni 1 :

Laboratorio di Informatica

Il calcolatore elettronico. Parte dei lucidi sono stati gentilmente forniti dal Prof. Beraldi

SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI

Laboratorio di Informatica

Architettura di un calcolatore: introduzione

Collegamento al sistema

ARCHITETTURA DEL CALCOLATORE

Il Processore: i registri

CONCETTI BASE dell'informatica Cose che non si possono non sapere!

Corso di Calcolatori Elettronici I A.A Il processore Lezione 18

Memoria Secondaria o di Massa

Unità Periferiche. Rete Di Controllo

Conoscere i diversi tipi di memoria centrale presenti nel computer, quali: RAM (randomaccess memory), ROM (read-only memory)

Il Personal Computer

La memoria centrale (RAM)

Corso: Informatica+ Andrea Cremonini. Lezione del 20/10/2014

RETI E SISTEMI INFORMATIVI

UNITÀ DI ELABORAZIONE (CPU) UNITÀ DI ELABORAZIONE (CPU) Opcode OpCode Operazione

COMPITO DI INFORMATICA

Informatica per la Storia dell Arte. Anno Accademico 2014/2015

Informatica di base. Hardware: CPU SCHEDA MADRE. Informatica Hardware di un PC Prof. Corrado Lai

ECDL MODULO 1 Concetti di base della tecnologia dell informazione. Prof. Michele Barcellona

Vari tipi di computer

I componenti di un Sistema di elaborazione. Memoria centrale. È costituita da una serie di CHIP disposti su una scheda elettronica

Architettura hardware

Dispensa di Informatica I.1

L architettura di riferimento

Dispensa di Fondamenti di Informatica. Architettura di un calcolatore

1.4b: Hardware. (Memoria Centrale)

La macchina di Von Neumann. Archite(ura di un calcolatore. L unità di elaborazione (CPU) Sequenza di le(ura. Il bus di sistema

Corso di Sistemi di Elaborazione delle informazioni

Gerarchia delle memorie

Componenti di base di un computer

ARCHITETTURE MICROPROGRAMMATE. 1. Necessità di un architettura microprogrammata 1. Cos è un architettura microprogrammata? 4

1.4a: Hardware (Processore)

- Algoritmi ed esecutori di algoritmi - ALGORITMI MACCHINA DI VON NEUMANN

SOMMARIO. La CPU I dispositivi iti i di memorizzazione Le periferiche di Input/Output. a Montagn Maria

Sistemi Elettronici #1. Sistemi Elettronici. Definizioni e concetti generali. Sistemi Elettronici Laurea Triennale in Elettronica A.A.

L architettura del calcolatore (Prima parte)

Software relazione. Software di base Software applicativo. Hardware. Bios. Sistema operativo. Programmi applicativi

Laboratorio di Informatica Corso di Laurea in Matematica A.A. 2007/2008

DMA Accesso Diretto alla Memoria

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro

Il processore - CPU (CENTRAL PROCESSING UNIT)

Organizzazione della memoria

introduzione I MICROCONTROLLORI

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

Concetti fondamentali della Tecnologia Dell informazione Parte prima

LABORATORIO di INFORMATICA

Architettura hw. La memoria e la cpu

Architettura del Personal Computer AUGUSTO GROSSI

Architettura di un computer

23/02/2014. Dalla scorsa lezione. La Macchina di Von Neumann. Uomo come esecutore di algoritmi

Von Neumann. John Von Neumann ( )

Il sistema di I/O. Hardware di I/O Interfacce di I/O Software di I/O. Introduzione

Input/Output. Moduli di Input/ Output. gestiscono quantità di dati differenti a velocità diverse in formati diversi. n Grande varietà di periferiche

L HARDWARE parte 1 ICTECFOP@GMAIL.COM

Ferrante Patrizia Ghezzi Nuccia Pagano Salvatore Previtali Ferruccio Russo Francesco. Computer

STRUTTURE DEI SISTEMI DI CALCOLO

Architettura della CPU e linguaggio assembly Corso di Abilità Informatiche Laurea in Fisica. prof. ing. Corrado Santoro

Elementi di informatica

IL COMPUTER APPUNTI PER LEZIONI NELLE 3 CLASSI LA MACCHINA DELLA 3 RIVOLUZIONE INDUSTRIALE. A CURA DEL Prof. Giuseppe Capuano

Scuola Secondaria di Primo Grado Anna Frank Nome Cognome classe anno sc. 2008/09 INFORMATICA

COME È FATTO IL COMPUTER

Il processore - CPU. PDF created with pdffactory trial version

Il SOFTWARE DI BASE (o SOFTWARE DI SISTEMA)

Lez. 3 L elaborazione (II parte) Prof. Pasquale De Michele Gruppo 2

Corso di Informatica

Hardware, software e periferiche. Facoltà di Lettere e Filosofia anno accademico 2008/2009 secondo semestre

Alfabetizzazione Informatica. Prof. Giuseppe Patti

Il Software. Il software del PC. Il BIOS

Istituto tecnico commerciale e per geometri Enrico Fermi

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

Architettura dei calcolatori II parte Memorie

Corsi Speciali Abilitanti Indirizzo 2: Fisico-Matematico Modulo Didattico: Elementi di Informatica Classi: 48/A TEST D INGRESSO

Informatica di Base - 6 c.f.u.

SISTEMI INFORMATIVI AZIENDALI

Transcript:

Architettura dei calcolatori DOTT. ING. LEONARDO RIGUTINI DIPARTIMENTO INGEGNERIA DELL INFORMAZIONE UNIVERSITÀ DI SIENA VIA ROMA 56 53100 SIENA UFF. 0577234850-7102 RIGUTINI@DII.UNISI.IT HTTP://WWW.DII.UNISI.IT/~RIGUTINI/

La macchina di Von Neuman

La macchina di Von Neumann L architettura della maggior parte degli elaboratori elettronici è organizzata secondo il modello di Von Neuman, dal nome del ricercatore Americano che durante la 2 Guerra Mondiale dedicò i suoi studi alla progettazione dei primi calcolatori elettronici La macchina di Von Neuman è costituita da quattro elementi funzionali fondamentali: - CPU (Central Processin Unit) - Memoria centrale - Il Bus di sistema - Le periferiche

L architettura di Von Neuman CPU Memoria centrale BUS di sistema QuickTime and a decompressor are needed to see this picture. QuickTime and a decompressor are needed to see this picture. tastiera mouse memoria di massa monitor Periferiche

La memoria centrale

La memoria centrale Il microprocessore possiede un area per la memorizzazione dei dati, di dimensioni molto limitate, dove conserva le informazioni attualmente elaborate o i risultati intermedi di un elaborazione: memoria cache e registri Questa piccola area di memoria non è sufficiente per eseguire programmi I PC dispongono di vari tipi di memoria una gerarchia di memorie per poter ospitare i dati e i programmi La memoria centrale (o memoria di sistema), cui può accedere il microprocessore mediante il bus degli indirizzi, è una combinazione di RAM e ROM 6

La memoria centrale RAM, Random Access Memory il microprocessore può leggere e scrivere informazioni dalla RAM; è una memoria volatile, che conserva le informazioni solo finché non si conclude la sessione di lavoro ROM, Read Only Memory il contenuto non può essere modificato; è una memoria permanente, poiché i dati in essa contenuti vengono conservati anche a computer spento Il software fondamentale è contenuto nella ROM (es., controllo hardware all accensione) 7

La memoria centrale Ciascuna posizione di memoria ha un indirizzo unico Nota: Tutti i programmi applicativi ed i dati attualmente in elaborazione devono essere residenti in RAM; quando la RAM è satura, parte del contenuto informativo viene scaricato in un area di swap sul disco fisso Una RAM grande permette di non ricorrere a salvataggi temporanei frequenti sull unità di memoria di massa, operazione che comporta un sensibile decadimento delle prestazioni 8

La memoria centrale La memoria centrale è destinata ad accogliere il materiale di lavoro su cui l elaboratore opera: - Dati ed istruzioni Tutte le operazioni che l elaboratore compie ed i dati su cui esse sono effettuate sono lette e scritte nella memoria centrale: - Lettura dell istruzione ed eventualmente del dato - Esecuzione - Salvataggio risultato Paragone con la mente umana: - Memoria centrale informazione a breve o medio termine - Memoria di massa informazione a lungo termine

La memoria centrale La memoria centrale è in genere di dimensioni ridotte a causa del maggiore costo rispetto alla memoria di massa: - Più veloce maggiore costo E una memoria volatile, ovvero i dati memorizzati vanno persi in caso di assenza di corrente: è necessario quindi caricare l informazione dalla memoria di massa prima che possa essere utilizzata È necessario poi salvarla nella memoria di massa se essa dovrà essere disponibile in un secondo momento Durante la lettura dei dati dalla memoria di massa a quella centrale, è necessario stabilire in che posizione essi vadano memorizzati

La memoria centrale Concettualmente è una sequenza di celle di memoria: - ogni cella contiene una word Le parole sono sequenze di bit che hanno significati diversi a seconda dei casi: - dati, istruzioni, indirizzi ecc Le celle di memoria di un calcolatore hanno tutte la stessa capacità, viceversa calcolatori diversi possono avere dimensioni differenti per le celle di memoria Le celle hanno comunque lunghezza multipla della potenze del 2 di un byte: - 8,16,32, 64 bit (1,2,4,8 bytes)

Indirizzamento della memoria Ciascuna cella di memoria può essere indirizzata: - con questo termine si intende la capacità dell elaboratore di accedere a tale cella tramite un indirizzo in memoria L indirizzo di una cella è semplicemente la sua posizione relativa rispetto alla prima cella della memoria centrale, cui viene attribuito indirizzo 0

Indirizzamento della memoria Ogni indirizzo è una parola binaria di k bit: - Quindi solamente 2 k celle di memoria possono essere indirizzate Si dice SPAZIO DEGLI INDIRIZZI, il range di indirizzi che possono essere utilizzati dal calcolatore: - 10 bit 2 10 (1024) celle di memoria - 20 bit 2 20 (1048576) celle di memoria - Ecc

Lettura e scrittura della memoria L indirizzamento avviene tramite un opportuno registro detto registro degli indirizzi che si trova nella CPU: - In generale un registro è un chip capace di memorizzare una sequenza di bit Una volta indirizzata la memoria può essere letta e scritta: - Entrambe le operazioni utilizzano un altro registro nella CPU dove memorizzare il dato presente nella cella di memoria (registro dati)

Lettura e scrittura della memoria Lettura dalla memoria: - La CPU memorizza nel registro dati il contenuto della cella indirizzata dal registro indirizzi (LOAD) Scrittura in memoria: - La CPU memorizza nella cella indirizzata dal registro indirizzi il contenuto del registro dati (STORE)

Lettura e scrittura La cella di memoria ed il registro dati devono avere la stessa dimensione 0 h=16 bit k=10 Cella di memoria indirizzata STORE LOAD h=16 bit Registro indirizzi 1023 Registro dati

ROM e BIOS Come già accennato, normalmente la memoria centrale è una memoria volatile: - Il contenuto sparisce una volta tolta la corrente Molte volte però è necessario memorizzare in memoria dati in modo non volatile Per tali scopi vengono utilizzate memorie ROM(Read Only Memory): - velocità paragonabili a quelle della memroia RAM - Possibilità di mantenere i dati anche in caso di mancanza di alimentazione

ROM e BIOS Il BIOS: - è il primo software caricato all avvio del PC - il S.O. non è stato ancora caricato ed è quindi impossibile leggere dati dalla memoria di massa - Deve risiedere in una memoria non volatile Per questo il BIOS è memorizzato in memorie ROM L acronimo Read Only Memory ad oggi non è più veritiero dato che molte ROM sono riprogrammabili, ovvero il programma memorizzato in esse può essere cambiato: - aggiornamento del BIOS

Il BUS

Il bus Il bus di sistema è costituito da un insieme di connessioni elementari, o linee, lungo le quali viene trasferita informazione Collega fra loro la CPU, la memoria e le varie periferiche di ingresso/uscita: topologicamente il BUS è un collegamento aperto, cioè non limitato ad un estremo ad esso si collegano le varie unità funzionali In ogni istante di tempo, però, il bus può collegare solamente due unità. Se le altre hanno bisogno di utilizzare il BUS, devono attendere che esso sia liberato dalla comunicazione corrente : Una delle due unità collegate dal BUS è sempre la CPU

Il bus Il bus è sempre sotto il controllo della CPU che seleziona l interconnessione da attivare ed indica l operazione da compiere: Le varie unità entrano in azione solo se selezionate dalla CPU Comunque ultimamente sono state introdotte periferiche intelligenti che riescono ad utilizzare il BUS senza richiedere l intervento della CPU (maggiore velocità) In tale situazione si dice che la CPU funziona da master mentre le altre unità assumono il ruolo di slave : architettura master-slave Le linee del BUS vengono divise in tre categorie a seconda della loro funzione: bus dati, bus indirizzi, bus controllo

Il bus Il bus dati: Traferisce dati dall unità master all unità slave o viceversa Nell operazione STORE di memorizzazione dati nella memoria centrale, per esempio, il dati transita nel bus dati in direzione CPU Memoria Il bus indirizzi: Su questo bus le informazioni sono gli indirizzi di memoria Per esmepio, trasferisce l indirizzo contenuto nel registro indirizzi alla memoria centrale in una operazione di STORE Il bus controllo: Trasferisce il codice dell operazione da eseguire alle unità slave In una operazione di STORE, la memoria deve essere avvertita di memorizzare il dato nella locazione corretta

Il bus 2 Quando il microprocessore deve leggere dati dalla memoria, segnala la locazione desiderata sul bus indirizzi e quindi li legge sul bus dei dati L esatta sincronizzazione dei bus degli indirizzi e di trasferimento dati è compito del bus di controllo BUS Dispositivi di Input/Output Memoria CPU principal I/O I/O I/O e Esempio: il bus degli indirizzi è formato da un numero di fili pari al numero di bit dell indirizzo: ogni linea di indirizzo collega un piedino del microprocessore a un piedino del dispositivo di memoria Indirizzi Dati Controll o 23

Il bus Esempio: il bus è utilizzato per trasferire dati fra le unità funzionali - L unità che inizia il trasferimento (in genere la CPU) fornisce l indirizzo, che individua univocamente il dato, sulle linee del bus indirizzi, e configura le linee del bus controllo, inviando un comando al dispositivo che contiene il dato (es. READ) - Il dato da trasferire è reso disponibile sul bus dati e viene ricopiato nel dispositivo destinatario Indirizzo a 32 bit (32 fili) 0008AB38 CPU 0008AB38 Memoria principale 0008AB38 CPU 5F66B102 Memoria principale 5F66B102 0008AB38 5F66B102 READ=1 MEM=1 READ=1 MEM=1 5F66B102 Dato a 32 bit (32 fili) trasferito dalla memoria principale alla CPU

La CPU

La CPU La CPU, Central Processing Unit, è l unità di elaborazione centrale QuickTime and a decompressor are needed to see this picture. Le funzioni della CPU vengono integrate in un componente chiamato microprocessore La CPU ha una frequenza di lavoro detta freq. di clock N GHz: N miliardi di impulsi al secondo determinano la velocità del computer

La CPU La funzione della CPU è quella di eseguire i programmi contenuti nella memoria centrale La CPU è formata da varie unità funzionali: - Unità di controllo - Orologio di sistema - Unità Aritmetico-Logica La CPU contiene inoltre vari registri su cui effettua le operazioni richieste registri PC Program Counter BUS ALU CU IR Instruction Register

Unità funzionali della CPU Unità di controllo (CU): È responsabile del prelievo e della decodifica delle istruzioni Si occupa inoltre di inviare i segnali di controllo sul bus per i trasferimenti o le elaborazioni necessarie per l esecuzione dell istruzione decodificata Orologio di sistema (clock): Sincronizza le operazioni rispetto ad una data frequenza. E un parametro molto famoso per le CPU (Pentium 3GHz) ALU (Aritmetic and Logic Unit): Realizza le operazioni aritmetico/logiche eventualmente richieste per l esecuzione dell istruzione decodificata dalla CU Lavora sui dati presenti nei registri interni

Registri La CPU necessita di oggetti in cui immagazzinare temporaneamente i dati/istruzioni su cui sta lavorando: i registri I registri possono essere immaginati come celle di memoria separate a lettura e scrittura molto rapida

Registri Ogni registro ha una sua funzione propria - Registro dati (DR, h bit) e registro indirizzi (AR, k bit), contengono il dato e l indirizzo di memoria su cui effettuare l operazione corrente - Registro istruzione corrente (CIR, h bit), contiene istante per istante l OPCODE dell istruzione in esecuzione in quel momento - Contatore di programma (PC, k bit), contiene l indirizzo in memoria della prossima istruzione del programma in esecuzione - Registro interruzioni (INTR), contiene informazioni relative allo stato di funzionamento delle periferiche. Se una periferica deve contattare la CPU, segnala questo fatto nel registro INTR. Es. fine di una stampa

Registri - Registri per la ALU (normalmente indicati con A e B), contengono gli operandi ed il risultato delle elaborazioni svolte dalla ALU - Un numero elevato di registri di lavoro, molto simili ad una memoria in miniatura in cui la CPU memorizza le istruzioni ed i dati utilizzati più di recente per un accesso più rapido in futuro (CACHE) - Registro di stato (SR), è un particolare registro in cui ogni bit assume un significato diverso, relativo al risultato delle operazione svolte dalla ALU: Bit di carry, indica il riporto in una operazione aritmetica Bit zero, indica la presenza di un valore nullo nel registro A Bit di segno, riporta il segno del risultato di un operazione aritmetica Bit di overflow, rileva la condizione di overflow che si verifica quando il risultato dell ultima operazione della ALU supera il valore rappresentabile nel registro A (2 h )

Registri Registro di stato (SR) Program Counter (PC) INTR A B ALU Registro istruzione corrente (CIR) Other 1. Other N Clock CU Registro dati (DR) Registro indirizzi (AR)

Instruction Set Le istruzioni ed i dati sono codificate in binario La CPU ha un set di istruzioni predefinito in fase di progetto: - Ogni istruzione è individuata da un codice operazione (OP_CODE) - Alcune operazioni richiedono dati su cui operare e quindi hanno bisogno di operandi

Instruction Set Le istruzioni macchina ed i dati sono quindi rappresentati da bytes: - Architetture a 8,16,32 o 64 bit NB: - con 8 bits (1 byte) si hanno al massimo 2 8 (255) istruzioni diverse - con 16 bits (2 byte) si hanno al massimo 2 16 (65536) istruzioni diverse - ecc

Le periferiche

Le periferiche Quando utilizziamo un PC è necessario poter interagire con esso: - Digitare testo, visualizzare l output, stampare, ascoltare suoni. Tutte queste operazioni sono svolte da parti separate del calcolatore ed esterne alla CPU: - Le periferiche di I/O (input/output)

Le periferiche Un periferica può essere di due tipi: - stupida, si limita ad eseguire un operazione una volta e comandata dal processore (es. il monitor) - intelligente, in grado di elaborare a sua volta i dati inviati. Es. le schede video accelerate rielaborano la grafica vettoriale inviata dalla CPU e costruiscono le immagini da inviare al video Delegando molte operazioni a periferiche intelligenti, la CPU può guadagnare tempo per effettuare altre operazioni: - Aumento delle prestazioni globali dell elaboratore

Le interfacce I/O Per poter colloquiare con una periferica, la CPU dovrebbe conoscere le specifiche della periferica: - in questo modo, però, ogni tipo di periferica od eventualmente ogni modello potrebbe avere modi di comunicazione differenti, e la CPU dovrebbe conoscerli tutti Per evitare questa complicazione si usano le interfacce di I/O, ovvero componenti che gestiscono le periferiche indipendentemente dal modello di quest ultime

Le interfacce I/O Le interfacce possono essere molto diverse tra loro a seconda della tipologia delle periferiche che si connettono: - SCSI, AGP, PCI, USB, FIREWIRE ecc Le interfacce mostrano alla CPU una interfaccia standard (o quasi), in modo che la CPU non si debba preoccupare del modello di periferica ma solo del tipo di interfaccia a cui essa è attaccata Le interfacce possono essere half-duplex o full-duplex: - Half-duplex: comunicazione in una singola direzione, - Full-duplex: comunicazione in entrambe le direzioni Esempio di half-duplex è l interfaccia vga per il monitor

Interfaccia standard Una interfaccia I/O standard è composta in genere dai seguenti elementi: - Un registro dati della periferica (PDR), utilizzato per scambiare dati con la periferica: se la comunicazione con la periferica è full-duplex, vengono impiegati due registri dati, uno per la ricezione ed uno per l invio - Un registro di comando per la periferica (PCR), in cui è memorizzato il comando che la periferica stessa doverà eseguire - Un registro di stato della periferica (PSR), che contiene le informazione sullo stato della periferica (es. stampante pronta a ricevere, occupata o errore)

Interfaccia standard Il registro dati è collegato al BUS dati, mentre il registro di comando è collegato al BUS di controllo Il registro PSR, non sempre viene utilizzato, poiché molte volte lo stato è segnalato dalla interfaccia stessa alla CPU tramite gli interrupt ed il registro INTR nella CPU stessa Registro dati Rx Registro dati Tx Periferica Registro Comandi I/O Interface

Le schede di espansione 42 Le schede di espansione espandono le funzionalità della scheda madre per pilotare dispositivi interni o esterni Le più comuni sono scheda video: su cui si connette il monitor; dalla scheda video dipendono il numero di colori del monitor, la risoluzione massima, la velocità grafica, etc. scheda audio: attraverso cui il computer è in grado di produrre o registrare suoni scheda di rete: per le connessioni dirette alla rete (senza modem)

Le porte 1 Il computer deve comunicare i dati che elabora 43 Le porte di I/O sono una serie di prese, localizzate sul lato posteriore del PC, utilizzate per collegare alla macchina tutti i dispositivi esterni (monitor, tastiera, mouse, etc.)

Le porte 2 44 Porte sulla scheda madre: Porte PS/2 per il collegamento del mouse e della tastiera (una dedicata al mouse, l altra alla tastiera; non si possono invertire) Porta Seriale per il modem, o per dispositivi che non richiedono un flusso di dati molto veloce Porta Parallela si usa quasi sempre per la stampante, ma è adatta per qualunque dispositivo che richieda un flusso di dati più veloce rispetto alla capacità della porta seriale Porta USB (Universal Serial Bus ) è adatta per connettere al PC qualunque tipo di dispositivo (USB); la tecnologia USB consente di creare catene di dispositivi collegati tutti su un unica porta (fino a 127) e consente il collegamento a caldo (cioè a computer acceso) La differenza fra i vari tipi di connettori va al di là delle loro dimensioni e della quantità di piedini presenti, e riguarda il modo in cui i dati vengono trasmessi da e per le periferiche

La porta seriale 1 45 Nella porta seriale, i dati vengono inviati un bit alla volta: i bit viaggiano in serie, l uno dopo l altro, sullo stesso filo; per trasmettere un byte, sono necessari otto invii La porta seriale consente il transito dei dati in entrambe le direzioni, sia dal computer alla periferica che viceversa L utilizzo principale della seriale avviene nel caso di collegamenti con periferiche attive, come mouse, modem, scanner, penne ottiche Il connettore della porta seriale ha 9/25 punti di contatto (pin): uno serve per i bit di trasmissione, uno per i dati, uno per il collegamento a terra, gli altri per lo scambio di particolari segnali fra le periferiche ed il PC I segnali riguardano, ad esempio, lo stato di pronto a ricevere della periferica o del computer e quello di richiesta di invio

La porta seriale 2 Le porte seriali sono identificate dalla sigla RS232C (lo standard imposto dall Electronics Industries Association) Il traffico dei dati attraverso la porta seriale può avvenire a diverse velocità; in particolare, poiché spesso lo scambio dei dati avviene a distanza di qualche metro, è necessario prevedere anche lo scambio di segnali di controllo che garantiscano la correttezza della trasmissione (l interferenza di macchinari elettrici potrebbe danneggiare il flusso dei bit durante il loro viaggio lungo il cavo) La velocità di trasmissione, la struttura dei pacchetti di bit inviati ed il tipo di controllo effettuato, determinano il protocollo usato nella trasmissione dei dati; i diversi protocolli sono stabiliti internazionalmente 46

La porta parallela Nella porta parallela, i dati vengono trasmessi un byte alla volta: i bit viaggiano parallelamente su otto fili La porta parallela consente il transito in una sola direzione: dal computer alla periferica; viene usata quasi esclusivamente per il collegamento con le stampanti I connettori della porta parallela hanno 25/36 pin, otto dei quali per l invio dei dati e gli altri per l invio e lo scambio di segnali (anche se non può ricevere dati, la porta parallela può ricevere segnali dalla periferica, come il segnale di occupato o quello di carta esaurita ) Le porte parallele sono spesso identificate con la scritta Centronics (la casa che ha pubblicato una specifica, divenuta uno standard di fatto) La trasmissione parallela non consente un controllo sull identità fra i dati trasmessi e quelli ricevuti: quindi, pur garantendo una maggiore velocità, la porta parallela permette solo collegamenti a breve distanza La trasmissione parallela non ha protocolli 47

Altri tipi di porta Porta Video per connettere il monitor al computer Porta di Rete per collegare la macchina direttamente ad una rete di computer, senza usare il modem; la presa RJ45 è uno standard di fatto Porta SCSI per dispositivi che richiedono un flusso di dati molto veloce (scanner, masterizzatore esterno, etc.); la tecnologia SCSI consente il collegamento di dispositivi a catena (fino a 7), ma non il collegamento a caldo 48

Esecuzioni di programmi

Esecuzioni di programmi Per iniziare l esecuzione di un programma, l elaboratore deve dapprima caricare in memoria la forma binaria del programma: - Una sequenza di parole binarie corrispondenti agli OP_CODE delle istruzioni macchina da effettuare e ai dati su cui operare Supponendo di iniziare dalla cella numero zero, l elaboratore acquisisce le istruzioni di programma dalla memoria e le esegue ripetendo una sequenza di operazioni nella CPU:

Esecuzioni di programmi Il programma è organizzato in due modi in memoria: - Una parte contiene la sequenza di istruzioni che formano il programma - Una parte contiene i dati su cui le istruzioni eseguono le operazioni

Esecuzioni di programmi L esecuzione di una istruzione si compone di tre fasi distinte: - L acquisizione dalla memoria centrale della istruzione (FETCH) - L interpretazione (DECODIFICA) - L esecuzione FETCH dell istruzione si svolge a sua volta in quattro fasi: Il contenuto del registro contatore viene trasferito nel registro indirizzi Lettura del contenuto della cella puntata da AR nel registro dati (DR) Il contenuto di DR viene trasferito nel registro di istruzione corrente (CIR)

Esecuzioni di programmi 1. FETCH (continua): Il valore del registro PC viene incrementato di 1, in modo da puntare alla cella di memoria contenente l istruzione seguente. Esistono tuttavia istruzioni particolari che fanno saltare l esecuzione del programma in modo non sequenziale (JUMP, JUMPE o JUMPNE): in tale situazione in PC può essere memorizzato un indirizzo differente da quello successivo a CIR. Questo genere di istruzioni sono dette branch 3. L interpretazione (o decodifica): - Questa fase comporta l analisi della istruzione corrente (CIR) per scoprire quale operazione deve essere eseguita - Viene analizzato solamente il contenuto del registro CIR

1. Fase di esecuzione: Esecuzioni di programmi - Questa fase è ovviamente differente per ogni operazione e dipende dall operazione stessa che deve essere effettuata - Le operazioni possibili sono molteplici e con il passare del tempo l instruction set è stato molto ampliato inserendo anche operazioni complesse (Es. radici quadrate, istruzioni grafiche). La possibilità di avere istruzioni complesse decodificate nell Instruction Set, ha generato due tipologie di processori: RISC (Reduced Instruction Set Controller) MAC CISC (Completed Instruction Set Controller) Intel

Esecuzioni di programmi 0100000000010000 leggi un valore in ingresso e ponilo nella cella numero 16 (variabile x) 0100000000010001 leggi un valore e ponilo nella cella numero 17 (variabile y) 0100000000010010 leggi un valore e ponilo nella cella numero 18 (variabile z) 0100000000010011 leggi un valore e ponilo nella cella numero 19 (variabile r) 0000000000010000 carica il registro A con il contenuto della cella 16 0001000000010001 carica il registro B con il contenuto della cella 17 0110000000000000 somma i contenuti dei dei registri A e B 0010000000010100 copia il contenuto del registro A nella cella 20 (risultato, variabile s) 0000000000010010 carica il registro A con il contenuto della cella 18 0001000000010011 carica il registro B con il contenuto della cella 19 0110000000000000 somma i contenuti dei registi A e B 0001000000010100 carica il registro B con il contenuto della cella 20 1000000000000000 moltiplica i contenuti dei registri A e B 0010000000010100 copia il contenuto del registro A nella cella numero 20 0101000000010100 scrivi in output il contenuto della cella numero 20 1101000000000000 arresta l esecuzione (HALT) spazio per la variabile x (cella 16) spazio per la variabile y (cella 17) spazio per la variabile z (cella 18) spazio per la variabile r (cella 19) spazio per la variabile s (cella 20)