Last modified: 2017-11-08 09:38:51

Tunnitöö

  • Tutvuda programmeerimiskeskonnaga ZamiaCad
  • Simuleerida multipleksori programmi testpingiga
  • Lisada multipleksori koodi andmevoo -ja struktuursekirjeldusstiiliga koodid
  • Simuleerida saadud tulemus ning veenduda, et tulemus ei sõltu kirjeldusstiilist
  • 6. praktikumitunniks moodustada meeskonnad ning registreerida viimase ülesande lahendamiseks!

VHDLi ülesanne- 4-to-1 multipleksor 5 bitilistele sisendandmetele

  • Programmeerida VHDL keeles  multipleksor ning testpink. Aluseks võta tunnis tehtud multipleksori lahendus.
  • Multipleksori kõik sisendid on 5-bitilised, arvesta sellega!
  • Joonisel 1 on kirjeldatud lahenduse põhimõtteskeem. D0 – D3 on 5-bitilised, a ning b 1-bitilised.
  • Multipleksor tuleb programmeerida kasutades käitumuslikku-, andmevoo- ning struktuursetkirjeldustiili. Lõpplahenduses peab testimise lainegraafikul olema kõigi erinevate stiilide tulemused korraga nähtavad = kõik kolm stiili ühel lainegraafikul (näidis testpink erinevate kirjelduste ühendamiseks).
  • Erinevad kirjeldusviisid võivad olla nii ühes arhitektuuris kui ka tehtud eraldi.
  • Testpingis peab olema kaks andemete komplekti ning läbi käidud kõik valikute signaalide väärtused.
  • Simuleeri tulemus ning veendu ülesande töö korrektsuses.
  • Kaitse praktikumitunnis oma tehtud tööd suuliselt.
  • Tööl on tähtaeg – uuri “Praktikumide kord” menüüst.
  • Koosta ning esita aruanne, milles selgitad tehtud tööd ning kirjeldad saadud tulemusi. Aruanne peab sisaldama väljavõtet tulemustest lainekujuna (ekraanitõmmis waveformist) ning olema põhjalik. Aruandes esita ainult olulised ja kommenteeritud koodilõigud.
  • Võimalike küsimuste korral kirjuta keijo[at]ati.ttu.ee

Joonis 1. 4-to-1-mux

Soovitused ülesande lahendamiseks

  • Simuleeri uuesti oma arvutil multipleksori näidet, mõista koodi ning võimalusel lisa/muuda signaale, koodi jne.
  • Koodimist alusta olemi (entity) paikapanemisega ning komponentide vaheliste seoste loomisega. Funktsionaalset koodi saad hiljem ka kirjutada.
  • Alusta andmevoo- või struktuursest kirjeldusstiilist ning jäta käitumuslik kirjeldusstiil viimaseks.
  • Ehk on lihtsam, kui teed esialgu kõik kolm erinevat kirjeldusstiili eraldi valmis ning veendud nende korrektses töös.
  • Uuri SEDA testpingi näidet, et saaksid panna kõik kolm kirjeldusstiili ühe testpingiga käima.
  • Uuri eelmises praktikumis tehtud näidet

Programmeerimiskeel VHDL

Praktikumide 3 ja 4 sooritamiseks on vaja programmerida VHDL keeles. Keele jaoks on mitmeid erinevaid programmeerimiskeskkondi, nii tasulisi kui ka tasuta. Meie kasutame tasuta keskkonda Eclipse koos ZamiaCad laiendusega. Kolledži arvutitesse on vastav tarkvarapakett juba paigaldatud. Kodus kasutamiseks leiab järgnevatelt linkidelt piisavalt informatsiooni keskkonna seadmistamiseks.

Tabel 1. VHDL simulaatorid.
# Programm Kasutusjuhend Kommentaar
1 Eclise + ZamiaCad Meie tehtud! – Originaal! Lihtne VHDLi simulaator; tasuta
2 ModelSim Saadav siit! Võimas tarkvarapakett VHDLi simuleerimiseks; tudengiversioon on tasuta; vajab 2x registreerimist litsenseerimiseks
3 Xilinx ISE Saadav siit! Mahukas VHDLi simulaator/FPGA süntesaator; tasuta; vajab registreerimist litsenseerimiseks

VHDL keele paremaks omandamiseks on kohustuslik osaleda loengutel. Lisamaterjali VHDLi kohta ning koodinäiteid on võimalik leida veebist otsides, kasutades märksõna VHDL. Tabelis 2 on nii meie poolt loodud kui ka veebis saadavad VHDLi õpikud. Lisaks leiab kasulikke VHDLi õppematerjale ka Youtube keskkonnast.