Forum: Mikrocontroller und Digitale Elektronik mikrocontroller ohne integriertem Flash- Speicher


von Manuel O. (idecmos)


Lesenswert?

Hi,
gibt es eigentlich einen Mikrocontroller der keinen integrierten Flash- 
Speicher hat und trotzdem schnell ist. Bei dem man dann eben Flash 
Speicher extern hinzufügt

von Eumel (Gast)


Lesenswert?

Manuel O. schrieb:
> Mikrocontroller der keinen integrierten Flash-
> Speicher hat und trotzdem schnell ist

Dann ist es kein Mikrocontroller mehr.

von Stefan S. (stefan2013)


Lesenswert?

Jeder Mikroprozessor?

: Bearbeitet durch User
von Magnus M. (magnetus) Benutzerseite


Lesenswert?

Eumel schrieb:
> Dann ist es kein Mikrocontroller mehr.

Ich werfe da mal eben die alte 8051 Familie in die Arena...

von Vn N. (wefwef_s)


Lesenswert?

Eumel schrieb:
> Dann ist es kein Mikrocontroller mehr.

Unfug, ein Microcontroller ist definiert als Prozessor + Peripherie, 
Speicher am selben Chip ist optional, wenn auch heute die Regel.

Magnus M. schrieb:
> Ich werfe da mal eben die alte 8051 Familie in die Arena...

M.W. hatte der 8051 sehr wohl den Programmspeicher on Board, externen 
Speicher hatte der 8031. Ich kann mich aber auch irren, bin zu jung um 
das genauer zu wissen.

von Magnus M. (magnetus) Benutzerseite


Lesenswert?

vn nn schrieb:
> M.W. hatte der 8051 sehr wohl den Programmspeicher on Board, externen
> Speicher hatte der 8031.

Die Dinger haben allesamt einen /PSEN Pin. Liegt Dieser auf High, wird 
der Code vom externen Speicher ausgeführt.

von Funko B. (funkobongrip)


Lesenswert?

Manuel O. schrieb:
> Hi,
> gibt es eigentlich einen Mikrocontroller der keinen integrierten Flash-
> Speicher hat und trotzdem schnell ist. Bei dem man dann eben Flash
> Speicher extern hinzufügt

Es gibt z.B. in der LPC43xx Serie welche ohne internen Flash.

von Axel S. (a-za-z0-9)


Lesenswert?

Manuel O. schrieb:

> gibt es eigentlich einen Mikrocontroller der keinen integrierten Flash-
> Speicher hat und trotzdem schnell ist. Bei dem man dann eben Flash
> Speicher extern hinzufügt

µC ohne Flash waren jahrelang (Jahrzehnte?) der Normalfall. Weil es 
technologisch nicht so einfach ist Flash und schnelle Digitaltechnik auf 
einem Chip zu vereinen. Beispiele wären die schon angesprochene Intel 
8051 Familie, aber auch der 68HC11 von Motorola und der Z8 von Zilog. 
Allerdings gab es da immer auch Familienmitglieder mit internem ROM 
(maskenprogrammiert).

Ob die schnell waren, hängt von deiner Definition dieses Wörtchens ab. 
Aber extern angebundenes Flash (damals eher EPROM) ist normalerweise 
(deutlich) langsamer als internes. Mehr als 2 MIPS waren damit kaum 
herauszuholen.

Auch heute ist externes Flash eher langsam mit 55 oder 90ns 
Zugriffszeit. Für einen ATmega @ 20MHz wäre das schon zu langsam. Alles 
was schneller ist hat entweder Cache und/oder kopiert die Firmware 
erstmal aus dem Flash in ein schnelleres RAM.


XL

von Manuel O. (idecmos)


Lesenswert?

Zuerst einmal, danke für die schnelle antworten. ich wer_de mir jetzt 
über ebay einen intel 8031 holen. ich habe nachgeschaut und der 8031 hat 
keinen flash. Der 8051 hat dafür flash. kann der 8031 überhaupt einen 
modernen speicher verwenden und welchen speicher soll ich überhaupt am 
besten verwenden.

