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

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

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

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

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

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

Bevezetés az informatikába

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

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

Digitális technika (VIMIAA02) Laboratórium 1

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

Digitális technika (VIMIAA02) Laboratórium 1

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

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

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

Digitális elektronika gyakorlat

Összeadás BCD számokkal

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.

0 0 1 Dekódolás. Az órajel hatására a beolvasott utasítás kód tárolódik az IC regiszterben, valamint a PC értéke növekszik.

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

DIGITÁLIS TECHNIKA I

PROGRAMOZHATÓ LOGIKAI ESZKÖZÖK. Elıadó: Dr. Oniga István Egytemi docens

LOGSYS LOGSYS SPARTAN-3E FPGA KÁRTYA FELHASZNÁLÓI ÚTMUTATÓ szeptember 19. Verzió

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

Digitális technika VIMIAA hét

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

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 VIMIAA hét

3. A DIGILENT BASYS 2 FEJLESZTŐLAP LEÍRÁSA

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

LOGIKAI TERVEZÉS. Előadó: Dr. Oniga István Egytemi docens

PROTOTÍPUSKÉSZÍTÉS. Előadó: Dr. Oniga István

Mérési jegyzőkönyv. az ötödik méréshez

10. EGYSZERŰ HÁLÓZATOK TERVEZÉSE A FEJLESZTŐLAPON Ennél a tervezésnél egy olyan hardvert hozunk létre, amely a Basys2 fejlesztőlap két bemeneti

A/D és D/A konverterek vezérlése számítógéppel

2008. október 9. Verzió

ISE makró (saját alkatrész) készítése

Bevezetés az informatikába Tételsor és minta zárthelyi dolgozat 2014/2015 I. félév

Processzor (CPU - Central Processing Unit)

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

2. Fejezet : Számrendszerek

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

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

A TMS320C50 és TMS320C24x assembly programozására példák

Digitális technika VIMIAA01 9. hét

A tervfeladat sorszáma: 1 A tervfeladat címe: ALU egység 8 regiszterrel és 8 utasítással

A MiniRISC processzor

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

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

Digitális Technika II.

Informatika érettségi vizsga

Mikroprocesszor CPU. C Central Központi. P Processing Számító. U Unit Egység

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

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

Összetett feladatok megoldása

Központi vezérlőegység

Digitális technika VIMIAA01

Mikroelektronika Laboratórium

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

[cimke:] [feltétel] utasítás paraméterek [; megjegyzés]

Bevezetés az informatikába gyakorló feladatok Utoljára módosítva:

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

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

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

Ellenőrző mérés mintafeladatok Mérés laboratórium 1., 2011 őszi félév

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

11. KÓDÁTALAKÍTÓ TERVEZÉSE HÉTSZEGMENSES KIJELZŐHÖZ A FEJLESZTŐLAPON

ELŐADÁS SZÁMÍTÓGÉP MŰKÖDÉSE FIZIKA ÉS INFORMATIKA

Alapfogalmak. Dr. Kallós Gábor A Neumann-elv. Számolóeszközök és számítógépek. A számítógép felépítése

Kombinációs hálózatok és sorrendi hálózatok realizálása félvezető kapuáramkörökkel

Beágyazott és Ambiens Rendszerek Laboratórium BMEVIMIA350. Mérési feladatok az 1., 2. és 3. mérési alkalomhoz

Egyszerű RISC CPU tervezése

Az integrált áramkörök kimenetének kialakítása

Újrakonfigurálható eszközök

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

DIGITÁLIS TECHNIKA feladatgyűjtemény

Hobbi Elektronika. Bevezetés az elektronikába: Logikai kapuáramkörök

Bevezetés az informatikába gyakorló feladatok Utoljára módosítva:

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

FPGA áramkörök alkalmazásainak vizsgálata

Aritmetikai utasítások I.

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

Programozási segédlet DS89C450 Fejlesztőpanelhez

DIGITÁLIS TECHNIKA. Szabó Tamás Dr. Lovassy Rita - Tompos Péter. Óbudai Egyetem Kandó Kálmán Villamosmérnöki Kar LABÓRATÓRIUMI ÚTMUTATÓ

Bevezetés az elektronikába

Digitális technika VIMIAA02 9. hét

Digitális technika (VIMIAA02) Laboratórium 5

Digitális technika (VIMIAA02) Laboratórium 5

Elektronika laboratóriumi mérőpanel elab panel NEM VÉGLEGES VÁLTOZAT! Óbudai Egyetem

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

