calcolatori elettronici parte iv
Download
Skip this Video
Download Presentation
Calcolatori Elettronici Parte IV

Loading in 2 Seconds...

play fullscreen
1 / 57

Calcolatori Elettronici Parte IV - PowerPoint PPT Presentation


  • 116 Views
  • Uploaded on

Calcolatori Elettronici Parte IV. Registri Progetto di Macchine Sincrone Contatori Registri a scorrimento. T 1. T 1. T 1. u 1. u 1. u 1. Registri. Un registro atto a memorizzare un dato tipo T a cardinalità k è una MS avente:

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Calcolatori Elettronici Parte IV' - moanna


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
calcolatori elettronici parte iv

Calcolatori ElettroniciParte IV

Registri

Progetto di Macchine Sincrone

Contatori

Registri a scorrimento

registri

T1

T1

T1

u1

u1

u1

Registri
  • Un registro atto a memorizzare un dato tipo T a cardinalità k è una MS avente:
    • k stati di uscita (u1,u2,…,uk) ciascuno associato ad un valore da memorizzare
    • t stati di ingresso (t>k) , T suddiviso in due sottoinsiemi:

XN, con X=(x1,x2,…,xk) gli ingressi attivi per la memorizzazione; N=(n1,n2,…,nm) ingressi neutri per “mantenere l’uscita del registro, m1

T

R

U

…..

nj conserva lo stato

uj=f(xj) nel caso più generale

ipotesi
Ipotesi
  • Sequenza di ingresso di natura impulsiva
  • Basi corrispondenti agli ingressi neutri
    • b1x1b1 ….. b2x2b2 … b3x3b3
  • Registro a Sincronizzazione esterna
  • Registro autosincronizzato
registro a s e

s=0

s=1

n1

n2

nk

x1

x2

xk

u

q1

q1

q1

..

q1

q1

q2

..

qk

u1

q2

q2

q2

..

q2

q1

q2

..

qk

u2

q3

q3

q3

..

q3

q1

q2

..

qk

u3

..

qk

qk

qk

qk

q1

q2

..

qk

uk

Registro a S. E.

I

s

I=(l1,l2,…,lk)

s=(0,1)

R

registro autosincronizzato

n

x1

x2

xk

u

q1

q1

q1

q2

..

qk

u1

q2

q2

q1

q2

..

qk

u2

q3

q3

q1

q2

..

qk

u3

..

qk

qk

q1

q2

..

qk

uk

Registro autosincronizzato

Caso concreto: unica base e k ingressi

Puramente impulsivi

Gli istanti di caricamento sono determinati

da uno degli impulsi

X=(x1,x2,…,xk)

N=(n)

tempificazione dei registri
Tempificazione dei Registri
  • Registri “latch”
    • Catturano l’ingresso per tutti il tempo in cui è presente una variabile impulsiva attiva
      • È valido finchè effettivamente gli ingressi sono impulsivi
  • Registri a “derivazione del fronte”
    • Es. Accoppiamento capacitivo
    • .. Per ottenere impulsi sufficientemente brevi
tempificazione dei registri 2
Tempificazione dei Registri (2)
  • Registri “edge triggered”
    • La variazione dell’uscita avviene in corrispondenza di una variazione di livello di una variabile impulsiva reale
  • Registri “Master Slave”
modelli reali di macchine sincrone 1
Modelli reali di Macchine Sincrone (1)
  • R è usato per memorizzare gli stati della macchina
  • I impulsivi
  • P uscite di posizionamento dello stato, impulsive e p=p(q,i)
  • U a livelli o imp.
  • Dritardo di posizionamento del registro

D

R

M C

P

Q

u

I

modelli reali di macchine sincrone 2

Neutri Attivi

Q0

Q1

Q2

Qn

Q0

Q1

Q2

Qn

Q0

Qx

Qy

Qz

Stabili | p. sincrona