von Lothar (Gast)


Lesenswert?


von (prx) A. K. (prx)


Lesenswert?

Manuel O. schrieb:
> gibt es eigentlich einen Mikrocontroller der keinen integrierten Flash-
> Speicher hat und trotzdem schnell ist.

Atmel AT91RM3400, ein 66MHz ARM7. Intern 96KB RAM und Boot-ROM, Programm 
wird aus seriellem Flash ins RAM geladen. Gibts bei CSD.

Schnell ist der olle 8031 nicht wirklich.

: Bearbeitet durch User
von tux (Gast)


Lesenswert?

bei Zilog die Z8603 Z8613 bzw. die ostdeutschen U882/4 derivate

http://john.ccac.rwth-aachen.de:8000/patrick/Z8emu.htm

von Fritz (Gast)


Lesenswert?

Was für tiefere Gründe hat es eigentlich für dich, dass du unbedingt 
einen externen Speicher verwenden willst?

von snyder (Gast)


Lesenswert?


von Markus (Gast)


Lesenswert?

at91r40008

75MHz ARM7TDMI 256kB RAM

Kein Boot ROM, Flash muss parallel angebunden werden.

von Stefan (Gast)


Lesenswert?

Mir fällt da spontan noch der Siemens 80C535 ein, sowie der Intel 80186. 
Wobei ich unsicher bin, ob das bisschen Peripherie des 80186 ausreicht, 
um ihn als Mikrocontroller bezeichnen zu können.

von Georg G. (df2au)


Lesenswert?

Magnus M. schrieb:
> Die Dinger haben allesamt einen /PSEN Pin. Liegt Dieser auf High, wird
> der Code vom externen Speicher ausgeführt.

Fast richtig. Du meinst den /EA Pin. Wenn der beim Reset auf Low liegt, 
wird der externe Programm Speicher bedient.

von Stefan (Gast)


Lesenswert?

> kann der 8031 überhaupt einen modernen speicher verwenden

Sicher doch. Der Speicher muss einen paralleles Interface haben. 
Geschwindigkeit ist sicher kein problem.

Schnell ist der Chip allerdings nicht. Er wird typischerweise mit 12Mhz 
getaktet und braucht 12 Takte pro Befehl. Im Vergleich dazu wird ein 
ATXmega typischerweise mit 32Mhz getaktet und mach einen Befehl pro 
Takt. Also Pi mal Daumen 32 mal so schnell.

Die Frage ist: Welche Geschwindigkeit brauchst Du denn? Schnell ist 
relativ. Es gibt auch sinnvolle Anwendungen, die mit 32khz oder gar noch 
weniger prima laufen.

> und welchen Speicher soll ich überhaupt am besten verwenden.

Das kommt ganz auf deinen Anwendungsfall an. Flash Speicher sind z.B. 
dafür bekannt, irgendwann vergesslich zu werden. Roms halten ewig, 
soweit ich weiß, sind aber nur einmal programmierbar. Es gibt auch 
batteriegepufferte statische Rams (teils sogar mit eingebauter 
Batterie), die hatte ich sehr gerne in der Entwicklungsphase verwendet, 
als es noch keine Flash Speicher gab.

von Georg G. (df2au)


Lesenswert?

Stefan schrieb:
> Schnell ist der Chip allerdings nicht. Er wird typischerweise mit 12Mhz
> getaktet und braucht 12 Takte pro Befehl.

Moderne Mitglieder der Familie brauchen nur einen oder zwei Takte pro 
Befehl. Die Taktfrequenz liegt auch mittlerweile deutlich höher.

Ein Vorteil der MCS51 Reihe ist, dass gute Werkzeuge seit Ewigkeiten 
verfügbar sind. Der Kram ist alt aber ausgereift. So etwas liebt die 
Industrie abseits von Klicki-Bunti.

