Diferență între revizuiri ale paginii „Proiect 2”

De la WikiLabs
Jump to navigationJump to search
 
(Nu s-au afișat 37 de versiuni intermediare efectuate de același utilizator)
Linia 9: Linia 9:
 
== Regulile proiectului ==
 
== Regulile proiectului ==
  
Proiectul se desfășoară sub forma unui joc, având următoarele reguli:
+
# Studenții vor forma echipe de maxim 5 persoane, care vor colabora pentru implementarea temei de proiect.
 +
# 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.
 +
# 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.
  
# Fiecare grupă reprezintă un jucator, și simulează o companie start-up, ai cărei co-fondatori sunt studenții ce fac parte din grupă
+
== Descrierea Temei de Proiectare ==
# Jucatorii vor proiecta și implementa un produs electronic, după o specificație funcțională dată. Specificația produsului va fi livrată către toți jucătorii simultan, la sfârșitul săptămânii 2.
+
Se va proiecta și dezvolta o consolă de jocuri, ce va avea următoarele caracteristici:
# Jucătorii concurează pe o piață virtuală pentru obținerea de puncte. Jucatorii pot castiga puncte prin urmatoarele activitati:
 
## Prezentarea unui produs ce îndeplinește cerințele funcționale date: 125 de puncte
 
## Avantajul primului venit: începând de la apariția pe piață a primului produs funcțional, 25 de puncte se distribuie în mod egal, la sfârșitul fiecărei săptămâni, între jucatorii care au un produs funcțional
 
## Inovare dincolo de tema originală: pentru fiecare funcționalitate implementată în plus față de tema inițială de proiectare, jucătorul primește până la 25 de puncte. Caracterul de inovare presupune ca jucatorul să fie primul care propune respectiva soluție. Cantitatea exactă de puncte obținute va fi determinat de cadrul didactic, și este o funcție a complexității inovației
 
# La sfârșitul jocului (semestrului), punctele acumulate de o grupă se distribuie în cadrul grupei. Nu se impun criterii pentru distribuire. Se încurajează distribuirea punctelor conform contribuției la activitățile de proiectare și dezvoltare. Un reprezentant al grupei va comunica o listă de puncte ce revin fiecărui student din grupă, în limita a 10 puncte per student. Numărul de puncte reprezinta nota finala a studentului la materia Proiect 2
 
  
 +
*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
  
== Descrierea temei de proiectare ==
+
[http://wiki.dcae.pub.ro/images/5/54/Proiect2SnakePRD.pdf Cerințe de proiectare]
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).
+
 
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.
+
[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.  
  
=== Lista temelor ===
 
* [[Proiect: Soft Square|Anul universitar 2011-2012]]
 
* [[Proiect: Billboard Particles Emitter|Anul universitar 2012-2013]]
 
  
 
== Activitatea de proiectare ==
 
== Activitatea de proiectare ==
Linia 76: 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]] 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 92: 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 97: 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