Università degli studi della Basilicata
Architettura dei calcolatori elettronici
Nome Cognome
Matricola
Anno Accademico 2017/2018
Indice
- Introduzione Pag. 4
- Preliminari algebrici Pag. 5
- Codifiche Pag. 7
- Notazione scientifica
- Codifica binaria
- Conversione da decimale a binario
- Conversione da binario a decimale
- Codifica in modulo e segno
- Codifica in complemento a due
- Standard IEEE 754
- Codifica alfanumerica ASCII
- Codifica esadecimale
- Architetture monoprocessore Pag. 11
- CPU
- RAM
- BUS
- Prestazioni
- Fetch e execute
- Architettura MIPS Pag. 15
- Pipelining MIPS
- Circuiti Pag. 17
- Introduzione ai circuiti
- Teorema fondamentale dell'algebra di commutazione
- Teorema fondamentale duale
- Moduli combinatori Pag. 19
- Codificatore
- Decodificatore
- Multiplatore
- Demultiplatore
- ROM
- PLA
- Memorie Pag. 21
- Latch
- Flip Flop
- Registri
- RAM
- ALU Pag. 23
- Aritmetica binaria
- Celle addizionatrici
- Circuiti ALU
- Periferiche I/O Pag. 25
Introduzione
Che cos’è un calcolatore elettronico? Quali sono gli elementi alla base che permettono il suo corretto funzionamento? La trattazione segue un percorso diviso in più capitoli che si incentra su queste domande e allo stesso momento risponde nella maniera più chiara possibile, integrando la teoria con esempi pratici e arricchendola di immagini e schemi.
Nella prima parte dello scritto sono state sintetizzate delle conoscenze base dell’algebra poiché sono necessarie per comprendere al meglio particolari nozioni. L’architettura vera e propria viene introdotta subito dopo i preliminari algebrici con il capitolo delle codifiche e l’elencazione delle varie tecniche di codifica operate dall’elaboratore. Segue poi la parte centrale della trattazione, incentrata sia sull’architettura di Von Neumann che sull’architettura MIPS. Alla prima è dedicato un approfondimento su ognuna delle sue componenti: CPU, RAM, dispositivi I/O e BUS, mentre l’architettura MIPS viene trattata in un paragrafo che discuterà della pipeline MIPS.
Successivamente un capitolo dedicato all’algebra di commutazione con i due teoremi fondamentali. Verranno poi introdotti elementi di base dei circuiti logici e capiremo come fa un calcolatore a memorizzare dei dati, per poi concludere con il capitolo sulle periferiche.
Preliminari algebrici
Insiemistica
Un raggruppamento di oggetti rappresenta un insieme se esiste un criterio oggettivo che permette di decidere se un qualunque oggetto fa parte o no del raggruppamento. Per gli insiemi numerici utilizziamo le seguenti lettere:
- Numeri naturali N = {0, 1, 2, 3, …}
- Numeri interi Z = {-2, -1, 0, 1, 2, …}
- Numeri reali R = {1, 2, 3, √π, √π , -27/8, …}
- Numeri razionali Q = {3/4, 5/8, 19/8, …}
- Numeri complessi C = {a + bi}
Esistono modi diversi per descrivere gli insiemi, quella appena effettuata è la rappresentazione per elencazione: gli elementi vengono elencati, racchiusi fra parentesi graffe e separati da virgole. Gli elementi non devono essere ripetuti e non ha importanza l’ordine con cui vengono scritti. Se l’insieme è costituito da elementi infiniti, dopo aver elencato un numero di elementi sufficiente a indicarlo, si può ricorrere ai puntini.
In insiemistica si utilizzano spesso le seguenti notazioni:
- ∈: Indica che l’elemento a appartiene all’insieme A;
- ∉: Indica che l’elemento a non appartiene all’insieme A;
- =: Sta a significare che i due insiemi sono formati dagli stessi elementi;
- ≠: I due insiemi non sono uguali;
- ⊆: Si dice che B è sottoinsieme di A se tutti gli elementi di B appartengono anche ad A;
- ⊂: B è incluso strettamente in A se B ≠ A.
Proprietà
Proprietà riflessiva: Una relazione in un insieme A è riflessiva quando ogni elemento di A è in relazione con se stesso.
Proprietà simmetrica: Una relazione in un insieme A è simmetrica quando per ogni elemento a, se a è in relazione con b, allora b è in relazione con a.
Proprietà transitiva: Una relazione in un insieme A è transitiva quando, per tutti gli elementi a, b, c in A, se a è in relazione con b e b è in relazione con c, allora a è in relazione con c.
Relazioni
Una relazione binaria fra gli insiemi A e B è un qualunque sottoinsieme di A × B. Una relazione fra due insiemi A e B è una funzione se ad ogni elemento di A associa uno e un solo elemento di B. Una funzione poi si dice suriettiva quando ogni elemento di B è immagine di almeno un elemento di A, iniettiva se ogni elemento di B è immagine al più di un elemento di A e biunivoca se la funzione è sia iniettiva sia suriettiva.
Codifiche
Un computer agisce in base a delle istruzioni, le quali non sono altro che un susseguirsi di bit che possono assumere due soli valori: 0 e 1, che stanno a rappresentare due valori di tensione. 0 corrisponde a low, detto anche aperto, e 1 corrisponde ad high o chiuso. Questi due livelli derivano da una discretizzazione del segnale analogico in modo tale da poter essere interpretati sotto forma di segnali base, e quindi rendere possibile la “lettura” da parte del calcolatore. L’unità di misura della capacità di codifica binaria è il bit, ma vengono soprattutto usati i multipli del bit data la capacità dei computer a immagazzinare una vasta quantità di informazioni. A seguire, le più comuni tipologie di codifica.
Codifica binaria
La codifica binaria è la rappresentazione dell’informazione effettuata utilizzando il sistema numerico binario precedentemente introdotto. Il bit, dall’inglese Binary Digit, è il più piccolo spazio di memoria esistente e la sua rappresentazione logica è delineata dai valori (0, 1). Utilizzando n bit di memoria, si ottengono 2n combinazioni differenti.
I suoi multipli sono i seguenti:
- 8 bit = 1 byte
- 210 byte = 1 Kilobyte
- 210 Kilobyte = 1 Megabyte
- 210 Megabyte = 1 Gigabyte
- 210 Gigabyte = 1 Terabyte
Conversione da decimale a binario
Per poter trasformare un numero dal sistema decimale al sistema binario basta prendere il numero da convertire e dividerlo per 2 finché il quoziente diventa 0. A questo punto non resta altro che prendere i resti ottenuti e riscriverli nel senso inverso. Quello sarà il nostro numero convertito in binario.
Un esempio: 13210 = 100001002.
Conversione da binario a decimale
Per eseguire l’operazione inversa, ovvero convertire un numero in base binaria in un numero in base decimale, esiste la seguente formula dove B è un numero binario di N cifre e i sono le cifre i-esime:
N-1∑(i * Bi * 2i) = 13210
Esempio: 100001002 = 1*27 + 0*26 + 0*25 + 1*24 + 0*23 + 0*22 + 0*21 + 0*20 = 13210.
Codifica in complemento a due
La codifica in complemento a due è un tipo di rappresentazione che non si limita solo a riportare il modulo del numero binario, ma specifica anche il segno se è negativo o positivo. Tutti i numeri che cominciano con uno 0 sono positivi, mentre i numeri negativi sono rappresentati come il complemento del modulo e aggiungendo 1.
Prendiamo come esempio il numero 7. Lo si vuole rappresentare su 8 bit: 000001112. Il numero è positivo essendo la prima cifra 0. Per trasformarlo in un numero negativo troviamo il complemento a uno (1 = 0 e 0 = 1): 111110002. Per ottenere il complemento a due basta aggiungere 1 al complemento a uno:
111110002 + 000000012 = 111110012 = -710.
Codifica in modulo e segno
La rappresentazione in segno e modulo è un metodo alternativo meno diffuso per precisare il segno di un numero. Questo avviene anteponendo al numero un ulteriore bit che per convenzione assume valore 0 se è positivo e 1 se è negativo. Se ad esempio volessimo rappresentare -46 in numeri binari, annoteremo 1 per indicare che il numero è negativo, al quale poi seguirà il modulo 101110. Perciò -46 = 1101110.
Standard IEEE 754
Lo standard IEEE 754, introdotto per la prima volta nel 1985, è tutt’oggi lo standard più diffuso per il calcolo in virgola mobile e di un set di operazioni effettuabili su esso. Questo standard include quattro formati in virgola mobile: precisione singola (32 bit), precisione doppia (64 bit), precisione singola estesa (≥ 43 bit), precisione doppia estesa (≥ 79 bit). Secondo questo standard, un numero in virgola mobile è suddiviso in tre sezioni:
- Un bit di segno
- Un campo di esponente
- Un campo di mantissa
Codifica alfanumerica ASCII
La codifica ASCII (American Standard Code For Information Interchange) è lo standard americano utilizzato per codificare numeri, lettere e simboli. Utilizza delle combinazioni di 7 bit e in tutto le combinazioni sono 128. Vi è anche la versione...
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
-
Tesina Architettura dei calcolatori
-
Tesina Architettura dei Calcolatori Elettronici
-
Tesina Architettura dei calcolatori elettronici
-
Calcolatori Elettronici II - Tesina