Estratto del documento

I componenti di un calcolatore

I calcolatori hanno determinato una terza rivoluzione, la rivoluzione informatica. Essa continua e moltiplica le opportunità per i calcolatori ed applicazioni che nel passato recente consideravano come fantascienza. Le applicazioni sono le seguenti:

  • Sportelli bancari automatici, per distribuire banconote;
  • Calcolatori nelle automobili, per ridurre l'inquinamento;
  • Calcolatori portatili, permettendo di portarli ovunque;
  • Progetto genoma umano, per mappare le sequenze di DNA umano;
  • Rete estesa a livello nazionale.

Ogni aspetto di questa nuova tecnologia influenza la società, i progressi dell'hardware hanno permesso ai programmi di creare software utili. Comunicare con un sistema elettronico significa inviare dei segnali elettrici. I segnali che le macchine comprendono meglio sono quelli di "on" e "off", cioè acceso e spento. I due simboli che rappresentano queste lettere sono 0 e 1. Il linguaggio delle macchine è dato dalla numerazione binaria, o anche detto numerazione in base 2, ovvero che ciascuna lettera prende il nome di cifra binaria o bit. Un comando è detto istruzione, ed esse possono essere interpretate come numeri.

All'inizio tali notazioni erano tradotte a mano, ma il procedimento era troppo faticoso. Fu con l'aiuto delle stesse macchine, che i pionieri informatici inventarono i programmi per tradurre le notazioni simboliche in numeri binari. Il primo di questi venne chiamato "assemblatore" o "assembler". Il linguaggio assembler richiede che il programma scriva una linea di codice per ogni istruzione che la macchina deve eseguire.

Programmazione ad alto livello

I programmi che accettano notazioni più vicine al linguaggio naturale si chiamano "compilatori", ed i linguaggi che essi compilano sono detti "linguaggi di programmazione ad alto livello".

La programmazione ad alto livello offre diversi vantaggi:

  • Consente al programmatore di pensare in modo più naturale;
  • Incrementa la produttività dei programmatori;
  • Il programma generato è indipendente dal calcolatore per il quale viene generato.

Quando la programmazione diventò matura, alcuni programmatori si resero conto che utilizzare programmi vecchi, o già fatti era abbastanza inutile. E fu così che nacquero le librerie. Una delle prime "librerie di subroutine" fu ideata per permettere l'introduzione di sequenze di dati e l'esportazione dei risultati delle elaborazioni. Le librerie includevano anche la funzione di ingresso e uscita, e ciò sono alla base di quelli che oggi chiamiamo "sistemi operativi". Essi sono programmi che gestiscono le risorse del calcolatore a vantaggio dei programmi che lavorano sulla macchina stessa.

Software di sistema e applicativo

Il software iniziò ad essere diviso in categorie:

  • Software di sistema, che fornisce servizi di comune utilità;
  • Software applicativo, sono programmi orientati agli utenti, come fogli elettronici o elaboratori di testo.

Per spiegare al meglio i dispositivi di uscita e di entrata, occorre un piccolo esempio. Sul computer, i dispositivi di entrata sono la tastiera e il mouse, mentre quelli di uscita sono lo schermo e le stampanti. L'immagine è composta da una matrice di elementi, o pixel, che può essere rappresentato come una matrice di bit, chiamata bit map. I calcolatori portatili usano spesso i cristalli liquidi, in tal modo si ottiene una visione più sottile ed a basso consumo.

Componenti hardware

Aprendo la scatola che contiene il calcolatore, si può vedere una scheda di sottile plastica verde coperta da dozzine di piccoli rettangoli grigi o neri, la scheda in questione è la scheda madre (motherboard). I piccoli rettangoli sulla scheda madre contengono dei dispositivi molto avanzati, denominati "circuiti integrati" o "chip".

La scheda è composta da tre parti:

  • La parte di connessione con i dispositivi "on" e "off" (|/O);
  • La memoria, è il luogo nel quale i programmi sono memorizzati durante la loro esecuzione.
  • Il processore, è la parte attiva della scheda, segnala ai dispositivi |/O di accendersi o spegnersi e così via. A volte il processore viene chiamato CPU (Central Processing Unit). Il processore comprende due componenti principali: l'unità di elaborazione dei dati, che esegue le operazioni aritmetiche, e l'unità di controllo, che indica all'unità di elaborazione, alla memoria, ai dispositivi |/O che cosa fare a seconda delle istruzioni del programma.

La scheda contiene due tipi di memorie:

  • La memoria DRAM, sta per Dynamic Random Access Memory, la parte finale RAM del termine DRAM indica che contrariamente a quello che succede nelle memorie ad accesso sequenziale, ad una DRAM gli accessi della memoria richiedono lo stesso tempo indipendentemente dalla porzione di memoria che viene letta.
  • La memoria cache, è una piccola memoria che funge da buffer verso la memoria DRAM.

