Tutorial Xilinx ISim

De la WikiLabs

Orice simulare în Xilinx ISim începe cu un nou proiect, fie prin selectarea File->New Project, fie prin apăsarea butonului New Project de pe fereastra inițială:

Isim1.png

În fereastra care se deschide, sunteți invitați să completați numele proiectului, calea până la directorul în care vor fi salvate fișierele (pentru laborator, selectati /home/student/ise), precum și o scurtă descrie opțională. Apoi apăsați Next >:

Isim2.png

Următoarea fereastră conține un număr de setări ce au legătură cu modelul de FPGA folosit pentru sinteză. Aceste setări vor fi relevante pentru laborator. Acum, verificați doar că simulatorul ales este ISim, apoi dați click pe Next >:

Isim3.png

Va apărea o nouă fereastă cu un sumar al opțiunilor alese, după care, apăsând pe Finish, proiectul se va crea efectiv.

Următorul pas este să adăugăm fișiere la proiect. Acest lucru se realizează simplu, dând click-dreapta pe zona ierarhiei din stânga sus, acolo unde acum scrie Empty View și selectând New Source... din meniul contextual:

Isim4.png

În continuare vi se va cere tipul de sursă pe care doriți să o creați (selectați Verilog Module), numele fișierului (vom tasta Incrementer), și calea până la directorul în care se va salva (îl vom lăsa implicit). Apoi se dă click pe Next >:

Isim5.png

Vor mai apărea două ferestre în care se pot configura din interfață numărul și tipul porturilor modulului. Cum noi vom face asta manual, nu completați nimic și dați click pe Next >, iar apoi pe Finish.

În acest moment noua sursă este adăugată la proiect (și se vede în zona de ierarhie din stânga sus) iar fișierul este deschis automat pentru editare. Completați codul astfel încât să arate ca în figură:

Isim6.png

După salvarea fișierului sursă, în continuare trebuie să realizâm un modul de test. Pentru asta, vom repeta operația de adăugarea a unei noi surse (prin click-dreapta pe fereastra de ierarhie, unde acum exisă modulul Incrementer și click pe New Source...), doar că acum vom selecta tipul Verilog Test Fixture, iar numele fișierului va fi TestIncrementer:

Isim7.png

În continuare vi se va cere să selectați modulul pe care doriți să-l testați. În cazul nostru, avem o singură variantă: Incrementer, deci selectați-l și dați click pe Next >, apoi pe Finish:

Isim8.png

În acest moment vi se va deschide noul fișier pentru editare, prin urmare completați-l pentru a fi identic cu cel din figură:

Isim9.png

Cum Xilinx ISE este în principal un software de sinteză, pentru a realiza o simulare trebuie sa trecem din modul Implementation în modul Simulation. Acest lucru se realizează prin selectarea butonului radio corespunzator de deasupra ferestrei de ierarhie din stanga sus. În acest moment se vede că în fereastra de ierarhie apare și modulul de test, care până acum lipsea. Pentru a putea declanșa simularea circuitului, trebuie selectat modului de test din fereastra ierarhiei, din stanga sus, apoi se expandează meniul ISim Simulator din fereastra de procese, de sub cea de ierarhie, apoi se dă dublu-click pe Simulate Behavioral Model:

Isim10.png

În acest moment pornește aplicația Xilinx ISim, care rulează automat simularea, și se oprește în dreptul liniei cu $stop. Pentru a putea vizualiza formele de undă, selectați tabul numit Default.wcfg de lângă cel care conține codul sursă:

Isim11.png

Formele de undă pot fi mărite sau micșorate pentru a putea încăpea pe ecran, folosind uneltele de tip lupă, fereastra cu forme de undă poate fi detașată pentru o vizualizare mai clară, iar valorile se pot afișa în baza 2, 10 sau 16, în funcție de aplicația dorită, prin selectarea opțiunii corespunzătoare din meniul Radix:

Isim12.png