IP Core zur Laufzeit mehrmals laden Problem!

Gast #3224144
Lesenswert?

Hallo Leute

wir haben einen Xlilinx spartan 6 in betrieb und versuchen zur laufzeit 
verschiedene IP Cores in den FPGA zu laden. Unser System Cortex M3 über 
SPI an FPGA und Freertos als OS

Wenn wir einen IP Core nach einem Powercycle reinladen funktionieren 
dieser immer. Versuchen wir jetzt ein zweites mal einen anderen oder den 
gleichen IP Core zu laden funktioniert dieser nicht mehr.

Ist bei jemandem solch ein Problem auch mal aufgetretten? Erfahrungen? 
Wie handelt man sowas korrekt?

Würde mich um eine Rückmeldung freuen

Grüße
Marco
#3224296
Lesenswert?

Mit IP-Core meinst du dann das komplette FPGA Design, oder? Weil 
einzelne Teile kann man ja höchstens mit partieller Rekonfiguration 
laden. Wenn neues Design komplett drauf, hältst du dann auch wirklich 
den Slave Serial Download Zyklus ein? Also Prog_B auf Low ziehen, warten 
auf INIT_B und dann Bit-File reinschieben bis DONE kommt? Ich hatte 
damit noch keine Probleme.
Gast #3224861
Lesenswert?

Christian R. schrieb:
> Mit IP-Core meinst du dann das komplette FPGA Design, oder?
Ja genau.


Christian R. schrieb:
 Also Prog_B auf Low ziehen, warten
> auf INIT_B und dann Bit-File reinschieben bis DONE kommt? Ich hatte
> damit noch keine Probleme.

Wird alles eingehalten und der Done Pin kommt.
Wie gesagt beim ersten reinladen des Bit-Files funktioniert der IP-Core 
richtig.

Scheint ein Reset Problem zu sein
Gast #3224958
Lesenswert?

seltsam ist richtig :D !

unsere erwartung war, dass der fpga beim ziehen  von program_b komplett 
gelöscht wird und wir wieder einen komplett leeren chip haben.

interessant ist auch, wenn wir den fpga das erste mal über den 
JTAG-Programmer konfigurieren, geht es danach auch per spi nicht. 
natürlich wird das ganze handshaking durchlaufen...


wird das bit-file über den jtag-programmer geladen, geht es immer. 
scheinbar ist der reset bei jtag programmierung anders.
an der jtag buchse ist aber nichtmal ein reset signal angeschlossen. das 
müsste doch dann bedeuten, dass der core über ein jtag-kommando resettet 
wird das sich scheinbar vom reset per program_b unterscheidet.

ist euch soetwas bekannt?

grüße

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren