You are on page 1of 16

FTN Novi Sad

Merni instrumenti - Digitalna elektronika

5. SEKVENCIJALNA
LOGIKA

dr Zoran Mitrović
8-mar.-07

Sekvencijalna logika

Sekvencijalna kola
Prosta kola sa povratnom spregom
Lečevi
Flip-flopovi okidani na ivicu
Vremenska metodologija
kaskadiranje flip-flopova za željenu operaciju
Smicanje signala takta (clock skew)
Asinhroni ulazi
Metastabilnost i sinhronizacija
Osnovni registri
Pomerački registri

8-mar.-07 Merni instrumenti - Digitalna elektronika 2


Sekvencijalna kola

Kola sa povratnom spregom


Izlazi = f(ulaza, prethodnih ulaza, prethodnih izlaza)
Osnova za pravljenje "memorije" u logičkim kolima
Elektronska brava za vrata je primer sekvencijalnog kola
⌧Stanje je memorija
⌧Stanje je “izlaz" i “ulaz" u kombinacionu logiku
⌧Kombinacioni elementi za pamćenje podataka su takođe memorije
novi jednako reset
vrednost
C1 C2 C3
multiplekser mux komb. logika
kontrola
komparator stanje takt

jednako otvoreno/zatvoreno
8-mar.-07 Merni instrumenti - Digitalna elektronika 3

Kola sa povratnom spregom

Kako se kontroliše povratna sprega?


Šta sprečava da vrednosti ne idu beskonačno u krug?

X1 Z1
X2 Z2
• prekidačka •
• mreža •
• •
Xn Zn

8-mar.-07 Merni instrumenti - Digitalna elektronika 4


Najprostija kola sa povratnom spregom

Dva invertora formiraju statičku memorijsku ćeliju


Čuvaće vrednost dok god postoji napajanje

"1"

“upamćena vrednost"
"0"

Kako uneti novu vrednost u memorijsku ćeliju?


Selektivno raskinuti putanju povratne sprege
Uneti novu vrednost u ćeliju
“pamti"

“unos" “upamćena vrednost"


“podatak"

8-mar.-07 Merni instrumenti - Digitalna elektronika 5

Memorija sa ukrštenim gejtovima

Ukršteni NILI gejtovi


Slično paru invertora, sa sposobnošću da se izlaz postavi na 0
(reset=1) ili 1 (set=1)
R Q
Q
R
S Q'
S

Ukršteni NI gejtovi
Slično paru invertora, sa sposobnošću da se izlaz postavi na 0
(reset=1) ili 1 (set=1)
S' Q
Q
S'
R' Q'
R'

8-mar.-07 Merni instrumenti - Digitalna elektronika 6


Vremensko ponašanje

R Q

S Q'

Reset Zadrži Set Reset Set 100 “Trka”

R
S
Q
\Q

8-mar.-07 Merni instrumenti - Digitalna elektronika 7

Dijagram stanja R-S leča

Kombinaciona tabela ponašanja R-S leča

Q Q' Q Q'
0 1 1 0

S R Q
0 0 čuvaj
0 1 0
Q Q'
1 0 1
0 0
1 1 nestabilno

Q Q'
1 1

8-mar.-07 Merni instrumenti - Digitalna elektronika 8


Teoretsko ponašanje R-S leča

SR=10
SR=00 SR=00
SR=01 SR=10
Q Q' SR=01 Q Q'
0 1 1 0
SR=01 SR=10
SR=11
Dijagram stanja
Q Q'
Stanja: moguće 0 0
SR=11 SR=11
vrednosti
Tranzicije: promene SR=00
SR=00
SR=11
bazirane na ulazima SR=01 SR=10

moguće oscilacije Q Q'


između stanja 00 and 11 1 1

8-mar.-07 Merni instrumenti - Digitalna elektronika 9

Posmatrano ponašanje R-S leča

Veoma je teško posmatrati ponašanje R-S leča u stanju 1-1


