Digitális Technika II.

Hasonló dokumentumok
DIGITÁLIS TECHNIKA I

Digitális Áramkörök. Pannon Egyetem Villamosmérnöki és Információs Tanszék. (Villamosmérnök BSc / Mechatronikai mérnök MSc)

Dr. Oniga István DIGITÁLIS TECHNIKA 4

Bevezetés az informatikába

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)

1. Kombinációs hálózatok mérési gyakorlatai

Máté: Számítógép architektúrák

LOGIKAI TERVEZÉS HARDVERLEÍRÓ NYELVEN. Dr. Oniga István

Kombinációs áramkörök modelezése Laborgyakorlat. Dr. Oniga István

LOGIKAI TERVEZÉS PROGRAMOZHATÓ. Elő Előadó: Dr. Oniga István

Digitális Rendszerek és Számítógép Architektúrák (Levelező BSc)

Máté: Számítógép architektúrák

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)

Digitális Rendszerek és Számítógép Architektúrák

Hobbi Elektronika. A digitális elektronika alapjai: Kombinációs logikai hálózatok 2. rész

DIGITÁLIS TECHNIKA I BINÁRIS SZÁMRENDSZER BEVEZETŐ ÁTTEKINTÉS BINÁRIS SZÁMRENDSZER HELYÉRTÉK. Dr. Lovassy Rita Dr.

5. KOMBINÁCIÓS HÁLÓZATOK LEÍRÁSÁNAK SZABÁLYAI

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)

4. hét: Ideális és valódi építőelemek. Steiner Henriette Egészségügyi mérnök

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)

Hobbi Elektronika. A digitális elektronika alapjai: Kombinációs logikai hálózatok 1. rész

DIGITÁLIS TECHNIKA I

Összeadás BCD számokkal

Kombinációs hálózatok Adatszelektorok, multiplexer

Digitális technika II. (vimia111) 5. gyakorlat: Tervezés adatstruktúra-vezérlés szétválasztással, vezérlőegység generációk

DIGITÁLIS TECHNIKA I PÉLDA: 3 A 8 KÖZÜL DEKÓDÓLÓ HOGYAN HASZNÁLHATÓ EGY 4/16-OS DEKÓDER 3/8-AS DEKÓDERKÉNT? D 2 3 DEKÓDER BŐVÍTÉS

The Architecture of Computer Hardware and Systems Software: An InformationTechnology Approach 3. kiadás, Irv Englander John Wiley and Sons 2003

DIGITÁLIS TECHNIKA I

1. Kombinációs hálózatok mérési gyakorlatai

Bevezetés az informatikába

Aritmetikai utasítások I.

Digitális technika (VIMIAA02) Laboratórium 3

2. Fejezet : Számrendszerek

Digitális technika (VIMIAA02) Laboratórium 3

4. Fejezet : Az egész számok (integer) ábrázolása

Szekvenciális hálózatok és automaták

Digitális technika (VIMIAA02) Laboratórium 1

DIGITÁLIS TECHNIKA feladatgyűjtemény

DIGITAL TECHNICS I. Dr. Bálint Pődör. Óbuda University, Microelectronics and Technology Institute 12. LECTURE: FUNCTIONAL BUILDING BLOCKS III

Digitális technika (VIMIAA02) Laboratórium 1

Digitális Rendszerek és Számítógép Architektúrák

Digitális rendszerek. Utasításarchitektúra szintje

Számítógépek felépítése, alapfogalmak

Az INTEL D-2920 analóg mikroprocesszor alkalmazása

SZÁMÍTÓGÉPES ARCHITEKTÚRÁK

SZÁMÍTÓGÉPES ARCHITEKTÚRÁK

Megoldás Digitális technika I. (vimia102) 2. gyakorlat: Boole algebra, logikai függvények, kombinációs hálózatok alapjai

A mikroprocesszor felépítése és működése

Előadó: Nagy István (A65)

Logikai áramkörök. Informatika alapjai-5 Logikai áramkörök 1/6

Informatika 1 2. el adás: Absztrakt számítógépek

TARTALOMJEGYZÉK. 1. BEVEZETÉS A logikai hálózatok csoportosítása Logikai rendszerek... 6

Digitális Rendszerek és Számítógép Architektúrák

