CID Lab Lucrarea 2: Diferență între versiuni

De la WikiLabs
Jump to navigationJump to search
Fără descriere a modificării
Linia 15: Linia 15:
Realizați un transcodor pentru afișajul cu 7 segmente, folosind un bloc '''case''', care să poată afișa valorile de la 0 la 3. Intrarea modulului se va numi '''value''' iar ieșirea '''out_seg'''.
Realizați un transcodor pentru afișajul cu 7 segmente, folosind un bloc '''case''', care să poată afișa valorile de la 0 la 3. Intrarea modulului se va numi '''value''' iar ieșirea '''out_seg'''.


== Exercițiu ==
== Exerciții ==


Completați transcodorul de la exemplul 2 astfel încât să poată afișa valorile de la 0 la 15, în baza 16 (10 = A, 11 = b, 12 = C, 13 = d, 14 = E, 15 = F). Adăugați circuitului un decodor folosit pentru a selecta care din cele 4 cifre să afișeze valoarea selctată. Intrarea pentru selecția cifrei se va numi '''selection''', iar ieșirea '''out_sel'''.
Completați transcodorul de la exemplul 2 astfel încât să poată afișa valorile de la 0 la 15, în baza 16 (10 = A, 11 = b, 12 = C, 13 = d, 14 = E, 15 = F). Adăugați circuitului un decodor folosit pentru a selecta care din cele 4 cifre să afișeze valoarea selectată. Intrarea pentru selecția cifrei se va numi '''selection''', iar ieșirea '''out_sel'''. Corespondența între '''selection''' și cele 4 cifre cu 7 segmente de pe placa Nexys 2 este conform regulii:
* selection = 0 aprinde prima cifră din stânga spre dreapta
* selection = 1 aprinde a doua cifră din stânga spre dreapta
* selection = 2 aprinde a treia cifră din stânga spre dreapta
* selection = 3 aprinde a patra cifră din stânga spre dreapta


Intrarea '''value''' se va conecta la switchurile SW3-SW0 (corespunzător biților 3->0 ai '''value''', în această ordine), intrarea '''selection''' la SW7-SW6 (corespunzător biților 1->0 ai '''selection''', în această ordine), iar ieșirile la pinii corespunzători pentru afișajul cu 7 segmente.
Modulul top-level se va numi '''afisaj7seg'''.


Modulul top-level se va numi '''afisaj7seg'''.
=== Exercitiul 1===
 
*Intrarea '''value''' se va conecta la switchurile SW3-SW0 (corespunzător biților 3->0 ai '''value''', în această ordine).
*Intrarea '''selection''' se va conecta la SW7-SW6 (corespunzător biților 1->0 ai '''selection''', în această ordine).
*Biții '''out_seg''' corespund cu segmentele în modul următor:
**Bitul 7 corespunde segmentului A
**Bitul 6 corespunde segmentului B
**Bitul 5 corespunde segmentului C
**Bitul 4 corespunde segmentului D
**Bitul 3 corespunde segmentului E
**Bitul 2 corespunde segmentului F
**Bitul 1 corespunde segmentului G
**Bitul 0 corespunde segmentului P
*Ieșirile se vor conecta la pinii corespunzători pentru afișajul cu 7 segmente.
 
===Exercitiul 2===
 
*Intrarea '''value''' se va conecta la switchurile SW7-SW4 (corespunzător biților 3->0 ai '''value''', în această ordine)
*Intrarea '''selection''' se va conecta la SW1-SW0 (corespunzător biților 1->0 ai '''selection''', în această ordine)
*Biții '''out_seg''' corespund cu segmentele în modul următor:
**Bitul 7 corespunde segmentului P
**Bitul 6 corespunde segmentului A
**Bitul 5 corespunde segmentului G
**Bitul 4 corespunde segmentului D
**Bitul 3 corespunde segmentului F
**Bitul 2 corespunde segmentului B
**Bitul 1 corespunde segmentului E
**Bitul 0 corespunde segmentului C
*Ieșirile se vor conecta la pinii corespunzători pentru afișajul cu 7 segmente.
 
===Exercitiul 3===
 
*Intrarea '''value''' se va conecta la switchurile SW6-SW3 (corespunzător biților 3->0 ai '''value''', în această ordine)
*Intrarea '''selection''' se va conecta la SW2-SW1 (corespunzător biților 1->0 ai '''selection''', în această ordine)
*Biții '''out_seg''' corespund cu segmentele în modul următor:
**Bitul 7 corespunde segmentului P
**Bitul 6 corespunde segmentului G
**Bitul 5 corespunde segmentului F
**Bitul 4 corespunde segmentului E
**Bitul 3 corespunde segmentului D
**Bitul 2 corespunde segmentului C
**Bitul 1 corespunde segmentului B
**Bitul 0 corespunde segmentului A
*Ieșirile se vor conecta la pinii corespunzători pentru afișajul cu 7 segmente.
 
===Exercitiul 4===
 
*Intrarea '''value''' se va conecta la switchurile SW5-SW2 (corespunzător biților 3->0 ai '''value''', în această ordine)
*Intrarea '''selection''' se va conecta la SW7-SW6 (corespunzător biților 1->0 ai '''selection''', în această ordine)
*Biții '''out_seg''' corespund cu segmentele în modul următor:
**Bitul 7 corespunde segmentului G
**Bitul 6 corespunde segmentului B
**Bitul 5 corespunde segmentului E
**Bitul 4 corespunde segmentului C
**Bitul 3 corespunde segmentului F
**Bitul 2 corespunde segmentului A
**Bitul 1 corespunde segmentului D
**Bitul 0 corespunde segmentului P
*Ieșirile se vor conecta la pinii corespunzători pentru afișajul cu 7 segmente.