Sia l'hardware che il software consistono di livelli gerarchici, all'interno dei quali ogni livello nasconde alcuni dettagli al livello superiore, questo principio si chiama principio di astrazione. Esistono due tipi di dischi magnetici, i floppy disk e gli hard disk. Il concetto fondamentale alla base del funzionamento di questi dischi è lo stesso, un piatto rotante ricoperto da materiale magnetico in grado di registrare informazioni. La differenza principale sta nel fatto che il floppy disk è fatto di un materiale flessibile, il mylar, mentre gli hard disk sono metallici. I floppy disk possono essere rimossi e portati in giro, mentre gli hard disk, ai giorni nostri, non è rimovibile. Un altro supporto rimovibile è il compact disk ottico, detto anche CD, che è meno costo ma più lento di un hard disk.

Vantaggi dei calcolatori connessi in rete

I calcolatori connessi in rete presentano diversi significativi vantaggi:

  • Comunicazioni, i calcolatori scambiano informazione ad alta velocità;
  • Condivisione di risorse;
  • Accesso remoto, connettere i calcolatori a grande distanza.

La rete più diffusa è l'Ethernet, la sua lunghezza massima è limitata da circa un chilometro e la versione più diffusa richiede almeno un secondo per inviare un milione di byte di dati. Un transistor si comporta come un interruttore, aperto/chiuso, controllato dall'elettricità. Un circuito integrato combina decine di migliaia di transistor in un singolo frammento di chip. La produzione di un chip parte dal "silicio", una sostanza che si trova nella sabbia; poiché il silicio non conduce bene l'elettricità, è detto "semiconduttore". Con un processo chimico è possibile aggiungere dei materiali al silicio per permettere a delle piccole aree di comportarsi in un certo modo:

  • Come un eccellente conduttore elettronico;
  • Come un eccellente isolante elettrico;
  • Come un'area che può condurre oppure non condurre sotto particolari condizioni.

L'insieme dei programmi eseguiti forma il carico da lavoro e per valutare due sistemi di calcolo l'utente dovrebbe confrontare il tempo di esecuzione del carico di lavoro sulle due macchine. La maggior parte degli utenti però non è in questa situazione e deve affidarsi ad altri modelli per la misura delle prestazioni della macchina. Solitamente questa soluzione viene realizzata valutando la macchina con un insieme di benchmark, ossia programmi di campione appositamente scelti per misurare le prestazioni. L'uso di benchmark le cui prestazioni dipendono da piccoli segmenti di codice, incoraggia l'ottimizzazione sia delle architetture e sia dei compilatori. Una volta scelto un insieme di benchmark adeguati e dopo aver ottenuto le misure, si può scrivere un rapporto sulle prestazioni. Quando si descrive l'insieme delle misure prestazionali effettuate è fondamentale considerare la riproducibilità delle stesse: deve essere illustrato tutto il necessario, e si deve includere in particolare la versione del sistema operativo, i compilatori e i dati di ingresso.

Rappresentazione dell'informazione

L'aritmetica dei calcolatori

L'informazione consiste nella ricezione di un messaggio tra un insieme di possibili messaggi. I messaggi, o oggetti, sono rappresentati da simboli: i numeri sono rappresentati per mezzo delle cifre, le parole sono rappresentate per mezzo delle lettere. In questo esempio, i numeri e le parole sono oggetti, mentre le cifre e le lettere sono simboli. Per trasmettere informazioni senza errore, i simboli usati per la rappresentazione devono essere facilmente distinguibili l'uno dall'altro. L'insieme di due simboli è generalmente chiamato "alfabeto binario" ed i due simboli sono 0 ed 1. In generale rappresenteremo i nostri oggetti per mezzo di "stringhe", o vettori, di k simboli binari (bit).

La rappresentazione può variare in base alla natura delle applicazioni. Possiamo voler codificare i seguenti obiettivi:

  • Per pura distinguibilità;
  • Per semplicità nelle applicazioni, tali applicazioni sono la visualizzazione e la conversione analogico-digitale;
  • Per uso in aritmetica;

Un numero è rappresentato da una stringa di simboli e ciascun simbolo ha un peso diverso a seconda della posizione in cui si trova. L'importanza fondamentale della notazione posizionale è la grande semplicità con cui si effettuano le operazioni aritmetiche su numeri rappresentati posizionalmente. Due problemi sono importanti in relazione alla notazione binaria:

  1. Ottenere la rappresentazione binaria di un valore N;
  2. L'inverso di 1., ottenere il valore di una rappresentazione binaria data.

