Il 0% ha trovato utile questo documento (0 voti)
17 visualizzazioni71 pagine

Prova 1

Caricato da

giangimilano2020
Copyright
© © All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd
Il 0% ha trovato utile questo documento (0 voti)
17 visualizzazioni71 pagine

Prova 1

Caricato da

giangimilano2020
Copyright
© © All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd

Macchine

Corso di Calcolatori Elettronici I

Dipartimento di Informatica e Sistemistica


Università degli Studi di Napoli “Federico II”

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Argomenti

¾ Richiami di codifica delle informazioni


¾ Macchine combinatorie
¾ Macchine sequenziali

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Codifica delle informazioni

¾ Argomenti
» Insieme di simboli
» Alfabeto origine
» Alfabeto destinazione
» Applicazione che trasformi l’alfabeto origine in quello
destinazione

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Codifica delle informazioni

¾ Codici a lunghezza fissa


Esempi:
» Codice Fiscale
» Codice di Avviamento Postale

¾ Codici a lunghezza variabile


Esempi:
» Alfabeto Morse
» Numeri Telefonici

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Codifica in Binario

¾ Dato un insieme di N elementi, il numero minimo m


di bit necessario alla codifica è dato da
m ≥ {[log2 N]}

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Rappresentazione di Codici mediante tabelle

T = (x1,x2,…,xn) alfabeto origine


E = (a1,a2,…,ak) alfabeto destinazione

Es. Codice BCD (Binary Coded Decimal)


0 1 2 3
0 0 0 0 0

1 0 0 0 1

2 0 0 1 0

3
Parola Codice
Dato 0 0 1 1
(alfabeto destinazione)
(alfabeto 4 0 1 0 0

origine) 5 0 1 0 1

6 0 1 1 0

7 0 1 1 1

8 1 0 0 0

9 1 0 0 1

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Rappresentazione Decodificata

¾ L’insieme ha cardinalità N
¾ Le parole codice hanno lunghezza m = N
¾ Ad ogni parola codice è associato un solo bit 1

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Esempio di rappresentazione Decodificata

Dato Codice BDC Codice Decodificato


0 0000 1000000000
1 0001 0100000000
2 0010 0010000000
3 0011 0001000000
… … ….

9 1001 0000000001

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Le macchine elementari per l’architettura

¾ Argomenti
» Analisi e sintesi di un circuito digitale
» Tassonomia dei circuiti digitali
» Porte di parola, porte abilitanti
» Bus, OR di bus
» Multiplexer/Demultiplexer
» Codificatore/Decodificatore
» Macchine sequenziali, automi a stati finiti
» Flip-flop, registri, registri a scorrimento, contatori
» Trasferimento tra registri
» Tempo e tempificazione dei sistemi digitali

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Analisi e Sintesi di un sistema 1/2

¾ Per analisi di un sistema si intende l'individuazione delle


relazioni di causa/effetto tra i segnali di ingresso e uscita,
attraverso l'esame di una rappresentazione schematica dei
suoi componenti elementari e dei collegamenti che li
interconnettono, ovvero:
» data la rappresentazione schematica del sistema, individuarne il
comportamento.
comportamento

¾ Per sintesi di un sistema si intende l'individuazione dei


componenti e delle interconnessioni necessarie per
realizzarlo seguendo la preassegnata specifica funzionale:
» data la specifica funzionale individuarne la struttura.

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Analisi e Sintesi di un sistema 2/2

Analisi Sintesi

Data la descrizione Data la descrizione


della del
STRUTTURA COMPORTAMENTO
(come è fatta) (cosa deve fare)

Determinarne il Determinarne la
COMPORTAMENTO STRUTTURA
(cosa fa) (come è fatta)

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Tassonomia dei circuiti digitali

¾ I circuiti digitali possono essere classificati in due categorie


» Circuiti combinatori
♦ Il valore delle uscite ad un determinato istante dipende unicamente
dal valore degli ingressi in quello stesso istante.
» Circuiti sequenziali
♦ Il valore delle uscite in un determinato istante dipende sia dal
valore degli ingressi in quell’istante sia dal valore degli ingressi in
istanti precedenti
♦ Per definire il comportamento di un circuito sequenziale è
necessario tenere conto della storia passata degli ingressi del
circuito
¾ La definizione di circuito sequenziale implica due concetti:
» Il concetto di tempo
» Il concetto di stato

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Macchina combinatoria 1/3

