Forum: Mikrocontroller und Digitale Elektronik Kosten/Aufwand und Nutzen µC von 8 auf 32 bit erweitern


von Lutz (Gast)


Lesenswert?

Hallo,

ich habe mal eine rein theoretische Frage: Welche 
Kosten/Aufwand/Probleme entstünden für einen µC-Hersteller, wenn er bei 
einen vorhandenen 8-bitter einfach alle Register vergrößert, z.B. auf 32 
Bit. Und welchen Performancevorteil könnte man dadurch erreichen? Also 
einfach einen AVR auf 32 Bit "pimpen". Das es so blauäugig wohl nicht 
geht, ist wohl klar.

Wie gesagt, nur eine rein theoretische Frage, interessehalber ohne 
irgendwelchen Hintergrund. Das es die AVR32 gibt (und sie außer dem 
Namen wohl nicht viel mit den AVR gemeinsam haben) ist mir bekannt.

von AKKS (Gast)


Lesenswert?

Ich würde sagen vierfache Länge und vierfache Breite = sechzehnfacher 
Hardwarepreis.

von (prx) A. K. (prx)


Lesenswert?

Ein ziemlich sinnloses Szenario, da ein solcher 32-Bitter nur 32-Bit 
Datentypen kennen würde, neben anderem Unfug bei der Adressierung von 
Speicher. Entsprechend wenig sinnvoll wäre eine entsprechende Schätzung.

von (prx) A. K. (prx)


Lesenswert?

AKKS schrieb:

> Ich würde sagen vierfache Länge und vierfache Breite = sechzehnfacher
> Hardwarepreis.

Welche Länge?

Die Skalierung ist verschieden, je nachdem wo man hinschaut. Register, 
Datenbusse etc skalieren linear, Adressbusse weniger als linear, 
Multiplizierer quadratisch, Dekoder und Ablaufsteuerung überhaupt nicht, 
usw.

von (prx) A. K. (prx)


Lesenswert?

Lutz schrieb:

> Und welchen Performancevorteil könnte man dadurch erreichen?

Die Verarbeitung von 8- oder 16-Bit codierten Texten würde erheblich 
darunter leiden, dass ohne zusätzliche Investition nur 32-Bit Daten 
(oder mehr) am Stück verarbeitet werden können.

von Chris (Gast)


Lesenswert?

Soweit ich das sehe ist die Sache total anders.
8bit:
Lesen aus Flash kein Problem (früher war das Limit 10Mhz, heute 20Mhz)
32bit:
eine 32bit CPU mit 10 oder 20Mhz ist nicht Konkurrenzfähig.
Es muß ein oder mehrere PLL her, die externe Peripherie hat einen
anderen Takt als die CPU core, auch für den Flash muß ein Cache her usw.
Aus einer 8bit eine 32bit zu machen ist kein Problem.
Wenn du konkrete Beispiele haben willst,
Picoblaze sowie Microblaze, sind fast dieselben Prozessoren, der eine 
8bit,
der ander 32bit. Da gibt es etliche Resourcenbeispiele usw, kannst dich
ja mal bei xilinx umschauen in den AN. Ansonsten, schau dir den 
Pacoblaze
sowie den aeMB oder andere clone an, was da unterschiedlich ist.
In Silizium sind es etwa 30% mehr, aber das ist kein Kostenfaktor mehr.

von AKKS (Gast)


Lesenswert?

A. K. schrieb:
> Welche Länge?

Na wenn der Bus um die Ecke geht.

Nimm das nicht ganz so ernst. Ich nehme die Frage ja such nicht ganz so 
ernst.

von Frank K. (fchk)


Lesenswert?

Wenn man sich aktuelle Fertigungstechnologien anschaut und 
beispielsweise einen Atmega 644 mit einem LPC1100 vergleicht (beide 
kosten in etwa da gleiche, aber der LPC1100 ist ein 32 Bit Cortex M0 mit 
50 MHz), dann merkt man, dass die benötigte Chipfläche inzwischen bei so 
etwas eher von den Pads begrenzt wird als von der Schaltung. Die 
Anschlüsse müssen ja nach außen gebondet werden, und die Fläche für das 
Bondpad lässt sich eben nicht verkleinern, denn der Bonddraht hat einen 
gewissen Durchmesser, und er muß auch auf dem Pad halten. Damit kann man 
den Chip nicht mehr beliebig klein machen, und damit sind die 
zusätzlichen Resourcen für 32 statt 8 Bit auch unerheblich. Ergo macht 
es auch immer weniger Sinn, einen 8 Bit Controller zu nehmen.

von Olaf (Gast)


Lesenswert?

Ich denke man kann das nicht so vereinfachen. Oder jedenfalls
nicht Generell von CPUs auf Microcontroller uebertragen.

Ein R8C ist ja z.B eine 16bit CPU mit 8Bit Datenbus.
Bei einer CPU wuerde man da sofort anfangen zu jammern, wieso
die so lahm sei, schliesslich ist der Speicherzugriff einer der
wichtigsten Punkte. (vgl 68008)
Bei einem kleinen Controller sieht man aber sofort den Vorteil
jetzt mit 16bit Registern arbeiten zu koennen weil viele Datentypen
grosser sind als 8Bit und sehr viel mehr atomar ablaeuft.

Und bei einer CPU sieht man auch sofort den Nachteil das sich der
Code bei den breiten CPUs aufblaeht. Das kann man bei einem
Microcontroller auch zumindest begrenzen. Man schaue sich z.B
mal einen M16C an der einen erstaunlich kompakten Code liefert,
aber zu dem Preis nur schlecht mit 32Bit und damit grossem Speicher
klarzukommen.

Mein Eindruck ist das man beim Uebergang von 8 auf 16Bit stark 
profitiert, beim Uebergang von 16 auf 32Bit nur noch geringe Vorteile 
hat.

Oh und unbhaengig von der Leistung, es macht einfach mehr Spass 
Controller zu programmieren die mehr als 8Bit haben. :-)

Olaf

von Sven S. (Firma: Litrade.de) (ssalbach)


Lesenswert?

Wie wäre es, es wi beim handy zu lösen...und einfach eine LED aufblitzen 
zu lassen....
Das sollte lange halten...Fänchen sind natürlich auch super..
Oder nen Magnetschalter der ein rot/weißes Papstückchen in einem Rahmen 
verschiebt..und das gleich noch fluoreszierend :-) Dann sieht mann es 
auch am Abend vorher schon wenn man den Raum abends betritt und das 
Licht noch nicht an ist

von Lutz (Gast)


Lesenswert?

Um 15 Uhr schon voll oder voll im Thread vergrüßt???

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.