180 likes | 474 Views
Az aritmetikai logikai egység működése, megvalósítása. Arithmetical Logical Unit - ALU. Cél : A szükséges aritmetikai és logikai műveletek (+ - AND XOR) megvalósítása. Módszer : egyszerű „építőkövekből” összeépítve. A. B. A „és” B. A. B. A „vagy” B. A. (A B)CD. B. C. D. &. 1.
E N D
Az aritmetikai logikai egységműködése, megvalósítása Arithmetical Logical Unit - ALU
Cél : A szükséges aritmetikai és logikai műveletek (+ - AND XOR) megvalósítása Módszer : egyszerű „építőkövekből” összeépítve...
A B A „és” B A B A „vagy” B A (AB)CD B C D
& 1 Elemi logikai kapuk AND OR NOT x -x 0 1 1 0 x y x.y 0 0 0 0 1 0 1 0 0 1 1 1 x y x+y 0 0 0 0 1 1 1 0 1 1 1 1 x x x.y x+y x -x y y x 1 x -x x x.y x+y y y
Logikai kapuk NAND XOR x y x NAND y 0 0 1 0 1 1 1 0 1 1 1 0 x y x XOR y 0 0 0 0 1 1 1 0 1 1 1 0 NOR x y x NOR y 0 0 1 0 1 0 1 0 0 1 1 0 x x y y x y
Multiplexer (2 bemenetű) s0 z 0 d0 1 d1 d0 z d1 MUX d0 s0 z d1 s0
Multiplexer (4x 2 bemenetű) x3 y3 x2 y2 x1 y1 x0 y0 MUX z3 MUX z2 MUX z1 MUX z0 s
Multiplexer (4 bemenetű) MUX s1 s0 z 0 0 d0 0 1 d1 1 0 d2 1 1 d3 d0 d1 MUX z d2 MUX d3 d0 MUX d1 z s0 s1 d2 d3 s0 s1
4 bites logikai függvények (AND, XOR) áramkör x3 y3 x2 y2 x1 y1 x0 y0 MUX z3 MUX z2 MUX z1 MUX z0 s
2 bit összeadása Reprezentáció… 0+0=0 0+1=1 1+0=1 1+1=…
Félösszeadó (1bites) x XOR y bemenet kimenet x y s c 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 x s y x.y c 1/2+ x s s = sum (összeg) c = carry (átvitel) y c
2 több-bites szám összeadása 1100 1000 +0110 1110 1011 +0110 10001
Teljes-összeadó (1bites) bemenet kimenet x y cin s cout 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 1/2+ x y s 1/2+ cin cout x y cin 1+ s cout cin = carry in cout = carry out
4 bites teljes összeadó („terjedő átvitel”, ripple carry) y3 x3 y2 x2 y1 x1 y0 x0 c0 c3 c2 c1 1+ 1+ 1+ 1+ c4 s3 s2 s1 s0 cin y3 x3 y2 x2 y1 x1 y0 x0 4 bites összeadó cout s3 s2 s1 s0
Kivonás kettes komplemenssel 5 0101 +2 +0010 7 0111 2 0010 -2 1101 egyes komplemens -2 1110 kettes komplemens összeadás 5 0101 -2 +1110 3 1 0011 kivonás
4 bites összeadó/kivonó áramkör x3 x2 x1 x0 cin A 4 bites teljes összeadó y3 y2 y1 y0 z3 z2 z1 z0 MUX C MUX B MUX MUX cout s
4 bites 4 műveletes ALU 4 aritmetikai egység (+/-) 4x 2 bemenetű multiplexer x 4 4 y 4 z logikai egység (AND/XOR) 4 4 4 s0 s1