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

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

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

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

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

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

Laborgyakorlat 3 A modul ellenőrzése szimulációval. Dr. Oniga István

Digitális technika (VIMIAA02) Laboratórium 5

Digitális technika (VIMIAA02) Laboratórium 5

Digitális technika (VIMIAA02) Laboratórium 4

Digitális technika (VIMIAA02) Laboratórium 4

Digitális technika (VIMIAA02) Laboratórium 1

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

Digitális technika (VIMIAA02) Laboratórium 1

Digitális technika (VIMIAA01) Laboratórium 4

Digitális technika (VIMIAA02) Laboratórium 5.5

Digitális technika (VIMIAA02) Laboratórium 3

Digitális technika (VIMIAA02) Laboratórium 2

Digitális technika (VIMIAA02) Laboratórium 3

DIGITÁLIS TECHNIKA 13. Dr. Oniga István

Digitális technika (VIMIAA01) Laboratórium 2

Digitális technika (VIMIAA01) Laboratórium 2

FPGA & Verilog ismertetı. BME Méréstechnika és Információs Rendszerek Tanszék

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

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

Dr. Oniga István DIGITÁLIS TECHNIKA 8

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

Digitális technika Xilinx ISE GUI használata

Hardver leíró nyelvek (HDL)

Fehér Béla Szántó Péter, Lazányi János, Raikovich Tamás BME MIT FPGA laboratórium

A feladatokat önállóan, meg nem engedett segédeszközök használata nélkül oldottam meg: Olvasható aláírás:...

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

LOGIKAI TERVEZÉS HARDVERLEÍRÓ NYELVEN. Előadó: Dr. Oniga István

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

Bevezetés az informatikába

Újrakonfigurálható eszközök

Dr. Oniga István DIGITÁLIS TECHNIKA 9

Egyszerű RISC CPU tervezése

Újrakonfigurálható eszközök

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

LOGIKAI TERVEZÉS HARDVERLEÍRÓ NYELVEN. Előadó: Dr. Oniga István

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

Verilog HDL ismertető 4. hét : hét dia

Újrakonfigurálható eszközök

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

A VERILOG HARDVER LEÍRÓ NYELV ALKALMAZÁSA A LOGIKAI SZINTÉZISBEN

LOGSYS EGYSZERŰ ALKALMAZÁS KÉSZÍTÉSE A LOGSYS KINTEX-7 FPGA KÁRTYÁRA A XILINX VIVADO FEJLESZTŐI KÖRNYEZET HASZNÁLATÁVAL június 16. Verzió 1.

Mikrorendszerek tervezése

A Picoblaze Core implementálása FPGA-ba

Dr. Oniga István DIGITÁLIS TECHNIKA 4

Verilog HDL ismertető

12. NYOMÓGOMBOK ÉS KAPCSOLÓK PERGÉSMENTESÍTÉSE A FEJLESZTŐLAPON

DIGITÁLIS TECHNIKA I

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

Digitális elektronika gyakorlat

Bev Be e v z e e z t e ő t az ISE re r nds nds e z r e használatához

Hobbi Elektronika. A digitális elektronika alapjai: Újrakonfigurálható logikai eszközök

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

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

A VERILOG HARDVER LEÍRÓ NYELV ALKALMAZÁSA A LOGIKAI SZINTÉZISBEN

DIGITÁLIS TECHNIKA 7. Előadó: Dr. Oniga István

Verilog ismertető (Szántó Péter, BME MIT, )

Újrakonfigurálható eszközök

Újrakonfigurálható eszközök

Digitális technika II. (vimia111) 5. gyakorlat: Mikroprocesszoros tervezés, egyszerű feladatok HW és SW megvalósítása gépi szintű programozással

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

Mintavételes szabályozás mikrovezérlő segítségével

8.3. AZ ASIC TESZTELÉSE

Budapesti Műszaki és Gazdaságtudományi Egyetem. A Verilog HDL II. Nagy Gergely. Elektronikus Eszközök Tanszéke (BME) szeptember 26.

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

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

Digitális Technika II.

Újrakonfigurálható eszközök