Questi due problemi vengono generalmente designati come conversione di base. Il più naturale metodo è quello della sostituzione, che è molto pratico per ottenere il valore decimale di un numero rappresentato in binario.

ATTENZIONE: Vedere le slides per le varie operazioni!

Vi sono molteplici codici, uno dei tanti standard è il Codice ASCII, ovvero American Standard Code for Information Interchange. Questo standard viene adottato in apparecchiature digitali e merita di essere illustrato. L'ASCII è un codice a 7 bit per la codifica dei numeri naturali {0,1,2,3,4,5,6,7,8,9}, dei caratteri alfabetici maiuscoli {A…Z}, dei caratteri alfabetici minuscoli {a…z} e di comandi speciali di controllo usati in comunicazione. L'ASCII viene designato come codice alfanumerico. I simboli alfanumerici nella tavola ASCII non sono codificati in maniera arbitraria, le parole in codice sono stringhe di 7 bit, che sono a loro volta suddivise in due sottostringhe, di 3 e 4 bit. La stringa più a sinistra di 3 bit viene complessivamente usata per classificare il tipo di simbolo.

Logica digitale

Esaminiamo ora l'organizzazione di un sistema digitale progettato per effettuare operazioni aritmetiche con numeri rappresentati in modulo e segno. Avremmo bisogno di due sottoinsiemi distinti per effettuare le operazioni di addizione e sottrazione, ovvero un addizionatore e un sottrattore. Il caso in cui i segni del minuendo e del sottraendo sono identici è equivalente all'addizione dei due addendi con segni opposti. L'uso del sottosistema dipende non solo dal codice dell'operazione ma anche dai segni degli operandi. In pratica tutti i calcolatori esistenti adottano un diverso tipo di rappresentazione degli interi relativi (cioè interi negativi e non), detta rappresentazione in complemento o notazione in complemento.