¾ Una macchina combinatoria è una rete logica con n ingressi


(x1, x2, …, xn) ed m uscite (y1, y2, …, ym) ed è tale che ad
ogni insieme di valori degli ingressi corrisponde un preciso
insieme di valori delle uscite
¾ Il comportamento di una rete combinatoria nxm può essere
descritto tramite:
» una tabella di verità in cui viene specificato il valore dell’uscita per
ognuna delle possibili combinazioni dei valori degli ingressi
» m funzioni booleane, una per ogni uscita, ciascuna delle quali esprime
il valore della corrispondente variabile di uscita in funzione delle n
variabili di ingresso
x1 y1
y1 = f(x1, x2, …, xn)
.....
xn ym
ym = f(x1, x2, …, xn)
DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli
Macchina combinatoria 2/3

¾ In una macchina combinatoria i valori delle uscite dipendono


esclusivamente dai valori degli ingressi
» macchina combinatoria ideale: tale dipendenza è istantanea
» macchina combinatoria reale: presenza di ritardo tra l’istante in cui c’è
una variazione in uno degli ingressi e l’istante in cui l’effetto di questa
variazione si manifesta sulle uscite
¾ E’ importante notare come
» ciascuna yi può essere decomposta in funzioni componenti
» due distinte yi possono contenere una identica funzione componente
¾ Ciò comporta, ad esempio, una potenziale diminuzione di
porte elementari rispetto ad una realizzazione indipendente
delle yi

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Macchina combinatoria 3/3

¾ Mentre ad ogni rete combinatoria corrisponde


un’unica tabella di verità, ad una tabella di verità
possono corrispondere più reti combinatorie
¾ Nel procedimento di sintesi ci possiamo quindi porre
particolari obiettivi come ad esempio:
» utilizzare esclusivamente circuiti elementari di un certo tipo
» progettare un circuito che abbia il minimo numero di porte
logiche

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


La macchina combinatoria: un esempio

¾ Il campanello
» 1 ingresso (il pulsante), con due
possibili valori (premuto,
rilasciato)
» 1 uscita (la suoneria), con due
possibili valori (suono, nessun
suono)

x: pulsante y: suoneria
y = f(x)
Premuto Suono
Rilasciato Nessun suono

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Multiplexer lineare

¾ Macchina con:
» n ingressi-dati (A0,…,An-1)
»n segnali binari di A0
selezione (a0,…, an-1), dei B
quali al più uno è attivo MUXL
» una uscita-dati B, che
assume valore Ai se è An-1
attivo ai, è neutra se
nessuna delle selezioni è
attiva
α0 αn-1

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Multiplexer lineare - realizzazioni

¾ B = A0 α0 + A1α1 + ... + An-1αn-1 , n=4


» Realizzazione I
♦ Con porte AND e OR
» Realizzazione II
♦ Con porte 3-state
z S=1, restituisce il valore di A
z S=0, restituisce un’alta
impedenza (apre il circuito)

A S Uscita
0 0 z
0 1 0
1 0 z
1 1 1

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Demultiplexer lineare

¾ Macchina con:
» 1 ingresso-dati B
» n segnali binari di A0
selezione (a0,…, an-1),
dei quali al più uno è B
DMUXL An-1
attivo
» n uscite-dati (A0,…,An-1),
con Ai=B se ai è attivo,
neutro altrimenti
α0 αn-1
Ai = Bαi

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Multiplexer binario

¾ Se i dati Ai e B sono
A0
vettori di bit, che MUXL
B
viaggiano su un bus An-1
» si parla genericamente
di multiplexer o α0 αn-1
demultiplexer
¾ Se i dati Ai e B sono
A0
singoli bit MUXL
B

» si parla di multiplexer o An-1


demultiplexer binario
α0 αn-1

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Muxl/Dmuxl: un esempio

¾ Supponiamo di avere un “centralino telefonico” in cui n utenti


