
|
||||||||||||||||||
| Rozbicie projektu na cztery części pozwoliło na uproszczenie funkcji opisującej sumator. "Sumator elementarny" dodaje dwie liczby jednobitowe a i b oraz uwzględnia przeniesienie c z poprzedniego sumatora. W przypadku dodawania najmłodszych bitów, na wejście c należy podać na stałe logiczne 0. Przeniesienie (przepełnienie) z młodszego sumatora należy podłączyć na wejście c starszego sumatora. | ||||||||||||||||||
| Do zaprojektowania sumatora posłużono się tablicą Karnaugha. W tablicy określono wszystkie możliwe kombinacja stanów logicznych na wejściach sumatora oraz wyniki dodawania a także przeniesienia z pojedynczego modułu. Zmienne "a" oraz "b" są argumentami funkcji, natomiast "c" jest przeniesieniem z poprzedniego sumatora. |
|
|||||||||||||||||
| Dzięki tabeli uzyskano następującą funkcję:
y=(a
* b * c) + (a
* b * c) + (a * b
* c) + (a * b * c)
Jak można łatwo zauważyć, drugi i trzeci składnik sumy można przekształcić do następującej postaci: |
||||||||||||||||||
| [(a
* b) + (a * b)] * c ,
a następnie dokonać przekształcenia wnętrza nawiasu kwadratowego na
sumę "wyłączne lub" (inaczej: exclusive-or, Ex-Or): (a
⊕
b) * c |
||||||||||||||||||
| Przekształcenie pierwszego i czwartego składnika sumy doprowadza do postaci: | ||||||||||||||||||
| [(a * b) + (a * b)] * c a po następnych przekształceniach (a ⊕ b) * c . W końcowym efekcie otrzymujemy: | ||||||||||||||||||
| suma: |
y = a ⊕ b ⊕ c = (a ⊕ b) ⊕ c |
|||||||||||||||||
| Przeniesienie natomiast można opisać następującą funkcją: ci+1=ab+bc+ac, co po odpowiednim przekształceniu daje: | ||||||||||||||||||
| przeniesienie: |
|
|||||||||||||||||
Zdublowanie tych funkcji pozwoliło na zaprojektowanie i zbudowanie modułów dodających liczby dwubitowe. Wykorzystano w tym celu podstawowe funktory logiczne zawarte w popularnych układach cyfrowych TTL. Schemat sumatora dwubitowego opracowano wykorzystując wersję freeware programu Eagle firmy CadSoft.
Po zaprojektowaniu układu połączeń płytki drukowanej dokonano wizualizacji 3-D. Projekt wizualizacji otrzymano za pomocą modułu Eagle3D ze strony autora modułu. Natomiast właściwą wizualizację osiągnięto za pomocą bezpłatnego programu POVray, który można pobrać ze strony twórców programu.
A tak sumator wygląda w rzeczywistości:
|
||||||||||||||||||
|
Jednak aby przekonać
się jak sumator działa w rzeczywistości, |
||||||||||||||||||
| Możesz sprawdzić działanie sumatora za pomocą emulatora napisanego w JS. | ||||||||||||||||||
|
||||||||||||||||||
| wykorzystano następujące programy: |
|