Digitális Technika. Dr. Oniga István Debreceni Egyetem, Informatikai Kar

Máté: Számítógép architektúrák

EB134 Komplex digitális áramkörök vizsgálata

DIGITÁLIS TECHNIKA A FÉLÉV TEMATIKAI VÁZLATA ÉS ISMERETANYAGA (1) ÁLTALÁNOS BEVEZETÉS A FÉLÉV TEMATIKAI VÁZLATA ÉS ISMERETANYAGA (3)

Digitális technika VIMIAA01 6. hét Fehér Béla BME MIT

A mikroprocesszor egy RISC felépítésű (LOAD/STORE), Neumann architektúrájú 32 bites soft processzor, amelyet FPGA val valósítunk meg.

10-es számrendszer, 2-es számrendszer, 8-as számrendszer, 16-os számr. Számjegyek, alapműveletek.

Digitális Rendszerek és Számítógép Architektúrák (Levelező BSc)

1. Az utasítás beolvasása a processzorba

Megoldás Digitális technika I. (vimia102) 4. gyakorlat: Sorrendi hálózatok alapjai, állapot gráf, állapottábla

Digitális technika VIMIAA hét

Assembly Utasítások, programok. Iványi Péter

Digitális Rendszerek (BSc)

Digitális technika VIMIAA hét

Programozás és digitális technika II. Logikai áramkörök. Pógár István Debrecen, 2016

Bevezetés a számítástechnikába

Hardver leíró nyelvek (HDL)

Digitális technika VIMIAA02 1. EA Fehér Béla BME MIT

Verilog HDL ismertető 2. hét : 1. hét dia

Számítógépek felépítése, alapfogalmak

Digitális technika VIMIAA02 1. EA

Segédlet az Informatika alapjai I. című tárgy számrendszerek fejezetéhez

funkcionális elemek regiszter latch számláló shiftregiszter multiplexer dekóder komparátor összeadó ALU BCD/7szegmenses dekóder stb...

SZÁMÍTÓGÉPEK BELSŐ FELÉPÍTÉSE - 1

Integrált áramkörök/4 Digitális áramkörök/3 CMOS megvalósítások Rencz Márta

Dr. Oniga István DIGITÁLIS TECHNIKA 8

Digitális technika VIMIAA02 6. EA

Digitális technika VIMIAA02 6. EA Fehér Béla BME MIT

Összetett feladatok megoldása

3. gyakorlat. Kettes számrendszer: {0, 1} Tízes számrendszer: {0, 1, 2,..., 9} 16-os (hexadecimális számrendszer): {0, 1, 2,..., 9, A, B, C, D, E, F}

Véges állapotú gépek (FSM) tervezése

A MiniRISC processzor

Digitális jelfeldolgozás

Alapkapuk és alkalmazásaik

DIGITÁLIS TECHNIKA I. BINÁRIS/GRAY ÁTALAKÍTÁS b3b2b1b0 g3g2g1g0 BINÁRIS/GRAY KONVERZIÓ BINÁRIS/GRAY KÓDÁTALAKÍTÓ BIN/GRAY KONVERZIÓ: G2

Hobbi Elektronika. A digitális elektronika alapjai: További logikai műveletek

A gyakorlatokhoz kidolgozott DW példák a gyakorlathoz tartozó Segédlet könyvtárban találhatók.

Véges állapotú gépek. Steiner Henriette

Dinamikus modellek szerkezete, SDG modellek

4. hét Az ideális és a valódi építőelemek

1. Az adott kapcsolást rajzolja le a lehető legkevesebb elemmel, a legegyszerűbben. MEGOLDÁS:

Digitális technika VIMIAA02 3. EA

Példa:

Hobbi Elektronika. A digitális elektronika alapjai: Sorrendi logikai áramkörök 3. rész

Digitális technika 1. Tantárgykód: VIIIA105 Villamosmérnöki szak, Bsc. képzés. Készítette: Dudás Márton

Digitális technika VIMIAA01 5. hét

DIGITÁLIS TECHNIKA GYAKORLÓ FELADATOK 2. Megoldások

Átírás:

Pannon Egyetem Villamosmérnöki és Információs Tanszék Digitális Technika II. (VEMIVI2112D) 1. hét Digitális tervezés: Kombinációs hálózatok építőelemei Előadó: Dr. Vassányi István vassanyi@almos.vein.hu

Kapcsolódó jegyzet, segédanyag: http://www.virt.vein.hu Oktatás Tantárgyak Digitális Technika II. (VEMIVI2112D) Fóliák, óravázlatok (.ppt) Feltöltésük folyamatosan 2

Digitális tervezés építőelemei Az alacsonyabb absztrakciós szintről (kapuk) feljebb kell lépni a magasabb hierarchia szintek felé (összetett digitális építőelemek). Itt helyezkednek el a következő alapvető építőelemeink, pl.: Összeadók (adder), Regiszterek, memóriák Multiplexerek stb. 3

Biztosítani kell a tervezőnek: Adatmozgatás egyik elemtől a másikig (jelvezetékek, buszok) Több forrásból származó adat kiválasztása (multiplexálás) Forrásadat irányítása (routing) a cél felé (demultiplexálás) Adattranszformálás (ha szükséges): kódolás-dekódolás Adatok aritmetikai összehasonlítása (komparálás) Logikai, aritmetikai műveletvégzés adatokon (ALU) 4

Logikai (Kombinációs) hálózatok építőelemei 5

Logikai hálózatok legfontosabb építőelemei Multiplexer (MUX) Demultiplexer (DEMUX) Dekódoló (decoder) áramkör Kódoló (encoder) áramkör Komparátor (comparator, CMP) Univerzális logikai áramkör Bináris műveletvégző egységek: Összeadók, kivonók, ALU stb. 6

Multiplexer/Demultiplexer ( útvonalválasztó ) Cél, az eszköz vagy eszközben lévő komponensek (K.H-ok) kivezetéseinek illetve bemeneteinek számának korlátozása Alkalmazás: Pl. memóriák címzése, indexelése esetén Buszok jeleinek multiplexálása, demultiplexálása Adatlapok letöltése (ingyenes helyről): pl: http://www.alldatasheet.com 7

1. Multiplexer ( útvonalválasztó ) Olyan áramköri elem, amely több lehetséges bemenet (A,B) közül választ ki egyet, az S selector jel(ek) hatására, és a kiválasztott bemenetet a kimenettel köti össze. Működése hasonló a mechanikus kapcsolókéhoz. Például: S=0 S=1 Két-állapotú mechanikus kapcsoló 5:1 MUX: Sztereo erősítő kapcsolója Y = A S + B S 8

Példa 1: Két-állapotú kapcsoló Legyen Y: kimenet, A, B: bemenetek, amik közül S választ. Ekkor: Y = A S + B S A két-állapotú kapcsolót leíró mixed-logic hálózat is lehet (ha A.H, B.H, S.H és Y.H): Log NOT! 9

Példa 2: Két-állapotú, engedélyező bemenettel rendelkező kapcsoló EN (Enable vagy STROBE jel): engedélyező jel S: selector (kapcsoló állása) A, B: bemenetek, Y: kimenet Y = EN ( A S + B S) Mixed-logic kapcsolási rajza (ha A.H, B.H, Y.H, de EN.L): Kereskedelmi forgalomban kapható! (példa: 2:1 MUX) EN.L 10

TTL 74LS157-2:1 MUXok alkalmazása Quad (4 db) 2-bemenetű 2:1 MUX-ból áll. Közös S, EN jelek. 4 db Y(1,2,3,4) kimenet EN.L 2:1 MUX szimbóluma 2:1 MUX áramköri kivezetések jelöléseivel Y = EN ( A S + B S) 11

Példa: 4:1 Multiplexer N kiválasztó jel -> 2^N bemenet, 1 kimenet Példa: 4:1 MUX B e m e n e t 1 2 3 4 4x1 MUX So S1 Y Kiválasztás 2^N számú bemenet közül választ egyet (Y), mint egy kapcsoló. Rendelkezhet EN bemenettel is. 12

Multiplexer: általános szabályok 2^n bemenet esetén n db selector jelet kell definiálni (bináris kódban megadva) Pl. 4:1 Mux igazságtáblázata: S1 S0, S1: selector jelek Input 1 4: 4 db bemenet S0 Kiválasztott input pozíció 0 0 Input 1 0 1 Input 2 1 0 Input 3 1 1 Input 4 Kereskedelmi forgalomban ált. 2-,4-,8-,16-, 32-bites MUX-ok is kaphatóak. 13

MUX: Look-Up-Table (LUT) Táblázatban keresés input kiválasztás MUX selector (S) jeleinek bináris kódjai (mintázatai), mint a bemenetek címe (address vagy index) jelennek meg Az adatbemenetek (inputok) táblázatos vagy vektoros formában adottak. A MUX tehát egy 1-bites hardveres megvalósítása a szoftveres LUT táblázat kiolvasásnak. Fontos! Memóriákkal való műveletvégzés (címzésük, indexelés stb.) mindig a MUX-ok segítségével történik, nem LUT-val. 14

LUT megvalósítások: Szoftveres Look-up-Table 0 1 2 1-bites bejegyzések a memóriában index n 1-bites bejegyzések a LUT-ban 0 1 2 n N:1 MUX táblázatban keresés eredménye (érték) n táblázatban keresés eredménye (érték) index n Hardveres Look-up-Table: MUX-ból felépítve (1 bites táblázat keresés) 15

2. Demultiplexer Olyan áramköri elem, amely több kimenet közül választ ki egyet, a selector jel(ek) hatására, és a kiválasztott kimenetet a bemenettel köti össze. (Multiplexerrel ellentétes funkciót tölt be.) Működése hasonló a mechanikus elosztó (distributor) kapcsolókéhoz. Például: S=0 S=1 Sztereo kimeneti erősítő Front sp. = OUT S Rear sp. = OUT S 16

Példa - 1:4 Demultiplexer TTL 74 LS139 duál 1:4 demultiplexer Kereskedelmi forgalomban kapható G: egyetlen demultiplexálandó bemenet A,B: routing control/selector jelek (bináris kód) 4-kimenetből 3 lehet False/Hamis (0), egyet kivéve, amelyik a kiválasztott (annak az értéke a bemenettől függően lehet T/F) Mixed logika T=L! (~0V) 17

Példa - 1:4 Demultiplexer (folyt) Kanonikus táblázat Demultiplexer logika G B A Y0 Y1 Y2 Y3 0 x x 0 0 0 0 1 0 0 1 0 0 0 1 0 1 0 1 0 0 1 1 0 0 0 1 0 1 1 1 0 0 0 1 T=L! Feszültség-logikai tábla 74'LS139 feszültség-logika G.L B.H A.H Y0.L Y1.L Y2.L Y3.L H x x H H H H L H H L H H H L H L H L H H L L H H H L H L L L H H H L Demultiplexer logikai egyenletei: Y 0 = B A G Y1 = B A G Y 2 Y3 = B A G = B A G 18

Példa 2. - 1:8 Demultiplexer TTL 74 LS42-1:8 demultiplexer ( dekódoló ) Kereskedelmi forgalomban kapható D: egyetlen demultiplexálandó bemenete A,B,C: routing control jelek (bináris kód) 8-kimenet (Y0, Y7)mindegyike False, egyet kivéve, amelyik a kiválasztott (annak az értéke a bemenettől függően lehet T/F) (További két kimenettel dekódoló áramkör készíthető belőle:) Y8 = C B A D Y9 = C B A D T=L! 19

3. Dekódoló (decoder) áramkör Kódolt információ dekódolása (konverzió) Egy időben, egyszerre csak egyetlen logikai kimeneti változó (tehát a dekódolt) lehet igaz, a többi hamis! 2^N kimenet dekódolásához N bemenet szükséges! Gyakran alkalmazott eszköz Pl. numerikus memória-cím dekódolásával azonosíthatunk egy adott memóriacellát! Pl: opcode=műveleti kóddal azonosítunk egy kívánt funkciót (adott utasítást) pl. PDP-8-as számítógép Kapható tetszőleges 2-,3-,4- bemenetű IC-k formájában 20

Példa: DEC PDP-8 (egycímű gép) dekódoló logikája 12-bites szóhossz: 3-bites opcode (=8 művelet) + 9-bit utasítás cím (speciális operandus címzési módokat tett lehetővé) And, ADD, IncSkipZero, DepositClearAcc Jump Egyidőben csak egy utasítás teljesülhet! 21

