Sunteți pe pagina 1din 44

Arhitectura calculatoarelor i sisteme de operare - partea I

III. Circuite secveniale

87
Arhitectura calculatoarelor i sisteme de operare - partea I

Circuit secvenial
ieirea la orice moment depinde de
intrare
starea intern
deci pentru aceeai intrare se pot obine
valori diferite la ieire, la momente diferite
starea intern
este memorat de ctre circuit
evolueaz n timp
88
Arhitectura calculatoarelor i sisteme de operare - partea I

Diagrama bloc

89
Arhitectura calculatoarelor i sisteme de operare - partea I

Evoluia strii
starea se modific la anumite momente
sincron: la intervale regulate de timp
date de un semnal special (ceas)
asincron: la momentul apariiei unui eveniment
evenimentele sunt definite n funcie de activitatea
circuitului
de ce nu se modific permanent?
transmiterea semnalului prin pori i prin liniile de
comunicare se face cu ntrzieri
semnalele - luate n considerare dup stabilizare
90
Arhitectura calculatoarelor i sisteme de operare - partea I

Ceasul
semnal periodic
ciclu activ - procentajul din perioad n care
semnalul este activ
depinde de ce nseamn semnal activ
pe nivel (0 sau 1)
pe front (trecerea de la 0 la 1 sau invers)
durata perioadei
suficient de mare pentru a avea intrri stabile
91
Arhitectura calculatoarelor i sisteme de operare - partea I

Implementare
cea mai simpl variant
esenial este conexiunea invers

n general se folosesc scheme mai complexe


92
Arhitectura calculatoarelor i sisteme de operare - partea I

Tipuri de circuite secveniale

la nivel de bit - circuite bistabile


dup cum este detectat semnalul activ
latch - activ pe nivel
flip-flop - activ pe front
circuite pe mai muli bii
regitri, numrtoare (contoare)
formate din mai multe circuite bistabile
93
Arhitectura calculatoarelor i sisteme de operare - partea I

III.1. Circuite bistabile

94
Arhitectura calculatoarelor i sisteme de operare - partea I

Bistabil
cum trebuie s arate un circuit care
implementeaz bitul?
specificaii
s se poat scrie n el un 0 sau un 1
s memoreze acea valoare pn la scrierea
alteia
s se poat citi ultima valoare scris
nu poate fi circuit combinaional
(memorare)
95
Arhitectura calculatoarelor i sisteme de operare - partea I

Bistabil RS fr ceas
dou intrri (R,S), dou ieiri (Q,P), dou
conexiuni inverse
circuitul implementeaz un singur bit: P Q

96
Arhitectura calculatoarelor i sisteme de operare - partea I

Funcionarea bistabilului RS (1)


la prima vedere avem simultan
q = Q i p = P
QpR
P q S
de fapt, ieirile nu se modific instantaneu
la modificarea intrrilor
datorit timpilor de propagare prin pori
deci putem studia evoluia prin tabele de adevr
97
Arhitectura calculatoarelor i sisteme de operare - partea I

Funcionarea bistabilului RS (2)


considerm (q,p)
Diagrama Karnaugh
valorile curente ale
ieirile: QP
ieirilor qp\RS 00 01 11 10
iar (Q,P) valorile 00 11 10 00 01
viitoare 01 01 00 00 01
n funcie de (q,p) i de 11 00 00 00 00
intrrile (R,S) 10 10 10 00 00

care vor deveni


efective dup timpii de QpR
propagare P q S
98
Arhitectura calculatoarelor i sisteme de operare - partea I

Stri stabile
n principiu, (Q,P) se
modific permanent
dar atunci cnd qp\RS 00 01 11 10
(Q,P)=(q,p), avem o 00 11 10 00 01
stare stabil 01 01 00 00 01
dorim identificarea 11 00 00 00 00
acestor stri 10 10 10 00 00
circuitul poate fi
controlat dac trece
doar prin strile stabile
99
Arhitectura calculatoarelor i sisteme de operare - partea I

Funcionare (1)
stare iniial (q,p) evoluie (q,p) concluzie
R=0, S=1
00 00 10 stabil
01 01 00 10 stabil circuitul evolueaz
ntotdeauna spre starea
10 10 stabil stabil (Q,P)=(1,0)
11 11 00 10 stabil
R=1, S=0
00 00 01 stabil
01 01 stabil circuitul evolueaz
ntotdeauna spre starea
10 10 00 01 stabil stabil (Q,P)=(0,1)
11 11 00 01 stabil
100
Arhitectura calculatoarelor i sisteme de operare - partea I