sorgente vogliono parlare con m utenti destinazione
» vincolo: l’utente di destinazione abilitato deve sentire solo l’utente
sorgente abilitato
A0 B0
A1 B1
… MUXL DMUXL …
An-1 Bm-1
… …
0 1 0.. 0 0 0 0..0 1
Linee di sel. Linee di sel.
utente sorgente utente destinaz.

L’utente A1 è abilitato a parlare con l’utente Bm-1


DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli
Decodificatore (decoder)

¾ Un decodificatore è una macchina che riceve in


ingresso una parola codice (C) e presenta in uscita
la sua rappresentazione decodificata (linee U0, UN-1)
» ovvero, una parola fatta di tutti 0 tranne un 1 nella
posizione indicata da C
¾ Un decodificatore con m linee di ingresso avrà 2m
linee di uscita (esempio, m=3 ingressi, N=2m=8
uscite)

011 decodificatore 00000100


‘3’ in binario 3a posizione
DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli
Sintesi del decodificatore

Esempio: Decodifica 2:4


U0 = B . A
B A U 0 U1 U 2 U3

0 0 1 0 0 0 U 1 = B. A
0 1 0 1 0 0
1 0 0 0 1 0 U2 = B . A
1 1 0 0 0 1
U3 = B . A

A
B
DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli
Il circuito integrato DECODER (SN74139)

Circuito
U0 integrato
U1 SN74139
U2 SN74139 U0
(MSI) U1
U3 EN U2
EN
A U3
A B
B

Quando EN=1 (segnale di abilitazione), vale 1 l’uscita


il cui pedice, in decimale, corrisponde al numero binario
in ingresso (A bit di minor peso)
DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli
Composizione modulare di Decoder 4:16

U0 U0
DEC U1 U1
2:4 U2 U2
U3 U3
U0 U4
U0 DEC U1 U5
2:4 U2 U6
1 DEC U1 U3
C 2:4 U2 U7
U0
D U3 U8
DEC U1
U9
2:4 U2
U10
U3
U11
U0 U12
DEC U1 U13
A 2:4 U2 U14
B U3 U15
DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli
Codificatore (Encoder)

¾ Un codificatore è una macchina che riceve in ingresso una


rappresentazione decodificata (linee U0, UN-1, di cui solo una
alta al più) e fornisce in uscita la parola codice associata a Ui
se Ui=1 (più in generale se è attivo)

U0
Co

Cm-1
UN-1
α
DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli
Multiplexer Indirizzabile

¾ E’ un Multiplexer Lineare i cui segnali di abilitazione


sono collegati con le uscite di un decodificatore

A0
MUX
B
AN-1

α0 αN-1

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Demultiplexer Indirizzabile

¾ E’ un Demultiplexer Lineare i cui segnali di


abilitazione sono collegati con le uscite di un
decodificatore
A0

B DEMUX

AN-1
α0 αN-1

C
DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli
Addizionatore di bit

¾ Schema del sistema:


» A, B : addendi A
S
» r : riporto in ingresso B
R
» S : somma r
» R : riporto in uscita
¾ Tabelle di verità:
A B r S A B r R
0 0 0 0 0 0 0 0
0 0 1 1 0 0 1 0
S = A’B’r + A’Br’ + AB’r’ + ABr
0 1 0 1 0 1 0 0
0 1 1 0 0 1 1 1 R = A’Br + AB’r + ABr’ + ABr =
1 0 0 1 1 0 0 0 = AB(r+r’) + A’Br + AB’r =
1 0 1 0 1 0 1 1
= AB + Ar + Br
1 1 0 0 1 1 0 1
1 1 1 1 1 1 1 1

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Addizionatore di bit: una realizzazione

¾ S = A’B’r + A’Br’ + AB’r’ + ABr

R = A’Br + AB’r + ABr’ + ABr =


= AB(r+r’) + A’Br + AB’r =
= AB + Ar + Br

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Porte di parola

¾ Porte con abilitazione:


» B=αA = α AND A
¾ Parola:
» Vettore di bit
» V = {vo, v1, …, vn}
¾ Porta di parola con
abiitazione:
» α V = {α vo,…, α vn}
¾ Porta generica di parola:
» A AND B =
= {a0 AND b0,…, an AND bn}

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Macchina Sequenziale: architettura generale

