mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Mikrocontroller mit großem RAM


Autor: Tobias Eckhardt (doenges)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

bin heute bei meiner Diplomarbeit und der Ausarbeitung auf die 
Mikrocontrolleranforderungen gestoßen und habe festgestellt, daß ich 
einen Mikrocontroller mit 30kB RAM benötige.

Habt ihr eine Idee welcher da so in Frage kommt oder wie ich das Ganze 
mit einem RISC von Atmel lösen könnte?

Gruß

Tobi

Autor: Jan M. (mueschel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das sollte kein Problem sein: Einige Atmega haben ein externes 
Speicherinterface, das bis zu 64kB direkt addressieren kann. Dafuer 
brauchts dann nur noch ein SRAM (gibts in DIL oder SOP) sowie ein 
Adresslatch.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Tobias Eckhardt (doenges)

>einen Mikrocontroller mit 30kB RAM benötige.

>Habt ihr eine Idee welcher da so in Frage kommt oder wie ich das Ganze
>mit einem RISC von Atmel lösen könnte?

Einige der AVRs können sehr einfach mit externem RAM aufgebohrt werden 
und haben dann fast 64kB RAM.Z.B. der ATmega8515.

MfG
Falk

Autor: Willivonbienemaya .. (willivonbienemaya)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das fällt dir erst bei der Ausarbeitung auf?
Hast du mal drüber nachgedacht ob du das wirklich brauchst?

es geht zB mit:
1: dsPIC33
2: Mega8515 + ext RAM

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du brauchst nur 30KB RAM? Mehr konkrete Anforderungen gibt es nicht?
Dann könnte doch auch ein 4-bitter reichen.

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"RISC von Atmel" ist etwas unscharf ausgedrückt.

Es gibt mit den AVRs 8-Bit-Controller, denen eine RISC-Architektur 
nachgesagt wird; keiner von denen verfügt über so viel internes RAM.

Zusätzlich stellt auch Atmel verschiedene 32-Bit-RISC-Controller her, 
die auf den ARM-Kernen ARM7TDMI und ARM9 (k.a. welcher genau) basieren. 
Für Selbstbaulösungen noch halbwegs anwendbar sind da die 
AT91SAM7Sxxx-Modelle, von denen beispielsweise der AT91SAM7S512 über 64 
kByte RAM verfügt:

http://atmel.com/dyn/products/product_card.asp?part_id=4103

Die Philips/NXP-Konkurrenz bietet aber auch ARMe mit so viel RAM, wie 
beispielsweise den LPC2106.

An die meisten Controller kann man aber auch externes SRAM anschließen, 
und damit auch einem AVR ausreichend RAM verpassen.

Zur Controllerauswahl solltest Du Dir also noch Gedanken machen um
- Art und Anzahl der benötigten Peripherie (I/O-Leitungen, 
Schnittstellen, AD/DA-Wandler etc.)
- Rechenleistung
- Programmgröße (Menge des Flash-ROMs)
- gewünschtes/vorhandenes Entwicklungssystem

Autor: Tobias Eckhardt (doenges2)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich entwickel ein Mikrocontroller zur Ansteuerung eines Displays.
Die Daten bekomme ich von einem Hauptmikrocontroller der ebenfalls ein 
Atmel ist (Atmega644), weil dafür schon "alles" da ist dachte ich 
ebenfalls an Atmel 8 Bit!
Bin auch offen für andere Ideen.

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na, wenns AVR sein und bleiben soll - nimm 'nen Mega128 und hänge ein 
32K-SRAM dran.

Autor: Tobias Eckhardt (doenges2)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja danke! Dann schau ich mir mal die Controller genauer an.
wie genau schalte ich dann den RAM an den Controller, über einen 8Bit 
Port???

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Tobias Eckhardt (doenges2)

>wie genau schalte ich dann den RAM an den Controller, über einen 8Bit
>Port???

Steht gut verständlich im Datenblatt. Über zwei 8-Bit Ports.

Mfg
Falk

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nee, Du brauchst schon mehr als einen 8-Bit-Port, etwas mehr als zwei 
werden's schon. 8 Bit Daten- und Adressleitungen (gemultiplext), 8 Bit 
weitere Adressleitungen sowie ein paar Steuerleitungen (/Rd, /Wr, ALE). 
Und Du benötigst ein 8-Bit-Latch zum Demultiplexen des Adressbusses.

Näheres nebst Beispielschaltung steht im Datenblatt des Mega128.

Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Renesas bietet in der M16C Serie µC's an, die 30K RAM intern haben.

Autor: Stefan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Brauchst du unbedingt RAM wegen der Geschwindigkeit, oder ginge auch 
EEPROM. Das geht ganz easy über Two Wire Interface (im Datenblatt unter 
TWI) anzuschließen.
Außerdem bleiben die Daten auch bei Unterbrechung der 
Spannungsversorgung erhalten.

Gruß
Stefan

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tobias Eckhardt wrote:
> bin heute bei meiner Diplomarbeit und der Ausarbeitung auf die
> Mikrocontrolleranforderungen gestoßen und habe festgestellt, daß ich
> einen Mikrocontroller mit 30kB RAM benötige.

Wie hast Du das ermittelt ?

Brauchst Du wirklich 30kB an globalen Variablen, die die ganze Laufzeit 
über erhalten bleiben müssen ?

Windows-Programmierer überschätzen meistens den realen Speicherbedarf 
völlig und teilen Speicher mit nem Sieb aus (ein Großteil läuft 
ungenutzt unten raus).


Peter

Autor: Störfeld (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> wie genau schalte ich dann den RAM an den Controller, über einen 8Bit
> Port???

Darf sowas ein Diplomand fragen?

Autor: Matthias Lipinsky (lippy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>> wie genau schalte ich dann den RAM an den Controller, über einen 8Bit
>> Port???

>Darf sowas ein Diplomand fragen?

Das ist eine gute Frage zur Frage ;-)

auch ein Diplomand

Autor: Marco S. (masterof)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
oder nehmt den Mega2560 da hat 8kByte Ram und 100Pin oder den Mega2561 
der hat auch 8KByte Ram aber nur 64Pin und ist Pin-Kompatibel mit dem 
Mega64/128.

Autor: Rooney Bob (rooney)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
PIC18F8722 + 1MB externes SRAM + 1MB externes Flash

Wer bietet mehr?

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Darf sowas ein Diplomand fragen?

Fragen darf er. Solange wir dann im Quellenverzeichnis stehen ;-)

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
uPSD-Serie (8Bit, 8051-kompatibel) von STM gibts auch mit 32k internen 
SRAM und in verschiedenen Leistungsklassen.

http://mcu.st.com/mcu/inchtml.php?fdir=pages&fnam=upsd

Haben viele Zusatzfunktionen, z.B. einen internen PLD und 2 unabhängige 
FLASH-Speicher, USB. Programmiersoftware bei STM kostenlos downloadbar, 
SDCC unterstützt die Typen, Programmierung per JTAG, auch selber baubar. 
Preise sind recht günstig, Nachteil: nur in SMD verfügbar.

Bezug auch in Kleinmengen über gängige deutsche Distributoren möglich.

Gruß Matthias

Autor: klaus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich hätte da mal eine Frage zum "Latch fürs RAM":

Gibt es eigentlich ein RAM (oder Flash oder EEPROM) zum Anschluss an den 
AVR oder 8051, das kein Latch braucht?
Ich mein jetzt natürlich ein statisches RAM (z.B. 8 oder 32kB) und kein 
DRAM oder SD oder so was.
Früher gabs mal einen IO-Baustein (8155 glaube ich), der wurde ohne 
Latch angeschlossen. Der hatte auch zusätzlich 128 Byte RAM, was mir 
aber doch schon zu wenig ist.

Gruß Klaus

Autor: Matthias Lipinsky (lippy)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>er hatte auch zusätzlich 128 Byte RAM, was m

Das kann man ja mit weniger als acht Bit Adressbreite ansprechen.
Somit kann der AD-Bus INTERN in 8155 (oder wie auch immer) gelatcht 
werden!

Dafür musste dann das ALE dort angekabelt werden...

Autor: Εrnst B✶ (ernst)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Flash / EEProms gibts zum seriell Anschliessen, z.B. Atmel-Dataflash 
über SPI, I²C EEProms etc.

Serielles Sram hab ich noch keins gesehen, man könnte aber mit nem CPLD 
auch normales Sram SPI-Tauglich machen.

/Ernst

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ klaus (Gast)

>ich hätte da mal eine Frage zum "Latch fürs RAM":

>Gibt es eigentlich ein RAM (oder Flash oder EEPROM) zum Anschluss an den
>AVR oder 8051, das kein Latch braucht?

Wenn du dich mit 256 Byte externem RAM begnügen kannst, dann geht jedes 
SRAM. Einfach nur die unteren Bits des Adressbus nutzen.

MfG
Falk

Autor: klaus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

@ Matthias L.:
ja, der hatte wohl <=256 Adressen, und brauchte für seine Ports nur 
<=128.
und dadurch brauchte der sogar nur 8 Adressleitungen. Und ja: die 
Adresse wurde intern gelatcht.

@ Ernst Bachmann:
Ich dachte allerdings mehr an ein paralleles RAM, anzuschließen "ganz 
normal" nur eben ohne Latch, also nix serielles.
(andererseits müsste ich darüber nochmal nachdenken, ich hab mich da 
schon seit langer, langer Zeit auf EEPROMs und RAMs für den 8051 
versteift und den Wunsch dann auf den AVR90S8515 "übertragen")

Danke erstmal an alle,
Klaus

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
klaus wrote:

> Gibt es eigentlich ein RAM (oder Flash oder EEPROM) zum Anschluss an den
> AVR oder 8051, das kein Latch braucht?

In der DDR gabs den U6516 (2kB) mit internem Adreßlatch.


Peter

Autor: klaus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nochmal Hi,

@ Falk Brunner:
ja, schon klar, aber das ist etwas wenig, 256 Bytes hat heute doch 
"jeder mittlere" AVR.
Ich dachte da eher an 8kB, oder warum nicht 64kB, ich hab' ja 16 
Adressen.
Und der Port für die "oberen" 8 Adressbits ist sowieso verloren (wenn 
ich die "RAM-Befehle" des AVR benutze).


oh, Mittagspause schon vorbei...

Gruß, Klaus

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ klaus (Gast)

>Ich dachte da eher an 8kB, oder warum nicht 64kB, ich hab' ja 16
>Adressen.

Adressbits!

Aber wo ist denn das Problem? So ein Latch ist klein nd billig und wird 
direkt angeschlossen. Fertig.

MFG
Falk

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.