ПОРТ/Август 2020 — разлика између измена

Извор: SI Wiki
Пређи на навигацију Пређи на претрагу
м (Ispravka)
ознака: visualeditor-wikitext
м (Napomena za drugi termin i ispravke)
ознака: visualeditor-wikitext
Ред 14: Ред 14:
# '''[4 poena]''' Potrebno je realizovati jednorazredni komparator sa ulazima <code>A</code>, <code>B</code>, <code>G<sub>i-1</sub></code>, <code>E<sub>i-1</sub></code> i <code>L<sub>i-1</sub></code> i izlazima <code>G</code>, <code>E</code> i <code>L</code>.
# '''[4 poena]''' Potrebno je realizovati jednorazredni komparator sa ulazima <code>A</code>, <code>B</code>, <code>G<sub>i-1</sub></code>, <code>E<sub>i-1</sub></code> i <code>L<sub>i-1</sub></code> i izlazima <code>G</code>, <code>E</code> i <code>L</code>.
# '''[3 poena]''' Potrebno je realizovati petorazredni komparator sa ulazima <code>A</code> i <code>B</code> i izlazima <code>G</code>, <code>E</code> i <code>L</code> koristeći jednorazredni komparator iz prethodne stavke.
# '''[3 poena]''' Potrebno je realizovati petorazredni komparator sa ulazima <code>A</code> i <code>B</code> i izlazima <code>G</code>, <code>E</code> i <code>L</code> koristeći jednorazredni komparator iz prethodne stavke.
# '''[4 poena]''' Realizovati jednorazredni sabirač sa ulazima <code>A</code>, <code>B</code> i <code>C<sub>i</sub></code> i izlazima <code>F</code> i <code>F<sub>i+1</sub></code>.
# '''[4 poena]''' Realizovati jednorazredni sabirač sa ulazima <code>A</code>, <code>B</code> i <code>C<sub>i</sub></code> i izlazima <code>F</code> i <code>C<sub>i+1</sub></code>.
# '''[3 poena]''' Realizovati petorazredni sabirač koristeći jednorazredni sabirač iz prethodne stavke.
# '''[3 poena]''' Realizovati petorazredni sabirač koristeći jednorazredni sabirač iz prethodne stavke.
# '''[3 poena]''' Realizovati sekvencijalnu mrežu ''FallingEdge'' Murovog tipa koristeći JK flip-flop.
# '''[3 poena]''' Realizovati sekvencijalnu mrežu ''FallingEdge'' Murovog tipa koristeći JK flip-flop.
#* U drugom terminu ispita koristio se RS flip-flop umesto JK flip-flopa.
# '''[6 poena]''' Realizovati jednorazredni registar preko JK flip-flopa sa mogućnostima inkrementiranja, dekrementiranja i brisanja. Obezbediti da najviši prioritet ima signal <code>CL</code>, pa <code>DEC</code>, pa <code>INC</code>.
# '''[6 poena]''' Realizovati jednorazredni registar preko JK flip-flopa sa mogućnostima inkrementiranja, dekrementiranja i brisanja. Obezbediti da najviši prioritet ima signal <code>CL</code>, pa <code>DEC</code>, pa <code>INC</code>.
# '''[2 poena]''' Realizovati trorazredni registar preko jednorazrednog registra iz prošle stavke sa istim operacijama i prioritetom.
# '''[2 poena]''' Realizovati trorazredni registar preko jednorazrednog registra iz prošle stavke sa istim operacijama i prioritetom.


