Bölüm 10: Kaydırmalı kaydediciler (shift register)
A. Giriş: Kaydırmalı kaydediciler dijital devrelerde (hesap makinesi, bilgisayar, PLC vb.)
yaygın olarak kullanılmaktadır.
Bilgi (data) kaydırma devrelerinin işlevini hesap
makinesi örneğiyle açıklayalım. Makineye 479 sayısını
girerken 4 tuşuna basınca display'de 4 sayısı görünür.
Ardından 7 sayısına basılınca 4 sola kayar, onun yerine
7 gelir. Son olarak 9 sayısına basıldığında 4 ile 7 birer
Şekil 10.1: Hesap makinesinde
basamak sola kayar, en sağa 9 yerleşir. 479 sayısı hesap
rakamların sola doğru kayması
makinesine girilirken dijital devre hem bilgi kaydetme
(bellek) hem de kaydırma (shift) yapmaktadır.
Kaydırmalı kaydedici devreleri flip floplardan oluşur.
Kaydırmalı kaydedici entegresi örnekleri
Örneğin 8 bitlik veriyi (ikili sayı) kaydetmek için 8
adet FF kullanılır. İkili sayı bitleri kaydedilirken iki
yöntemden birisi kullanılır.
Birinci yöntem: Veriyi bir bit olarak tetikleme
sinyaliyle kaydırarak kaydetmek. Bu yönteme seri
Çizelge 10.1: Kaydırmalı kaykaydetme denir.
dedici entegresi örnekleri
İkinci yöntem: Bütün veri aynı anda tetikleme
palsiyle kaydedilir. Bu yönteme paralel kaydetme denir.
Shift register'lerin sınıflandırılması
1. Bilgiyi kaydırma yönünden sınıflandırma
a. Sağa kaydırmalı kaydediciler (shift right register),
b. Sola kaydırmalı kaydediciler (shift left register),
c. Sağa-sola kaydırmalı kaydediciler
2. Kaydırmalı kaydedicilerin bilginin giri ş ve
çıkışına göre sınıflandırılması
a. Seri giriş-seri çıkışlı kaydırmalı kaydediciler (SISO),
b. Seri giriş-paralel çıkışlı kaydırmalı kaydediciler (SIPO),
c. Paralel giriş-seri çıkışlı kaydırmalı kaydediciler (PIPO),
ç. Paralel giriş-paralel çıkışlı kaydırmalı
kaydediciler (PISO)
a. Seri giriş-seri çıkışlı kaydırmalı kaydediciler
Flip flop kullanılarak yapılan kaydırmalı
kaydedicilerde RS, JK ya da D tipi FF'ler
kullanılabilir.
Şekil 10.2: Kaydırmalı
kaydedici tiplerinin blok
şema hâlinde gösterilmesi
119
PDF created with FinePrint pdfFactory trial version http://www.fineprint.com
II. JK tipi FF'li dört bitlik
kaydırmalı kaydedici devresi
Cp
veri
girişi
J
K
Q
cp (kaydırma palsi)
Şekil 10.3: JK tipi FF ile bir bitin kaydedilişi
FF1
seri veri girişi
I. JK tipi FF'li bir bitlik
kaydırmalı kaydedici devresi
Şekil 10.3'te JK FF ile bir bitlik
verinin kaydetme devresi verilmiştir.
JK FF'nin kaydedici olarak
kullanılmasında lojik 0 ve lojik 1'in
kaydedilmesi şöyle olur:
* JK FF'ye lojik 0 kaydetmek için
J=0, K=1 iken bir tetikleme palsi
uygulanır.
* JK FF'ye lojik 1 kaydetmek için
J=1, K=0 iken bir tetikleme palsi
uygulanır.
FF2
a
Qa
a
a
FF4
FF3
Qb
c
Qc
d
Qd
b b
c
c
d
d
b
cp (kaydırma palsi)
Şekil 10.4'te verilen dört bitlik seri
giriş-seri çıkışlı kaydırmalı kaydedici
devresinde başlangıçta tüm FF'ler reset
konumundadır. Böylece tüm J girişleri
0, K girişleri 1 olur.
Cp
J
K
Birinci tetikleme palsinde J a =0,
Ka=1 olduğu için kaydediciye 0 girişi
yapılmaktadır.
Devrede ikinci tetikleme palsi de aynı
özelliktedir.
Qa
Üçüncü tetikleme palsinde Ja=1 ve
Ka=0 olduğu için kaydedicinin ilk bitine
1 alınır. Bu bit aynı zamanda hem Qa
çıkışı hem de Jb girişidir.
Qb
Qc
Dördüncü tetikleme palsinde Ja=0 ve
Ka=1 olduğu için Qa=0, Qb=1 olur.
Qd
Şekil 10.4: Dört bit seri giriş seri çıkışlı kaydırmalı
kaydedici devresi ve devrenin giriş çıkışlarındaki
bilgilerin gösterilişi
III. D tipi FF'li bir bitlik
kaydırmalı kaydedici devresi
Şekil 10.5'te verilen iki devrede D
girişindeki veri tetikleme palsinden
sonra Q çıkışından alınır. D girişinde 1
varsa tetikleme palsiyle Q çıkışı da 1
olur.
veri
girişi
cp (kaydırma palsi)
J(D) Q
veri
girişi
Q
cp (kaydırma palsi)
Şekil 10.5: D tipi FF ile bir bitin kaydedilişi
120
PDF created with FinePrint pdfFactory trial version http://www.fineprint.com
seri veri çıkışı
IV. D tipi FF'li seri giriş seri çıkışlı dört bitlik sağa kaydırmalı kaydedici devresi
Şekil 10.6'da verilen devrede seri girişten 0101 bilgisinin girdiğini varsayalım. Burada en az
ağırlıklı bit (LSB) 1'dir. Seri girişten en
önce 1 gönderilir. En çok ağırlıklı bit
FF2
FF3
FF4
FF1
(MSB) ise 0'dır. Bu bit, FF 1 'in D a
veri
Q
Q
Qb
c
girişine en son olarak gelir.
a Qa
d d
b
c
girişi
İlk anda tüm FF çıkışları 0'dır. 1 biti
c
d
a
b
FF1'in girişine uygulandığı anda
devreye bir de tetikleme palsi gelirse
cp (kaydırma palsi)
bu 1 değeri FF1'in çıkışına aktarılır.
Bu durumda FF1'in çıkışında 1, diğer
Şekil 10.6: D tipi FF ile dört bit seri giriş-seri
çıkışlı sağa kaydırmalı kaydedici devresi
FF'lerin çıkışlarında ise 0
bulunmaktadır.
Seri giren bilgide sağdan ikinci
bitin 0 olduğunu biliyoruz. Bu
durumda FF1'in girişinde 0
bulunmaktadır. İkinci tetikleme palsi
uygulandığında FF1'in çıkışında
bulunan 1, FF2'nin çıkışına aktarılır.
FF1'in girişinde bulunan 0 ise FF1'in
çıkışına aktarılmış olur.
Dördüncü tetikleme palsinden
sonra FF'lerin çıkışları, FF1=0, FF2=1,
Çizelge 10.2: Bilginin seri olarak taşınması
FF3=0, FF4=1 olur. Devreye
uygulanan dördüncü tetikleme
palsinin sonunda FF'lerin çıkışında 0101 bilgisi oluşur. Tetikleme palsleri sürdürülürse
soldan giren bilgi sağdan sırayla çıkacaktır. Bu kaydırmalı kaydedici devresi sağa kaydırmalı
olarak çalışmaktadır. Aynı devrede en sağdaki FF en sola, en soldaki FF en sağa bağlanacak
şekilde kurulur, bilgi sağdan uygulanırsa devre sola kaydırmalı kaydedici olarak çalışır.
Şekil 10.6'daki devrede çıkış en sondaki FF çıkışından alınırsa buna seri giriş-seri çıkışlı
kaydırmalı kaydedici denir. Çıkış, FF1, FF2, FF3, FF4 çıkışlarından paralel olarak alınırsa buna,
seri giriş-paralel çıkışlı kaydırmalı kaydedici denir.
b. Seri giriş paralel çıkışlı kaydırmalı kaydediciler
Şekil 10.7'de verilen devrede ilk FF'nin D girişine veri (0, 1) uygulanır ve tüm FF'lerin Q
çıkışlarından da aynı anda veriler alınır. Yani bu tür devrelerde veri girişi seri, bilgi çıkışı ise
paraleldir.
Şekil 10.7'de verilen devreye sırasıyla 1, 1, 0, 0 bilgileri uygulandığında dört pals sonunda
FF1
FF2
FF3
FF4
veri
girişi
cp (kaydırma palsi)
Şekil 10.7: Dört bit seri giriş paralel çıkışlı sağa kaydırmalı kaydedici devresi
121
PDF created with FinePrint pdfFactory trial version http://www.fineprint.com
çıkıştan çizelge 10.3'te
görülebileceği gibi
0011 sayısı alınır.
ç. Paralel giriş seri
Çıkışlı kaydırmalı
kaydediciler
Şekil 10.9'da
verilen bu tip
devrelerde veri paralel
olarak kaydedilir ve
seri olarak okunur.
Şekil 10.10'da
verilen devreye sırayla
0, 1, 1, 0 verilerini
yüklediğimizi
varsayarsak, ikinci
kaydırma palsinin
sonunda seri veri
çıkışında çizelge
FF2
FF3
FF4
Çizelge 10.3: Bilginin paralel olarak taşınması
FF1
FF2
FF3
paralel veri çıkışı
paralel veri girişleri
FF4
cp (kaydırma palsi)
Şekil 10.8: Dört bit paralel giriş paralel çıkışlı
sağa kaydırmalı kaydedici devresi
Çizelge 10.4: Dört bit paralel giriş paralel çıkışlı sağa
kaydırmalı kaydedici devresinde bilgi kaydırma
paralel veri girişi
FF2
FF1
FF3
FF4
cp (kaydırma palsi)
Şekil 10.9: Dört bit paralel giriş seri çıkışlı sağa
kaydırmalı kaydedici devresi
122
PDF created with FinePrint pdfFactory trial version http://www.fineprint.com
seri veri çıkışı
c. Paralel giriş
paralel çıkışlı
kaydırmalı
kaydediciler
Bu devrelerde her
FF'nin preset girişine
ayrı bir hat bağlanır.
Preset girişleri
aracılığıyla uygun
FF'ler lojik 1
durumuna ayarlanarak
bütün verilerin aynı
anda yüklenmesi
sağlanır.
Şekil 10.8'de
verilen devreye 0, 1, 1,
0 sayılarını
yüklediğimizi
varsayarsak, üçüncü
kaydırma palsinin
sonunda çıkışlarda
çizelge 10.4'te
görüldüğü gibi 0000
sayısı oluşur.
seri veri
FF1
girişi
cp
10.5'te görüldüğü gibi
1 verisi oluşur.
FF2
FF3
FF4
Çizelge 10.5: Paralel giriş-paralel çıkışlı kaydırmalı
kaydedici devresinde bilgi kaydırma
seri
çıkış
paralel çıkışlar
seri
çıkış
sağ-sol shift register
seri
giriş
seri
giriş
kaydırma
(sağ-sol)
cp
Şekil 10.10: Sağa-sola kaydırmalı kaydedicinin blok şeması
UCC (16)
çıkışlar
A
A (3)
paralel
girişler
sağa kaydırma girişi
(SRSI)
sola kaydırma girişi
(SLSI)
tetikleme
clear
(2)
(7)
(11)
B (4)
QA
C (5)
D (6)
QB
Dsr
Dsl
74194
3. Sağa-sola
kaydırmalı
kaydediciler
İki yönde veri yer
değiştirmesi yapabilen
kaydırmalı
kaydediciler aritmetik
işlem yapan
devrelerin temel
elemanıdır. Örneğin
çarpma işlemi sola
doğru kaydırmalı
kaydediciyle yapılır.
Sağa doğru
kaydırmalı kaydedici
ise bölme işlemini
yapar. Şekil 10.10'da
verilen blok şemada
kaydırma kontrolü 1
durumundayken girişe
uygulanan bilgi
tetikleme palsleriyle
(cp) sola doğru yer
değiştirir. Kaydırma
kontrolü 0
durumundayken ikinci
girişe uygulanan veri,
tetikleme palsleriyle
sağa doğru yer
değiştirir.
FF1
C1
Cp
(1) Clr
QC
QD
S0 S1
B
C
D
(15)
(14)
(13)
(12)
şase (8)
(9) (10)
mod
kontrol
Şekil 10.11: TTL 74194 üniversal kaydırmalı kaydedici entegresi
a. 74194 sağa-sola
kaydırmalı kaydedici entegresi (üniversal kaydırmalı kaydedici)
74194 entegresi kontrol sinyallerinin değişmesiyle seri girilen veriyi sağa ya da sola
kaydırabilir. Aynı şekilde çıkış seri ya da paralel olarak alınabilir.
Şekil 10.11'de verilen devrede A, B, C, D uçları paralel. Dsr ve Dsl girişleri ise seri veri
girişleridir. Dsr ucundan sağa kaydırılacak veri girilir ve girilen ilk bit A çıkışına gönderilir.
Dsl ucundan ise sola kaydırılacak veri girilir. Girilen ilk bit D çıkışına iletilir ve sola kaydırılır.
Tetikleme palsinin pozitif kenarı entegreyi tetikler. Clear girişinden uygulanan 0 palsi tüm
çıkışları 0 yapar.
S0 ve S1 girişleri devrenin modunu kontrol eder. S0=0, S1=0 durumunda devre hold (tutma)
modundadır ve hiç bir işlem yapmadan yalnızca çıkışındaki verileri korur. S0=0, S1=1 durumunda
devre sola kaydırmalı kaydedici olarak çalışır. S0=1, S1=0 durumunda ise sağa kaymalı kaydedici
123
PDF created with FinePrint pdfFactory trial version http://www.fineprint.com
olarak çalışır.
S0 = 0, S1 = 0 durumunda entegre paralel giriş paralel çıkışlı kaydedici olarak çalışır. A, B,
C, D girişlerinden paralel olarak uygulanan veri, tetikleme palsinin pozitif kenarında çıkışa
gönderilir.
D
74194
iki yollu (toggle)
anahtarlar
B
C
+5V (16) şase (8)
clk
Şekil 10.12: Sağa kaymalı
kaydedici devresi
74194
çıkışlar
(led)
clk
+5V (16) şase (8)
Şekil 10.13: Sola kaymalı
kaydedici devresi
çıkışlar
(led)
74194
c. Paralel giriş paralel çıkışlı kaydırmalı
kaydedici deneyi
Şekil 10.14'te verilen devrede S1=1, S0=1 yaparak
devreyi paralel giriş, paralel çıkışlı kaydırmalı
kaydedici hâline getiriniz. Clear girişini 0 yaparak
tüm çıkışları 0 yapınız. Sonra clear girişini 1 yaparak
silmeyi pasif (ölü) hâle getiriniz. IA=0, IB=1, IC=1,
ID =0 olacak biçimde A, B, C, D anahtarlarını
hazırlayınız.Tetikleme butonuna basarak girişe
uygulanan bilgilerin çıkışa aktarılışını gözleyiniz.
Giriş anahtarlarıyla farklı bilgiler uygulayarak
çıkışları gözleyiniz.
çıkışlar
(led)
A
-
iki yollu (toggle)
anahtarlar
b. Sola kaydırmalı kaydedici deneyi
Şekil 10.13'te verilen devrede S0=0, S1=1 yaparak
devreyi sola kaydırmalı kaydedici hâline getiriniz.
Deneyde bilgi, Q D'den QA'ya doğru kayacak şekilde
hazırlanmıştır. Clear girişini 0 yaparak tüm çıkışları
0 yapınız. Sonra clear girişini 1 yaparak silmeyi pasif
(ölü) hâle getiriniz. SLSI kaydediciyi (sola kaydırma
girişi) 1 yapınız. Tetikleme anahtarıyla 4 kez pals
gönderiniz. Bu durumda bilgi, sola doğru kayacaktır.
+5V
iki yollu (toggle) anahtarlar
4. Kaydırmalı kaydedici deneyleri
a. Sağa kaydırmalı kaydedici deneyi
Şekil 10.12'de verilen devrede S0=1, S1=0 yaparak
devreyi sağa kaydırmalı kaydedici hâline getiriniz.
Deneyde veri QA'dan QD'ye doğru kayacak şekilde
hazırlanmıştır. Clear girişini 0 yaparak tüm çıkışları
0 yapınız. Sonra clear girişini 1 yaparak silmeyi pasif
(ölü) hâle getiriniz. SRSI kaydediciyi (sağa kaydırma
girişi) 1 yapınız. Tetikleme anahtarıyla 4 kez pals
gönderiniz. Bu durumda veri sağa doğru kayacaktır.
Bilgi kaydediciden çıktıktan sonra geri dönmez.
Çünkü geri besleme yoktur.
clk
+5V (16) şase (8)
Şekil 10.14: Paralel giriş-paralel
çıkışlı kaydırmalı kaydedici devresi
Not: Kitabın 104 ve 105. sayfasında açıklanan ring sayıcılar kaydırmalı kaydedicilerin bir
uygulamasından ibarettir. Yaygın olarak kullanılan 4017 entegresiyle yapılan yürüyen ışık
devrelerinde de görülebileceği gibi herhangi bir anda çıkışlardan sadece birisi lojik 1, diğerleri
ise lojik 0 seviyesindedir.
124
PDF created with FinePrint pdfFactory trial version http://www.fineprint.com
Entegrenin girişine uygulanan tetikleme palsiyle lojik 1 seviyesi bir yandaki çıkışa kayar.
Diğer çıkışların tümü yine 0 düzeyinde kalır.
B. Bilgi (veri) kaydediciler (data register, data latch)
Girilen bilgileri devrenin çıkışında geçici olarak saklayan düzeneklere bilgi (veri) kaydedici
denir. Bu devreler yazar kasa, hesap makinesi, bilgisayar, PLC vb. gibi cihazlarda kullan ılır.
Şekil 10.15'te verilen lojik devre bir bitlik veriyi muhafaza edebilir. Devrede veri girişinden
uygulanan bir bitlik dijital sayı, enable girişi 0 olduğunda Q çıkışına ulaşır. Enable girişi 1
yapıldığında ise veri girişiyle Q çıkışı birbirinden yalıtılmış olur. Bundan dolayı E=1'ken veri
girişi ne olursa olsun çıkış değişmez. Yani, E girişinin 1 olması Q çıkışındaki veriyi muhafaza
edebilmeyi sağlar. Veri girişine gelen yeni veriyi Q çıkışına gönderebilmek için E girişine lojik
0 uygulamak gerekir. E girişi 1 olarak tutulduğu sürece Q çıkışı mevcut durumunu korur yani
hatırlar.
Şekil 10.16'da ise D tipi
veri
FF'lerle yapılmış 4 bitlik veri
izin veri çıkış
kaydedici devresi verilmiştir.
0
1
1
Q
0
0
0
Devrenin DA, DB, DC, DD
çıkış
1 çıkış değişmez
girişlerine veri paralel olarak
uygulanır. Tetikleme palsi bir
E (enable, izin)
kez uygulandığında
Şekil 10.15: Bir bitlik bilgi kaydedici
girişlerdeki veriler A, B, C, D
çıkışlarına aktarılır. Yeni bir
tetikleme palsi verilmediği
FF2 B
FF1 A
FF3 C
FF4 D
sürece çıkıştaki veriler
değişmeden kalır. Devrede
girişe yeni gelen verilerin
çıkışlara aktarılabilmesi için
Cp
DB
tetikleme palsinin bir kere
DA
DC
DD
uygulanması gerekir.
Şekil 10.16: Dört bitlik bilgi kaydedici devresi
Veri tutucular (data latch) en
çok D tipi FF devreleriyle
yapılır. Bu elemanın tetikleme
şase
palsi 0 iken veri girişi ne olursa
olsun çıkışta değişme olmaz.
Tetikleme palsi 1 olduğunda
veri 0 ise Q çıkışı 0, veri girişi 1
7475
ise Q çıkışı 1 olmaktadır.
Şekil 10.17'de ayaklarının
dizilişi verilen TTL 7475 entegresi
U
CC
4 bitlik veri kaydedici olarak
Şekil 10.17: TTL 7475 entegresinin ayaklarının dizilişi
çalışır. Bu elemanda dört adet D
tipi FF vardır. Entegrede FF'ler ikili
olarak gruplandırılmış ve ikisine birer enable ucu bağlanmıştır. Bir bitlik verinin girişten çıkışa
aktarılabilmesi için enable girişine lojik 1 uygulanmalıdır. Enable (E) girişi lojik 0 olduğunda
giriş ile çıkış arasındaki bağlantı kesilir ve önceki çıkış korunur.
125
PDF created with FinePrint pdfFactory trial version http://www.fineprint.com
iki yollu (toggle) anahtarlar
TTL 7475 veri tutucu entegresinin özelliklerinin incelenmesi
1. E ve F anahtarlarını 1, A ile D arasındaki anahtarları 0 yapınız.
2. A ve D anahtarlarını 1'e getirerek Q4 ve
ledler
Q 1 çıkışlarına bağlı ledlerin yanmasını
gözleyiniz.
3. A ve D anahtarlarını 0'a getirerek Q4 ve
Q 1 çıkışlarına bağlı ledlerin sönmesini
gözleyiniz.
7475
4. B ve C anahtarlarını önce 1 sonra 0
konumuna getirerek Q 3 ve Q2 çıkışlarındaki
ledlerin yanmasını ve daha sonra sönmesini
şase (12)
+5V (5)
gözleyiniz.
5. Enable 1 olduğu zaman, hangi girişin
kendisini Q çıkışında gösterdiğinden emin
Şekil 10.18: 7475 veri tutucu deneyi devresi
oluncaya kadar A ile D arasındaki anahtarı bir
mantık seviyesinden diğerine geçirerek deneyi yapınız.
6. A ile D arasındaki anahtarları 1 konumuna getiriniz.
7. Enable (3-4) anahtarını 0 yapınız.
8. A ile D arasındaki anahtarları 0 yaparak çıkışları gözleyiniz.
Enable (1-2) 1 olduğu için Q2 ve Q4 değişir.
Enable (3-4) 0 olduğu için Q3 ve Q4 değişmez.
9. C ve D anahtarlarını 1 yapınız. Q2 ve Q1'in değişimini gözlemleyiniz.
10. Enable (1-2) anahtarını 0 yapınız. C ve D anahtarlarını 0 yaparak Q 2 ve Q 1 'in
değişmediğini gözleyiniz.
Sorular
1. Kaydırmalı kaydedicilerin görevi nedir? Açıklayınız.
2. D tipi FF'de D ucundaki bilginin Q çıkışına nasıl aktarıldığını şekil çizerek açıklayınız.
126
PDF created with FinePrint pdfFactory trial version http://www.fineprint.com
Download

Bölüm 10: Kaydırmalı kaydediciler (shift register)