Jedan od R ili S obično se prvi promeni
Dvoznačno se vraća u stanje 0-1 ili 1-0
takozvana “trka” ("race condition“)
ili nedeterministička tranzicija
SR=10
SR=00 SR=00
SR=01 SR=10
Q Q' SR=01 Q Q'
0 1 1 0
SR=01 SR=10
SR=11

Q Q'
0 0
SR=11 SR=11
SR=00 SR=00
8-mar.-07 Merni instrumenti - Digitalna elektronika 10
Analiza R-S leča

Raskidamo putanju povratne sprege

R Q Q(t)

S Q(t+Δ)

S Q' R

S R Q(t) Q(t+Δ)
0 0 0 0 S
čuvaj
0 0 1 1
0 0 X 1
0 1 0 0 reset
0 1 1 0 Q(t) 1 0 X 1
1 0 0 1 set
R
1 0 1 1
1 1 0 X nije dozvoljeno karakteristična jednačina
1 1 1 X Q(t+Δ) = S + R’ Q(t)

8-mar.-07 Merni instrumenti - Digitalna elektronika 11

R-S leč sa gejtovima


Kontrolišemo kad
ulazi R i S imaju R
R'
uticaj Q

U suprotnom, enable'
najmanji glič na R ili S Q'
dok je “enable” na S' S
niskom nivou može da
prozrokuje promenu
upamćene vrednosti Set Reset
100

S'
R'
enable'
Q
Q'

8-mar.-07 Merni instrumenti - Digitalna elektronika 12


Takt (clock)

Koriste se da se “zadrži” vreme


Čekamo dovoljno dugo da se ulazi (R' and S') smire
Zatim dozvoljavamo da deluju na upamćenu vrednost
Signali takta (clock) su regularni periodični signali
Period (vreme između “tikova”)
Duty-cycle (izražava se u procentima perioda – vreme za koje
je takt navisokom nivou)
duty cycle (u ovom slučaju, 50%)

period

8-mar.-07 Merni instrumenti - Digitalna elektronika 13

Takt (clock) (nastavak)

Kontrolisanje R-S leča signalom takta


Ne dozvoljava se promena R i S dok je takt aktivan
Samo tokom jedne polovine perioda signala takta dozvoljava
se propagacija promene ulaznih signala
Signali moraju da budu stabilni tokom druge polovine takta

R' R
Q

takt'
Q'
S' S
stabilan menja se stabilan menja se stabilan
R' i S'

takt

8-mar.-07 Merni instrumenti - Digitalna elektronika 14


Kaskadiranje lečeva

Spajanje izlaza jednog leča na ulaz drugoga


Kako da sprečimo da promene “protrče” kroz lanac?
Treba kontrolisati protok podataka od jednog leča ka drugom
Svaki period takta – jedan leč u lancu
Obratiti pažnju na logiku između lečeva (strelice na slici) koja
je prebrza

R R Q' R Q'

S S Q S Q

takt

8-mar.-07 Merni instrumenti - Digitalna elektronika 15

Master-Slave struktura

Propagacija se zaustavlja alternacijom takta


Pozitivan takt se koristi da se pamti stanje u jednom R-S leču
Negativan takt se koristi da se pamti stanje u jednom R-S leču
Par se posmatra kao jedna struktura
master-slave flip-flop
dvostruko više logike
izlaz se menja nekoliko kašnjenja gejta nakon padajuće ivice
takta, ali ne utiče na flip-flopove u kaskadi
master stepen slave stepen
P'
R R Q' R Q'

S S Q S Q
P
CLK
8-mar.-07 Merni instrumenti - Digitalna elektronika 16
D Flip-Flop

S i R su komplementarni
Ne može samo da pamti prethodnu vrednost (mora da ima
stabilnu vrednost na ulazu u svakom periodu takta)
Vrednost D neposredno pre nego što takt ide na LOW se
pamti u flip-flopu
Može da se napravi R-S flip-flop dodavanjem logike da se
napravi D = S + R' Q

master stepen slave stepen


P'
R Q' R Q' Q'

D S Q S Q Q
P
CLK
10 gejtova

8-mar.-07 Merni instrumenti - Digitalna elektronika 17

Flip-flopovi okidani ivicom signala takta

Efikasnije rešenje: samo 6 gejtova


osetljivo na ulaze samo blizu ivice signala takta (ne dok je takt HIGH)
D’ D
zadržava D' kad negativnom ivicom okidan
takt ode na LOW D flip-flop (D-FF)
0
4-5 kašnjenja gejta
R
Q moraju da se poštuju vremena
uspostavljanja u zadržavanja signala
Clk=1 da bi se uspešno “uhvatilo”
Q’ stanje ulaza
S
0
zadržava D kad
takt ode na LOW
D’ karakteristična jednačina
D Q(t+1) = D

8-mar.-07 Merni instrumenti - Digitalna elektronika 18


Vezivanje ivicom okidanih flip-flopova u kaskadu

Pomerački registar
Nova vrednost ide u prvi stepen
Prethodna vrednost iz prvog stepena ide u sledeći stepen
Obratiti pažnju na vremena uspostavljanja / zadržavanja /
propagacije (propagacija mora da bude veća od vremena zadržavanja)
Q0 Q1
IN D Q D Q OUT

CLK 100

IN
Q0
Q1
CLK

8-mar.-07 Merni instrumenti - Digitalna elektronika 19

Pregled lečeva i flip-flopova


Razvoj D-FF
Osetljiv na nivo, koristi se u integrisanim kolima posebne namene
⌧može da se napravi sa 4 prekidača
Okidanje ivicom koristi se u programabilnim logičkim kolima
dobar izbor za memorijska kola
Ranije je J-K FF bio popularan, ali se sad skoro ne koristi
Sličan sa R-S; stanje 1-1 koristi se da se komplementira izlaz
Dobar u vreme TTL/SSI (kompleksnija ulazna funkcija:
D = JQ' + K'Q
Nije dobar izbor zaPAL/PLA jer zahteva 2 ulaza
Može uvek da se implementira korišćenjem D-FF
Preset i clear ulazi su korisni kod flip-flopova
Koriste se na početku rada, ili da se kolo resetuje u poznato stanje

8-mar.-07 Merni instrumenti - Digitalna elektronika 20


Registri

Kolekcija flip-flopova sa sličnom logikom i kontrolnim


signalima
Upamćene vrednosti su povezane (tj., formiraju binarnu vrednost)
Zajednički takt, reset i set
Slična logika u svim stepenima
Primeri
Pomerački registri
OUT1 OUT2 OUT3 OUT4
Brojači
"0"

R S R S R S R S
D Q D Q D Q D Q

CLK

IN1 IN2 IN3 IN4


8-mar.-07 Merni instrumenti - Digitalna elektronika 21

Pomerački registar

Pamti odmerke ulaza


Pamti npr. 4 poslednje ulazne vrednosti u sekvenci
4-bitni pomerački registar:

OUT1 OUT2 OUT3 OUT4

IN D Q D Q D Q D Q

CLK

8-mar.-07 Merni instrumenti - Digitalna elektronika 22


Univerzalni pomerački registar

Pamti 4 vrednosti
Serijski ili paralelni ulazi
Serijski ili paralelni izlazi
Dozvoljava pomeranje ulevo ili udesno
Nova vrednost se ubacuje sleva ili zdesna
izlaz
clear postavlja sadržaje registra i
izlaz na 0
levo_ulaz desno_izlaz
levo_izlaz desno_ulaz s1 i s0 definišu funkciju pomeranja
clear
s0 takt s0 s1 funkcija
s1 0 0 hold stanje
0 1 pomeranje udesno
1 0 pomeranje ulevo
1 1 unos nove vrednosti
ulaz

8-mar.-07 Merni instrumenti - Digitalna elektronika 23

Struktura univerzalnog pomeračkog registra

Posmatrajmo jedan od 4 flip-flopa


Nova vrednost u sledećem ciklusu takta:

N-ta ćelija
ka N-1-voj ka N+1-voj
ćeliji Q ćeliji
D
CLK

clear s0 s1 nova vrednost CLEAR


1 – – 0 s0 i s1
0 0 0 izlaz 0 1 2 3
kontrola mux
0 0 1 izlazna vrednost FF sa leva
(pomeranje udesno) Q[N-1] Q[N+1]
0 1 0 izlazna vrednost FF sa desna (levo) (desno)
(pomeranje ulevo) Ulaz[N]
0 1 1 ulaz

8-mar.-07 Merni instrumenti - Digitalna elektronika 24


Primena pomeračkog registra

Paralelno-serijska konverzija za serijski prenos

paralelni izlazi

paralelni ulazi

serijski prenos

8-mar.-07 Merni instrumenti - Digitalna elektronika 25

Kolo za prepoznavanje sleda vrednosti

Kombinaciona funkcija ulaznih odmeraka


U ovom slučaju, prepoznaje se sled vrednosti 1001 na jednom
ulaznom signalu

OUT

OUT1 OUT2 OUT3 OUT4

IN D Q D Q D Q D Q

CLK

8-mar.-07 Merni instrumenti - Digitalna elektronika 26


Brojači

Sekvencijalno kroz fiksni set vrednosti


U ovom slučaju: 1000, 0100, 0010, 0001
Ako je jedna od vrednosti početno stanje (upisom ili pomoću
set/reset)
OUT1 OUT2 OUT3 OUT4

IN D Q D Q D Q D Q

CLK

Mebijusov (ili Džonsonov) brojač


U ovom slučaju, 1000, 1100, 1110, 1111, 0111, 0011, 0001, 0000
OUT1 OUT2 OUT3 OUT4

IN D Q D Q D Q D Q

CLK

8-mar.-07 Merni instrumenti - Digitalna elektronika 27

Binarni brojač

Logika između registara (nije običan multiplekser)


XOR odlučuje kad bit treba da se promeni
Uvek najniži bit, samo kad je prvi bit TRUE za drugi bit, itd.

OUT1 OUT2 OUT3 OUT4

D Q D Q D Q D Q
CLK

"1"

8-mar.-07 Merni instrumenti - Digitalna elektronika 28


Četvorobitni binarni sinhroni brojač na gore

Standardna komponenta sa mnoštvom primena


Positivnom ivicom okidani FFovi sa sinhronim load i clear ulazima
Paralelni upis podataka sa D, C, B, A
Enable ulaz: mora da bude aktivan da se dozvoli brojanje
RCO: ripple-carry izlaz koristi se za kaskadiranje brojača
⌧high kad je brojač u najvećoj vrednosti 1111
⌧implementira se korišćenjem I gejta
EN
(2) RCO ide na HIGH
D
C RCO
B
A QD
(3) Najviša 4 bita se QC
inkrementiraju LOAD QB
CLK QA
CLR
(1) Najniža 4-bita = 1111

8-mar.-07 Merni instrumenti - Digitalna elektronika 29

Brojači sa pomerajem

Početni broj – sinhroni upis


"1" EN
npr., 0110, 0111, 1000, 1001, 1010, RCO
1011, 1100, 1101, 1111, 0110, . . . "0" D QD
QC
"1" C
QB
Krajnji broj – komparator za
"1" B
"0" A QA

krajnju vrednost
LOAD
CLK

npr., 0000, 0001, 0010, ..., 1100,


"0" CLR

1101, 0000

Ako se izlaz komparatora


veže za reset, brojač će "1" EN
imati vrednosti između RCO

početne i krajnje (promenjen


"0" D QD
"0" C QC
"0" B QB
moduo brojača) "0" A
LOAD
QA

CLK
CLR
8-mar.-07 Merni instrumenti - Digitalna elektronika 30
Pregled sekvencijalne logike

Osnovni blok za gradnju kola sa stanjem


Leč i flip-flop
R-S leč, R-S master/slave, D master/slave, ivicom okidani D FF
Vremenska metodologija
Upotreba signala takta
Kaskadno vezani FF rade zato što su kašnjenja zbog propagacije
veća od vremena držanja
Asinhroni ulazi i problemi koje mogu da unesu
Osnovni tipovi registara
Pomerački registri
Detektori sleda vrednosti
Brojači
8-mar.-07 Merni instrumenti - Digitalna elektronika 31

You might also like