¾ La struttura generale di una macchina sequenziale è la seguente:

x1 z1
x2 z2
xn RETE
zn
COMBINATORIA
Ingressi τ, w Uscite

Stato Presente St y1 Y1 Stato Prossimo St+1


FF1

y2 Y2
FF2

yk Yk
FFk

Registri di stato
DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli
Macchina Sequenziale: architettura generale

¾ Il problema della sintesi comportamentale di una rete


sequenziale consiste nella:
» Identificazione delle le funzioni τ e w
» Sintesi della rete combinatoria che le realizza
¾ Gli elementi di memoria sono costituiti da bistabili
¾ La funzione di stato prossimo dipende dal tipo di
bistabili utilizzati
¾ La funzione di uscita è indipendente dal tipo di
bistabili utilizzati

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Il concetto di stato

¾ Le uscite di un circuito sequenziale dipendono da


tutta la storia degli ingressi
¾ Questo aspetto viene formalizzato grazie al concetto
di stato
¾ Lo stato di un circuito sequenziale:
» Contiene tutta l’informazione necessaria a descrivere il
comportamento passato del circuito
» Contiene tutta l’informazione necessaria a definire il
comportamento futuro del circuito
» può essere espresso attraverso un opportuno insieme di
variabili

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Il concetto di stato

¾ Il concetto di stato è legato al concetto di tempo discreto


¾ Lo stato di un circuito deve essere aggiornato ad ogni istante
del tempo discreto, ovvero ad ogni ciclo di clock
¾ Lo stato di un circuito ad un dato istante tk dipende:
» dagli ingressi all’istante tk
» dallo stato precedente, ovvero dallo stato al tempo tk-1
¾ Lo stato di un circuito deve essere pertanto memorizzato
¾ A tale scopo si utilizzano degli elementi di memoria detti
bistabili

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Macchina sequenziale

¾ Il valore delle uscite all'istante t dipende dalla successione


degli ingressi che precedono l'istante t
¾ Ciò implica il concetto di stato
¾ Una macchina sequenziale è definita dalla quintupla (I,U,S,
τ,w ) :
» I - Alfabeto di Ingresso
♦ E' costituito dall'insieme finto dei simboli di ingresso
» U - Alfabeto d'Uscita
♦ E' costituito dall'insieme finto dei simboli d'uscita
» S - Insieme degli Stati
♦ Insieme finito e non vuoto degli stati

» τ - Funzione stato prossimo


» w - Funzione d’uscita

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Macchina sequenziale

¾ Funzione stato prossimo τ


» Ad ogni stato presente e per ogni simbolo di ingresso la funzione τ
associa uno stato futuro:
τ:S×I→S
» Ad ogni coppia {stato, simbolo di ingresso} è associato, se specificato,
uno ed un solo stato futuro.
¾ Funzione d'uscita w
» Genera il simbolo d'uscita
» Macchine di Mealy. L’uscita dipende sia dallo stato sia dall’ingresso:
w :S×I→U
» Macchine di Moore. L’uscita dipende solamente dallo stato:
w:S→U

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Tabella degli stati

¾ Una macchina sequenziale può essere descritta mediante la


Tabella degli stati
¾ Indici di colonna sono i simboli di ingresso ia ∈ I
¾ Indici di riga sono i simboli di stato sj Î S che indicano lo stato
presente
¾ Elementi sono:
» Macchine di Mealy: La coppia {ub ,sj }:
♦ub = w ( ia, sj ) è il simbolo di uscita
♦sj = τ ( ia, sj ) è il simbolo stato prossimo
» Macchine di Moore: Il simbolo stato prossimo sj :
♦sj = w ( ia, sj ) è il simbolo stato prossimo
¾ Nelle macchine di Moore i simboli d'uscita sono associati allo
stato presente

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Tabella degli stati

¾ Macchine di Mealy
i1 i2 ..
Sjt+1 / uj Skt+1 / uk ....
Smt+1 / um Slt+1 / ul ....
.... .... ....

¾ Macchine di Moore
i1 i2 ..
Sjt+1 Skt+1 .... u1
Smt+1 Slt+1 .... u2
.... .... .... ....

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Diagramma degli stati