A Picoblaze Core implementálása FPGA-ba

Digitális technika VIMIAA02 9. hét Fehér Béla BME MIT

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

Digitális elektronika gyakorlat. A VHDL leírástípusok

A mikroszámítógép felépítése.

Bevezetés az informatikába

PAL és s GAL áramkörök

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

A SZÁMÍTÓGÉP KIALAKULÁSA. Zámori Zoltán, KFKI

Alaplap: közös kapcsolódási felület a számítógép részegységei számára

Műveletek lebegőpontos adatokkal

Átírás:

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD) Bevezetés A laborgyakorlatok alapvető célja a tárgy későbbi laborgyakorlataihoz szükséges ismeretek átadása, az azokban szereplő korszerű tervezési és vizsgálati eszközök, módszerek első bemutatása. Napjainkban egyre szélesebb körben alkalmazzák a digitális elektronikus eszközöket. Az eszközök bonyolultsága is egyre nő, nagyon gyakori az olyan alkalmazás, amelynél egyetlen IC tokba több százezer vagy akár több millió kaput integrálnak. Ezek az áramkörök hagyományos papír-ceruza módszerekkel már nem tervezhetők, számítógéppel segített tervezésre (CAD) van szükség. A laborgyakorlatok során a Xilinx ISE WebPack fejlesztő rendszert és annak a kapcsolási rajz alapú logikai áramkörtervezését használjuk. A laboratóriumi gyakorlatok célja, hogy a hallgatók ismerjék meg a laborgyakorlatok során használt hardver és szoftver eszközöket; ismerjék meg a Xilinx ISE Webpack FPGA fejlesztő környezetet és használatát; sajátítsák el a kapcsolási rajz alapú logikai áramkörtervezés alapjait; önállóan készítsenek el egy kapcsolási rajz alapú példaalkalmazásokat, majd szimulációval és valós hardveren ellenőrizzék azok működését. Aritmetikai és Logikai Egység (ALU) A számítástechnikában az aritmetikai-logikai egység (rövidítése ALU az angol Arithmetic Logic Unit alapján) aritmetikai és logikai műveleteket elvégző digitális áramkör. Alapvető eleme a számítógép központi vezérlőegységének. Neumann János alkotta meg az ALU fogalmát 1945-ben, amikor cikkében beszámolt új számítógépéről, az EDVAC-ról. Egy tipikus Neumann-féle CPU belső szerkezetének részében az ALU saját maga végzi az összeadást, a kivonást és más egyszerű műveleteket az inputjain, így adva át az eredményt az output regiszternek. Az első integrált aritmetikai logikai egység a 74-es TTL sorozat 74181 1 típusú áramköre volt, ami megalapozta a mai modern CPU-k kialakulását. 1 http://en.wikipedia.org/wiki/74181 1. oldal 2014.03.25.

Egy ALU általában a következő alapműveletek végrehajtására képes: összeadás és kivonás (fixpontos, lebegőpontos számokkal) szorzás, osztás (fixpontos, lebegőpontos számokkal) léptetések bitszintű logikai műveletek A műveletek eredményével kapcsolatos egyéb információkat (pl.: túlcsordulás, az eredmény nulla, carry átvitel) is szolgáltat. A laborgyakorlat során megvalósított ALU Az egyszerűség kedvéért a laborgyakorlaton csak a legalapvetőbb műveleteket valósítjuk meg az ALU-ban. A laborgyakorlat során megépítésre kerülő ALU blokkvázlata az alábbi ábrán látható. A modul bemenete két 4 bites szám (A, B). Az S bemenet az ALU vezérlését végzi. Ezzel lehet kiválasztani, hogy éppen milyen műveletet szeretnénk végezni a két bemeneti értéken. Az ALU_out kimeneten az eredmény jelenik meg. A Flags kimeneten a műveletvégzés eredményét jelző (Carry, Overflow, Zero) információk jelennek meg. 2. oldal 2014.03.25.

