You are on page 1of 50

KODLAYICI (ENCODER)

Mantık Devreleri Tasarımı Dersi


Bahar Dönemi
Prof. Dr. İsmail SARITAŞ
Öğr. Gör. Abdulkadir SADAY
Elektrik-Elektronik Mühendisliği Bölümü
Teknoloji Fakültesi
KODLAYICI (ENCODER) 2

1. Bileşik Mantık Devreleri


2. Kodlayıcı (Encoder) Tanım
3. 2 Bitlik Kodlayıcılar
4. 3 Bitlik (Oktal) Kodlayıcılar
5. BCD Kodlayıcı
6. Hexadecimal Kodlayıcı
7. Öncelikli Kodlayıcı (Priority Encoder)
8. 1-aktif / 0-aktif Kodlayıcı Giriş ve Çıkışları

Prof. Dr. İsmail SARITAŞ


KODLAYICI (ENCODER) 3

1. Bileşik Mantık Devreleri


2. Kodlayıcı (Encoder) Tanım
3. 2 Bitlik Kodlayıcılar
4. 3 Bitlik (Oktal) Kodlayıcılar
5. BCD Kodlayıcı
6. Hexadecimal Kodlayıcı
7. Öncelikli Kodlayıcı (Priority Encoder)
8. 1-aktif / 0-aktif Kodlayıcı Giriş ve Çıkışları

Prof. Dr. İsmail SARITAŞ


BİLEŞİK MANTIK DEVRELERİ 4

Prof. Dr. İsmail SARITAŞ


BİLEŞİK MANTIK DEVRELERİ 5

Prof. Dr. İsmail SARITAŞ


BİLEŞİK MANTIK DEVRELERİ 6

Prof. Dr. İsmail SARITAŞ


BİLEŞİK MANTIK DEVRELERİ 7

Prof. Dr. İsmail SARITAŞ


BİLEŞİK MANTIK DEVRELERİ 8

Prof. Dr. İsmail SARITAŞ


BİLEŞİK MANTIK DEVRELERİ 9

Prof. Dr. İsmail SARITAŞ


BİLEŞİK MANTIK DEVRELERİ 10

Prof. Dr. İsmail SARITAŞ


BİLEŞİK MANTIK DEVRELERİ 11

Prof. Dr. İsmail SARITAŞ


BİLEŞİK MANTIK DEVRELERİ 12

Prof. Dr. İsmail SARITAŞ


KODLAYICI (ENCODER) 13

1. Bileşik Mantık Devreleri


2. Kodlayıcı (Encoder) Tanım
3. 2 Bitlik Kodlayıcılar
4. 3 Bitlik (Oktal) Kodlayıcılar
5. BCD Kodlayıcı
6. Hexadecimal Kodlayıcı
7. Öncelikli Kodlayıcı (Priority Encoder)
8. 1-aktif / 0-aktif Kodlayıcı Giriş ve Çıkışları

Prof. Dr. İsmail SARITAŞ


KODLAYICI (ENCODER) 14

Prof. Dr. İsmail SARITAŞ


KODLAYICI (ENCODER) 15

1. Bileşik Mantık Devreleri


2. Kodlayıcı (Encoder) Tanım
3. 2 Bitlik Kodlayıcılar
4. 3 Bitlik (Oktal) Kodlayıcılar
5. BCD Kodlayıcı
6. Hexadecimal Kodlayıcı
7. Öncelikli Kodlayıcı (Priority Encoder)
8. 1-aktif / 0-aktif Kodlayıcı Giriş ve Çıkışları

Prof. Dr. İsmail SARITAŞ


2 Bitlik Kodlayıcılar 16

Prof. Dr. İsmail SARITAŞ


2 Bitlik Kodlayıcılar 17
• Doğruluk tablosundan görüldüğü x3 x2 x1 x0 Q1 Q0
üzere hangi indise sahip giriş 0 0 0 1 0 0
aktif ise çıkışlar binary sayı
olarak o indisi kodlamaktadır. 0 0 1 0 0 1