¾ Spesso, la stesura della Tabella degli stati stati è preceduta


da una rappresentazione grafica ad essa equivalente,
denominata Diagramma degli stati
¾ Il Diagramma degli stati è un grafo orientato G(V,E,L)
» V - Insieme dei nodi
♦ Ogni nodo rappresenta uno stato
♦ Ad ogni nodo è associato un simbolo d'uscita (macchine di Moore)
» E - Insieme degli archi
♦ Ogni arco rappresenta le transizioni di stato
» L - Insieme degli:
♦ Ingressi e Uscite (macchine di Mealy)
♦ Ingressi (macchine di Moore)

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Esempio – Macchina di Mealy

¾ Questoesempio mostra l’equivalenza delle due


rappresentazioni nel caso di una macchina di Mealy
Diagramma degli stati Tabella degli stati

0/1 0 1
s0 s1
1/1 S0 S1/1 S2/1
0/1
1/1 0/0 S1 S3/0 S2/1
1/0 S2 S1/1 S3/0
s2 s3
1/0 S3 S3/0 S0/0
0/0

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Esempio – Macchina di Mealy

¾ Questo esempio mostra l’equivalenza delle due


rappresentazioni nel caso di una macchina di Mealy
Diagramma degli stati Tabella degli stati

0/1 0 1
s0 s1
1/1 S0 S1/1 S2/1
0/1
1/1 0/0 S1 S3/0 S2/1
1/0 S2 S1/1 S3/0
s2 s3
1/0 S3 S3/0 S0/0
0/0

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Esempio – Macchina di Moore

¾ Questo esempio mostra l’equivalenza delle due


rappresentazioni nel caso di una macchina di Moore
Diagramma degli stati Tabella degli stati

0 0 1 U
00 s0 s1 01
1 S0 S1 S2 00
0
1 0 S1 S3 S2 01
1 S2 S1 S3 10
10 s2 s3 11
1 S3 S3 S0 11
0

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Sintesi di una macchina sequenziale

¾ La sintesi si svolge nei seguenti passi:


1. Realizzazione del diagramma degli stati a partire dalle specifiche
informali del problema
2. Costruzione della tabella degli stati
3. Riduzione del numero degli stati: ottimizzazione
4. Assegnamento degli stati: codifica
5. Costruzione della tabella delle eccitazioni
6. Sintesi della rete combinatoria che realizza la funzione stato prossimo
7. Sintesi della rete combinatoria che realizza la funzione d'uscita

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Elementi Bistabili

¾ Come detto, lo stato di un circuito deve essere


memorizzato. A tale scopo si utilizzano degli
elementi di memoria detti bistabili.
¾ Il termine bistabili deriva dal fatto che tali elementi
possono assumere solo due valori: 0 e 1
¾ Esistono diversi tipi di bistabili che differiscono per il
numero di ingressi e per il comportamento
¾ Particolari bistabili, i flip-flop, vengono utilizzati sia
come elemento fondamentale per la costituzione dei
registri sia come elemento ausiliario per la
costruzione di macchine sequenziali più complesse.

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Elementi Bistabili

¾ Essendo un elemento atto a memorizzare un bit b, esso ha


due soli stati (stabili) possibili, che vengono detti:
♦ Stato di set, corrispondente a b = 1;
♦ Stato di reset, corrispondente a b = 0;
¾ Per rendere disponibile all’esterno sia il valore del bit, sia il
suo complemento, si ha:
♦ b = 1: F = 1, F’ = 0.
♦ b = 0: F = 0, F’ = 1.
¾ Un flip-flop deve possedere più stati distinti:
♦ Uno per il mantenimento del bit memorizzato (stato neutro);
♦ Altri stati per il mantenimento del flip-flop in uno dei due stati (stati
attivi).
¾ Ingresso di set, ingresso di reset e ingresso di commutazione
(a completamento o in sostituzione dei due precedenti).

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Elementi Bistabili

¾ I flip-flop possono
» Avere un ingresso di abilitazione
» Essere a memorizzazione (D e RS)
» Essere a commutazione (T e JK)
» Essere sincroni o asincroni
» Essere ad ingressi impulsivi e non
» Autosincronizzati o sincronizzati dall’esterno

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Esempio: Il flip flop RS

