Блог страдающего Лиса
Lorem ipsum hello dolor sit world amet
11 янв 2023 Ср
Нашел как сократить сумматор
Как известно, я любитель перекладывать кубики с места на место и смотреть, что из этого получается.
Сегодня я проверил одну догадку с сумматором и она удалась. Дело в том, что сумматор можно сделать с помощью двух XOR, 2 AND и 1 OR. Сначала я делал через 2x4NAND + 3 NAND для симуляции AND+OR, но мне пришла мысль, а ведь в XOR схеме уже есть NAND! И получается, я просто переводил бы впустую целых 2 NAND. Нарисовал схему и убедился, что все работает:

На этой схеме все отлично видно, что теперь вместо 2.75 микросхем (11 NAND), мне потребуется 2.25 микросхем (9 NAND). То есть, для реализации сумматора нужно 2 микросхемы XOR и 1/4 микросхемы для OR. Всё. Для реализации 4-х битного сумматора будет нужно 2.25 x 4 = 9 микросхем. Для вычитателя потребуется 10 микросхем, где 1 микросхема для инверторов.
Для транзисторной схемы тут потребуется 18 транзисторов (8+8+2).


На этой схеме все отлично видно, что теперь вместо 2.75 микросхем (11 NAND), мне потребуется 2.25 микросхем (9 NAND). То есть, для реализации сумматора нужно 2 микросхемы XOR и 1/4 микросхемы для OR. Всё. Для реализации 4-х битного сумматора будет нужно 2.25 x 4 = 9 микросхем. Для вычитателя потребуется 10 микросхем, где 1 микросхема для инверторов.
Для транзисторной схемы тут потребуется 18 транзисторов (8+8+2).