Hallo zusammen, ich habe einen MAX10 FPGA zusammen mit einem TI AM335x Prozessor auf einer Platine. Der MAX10 kann aktuell via JTAG konfiguriert werden. Zusätzlich soll ein Konfigurationsupdate des MAX10 mithilfe des AM335x ermöglicht werden. Die beiden Chips sind über ein SPI Interface verbunden. Die Basiskonfiguration des MAX10 enthält den On-Chip-Flash IP sowie die SPI-Slave-to-Avalon-Bridge, die mittels Quartus Platform Designer eingefügt wurden. Ein Lesezugriff über das SPI Interface via AM335x funktioniert bereits auf willkürlich gewählten Adressen. Um die Konfiguration des MAX10 zu erneuern, müsste man das CFM0 neu beschreiben. Hierzu habe ich von Quartus ein .pof, ein .rpd sowie ein .map File erzeugen lassen. Das SPI Interface des MAX10 ist über Avalon mit dem On-Chip Flash verbunden, weshalb beim Zugriff eine Avalon Adresse (32 Bit) angegeben werden muss, während die Adressen im .map File interne Byte Adressen sind. Meine Frage: An welche Adresse(n) müsste man den Inhalt des .rpd Files schreiben, um das CFM0 zu überschreiben? Ist das .rpd File hierfür überhaupt geeignet? Wie muss mit dem ICB Bereich in der .map Datei (siehe Anhang) umgegangen werden? Vielen Dank.
Johannes J. schrieb: > Um die Konfiguration des MAX10 zu erneuern, müsste man das CFM0 neu > beschreiben. Und das ganze soll dann ohne Konfigurationszyklus ablaufen. Also sprich sowas wie eine Partial Reconfiguration? https://www.intel.com/content/www/us/en/programmable/documentation/tnc1513987819990.html Den Flash überschreiben und neu booten ist keine Option? VG, Andreas
Doch, ich möchte den Flash überschreiben und anschließend neu booten. Es scheitert aktuell lediglich daran, dass mir der Adressbereich nicht klar ist, an dem die neue Konfiguration hinterlegt werden muss. Im Quartus Platform Designer und in der .map Datei sind Adressen angegeben, die jedoch keine Avalon Adressen darstellen. Die SPI-Slave-to-Avalon-Bridge erwartet jedoch eine Avalon Adresse, die für einen Schreibzugriff angegeben werden muss. Gruß Johannes
Hast Du mal versucht, den aktuellen Flashinhalt via SPI auszulesen? Vielleicht erkennst Du da schon das richtige Muster... Duke
Ja, das hab ich bereits versucht. Leider kann ich die bisher ausgelesenen Bitmuster in der .rpd Datei nicht finden, weshalb ich auch hier noch etwas skeptisch bin, ob das .rpd File für meine Zwecke geeignet ist.
Hallo Johannes, Johannes J. schrieb: > ausgelesenen Bitmuster in der .rpd Datei nicht finden, weshalb ich auch > hier noch etwas skeptisch bin Da musst du mal bei dem RPD file und einem Speicherinhalt ganz genau hinschauen. Wenn ich es richtig in Erinnerung habe sind im rpd die Bilfolgen gedreht. Sprich bei einem Byte im RPD ist das MSB das LSB im Flash Speicherinhalt. VG, Andreas
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.