Ç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.