Az ALU részei ADD: Két négybites szám összeadására képes teljes összeadó. Ha kivonást is akarunk végeztetni az összeadóval, akkor a második operandus (B) kettes komplemenést (bitenként negált +1) kell az elsőhöz (A) hozzáadnunk. A negálást exkluzív vagy kapuval, az egyes hozzáadását az első helyi értéken a CIN-re adott egyessel oldhatjuk meg. AND, OR, XOR: A két négybites bemenet bitenkénti és, vagy, kizáró-vagy kapcsolatát adja eredményül. ROL, ROR: Az A bemenet egy bittel történő balra, illetve jobbra forgatása. MUX: A multiplexer a vezérlő jeleknek megfelelő műveletvégző egység kimeneti jelét választja ki. Az ALU-ban minden műveletvégző egység kimenetén megjelenik az adott műveleti eredmény, ezért szükséges a multiplexer, ami csak a megfelelő műveleti eredményt adja a kimenetre. Ez lesz az ALU kimeneti értéke. A blokksémán látható, hogy a multiplexer több négybites adatvonal kiválasztását végzi, majd az eredmény egy szintén négybites adatvonalra kerül. Megvalósítása: Négy darab multiplexer, a négybites busz helyi értékeinek kiválasztására. Másik lehetőség az ALU_out_mux 2 makró használata. Ez egy 8-ról 1-re multiplexer, 4 bites adatcsatornákkal. A következő táblázat az ALU kimeneti jelét mutatja a vezérlőjeleinek függvényében. Kiválasztó S2 S1 S0 Kimenet Leírás 0 0 0 Y = A + B Az 'A' és 'B' bemenet összege. 0 0 1 Y = A - B Az 'A' és 'B' bemenet különbsége 0 1 0 Y(i) = A(i) & B(i) Az 'A' és 'B' bemenet bitenkénti ÉS kapcsolata 0 1 1 Y(2:0) = A(3:1), Y(3) = A(0) Az 'A' bemenet rotálása jobbra. Az 'A' és 'B' bemenet bitenkénti VAGY 1 0 0 Y(i) = A(i) B(i) kapcsolata 1 0 1 Y(3:1) = A(2:0), Y(0) = A(3) Az 'A' bemenet rotálása balra. Az 'A' és 'B' bemenet bitenkénti XOR 1 1 0 Y(i) = A(i) ^ B(i) kapcsolata 1 1 1 - - A laborgyakorlaton megépített ALU három Flag bitet tartalmaz. Overflow: Előjeles túlcsordulás. Előjeles számok esetében az összeadás, vagy a kivonás eredménye nem ábrázolható az adott számtartományon. Carry: Átvitel előjel nélküli műveleteknél. Az összeadás eredménye nem ábrázolható az adott számtartományban. Zero: Az ALU művelet eredmény nulla lett. 2 A makró fájlok a laborgyakorlatok alatt megtalálhatóak az FTP* szerveren. A működése és használata a makro_kieg.pdf -ben található. 3. oldal 2014.03.25.

Laborfeladat: Készítsen el egy négybites aritmetikai és logikai egységet, a következő műveletek végrehajtására: összeadás, kivonás, ÉS, VAGY, kizáró-vagy, forgatás jobbra, forgatás balra. Az ALU építésénél felhasználható, a szimbólumok között megtalálható ADD4 összeadó áramkör, és az FTP-ről letölthető ALU_out_mux multiplexer. A kész ALU áramkörből készítsen makrót az alábbi ábrának megfelelően. A makró ki-bemeneteit a következőképpen társítsa portokhoz. Macro Port (ucf file) S0, S1, S2 BTN0, BTN1, BTN2 A(3:0) SW(3:0) B(3:0) SW(7:4) ALU_OUT(3:0) LED(3:0) OVF LED(5) CARRY LED(6) ZERO LED(7) A szimulációhoz használja a kiadott tesztfájlt. Kiegészítő feladat: A bemeneti A, és B számot, a vezérlőbiteket és az eredményt jelenítse meg hétszegmenses kijelzőkön. A feladathoz szükséges makrók: Clk_divide, Bin_to_7_segment_x4 3. 3 A makró fájlok a laborgyakorlatok alatt megtalálhatóak az FTP* szerveren. A működése és használata a makro_kieg.pdf -ben található. 4. oldal 2014.03.25.

5. oldal 2014.03.25.

Alkalmazandó műszerek és eszközök PC számítógép Digilent Basys2 Spartan-3E FPGA mérőpanel Digilent Adept konfiguráló szoftver Hivatkozások, felkészüléshez ajánlott irodalom [1] FPGA fejlesztés a Xilinx ISE Webpack-ben, Elektronikus formában a tantárgy honlapján [2] Digilent Basys2 Board Reference Manual, Elektronikus formában a tantárgy honlapján [3] Spartan-3E Libraries Guide for Schematic Designs, Elektronikus formában a tantárgy honlapján [4] Kóré László: Digitális elektronika I. BMF 1121 [5] Arató Péter: Logikai rendszerek tervezése, Tankönyvkiadó 6. oldal 2014.03.25.