[[Fișier:transcoder.png]]
[[Fișier:transcoder.png]]

Versiunea de la data 20 martie 2016 18:14

Noțiuni și cunoștințe necesare

Exemplul 1

Realizați un decodor de doi biți folosind un bloc case. Testați decodorul legând intrările la switch-uri și ieșirile la led-uri.

Exemplul 2

Realizați un transcodor pentru afișajul cu 7 segmente, folosind un bloc case, care să poată afișa valorile de la 0 la 3. Intrarea modulului se va numi value iar ieșirea out_seg.

Exerciții

Completați transcodorul de la exemplul 2 astfel încât să poată afișa valorile de la 0 la 15, în baza 16 (10 = A, 11 = b, 12 = C, 13 = d, 14 = E, 15 = F). Adăugați circuitului un decodor folosit pentru a selecta care din cele 4 cifre să afișeze valoarea selectată. Intrarea pentru selecția cifrei se va numi selection, iar ieșirea out_sel. Corespondența între selection și cele 4 cifre cu 7 segmente de pe placa Nexys 2 este conform regulii:

  • selection = 0 aprinde prima cifră din stânga spre dreapta
  • selection = 1 aprinde a doua cifră din stânga spre dreapta
  • selection = 2 aprinde a treia cifră din stânga spre dreapta
  • selection = 3 aprinde a patra cifră din stânga spre dreapta

Modulul top-level se va numi afisaj7seg.

Exercitiul 1

  • Intrarea value se va conecta la switchurile SW3-SW0 (corespunzător biților 3->0 ai value, în această ordine).
  • Intrarea selection se va conecta la SW7-SW6 (corespunzător biților 1->0 ai selection, în această ordine).
  • Biții out_seg corespund cu segmentele în modul următor:
    • Bitul 7 corespunde segmentului A
    • Bitul 6 corespunde segmentului B
    • Bitul 5 corespunde segmentului C
    • Bitul 4 corespunde segmentului D
    • Bitul 3 corespunde segmentului E
    • Bitul 2 corespunde segmentului F
    • Bitul 1 corespunde segmentului G
    • Bitul 0 corespunde segmentului P
  • Ieșirile se vor conecta la pinii corespunzători pentru afișajul cu 7 segmente.

Exercitiul 2

  • Intrarea value se va conecta la switchurile SW7-SW4 (corespunzător biților 3->0 ai value, în această ordine)
  • Intrarea selection se va conecta la SW1-SW0 (corespunzător biților 1->0 ai selection, în această ordine)
  • Biții out_seg corespund cu segmentele în modul următor:
    • Bitul 7 corespunde segmentului P
    • Bitul 6 corespunde segmentului A
    • Bitul 5 corespunde segmentului G
    • Bitul 4 corespunde segmentului D
    • Bitul 3 corespunde segmentului F
    • Bitul 2 corespunde segmentului B
    • Bitul 1 corespunde segmentului E
    • Bitul 0 corespunde segmentului C
  • Ieșirile se vor conecta la pinii corespunzători pentru afișajul cu 7 segmente.

Exercitiul 3

  • Intrarea value se va conecta la switchurile SW6-SW3 (corespunzător biților 3->0 ai value, în această ordine)
  • Intrarea selection se va conecta la SW2-SW1 (corespunzător biților 1->0 ai selection, în această ordine)
  • Biții out_seg corespund cu segmentele în modul următor:
    • Bitul 7 corespunde segmentului P
    • Bitul 6 corespunde segmentului G
    • Bitul 5 corespunde segmentului F
    • Bitul 4 corespunde segmentului E
    • Bitul 3 corespunde segmentului D
    • Bitul 2 corespunde segmentului C
    • Bitul 1 corespunde segmentului B
    • Bitul 0 corespunde segmentului A
  • Ieșirile se vor conecta la pinii corespunzători pentru afișajul cu 7 segmente.

Exercitiul 4

  • Intrarea value se va conecta la switchurile SW5-SW2 (corespunzător biților 3->0 ai value, în această ordine)
  • Intrarea selection se va conecta la SW7-SW6 (corespunzător biților 1->0 ai selection, în această ordine)
  • Biții out_seg corespund cu segmentele în modul următor:
    • Bitul 7 corespunde segmentului G
    • Bitul 6 corespunde segmentului B
    • Bitul 5 corespunde segmentului E
    • Bitul 4 corespunde segmentului C
    • Bitul 3 corespunde segmentului F
    • Bitul 2 corespunde segmentului A
    • Bitul 1 corespunde segmentului D
    • Bitul 0 corespunde segmentului P
  • Ieșirile se vor conecta la pinii corespunzători pentru afișajul cu 7 segmente.

Submiterea Exercițiilor

Pentru notare, se vor submite următoarele fișiere, către adresa de e-mail indicată de cadrul didactic și către adresa cid_lab_homework@dcae.pub.ro

O arhivă zip ce va conține:

  • Toate fișierele Verilog (cu extensia .v) care conțin descrierea circuitului de afișare pe 7 segmente
  • Un fișier de constrângeri, cu extensia .ucf
  • Un fișier de tip proiect Xilinx ISE, cu extensia .xise

Atenție, arhiva va conține doar fișiere (fără directoare).

Subiectul mesajului de e-mail trebuie să respecte formatul [Nume]_[Prenume]_[Grupa]_7seg.


Recomandări pentru cadrele didactice