R F
S F’

¾ R=0, S=1 -> F posto a 1 e F’ posto a 0 : Stato di Set


¾ R=1, S=0 -> F posto a 0 e F’ posto a 1 : Stato di Reset
¾ R=0, S=0 -> F uguale a Fp e F’ uguale a F’p : Stato di
Memorizzazione
¾ R=1, S=1 -> non ammessa, vale la relazione di vincolo RS=0.

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Esempio: Il flip flop RS

Tabella di Stato
Tabella delle Transizioni
R S Fp F
RS
0 0 0 0
stato 00 01 11 10 F F’
0 0 1 1
q0 q0 q1 - q0 0 1
0 1 0 1
q1 q1 q1 - q0 1 0
0 1 1 1
1 0 0 0 q0 corrisponde a F=0, mentre q1 corrisponde
allo stato F=1
1 0 1 0
Ad esempio, quando ci troviamo nello stato
1 1 0 - q0 e l’ingresso RS è posto a 01, il prossimo
1 1 1 - valore F’ dello stato sarà 1 = q1

Equazione di Stato: F = S + FpR’


DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli
Registri

¾ Un registro è un elemento di memoria


» E’ composto da bistabili
» E’ in grado di memorizzare un insieme di bit
» ad es. un registro di 32 bit dovrà contenere 32 bistabili separati
» L’informazione memorizzata in un registro prende il nome di parola

Caricamento

Caricamento Lettura

Lettura

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Registri

¾ I registri si distinguono sulla base dei seguenti aspetti:


¾ Modalità di caricamento dati
» Parallelo
» Seriale
¾ Modalità di lettura dati
» Parallelo
» Seriale
¾ Operazioni sui dati:
» Scorrimento a destra
» Scorrimento a sinistra
» Scorrimento circolare
» Scorrimento con immissione di un valore

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Registri

¾ Registro parallelo-parallelo a 4 bit

D0 D1 D2 D3

D Q D Q D Q D Q

/Q /Q /Q /Q

Clock

Q0 Q1 Q2 Q3

bistabile
DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli
Registri

¾ Registro serie-serie a 4 bit (Shift Register)

D Q D Q D Q D Q
D Q

/Q /Q /Q /Q

Clock

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Registri a scorrimento

In Out
F1 F2 FN-1 FN
c

P-Out
In S-Out
F1 F2 FN-1 FN
c

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Trasferimento seriale

Out
F1 F2 FN-1 FN

c
In
F1 F2 FN-1 FN

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Trasferimento parallelo

F1 F2 FN-1 FN

P-Out Æ P-In
c

F1 F2 FN-1 FN

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Contatori

¾ Un Contatore modulo n (mod n) è una macchina che


ha:
» N stati di uscita ordinati u : fissato un criterio per ritenere
ui>uj si suppone ui>uj per i > j (u0 stato iniziale e un-1 stato
finale
» Un ingresso di conteggio che quando presente provoca la
variazione dell’uscita da ui a ui+1 per i diverso da n-1 e da
un-1 a u0 per i = n-1
» E’ detto mod n in quanto se, a partire dall’uscita ui, si
applica una sequenza di ingresso contenente r volte il
valore di conteggio c, il contatore finirà nello stato uk, con
k = (i + r) mod n
DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli
Contatori

¾ Ulteriori classificazioni sui contatori:


» Contatore binario: la sequenza delle uscite è codificata in
aritmetica binaria
» Contatore decimale: n = 10 e le uscite sono un codice per
la rappresentazione delle cifre decimali
» Contatore a crescere e a decrescere

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Contatori

¾ Oltre alle uscite di conteggio un contatore può disporre di


altre uscite, dette uscite divisore:
» si presenta in uscita con un periodo che è n volte il periodo del valore
di conteggio

¾ Oltre agli ingressi fondamentali, un contatore può possedere


ingressi ausiliari:
» Ingresso di reset (u = u0)
» Ingressi che settano il valore di n
» Ingressi che selezionano la modalità di conteggio (crescere o a
decrescere)
» Ingresso di preset o load, che pone il contatore in uno stato definito
dall’esterno
DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli
Bus

¾ I bus rappresentano insiemi di linee elettriche che


collegano diverse parti di un sistema digitale
¾ Esempi di bus sono essere le linee che collegano le
uscite di alcuni registri agli ingressi di altri, come
nella figura sottostante

reg 01 reg 02 reg 03 reg 04

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Trasferimento dati su bus unico

¾ Trasferimento da bus a c A
registro (caricamento di un
registro)
» si effettua abilitando il registro in R
lettura attraverso un apposito
segnale di abilitazione

¾ Trasferimento da registro a c A
bus (caricamento da un
registro)
» si effettua collegando il registro
al bus di uscita, attraverso un R
multiplexer o una “porta di
trasmissione” (buffer tristate)

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Buffer tristate

¾ Quando l’abilitazione α è alta, l’uscita è collegata all’ingresso.


¾ Quando α è bassa, l’uscita è in alta impedenza, ovvero non
influenza il valore elettrico del segnale di uscita
¾ In tal caso, sull’uscita potrà quindi essere collegato qualsiasi
altro circuito senza interferenze elettriche
¾ È la tecnica più diffusa per realizzare il collegamento di
diverse "sorgenti" (ad es. registri) verso un bus comune

α α
¾ Buffer tristate con abilitazione ¾ Buffer tristate invertente
0-attiva
DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli
Abilitazione di un bus

¾ Un buffer tristate è anche rappresentato Y = aX


come una “porta di trasmissione” (vedi X Y
figura a destra)
¾ Può essere usato per “multiplexare” su α
un’unica uscita segnali provenienti da
diverse sorgenti
» Ad esempio, nella figura a destra il buffer
A
tristate collegato ad A è attivo, mentre gli altri
sono disattivati, ovvero posti in alta impedenza 1 A
in modo da non interferire elettricamente con la
B
linea comune di uscita
» NOTA: solo un buffer può essere attivo in un C 0
dato istante
0
DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli
Bus bidirezionali

Le due porte non devono mai essere


attivate contemporaneamente !!

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Trasferimento dati con due bus

¾ Consente trasferimenti in parallelo

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


I segnali elettrici come funzioni del tempo

¾ Un segnale elettrico è una tensione variabile nel tempo


Vdd

Vdd/2

0
t

¾ I segnali binari sono rappresentati tipicamente mediante due


livelli di tensione di un segnale elettrico
Vdd

Vdd/2

0
t
DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli
I segnali elettrici come funzioni del tempo

¾ Il segnale binario è un segnale variabile con continuità


¾ In un intervallo di tempo t=t1-t0 il segnale assume infiniti valori,
corrispondenti agli infiniti istanti tra t0 e t1
¾ Si ricorre al concetto di tempo discreto in cui il numero di
istanti discreti in un intervallo t=t1-t0 è finito
Vdd

Vdd/2

0
t
1

0
t
DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli
Il segnale di clock

¾ Il valore del segnale elettrico viene letto o campionato in


istanti determinati
¾ Gli istanti in cui deve essere campionato il segnale elettrico
sono scanditi da un apposito segnale detto clock
¾ Un clock ha le seguenti caratteristiche:
» E’ un segnale binario
» E’ un segnale periodico
¾ Spesso nei sistemi digitali, tutti i componenti con memoria
(flip-flop e memorie) “leggono” gli ingressi nello stesso
istante, scandito dal segnale di clock

Fronte di discesa
1

0
Fronte di salita
Periodo
DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli
Il concetto di tempo

¾ Nel periodo TCK, o ciclo di clock, il segnale assume:


» Il valore logico 1 per un tempo TH
» Il valore logico 0 per un tempo TL
¾ Il rapporto TH / TCK è detto duty-cycle
¾ Il passaggio dal valore 0 al valore 1 è detto fronte di salita
¾ Il passaggio dal valore 1 al valore 0 è detto fronte di discesa
¾ In genere, uno o entrambi i fronti del clock attivano i
componenti con memoria (flip-flop e memorie)
Fronte di discesa
1
TL

0 TH
Fronte di salita
Periodo TCK
DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli
Clock

ideale

impulsivo

su fronte

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli


Clock a più fasi

DIS - Dipartimento di Informatica e Sistemistica- Università di Napoli

Potrebbero piacerti anche