31 октября 2013 - Full Adder!

После очередного наскока непонятный элемент оказался обыкновенным Full Adder-ом!

 

in1 in2 bc                   out1 out2
0   0   01   b = 0, c = 1    in2  in3
0   1   10   b = 1, c = 0    in3  !in3
1   0   10   b = 1, c = 0    in3  !in3
1   1   01   b = 0, c = 1    in2  in3 
in1 in2 in3 |   out1 out2
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

in1 = a 
in2 = b
in3 = carry_in 
out1 = carry_out 
out2 = sum

Попутно выяснили очень удивительные и непривычные вещи: оказывается входы в CMOS могут идти на диффузию %) После N-MOS это было очень непривычно ))) Но мы справились.

Подробнее в вики : http://wiki.psxdev.ru/index.php/CPU_FULL_ADDER