Hallo, ich arbeite mit einem Cyclone III - FPGA. Über in VHDL geschriebene Entitys habe ich Zugang zu USB und Ethernet. Nun habe ich mehrere NIOS II-Prozessoren (jeden als eigenes System-on-a-Chip-Module) eingebunden und verschiedene C-Programme dafür geschrieben. Die C-Programme werden momentan compiliert (Eclipse) und mit Quartus II in das EPCS-Image eingebunden (Update mif) und aus dem On-Chip-Memory ausgeführt. Nun möchte ich die Programme der Prozessoren zur Laufzeit von außen aufspielen können, d.h. den betreffenden Prozessor "anhalten" oder in einen Bootmodus versetzen, das neue hex.-File in das entsprechende On-Chip-Memory schreiben und den Prozessor anschließend wieder starten. Alternativ besteht auch die Möglichkeit die hex-Daten im EPCS abzulegen (habe Zugriff via USB) und von dort in das entsprechende On-Chip-Memory zu kopieren. Wie bereits erwähnt werden die Daten via USB oder Ethernet zum FPGA hin übertragen, eine Programmierschnittstelle wie JTAG o.ä. ist nicht vorhanden. Was ist die praktikabelste Lösung? Hat schon mal jemand einen Bootloader für das On-Chip-Memory gebaut / angepasst? Danke in voraus. Patrick
Du hälst einen NIOS Processor an (z.B. mit reset_request dauerhaft auf '1') mit dem anderen überschreibst Du einfach den ONCHIP RAM mit dem neuen Programm. Dann nimmst Du reset_request zurück und alles läuft wie gehabt. Grüße, Kest
Hallo Kest, danke für die schnelle Antwort. Heißt das, dass ich mit dem reset_request NUR den Prozessor anhalten kann und die anderen Komponenten des SOPC-Systems arbeiten weiter? Könnte ich dann mit einer Avalon-Bridge die Daten in das On-Chip-Memory schreiben und den Prozessor wieder anlaufen lassen (Die verschiedenen Prozessoren sind nicht alle in einem SOPC-System)? Gruß Patrick
Jeder NIOS II Processor hat reset_request und reset_ack oder so. Mit reset_request hältst Du nur NIOS an, AVALON Fabric läuft weiter. Wie Du ONCHIP-Ram beschreibst ist Dir überlassen. Kannst auch von außen mit AVALON Bridge/Master alles steuern. Grüße, Kest
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.