Funcionare (2)
stare iniial (q,p) evoluie (q,p) concluzie
R=0, S=0
00 00 11 00 ...
pentru q=p, circuitul
01 01 stabil oscileaz la infinit
10 10 stabil pentru qp, circuitul i
pstreaz starea (stabil)
11 11 00 11 ...
R=1, S=1
00 00 stabil
01 01 00 stabil circuitul evolueaz
ntotdeauna spre starea
10 10 00 stabil stabil (Q,P)=(0,0)
11 11 00 stabil
101
Arhitectura calculatoarelor i sisteme de operare - partea I

Funcionare (3)

reamintim condiia P Q
(R,S)=(0,0): pstrare stare existent
(memorare)
(R,S)=(0,1): stabilizare la Q=1 (set)
(R,S)=(1,0): stabilizare la Q=0 (reset)
(R,S)=(1,1): combinaie interzis
deoarece P=Q - nu implementeaz un bit
102
Arhitectura calculatoarelor i sisteme de operare - partea I

Circuite secveniale sincrone

se adaug bistabilului RS un semnal de


sincronizare (ceas)
pornind de la acesta se pot realiza alte
circuite bistabile
D, JK, T
toate sunt de tip latch (active pe front)

103
Arhitectura calculatoarelor i sisteme de operare - partea I

Latch RS cu ceas
q(=Qt) R S Qt+1
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 *
1 0 0 1
1 0 1 1
1 1 0 0
1 1 1 *

104
Arhitectura calculatoarelor i sisteme de operare - partea I

Latch D
modeleaz doar situaiile RS
elimin combinaiile interzise
aici ieirea nu depinde de fapt de starea anterioar

q(=Qt) D Qt+1
0 0 0
0 1 1
1 0 0
1 1 1

105
Arhitectura calculatoarelor i sisteme de operare - partea I

Latch JK
elimin combinaia imposibil de la bistabilul RS

q(=Qt) J K Qt+1
0 0 0 0
0 0 1 0
0 1 0 1
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 1
1 1 1 0
106
Arhitectura calculatoarelor i sisteme de operare - partea I

Latch T
derivat din bistabilul JK
modeleaz doar situaiile J=K

q(=Qt) T Qt+1
0 0 0
0 1 1
1 0 1
1 1 0

107
Arhitectura calculatoarelor i sisteme de operare - partea I

Evoluia strilor
R S Qt+1 J K Qt+1
0 0 Qt neschimbat 0 0 Qt neschimbat
0 1 1 scriere 1 0 1 0 scriere 0
1 0 0 scriere 0 1 0 1 scriere 1
1 1 * interzis 1 1 Qt inversare

D Qt+1 T Qt+1
0 0 scriere 0 0 Qt neschimbat
1 1 scriere 1 1 Qt inversare

108
Arhitectura calculatoarelor i sisteme de operare - partea I

Diagrame bloc pentru bistabili

109
Arhitectura calculatoarelor i sisteme de operare - partea I

Tem

implementai i analizai comportamentul


bistabilului RS (fr ceas) utiliznd pori
NAND n locul porilor NOR
similar pentru bistabilii latch RS, D, JK, T

110
Arhitectura calculatoarelor i sisteme de operare - partea I

Flip-flop

intrrile sunt luate n considerare doar pe


frontul cresctor (sau descresctor) al
semnalului de ceas
cum se poate obine un flip-flop
electronic - derivarea semnalului de ceas
utiliznd circuite latch circuite master-slave

111
Arhitectura calculatoarelor i sisteme de operare - partea I

Flip-flop master-slave D

112
Arhitectura calculatoarelor i sisteme de operare - partea I

Latch vs. flip-flop


fiecare categorie are utilitatea sa
circuitele flip-flop - utilizate pentru
comanda sistemelor digitale
frontul semnalului de ceas este foarte scurt
comparativ cu perioada ceasului
exact un pas n evoluia sistemului ntr-o
perioad de ceas
circuitele latch - sisteme asincrone
113
Arhitectura calculatoarelor i sisteme de operare - partea I

III.2. Circuite secveniale


complexe

114
Arhitectura calculatoarelor i sisteme de operare - partea I

Regitri
un circuit bistabil controleaz un singur bit
nu foarte util n practic
putem utiliza mai muli bistabili simultan
toi primind acceai comand
un asemenea circuit se numete registru
tipuri de regitri
paraleli
cu deplasare (seriali)
115
Arhitectura calculatoarelor i sisteme de operare - partea I

Registru paralel
implementare cu
bistabili D
pot fi latch sau flip-
flop, dup necesiti
aceeai comand
(ceas)
toi bistabilii se
modific la aceleai
momente
extinderea bistabilului
116
Arhitectura calculatoarelor i sisteme de operare - partea I

Registru cu deplasare (clasic)


memoreaz ultimele n valori de la intrare
poate fi implementat doar cu flip-flop
tem: de ce?

117
Arhitectura calculatoarelor i sisteme de operare - partea I

Ali regitri cu deplasare

