Hallo, ich möchte gerne Code von einem externen RAM ausführen. Prinzipiell würde mir ein ATmega644 oder ähnliches reichen. Da der aber nur vom Flash laden kann, habe ich mich für einen STM32F1 mit FSMC entschieden. Hier möchte ich einen RAM Baustein anschließen und von dort Code ausführen. Von ST gibts auch ne AN und Beispielcode, wo das mit einem NOR gemacht wird, sollte also problemlos funktionieren?! Da ich nicht so der Elektronik-Experte bin, bräuchte ich jetzt noch Rat, welche Art von RAM ich am besten verwende (Vor-/Nachteile) und wie ich es am besten Anschließe (AN?)? Speicher im Bereich 1MB reichen mir. System soll mit 3,3V laufen. Ach ja, ich möchte das Programm nicht per Debugger etc. einspielen, sondern es soll ein "Bootloader" auf dem int. Flash laufen, der dann das Programm in den ext. RAM kopiert. Das das Programm nur bis zum nächsten Reset im RAM bleibt, ist mir bewusst :) Über weitere Ratschläge, was ich alles beachten soll bin ich natürlich dankbar. mfg
Naja, Du bräuchtest wohl ein statisches SRAM, so wie in der Application Note (ich nehme an es war AN2784?) beschrieben. Laut diesem Post http://electronics.stackexchange.com/questions/31456/running-executable-from-external-sram dürfte es übrigens wesentlich langsamer sein den Code aus dem externen Speicher auszuführen. Wenn Du ein MByte (nicht MBit) meinst, müsstest Du also ein asynchrones 512k x 16bit SRAM nehmen. Dann noch die gewünschte Versorgungsspannung als Kriterium und mit diesen Daten kannst Du dann bei dem bevorzugten Lieferanten suchen. In der AN steht doch direkt ein Chip drin: IS61WV51216BL Der kostet um die 15 EUR und hat 1 MByte. ...wobei man man natürlich bei einem solchen Aufbau (Timings im 10ns Bereich) schon in Bereiche kommt, wo man auf jeden Fall ein sauberes Layout braucht denke ich mal. Also wird wohl auf jeden Fall ein Board notwendig sein. Aber das können andere hier sicher besser beurteilen.
:
Bearbeitet durch User
Wie oft und wie schnell willst du denn deine Programme wechseln? Bzw. warum willst du das ganze machen? Und woher sollen die neuen Programmdaten denn kommen? Ja, passender SRAM ist teuer.
Felix F. schrieb: > Speicher im Bereich 1MB reichen mir. > System soll mit 3,3V laufen Dann würde ich mir eher die STM32F7 anschauen, die haben bis 512KB on-Chip RAM. Externer RAM an µC ist eher unschick: Braucht reichlich Pins und ist trotzdem lahm. Wenn der nicht grade für ein knallbuntes LCD gebraucht wird, würde ich den möglichst immer weglassen.
Hallo, die langsamere Ausführgeschwindigkeit ist OK. Mir hätte prinzipiell ja auch ein 20MHz ATmega gereicht. 10ns brauche ich gar nicht. Ein billigerer Chip mit ~50ns ist auch noch ok. Einen bevorzugten Lieferanten habe ich nicht, nur die Eckdaten müssen stimmen, deshalb frage ich ja die Experten hier was zu empfehlen wäre ;) Einen konkreten Anwendungsfall gibt es noch nicht, bis jetzt ist es nur eine Spielerei, deshalb will ich auch keinen MC mit mehr RAM, sondern es so umständlich machen ;) Gibts gegen den was einzuwenden? http://www.mouser.de/ProductDetail/Cypress-Semiconductor/CY62157EV30LL-45ZSXI/?qs=7NE86GkllXftCpnrBM6eEA== mfg
Felix F. schrieb: > habe ich mich für einen STM32F1 mit FSMC entschieden Die gibt es auch schon mit 96 KB RAM. Wenn Du Deinen RAM-Bedarf aber noch garnicht so genau abschätzen kannst, würde ich das ext. RAM erst einmal weglassen und einen F407 im 144 pol. Gehäuse nehmen. Die kosten nur minimal mehr und sind pinkompatibel zu Versionen mit mehr internem RAM (F427/F745). Man kann diese µCs auch sehr langsam takten. Mit einem Nucleo-Board kannst Du Deine Software erproben, ohne den Lötkolben angefaßt zu haben. Sofern nicht RAM an einem Stück benötigt wird, kann man es auch aufteilen und unabhängige Programmteile an die gleiche Adresse ins RAM legen (overlay). Felix F. schrieb: > Gibts gegen den was einzuwenden? Kannste nehmen. Nur mußt Du aufpassen, daß der FSMC bei kleinen Gehäusen (<= 100 pol.) nicht komplett herausgeführt ist. Da ist dann noch ein xx573 erforderlich.
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.