Post on 16-Feb-2019
Calcolatori ElettroniciParte II: L’organizzazione generale
del calcolatore
Prof. Riccardo Torlone
Università Roma Tre
Anno Accademico 2001/2002
Riccardo Torlone - Corso di Calcolatori Elettronici 2
Terminologia di base
! Calcolatore elettronico: macchina fatta di dispositivi elettronici che può risolvere problemi eseguendo istruzioni fornitegli
! Programma: sequenza di istruzioni in un linguaggio! Linguaggio macchina: eseguibile direttamente da un calcolatore (binario)
Con dispositivi elettronici si possono eseguire direttamente solo un numero limitato di istruzioni semplici (costi)
I linguaggi macchina non sono adatti per le persone
Riccardo Torlone - Corso di Calcolatori Elettronici 3
Problema
Voglio fare X (programma complesso in un linguaggio L1 di alto livello)
So fare Y (programma di istruzionisemplici in un linguaggio macchina L0)
Traduzione ointerpretazione
Riccardo Torlone - Corso di Calcolatori Elettronici 4
Soluzione adottata
MACCHINA VIRTUALE(compilazione o interpretazione)
L1
L0
MACCHINA REALE(esecuzione diretta)
Se L0 ed L1 sono troppo diversi il problema si decompone introducendo livelli intermedi
Riccardo Torlone - Corso di Calcolatori Elettronici 5
Architettura a livelli
! Al livello i corrispondono una macchina virtuale Mi ed un linguaggio Li
! Il linguaggio Li è tradotto nel linguaggio Li-1 o interpretato da un programma che gira sulla macchina Mi-1
Riccardo Torlone - Corso di Calcolatori Elettronici 6
Perché la stratificazione?
! M0 è facilmente realizzabile in hardware, ma difficile da programmare
! Mn è facile da programmare ma impossibile da realizzabile in hardware
! Implementazione progressiva e modulare! Trasparenza per l’utente e le applicazioni! Il linguaggio Ln non dipende dalla piattaforma (hardware) M0:
! Diversi linguaggi disponibili sulla stessa piattaforma! Lo stesso linguaggio disponibile su diverse piattaforme
Riccardo Torlone - Corso di Calcolatori Elettronici 7
Tipica struttura a livelli
! Il livello 2 è il più basso al quale un utente può programmare la macchina (confine tra software e hardware)
! Normalmente si programma a livello 5
Riccardo Torlone - Corso di Calcolatori Elettronici 8
Struttura del computer
! La memoria contiene sia i dati che le istruzioni! Il contenuto dei registri può essere scambiato con la memoria e l’I/O! Le istruzioni trasferiscono i dati e modificano il contenuto dei registri! Registri particolari:
! PC: indirizza l’istruzione corrente! IR: contiene l’istruzione corrente
PC: Program Counter
IR: Instruction Register
A: Accumulator
Riccardo Torlone - Corso di Calcolatori Elettronici 9
Struttura della CPU
! Esecuzione di operazioni aritmetiche e logiche sui dati contenuti nei registri
! Spostamento di dati fra registri e fra registri e memoria! Ciclo elementare: due operandi sono inviati alla ALU e il
risultato e messo in un registro
Riccardo Torlone - Corso di Calcolatori Elettronici 10
Il ciclo Fetch-Decode-Execute
L’esecuzione di ciascuna istruzione nella CPU consta dei seguenti passi:
1. Carica l’istruzione da memoria in IR (Instruction Register) (Fetch)
2. Incrementa PC (Program Counter)3. Decodifica l’istruzione (Decode)4. Se l’istruzione usa un dato in memoria calcolane l’indirizzo5. Carica l’operando in un registro6. Esegui l’istruzione (Execute)7. Torna al passo 1. Per l’esecuzione dell’istruzione successiva
Accessi alla memoria sono effettuati sempre al passo 1, e non sempre ai passi 4 e 5
Riccardo Torlone - Corso di Calcolatori Elettronici 11
Esecuzione e InterpretazioneEsecuzione diretta
! Le istruzioni possono venire eseguite direttamente dai circuiti hardware
! Approccio molto complesso: ! Repertorio di istruzioni limitato! Progettazione dell’HW complessa! Esecuzione molto efficiente
Interpretazione! L’hardware può eseguire solo alcune operazioni elementari molto
semplici! Ciascuna istruzione è scomposta in una successione di operazioni
base poi eseguite dall’hardware! Vantaggi:
! Repertorio di istruzioni esteso! HW più compatto! Flessibilità di progetto
Riccardo Torlone - Corso di Calcolatori Elettronici 12
La Microprogrammazione
L’HW puo eseguire microistruzioni:! Trasferimenti tra registri! Trasferimenti da e per la memoria! Operazioni della ALU su registri
Ciascuna istruzione viene scomposta in una sequenza di microistruzioniL’unità di controllo della CPU esegue un microprogramma per effettuare l’interpretazione delle istruzioni Il microprogramma è contenuto in una memoria ROM sul chip del processoreVantaggi:
! Disegno strutturato! Semplice correggere errori! Facile aggiungere nuove istruzioni
Riccardo Torlone - Corso di Calcolatori Elettronici 13
CISC e RISC
All’inizio degli anni ’80 i progettisti di sistemi veloci riconsiderano l’approccio dell’esecuzione diretta
Architetture RISC (Reduced Instruction Set Computer):! Repertorio ristretto (alcune decine)! Istruzioni prevalentemente su registri! Una istruzione per ciclo di macchina
Architetture CISC (Complex Instruction Set Computer) µ-programmate:
! Repertorio esteso (alcune centinaia)! Istruzioni anche su memoria! Molti cicli di macchina per istruz.
Esempi:! Alpha (DEC): RISC! Pentium II (Intel): CISC
Riccardo Torlone - Corso di Calcolatori Elettronici 14
Principi progettuali dei computer moderni
! Eseguire direttamente le istruzioni più frequenti! Massimizzare la frequenza alla quale le istruzioni sono eseguite misurata in MIPS (Millions of Instr. per Second)
! Semplificare la decodifica delle istruzioni: formati molto regolari
! Limitare i riferimenti alla memoria alle sole LOAD e STORE
! Ampliare il numero di registri per limitare l’uso di LOADe STORE
N.B. Questi principi sono tipici della filosofia RISC ma anche le architetture CISC vi si adeguano almeno in parte
Riccardo Torlone - Corso di Calcolatori Elettronici 15
Vari Tipi di Parallelismo
Il parallelismo è ormai l’unica strada per aumentare le prestazioniLimite di un’esecuzione sequenziale: velocità della luce (30 cm in 1 nsec)
Due tipi di parallelismo:A) a livello di istruzioni
! Diverse istruzioni eseguite insieme! Diverse fasi della stessa istruzione eseguite concorrentemente
B) a livello di processori! Molti processori lavorano insieme allo stesso problema! Fattori di parallelismo molto elevati! Diversi tipi di interconnessione e di cooperazione (più o meno
stretta)
Riccardo Torlone - Corso di Calcolatori Elettronici 16
Pipelining
! Ciascuna istruzione è divisa in fasi! L’esecuzione avviene in una pipeline a più stadi! Più istruzioni in esecuzione contemporanea! Una istruzione completata per ogni ciclo
N.B. Si guadagna un fattore pari al numero di stadi della pipeline
Riccardo Torlone - Corso di Calcolatori Elettronici 17
Caratteristiche di una pipeline
Una pipeline consente un compromesso tra:! Latenza: tempo per eseguire una istruzione! Ampiezza di banda: numero di istruzioni completate per unità di tempo misurata in MIPS (milioni di istruzioni al secondo)
Con:! Velocità di clock = T nsec! Numero di stadi = n
Abbiamo:! Latenza = nT! Ampiezza di banda = 1000/T MIPS
Riccardo Torlone - Corso di Calcolatori Elettronici 18
Architetture Superscalari
Si aumenta il parallelismo avendo più di una pipeline nel microprocessore
Le pipeline possono essere specializzate:! Una versione di Pentium ha due pipeline a 5 stadi! Una può eseguire solo istruzioni su interi
Problema: compatibilità dell’esecuzione parallela! Indipendenza tra le istruzioni! Ciascuna istruzione non deve utilizzare i risultati dell’altra
Riccardo Torlone - Corso di Calcolatori Elettronici 19
Unità Funzionali Multiple
! La CPU contiene al suo interno diverse unità funzionali indipendenti
! Lo stadio più lento della pipeline (che condiziona la velocità) viene “multiplato” (parallelizzato)
! Architettura adottata nei supercomputer! Prima forma di architettura superscalare
Riccardo Torlone - Corso di Calcolatori Elettronici 20
Array e Vector Processors
Array computer: processori identici ed autonomi eseguono le stesse istruzioni su dati diversi
! ILLIAC IV (1974): 50 MflopsVector processor: operano in parallelo su registri vettoriali (supercomputer)
SIMD (Single Instruction Multiple Data)
Riccardo Torlone - Corso di Calcolatori Elettronici 21
Multiprocessori
Le CPU lavorano indipendentemente
Shared memory: il bus può divenire collo di bottiglia
Private memory: contiene il codice e parte dei dati
Scambio dati tramite la shared memory
Multicomputers: i singoli elementi sono normali workstation o PC
MIMD (Multiple Instruction Multiple Data)
Riccardo Torlone - Corso di Calcolatori Elettronici 22
La Memoria Centrale
! Contiene sia i programmi che i dati! Memorizzazione binaria (bit)! Cella (o locazione): unità indirizzabile
! byte: 8 bit (minimo indirizzabile)! word: insieme di k byte (k dipende dall’architettura)
! Indirizzo (della cella): tramite il quale la CPU accede al dato nella cella
! Indirizzi binari a m bit: spazio di indirizzamento 2m celle
ES Pentium II! Architettura a 32 bit! Registri e ALU a 32 bit ! Word di 4 byte 32 bit! Indirizzi a 32 bit! Spazio indirizzabile 232 = 4 GB
(64GB con opportuni accorgimenti)
Riccardo Torlone - Corso di Calcolatori Elettronici 23
Ordinamento dei byte
! Diversi ordinamenti dei byte nella parola nella rappresentazione di stringhe
! Crea problemi nei trasferimenti fra computer di tipi diversi
(IBM, SUN) (INTEL)
Riccardo Torlone - Corso di Calcolatori Elettronici 24
Codici a correzione di errore
Recupero degli errori hardware tramite codifiche ridondanti
Codifiche con n = m + r bit! n bit complessivi codifica! m bit dati! r check bit (ridondanti)
Si utilizza solo un sottoinsieme delle codifiche (codifiche valide)
Distanza di Hamming h = minimo numero di bit diversi tra due codifiche valide
Per rilevare errori su d bit occorre h = d+1
Per correggere errori su d bit occorre h = 2d+1
Riccardo Torlone - Corso di Calcolatori Elettronici 25
Codici a correzione di errore (2)
ES n=10, m=2, r=8
0000000000000001111111111000001111111111
4=2m codifiche valide
Distanza di Hamming h=5 fra due codifiche valide contigue
Possibile correggere errori doppi 2d+1=h=5
1100011111 viene riconosciuto come 0000011111
Possibile rilevare errori quadrupli d+1=h=5
1111011111 viene riconosciuto come errato
Riccardo Torlone - Corso di Calcolatori Elettronici 26
Rilevazione di errore singolo (controllo di parità)
Nel caso più semplice si vogliono solo rilevare errori singoli
Basta aggiungere un solo check bit r=1, n=m+1
Bit di parità: scelto in modo che il numero complessivo di 1 nella codifica sia sempre pari (o dispari)
Questo codice ha distanza h=2
Errore rilevato da circuiti molto semplici
Le memorie segnalano parity error quando un errore si manifesta
Riccardo Torlone - Corso di Calcolatori Elettronici 27
Correzione di errore singolo
! m data bit, r check bit, n bit totali! 2m codifiche valide! n codifiche errate a distanza 1 da ciascuna delle valide! Ogni codifica valida ne richiede in tutto n+1:
(n+1) 2m ≤ 2n cioè (m+r+1) ≤ 2r
m r n=m+r r/m
N.B. Al crescere di m l’overhead scende
Riccardo Torlone - Corso di Calcolatori Elettronici 28
Memorie Cache
! La memoria è sempre più lenta della CPU e tende a rallentarla! Memorie veloci sono disponibili ma solo per piccole dimensioni! La cache (da cacher) funziona alla velocità del processore, e quindi nasconde la “lentezza” della memoria
! Contiene le ultime porzioni di memoria acceduta: se la CPU vuole leggere una di esse evita un accesso a memoria
! Funziona bene a causa della località degli accessi
Riccardo Torlone - Corso di Calcolatori Elettronici 29
Cache Hit Ratio
Se una parola viene letta k volte di seguito, k – 1 volte sarà trovata in cache
! Cache hit ratio:
H = (k – 1) / k
! Tempo medio di accesso a memoria:! m: tempo di accesso della memoria! c: tempo di accesso della cache
A = c + (1 – h)m
La memoria è organizzata in blocchiPer ogni cache miss un intero blocco è spostato in cache
Riccardo Torlone - Corso di Calcolatori Elettronici 30
Gerarchie di memoria
Scendendo nella gerarchia:! Cresce il tempo di accesso! Aumenta la capacità! Diminuisce il costo per bit
Solo il livello più alto della gerarchia è a contatto con la CPUMigrazione dei dati fra livelli della gerarchia
5 ·10-9
20 ·10-9
80 ·10-9
10 ·10-3
150 ·10-3
Access time (sec)
24
219
230
240
>>>>240
Capacity (byte)
Riccardo Torlone - Corso di Calcolatori Elettronici 31
Dischi magnetici
! Registrazione seriale su tracce concentriche! 800-2000 tracce/cm (larghe ~10µ)
! Tracce divise in settori contenenti i dati, un preambolo e un ECC(Error-Correcting Code) (la capacità formattata scende del 15%)
! Velocità di rotazione costante (7200 RPM)! Densità di registrazione variabile con il raggio della traccia (~ 105
bit/cm)! Velocità di trasferimento di 5-20 MB/sec! Burst rate e sustained rate
Riccardo Torlone - Corso di Calcolatori Elettronici 32
Dischi magnetici (2)
! Cilindro: insieme di tracce sulla stessa verticale! Tempo di seek tseek: spostamento delle testine sul cilindro desiderato, dipende in parte dalla distanza (~ 5-10ms)
! Tempo di latency tlat: spostamento sul settore desiderato (~ 10ms)
! Tempo di accesso:
tacc= tsee+ tlat
Riccardo Torlone - Corso di Calcolatori Elettronici 33
Floppy Disk
! Dispositivi rimuovibili! Le testine toccano i dischetti! Non in rotazione continua! Ritardo nei tempi di accesso
Riccardo Torlone - Corso di Calcolatori Elettronici 34
Dischi IDE, EIDE e SCSI
! Standard nato con il PC XT IBM! Limite di 16 testine, 63 settori e 1024 cilindri: in tutto 528 MB
! EIDE estende lo standard a 224 settori, controllori fino a 4 dischi e transfer rate più alta ~30MB/sec
! SCSI (Small Computer Interface), standard ANSI
! Controller piu intelligente, inizialmente migliori prestazioni
! Connessione daisy chain! Adatto a server. Usato nelle Ws Unix
Riccardo Torlone - Corso di Calcolatori Elettronici 35
Dischi RAID
Problema: miglioramento lento delle prestazioni dei dischi (1970: tseek=50ms; 1999 tseek=10ms)
Soluzione: RAID (Redundant Array of Inexpensive Disks)
! Dividere i dati su più dischi! Parallelizzare l’accesso! Aumentare il data rate! Introdurre una resistenza ai guasti Contrapposti a SLED (Single Large Expensive Disk)
Data Striping: dati consecutivi nello stesso file vengono “affettati” e disposti su dischi diversi, dai quali possono essere letti (e scritti) in parallelo
Riccardo Torlone - Corso di Calcolatori Elettronici 36
RAID Level 0 e Level 1
Su n dischi si può guadagnare un fattore n sia in lettura che inscritturaLo MTBF (Mean Time Between Failures) peggioraNon c’è ridondanza: non è un vero RAID
Ciascun disco è duplicato: shadowingOttime prestazioni soprattutto in lettura: molte possibilità di bilanciare caricoEccellente resistenza ai guastiSupportato anche da vari SO (Es. NT 4)
Riccardo Torlone - Corso di Calcolatori Elettronici 37
RAID Level 2
Striping a livello di word o di byteEsempio: un nibble (mezzo byte) più 3 bit: codice di Hamminga 7 bitRegistrazione ad 1 bit per ogni discoRotazione dei dischi sincronizzataResiste a guasti sempliciGuadagna un fattore 4 in read e writeForte overhead (nell’esempio 75%)Ha senso con molti dischi:
! 32 bit+(6+1) parità ⇒ 39 dischi! Overhead del 19%! Guadagna un fattore 32 in read e write
Riccardo Torlone - Corso di Calcolatori Elettronici 38
RAID Level 3
Versione semplificata di RAID 2
Resiste a guasti semplici! Il bit di parità, sapendo quale drive è rotto, consente la correzione
Overhead abbastanza contenuto
RAID 2 e 3 offrono un’eccellente data rate ma permettono di gestire solo una operazione su disco per volta perché ciascuna operazione coinvolge tutti i dischi
Riccardo Torlone - Corso di Calcolatori Elettronici 39
RAID 4 e RAID 5
Striping a livello di blocco: drive non sincronizzatiRAID 4: la strip nell’ultimo disco contiene i bit di parita dell’insieme di bit omologhi di tutte le altre stripResiste a guasti singoli (vedi RAID 3)Se una sola strip e scritta occorre leggere tutte le altre per calcolare la paritàIl disco di parità è il collo di bottigliaRAID 5 distribuisce le strip di parità
Riccardo Torlone - Corso di Calcolatori Elettronici 40
Dischi ottici: CD-ROM
! Standard originariamente introdotto per i CD audio! Registrazione basata su pits e lands! L’interferenza nelle cavità diminuisce l'intensità luminosa ! Unica traccia a spirale ~22.000 giri a ~ 600/mm: lunghezza totale ~5.6Km
! Rotazione variabile 200-520 RPM per avere flusso dati uniforme (musica)
1/4 λλλλ
Laser .78µ
Foto diodo
Interferenza nellecavità
landpit
Riccardo Torlone - Corso di Calcolatori Elettronici 41
CD-ROM: organizzazione dei dati
! Byte codificati in simboli di 14 bit! Frame di 42 simboli di cui 24 utili! Settori di 98 frame, con 2k byte utili piu 16 di preamboloe 288 di ECC
! Contiene in tutto 650 MB utili! Drive 1×: 75 settori/sec ≈150KB/sec! Drive 32 ×: ~5MB/sec
N.B. Tre livelli di correzione di errore (simbolo, frame e settore): la parte utile è solo del 28%
Riccardo Torlone - Corso di Calcolatori Elettronici 42
CD scrivibili e riscrivibili
Laser a due potenze (scrivibili):! alta (scrive): ‘brucia’ delle areole nello strato colorato! bassa (legge): come nei CD-ROM
(Solco preinciso per guidare il laser)Laser a tre potenze (riscrivibili):(supporto a due stati: amorfo e cristallino)
! alta (scrive): cristallino→ amorfo! media (cancella): amorfo → cristallino! bassa (legge): come nei CD-ROM
Riccardo Torlone - Corso di Calcolatori Elettronici 43
Standard per i CD ROM
Red Book (1980) : standard ISO per il CD audio (Philips e Sony): simboli e frame
Yellow Book (1984) : standard ISO per i CD-ROM dati: settori
Green Book: standard CD multimedialiHigh Sierra: Standard ISO 9660 per il file system:
! Level 1: compatibile con tutti i SO! Level 2: Unix (UID, link simbolici)
Orange Book: standard CD scrivibili! Formato CD-ROM XA! Scrittura incrementale! CD-ROM multisessione! Aggiornamento della directory! VTOC: Volume Table of Contents
Riccardo Torlone - Corso di Calcolatori Elettronici 44
DVD: Digital Versatile Disk
Aumento della capacità:! Laser λ=.65µ → pit .4µ (erano .8µ)! Spirale più stretta .74µ (erano 1.6µ)! Capacità: 4.7 GB! Data rate (1×): 1.4MB/sec
Basta per 133 minuti di film a 720×480, compresso con MPEG-2Ulteriore aumento di capacità:! Singola faccia, layer doppio: 8.5 GB! Doppia faccia, layer singolo: 9.4 GB! Doppia faccia, layer doppio: 17 GB
Riccardo Torlone - Corso di Calcolatori Elettronici 45
Dispositivi di I/O
! I dispositivi di I/O sono connessi al bus tramite controller! I controller gestiscono autonomamente i trasferimenti da e per la memoria: DMA (Direct Memory Access)
! Possono comunicare con la CPU tramite le interruzioni! Il bus è condiviso da CPU e controller, e gli accessi sono regolati da un arbitro
Riccardo Torlone - Corso di Calcolatori Elettronici 46
Struttura fisica del PC
! La base della struttura è costituita dalla Scheda Madre (Mother Board)
! Sulla scheda madre sono la CPU, il Chipset, il bus e vari connettori per la memoria e i dispositivi di I/O
! Il bus è costituito da una serie di piste sul circuito stampato
! Spesso sono presenti più bus, secondo diversi standard ! Le carte di I/O vengono inserite nei connettori
Riccardo Torlone - Corso di Calcolatori Elettronici 47
Bus ISA e PCI
! ISA (Industry Standard Architecture) nasce col PC AT IBM (~1982)
! PCI (Peripheral Component Interconnect) introdotto da Intel(~1990)
! Il bus PCI ha più linee e maggiore frequenza di funzionamento (66MHz)
! Sia ISA che PCI sono di pubblico dominio
Riccardo Torlone - Corso di Calcolatori Elettronici 48
Monitors CRT
Sono gli stessi usati nei televisori ma con prestazioni migliori:
! Dot Pitch: dimensione dei pixel (tipica 0.28-0.21mm)! Risoluzione: numero di pixel (Es. 1280×1024 per 17”)! Refresh rate: frequenza con cui i quadri sono riprodotti (Es. 85 Hz)
Riccardo Torlone - Corso di Calcolatori Elettronici 49
Display Flat Panel
! Basati sulla conduzione di luce polarizzata da parte dei cristalli liquidi (LCD)
! Conduzione influenzata da campi elettrici! Campi generati da elettrodi trasparenti! Problemi: basso contrasto, angolo visuale
Display a Matrice Attiva! Elementi luminosi (pixel) controllati da una matrice di selezione! Molto migliori ma costosi
Display a colori:! Stessi principi, ma più strati e filtri
Riccardo Torlone - Corso di Calcolatori Elettronici 50
Terminali a mappa di caratteri
! Possono presentare sullo schermo solo caratteri (generati dal controller)
! Tipicamente 25 righe da 80 caratteri! Caratteri contenuti nella VRAM! Dimensioni limitate della VRAM: tipico 25×80×2 ≈4k (2 byte per
char)! Flusso contenuto tra memoria e VRAM! Non possono gestire alcun tipo di grafica! Ormai quasi estinti
Riccardo Torlone - Corso di Calcolatori Elettronici 51
Interfaccia RS-232-C
Standard IEEE inizialmente per la gestione di terminali remoti:! Connettore standard a 25 pin! Protocollo di comunicazione! Trasmissione seriale
UART (Universal Asynchronous Receiver Transmitter)! Connessione locale con cavo senza modem (null modem)! Usato per connettere dispositivi di vario tipo alla porta seriale
Riccardo Torlone - Corso di Calcolatori Elettronici 52
Terminali a mappa di bit
! L’immagine è costituita da una matrice di punti (pixel)! Da 1 a 4 byte per pixel! Interfacce grafiche, a finestre! Problema: dimensione della VRAM
! Risoluzione 1280×960! 24 bit per pixel (true color)! Servono 4 MB di VRAM
! Problema: gestione dell’immagine! Flusso tra RAM e VRAM! Carico addizionale per la CPU
! Soluzioni:! Potenziamento del bus (PCI)! Schede grafiche con capacità di elaborazione dell’immagine
Riccardo Torlone - Corso di Calcolatori Elettronici 53
Tastiere e mouse
Tastiere! Codice del carattere inviato ogni volta che si pigia o rilascia un
tasto! Genera una interruzione della CPU! Combinazioni di tasti gestite SW! Mapping dei tasti (tastiere nazionali) gestito in software
Mouse! Tecnologie meccanica e ottica! 3 byte inviati ogni volta che il mouse fa un certo spostamento
minimo:1 - Spostamento sull’asse x2 - Spostamento sull’asse y3 - Posizione dei bottoni
Riccardo Torlone - Corso di Calcolatori Elettronici 54
Stampanti Inkjet
Stampanti grafiche: 300-1440 dot/inchCaratteri trattati come immagineContrazione del capillare per impulsi elettrici nell’avvolgimentoTeste a più ugelli, si postano sulla cartaPoco costose e silenziose, ma lenteProblemi:
! Trascinamento della carta! Intasamento degli ugelli! Costo delle cartucce! Generazione dell’immagine, da parte del computer
Inchiostro
Capillare
Avvolgimentodi eccitazione
CartaGoccia
Riccardo Torlone - Corso di Calcolatori Elettronici 55
Stampanti Laser
Eccitazione elettrostatica del tamburo di selenio con pennello laser
Adesione del toner (polvere plastica)
Trasferimento del toner sulla carta a caldo e sua fusione (fissaggio)
Vantaggi! Silenziose, veloci e precise! Maggiori costi fissi, minori marginali
Riccardo Torlone - Corso di Calcolatori Elettronici 56
Gestione delle Stampanti Laser
La generazione dell’immagine viene fatta dalla stessa stampanteStampante dotata di microprocessore e parecchi MB di ROM e RAMSet di caratteri contenuti nella ROMScalatura delle fontiIl computer invia una descrizione dell’-immagine in uno speciale linguaggioPostscript: linguaggio proprietario di Adobe per la descrizione di immaginiUn file Postscript è un programma che descrive un documento:
! Testo, con specifica di fonte e corpo! Immagine delle fonti non standard! Disegni (vettoriali e bitmap)! Formato della carta, ecc.
Riccardo Torlone - Corso di Calcolatori Elettronici 57
Stampanti a Colori
CYMK (Cyan, Yellow, Magenta, BlacK): codice di stampa a 4 coloriRGB (Red, Green, Blue): codice a 3 colori monitor necessaria conversioneInkjet
! Come B/N, con più teste di stampa! Molto diffuse e poco costose
Laser! Costose, ottima qualità e costi marginali contenuti! Usano 4 toner di colori diversi! Richiedono molta memoria
Sublimazione! Fondono inchiostri solidi con pigmenti, e li depositano sul foglio
Riccardo Torlone - Corso di Calcolatori Elettronici 58
Modem
Informazione binaria trasmessa su linee analogiche modulando una portanteModulazione di ampiezza, frequenza e fase
! Bit rate: frequenza di invio dei bit! Baud rate: frequenza con cui varia il segnale
Bit rate tipiche: 14.000~57.600 bits/secProtocolli V.21, V.32, V.34, V90 (56Kbps)Modem programmabili tramite linguaggio standard (AT)
Riccardo Torlone - Corso di Calcolatori Elettronici 59
Linee ISDN
! Linea digitale che usa un normale doppino telefonico
! Due canali indipendenti a 64.000 bit/sec ciascuno più uno di segnalazione a 16.000
! Ciascuna delle linee puo essere anche convertita in analogica
! Molto più affidabile, consente connessioni a 64 e 128 Kbits/sec, non richiede modem
! Anche linee ISDN a 30 canali
Riccardo Torlone - Corso di Calcolatori Elettronici 60
ADSL
! Tecnica appartenente alla famiglia Digital Subscriber Line (DSL)
! Permette la trasmissione dati ad alte velocità (ordine deiMbps) migliorando le tecniche di filtraggio e conversione analogico/digitale
! Utilizza frequenze che vanno oltre la banda fonica (300 -3.400 Hz).
! Flussi di dati paralleli lungo sottocanali su portanti a frequenze diverse.
! Velocità upstream:
24 can. × 15 bit × 4.3 Khz = 1,5 Mbps
! Velocità downstream:
248 can. × 15 bit × 4.3 Khz = 16 Mbps
Riccardo Torlone - Corso di Calcolatori Elettronici 61
Codice ASCII (Hex 0-1F)
Riccardo Torlone - Corso di Calcolatori Elettronici 62
Codice ASCII (Hex 20-7F)
Riccardo Torlone - Corso di Calcolatori Elettronici 63
Codice UNICODE
! Codice ASCII a 7 bit, poi esteso a 8! Escape sequences: per caratteri speciali! Diversi codici nazionali code pages! Impossibile usarli simultaneamente! Codice UNICODE a 16 bit, nuova proposta di standard:
! 65.536 code points! Semplifica la scrittura del software! 336 code points: alfabeti latini! 112 accenti e simboli diacritici! Greco, cirillico, ebraico, ecc.! 21.000 ideogrammi cinesi! 11.000 sillabe coreane ……
! Un consorzio assegna quello che resta, ma durerà poco