TTL 74LS42 dekóder áramkör 3 8 dekóder áramkör (kibővíthető BCD-to- DECIMAL dekóderré, ha +1 bemenet van): (A,B,C) 3 bemenet, (1 7) 8 kimenet EN: engedélyező jel, (T=L) alacsony aktív A B C EN 'LS42 3x8 decoder 0 1 2 3 4 5 6 7 Mixed logic szimbólum T=L! 22

Példa: 3x8 Dekódoló áramkör kapcsolási rajza ABC EN: engedélyező jel nélkül N bemenet esetén 2^N kimenete van Példa: 3x8 dekóder áramkör Példa: Hamming-kódú hibajavító áramkör Példa: egyszerű számítógép architektúra 23

Példa: 2x4 Dekódoló áramkör kapcsolási rajza (engedélyező bemenettel) AB EN: alacsony aktív állapotban működik 2 bemenő bit (A,B) 4 kimenő (dekódolt) bit (D0 D3) 24

Példa: BCD dekóder 74LS42 áramkör felhasználásával TTL 74LS42-ból 4-bemenet / max 16-kimenet Decimális számjegyeket dekódolja (0..9) //(10)1010 (15)1111 dont care nem definiált Így csak 10 kimenete van EN-lábat, mint a D legnagyobb helyiértékű bit-ként használjuk, False-nak definiáljuk!! A B C D 'LS42 BCD decoder Mixed logic szimbólum T=L! 0 1 2 3 4 5 6 7 8 9 25

4. Kódoló (encoder) áramkör A dekódoló áramkör ellentéte: bemenetek kódolt ábrázolásának egy formáját képzi Hagyományos encoder: csak egy bemenete lehet igaz egyszerre Priority encoder: több bemenete is igaz lehet egyszerre, de azok közül a legnagyobb bináris értékű, azaz prioritású bemenethez generál kódot! (kód: address, index stb. lehet) I/O, vagy IRQ jelek generálásánál használják leggyakrabban 26

Probléma: Priority encoder esetén Mi van akkor, ha még sincs igaz bemenete (mindegyik hamis)? Két megoldás van: 1.) módszer: Input vonalak megszámozása 1-től (D1) kezdődően, és a 0 kimeneti kód (itt: B;A = F;F) jelenti, hogy mind hamis volt. (X don t care) 2.) módszer: input vonalak megszámozása 0-tól (D0) kezdődően, és egy külön vezérlőjelet (W = T ) biztosítani arra, hogyha nincs igaz bemenete (F F F F) 27

TTL 74LS147 Priority encoder - kódoló áramkör 10-input, 4-output encoder 0 nincs bejelölve: amikor az összes bemenet False (lefoglalt) Alkalmazás: Memória Cím, indexgenerálás LUT választás 1 2 3 4 5 6 7 8 9 'LS147 encoder A B C D Mixed logic szimbólum T=L! 28

5. Komparátor Katalógus: TTL 74LS86 Logikai kifejezés referencia kifejezés (bináris számok) aritmetikai kapcsolatának megállapítására szolgáló eszköz. Pl: Kettő n-bites szám összehasonlítása compare = összehasonlítás! Az azonosság eldöntéséhez a EQ/XNOR/Coincidence operátort használjuk. Jele: A. EQ. B = A B n-bites minták esetén: A. EQ. B = ( A0 B0) ( A1 B1)... ( An Bn) 29

Ismétlés: EQ/XNOR/Coincidence operátor Logikai egyenlet: A. EQ. B = A B = A B + A B Referenciabit szerinti megkülönböztetés: ha a referencia bit (B), amihez hasonlítunk konstans ha a referencia bit (B) egy változó mennyiség Példa: ha B referencia konstans -> egyszerűsítése A-nak A. EQ. B = A if B = T A. EQ. B = A if B = F Példa: legyen B egy 4-bites konstans mennyiség (B=TFFT), és A tetszőleges, akkor: A. EQ. B = A0 A1 A2 A3 30

Példa: 4-bites komparátor Mixed-logic kapcsolási rajza, és log. egyenlete: A. EQ. B = ( A0 B0) ( A1 B1) ( A2 B2) ( A3 B3) 31

