11.2. ПОЛНЫЙ СУММАТОР




Def
===
	СУММАТОР - комбинированное функциональное устройство
	предназначенное для суммирования чисел
	[а также вычитания, умножения, деления, преобразования
	в обратный код и других операций]
	[ FA = Full Adder ]

ANSI




однобитный сумматор: --------------- C0 A B | C1 S -------+------- 0 0 0 | 0 0 0 0 1 | 0 1 0 1 0 | 0 1 0 1 1 | 1 0 1 0 0 | 0 1 1 0 1 | 1 0 1 1 0 | 1 0 1 1 1 | 1 1 --------------- Carry Out в пространсве состояний:


Карта карно: Cin Cin 0 1 0 1 +------+ +------+ 00 | 0 1 | 00 | 0 0 | AB 01 | 1 0 | AB 01 | 0 1 | 11 | 0 1 | 11 | 1 1 | 10 | 1 0 | 10 | 0 1 | +------+ +-----+ S Cout Сумматор с использованием XOR:




Реализация полного сумматора на VHDL: library ieee; use ieee.std_logic_1164.all; entity SUM1 is port( A0, B0, P0 : in std_logic; P1, S1 : out std_logic); end SUM1; architecture Example of SUM1 is signal T:std_logic; signal S:std_logic; signal V:std_logic; begin T <= (A0 and B0) or (P0 and (A0 or B0)); -- T is carry S <= A0 and B0 and P0; V <= S or ((not T) and (A0 or B0 or P0)); P1 <= T; S1 <= V; end Example;




Реализация полного сумматора на Verilog: module fulladd(sum, c_out, a, b, c_in); output sum, c_out; input a, b, c_in; wire s1, c1, c2; xor (s1, a, b); and (c1, a, b); xor (sum, s1, c_in); and (c2, s1, c_in); xor (c_out, c2, c1); endmodule


Сумматор на базе XOR:



Сумматор на базе AOI:

Сумматор на базе CMOS мультиплексоров:

Сумматор на CMOS:


Топология








Index Prev Next