von Georg G. (df2au)


Lesenswert?

Stefan schrieb:
> Intel 80186

Bitte nicht den! Da haben sich schon viele Leute die Zähne dran 
ausgebissen, den zum Laufen zu bekommen. Da gibt es bessere Konzepte, 
das ist nur ein 8086 mit etwas drum herum.

von Reinhard Kern (Gast)


Lesenswert?

Manuel O. schrieb:
> und welchen speicher soll ich überhaupt am
> besten verwenden.

Auf jeden Fall einen, den du programmieren kannst, denn für einen 
externen Programmspeicher brauchst du ein Programmiergerät. Und du 
kannst verwenden, was an den Prozessor passt und dein Gerät beherrscht. 
Elektrische löschbare Speicher wie Flash sind unbedingt vorzuziehen, 
denn UV-löschbare Eproms wie früher üblich sind sehr unpraktisch und ein 
Löschgerät brauchst du auch noch.

Gruss Reinhard

von W.S. (Gast)


Lesenswert?

Manuel O. schrieb:
> Bei dem man dann eben Flash Speicher extern hinzufügt

Klar, gibt es auch heutzutage. Z.B. Fujuítsu MB91101, ist ein 32 Bitter 
mit 2K Instruction cache. Dieses Feature findest du auch bei den 
modernen ARM's und Cortexen selten bis nie - jedenfalls in der 50..100 
MHz Klasse. Deswegen zieht so einer an den meisten anderen 32 Bittern 
glatt vorbei (bei vergleichbarer Taktfrequenz).

W.S.

von nimm was aktuelles (Gast)


Lesenswert?

Stefan schrieb:
> Mir fällt da spontan noch der Siemens 80C535 ein

Den gibt es aber schon länger nicht mehr.

Manuel O. schrieb:
> ich wer_de mir jetzt
> über ebay einen intel 8031 holen. ich habe nachgeschaut und der 8031 hat
> keinen flash. Der 8051 hat dafür flash.

Wie oben schon geschrieben, kann der interne Programmspeicher disabled 
werden. Du kannst dann jeden 8051 mit vollwertigen Ports 0 und 1 auch 
mit externem Speicher verwenden. Der Vorteil ist ein aktuelles Derivat, 
höhere Taktraten und weniger Takte pro Maschinenbefehl.

von Olaf (Gast)


Lesenswert?

> gibt es eigentlich einen Mikrocontroller der keinen integrierten Flash-
> Speicher hat und trotzdem schnell ist.

Renesas SH7262/4

Die haben 1MByte internes Ram und laden beim Reset ihr Programm aus 
einem externen Datenflash.

Nachteil: Nach einem Reset kann es laenger dauern bis ein Controller 
etwas macht.

Vorteil: Die Anwendung kann selber entscheiden ob sie viel Ram verwendet 
oder der Ram als Programmspeicher genutzt wird. Es koennen Programmteile 
nachgeladen werden. Man hat viel Ram ohne sich mit externen Bausteinen 
rumaergern (Layout, EMV, Geschwindigkeit) zu muessen.
Das Programmieren damit macht sehr viel mehr Spass als mit 
herkoemmlichen Controllern weil man mehr Freiheiten hat.

Olaf

von Frank K. (fchk)


Lesenswert?

Manuel O. schrieb:
> Hi,
> gibt es eigentlich einen Mikrocontroller der keinen integrierten Flash-
> Speicher hat und trotzdem schnell ist. Bei dem man dann eben Flash
> Speicher extern hinzufügt

http://www.nxp.com/documents/data_sheet/LPC4350_30_20_10.pdf

Kann von externem NOR-Flash, SPI-Flash, QSPI-Flash (SPI mit 4 Bit 
Datenbusbreite), USB, Seriell booten und hat 264k RAM eingebaut.

fchk

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
Noch kein Account? Hier anmelden.