74LS85 4-bit Magnitude Comparator Magnitude comparing (~nagyságrend összehasonlítás): két kifejezés nagyságának összehasonlítása (A<B; A=B; A>B stb.) egyszerre 3 állapot (státusz) bemenet Összehasonlítás eredménye, mint kimenet Ha B.IN=H: egyenlőség van A és B-re? 32

Példa: 8-bites Magnitude Comparator egyenlőség esetén Kettő 4-bites 74LS85 Magnitude komparátor sorbakötéséből ( cascading ) kapjuk a 8-bites (P,Q) értékek összehasonlítását MSB LSB 3 állapot (státusz) bemenet Ha B.IN=H: egyenlőség? eredmény 33

6. Univerzális logikai áramkör Ritkán használt áramköri elem 2-bemenő bit (A,B) 16-kimenet (Z0-Z15) Lásd: Arató könyv I. fejezet black box modell 4:1 MUX 34

7. Bináris műveletvégző egységek a.) Full Adder (FA) Teljes összeadó b.) Ripple Carry Adder (RCA) Átvitelkezelő összeadó c.) Look-Ahead-Carry Adder (LACA) d.) Full Subtractor (FS) Teljes kivonó e.) Komplexebb blokk: Arithmetic Logic Unit (ALU) 35

a.) Teljes összeadó Full Adder FA: 1-bites Full Adder igazságtáblázat szimbólum A i B i Cin Sum i Cout A i B i C in 0 0 0 0 0 A B Egy lehetséges CMOS kapcsolási rajza: XOR1 XOR2 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 FA (Full Adder) Cin NAND1 NAND2 NAND3 S Cout 1 1 1 1 1 S i C out Karnaugh táblái: Kimeneti fgv-ei: C out : BC A 00 01 A 0 1 0 0 0 1 C 11 1 1 B 10 0 0 1 3 2 1 4 5 7 6 Cout = A B+ A Cin + B Cin S i : C BC B A 00 01 11 10 0 0 1 0 1 0 1 3 2 A 1 1 0 1 0 4 5 7 6 3 Si = Ai Bi Cin S A B C 1,3 (,, ) 36

b.) Átvitelkezelő összeadó Ripple Carry Adder (RCA) Pl. 6-bites RCA: [0..5] (LSB Cin = GND!) A5B5 Cin A4 B4 Cin A3 B3 Cin A2B2 Cin A1B1 Cin A0 B0 Cin GND FA5 FA4 FA3 FA2 FA1 FA0 Cout S5 Cout S4 Cout S3 Cout S2 Cout S1 Cout S0 MSB Számítási időszükséglet (RCA): T (RCA) = N*T (FA) = N*(2*G) = 12 G (6-bites RCA esetén) ahol a 2G az 1-bites FA kapukésleltetése LSB Példa: TTL 74LS283: 4-bites RCA áramkör 37

Példa: 3-bites RCA áramkör RCA: 3 db 1-bites FA-ból épül fel FA FA FA A+B=101+110=1011 38

Példa: 12-bites RCA áramkör 3 db 4-bites RCA-ból ( 74LS283) épül fel 2 s komplemens összeadó: előjeles aritmetika 12 biten: 1-előjelbit + 11 bit (MSB: előjel) 39

