Hi, was denkt ihr welches und wieviel RAM und welcher Mode für die Xmega am vernüftigsten sind? SRAM bis 512MByte? 64MBit SDRAM mit 4 Bit Datenbus im 3 Port Mode? Oder SDRAM mit 8 Bit Datenbus im 4 Port Mode?
Möglichst universell. Wie groß sind die Unterschiede in der Zugriffszeit bzw der Performance zwischen SRAM, 4 Bit SDRAM und 8 Bit SDRAM? SRAM ist halt teuer und man braucht zusätzlich mindestens ein Latch. SDRAM kriegt man für den gleichen Preis fast die 10fache Speichermenge und man kann es 1:1 mit dem Xmega verbinden.
Die Frage nach 8 Bit SDRAM hat sich erledigt. Die Xmega A1 haben nur 3 EBI Ports. Womit man spekulieren kann ob die fehlenden A2 vielleicht mit 144 Pins daherkommen könnten, sofern es sowas gibt? ;)
Jones wrote: > was denkt ihr welches und wieviel RAM und welcher Mode für die Xmega am > vernüftigsten sind? > > SRAM bis 512MByte? Hast Du überhaupt schonmal was mit Mikrocontrollern gemacht? Ich vermute mal, noch nie. Ich komme in der Regel mit 128 .... 1024 Byte aus. Mein allergrößtes Projekt hat 8kB benötigt (P89C668). Ich haber daher noch nie externes RAM angeschlossen. Ein 8Bitter kann in der Regel auch nur 64kB linear adressieren, d.h. über 64kB sollte man eh auf 32Bit gehen, z.B ARM. Falls man aber was mit Ethernet machen will, sollte man besser gleich MCs mit internem Ethernet nehmen, z.B. die Luminary ARM Cortex M3, die haben dann auch gleich riesige 64kB SRAM intern, das reicht dann dicke. Peter
mein ramhungrigstes projekt war mal mit ner cam, da gingen n paar kb für die verarbeitung der kameradaten drauf, aber bei weitem kein MB
Sicher hab ich schon Sachen mit Controllern gemacht. Mit ist auch klar das 8MB an einem 8 Bit Controller mi Kanonen auf Spatzen geschossen ist. Aber frag mal die c't-Bot Leute. Die lagern Daten auf eine SD Karte aus weil das RAM nicht ausreicht
Jones wrote: > Aber frag mal die c't-Bot Leute. Die lagern Daten auf eine SD Karte aus > weil das RAM nicht ausreicht Hast Du mal nen Link dazu, wo jemand diesen zusätzlichen Speicher wie RAM verwendet? D.h. gibt es wirklich eine Anwendung, die dort ständig Daten verändert, die dann nach dem Ausschalten nicht mehr benötigt werden. Oder nehmen sie diesen zusätzlichen Speicher nur dazu, um Daten dauerhaft zu speichern oder z.B. mit dem PC auszutauschen. Peter
Peter Dannegger wrote: > Hast Du überhaupt schonmal was mit Mikrocontrollern gemacht? > Ich vermute mal, noch nie. Ich vermute ich hab schon mehr Controller auf Platinen gelötet als die meisten hier. > Hast Du mal nen Link dazu, wo jemand diesen zusätzlichen Speicher wie > RAM verwendet? Link hab ich grad keinen, aber wenn ich das richtig in Erinnerung hab speichern die dort die Karte mit der Environment Map, die sie beim Fahren aufzeichnen. Da sind ein paar kByte schnell voll. Andere Applikation wo das interessant sein könnte wären zb Datenlogger. Vor allem wo Daten schnell aufgezeichnet werden müssen. Generell würde ich aber sagen das die Xmega ganz andere Anwendungsbereiche erschließen wo solche Datenmengen nötig sein könnten. Mir würde ja auch 8MBit SDRAM reichen, aber das bekommt man ja nicht mehr. Und SDRAM ist einfacher anzuschließen weil man kein Latch mehr braucht. Mich würde halt interessieren ob es einen großen Unterschied zwischen SRAM und SDRAM gibt, vor allem SDRAM mit 4-Bit Datenbus
habe vorher gelesen das der xmega nur 128mbit ansprechen kann, also ist die fragestellung wohl überflüssig
>habe vorher gelesen das der xmega nur 128mbit ansprechen kann, also ist >die fragestellung wohl überflüssig Ich hab mich im ersten Beitrag vertippt wie ich gerade feststelle. Ich meinte 512 kiloByte. Korrekt müsste es heißen: 512kByte SRAM oder 8MByte SDRAM mit 4 Bit Busbreite. Ein 512kByte SRAM Baustein ist nur minimal billiger als ein 64MBit SDRAM. Aber für SRAM brauch ich zusätzlich eben ein (oder zwei) Latch. Ein SDRAM kann direkt angeklemmt werden. Es ist also keine Preisfrage. Mich interessiert ob und wenn wieviel langsamer ein 4 Bit SDRAM gegenüber normalem SRAM an einem Xmega ist.
Jones wrote: > Link hab ich grad keinen, aber wenn ich das richtig in Erinnerung hab > speichern die dort die Karte mit der Environment Map, die sie beim > Fahren aufzeichnen. Das vermute ich auch. Aber ich denke, daß sie deswegen die SD-Card verwenden, weil sie die Daten über ein Reset hinaus weiter verwenden wollen. Peter
Jonas: >Und SDRAM ist einfacher anzuschließen weil man kein Latch mehr braucht. Das Latch ist überhaupt kein Problem, wenn der Platz dafür da ist. Bei meinem SD-Karten-Recorder habe ich aus Pinarmut sogar 2 Latches dran, um ein 128kByte SRAM zu adressieren. So läuft das SRAM an 1 1/2 Ports. Das Interface kommt mit 1 Wartezyklus bei 36Mhz Bustakt aus. Peter Dannegger schrieb: >Ich komme in der Regel mit 128 .... 1024 Byte aus. Bei der Verwendung von SD-Karten: No way! >Ein 8Bitter kann in der Regel auch nur 64kB linear adressieren, d.h. >über 64kB sollte man eh auf 32Bit gehen Nicht der XMEGA. Dessen externes Speicherinterface binded 24 Adressleitungen ein, so daß 16MByte direkt adressiert werden können. Der Speicherbaustein erscheint dann linear im Controller-SRAM-Adressbereich ab 0x4000.
Jones wrote: > Es ist also keine Preisfrage. Mich interessiert ob und wenn wieviel > langsamer ein 4 Bit SDRAM gegenüber normalem SRAM an einem Xmega ist. Hängt vom Timing und der Anwendung ab: Wenn das SRAM 8bit hat, ist es bei gleicher Frequenz doppelt so schnell. Dazu kommt noch, ob du Daten sequentiell oder quer durcheinander liest. Keine Ahnung wie schnell der xmega ein SRAM ansteuert, aber ich vermute die Zugriffszeit auf eine zufällige Speicherstelle dürfte schneller sein als bei einem SDRAM, bei dem erst die Row aktiviert werden muss, ehe eine Speicherstelle darin angesprochen werden kann.
>Keine Ahnung wie schnell der xmega ein SRAM ansteuert, aber ich vermute >die Zugriffszeit auf eine Zufällige Speicherstelle dürfte schneller sein >bei einem SDRAM, bei dem erst die Row aktiviert werden muss, ehe eine >Speicherstelle darin angesprochen werden kann. Hängt davon ab ob man Latches verwendet (wieviele) oder nicht. Direkt angeschlossen braucht ein Zugriff auf das externe SRAM 3-4 CPU-Zyklen, bei Latches kommt minimal 1 Clock/Latch dazu.
Also wenn man 70ns SRAM nimmt braucht man mindestens ein Waitstate, eher 2. Dazu kommt ein Latch bis 64kByte RAM und 2 Latches ab 64kByte. Da hab ich eine ungefähre Vorstellung wie lang das dauert. Aber: Das EBI kann man mit dem doppelten CPU Takt betreiben (also auch 64MHz) und ein SDRAM ist ja durchaus auf 100-133MHz ausgelegt, hat damit also auch keine Probleme. Dh aus dem SDRAM dürfte man durchaus auf ähnliche Werte kommen wie mit SRAM da die ganzen Abläufe deutlich schneller sind als beim SRAM. Es sei denn man kann das EBI mit SRAM auch mit 64MHz takten und die Daten mit maximalem Takt in die Latches ballern. Dann muss man nur noch darauf warten bis das SRAM fertig ist.
> Hab 10ns SRAM dran ;-) Und 74AHC573 Latches. Geht ab.
Die sind sicher noch teurer, oder ziemlich klein. Ein paar kByte Ram
mehr dürfen es schon sein.
Ich bin nicht auf das letzte Quäntchen Performance aus. Dafür gibts ja
noch das interne SRAM. Die 32kByte vom Xmega384 sollten dann reichen
wenn es ihn denn mal gibt
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.