Wird ARM der naechste "Volksprozessor"?

"Michael Krämer" schrieb:

danke für den Hinweis. Das ist ein weiterer Punkt für den HC(S)12(X). Und sein großartiges Debuginterface.

Servus

Oliver

--
Oliver Betz, Muenchen (oliverbetz.de)
Reply to
Oliver Betz
Loading thread data ...

Interessehalber: Was wäre deiner Meinung nach ein Assembler (uC) der nicht für manuelle Programmierung geeignet ist?

Gruß, Nick

--
Motor Modelle // Engine Models
http://www.motor-manufaktur.de
DIY-DRO -> YADRO
Reply to
Nick Müller

Hi,

8 Bit reicht für viele Anwendungen völlig aus. SiliconLabs: 1 Taktzyklus pro 1-Byte-Befehl, d.h. 100MIPS bei 100MHz Winbond: 4 Taktzyklen pro 1-Byte-Befehl, d.h. 10 MIPS bei 40MHz

Gruss Michael

Reply to
Michael Koch

"Michael Koch" schrieb im Newsbeitrag news:dncmm0$nb6$01$ snipped-for-privacy@news.t-online.com...

Nicht fuer die heutige Generation der Skript-Kiddies.

Da muss erst ein lokaler WebServer her, auf den ein Browser mit HTML und casacaded stylesheets zugreift, der eine XML Quelle per SOAP uber den TCPIP-Stack vom WebServer abruft, um durch eine 24 bit transparente Bitmap den Zustand von einem PortPin wahlweise als rote LED oder gruene LED anzuzeigen. Damit das schneller als 1 Hz blinkt, muss es ein 2GHz Rechner sein, der tranportabel wird, so bald eine Plutoniumbatterie drangeschnallt wird. Das auf dem WebServer von Phyton-Skript aufgerufene Programm das real den PortPin anfragt wird in Java geschrieben (weils so schoen portabel ist), ruft ueber JNI ein C Programm auf (weil Java keine Hardware anspechen soll), das in embeddetem Assembler (weil das Beispiel in Assembler geschrieben wurde, der Programmierer aber keinen Assembler kennt) auf die I/O Adresse zugreift, nicht ohne seine Daten in verwaltetem Speicher fuer parallele Prozesse zu halten.

Der Wahnsinn ist nicht zu stoppen.

--
Manfred Winterhoff, reply-to invalid, use mawin at gmx dot net
homepage: http://www.geocities.com/mwinterhoff/
de.sci.electronics FAQ: http://dse-faq.elektronik-kompendium.de/
Read 'Art of Electronics' Horowitz/Hill before you ask.
Lese 'Hohe Schule der Elektronik 1+2' bevor du fragst.
Reply to
MaWin

GNU gcc+binutils funktioniert zumindest für die Nachfolger (wir benutzen XScale, das sollte IIRC ARM9 sein) absolut Klasse und sollte auch die älteren ARM7 unterstützen.

cu Michael

--
Some people have no repect of age unless it is bottled.
Reply to
Michael Schwingen

Das wuerde bei mir auch nicht laufen. Es gibt Situationen, da muss man genau wissen, wieviele Taktzyklen ein Rechenvorgang dauert. D.h. es werden sich fast immer Assemblerteile im Code finden, auch wenn der Rahmen in C ist.

Gruesse, Joerg

formatting link

Reply to
Joerg

Hallo Manfred,

ROFL!

Allerdings sind die Kids auch schon mit anderen simplen Dingen ueberfordert. Was ein verpasster Interrupt erkannt wird, wissen die offenbar auch nicht. Gestern ist zum x-ten mal die Tastatur des Laptop eingefroren. Also wieder Batterie raus, Einschaltknopf ein paar Sekunden halten etc.

Die Tastatur dieses Newsgroup Rechners gab auch auf, aber das lag nicht an der Software. Sie mochte wohl doch kein Celebration Ale ...

Nach ordentlicher Reiningung aller Einzelteile mit Wasser tut sie nun wieder.

Gruesse, Joerg

formatting link

Reply to
Joerg

Hallo Michael,

Oder die ganze Chose eben wie gehabt analog erledigen, wenn moeglich. Manchmal war es schon fast traurig. Faelle, fuer die ganz klar ein uC praedestiniert gewesen waere, entwickelte ich meist analog. Fuer zwei Dollars bekommt man locker hundert Bauteile inklusive Bestueckung, aber ein uC mit Multiplier oder Divider haette mindestens das Doppelte gekostet. Waere TI nicht so hochpreisig in den Markt gestartet, haetten sie beim letzten Geraet einen Design-Win verzeichnet. Nun haben sie den

430F2013, doch er kam zu spaet.

Gruesse, Joerg

formatting link

Reply to
Joerg

Joerg schrieb:

[...]

für 1,5ct/Bauteil mußt Du aber schon einen gut ausgelasteten Chip-Shooter haben?

Servus

Oliver

--
Oliver Betz, Muenchen (oliverbetz.de)
Reply to
Oliver Betz

"Oliver Betz" schrieb im Newsbeitrag news: snipped-for-privacy@z1.oliverbetz.de...

Bei 35ct/Stunde chinesischem Stundenlohn? Wozu? Eher die Leute zu schnellerer Arbeit antreiben, dann geht's auch fuer 0.5ct.

--
Manfred Winterhoff, reply-to invalid, use mawin at gmx dot net
homepage: http://www.geocities.com/mwinterhoff/
de.sci.electronics FAQ: http://dse-faq.elektronik-kompendium.de/
Read 'Art of Electronics' Horowitz/Hill before you ask.
Lese 'Hohe Schule der Elektronik 1+2' bevor du fragst.
Reply to
MaWin