c.) LACA: Look-Ahead Carry Adder: RCA soros (ripple carry) működésének felgyorsítása Képlet (FA) átírásából kapjuk: C = A B + A C + B C out i i i in i in A B + C ( A + B ) = C + C C { 14243 i i in i i G in P CarryGenerate Carry Pr opagate S = A B C i i i in A i B i C in LACA (Look Ahead Carry Adder) S i C g C p LACG: Look Ahead Carry Generator áll egy b bites ALU-ból, minden egyes állapotban a Carry generálásáért felel a CP és CG vonalakon érkező jeleknek megfelelően. 40

Példa: 4-bites LACA+LACG Legyen b=4, és N=16. Áramkör felépítése, és időszükséglete: A hierarchikus megvalósításban az si kiszámításához szükséges: 1(LACA)+2(LACG)+2(super- LACG)+2(LACG)+1(LACA)=8 kapuidő, szemben a 32 kapuidővel a carry-ripple-through esetén A 4 LACA-t lehetséges egy 74LS181 ALU-ba integrálni! 41

Példa: 12 bites ALU LACG áramkörök felhasználásával 74LS181: 4-bites ALU LACG: Block Carry Look Ahead áramkör LACG C8 = CG7 + CP7 CC3 + CP7 CP3 C0 C4 = CG3 + P3 C0 42

d.) Teljes kivonó - Full Subtractor (FS) FS: 1-bites Full Subtractor igazságtáblázat szimbólum Logikai kapcsolási rajz (Fi esetén) X i Y i Bin F i Bout 0 0 0 0 0 0 0 1 1 1 0 1 0 1 1 0 1 1 0 1 1 0 0 1 0 1 0 1 0 0 X i Y i B in X FS (Full Substracter) Y B out 1 1 0 0 0 B in 1 1 1 1 1 F i B out Karnaugh táblái: B out : Y B in X 00 01 0 0 1 B in 11 1 Y 10 1 0 1 3 2 F i : Y B in X 00 01 0 B in Y 11 10 0 1 0 1 0 1 3 2 Kimeneti fgv-ei: X 1 0 0 Bout = Xi Yi + Xi Bin + Yi Bin 1 0 4 5 7 6 X 1 1 0 1 0 4 5 7 6 3 Fi = Xi Y i Bin S X Y Z 1,3 (,, ) 43

e.) Komplexebb blokk = ALU: Aritmetikai Logikai Egység Utasítások hatására a (Sn-S0) vezérlőjelek kijelölik a végrehajtandó aritmetikai / logikai műveletet. További adatvonalak kapcsolódhatnak közvetlenül a státusz regiszterhez, amely fontos információkat tárol el: pl. carryin, carry-out átviteleket, előjel bitet (sign), túlcsordulást (overflow), vagy alulcsordulást (underflow) jelző biteket. Műveleti Utasítások (S n -S o ) Operandus A (A n -A 0 ) Operandus B (B n -B 0 ) ALU Aritmetikai / Logikai Egység Eredmény (F n -F 0 ) 44

ALU: Státusz- (flag) jelzőbitek Az aritmetikai műveletek eredményétől függően hibajelzésre használatos jelzőbitek. Ezek megváltozása az utasításkészletben előre definiált utasítások végrehajtásától függ. a.) Előjelbit (sign): 2 s komplemens (MSB) b.) Átvitel kezelő bit (carry in/out): helyiértékes átvitel c.) Alul / Túlcsordulás jelzőbit (underflow / overflow) d.) Zero bit: kimeneti eredmény 0-e? 45

Példa: 4-bites ALU felépítése és működése (TTL 74LS181) Két 4-bites operandus (A, B) 4 bites eredmény (F) Átvitel: Carry In/ Out S2: Aritmetikai/ logikai mód választó (MUX) S0, S1: művelet kiválasztó (S2 értékétől függően) Operandus A (A n -A 0 ) Oper randus B (B n -B 0 ) Carry In Aritmetikai / logikai mód választó S2 Művelet kiválasztó S0, S1 4-bites ALU Eredmény (F n -F 0 ) Carry Out ALU: LSI méretű bit-slice építő blokk 4-bites ALU szimbolikus rajza 46

ALU működését leíró függvénytáblázat: (Néhány lehetséges aritmetikai / logikai művelet ) Művelet kiválasztás: Művelet: Megvalósított függvény: S2 S1 S0 Cin 0 0 0 0 F=A A átvitele 0 0 0 1 F=A+1 A értékének növelése 1-el (increment) 0 0 1 0 F=A+B Összeadás 0 0 1 1 F=A+B+1 Összeadás carry figyelembevételével 0 1 0 0 F = A + B A + 1 s komplemens B 0 1 0 1 F = A + B +1 Kivonás 0 1 1 0 F=A-1 A értékének csökkentése 1-el (decrement) 0 1 1 1 F=A A átvitele 1 0 0 0 F = A B AND 1 0 1 0 F = A B OR F = A B 1 1 0 0 XOR 1 1 1 0 F = A A negáltja (NOT A) * L.Howard Pollard: Computer Desing and Architecture c. könyv függeléke (appendix) 47

ALU felépítése Carry In Ai Bi Aritmetikai Egység (+,*,-,/) Carry Out 0 1 MUX Eredmény (F i ) Művelet kiválasztó S0 S1 Logikai Egység S2 Arit/Log mód kiválasztó 48