Modelli reali di Macchine Sincrone (2)

D

R

M C

P

Q

I

u

tempificazione 1
Tempificazione (1)
  • Occorre garantire che il ritardo D nel posizionamento dei registri sia maggiore della durata degli impulsi, di modo che lo stato non cambi durante la fase di posizionamento,

d < D

q

i

p

D

tempificazione 11
Tempificazione (1)
  • Occorre garantire che il ritardo D nel posizionamento dei registri sia maggiore della durata degli impulsi, di modo che lo stato non cambi durante la fase di posizionamento,

d < D

q

i

d

p

D

modello sincronizzato dall esterno
Modello Sincronizzato dall’esterno

s

R

D

Non esistono problemi tipici delle

Macchine a livelli (alee multiple, statiche)

In quanto l’uscita P’ risulta inattiva (in assenza di impulso s) per il caricamento del registro

 occorre garantire che la variazione dei livelli non sia Sincrona con il fronte attivo di s

es.. Apparecchiatura di clock a due fasi

M C

P

Q

I

u

esercizio
Esercizio
  • Si costruisca una rete nella quale entrano serialmente i bit di un codice decimale 8-4-2-1 a partire dal bit meno significativo e dalla quale esca un segnale che individui se i quattro bit costituiscono o meno una delle 10 parole-codice previste.

?

Parola vera

Parola falsa

0110

specifiche
Specifiche
  • Si assegna ad un segnale a livelli x la rappresentazione del bit del codice, e ad un clock la tempificazione.
  • In sincronia con il 4 bit, z = 1 indica la correttezza del codice.
  • Macchina Sincrona a sincronizzazione esterna
descrizione del problema
Descrizione del Problema
  • z = 1
    • 0000
    • 0001
    • 0010
    • 0011
    • 0100
    • 0101
    • 0110
    • 0111
    • 1000
    • 1001
  • z = 0
    • 1010
    • 1011
    • 1100
    • 1101
    • 1110
    • 1111
paul unger
Paul&Unger

S0= 0

S1= 1,2

S2= 3,5

S3= 4,6

S4= 7,8,9,11,12,13

S5= 10,14

4

6

1

2

3

5

7

10

macchina a s r

0

0,1

1

1

0

2

3

1

0,1

0

4

5

0/1

1/0

0

0/1

1/1

Macchina a S.R.
codifica degli stati

0

1

000

101/1

101/1

001

-

-

010

011

011

011

000

110

100

-

-

101

010

010

110

101/1

101

111

110

110

Codifica degli Stati
  • Codificando gli stati con (nell’ordine: y3y2y1)
  • S0 = 101
  • S1 = 010
  • S2 = 111
  • S3 = 011
  • S4 = 110
  • S5 = 000

Tabella in codice

infatti per rs e t

RS

00

01

11

10

S

S0

S0

S1

-

S0

T

S1

S1

S1

-

S0

0

1

Fp

0

1

1

1

Infatti, per RS e T …
infatti per d e jk

aD

kj

00

00

01

01

11

11

10

10

S

S

S0

S0

S0

S0

S1

S0

S1

S1

S0

S0

S1

S1

S1

S1

S1

S1

S0

S1

S0

S0

Infatti, per D e JK …

A=1

tornando al progetto
Tornando al progetto …
  • Scegliendo Flip Flop di tipo JK, bisognerà progettare 6 segnali di posizionamento:
  • J1= J1( y3y2y1x), K1= K1(y3y2y1x)
  • J2= J2(y3y2y1x), K2= K2(y3y2y1x)
  • J3= J3(y3y2y1x), K3= K3(y3y2y1x)
ovvero per jk
… ovvero per JK
  • Posso costruire mappe di Karnaugh per i segnali di posizionamento del JK e per le uscite!
per il primo ff jk ho

y1x

y1x

00

00

01

01

11

11

10

10

y3y2

y3y2

00

