digitaalelektroonika viii loengkodu.ut.ee/~kalevipo/de_loeng8.pdf · 2009. 4. 27. · viii loeng...
TRANSCRIPT
-
DigitaalelektroonikaVIII loeng
Registrid ja loendurid
4/27/2009 2
Meeldetuletus
� trigerid� RS triger� JK triger� D triger� T triger
-
4/27/2009 3
VIII loengu sisu
� Registrid� erinevad tüübid� kasutamine
� loendurid
4/27/2009 4
Trigerite realiseerimine loogikalülitustega
-
4/27/2009 5
Trigerite realiseerimine loogikalülitustega
� RTL RS triger
R
S
Q
Q
���
����
��� ��� �����
R S
QQ
4/27/2009 6
Trigerite realiseerimine loogikalülitustega
� KMOP RS triger
R
S
Q
Q
���
R
QS
Q
-
4/27/2009 7
Trigerite realiseerimine loogikalülitustega
� KMOP D triger
D Q
Q
���
DQ
���
Q
4/27/2009 8
Trigerite realiseerimine loogikalülitustega
� KMOP D triger alternatiiv
���
C
C
Q
Q
1
0
Q
Q
C
C
C
D
C
0
1
-
4/27/2009 9
Trigerite realiseerimine loogikalülitustega
� KMOP MS D triger
Q
Q
C
D
CC
C
CC
C
C
�
C
Q
Q
C
D
CC
C
CC
C
C
�
C
4/27/2009 10
Registrid
-
4/27/2009 11
Registrid
� N mäluelemendist koosnev lülitust� N = 4, 8, 12, 16 jne.� Mäluelemendina
kasutatakse D trigerit� Tüübid
� SISO� SIPO� PISO� PIPO
D
C
Q
Q
D triger
�� ��1
4/27/2009 12
Nihkeregister� nihkeregister, mis töötab jadakoodis� jadakood
� andmed saabuvad registrisse ükshaaval ühest registri otsast
� iga järgmine saabuv bitt (0 või 1) nihutab eelnevaid bitte ühe võrra edasi
� nihkeregistriteks on SISO, SIPO ja PISO
� rööpregister – andmed rööbiti (PIPO)
-
4/27/2009 13
PIPOPIPO – parallel input parallel output register
rööpregister
D
C
Q
Q
D
C
Q
Q
D
C
Q
Q
D
C
Q
QCLK
CLR
D0 D1 D2 D3
Q0 Q1 Q2 Q3
4/27/2009 14
4 bitine lukkregister
� iga takti korral toimub registrisse lugemine� väljundist loetakse signaal vaid lubava käsu korral
Q0 Q1 Q2 Q3
ENABLE
D
C
Q
Q
D
C
Q
Q
D
C
Q
Q
D
C
Q
QCLK
CLR
D0 D1 D2 D3
-
4/27/2009 15
SISOSISO – serial input serial output register
jadasisendiga ja ühe jadaväljundiga register
D
C
Q
Q
D
C
Q
Q
D
C
Q
Q
D
C
Q
QCLK
CLR
andmedsisse andmedvälja
algul register tühjendatakseandmed sisestatakse esimese trigeri kaudu ja iga taktiga nihkuvad andmed järgmistesse pesadesse (triger)andmete kätte saamiseks tuleb nad teisest otsast välja nihutada
selle käigus andmed kas hävinevad või säilivad
4/27/2009 16
SISO
� andmete lugemine ilma, et nad hävineksid� andmed loetakse registrisse, kui R/W on kõrges seisundis� andmed loetakse registrist, kui R/W on madalas seisundis
D3
CLK
D2D1D0väljund-andmed
sisend-andmed
R/W
-
4/27/2009 17
SIPOSIPO – serial input parallel output register
jadasisendiga ja paralleelse väljundiga register
D
C
Q
Q
D
C
Q
Q
D
C
Q
Q
D
C
Q
QCLK
CLR
Q0 Q1 Q2 Q3andmedsisse
andmete sisestamine sarnane SISO-gaandmete rööpselt kätte saamiseks kõigi trigerite väljundid oma viigugaka siin võib kasutada R/W signaali läbi NING lülituste andmete lugemiseks ja väljastamiseks
4/27/2009 18
PISOPISO – parallel input serial output register
paralleelse sisendiga ja jadaväljundiga register
D
C
Q
Q
D
C
Q
Q
D
C
Q
Q
D
C
Q
QCLK
CLR
D0 D1 D2 D3
andmedvälja
SHIFTREAD
1 1 1
Saab kasutada ka SISO nihkeregistrina
-
4/27/2009 19
Keerulisemad nihkeregistrid
� keerulisemad nihkeregistrid võimaldavad mitmeid funktsioone korraga� registri nullimine� andmete laadimine ja väljastamine rööpkoodis� andmete laadimine ja väljastamine jadakoodis� bittide seisu inverteerimine registri igas pesas� andmete nihutamine mõlemas suunas� võrrelda nihkeregistri sisu mingi teise registri sisuga� registri sisu ühe võrra suurendamine ja vähendamine� teostada teise registriga aritmeetilisi ja/või loogilisi tehteid� kasutada lisatrigereid (lippe) tulemuse seisundi
näitamiseks
4/27/2009 20
Näide keerulisemast registrist
D0 D1 D2 D3
D
C
Q
Q
D
C
Q
Q
D
C
Q
Q
D
C
Q
QCLK
CLR
Q0 Q1 Q2 Q3jadasisend
jadaväljund
PRESETENABLE
milliseid loetletud operatsioone saab teostada?
-
4/27/2009 21
Inverteeriv register� kasutatakse lisaks Q väljundile ka inverteerivat Q
väljundit� väljund läbi NING lülituse sisendisse � vajatakse vastavat käsubitti� võib ka Q väljundist läbi NING-EI
D
C
Q
Q
D
C
Q
Q
D
C
Q
Q
D
C
Q
QCLK
CLR
Q0 Q1Q2
INV
Q3
4/27/2009 22
Andmete nihutamine mõlemas suunas
� mõlemasuunaline nihkeregister, rööpregister� lisaks andmetele läbi dekoodri ka käsusõna
-
4/27/2009 23
Täiendavate bittide kasutamine
� täiendav bitt võib näidata, et tehte tulemus on� null� positiivne� negatiivne� toimus registri ületäitumine
� mikroprotsessorites nimetatakse lippudeks
4/27/2009 24
Nihkeregistrite kasutusalad
� lukkregistrid� jadavärat, rööpvärat (port)� dekoodrid� viitlülitus – väljund järgib sisendit teatud aja
möödudes� ringloendurid – registri väljund uuesti
sisendisse
-
4/27/2009 25
viitlülitus
� nihkeregister� 8 bitisesse registrisse sisestatud impulss väljub 8
taktimpulssi alguses, seega hilistumine 7 takti
�
C
Din
Dout
1 2 3 4 5 6 7 8
viiteaeg
4/27/2009 26
ringloendur
� täidetakse vaid üks bitt� ringleb järjest kõigis trigerites
ja viimasest uuesti algusesse� raiskab palju olekuid (4 vs. 16)� ei vaja dekoodrit
D
C
Q
Q
D
C
Q
Q
D
C
Q
Q
D
C
Q
QCLK
CLR
Q0 Q1 Q2 Q3
I bitt CLR korra 1 ülejäänud 0
0
1
0
0
Q2
0
0
1
0
Q1
002
1
0
0
Q3
03
01
10
Q0C
-
4/27/2009 27
Johnsoni loendur
� keeratud ringloendurid� sarnane ringloenduriga,
kuid inverteeriv väljund tagasi algusesse
� kasutusel rohkem olekuid (8 vs. 16)
11103
11114
01115
00116
0
0
0
0
Q2
0
1
0
0
Q1
102
1
0
0
Q3
07
11
00
Q0C
D
C
Q
Q
D
C
Q
Q
D
C
Q
Q
D
C
Q
QCLK
CLR
Q0 Q1 Q2 Q3
4/27/2009 28
Loendurid
-
4/27/2009 29
T triger
J
K
Q
QC
“1”
T
Q
Q
J
K
Q
QC
“T”
C
Q
Q
sünkroonne T triger
asünkroonne T triger
�
�
T
Q
�JK
�� ��1
C
Q
T
�
�
�
T Q
CT
Q
CLR
4/27/2009 30
Sagedusjagaja e. kahendloendur
� saab loendada kuni 2N-1 impulssi
:2 :2 :2 :2 :2 :2
LSB MSB
�
T
:2
:2
:2
:2
-
4/27/2009 31
BCD-loendur
� 4 kahendloenduse elementi� 10-s sisendimpulss (1010 e. 01012) nullib loendi
TQC
CLR
TQC
CLR
TQC
CLR
TQC
CLR
QA QBQC QD
4/27/2009 32
veel loendureid
� kasutusel on erineva arvuga sagedusjagajaid� 8, 10, 6, 24 jt
� väljundite ja nullimissisendite vahele loogikaelemendid, mis teatud väljundite kombinatsiooni korral nullivad kõik trigerid
� tagasiside trigerite Q väljundite ja sisendite vahel
kellad
-
4/27/2009 33
loenduri nullimine loogikaelementide abil5-ni loendav kahendloendur
�
T
:2
:2
:2
1 2 3 4 5
TQC
CLR
TQC
CLR
TQC
CLR
QA QB QC
1015
0014
0102
000
1
0
0
QB
103
101
000
QCQAT
4/27/2009 34
loenduri nullimine Q abilkuuega jagav sagedusjagur
�
T
a
b
c
1 2 3 4 5 6
Q
J
K
Q
QC
“1”
aJ
K
Q
QC
J
K
Q
QC
“1” “1”
b ctrigeril b on esimesed neli impulssi J = 1 ja ta töötab nagu T triger
4. impulsi järel J = 0 ja triger b nullitakse6. impulsi järel a trigeri Q = 0 ehk c trigeri C = 0 ja samas ka J = 0, seega ka c triger nullitakse
-
4/27/2009 35
sünkroonsed ja asünkroonsed loendurid
� vastavalt trigerite ümberlülitamisviisi järgi� asünkroonsed
� sünkroonsed
� kiirem, kallim, kapriissem
J
K
Q
QC
J
K
Q
QC
J
K
Q
QC
J
K
Q
QC
J=K=1
J
K
Q
QC
J
K
Q
QC
J
K
Q
QC
J
K
Q
QC
“1”
T
Dmin = N�DT
Dmin – minimaalne lülitusaeg
4/27/2009 36
sünkroonne loendur
� jadamisi ülekanne (series carry)
T0 QC
Q0
Q
T1 QC
Q
T2 QC
Q
T3 QC
Q
T4 QC
Q
Q1 Q2Q3 Q4
T0=1
T
T0=1 T1=Q0 T2=Q0Q1 T3=Q0Q1Q2 T4=Q0Q1Q2Q3
Dmin = DT + (N – 2)�DL
-
4/27/2009 37
sünkroonne loendur
� paralleelne ülekanne (parallel carry)
J
K
Q
QC
J
K
Q
QC
J
K
Q
QC
J
K
Q
QC
“1”
T
igas järgnevas trigeri sisendis summeeritakse eelnevate trigerite väljundid
Dmin = DT + DL
probleemidmida rohkem astmeid seda rohkem sisendeid vajasuur koormus esimeste trigerite väljunditelkui N ei ole kahe aste, siis läheb loogika palju keerulisemaks
4/27/2009 38
Üles-alla loenduridUp-down counter
T Q
Q
T Q
Q
T Q
Q
U/D
T
pulsside lugemiseks vastupidises suunas (teatud numbrist allapoole) tuleb kasutada inverteerivat väljundit
kontrollbitt ei tohi sisendimpulsside vahel seisundit vahetada kuna muidu loetakse lisapulss – seega kasutatakse sünkroonses režiimis
kontroll-lüliti
-
4/27/2009 39
Üles-alla loendur paralleelse ülekandega
Motorola 74LS192 16-loendur 40 MHz
4/27/2009 40
Programmeeritav taimer
lubava käsu korral loetakse algnäit sisseantud juhul tegemist sünkroniseerimata loenduriga
Q
Q
T Q
Q
T Q
Q
T Q
Q
T
D0 D1 D2 D3
-
4/27/2009 41
Programmeeritava timeri näide
Harris 82C54 programmeeritav timer: 3x 16-bitised loendurid
4/27/2009 42
Kasutusalad
� loendamine� N-ga jagamine� sageduse mõõtmine
� sagedus, aeg, teepikkus, kiirus
� sammumootori kontroller