Diferență între revizuiri ale paginii „CID Lab Lucrarea 1”
(Nu s-au afișat 15 versiuni intermediare efectuate de un alt utilizator) | |||
Linia 2: | Linia 2: | ||
* [[Tutorial_Quartus_II| Utilizarea programului de sinteză Altera Quartus II]] | * [[Tutorial_Quartus_II| Utilizarea programului de sinteză Altera Quartus II]] | ||
+ | * [http://wiki.dcae.pub.ro/images/f/fc/Pinii_la_care_sunt_conectati_dispozitivele_I-O_pe_placa_experimentala_DE1.pdf Lista pinilor plăcii DE1] | ||
+ | * [http://wiki.dcae.pub.ro/images/d/d9/Lista_pinilor_pl%C4%83cii_DE1-SoC.pdf Lista pinilor plăcii DE1_SOC] | ||
* [[Introducere. Verilog HDL și ModelSim#Introducere în Circuite Digitale|Logică booleană și sisteme de numerație]] | * [[Introducere. Verilog HDL și ModelSim#Introducere în Circuite Digitale|Logică booleană și sisteme de numerație]] | ||
* Noțiuni de sintaxă [[Verilog]] | * Noțiuni de sintaxă [[Verilog]] | ||
Linia 30: | Linia 32: | ||
Implementați proiectul pe placa DE1 și observați funcționalitatea circuitului descris de proiectul Quartus II. | Implementați proiectul pe placa DE1 și observați funcționalitatea circuitului descris de proiectul Quartus II. | ||
− | + | Lista pinilor la care sunt conectate dispozitivele I/O pe placa DE1 sunt descriși [http://wiki.dcae.pub.ro/images/f/fc/Pinii_la_care_sunt_conectati_dispozitivele_I-O_pe_placa_experimentala_DE1.pdf aici] | |
− | |||
== Exercițiul 1 == | == Exercițiul 1 == | ||
− | Realizați descrierea în Verilog a modulului cu intrările '''a''', '''b''', '''c''' și ieșirea ''' | + | Realizați descrierea în Verilog a modulului cu intrările '''a''', '''b''', '''c''' și ieșirea '''d''', cu funcționalitatea conform schemei alăturate. Implementați circuitul pe placa DE1 conectând intrările a, b, c la SW2, SW4, respectiv SW6, iar ieșirea d la LEDG2. |
[[Fișier:lab1_ex1.jpg]] | [[Fișier:lab1_ex1.jpg]] | ||
Linia 41: | Linia 42: | ||
== Exercițiul 2 == | == Exercițiul 2 == | ||
− | Realizați descrierea în Verilog a modulului cu intrările '''a''', '''b''', '''c''' și ieșirea '''q''', cu funcționalitatea conform schemei alăturate. Implementați circuitul pe placa DE1 conectând intrările a, b, c la SW3, SW4, respectiv SW7, iar ieșirea q la | + | Realizați descrierea în Verilog a modulului cu intrările '''a''', '''b''', '''c''' și ieșirea '''q''', cu funcționalitatea conform schemei alăturate. Implementați circuitul pe placa DE1 conectând intrările a, b, c la SW3, SW4, respectiv SW7, iar ieșirea q la LEDR7. |
[[Fișier:lab1_ex2.gif]] | [[Fișier:lab1_ex2.gif]] | ||
Linia 47: | Linia 48: | ||
== Exercițiul 3 == | == Exercițiul 3 == | ||
− | Realizați descrierea în Verilog a modulului cu intrările '''a''', '''b''', '''c''' și ieșirea '''q''', cu funcționalitatea conform schemei alăturate. Implementați circuitul pe placa DE1 conectând intrările a, b, c la SW1, SW6, respectiv SW7, iar ieșirea q la | + | Realizați descrierea în Verilog a modulului cu intrările '''a''', '''b''', '''c''' și ieșirea '''q''', cu funcționalitatea conform schemei alăturate. Implementați circuitul pe placa DE1 conectând intrările a, b, c la SW1, SW6, respectiv SW7, iar ieșirea q la LEDG3. |
[[Fișier:lab1_ex3.jpg]] | [[Fișier:lab1_ex3.jpg]] | ||
Linia 53: | Linia 54: | ||
== Exercițiul 4 == | == Exercițiul 4 == | ||
− | Realizați descrierea în Verilog a modulului cu intrările '''a''', '''b''', '''c''' și ieșirea ''' | + | Realizați descrierea în Verilog a modulului cu intrările '''a''', '''b''', '''c''' și ieșirea '''z''', cu funcționalitatea conform schemei alăturate. Implementați circuitul pe placa DE1 conectând intrările a, b, c la SW3, SW4, respectiv SW5, iar ieșirea z la LEDR6. |
[[Fișier:lab1_ex4.png]] | [[Fișier:lab1_ex4.png]] | ||
Linia 59: | Linia 60: | ||
== Exercițiul 5 == | == Exercițiul 5 == | ||
− | Realizați descrierea în Verilog a modulului cu intrările '''a''', '''b''', '''c''' și ieșirea ''' | + | Realizați descrierea în Verilog a modulului cu intrările '''a''', '''b''', '''c''' și ieșirea '''y''', cu funcționalitatea conform schemei alăturate. Implementați circuitul pe placa DE1 conectând intrările a, b, c la SW5, SW6, respectiv SW7, iar ieșirea y la LEDG4. |
[[Fișier:lab1_ex5.png]] | [[Fișier:lab1_ex5.png]] | ||
Linia 65: | Linia 66: | ||
== Exercițiul 6 == | == Exercițiul 6 == | ||
− | Realizați descrierea în Verilog a modulului cu intrările '''a''', '''b''', '''c''' și ieșirea ''' | + | Realizați descrierea în Verilog a modulului cu intrările '''a''', '''b''', '''c''' și ieșirea '''y''', cu funcționalitatea conform schemei alăturate. Implementați circuitul pe placa DE1 conectând intrările a, b, c la SW5, SW4, respectiv SW1, iar ieșirea y la LEDR7. |
[[Fișier:lab1_ex6.png]] | [[Fișier:lab1_ex6.png]] |
Versiunea curentă din 6 martie 2018 07:55
Noțiuni și cunoștințe necesare
- Utilizarea programului de sinteză Altera Quartus II
- Lista pinilor plăcii DE1
- Lista pinilor plăcii DE1_SOC
- Logică booleană și sisteme de numerație
- Noțiuni de sintaxă Verilog
Exemplu
Creați un proiect nou în Quartus II, pentru dispozitivul FPGA Altera Cyclone II de pe placa DE1. Creați un fișier sursă Verilog în cadrul proiectului, și copiați modulul următor în fisier.
Atenție! Numele modulului top-level care va fi sintetizat trebuie setat corect cand creati proiectul (in cazul acesta, OrGate).
module OrGate(
output out,
input in1,
input in2
);
assign out = in1 | in2;
endmodule
Adăugați constrângerile necesare pentru ca intrările și ieșirile circuitului să fie conectate astfel:
- in1 conectat la SW0: PIN_L22
- in2 conectat la SW7: PIN_M2
- out conectat la LDR3 (ledul roșu nr.3): PIN_Y19
Implementați proiectul pe placa DE1 și observați funcționalitatea circuitului descris de proiectul Quartus II.
Lista pinilor la care sunt conectate dispozitivele I/O pe placa DE1 sunt descriși aici
Exercițiul 1
Realizați descrierea în Verilog a modulului cu intrările a, b, c și ieșirea d, cu funcționalitatea conform schemei alăturate. Implementați circuitul pe placa DE1 conectând intrările a, b, c la SW2, SW4, respectiv SW6, iar ieșirea d la LEDG2.
Exercițiul 2
Realizați descrierea în Verilog a modulului cu intrările a, b, c și ieșirea q, cu funcționalitatea conform schemei alăturate. Implementați circuitul pe placa DE1 conectând intrările a, b, c la SW3, SW4, respectiv SW7, iar ieșirea q la LEDR7.
Exercițiul 3
Realizați descrierea în Verilog a modulului cu intrările a, b, c și ieșirea q, cu funcționalitatea conform schemei alăturate. Implementați circuitul pe placa DE1 conectând intrările a, b, c la SW1, SW6, respectiv SW7, iar ieșirea q la LEDG3.
Exercițiul 4
Realizați descrierea în Verilog a modulului cu intrările a, b, c și ieșirea z, cu funcționalitatea conform schemei alăturate. Implementați circuitul pe placa DE1 conectând intrările a, b, c la SW3, SW4, respectiv SW5, iar ieșirea z la LEDR6.
Exercițiul 5
Realizați descrierea în Verilog a modulului cu intrările a, b, c și ieșirea y, cu funcționalitatea conform schemei alăturate. Implementați circuitul pe placa DE1 conectând intrările a, b, c la SW5, SW6, respectiv SW7, iar ieșirea y la LEDG4.
Exercițiul 6
Realizați descrierea în Verilog a modulului cu intrările a, b, c și ieșirea y, cu funcționalitatea conform schemei alăturate. Implementați circuitul pe placa DE1 conectând intrările a, b, c la SW5, SW4, respectiv SW1, iar ieșirea y la LEDR7.
Submiterea Rezolvării Exercițiilor
Se va rezolva un singur exercițiu, ce va fi selectat de cadrul didactic. Pentru notare, se vor submite următoarele fișiere, către adresa de e-mail indicată de cadrul didactic.
O arhivă zip ce va conține:
- Un fișier Verilog cu extensia .v care conține descrierea Verilog a circuitului
- Un fișier de constrângeri, cu extensia .qsf
- Un fișier de tip proiect Quartus, cu extensia .qpf
Atentie, arhiva va contine doar cele 3 fisiere (fara directoare).
Subiectul mesajului de e-mail trebuie să respecte formatul [Nume]_[Prenume]_[Grupa]_[Numărul Exercițiului]. De exemplu Petrica_Lucian_423B_2
Recomandări pentru cadrele didactice
- Implementarea unui exemplu de proiect Quartus, parcurgându-se tutorialul.