00

11

-1

1

-

-

-

-

-

1

-

-

1

-

1

-

1

01

01

-

1

-

1

1

-

1

-

11

11

10

10

-

-

-

-

-

1

-

1

Per il primo FF JK ho:

J1 = 1 K1 = 1

per il secondo ff jk ho

y1x

y1x

00

00

01

01

11

11

10

10

y3y2

y3y2

00

00

-

-

-

-

-

-

-

-

-

1

-

01

01

-

1

1

-

-

-

11

11

10

10

-

-

-

-

1

-

-

1

Per il secondo FF JK ho:

J2 ha diverse f.m. eq.,

Scelgo J2=y3

per il terzo ff jk ho

y1x

y1x

00

00

01

01

11

11

10

10

y3y2

y3y2

00

00

11

-1

-

1

-

-

-

-

-

1

-

-

1

-

01

01

-

-

-

-

11

11

10

10

-

-

-

-

1

-

-

1

Per il terzo FF JK ho:
per le uscite

y1x

00

01

11

10

y3y2

00

1

1

-

-

01

1

11

10

-

-

Per le uscite ….
  • Per quanto attiene le uscite, se si desidera un’uscita impulsiva, si ha che

z’ = c  z (y3y2y1x)

  • z si ottiene dalla seguente mappa
contatori
Contatori
  • Macchine fondamentali
    • Aritmetica
    • Funzioni di controllo
  • Diversi tipi di contatori
    • Tempificazione
    • Segnali di ingresso uscita
contatore astratto generalizzato
Contatore Astratto Generalizzato

U

  • Macchina sincrona
    • .. Anche se la tempificazione interna può essere asincrona

u/d

div

Counter-mod-M

EN

rp

cp

r

l

I

esempio 2
Esempio (2)

cp

3

2

1

0

0

stato

div

rp

contatore astratto generalizzato1

U

u/d

div

Counter-mod-M

EN

rp

cp

r

l

I

Contatore Astratto Generalizzato
  • Cp
    • Conteggio
    • u/d: up o down
    • EN: enable generale al conteggio
  • div
    • Divisore
      • Ho tutti 0 tranne un 1 tra i conteggi
  • rp
    • Ripple Asserito se ho “carry” oppure “borrow”
contatore astratto generalizzato 2

U

div

Counter-mod-M

EN

rp

cp

r

l

I

Contatore Astratto Generalizzato (2)
  • U
    • Uscita
  • I
    • Ingresso omogeneo con U
  • L
    • Load: se attivo inizializza ad I l’uscita U
  • r
    • Reset, se attivo produce l’azzeramento di U
      • P: preset, pone il valoe M-1 ad U

u/d

sincroni e asincroni
Sincroni e Asincroni
  • Asincrono
    • Macchina sequenziale avente come ingresso una variabile di conteggio, della quale conta solo i fronti di salita, di discesa oppure entrambi
      • Almeno uno dei bistabili non riceve in ingresso il segnale di conteggio ed il suo eventuale cambiamento dis tato è determinato solo dalla sua funzione stato prossimo, che dipende dallo stato degli altri bistabili
  • Sincrono
    • Macchina di Moore
      • Tutti i bistabili che costituiscono la memoria del contatore ricevono simultaneamente in ingresso il segnale di conteggio e tutti quelli che devono commutare commutano simultaneamente
contatori asincroni opp
Contatori Asincroni ( opp )
  • Un contatore asincrono mod-n che conti i soli fronti di salita o di discesa può essere realizzato con 2.n stati

0 1 2 3 4 5 6 7 0

contatori asincroni
Contatori Asincroni ( )
  • Un contatore asincrono mod-n che conti i fronti di salitae di discesa può essere realizzato con n stati, se n è pari

0 1 2 3 0

contatori asincroni opp1
Contatori Asincroni ( opp )
  • Un contatore asincrono mod-n che conti i fronti di salitae di discesa può essere realizzato con 2.n stati, se n è dispari

