Proiect 2: Diferență între versiuni

De la WikiLabs
Jump to navigationJump to search
Fără descriere a modificării
 
(Nu s-au afișat 41 de versiuni intermediare efectuate de alți 3 utilizatori)
Linia 1: Linia 1:
'''Proiect 2''' reprezintă disciplina care propune studenților desfăşurarea unei activități de proiectare pentru a realiza implementarea unui sistem digital specific unei aplicații date pe un circuit configurabil FPGA.
'''Proiect 2''' reprezintă disciplina care propune studenților desfăşurarea unei activități de proiectare și implementare a unui sistem digital specific unei aplicații date, pe un circuit configurabil FPGA.


== Scopul activității de proiect ==
== Scopul activității de proiect ==
Activitatea de proiect are ca scop crearea unui cadru organizat, susținut de un îndrumător didactic, în care studenții să aplice cunoştințele dobândite anterior în cadrul cursului "Circuite Integrate Digitale" şi în cadrul laboratorului asociat acestuia pentru a lua decizii raționale asupra diferitelor aspecte ținând de activitatea de proiectare a unui circuit digital ce implementează o funcționalitate specificată.
Activitatea de proiect are ca scop crearea unui cadru organizat, susținut de un îndrumător didactic, în care studenții să aplice cunoştințele dobândite anterior în cadrul cursului "Circuite Integrate Digitale" şi în cadrul laboratorului asociat acestuia pentru a lua decizii raționale asupra diferitelor aspecte ținând de activitatea de proiectare a unui circuit digital ce implementează o funcționalitate specificată. Proiectul dorește să stimuleze următoarele trăsături ale studentilor:
* Gândirea creativă, pentru găsirea de soluții tehnice la probleme specificate din punct de vedere funcțional
* Lucrul în echipă și spiritul organizatoric
* Spiritul antreprenorial și competitivitatea


== Regulile proiectului ==


== Descrierea temei de proiectare ==
# Studenții vor forma echipe de maxim 5 persoane, care vor colabora pentru implementarea temei de proiect.
Temele propuse în cadrul disciplinei Proiect 2 vizează implementarea pe un circuit configurabil FPGA a unui sistem digital specific şi a controller-elor specializate (e.g. keyboard controller, video display controller) care realizează interfațarea acestuia cu dispozitive periferice de intrare (tastatură, mouse) şi cu dispozitive periferice de ieşire (monitor).
# Fiecare echipă va numi un reprezentant, dintre membrii săi, care va fi responsabil cu anumite sarcini organizatorice și de comunicare între echipă și cadrul didactic.
Sistemul digital specific propus pentru temele de proiectare se încadrează în domeniul emulării/simulării proceselor fizice şi a mediului fizic. Alegerea implementării funcționalității date, sub forma unui sistem digital specific sau a unui procesor de complexitate scăzută, este realizată de îndrumătorul didactic, acesta sugerând şi o arhitectură corespunzătoare.
# Tema de proiect va fi divizată de către cadrul didactic în sarcini, ce vor fi prezentate membrilor echipei la fiecare întâlnire de proiect. Astfel, fiecare membru al echipei va realiza minim o sarcină în intervalul dintre două întâlniri de proiect. Alocarea sarcinilor către fiecare coechipier se realizează de către membrii echipei prin consens.
# Membrii echipei vor submite rezolvările sarcinilor alocate printr-un sistem de versionare a codului. Reprezentantul echipei are responsabilitatea de a organiza sistemul de versionare conform indicațiilor cadrului didactic.
# Membrii echipei vor fi notati pentru codul submis înainte de termenul limită (următoarea întâlnire de proiect).  
## Dacă sarcina alocată nu este îndeplinită până la expirarea termenului limită, atunci sarcina poate fi realocată unui alt membru al echipei.
## Dacă a realizat și submis codul aferent sarcinii alocate, un membru al echipei poate cere alocarea unei sarcini suplimentare din lista de sarcini în așteptare
## Îndeplinirea sarcinii va fi demonstrată prin submiterea unui modul de test împreună cu fiecare bloc funcțional implementat.


=== Lista temelor ===
== Descrierea Temei de Proiectare ==
* [[Proiect: Soft Square|Anul universitar 2011-2012]]
Se va proiecta și dezvolta o consolă de jocuri, ce va avea următoarele caracteristici:
 
*Jocuri ce vor fi implementate: Snake
*Control de la tastatură PS2 (tastatura va fi conectată la placa Nexys2)
*Afisare grafică prin VGA la rezoluția 800x600 (monitorul va fi conectat la placa Nexys2)
*Tabela de scor (folosind afișajul cu 7 segmente de pe placa Nexys2) ce va indica punctele acumulate și nivelul atins
 