• Q1 çıkışı ya x3 ya da x2 aktif (1) 0 1 0 0 1 0


iken aktif(1) olduğu için x3 ve 1 0 0 0 1 1
x2 girişlerinin mantıksal
toplamına eşittir. Q0 çıkışı da ya
x3 ya da x1 aktif iken aktif Q1 = x3 + x2
olduğu için x3 ve x1 girişlerinin Q0 = x3 + x1
mantıksal toplamına eşittir.
• 4 X 2 lik Kodlayıcının devresi ve
blok şeması yandaki şekillerdeki
gibidir.
Prof. Dr. İsmail SARITAŞ
KODLAYICI (ENCODER) 18

1. Bileşik Mantık Devreleri


2. Kodlayıcı (Encoder) Tanım
3. 2 Bitlik Kodlayıcılar
4. 3 Bitlik (Oktal) Kodlayıcılar
5. BCD Kodlayıcı
6. Hexadecimal Kodlayıcı
7. Öncelikli Kodlayıcı (Priority Encoder)
8. 1-aktif / 0-aktif Kodlayıcı Giriş ve Çıkışları

Prof. Dr. İsmail SARITAŞ


3 Bitlik (Oktal) Kodlayıcılar 19

Prof. Dr. İsmail SARITAŞ


3 Bitlik (Oktal) Kodlayıcılar 20

A = D7 + D6 + D5 + D4
B = D7 + D6 + D3 + D2
C = D7 + D5 + D3 + D1

Prof. Dr. İsmail SARITAŞ


3 Bitlik (Oktal) Kodlayıcılar 21

A = D7 + D6 + D5 + D4
B = D7 + D6 + D3 + D2
C = D7 + D5 + D3 + D1

Prof. Dr. İsmail SARITAŞ


KODLAYICI (ENCODER) 22

1. Bileşik Mantık Devreleri


2. Kodlayıcı (Encoder) Tanım
3. 2 Bitlik Kodlayıcılar
4. 3 Bitlik (Oktal) Kodlayıcılar
5. BCD Kodlayıcı
6. Hexadecimal Kodlayıcı
7. Öncelikli Kodlayıcı (Priority Encoder)
8. 1-aktif / 0-aktif Kodlayıcı Giriş ve Çıkışları

Prof. Dr. İsmail SARITAŞ


BCD Kodlayıcı 23

Prof. Dr. İsmail SARITAŞ


BCD Kodlayıcı 24

Prof. Dr. İsmail SARITAŞ


KODLAYICI (ENCODER) 25

1. Bileşik Mantık Devreleri


2. Kodlayıcı (Encoder) Tanım
3. 2 Bitlik Kodlayıcılar
4. 3 Bitlik (Oktal) Kodlayıcılar
5. BCD Kodlayıcı
6. Hexadecimal Kodlayıcı
7. Öncelikli Kodlayıcı (Priority Encoder)
8. 1-aktif / 0-aktif Kodlayıcı Giriş ve Çıkışları

Prof. Dr. İsmail SARITAŞ


Hexadecimal Kodlayıcı 26
GİRİŞ
D0
A
0
B
0
C
0
D
0
• Kodlayıcı doğruluk tablosunu yazarken
D1 0 0 0 1
illa ki bütün girişleri ayrı ayrı yazıp her
D2 0 0 1 0 seferinde birinin aktif olduğunu 0 ve 1
D3 0 0 1 1 ler kullanarak göstermesek de olur. Tek
D4 0 1 0 0 bir sütunda sadece bir girişin aktif
D5
D6
0
0
1
1
0
1
1
0
olduğunu da ifade edebiliriz.
D7 0 1 1 1
D8 1 0 0 0 A = D15 + D14 + D13 + D12 + D11 + D10 + D9 + D8
D9 1 0 0 1
B = D15 + D14 + D13 + D12 + D7 + D6 + D5 + D4
D10 1 0 1 0
D11 1 0 1 1 C = D15 + D14 + D11 + D10 + D7 + D6 + D3 + D2
D12 1 1 0 0
D= D15 + D13 + D11 + D9 + D7 + D5 + D3 + D1
D13 1 1 0 1
D14 1 1 1 0
D15 1 1 1 1
KODLAYICI (ENCODER) 27