A Verilog HDL áttekintése

Elektronikus dobókocka tervezési példa

Tervezési módszerek programozható logikai eszközökkel

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

IV. A SystemC alapelemei


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

A VERILOG HARDVER LEÍRÓ NYELV ALKALMAZÁSA A LOGIKAI SZINTÉZISBEN

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

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

Digitális technika VIMIAA01 9. hét

100% BIO Natur/Bio kozmetikumok és testápolás

III. Alapfogalmak és tervezési módszertan SystemC-ben

Újrakonfigurálható eszközök

Szántó Péter BME Méréstechnika és Információs Rendszerek Tanszék, FPGA Labor

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

Összetett feladatok megoldása

Joint Test Action Group (JTAG)

Perifériák hozzáadása a rendszerhez

Digitális technika Laboratórium 6.

Újrakonfigurálható eszközök

DIGITÁLIS TECHNIKA II

Bevezető az ISE 11.2 rendszer használatához

Digitális rendszerek tervezése FPGA áramkörökkel Szimuláció és verifikáció

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

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

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

RÉSZ IPARI TERMELÕ-SZOLGÁLTATÓ TEVÉKENYSÉG ELLENÕRZÉSE A

Átírás:

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

5. Laboratóriumi gyakorlat Kombinációs logikai hálózatok 2. Komparátorok Paritásvizsgáló áramkörök Összeadok

Lab5_: Két bites komparátor Hozunk létre egy új projektet Adjunk hozzá egy új Verilog forrásfájlt. Lab5_.v forrásfájl specifikálása Funkcionális kód ellenőrzése szimulációval A Nexysx.ucf fájl hozzáadása és adaptálása Konfigurációs fájl generálása, letöltése és a működés tesztelése a kártyán module compare_2 (output reg A_lt_B, A_gt_B, A_eq_B, input [:] A,B); always @ (A or B) begin end A_lt_B = ; A_gt_B = ; A_eq_B = ; if (A==B) A_eq_B = ; else if (A>B) A_gt_B = ; else A_lt_B = ;

Lab5_2: Paritásellenőrző áramkör Hozunk létre egy új projektet Adjunk hozzá egy új Verilog forrásfájlt Lab5_2.v forrásfájl specifikálása Funkcionális kód ellenőrzése szimulációval A Nexysx.ucf fájl hozzáadása és adaptálása Konfigurációs fájl generálása, letöltése és a működés tesztelése a kártyán module oddparity_for (output reg parity, input [7:] data); integer k; always@(data) begin parity = ; for (k = ; k <= 7; k = k+) begin if (data[k] == ) parity = ~parity; end end

Lab5_2 Paritásellenőrző áramkör szimuláció eredménye

Lab5_2 feladat Paritásellenőrző áramkör implementáció

Lab5_3 feladat -bites összeadó Verilog strukturális modellje A i B i C i- S i C i S i C i A B C = i i i = A B i i + A C i i + B i C i Teljes összeadó két félösszeadóból: ½Σ ½Σ A i B i C i- A i A Σ S' i A Σ S i B i B Cout C' i B Cout C'' C i Σ C i- C i S i

Lab5_3a feladat -bites fél összeadó Verilog strukturális modellje Hozunk létre egy új projektet (Lab5_3) Adjunk hozzá egy új Verilog forrásfájlt (half_add.v) half_add.v forrásfájl specifikálása Funkcionális kód ellenőrzése szimulációval (half_add_test.v) a b sum carry module half_add (output sum, carry, input a, b); xor (sum, a, b); // exclusive OR and (carry, a,b); // AND

Lab5_3a feladat -bites fél összeadó szimuláció Hozunk létre egy új projektet (Lab5_3) Adjunk hozzá egy új Verilog Test Fixture forrásfájlt (half_add_test.v) Gerjesztő jelek specifikálása Funkcionális kód ellenőrzése szimulációval // Add stimulus here # a=; # a=; b=; # a=; b=;