== 2. zadatak ==
== 2. zadatak ==
Nije bila data postavka projekta i komponente su se pravile i testirale na proizvoljnim šemama.
Nije bila data postavka projekta i komponente su se pravile i testirale na proizvoljnim šemama. Bio je dat modul za prikazivanje brojeva na sedmosegmentnom ekranu.
# '''[3 poena]''' Realizovati sekvencijalnu mrežu koja broji po kružnoj sekvenci 1-2-3-4-5-6-7-1 kada je ulazni signal <code>C</code> aktivan i zadržava stanje kada ulazni signal nije aktivan.
# '''[3 poena]''' Realizovati sekvencijalnu mrežu koja broji po kružnoj sekvenci 1-2-3-4-5-6-7-1 kada je ulazni signal <code>C</code> aktivan i zadržava stanje kada ulazni signal nije aktivan.
# '''[5 poena]''' Napraviti sekvencijalnu mrežu za jačinu ringle (od 0 do 7) sa ulazima <code>INC</code> koji povećava jačinu ringle kada je aktivan, <code>DEC</code> koji smanjuje jačinu ringle kada je aktivan, <code>CL</code> koji jačinu ringle postavlja na 0 kada je aktivan, <code>EN</code> koji ne dozvoljava da signali <code>INC</code>, <code>DEC</code> i <code>CL</code> imaju efekta na jačinu ringle ukoliko nije aktivan i <code>CLK</code> kao signal takta, i izlaznim signalom koji je svakih 7 taktova aktivan u onoliko taktova kolika je zadata jačina ringle a neaktivan u ostalim. Obezbediti da se jačina ne menja ukoliko se pokuša povećati preko 7 ili smanjiti ispod 0.
# '''[5 poena]''' Napraviti sekvencijalnu mrežu za jačinu ringle (od 0 do 7) sa ulazima <code>INC</code> koji povećava jačinu ringle kada je aktivan, <code>DEC</code> koji smanjuje jačinu ringle kada je aktivan, <code>CL</code> koji jačinu ringle postavlja na 0 kada je aktivan, <code>EN</code> koji ne dozvoljava da signali <code>INC</code>, <code>DEC</code> i <code>CL</code> imaju efekta na jačinu ringle ukoliko nije aktivan i <code>CLK</code> kao signal takta, i izlaznim signalom koji je svakih 7 taktova aktivan u onoliko taktova kolika je zadata jačina ringle a neaktivan u ostalim. Obezbediti da se jačina ne menja ukoliko se pokuša povećati preko 7 ili smanjiti ispod 0. Prikazati funkcionisanje mreže tako što se ulaz <code>EN</code> poveže na jedan od <code>SW</code> pinova, <code>INC</code>, <code>DEC</code> i <code>CL</code> na dugmiće i izlaz na LED diodu.
# '''[3 poena]''' Napraviti sekvencijalnu mrežu za kontrolisanje četiri ringle sa ulaznim signalima <code>INC</code>, <code>DEC</code> i <code>CL</code> koji se koriste na isti način kao u prethodnoj stavci kao i <code>SW<sub>3..0</sub></code> koji se koristi za kontrolisanje kojima se od četiri ringle menja jačina. Izlaz mreže jesu segmenti četiri sedmosegmentna ekrana tako da za veću jačinu određene ringle jače svetli broj 0 na određenom sedmosegmentnom ekranu.
# '''[3 poena]''' Napraviti sekvencijalnu mrežu za kontrolisanje četiri ringle sa ulaznim signalima <code>INC</code>, <code>DEC</code> i <code>CL</code> koji se koriste na isti način kao u prethodnoj stavci kao i <code>SW<sub>3..0</sub></code> koji se koristi za kontrolisanje kojima se od četiri ringle menja jačina. Izlaz mreže jesu segmenti četiri sedmosegmentna ekrana tako da za veću jačinu određene ringle jače svetli broj 0 na određenom sedmosegmentnom ekranu.
# '''[4 poena]''' Realizovati uređaj iz teksta zadatka.
# '''[4 poena]''' Realizovati uređaj iz teksta zadatka.

Верзија на датум 29. август 2020. у 15:40

Postavka

Napomena: Određeni delovi postavke su ostavljeni umetničkoj interpretaciji prepisivača i nisu se nužno nalazili u ispitnom zadatku.

Saradnici na Praktikumu iz osnova računarske tehnike skupili su se kod Danka da igraju tablić. Posle par mentalno iscrpljujućih partija tablića su ogladneli i rešili da naprave palačinke. Ali avaj! Upravljačka jedinica za Dankov šporet, koja se igrom slučaja pokretala na Altera Cyclone FPGA pločici, se pokvarila. Na svu sreću, Danko je i dalje kod sebe imao FPGA pločicu koju je poneo sa junskog ispitnog roka iz PORT-a i koju je herojski sačuvao od munja na putu do kuće tako da je još uvek bilo nade da se šporet popravi, a saradnici zaslade posle tablića i zatim odu u kladionicu na rulet.