[http://wiki.dcae.pub.ro/images/5/54/Proiect2SnakePRD.pdf Cerințe de proiectare]
 
[http://wiki.dcae.pub.ro/images/1/17/Proiect2SnakeArchitecture.pdf Arhitectura Impusă]
 
== [https://docs.google.com/spreadsheets/d/1p8w0kvnU5Es7UJkdlR8HiP32HaWOA5qvm81B-jnQWx8 Status] ==
 
== Resurse Utile ==
 
[http://www.digilentinc.com/data/products/nexys2/nexys2_rm.pdf Manual Nexys 2]
 
[http://tinyvga.com/vga-timing/800x600@72Hz Parametri VGA 800x600@72Hz]
 
[http://www.asic-world.com/verilog/veritut.html Tutorial Verilog]
 
[https://try.github.io Tutorial Git]
 
<!--
== Accesul în laborator ==
Laboratorul A410 este disponibil conform [http://dcae.pub.ro/orar_410.html orarului]. Pentru intervalele orare în care nu se desfășoară laboratoare CID, se pot face programări pentru a lucra în laborator. În mod obișnuit 1-2 posturi de lucru sunt disponibile în timpul fiecărui laborator CID, și pot fi folosite de studenți de la Proiect 2, cu acordul cadrului didactic prezent în laborator.




Linia 61: Linia 95:


== Domeniul de aplicație ==
== Domeniul de aplicație ==
=== Controllere video şi Unități de Procesare Grafică ===
=== Fizică (elemente de teorie) şi Unități de Procesare Fizică === 


== Componente hardware ==
== Componente hardware ==


=== Placa de dezvoltare ===
=== Placa de dezvoltare ===
Placa de dezvoltare pusă la dispoziția studenților pentru verificarea implementării şi pentru prezentarea finală a proiectului este Nexys 2 ([[FPGA Spartan3E]]) produsă de [http://www.digilent.ro Digilent].
Placa de dezvoltare pusă la dispoziția studenților pentru verificarea implementării şi pentru prezentarea finală a proiectului este [[Nexys 2]] produsă de Digilent. Manual de utilizare: [http://www.digilentinc.com/Data/Products/NEXYS2/Nexys2_rm.pdf].


=== Tastatura PS/2 ===
=== Tastatura PS/2 ===
Linia 77: Linia 106:
=== Dispozitiv VGA ===
=== Dispozitiv VGA ===
Dispozitivul periferic de intrare impus de cerințele proiectului este un monitor LCD conectat la placa de dezvoltare prin intermediul portului VGA.
Dispozitivul periferic de intrare impus de cerințele proiectului este un monitor LCD conectat la placa de dezvoltare prin intermediul portului VGA.


== Referințe ==
== Referințe ==
Linia 82: Linia 113:


2. Xilinx Inc.: [http://www.xilinx.com/support/documentation/sw_manuals/xilinx13_1/xst.pdf XST User Guide for Virtex-4, Virtex-5, Spartan-3, and Newer CPLD Devices]
2. Xilinx Inc.: [http://www.xilinx.com/support/documentation/sw_manuals/xilinx13_1/xst.pdf XST User Guide for Virtex-4, Virtex-5, Spartan-3, and Newer CPLD Devices]
-->

Versiunea curentă din 28 aprilie 2015 07:14

Proiect 2 reprezintă disciplina care propune studenților desfăşurarea unei activități de proiectare și implementare a unui sistem digital specific unei aplicații date, pe un circuit configurabil FPGA.

Scopul activității de proiect

Activitatea de proiect are ca scop crearea unui cadru organizat, susținut de un îndrumător didactic, în care studenții să aplice cunoştințele dobândite anterior în cadrul cursului "Circuite Integrate Digitale" şi în cadrul laboratorului asociat acestuia pentru a lua decizii raționale asupra diferitelor aspecte ținând de activitatea de proiectare a unui circuit digital ce implementează o funcționalitate specificată. Proiectul dorește să stimuleze următoarele trăsături ale studentilor:

  • Gândirea creativă, pentru găsirea de soluții tehnice la probleme specificate din punct de vedere funcțional
  • Lucrul în echipă și spiritul organizatoric
  • Spiritul antreprenorial și competitivitatea

Regulile proiectului

  1. Studenții vor forma echipe de maxim 5 persoane, care vor colabora pentru implementarea temei de proiect.
  2. Fiecare echipă va numi un reprezentant, dintre membrii săi, care va fi responsabil cu anumite sarcini organizatorice și de comunicare între echipă și cadrul didactic.
  3. Tema de proiect va fi divizată de către cadrul didactic în sarcini, ce vor fi prezentate membrilor echipei la fiecare întâlnire de proiect. Astfel, fiecare membru al echipei va realiza minim o sarcină în intervalul dintre două întâlniri de proiect. Alocarea sarcinilor către fiecare coechipier se realizează de către membrii echipei prin consens.
  4. Membrii echipei vor submite rezolvările sarcinilor alocate printr-un sistem de versionare a codului. Reprezentantul echipei are responsabilitatea de a organiza sistemul de versionare conform indicațiilor cadrului didactic.
  5. Membrii echipei vor fi notati pentru codul submis înainte de termenul limită (următoarea întâlnire de proiect).
    1. Dacă sarcina alocată nu este îndeplinită până la expirarea termenului limită, atunci sarcina poate fi realocată unui alt membru al echipei.
    2. Dacă a realizat și submis codul aferent sarcinii alocate, un membru al echipei poate cere alocarea unei sarcini suplimentare din lista de sarcini în așteptare
    3. Îndeplinirea sarcinii va fi demonstrată prin submiterea unui modul de test împreună cu fiecare bloc funcțional implementat.

Descrierea Temei de Proiectare

Se va proiecta și dezvolta o consolă de jocuri, ce va avea următoarele caracteristici:

  • Jocuri ce vor fi implementate: Snake
  • Control de la tastatură PS2 (tastatura va fi conectată la placa Nexys2)
  • Afisare grafică prin VGA la rezoluția 800x600 (monitorul va fi conectat la placa Nexys2)
  • Tabela de scor (folosind afișajul cu 7 segmente de pe placa Nexys2) ce va indica punctele acumulate și nivelul atins

Cerințe de proiectare

Arhitectura Impusă

Status

Resurse Utile

Manual Nexys 2

Parametri VGA 800x600@72Hz

Tutorial Verilog

Tutorial Git