Çok
Seviyeli Kombinezonsal Devre Tasarımına Bir Örnek : BCD – Excess 3 kod dönüştürücüsü
İki
seviyeli (toplamlar çarpımı veya çarpımlar toplamı) elde edilen Boolean
fonksiyonlarının çok seviyeli olarak gerçeklenmesinin temel amacı Boolean
fonksiyonların daha az karmaşıklıkta gerçeklenmesidir. Burada sözü edilen
karmaşıklık, genel olarak literal sayısı olarak ifade edilmektedir. Bugüne
kadar minimum karmaşıklığa sahip olan çok seviyeli devre tasarımı için bir
algoritma önerilmemiştir. Bunun yerine iki seviyeli formu, çok seviyeli forma
dönüştüren
yöntemlerin
birlikte kullanıldığı sezgisel yöntemler önerilmiştir. Burada, iki farklı
yöntem gösterilecek ve devre karmaşıklığı literal sayısı olarak
belirlenecektir.
Yöntem I:
BCD-Excess
3 kod dönüştürücü doğruluk tablosunun PLA formatında ifade edilmesi:
.i 4
.o 4
.ilb x1 x2 x3 x4
.ob f1 f2 f3 f4
.p 12
0000
0011
0001
0100
0010
0101
0011
0110
0100
0111
0101
1000
0110
1001
0111
1010
1000
1011
1001
1100
101-
----
11--
----
.e
İki seviyeli indirgeme programı ESPRESSO ile tüm çıkış fonksiyonlarının PLA açısından minimal olacak şekilde indirgenmesi ve çıkış fonksiyonlarının elde edilmesi:
.i 4
.o 4
.ilb x1 x2 x3 x4
.ob
f1 f2 f3 f4
.p 8
-100 0100
-010 0101
-0-1 0100
--11 0010
-110 1001
-1-1 1000
--00 0011
1--- 1000
.e
f1: x2.x3.x4’ + x2.x4 + x1
f2: x2.x3’.x4’ + x2’.x3.x4’ +
x2’.x4
f3: x3.x4 + x3'.x4'
f4: x2.x3.x4’ + x2’.x3.x4’ +
x3’.x4'
Karmaşıklık: 26
Her bir çıkış fonksiyonu içinde ortak bileşenlerin bulunması ve çıkış
fonksiyonlarının bu bileşenler cinsinden yazılması:
f1:
[4].x2 + x1
f2:
[5].x4’ + x2’.x4
f3: x3.x4 + x3’.x4’
f4: [6].x4’
[4]: x3.x4’ + x4
[5]: x2.x3’ + x2’.x3
[6]: [7].x3 + x3’
[7]: x2 + x2’
Karmaşıklık: 25
Herbir çıkış için elde edilen fonksiyon ve alt fonksiyonların, sadeleştirme yöntemleri de kullanılarak bütün fonksiyonlar içinde ortak bir yapıda yazılması:
f1: [4].x2 + x1
f2: [5].x4’ + x2’.x4
f3: [4]’ + x3.x4
f4: x4’
[4]: x3 + x4
[5]: x2.x3’ + x2’.x3
[6]: - 1 -
[7]: - 1 –
Karmaşıklık: 17
Yöntem II:
Herbir çıkış fonksiyonun birbirinden bağımsız iki seviyeli çarpımlar toplamı formunda indirgenmesi:
f1: x1 + x2.x4 + x2.x3
f2: x2.x3’.x4’ + x2’.x3 + x2’.x4
f3: x3.x4 + x3’.x4’
f4: x4’
Karmaşıklık: 17
Çıkış fonksiyonları içinde ortak bileşenlerin bulunması ve çıkış fonksiyonlarının bu bileşenler cinsinden yazılması:
f1: x1 + x2.[1]
f2: x2’.[1] + x2.[1]’
f3: x3.x4 + [1]’
f4: x4’
[1]: x3 + x4
Karmaşıklık: 13
Burada dikkat edilmelidir ki en az karmaşıklığa sahip olan Boolean ifadelerin en az sayıda kapı elemanı kullanılarak gerçeklenmesini gerektirmez. Bunun için elde edilen çok seviyeli Boolean ifadeler, kapı kütüphaneleri ve herbir kapının karmaşıklığı belirlenip bu kütüphanedeki kapı elemanları kullanılarak minimum alana sahip devreler sentez edilir.