Tali rappresentazioni conseguono un duplice vantaggio:

  • È richiesta una sola unità funzionale (l'addizionatore);
  • I trasferimenti dei dati sono completamente determinati dal codice dell'istruzione;

L'operazione di trovare l'opposto, ovvero di cambiare segno, verrà chiamata negazione. Il vantaggio fondamentale della notazione in complemento è che il meccanismo dell'addizione degli interi con segno è indipendente dai segni degli operandi.

Le reti combinatorie sono in grado di realizzare una qualsiasi funzione binaria di variabili binarie. Inoltre esse ritardano le operazioni di rete, senza influenzare la relativa funzione di commutazione, cioè la funzionalità della rete. Questa osservazione ha due conseguenze significative:

  • Se siamo interessati alla velocità della rete, quando la rete è inserita in un sistema più ampio, dovremmo tener presente che quanto più piccolo è il numero di porte attraverso cui il segnale deve propagarsi prima che l'uscita venga prodotta, tanto più veloce è la risposta della rete.
  • Invece, se siamo interessati esclusivamente alla funzionalità (funzione di commutazione), allora siamo giustificati nel fare la conveniente ipotesi che ciascuna porta della rete, e quindi l'intera rete, risponda istantaneamente.

Le variabili binarie vengono rappresentate da tensioni elettriche su fili. Vi sono due valori di tensione simboliche, Vo e V1, che vengono scelti per rappresentare i valori logici 0 ed 1. Vi sono due convinzioni distinte che riassumono Vo e V1 per capire quale sia il più grande fra i due:

  • Logica positiva significa V1>Vo;
  • Logica negativa significa V1<Vo.

L'analisi di una rete combinatoria con una singola uscita consiste nell'ottenere una funzione booleana realizzata da tale rete.

RETE COMBINATORIA ---- ESPRESSIONE BOOLEANA ---- FUNZIONE BOOLEANA ---- DESCRIZIONE VERBALE

Vedere appunti 8 slide. La sintesi della rete combinatoria è il processo inverso di quello appena descritto.

DESCRIZIONE VERBALE FUNZIONE BOOLEANA ESPRESSIONE BOOLEANA RETE COMBINATORIA

Vi sono dei connettivi, che si usano per effettuare la combinazione, e sono:

  • NOT, la valvola di immissione deve essere aperta. (-);
  • SE E SOLO SE, il serbatoio è pieno. (=);
  • OR, la valvola di scarico è chiusa. (+);
  • AND, la concentrazione è al di sotto dell' 1%. (*);
  • AND NOT, il livello dell'acqua è al di sotto del livello minimo.

Vedere le slides.

Tecniche di minimizzazione e trasformazione

Negli anni '50, l'obiettivo della progettazione era essenzialmente la minimizzazione del numero di tali componenti usati nella realizzazione di un dato circuito. In seguito, la tecnologia si è evoluta verso aggregati di parecchi transistori (circuiti integrati), vale a dire, verso la fabbricazione simultanea all'interno dello stesso chip di semiconduttore di circuiti completi contenenti da poche decine a diverse centinaia (integrazione su media scala, MSI), a diverse migliaia (integrazione su larga scala, LSI).

In corrispondenza sono emerse due principali filosofie di progetto:

  • MSI, Vi sono dei moduli complessi, questi moduli debbono essere disposti ed interconnessi dall'utente su piastra di circuito stampato. Una metodologia affine consiste nella fabbricazione in un singolo chip di un'ampia serie di dispositivi di base la cui interconnessione può essere specificata dall'utente e realizzata fisicamente dal costruttore;
  • LSI e VSI, La fabbricazione globale di un sistema digitale completo in un singolo chip. Qui l'obiettivo è la minimizzazione dell'area del chip di silicio usata dal progetto.

Nel contesto della progettazione logica, i nostri obiettivi saranno la velocità e il costo (numero di componenti) della rete. La velocità di una rete combinatoria è basata su un ciascun cambiamento di valore logico che si propaga attraverso una porta in un tempo non nullo. Pertanto il ritardo di una rete combinatoria è proporzionale alla lunghezza della catena di porte che una commutazione all'ingresso deve attraversare per manifestarsi all'uscita. Le reti a due livelli sono note per la loro velocità, poiché ogni funzione di commutazione è realizzabile per mezzo di una rete di al più di due livelli, mentre le reti ad un livello sono realizzabili con una singola porta.

Vi è il criterio di ottimalità che afferma:

  • Una rete a due livelli AND-to-OR è minimale se ha il minimo numero di porte AND; tra tutte le reti che hanno un minimo numero di porte AND, ha il minimo numero di ingressi alle porte AND.

Una definizione analoga può essere data per reti OR-to-AND, scambiando solo le parole AND ed OR, perché una porta AND, corrisponde ad un prodotto di letterali, e ciò si traduce con:

  • Una espressione SOP è minimale se non esiste nessun altra espressione equivalente che contiene un minor numero di prodotti e nessun altra espressione equivalente che contiene lo stesso numero di prodotti, ma con un minor numero di letterali in tali prodotti.

Una definizione analoga può essere data con l'espressione POS minimali, scambiando le parole <> e <>. La minimizzazione parte dalla espressione canonica SOP di una data funzione. Due mintermini che differiscono in una variabile sono detti adiacenti. Un metodo è basato sulle cosiddette <>, una rappresentazione grafica di commutazione che dà una evidenza grafica immediata dei mintermini adiacenti, ed è uno strumento efficace per un piccolo numero di variabili.

Tecniche di trasformazione. Il punto di partenza è una espressione SOP minimale, se ricerchiamo una rete NAND, ed una espressione POS minimale se ricerchiamo una rete NOR.

Vedi le slides 10.

Moduli combinatori: Codificatori, è un modulo con s linee di ingresso ed n linee di uscita, il numero s è normalmente maggiore di n.

Anteprima
Vedrai una selezione di 10 pagine su 44
Architettura degli elaboratori Pag. 1 Architettura degli elaboratori Pag. 2
Anteprima di 10 pagg. su 44.
Scarica il documento per vederlo tutto.
Architettura degli elaboratori Pag. 6
Anteprima di 10 pagg. su 44.
Scarica il documento per vederlo tutto.
Architettura degli elaboratori Pag. 11
Anteprima di 10 pagg. su 44.
Scarica il documento per vederlo tutto.
Architettura degli elaboratori Pag. 16
Anteprima di 10 pagg. su 44.
Scarica il documento per vederlo tutto.
Architettura degli elaboratori Pag. 21
Anteprima di 10 pagg. su 44.
Scarica il documento per vederlo tutto.
Architettura degli elaboratori Pag. 26
Anteprima di 10 pagg. su 44.
Scarica il documento per vederlo tutto.
Architettura degli elaboratori Pag. 31
Anteprima di 10 pagg. su 44.
Scarica il documento per vederlo tutto.
Architettura degli elaboratori Pag. 36
Anteprima di 10 pagg. su 44.
Scarica il documento per vederlo tutto.
Architettura degli elaboratori Pag. 41
1 su 44
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Ingegneria industriale e dell'informazione ING-INF/05 Sistemi di elaborazione delle informazioni

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher francy_piscitelli di informazioni apprese con la frequenza delle lezioni di Architettura degli elaboratori e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Salerno o del prof Anselmo Marcella.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community