Lab5_3b feladat -bites teljes összeadó Verilog strukturális modellje Adjunk hozzá a projekthez egy új Verilog forrásfájlt (full_add.v) A forrásfájl specifikálása z alábbi ábra szerint a_in A i b_in B i A a bb ½Σ M w sum S' Σ i C' w2 i carry Cout ½Σ M2 A a sumσ bb carry Cout sum_out S i w3 C'' carry_out C i carry_in C i- Névszerinti összekötés module full_add (output sum_out, carry_out, input a_in, b_in, carry_in ); wire w, w2, w3; half_add M (.a(a_in),.sum(w),.b(b_in),.carry(w2)); half_add M2 (.sum(sum_out),.b(w),.carry(w3),.a(carry_in)); or (carry_out, w2, w3); A Nexysx.ucf fájl hozzáadása és adaptálása Konfigurációs fájl generálása, letöltése és a működés tesztelése a kártyán

Lab5_3b eredmények Működés tesztelése a kártyán Cin A B Sum Cout

Lab5_4: -bites teljes összeadó leírása // A verzió module add_full (input a, b, cin, output cout, s); xor3_m xor(.i(a),.i(b),.i2(cin),.o(s)); wire a, a, a2; and2_m and(.i(a),.i(b),.o(a)); and2_m and(.i(a),.i(cin),.o(a)); and2_m and2(.i(b),.i(cin),.o(a2)); or3_m or(.i(a),.i(a),.i2(a2),.o(cout)) // B verzió module add_full (input a, b, cin, output cout, s); assign s = a ^ b ^ cin; assign cout = (a & b) (a & cin) (b & cin); // C verzió module add_full (input a, b, cin, output cout, s); assign {cout, s} = a + b + cin; Hozunk létre egy új projektet (Lab5_4) Adjunk hozzá egy új Verilog forrásfájlt (add_full.v) A teljes összeadó leírása a funkcionális kódrészlettel (válaszon egyet a fentiek közül) A Nexysx.ucf fájl hozzáadása és adaptálása Konfigurációs fájl generálása, letöltése és a működés tesztelése a kártyán

Lab5_4 eredmények Működés tesztelése a kártyán Cin A B Sum Cout

Lab5_5:Több bites összeadók A több bites számokat teljes összeadókból építhetjük meg Soros átvitelű 4 bites összeadó (Ripple carry adder): 7483 A 3 B 3 A 2 B 2 A B A B A B C in A B C in A B C in A B C in C out Σ C out Σ C out Σ C out Σ S 4 C 2 S 3 C S 2 C S S Hozunk létre egy új projektet (Lab5_5a) Adjunk hozzá egy új Verilog forrásfájlt (add4.v) A teljes összeadó leírása a funkcionális kódrészlettel (a következő oldalon)

Lab5_5a: 4 bites soros átvitelű összeadó Funkcionális kódrészlet // 5_5a 4 bites soros átvitelű összeadó module add4 (input [3:] a, b, output [4:] s); wire [3:] c; add_full add(.a(a[]),.b(b[]),.cin('b),.cout(c[]),.s(s[])); add_full add(.a(a[]),.b(b[]),.cin(c[]),.cout(c[]),.s(s[])); add_full add2(.a(a[2]),.b(b[2]),.cin(c[]),.cout(c[2]),.s(s[2])); add_full add3(.a(a[3]),.b(b[3]),.cin(c[2]),.cout(s[4]),.s(s[3])); Az előző feladatban létrehozott forrásfájl (add_full.v) hozzáadása projekthez (Ad Copy of Source) A Nexysx.ucf fájl hozzáadása és adaptálása Konfigurációs fájl generálása, letöltése és a működés tesztelése a kártyán

Lab5_5b: 4 bites összeadó viselkedési leírás Hozunk létre egy új projektet (Lab5_5b) Adjunk hozzá egy új Verilog forrásfájlt (add4.v) A teljes összeadó leírása a funkcionális kódrészlettel // 5_5b module add4 (input [3:] a, b, output [4:] s); assign s = a + b; A Nexysx.ucf fájl hozzáadása és adaptálása Konfigurációs fájl generálása, letöltése és a működés tesztelése a kártyán