Utilizaţi MCU pentru a configer la Xilinx FPGA

D

Dick Hou

Guest
Xilinx aplicare note xapp058 descrie modul de utilizare a mcu la configer sa FPGA / CPLD / PROM prin portul JTAG, dar care utiliza instrumente pentru a compila sursa fişier?

 
ISE generat de programare fişier.dacă aruncăm o privire la stânga pannel de ISE GUI veţi găsi la sfârşitul pas numit "Generat Fişiere de programare"

 
Da, ştiu de ISE poate genera bit / MCS / hex ...fişier Xilinx pentru a utiliza cablul pentru a descărca FPGA, dar vreau configer de FPGA off-line, pentru a face acest lucru, primul program de date pentru a configer ROM, apoi utilizaţi MCU citi şi de a folosi JTAG sau slave de serie configer Mod de FPGA.Nu pot configer-o de la sclav serial Mod de acum, dar nu ştiu cum să folosească portul JTAG pentru a face acelasi lucru?

 
Codul sursă al app058 este C. puteţi compila-l cu orice compilatorul C.Singurul lucru ce trebuie să faceţi este să definească patru funcţii în codul sursă în conformitate cu MCU pe care îl utilizaţi.Aveţi posibilitatea să conducă JTAG PINS TDI, TDO, TMS TCK şi cu MCU generală I / O pins.L-am realizat-o cu AT91FR4081, care este
de MCU Atmel cu ARM7TDMI de bază.

 
sucan a scris:

Codul sursă al app058 este C. puteţi compila-l cu orice compilatorul C.
Singurul lucru ce trebuie să faceţi este să definească patru funcţii în codul sursă în conformitate cu MCU pe care îl utilizaţi.
Aveţi posibilitatea să conducă JTAG PINS TDI, TDO, TMS TCK şi cu MCU generală I / O pins.
L-am realizat-o cu AT91FR4081, care este de MCU Atmel cu ARM7TDMI de bază.
 
Dimensiunea mea final imagine este de aproximativ 10Kbytes, este mic.
Trebuie să se definească funcţii setPort (), pulseClock (), readByte (), readTDOBit () şi waitTime ()-vă în funcţie de MCU pe care îl folosiţi.Codul sursă furnizate de app058 este doar de referinţă.Puteţi să vă definiţi funcţii, după cum urmează:
nule setPort (p scurt, scurt val)
(
dacă (p == TMS)
out_word.bits.tms = (nesemnate caracter) val;
dacă (p == TDI)
out_word.bits.tdi = (nesemnate caracter) val;
dacă (p == TCK) (
out_word.bits.tck = (nesemnate caracter) val;
yourMCUwriteBitFunc (xxx, out_word.bits.tms);
yourMCUwriteBitFunc (xxx, out_word.bits.tdi);
yourMCUwriteBitFunc (xxx, out_word.bits.tck);)
)

nule pulseClock ()
(
setPort (TCK, 0);
setPort (TCK, 1);
setPort (TCK, 0);
)

nule readByte (nesemnate caracter * date)
(
* date =* marca; / * * nesemnate caracter marca = (nesemnate caracter yourconfigfileaddress * * /
marca ;
)

nesemnate caracter readTDOBit ()
(
dacă (yourMCUreadBitFunc () == 1) (
in_word.tdo = 1;)
in_word.tdo = 0;
)

nule waitTime (lung microsec)
(
statică lung tckCyclesPerMicrosec = (lung) clk numărul dumneavoastră în MHz;
lung tckCycles = microsec * tckCyclesPerMicrosec;
i lung;
pentru (i = 0; i <tckCycles; i);
(
pulseClock ();
)
)

 
Eu folosesc @ ltera fpgas de proiectare a sistemului.
Îmi puteţi oferi @ ltera
de jtag versiune pentru ACEX sau Excalibur?

 
Salut tuturor

de la Xapp058 i nu intelegi ceva

cum pot converti xsvf fişier hex la fişier şi programul pentru a EPROM.

Mulţumesc

 
Ok prieten acum am înţeles despre Xapp058.dar nu pot complie C Cod în Keil

Care este problema?

 
Trebuie să modificaţi portul io. C fişier pentru a se potrivi cu aplicaţia
dvs. ...un fel,
aşa cum aţi spus, dosarul prevăzut în XAPP058 este o demonstraţie de cum ar trebui să port io fi făcut.trebuie să o faci tu pentru propria
dvs. microcontroler.

 
sucan a scris:

Codul sursă al app058 este C. puteţi compila-l cu orice compilatorul C.
.
 
Acesta va fi de nici un folos, chiar dacă puteţi compila aceasta, trebuie să fie modificate pentru a suitei
dvs. microcontroler ...

 
BuBEE a scris:

Salut tuturorde la Xapp058 i nu intelegi cevacum pot converti xsvf fişier hex la fişier şi programul pentru a EPROM.Mulţumesc
 
Hei,

Am terminat recent face o Xilinx FPGA de configurare prin intermediul unui proiect AVR.Este descris în detaliu în februarie problema Circuit Cellar, care ar trebui să fie în curând.De asemenea, o dată februarie este aici ar trebui să fie online, gratuit, la http://www.circuitcellar.com dacă nu vă abona.

Codul este GPL la http://www.newae.com/loonboard/lub.html

HTH,

-Colin

 

Welcome to EDABoard.com

Sponsor

Back
Top