0 1 2 3 4 5 0 1 2

Il ritorno allo stato iniziale

È possibile solo se

L’ultimo stato è dispari

ripple counter

rp

rp

rp

0

1

9

cp

cp

cp

mod10

mod10

mod10

Ripple Counter

3 cont. mod. 10  Mod 103

… il contatore del gas ….

… non tutte le variazioni di stato

dei flip flop sono sincrone con cp

Contatore asincrono mod bk

ripple counter mod 2 k
Ripple counter mod 2k

Contatore

Mod-23

Ripple counter

JK con J=K=1 funziona come T, contatore mod-2

Il ripple viene generato quando raggiungo 1.

Collegamento in cascata di macchine asincrone

contatori sincroni
Contatori sincroni
  • Possono essere progettati con la teoria classica delle macchine sincrone pilotate da un impulso di sincronismo.

000

001

010

011

100

101

110

111

LSB: 0101

2 c.: 0011, passa

Da 0 a 1 quando la 1.c.

È 1.

MSB 000 0

11110

Passa Da 0 a 1 quando

la 2.c. è 1.

contatori sincroni1
Contatori sincroni
  • Usando ff T sincroni come v. di stato, ho le funzioni di posizionamento:

T0=1; T1= Q0; T2= Q0 Q1

Generalizzando…

Tk=Q0 Q1 ….. Qk-1

000

001

010

011

100

101

110

111

registri a scorrimento

Parallel out

in

a

out

b

Parallel in

Registri a Scorrimento
  • In/out
    • Ingresso e uscita seriale
    • a abilitazione allo shift
  • Parallel In/Out
    • Abilitato da b
shift logico e aritmetico

1

1

1

0

0

0

1

1

0

1

1

1

0

0

0

1

1

logico

1

1

1

1

0

0

0

1

1

aritmetico

Shift logico e aritmetico
propriet dei registri a scorrimento

0

0

0

0

0

0

0

0

0

0

1

0

0

1

0

0

0

1

0

1

0

0

1

0

Proprietà dei registri a scorrimento

9

Right Shift Register

9 DIV 2 = 4

Left Shift Register

9*2 = 18

serializzazione e rotate

0

0

0

0

0

0

1

1

0

0

0

0

1

1

0

0

Serializzazione e Rotate

b

Rotate Left

Rotate Right

shift circolari usati come contatori
Shift Circolari usati come contatori

10000000

01000000

00100000

00010000

00001000

00000100

00000010

00000001

Shift register con 8 bit

contatore modulo 8

contatori johnson

1

1

0

0

0

0

0

0

Contatori Johnson

00000000

10000000

11000000

11100000

11110000

11111000

11111100

11111110

11111111

01111111

00111111

00011111

00001111

00000111

00000011

00000001

Cont. Mod-16

parallelo serie retroazione

M1

M2

M1

serie

w

w

M1

M2

M2

parallelo

feedback

Parallelo, Serie, Retroazione
esempio riconoscitore 8421

0

0,1

1

1

0

2

3

1

0,1

0

4

5

0/1

1/0

0

0/1

1/1

Esempio riconoscitore 8421
  • Contatore mod-4 (abcd)
  • Un dispositivo che mi dice se sto a destra o sinistra del grafo a seconda degli ingressi

a

b

c

d

ovvero
Ovvero

x

M

clock

z0

counter

Mod-4

z1

Counter mod-4

a=(0); b=(1); c=(2,3); d=(4,5)

A=(0,1,2,4); B=(3,5)

ovvero1

a

b

c

d

A=(0,1,2,4); B=(3,5)

0

0,1

1

1

0

2

3

1

0,1

0

4

5

0/1

1/0

0

0/1

1/1

Ovvero …

a=00

B=01

c=10

d=11

A=0

B=1

Codifica:

ad