Differences

This shows you the differences between two versions of the page.

Link to this comparison view

ac-is:tutoriale:5-ise-programare [2021/09/20 18:36]
127.0.0.1 external edit
ac-is:tutoriale:5-ise-programare [2021/10/03 14:17] (current)
eduard.ciurezu
Line 1: Line 1:
-= Programarea FPGA-ului folosind Xilinx ISE =+====== Programarea FPGA-ului folosind Xilinx ISE ======
  
 +/*
 <note tip> <note tip>
 Tutorialul este disponibil și sub formă de slideshow apăsând pe imaginea de mai jos. Tutorialul este disponibil și sub formă de slideshow apăsând pe imaginea de mai jos.
Line 6: Line 7:
 {{gallery>​.:​5-ise-programare?​lightbox&​0&​~1}} {{gallery>​.:​5-ise-programare?​lightbox&​0&​~1}}
 </​note>​ </​note>​
 +*/
  
   * Treceți în modul implementare apasând butonul //​Implementation//​.   * Treceți în modul implementare apasând butonul //​Implementation//​.
 +
 {{ .:​5-ise-programare:​01.jpg?​direct&​400 |}} {{ .:​5-ise-programare:​01.jpg?​direct&​400 |}}
 +
   * Selectați modulul **top-level** din ierarhia proiectului și rulați procesul //Generate Programming File//, aflat în lista de procese, pentru a genera fișierul necesar programării FPGA-ului. Trebuie să aveți definit un fișier de constrângeri care să facă legătura între porturile modulului top-level și pinii FPGA-ului. Urmăriți [[.:​4-ise-constraints | tutorialul de asignare a pinilor de IO]] pentru a genera acest fișier dacă el nu a fost creat deja.   * Selectați modulul **top-level** din ierarhia proiectului și rulați procesul //Generate Programming File//, aflat în lista de procese, pentru a genera fișierul necesar programării FPGA-ului. Trebuie să aveți definit un fișier de constrângeri care să facă legătura între porturile modulului top-level și pinii FPGA-ului. Urmăriți [[.:​4-ise-constraints | tutorialul de asignare a pinilor de IO]] pentru a genera acest fișier dacă el nu a fost creat deja.
 +
 {{ .:​5-ise-programare:​02.jpg?​direct&​400 |}} {{ .:​5-ise-programare:​02.jpg?​direct&​400 |}}
 +
   * Rulați procesul //Manage Configuration Project (iMPACT)//, aflat în lista de procese sub nodul //Configure Target Device//, pentru a porni aplicația de programare a FPGA-ului.   * Rulați procesul //Manage Configuration Project (iMPACT)//, aflat în lista de procese sub nodul //Configure Target Device//, pentru a porni aplicația de programare a FPGA-ului.
 +
 {{ .:​5-ise-programare:​03.jpg?​direct&​400 |}} {{ .:​5-ise-programare:​03.jpg?​direct&​400 |}}
 +
   * Deschideți fereastra //Boundary Scan// prin //​dublu-click//​.   * Deschideți fereastra //Boundary Scan// prin //​dublu-click//​.
 +
 {{ .:​5-ise-programare:​04.jpg?​direct&​400 |}} {{ .:​5-ise-programare:​04.jpg?​direct&​400 |}}
 +
   * Faceți //​click-dreapta//​ în fereastra deschisă și selectați opțiunea //​Initialize Chain// pentru a iniția conexiunea cu placa de dezvoltare.   * Faceți //​click-dreapta//​ în fereastra deschisă și selectați opțiunea //​Initialize Chain// pentru a iniția conexiunea cu placa de dezvoltare.
 +
 {{ .:​5-ise-programare:​05.jpg?​direct&​400 |}} {{ .:​5-ise-programare:​05.jpg?​direct&​400 |}}
 +
   * Veți fi întrebați dacă doriți să selectați fișierele de configurare pentru chip-urile de pe placă (printre care de află și FPGA-ul). Apăsați butonul //Yes//.   * Veți fi întrebați dacă doriți să selectați fișierele de configurare pentru chip-urile de pe placă (printre care de află și FPGA-ul). Apăsați butonul //Yes//.
 +
 {{ .:​5-ise-programare:​06.jpg?​direct&​400 |}} {{ .:​5-ise-programare:​06.jpg?​direct&​400 |}}
 +
   * Primul fișier de configurare este cel pentru chip-ul FPGA. Din directorul proiectului selectați fișierul de programare (extensia .bit) generat anterior.   * Primul fișier de configurare este cel pentru chip-ul FPGA. Din directorul proiectului selectați fișierul de programare (extensia .bit) generat anterior.
 +
 {{ .:​5-ise-programare:​07.jpg?​direct&​400 |}} {{ .:​5-ise-programare:​07.jpg?​direct&​400 |}}
 +
   * Veți fi intrebați dacă doriți să atașati o memorie PROM la FPGA folosind SPI sau BPI. Apăsați butonul //No//.   * Veți fi intrebați dacă doriți să atașati o memorie PROM la FPGA folosind SPI sau BPI. Apăsați butonul //No//.
 +
 {{ .:​5-ise-programare:​08.jpg?​direct&​400 |}} {{ .:​5-ise-programare:​08.jpg?​direct&​400 |}}
 +
   * Al doilea fișier de configurare este pentru memoria PROM. Apăsați butonul //Bypass// deoarece nu dorim modificarea acestei memorii.   * Al doilea fișier de configurare este pentru memoria PROM. Apăsați butonul //Bypass// deoarece nu dorim modificarea acestei memorii.
 +
 {{ .:​5-ise-programare:​09.jpg?​direct&​400 |}} {{ .:​5-ise-programare:​09.jpg?​direct&​400 |}}
 +
   * Al treilea fișier de configurare este pentru chip-ul CPLD. Apăsați butonul //Bypass// deoarece nu dorim configurarea acestui chip.   * Al treilea fișier de configurare este pentru chip-ul CPLD. Apăsați butonul //Bypass// deoarece nu dorim configurarea acestui chip.
 +
 {{ .:​5-ise-programare:​10.jpg?​direct&​400 |}} {{ .:​5-ise-programare:​10.jpg?​direct&​400 |}}
 +
   * Ultima fereastră ne permite modificarea unor opțiuni ale procesului de programare pentru cele trei chip-uri. Apăsați butonul //Ok// deoarece nu este necesară modificarea opțiunilor selectate implicit.   * Ultima fereastră ne permite modificarea unor opțiuni ale procesului de programare pentru cele trei chip-uri. Apăsați butonul //Ok// deoarece nu este necesară modificarea opțiunilor selectate implicit.
 +
 {{ .:​5-ise-programare:​11.jpg?​direct&​400 |}} {{ .:​5-ise-programare:​11.jpg?​direct&​400 |}}
 +
   * Faceți click dreapta pe primul chip **xc3s500e** (FPGA-ul) și selectați opțiunea //Program// pentru a începe procesul de programare a plăcii.   * Faceți click dreapta pe primul chip **xc3s500e** (FPGA-ul) și selectați opțiunea //Program// pentru a începe procesul de programare a plăcii.
 +
 {{ .:​5-ise-programare:​12.jpg?​direct&​400 |}} {{ .:​5-ise-programare:​12.jpg?​direct&​400 |}}
 +
   * Veți primi mesajul //Program Succeeded// dacă procesul de programare a reușit. În acest moment placa este programată,​ iar LED-ul de programare (portocaliu) se va aprinde.   * Veți primi mesajul //Program Succeeded// dacă procesul de programare a reușit. În acest moment placa este programată,​ iar LED-ul de programare (portocaliu) se va aprinde.
 +
 {{ .:​5-ise-programare:​13.jpg?​direct&​400 |}} {{ .:​5-ise-programare:​13.jpg?​direct&​400 |}}
 +
   * Setați chip-ul **xc3s500e** ca țintă implicită a programărilor ulterioare făcând //​click-dreapta//​ pe el și selectând opțiunea //Set Target Device//.   * Setați chip-ul **xc3s500e** ca țintă implicită a programărilor ulterioare făcând //​click-dreapta//​ pe el și selectând opțiunea //Set Target Device//.
 +
 {{ .:​5-ise-programare:​14.jpg?​direct&​400 |}} {{ .:​5-ise-programare:​14.jpg?​direct&​400 |}}
 +
   * Închideți aplicația de programare a FPGA-ului și salvați configurările făcute, într-un fișier care are același nume cu proiectul Xilinx (fără extensie).   * Închideți aplicația de programare a FPGA-ului și salvați configurările făcute, într-un fișier care are același nume cu proiectul Xilinx (fără extensie).
 +
 {{ .:​5-ise-programare:​15.jpg?​direct&​400 |}} {{ .:​5-ise-programare:​15.jpg?​direct&​400 |}}
 +
   * O dată salvate configurările aplicației,​ programarea ulterioară a plăcii pentru proiectul curent se face cu procesul //Configure Target Device// din Xilinx. Configurația curentă a plăcii poate fi ștearsă apăsând butonul //PROG// de pe placă. Va trebui să urmăriți aprinderea LED-ului de programare a plăcii (portocaliu) pentru a știi când placa a fost reprogramată,​ deoarece aplicația nu oferă nici un fel indicator în acest sens.   * O dată salvate configurările aplicației,​ programarea ulterioară a plăcii pentru proiectul curent se face cu procesul //Configure Target Device// din Xilinx. Configurația curentă a plăcii poate fi ștearsă apăsând butonul //PROG// de pe placă. Va trebui să urmăriți aprinderea LED-ului de programare a plăcii (portocaliu) pentru a știi când placa a fost reprogramată,​ deoarece aplicația nu oferă nici un fel indicator în acest sens.
 +
 {{ .:​5-ise-programare:​16.jpg?​direct&​400 |}} {{ .:​5-ise-programare:​16.jpg?​direct&​400 |}}
  
  
-== Resurse ==+<​html><​a class="media mediafile mf_pdf"​ href="​https://​ocw.cs.pub.ro/​courses/​ac-is/​tutoriale/​5-ise-programare?​do=export_pdf">​PDF tutorial</​a></​html>​
  
- * <​html><​a class="​media mediafile mf_pdf"​ href="/​ac/​wiki/​tutoriale/​5-ise-programare?​do=export_pdf">​PDF tutorial</​a></​html>​ 
ac-is/tutoriale/5-ise-programare.1632152205.txt.gz · Last modified: 2021/10/01 20:20 (external edit)
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0