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
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.
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
Hmm, Reset Problem wäre seltsam, denn nachdem du das FPGA komplett neu konfigurierst ist das das gleiche wie ein Kaltstart. Aber vielleicht hast du einen externen Reset dran z.B. von einem Power-Good-Chip der dann nochmal was auslöst.
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
Kann es sein, dass da was mit dem scannen der Mx-Pins nicht passt und der Mode nicht erkannt wird?
ich glaube nicht, dass es daran liegt. wenn ich den fpga konfiguriere, wird das done signal auf high gesetzt.
die mode pins sind mit pullups vershen. also serial slave. intern sind glaube ich auch nochmal pullups. und das erste mal klappt ja auch alles mit dem konfigurieren.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.