1. Bileşik Mantık Devreleri


2. Kodlayıcı (Encoder) Tanım
3. 2 Bitlik Kodlayıcılar
4. 3 Bitlik (Oktal) Kodlayıcılar
5. BCD Kodlayıcı
6. Hexadecimal Kodlayıcı
7. Öncelikli Kodlayıcı (Priority Encoder)
8. 1-aktif / 0-aktif Kodlayıcı Giriş ve Çıkışları

Prof. Dr. İsmail SARITAŞ


Öncelikli Kodlayıcı (Priority Encoder) 28
• İdeal durumda şimdiye kadar göstermiş
olduğumuz kodlayıcılarda olduğu gibi her
seferinde sadece bir tane giriş aktif x3 x2 x1 x0 Q1 Q0 V
olmaktadır.
0 0 0 0 X X 0
• Ancak gerçekte bu böyle olmayabilir, her
seferinde birden fazla giriş aktif olabilir. 0 0 0 1 0 0 1
• Bu tarz bir durumda en yüksek değerli indise 0 0 1 X 0 1 1
sahip giriş kodlanacak şekilde bir tasarım
yapılır. 0 1 X X 1 0 1

• 4 X 2 Öncelikli Kodlayıcı devresinin doğruluk 1 X X X 1 1 1


tablosu yanda verilmiştir.
Öncelikli Kodlayıcı (Priority Encoder) 29
• Q1 ve Q0 Kodlayıcı çıkışları olmakla beraber bir de
V çıkışı vardır.
x3 x2 x1 x0 Q1 Q0 V
• x0 aktif diğer girişler aktif değilken 0 indisi kodlanır.
• X3 ve x2 aktif değilken x1 aktifken x0 ister aktif 0 0 0 0 X X 0
olsun ister aktif olmasın 1 indisi kodlanır. 0 0 0 1 0 0 1
• X3 aktif değilken x2 aktifken, x1 ve x0 ın aktif olup
olmaması önemli değildir ve 2 indisi kodlanır. 0 0 1 X 0 1 1
• X3 aktif iken x2, x1 ve x0 ın aktif olup olmaması 0 1 X X 1 0 1
önemli değildir ve 3 indisi kodlanır.
1 X X X 1 1 1
Öncelikli Kodlayıcı (Priority Encoder) 30
• Hiçbir giriş aktif değilken ise bir kodlayıcı işlevi
görülmediği için çıkışlarda herhangi bir sonuç
görülebilir o yüzden bu çıkışlar don’t care olarak x3 x2 x1 x0 Q1 Q0 V
verilmiştir.
• Çıkış tarafında aldığımız örneğin bir 00 değeri belki 0 0 0 0 X X 0
de hiçbir çıkışın aktif olmadığı durumda karşımıza
çıkabilir. Halbuki sadece x0 ın aktif olduğu 0 0 0 1 0 0 1
durumda da çıkış 00dır. Böyle bir durumda yapılan
işlemin doğruluğunu kontrol etmek amacıyla bir V 0 0 1 X 0 1 1
çıkışı eklenmiştir ve hiçbir girişin aktif olmadığı
durumda V çıkışı 0 olmaktadır, herhangi bir giriş 0 1 X X 1 0 1
aktif iken V çıkışı 1 olmaktadır.
1 X X X 1 1 1
• Böylelikle 4 girişe ait toplam 16 duruma karşılık
gelecek bütün çıkışlar oluşturulmuş olur.
Öncelikli Kodlayıcı (Priority Encoder) 31
x1x0
Karnaugh haritası ile Q1, Q0 ve V 00 01 11 10
x3x2
fonksiyonlarını çözmelim; ilk önce
0 1 3 2
Q1 fonksiyonu için bu işlemi 00
yapalım. X 0 0 0
4 5 7 6
x3 x2 x1 x0 Q1 Q0 V 01
Q1 bir x3 aktif iken, bir de x3 aktif 1 1 1 1
0 0 0 0 X X 0 12 13 15 14
değil x2 aktif iken 1 olmuştur, hiçbir 11
giriş aktif değilken de don’t care 0 0 0 1 0 0 1 1 1 1 1
durumundadır. 10
8 9 11 10
0 0 1 X 0 1 1 1 1 1 1
0 1 X X 1 0 1
Q1’ in sonucu normal 4 x 2 encoder 1 X X X 1 1 1
ile aynıdır. Q1 = x3 + x2
Öncelikli Kodlayıcı (Priority Encoder) 32

x1x0
x3x2
00 01 11 10
Q0 fonksiyonu için aynı işlemi yapalım; 0 1 3 2
00
X 0 1 1
Q0 fonksiyonu bir x3 aktif iken bir de x3 x3 x2 x1 x0 Q1 Q0 V 4 5 7 6
ve x2 aktif değil ve x1 aktif iken 1 01
0 0 0 0 X X 0 0 0 0 0
olmuştur. Hiçbir giriş aktif değilken 12 13 15 14
don’t care durumundadır. 11
0 0 0 1 0 0 1 1 1 1 1
8 9 11 10
0 0 1 X 0 1 1 10
1 1 1 1
Q0’ ın sonucu normal 4 x 2 encoder ile 0 1 X X 1 0 1
farklıdır.
1 X X X 1 1 1
Q0 = x3 + x2'.x1
Öncelikli Kodlayıcı (Priority Encoder) 33

x1x0
V fonksiyonu için aynı işlemi x3x2
00 01 11 10
yapalım; 0 1 3 2
00
x3 x2 x1 x0 Q1 Q0 V 0 1 1 1
4 5 7 6
V fonksiyonu hiçbir giriş aktif 0 0 0 0 X X 0 01
1 1 1 1
değilken kodlayıcı işleminin 0 0 0 1 0 0 1 12 13 15 14
yapılmadığını göstermek için 0 11
0 0 1 X 0 1 1
1 1 1 1
olmuştur. Herhangi bir veya 8 9 11 10

birden fazla giriş aktif iken ise 10


0 1 X X 1 0 1 1 1 1 1
kodlayıcı işlemi yapıldığını 1 X X X 1 1 1
göstermek için 1 olmuştur.
V = x3 + x2 + x1 + x0
Öncelikli Kodlayıcı (Priority Encoder) 34
Öncelikli Kodlayıcı (Priority Encoder) 35
Öncelikli Kodlayıcı (Priority Encoder) 36
Öncelikli Kodlayıcı (Priority Encoder) 37

• Oktal öncelikli kodlayıcı olan 74148 entegre bacak bağlantıları ve blok şeması
şekildeki gibidir
Öncelikli Kodlayıcı (Priority Encoder) 38
Öncelikli Kodlayıcı (Priority Encoder) 39
Öncelikli Kodlayıcı (Priority Encoder) 40
Öncelikli Kodlayıcı (Priority Encoder) 41
Öncelikli Kodlayıcı (Priority Encoder) 42
Öncelikli Kodlayıcı (Priority Encoder) 43
Öncelikli Kodlayıcı (Priority Encoder) 44
KODLAYICI (ENCODER) 45

1. Bileşik Mantık Devreleri