118
Arhitectura calculatoarelor i sisteme de operare - partea I

Registru universal
intrri i ieiri seriale sau paralele
deplasare spre stnga sau spre dreapta
pot fi folosite cele care sunt necesare la un moment dat

s0 s1 funcie
0 0 nemodificat
0 1 deplasare dreapta
1 0 deplasare stnga
1 1 ncrcare paralel

119
Arhitectura calculatoarelor i sisteme de operare - partea I

Proiectarea unui circuit secvenial


main cu numr finit de stri (automat)
1. stabilirea strilor prin care trece circuitul
2. stabilirea tranziiilor ntre stri
starea urmtoare i ieirile n funcie de intrri
i de starea curent
3. codificarea strilor
pe numrul de bii necesar
4. scrierea tabelului de adevr pentru tranziii
120
Arhitectura calculatoarelor i sisteme de operare - partea I

Proiectarea unui circuit secvenial


5. minimizare
6. implementare
starea este memorat prin circuite bistabile
partea combinaional - conform minimizrii
intrrile prii combinaionale (starea curent) se
preiau de la ieirile circuitelor bistabile i de la
variabilele de intrare
ieirile prii combinaionale (starea urmtoare) se
aplic la intrrile circuitelor bistabile
121
Arhitectura calculatoarelor i sisteme de operare - partea I

Numrtorul (contorul) binar

reine la fiecare moment un numr pe n bii


la fiecare "btaie" a ceasului - incrementare
poate fi i decrementare
dup valoarea maxim urmeaz din nou 0
nu are intrri, doar variabile de stare
care rein de fapt numrul curent
ieirile sunt identice cu variabilele de stare

122
Arhitectura calculatoarelor i sisteme de operare - partea I

Exemplu: n=4
starea curent starea urmtoare starea curent starea urmtoare
q3 q2 q1 q0 d3 d2 d1 d0 q3 q2 q1 q0 d3 d2 d1 d0
0 0 0 0 0 0 0 1 1 0 0 0 1 0 0 1
0 0 0 1 0 0 1 0 1 0 0 1 1 0 1 0
0 0 1 0 0 0 1 1 1 0 1 0 1 0 1 1
0 0 1 1 0 1 0 0 1 0 1 1 1 1 0 0
0 1 0 0 0 1 0 1 1 1 0 0 1 1 0 1
0 1 0 1 0 1 1 0 1 1 0 1 1 1 1 0
0 1 1 0 0 1 1 1 1 1 1 0 1 1 1 1
0 1 1 1 1 0 0 0 1 1 1 1 0 0 0 0

123
Arhitectura calculatoarelor i sisteme de operare - partea I

Exemplu: n=4
prin minimizare se obin ecuaiile
d0 q0 q0 1
d1 q1 q 0 q1 q 0 q1 q 0
d2 q 2 q1 q 0 q 2 q1 q 2 q 0 q 2 q1 q 0
d3 q 3 q 2 q1 q 0 q 3 q 2 q 3 q1 q 3 q 0
q 3 q 2 q1 q 0
implementarea strii - cu flip-flop-uri D
124
Arhitectura calculatoarelor i sisteme de operare - partea I

Implementare

125
Arhitectura calculatoarelor i sisteme de operare - partea I

Microprogramare (1)

form alternativ de implementare


starea este memorat tot de circuite bistabile
partea combinaional - cu ajutorul unei
memorii ROM
intrrile funciilor booleene se aplic la intrrile
de adres ale circuitului
iar ieirile funciilor booleene se colecteaz de
la ieirile de date
126
Arhitectura calculatoarelor i sisteme de operare - partea I

Microprogramare (2)
implementarea prii combinaionale
se pornete tot de la tabelul de adevr
n fiecare locaie se scriu valorile dorite pentru
ieire
avantaj - flexibilitate
orice modificare a automatului implic doar
rescrierea coninutului memoriei ROM
dezavantaj - vitez redus
memoria ROM este mai lent dect porile
127
Arhitectura calculatoarelor i sisteme de operare - partea I

Acelai exemplu
avem 16 (= 24) stri
codificate pe 4 bii de stare
deci circuitul ROM va avea
24 adrese 4 bii de adres
16 locaii
4 bii de date locaii de 4 bii
n acest exemplu nu avem variabile de intrare i
ieiri ale sistemului care s se adauge la biii de
stare
128
Arhitectura calculatoarelor i sisteme de operare - partea I

Coninutul memoriei ROM


adres valoare adres valoare
0 0001 8 1001
1 0010 9 1010
2 0011 10 1011
3 0100 11 1100
4 0101 12 1101
5 0110 13 1110
6 0111 14 1111
7 1000 15 0000
129
Arhitectura calculatoarelor i sisteme de operare - partea I

Implementare

130

S-ar putea să vă placă și