Korrekt! Zum Beispiel habe ich letzte Tage eine DDS fuer den R8C programmiert wo mich schon interessiert hat wie lange die Phasenaddition und die Ausgabe an den DA dauert.

Ich programmiere heutzutage vielleicht noch 2-5% in Assembler, aber das ist dann auch zwingend notwendig.

BTW: Ich hatte das erst in C gemacht. Wisst ihr was der Compiler aus einem

do { blabla } while(1);

macht?

Der hat wirklich eine 1 in ein Register geladen und dann verglichen. Argh!

Olaf

Reply to
Olaf Kaluza

Olaf Kaluza schrieb:

Ist das beim R8C nicht so wie beim M16C, dass nur die Kaufversion des Compiler den Code optimiert? Vermutlich ist die Erkennung von "while (1)" auch so eine Optimierung.

CU Christian

--
Christian Zietz  -  CHZ-Soft  -  czietz (at) gmx.net
WWW: http://www.chzsoft.com.ar/
PGP-Key-ID: 0x6DA025CA
Reply to
Christian Zietz

Also soweit ich weiss ist die Umsonstversion nur auf 64kb Codegroesse beschraenkt. Ich hatte aber auch garnicht mit diversen Optimierungen rumgespielt. So gesehen mag das PRoblem ja auch bei mir liegen. Allerdings will man ja auch nicht unbedingt Compiler haben die beim uebersetzen je nach Tagesform und Restcode eine andere Entscheidung ueber den erzeugten Code treffen. Jedenfalls nicht wenn die Ausfuehrungszeit von Bedeutung ist.

Mir ist dann eingefallen das auch C ja noch den goto Befehl kennt und ich hab den das erstemal seit 10 Jahren benutzt. :-] Das ergibt dann einen einfachen Sprungbefehl.

BTW: Es ist da sehr schoen das der Debugger von Renesas gleichzeitig Source und Code anzeigen kann. Da gehen einen so manches Licht wesentlich frueher auf als wenn man sich muehevoll durch extra Listnings arbeitet.

Olaf

Reply to
Olaf Kaluza

"Olaf Kaluza" schrieb

Hallo Olaf,

das hast du ihm doch auch gesagt oder ;-))

Das erinnert mich an ein altes Programm mit Matritzen Berechnungen, das ein Kollege (Mathematiker) geschrieben hatte. Wir hatten anschließend die "Performance" getestet und egal mit wieviel Schleifen wir das Programm aufgerufen hatten, es brauchte quasi keine Zeit. Nach der Analyse des Asembler codes stellte sich heraus, dass der Compiler optimiert hatte und die ganze Berechnungen durch eine Konstante ersetzt hatte. Das lustige war, er hatte recht.

Gruß Hans-Georg

Reply to
Hans-Georg Lehnard

"Joerg" schrieb im Newsbeitrag news:G02mf.37082$ snipped-for-privacy@newssvr11.news.prodigy.com...

Reply to
Hans-Georg Lehnard

"Joerg" schrieb

Hallo Joerg,

ich habe gerade einen PID-Regler für einen AT91M55xxx geschrieben, Die floating point Arithmetik ist eher lausig ;-)) Kann auch an der C-Bibliothek liegen. Aber mit den 32Bit kann man sich eine eigene fix point Arithmetik selbst bauen.

Konkret gesagt, die Fühlerwerte über eine Steinhard-Hard Gleichung in einer

100ms Regelschleife zu berechnen, war nicht möglich, ohne den Prozessor für alles andere lahm zu legen.

Gruß

Hans-Georg

Reply to
Hans-Georg Lehnard

Eine Constant Expression Evaluation zusammen mit einer Optimierung für den Sprung ist allerdings das, was heute jeder bessere Compiler auch ohne Datenflußanalyse beherrschen sollte, dazu wird einfach ein Const-Flag bei den Parametern der Ausdrücke mitgeführt. Selbst bei P-Code ist das einfach zu realisieren.

Wenn das Teil wirklich konstante Ausdrücke nicht auflöst, dann verstehe ich, warum die Japaner im Softwaremarkt nicht wirklich präsent sind ...

Gruß Oliver

--
Oliver Bartels + Erding, Germany + obartels@bartels.de
http://www.bartels.de + Phone: +49-8122-9729-0 Fax: -10
Reply to
Oliver Bartels

Das ist allerdings arm. Aber probier's mal mit for(;;) {}, das wird Gerüchten zufolge von primitiven Compilern sinnvoller umgesetzt.

--
http://www.mikrocontroller.net
http://rforum.andreas-s.net - Ruby Web Forum
Reply to
Andreas Schwarz

einer

Ich glaube aber eher, du meinst die Gleichung mit den zwei "t" anstatt den "d" :)

Woran hatte der Prozessor am meisten geknabbert, an den Logarithmen?

Hattest Du versucht, das zu optimieren und direkt (via Assembler) zu programmieren?

H=E4tte man es mit Lookups machen k=F6nnen, wenn die Kalibrations-Koeffizienten konstant sind und R sich nur in einem bestimmten ("vorhersehbaren") Bereich bewegt? Das ist nat=FCrlich nicht die flexibelste Art.

Gru=DF und sch=F6nes Wochenende allerseits, Mario

Reply to
Mario F. Duhanic

Naja arm ist es eher, wenn man mit einem Compiler nicht richtig umgehen kann.

Einfach mal -O5 als Optimierung einschalten, dann ist das auch alles wegoptimiert.

Irgend jemand hatte mal hier den Spruch geprägt: "Wer lesen kann ...."

Dirk

Reply to
Dirk Ruth

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.