Moin, mir ist grade die Frage aufgekommen, ob es möglich ist, mit einem ARM-Controller (STM32) von einem externem Speicher Programm-Code auszuführen? Ein Memory Controller (FSMC /FMC) ist ja vorhanden. Oder ist der für das Lesen und Speichern von Daten benutzbar? Denn Stack und Heap kann man ja wohl darauf auslagern / erweitern. Und da der Controller ja auch Code aus dem SRAM ausführen kann sollte das ja vllt. funktionieren. Aber wie sieht das mit externem Flash aus? NAND-Flash würde wahrscheinlich nicht funktionieren weil der ja nur Seitenweise gelesen werden kann. Wie sieht das mit NOR-Flash aus? Der kann ja auch Byteweise gelesen werden. Hat jemand eine Idee dazu? Würde mich mal interessieren. Moritz
Hallo, also booten solltest du schon noch über den internen Flash. Damit du das externe Memory Interface konfigurieren kannst. Aus normalem externen Nor Flash geht auch die Programmausführung. Aber nur sehr langsam, weil du viele Wait-States brauchst. Der interne Flash ist mit 128 Bit meines Wissens angebunden und hat noch einen sehr gut arbeitenden Cache. Es ist vermutlich besser den Programmcode ins interne Memory zu kopieren und dort zu starten. Aber auch das interne SRAM ist langsamer als der interne Flash. Weil eben nun mal alles dann auf das SRAM zugreift. (STM32F4xx) Gruß Sascha
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.