2. Kodlayıcı (Encoder) Tanım
3. 2 Bitlik Kodlayıcılar
4. 3 Bitlik (Oktal) Kodlayıcılar
5. BCD Kodlayıcı
6. Hexadecimal Kodlayıcı
7. Öncelikli Kodlayıcı (Priority Encoder)
8. 1-aktif / 0-aktif Kodlayıcı Giriş ve Çıkışları

Prof. Dr. İsmail SARITAŞ


1-aktif / 0-aktif Kodlayıcı Giriş ve Çıkışları 46
• Devre elemanları (sadece kodlayıcı değil) için tasarlanan entegrelerde aktiflik
durumu sadece 1 ile gösterilmeyebilir, tasarımcıya, kullanılacak kapılara, harcanak
enerjiye veya fonksiyonun daha az elemanla gerçekleştirmesine bağlı olarak aktiflik
0 ile de gösterilebilir. Bu durumda kodlayıcı giriş çıkışlarının aktifliğinin 1 veya 0
olmasına göre 4 X 2 lik kodlayıcının doğruluk tablosu ve devreleri nasıl değişiyor
gösterelim.
• 1-aktif giriş / 1-aktif çıkış → Daha önce göstermiş olduğumuz en temel hali
x3 x2 x1 x0 Q1 Q0
0 0 0 1 0 0 Q1 = x3 + x2
0 0 1 0 0 1
0 1 0 0 1 0 Q0 = x3 + x1
1 0 0 0 1 1
1-aktif / 0-aktif Kodlayıcı Giriş ve Çıkışları 47
• 1-aktif giriş / 0-aktif çıkış → Blok diyagramında çıkışlarda NOT işlemine denk gelen
baloncuklar vardır. Doğruluk tablosunda 1 aktif çıkışların tersi alınmış gibidir ve yine
fonksiyonlar çıkışları 1 yapan 1 durumunda olan girişlerin mantıksal toplamına
eşittir.
x3 x2 x1 x0 Q1 Q0 Q1 = x1 + x0
0 0 0 1 1 1
Q0 = x2 + x0
0 0 1 0 1 0
0 1 0 0 0 1
1 0 0 0 0 0
1-aktif / 0-aktif Kodlayıcı Giriş ve Çıkışları 48
• 0-aktif giriş / 1-aktif çıkış → Blok diyagramında girişlerde NOT işlemine denk gelen
baloncuklar vardır. Doğruluk tablosunda 1 aktif girişlerin tersi alınmış gibidir ve
fonksiyonlar çıkışları 0 yapan 0 durumunda olan girişlerin mantıksal çarpımına
eşittir.
x3 x2 x1 x0 Q1 Q0
Q1 = x1.x0
1 1 1 0 0 0
1 1 0 1 0 1 Q0 = x2.x0
1 0 1 1 1 0
0 1 1 1 1 1
1-aktif / 0-aktif Kodlayıcı Giriş ve Çıkışları 49
• 0-aktif giriş / 0-aktif çıkış → Blok diyagramında hem girişlerde hem de çıkışlarda
NOT işlemine denk gelen baloncuklar vardır. Doğruluk tablosunda 1 aktif giriş ve
çıkışların tersi alınmış gibidir ve fonksiyonlar çıkışları 0 yapan ve 0 durumunda olan
girişlerin mantıksal çarpımına eşittir.

x3 x2 x1 x0 Q1 Q0
Q1 = x3.x2
1 1 1 0 1 1
1 1 0 1 1 0 Q0 = x3.x1
1 0 1 1 0 1
0 1 1 1 0 0
KOD ÇÖZÜCÜ (DECODER) 50

• KAYNAKLAR
• Ekiz, H., 2010. Mantık devreleri: (Sayısal elektronik). 2 ed. Değişim,
9789758289134.
• Mano, M.M.R., Ciletti, M.D., 2012. Digital Design. 5 ed. Pearson Education,
9780133072709.
• Tocci, R., Widmer, N., Moss, G., 2016. Digital Systems. 12 ed. Pearson
Education, 9780134220147.

You might also like