Zadatak je napraviti uređaj za simuliranje ringli, tako da se ringle prikazuju kao broj 0 sa zadatom jačinom od 0 do 7. Date su kontrole:

  • BTN0 za povećavanje jačine ringle,
  • BTN1 za smanjivanje jačine ringle,
  • BTN2 za isključivanje svih ringli, i
  • SW3..0 za određivanje kojim ringlama se jačina povećava ili smanjuje.

Ukoliko su sve ringle uključene, uređaj treba da isključi sve ringle i ne dozvoljava upravljanje njima dok se ne pritisne dugme BTN2.

1. zadatak

Bila je data glavna šema, šeme za popunjavanje komponenti i testovi komponenti koji bi trebalo da pale LED diode na glavnoj šemi kada određena komponenta krene da radi kao očekivano. Svi testovi su radili.

  1. [4 poena] Potrebno je realizovati jednorazredni komparator sa ulazima A, B, Gi-1, Ei-1 i Li-1 i izlazima G, E i L.
  2. [3 poena] Potrebno je realizovati petorazredni komparator sa ulazima A i B i izlazima G, E i L koristeći jednorazredni komparator iz prethodne stavke.
  3. [4 poena] Realizovati jednorazredni sabirač sa ulazima A, B i Ci i izlazima F i Ci+1.
  4. [3 poena] Realizovati petorazredni sabirač koristeći jednorazredni sabirač iz prethodne stavke.
  5. [3 poena] Realizovati sekvencijalnu mrežu FallingEdge Murovog tipa koristeći JK flip-flop.
    • U drugom terminu ispita koristio se RS flip-flop umesto JK flip-flopa.
  6. [6 poena] Realizovati jednorazredni registar preko JK flip-flopa sa mogućnostima inkrementiranja, dekrementiranja i brisanja. Obezbediti da najviši prioritet ima signal CL, pa DEC, pa INC.
  7. [2 poena] Realizovati trorazredni registar preko jednorazrednog registra iz prošle stavke sa istim operacijama i prioritetom.

2. zadatak

Nije bila data postavka projekta i komponente su se pravile i testirale na proizvoljnim šemama. Bio je dat modul za prikazivanje brojeva na sedmosegmentnom ekranu.

  1. [3 poena] Realizovati sekvencijalnu mrežu koja broji po kružnoj sekvenci 1-2-3-4-5-6-7-1 kada je ulazni signal C aktivan i zadržava stanje kada ulazni signal nije aktivan.
  2. [5 poena] Napraviti sekvencijalnu mrežu za jačinu ringle (od 0 do 7) sa ulazima INC koji povećava jačinu ringle kada je aktivan, DEC koji smanjuje jačinu ringle kada je aktivan, CL koji jačinu ringle postavlja na 0 kada je aktivan, EN koji ne dozvoljava da signali INC, DEC i CL imaju efekta na jačinu ringle ukoliko nije aktivan i CLK kao signal takta, i izlaznim signalom koji je svakih 7 taktova aktivan u onoliko taktova kolika je zadata jačina ringle a neaktivan u ostalim. Obezbediti da se jačina ne menja ukoliko se pokuša povećati preko 7 ili smanjiti ispod 0. Prikazati funkcionisanje mreže tako što se ulaz EN poveže na jedan od SW pinova, INC, DEC i CL na dugmiće i izlaz na LED diodu.
  3. [3 poena] Napraviti sekvencijalnu mrežu za kontrolisanje četiri ringle sa ulaznim signalima INC, DEC i CL koji se koriste na isti način kao u prethodnoj stavci kao i SW3..0 koji se koristi za kontrolisanje kojima se od četiri ringle menja jačina. Izlaz mreže jesu segmenti četiri sedmosegmentna ekrana tako da za veću jačinu određene ringle jače svetli broj 0 na određenom sedmosegmentnom ekranu.
  4. [4 poena] Realizovati uređaj iz teksta zadatka.