36
Copyright Paul GASNER Copyright Paul GASNER 2. Circuite logice 2. Circuite logice 2.8. Circuite l 2.8. Circuite l atch şi atch şi flip-flop flip-flop

2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER

2. Circuite logice2. Circuite logice2.8. Circuite l2.8. Circuite latch şi atch şi

flip-flopflip-flop

Page 2: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 2

Circuite combinaţionale Circuite combinaţionale

Într-un circuit combinaţional, aplicarea aceloraşi valori la intrări va conduce mereu la aceleaşi valori la ieşireCircuitele combinaţionale se comportă ca circuite de funcţii (valoarea unei funcţii are un unic corespondent la o valoare dată a mărimilor de intrare)

Circuit CombinaţionalInputs Outputs

Page 3: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 3

Circuite secvenţiale Circuite secvenţiale

Un circuit secvenţial prezintă o reacţie a ieşirii la intrareIeşirile unui circuit secvenţial depind nu numai de inputs, ci şi de starea sistemului (sau de conţinutul unui circuit de memorie)La aceeaşi stare a intrărilor sunt posibile valori diferite la ieşiriConţinutul memoriei se modifică în timpul funcţionării circuitului

Circuit combinaţional

Inputs

Memorie

Outputs

Page 4: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 4

MemoriaMemoriaCircuitul de memorie ar trebui să prezinte cel puţin trei proprietăţi

să fie capabilă să stocheze o valoaresă permită citirea valorii stocatesă permită scrierea valorii stocate

De exemplu, memoria de 1 bit:să fie capabilă să stocheze valorile 0 şi 1să permită citirea valorii bitului stocat (0 sau 1)să permită modificarea valorii bitului stocat; sunt posibile două operaţiuni:

set – se scrie valoarea 1reset sau clear – se scrie valoarea 0

Page 5: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 5

StocareaStocareaIdeea este de a forma o buclă astfel încât ieşirea să ajungă la intrareDe exemplu:

Q este stocat, valoarea sa nu se schimbă niciodată (analog Q')Q poate fi citită prin ataşarea unei sonde sau altui circuitQ nu poate fi modificată – nu există intrări externe pentru circuit şi deci nu putem controla valoarea lui Q, adică Q=0 sau Q=1

Page 6: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 6

SR latchSR latchCele două intrări R şi S permit modificarea ieşirilor Q şi Q'

Q şi Q' sunt în acelaşi timp intrări şi ieşiriQ şi Q' depind atât de valorile intrărilor R şi S, cât şi de valorile curente Q şi Q'

Qnext = (R + Q'curent)'Q'next = (S + Qcurent)'

Page 7: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 7

SR = 00 – stocareSR = 00 – stocare

Qnext = (0 + Q'curent)' = Qcurent

Q'next = (0 + Qcurrent)' = Q'curent

Valoarea Q se păstrează, este stocată în circuit dacă R=0 şi S=0

Page 8: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 8

SR = 10 – setareSR = 10 – setare

Q'next = (1 + Qcurent)' = 0, Q∀ curent

Qnext = (0 + 0)’ = 1

Dacă R=1 şi S=0 atunci Q'next=0 şi Qnext=1S se numeşte port de set – setează latch-ul la 1Există o anumită întârziere în stabilirea echilibrului, dar din momentul în care Qnext=1, starea sistemului nu se mai modifică – stare stabilă

Page 9: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 9

Diagrame temporaleDiagrame temporaleComportarea unui circuit latch la aplicarea

unui input SR=10:

Qnext = (R + Q'curent)'Q'next = (S + Qcurent)'

S

R

Q

Q’

0 1 2 3 4

0. presupunem iniţial că Q = 0 şi Q' = 1

1. deoarece S = 1, Q' trece din 1 în 0 – linia verticală descrescătoare

2. după un alt timp de răspuns, deoarece R = 0 şi Q' = 0, Q trece în 1 (oricaare ar fi fost starea sa anterioară)

3. Q = 1 S = 1 → Q' = 0, circuitul rămâne stabil în această stare până la schimbarea RS

Page 10: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 10

SR = 01 – resetareSR = 01 – resetare

Qnext = (1 + Q'curent)' = 0, Q'∀ curent

Q'next = (0 + 0)’ = 1

Dacă R=0 şi S=1 atunci Q'next= 1 şi Qnext= 0R se numeşte port de reset sau clear – resetează latch-ul la 0Starea este stabilă

Page 11: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 11

Circuitul SR ca memorieCircuitul SR ca memorieSunt îndeplinite condiţiile unei memorii: se poate seta circuitul, reseta şi citi valoarea memoratăIeşirea Q reprezintă data stocată în latch. Este numită şi starea circuitului RS

Tabela de stări explică dependenţa valorilor ieşirilor Q şi Q' de valorile curente şi ale intrărilor R şi S

S R Q0 0 No change0 1 0 (reset)1 0 1 (set)

Inputs Current NextS R Q Q’ Q Q’0 0 0 1 0 10 0 1 0 1 00 1 0 1 0 10 1 1 0 0 11 0 0 1 1 01 0 1 0 1 0

Page 12: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 12

Circuitul SR – circuit secvenţialCircuitul SR – circuit secvenţial

Dacă RS = 00, valoarea ieşirii Q poate fi 0 sau 1, în funcţie de valoarea precedentă a QLa ieşire deci se pot găsi valori diferite la aceeaşi valori la intrare, fapt care nu are loc la circuitele combinaţionale

S R Q0 0 No change0 1 0 (reset)1 0 1 (set)

Inputs Current NextS R Q Q’ Q Q’0 0 0 1 0 10 0 1 0 1 00 1 0 1 0 10 1 1 0 0 11 0 0 1 1 01 0 1 0 1 0

Page 13: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 13

RS = 11RS = 11Ambele ieşiri, Q şi Q' devin 0!!!Dacă S = 0 şi R = 0 simultan:

Qnext = (0 + 0)' = 1Q'next = (0 + 0)' = 1

aceste valori revin la intrarea în porţile NOR şi atunci:

Qnext = (0 + 1)' = 0Q'next = (0 + 1)' = 0

Circuitul intră într-o buclă infinită şi Q, Q' trec din 1 în 0 şi inversNiciodată nu se setează SR=11!

Qnext = (R + Q’current)’Q’next = (S + Qcurrent)’

0

0

0

0

0

0

1

1

Page 14: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 14

Latch S'R'Latch S'R'Există mai multe variante de circuite SRDacă se utilizează porţi NAND atunci

Faţă de circuitul SR se inversează ieşirile

S’ R’ Q1 1 No change1 0 0 (reset)0 1 1 (set)0 0 Interzis

Page 15: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 15

Latch SR cu intrare de controlLatch SR cu intrare de control

Este format dinLatch S'R'Porţi NAND adiţionale pentru a genera valori corecte pentru S şi R

Intrarea de control C are comportamentul unei funcţii enable

C S R S’ R’ Q0 x x 1 1 No change1 0 0 1 1 No change1 0 1 1 0 0 (reset)1 1 0 0 1 1 (set)1 1 1 0 0 Interzis!

Page 16: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 16

Latch DLatch D

Este format dinLatch S'R'Porţi adiţionale cu intrările D – data şi C - control

Pentru C = 0, R' = S' = 1 şi Q rămâne neschimbatPentru C = 1, Q = DNu există combinaţii interzise la intrare

C D Q0 x No change1 0 01 1 1

Page 17: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 17

Diagrama de stăriDiagrama de stăriCircuitele logice pot fi exprimate prin expresii booleene sau tabele de adevăr (vezi circuite combinaţionale). Circuitele secvenţiale pot utiliza şi diagrame de stări

Pentru un latch D:fiecare stare este reprezentată printr-un nodsăgeţi “inputs/outputs” pentru marcarea trecerilor dintr-o stare în alta

0x/0 0x/1

Q=0 Q=111/1

10/0

Page 18: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 18

Utilizări ale circuitelor latchUtilizări ale circuitelor latchPot fi utilizate ca memorii pentru ALU

Presupunem ca memoria conţine o valoare pe care dorim să o incrementăm:

ALU citeşte valoarea din latchaplică operaţia G = X + 1valoarea incrementată este restocată în latchvaloarea din latch nu trebuie incrementată din nou, stoparea buclei realizându-se prin dezactivarea latch-ului

+1ALU

SX

G

Latch DD

QC

Page 19: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 19

Utilizări ale circuitelor latchUtilizări ale circuitelor latch

Apar probleme chiar la întreruperea ciclului, deoarece nu se cunoaşte cât timp trebuie activat circuitul latch

operaţii diferite în ALU au timpi de execuţie diferiţidiverse implementări produc timpi de răspuns diferiţi

+1ALU

SX

G

Latch DD

QC

Page 20: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 20

Circuite latch. ConcluziiCircuite latch. Concluzii

Circuitele secvenţiale prezintă memorieCircuitele secvenţiale răspund în mod diferit la aceleaşi stări ale intrărilor, funcţie de starea curentăMemoriile pot fi create utilizând circuite cu feedback

circuitele latch sunt cele mai simple memorii, stocând valori pe 1 biteste dificil de controlat timpul de activare pentru latch-uri într-un circuit de dimensiuni mari

Page 21: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 21

Cerinţe pentru circuitele latchCerinţe pentru circuitele latchPentru a putea fi utilizat corect este nevoie ca un circuit latch să fie capabil:

să fie dezactivat până când o nouă valoare este pregătită pentru stocaresă fie activat suficient timp ca noua valoare să fie stocată

Apar următoarele întrebări:când este gata noua valoare?

se adaugă un nou semnal la circuit; când semnalul trece în valoarea 1, memoria va şti că ALU a calculat noua valoare şi aceasta este pregătită pentru stocare

cum se poate activa şi apoi rapid dezactiva latch-ul?prin combinaţii de circuite latch – circuite flip-flop

Page 22: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 22

Sincronizare şi semnal de ceasSincronizare şi semnal de ceasUn ceas (clock) este un dispozitiv special care le ieşire prezintă alternativ 1 şi 0

Ceasurile sunt utilizate pentru a sincroniza circuitelegenerează semnale repetitive, predictibile de 1 şi 0 şi pot comanda (triggera) anumite evenimente în circuit – de exemplu scrierea unui latchdacă mai multe circuite folosesc acelaşi semnal de ceas, acestea îşi pot sincroniza acţiunile

perioadă

Page 23: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 23

Sincronizare şi semnal de ceasSincronizare şi semnal de ceasSe poate sincroniza latch-ul cu ALU

semnalul de ceas este conectat la intrarea de control Ccând semnalul de ceas devine 1, latch-ul este activat pentru scriere

Perioada ceasului trebuie să fie convenabilă ALUdacă e prea mică, latch-ul este activat înainte ca datele de ieşire din ALU să fie calculatedacă e prea mare, ALU poate produce un nou rezultat care va fi stocat accidental în memorie

+1ALU

SX

G

LatchD

QC

Page 24: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 24

Flip-flop DFlip-flop D

Circuitul flip-flop are două componente principale:latch D – masterlatch SR – slave

Intrarea de date D este conectată direct la intrarea D masterIeşirile latch-ului master sunt conectate la intrările slaveIeşirile flip-flop sunt chiar ieşirile latch-ului SR

Page 25: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 25

Flip-flop D. C = 0Flip-flop D. C = 0

Intrarea de control C a circuitului flip-flop activează fie circuitul D, fie SRDacă C = 0

latch-ul master este activat iar ieşirea acestuia urmăreşte modificările la intrarea D a flip-floplatch-ul slave este dezactivat şi ieşirea latch-ului master nu îi modifică starea – starea circuitului flip-flop se conservă

Page 26: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 26

Flip-flop D. C = 1Flip-flop D. C = 1

Când C devine 1:master este dezactivat iar la ieşirea sa se va afla ultima valoare la intrarea D înainte ca C = 1; modificările lui D nu schimbă nimic în starea circuitului masterslave este activat şi starea sa este dată de ieşirea latch-ului master, adică de ultima valoare la intrarea D înainte ca C = 1

Circuitul se numeşte flip-flop cu triggerare pozitivăieşirea flip-flop Q se modifică pe frontul pozitiv de ceasvaloarea stocată este valoarea la intrarea D exact în momentul apariţiei frontului pozitiv de tact

Page 27: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 27

Intrări directeIntrări directeCare este valoarea de start pentru Q?

Se poate seta valoarea iniţială sincron la următorul front pozitiv, dar circuitul devine complicatDe obicei se utilizează intrări directe, asincrone, care permit setarea sau resetarea flip-flop-urilor

circuitul se resetează o singură dată, la iniţializaredupă iniţializare, circuitul se comportă normal, sincron

S’ R’ C D Q0 0 x x Interzis0 1 x x 1 (set)1 0 x x 0 (reset)1 1 0 x No change1 1 1 0 0 (reset)1 1 1 1 1 (set)

Flip-flop D cu intrare directă activ-jos

intrări directe de iniţializare

operarea normală a circuitului flip-flop : R'S' = 11

Page 28: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 28

ExempluExempluSe iniţializează flip-flop la 0000

Pe durata unui ciclu de ceas, ALU calculează valoarea 0001, dar care nu este încă stocată în memorie

+1ALU

SX

G

Flip-flopsD

QC

0000

C

Q0

G0

+1ALU

SX

G

Flip-flopsD

QC

00000001

C

Q0

G0

Page 29: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 29

ExempluExempluIeşirea ALU este copiată în memorie la primul front pozitiv de ceas

Circuitul flip-flop se „autoblochează” imediat şi nu se poate scrie decât la următorul front pozitiv, chiar dacă ALU produce o nouă valoare

+1ALU

SX

G

Flip-flopsD

QC

00010001

C

Q0

G0

+1ALU

SX

G

Flip-flopsD

QC

00010010

C

Q0

G0

Page 30: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 30

Variante flip-flopVariante flip-flopFlip-flop JK: intrările au acelaşi rol ca S şi R, dar combinaţia JK = 11 serveşte la complementarea stării curente

Flip-flop T: poate doar să menţină sau să complementeze starea curentă

C J K Qnext

0 x x No change1 0 0 No change1 0 1 0 (reset)1 1 0 1 (set)1 1 1 Q’current

C T Qnext

0 x No change1 0 No change1 1 Q’current

Page 31: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 31

Tabele caracteristiceTabele caracteristiceArată starea următoare Q(t+1) în funcţie de starea curentă Q(t) şi starea intrărilorDin motive de simplitate, intrarea de control C nu este inclusă în tabelNu este indicat modul de operare, de exemplu comportamentul la frontul pozitiv al circuitului flip-flop

D Q(t+1) Operaţie0 0 Reset1 1 Set

J K Q(t+1) Operaţie0 0 Q(t) No change0 1 0 Reset1 0 1 Set1 1 Q’(t) Complement

T Q(t+1) Operaţie0 Q(t) No change1 Q’(t) Complement

Page 32: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 32

Ecuaţii caracteristiceEcuaţii caracteristiceD Q(t+1) Operaţie0 0 Reset1 1 Set

J K Q(t+1) Operaţie0 0 Q(t) No change0 1 0 Reset1 0 1 Set1 1 Q’(t) Complement

T Q(t+1) Operaţie0 Q(t) No change1 Q’(t) Complement

Q(t+1) = D

Q(t+1) = K’Q(t) + JQ’(t)

Q(t+1) = T’Q(t) + TQ’(t)= T ⊕ Q(t)

Page 33: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 33

Diagrame flip-flopDiagrame flip-flopLa un flip-flop JK, la primul front crescător al semnalului de ceas, J=1, K=1 şi Q(1) = 1Starea următoare poate fi determinată Q(2) = Q(1)’Q(2) apare imediat după primul front pozitiv al semnalului de ceas şi nu se modifică până la următorul

C

J

K

Q

1 2 3 4

Valorile la prima perioadă a ceasului...

C

J

K

Q

1 2 3 4

… determină starea următoare Q

Page 34: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 34

Diagrame flip-flopDiagrame flip-flopÎn mod identic, valorile J, K şi Q de la al doilea ciclu determină starea Q la al treilea ciclu

C

J

K

Q

1 2 3 4C

J

K

Q

1 2 3 4

Page 35: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 35

Triggerare pe front pozitivTriggerare pe front pozitiv

Ieşirile circuitelor flip-flop sunt afectate numai de valorile de intrare în momentul apariţiei frontului pozitiv la semnalul de tact

K se modifică rapid pe durata celui de-al doilea cicluQ trece în 0 doar la frontul 3, când K=1, J=0 şi Q=1

C

J

K

Q

1 2 3 4

Page 36: 2. Circuite logice 2.8. Circuite latch şi - mail.uaic.rogasner/FI2_Arhitectura_Calculatoarelor/02_08... · Copyright Paul GASNER 21 Cerinţe pentru circuitele latch Pentru a putea

Copyright Paul GASNERCopyright Paul GASNER 36

ConcluziiConcluzii

Pentru a putea utiliza memoriile în circuite mari trebuie:

dezactivat latch-ul până când noua dată este pregătită pentru a fi stocatăactivat latch-ul doar pe durata necesară scrierii

Sincronizarea circuitelor se realizează cu un semnal de ceas, a cărui perioadă este legată de durata operaţiilorCircuitele flip-flop pot fi scrise doar pe durata frontului pozitiv al semnalului de ceas

memoria se scrie doar o singură dată per cicluexistă mai multe variante de circuite flip-flop