Calcolatori elettronici parte iv
Download
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


Progetto di sistemi
Progetto di Sistemi

go

A

B

done


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: