Der Pressemeldungsabdruckdienst* aus der norddeutschen Triefebene hat doch tatsächlich jetzt etwas zur Sicherheitslücke bei der "ARM TrustZone" des RP2350 vermeldet:
Nö, das Security Subsystem ist ne Neueinführung für den Pico 2, der
ursprüngliche Pico hat das garnicht. "Ernsthaft" benutzt hat das
security subsystem meines Wissens keiner, außer für den Hacking
Wettbewerb. IMHO kein Grund für ein Redesign, ausser das das Security
subsystem beim nächsten milestone komplett rausfliegt.
Dabei sollte Hoffnung bestehen, daß auch das GPIO-Verhalten korrigiert
wird. Insofern gehört mein Hinweis zum Thema.
Wem das beschriebene GPIO-Verhalten stört kann einen externen Pull
benutzen, insofern kein Grund das Silizium ausserhalb der roadmap
anzufassen. Oder man verwendet ohnehin den reiferen Pico (ohne 2 und
Schnickschnack).
Meine Entscheidung: Solange die GPIO-Geschichte nicht in Ordnung gebracht worden ist, kommt mir das 2350 Teil nicht auf den Tisch.
Ob da auch das GPIO-Problem angegangen werden wird?
Den Informationen auf dem raspberry Forum zufolge (von mindestens einem direkten Mitarbeiter), denken/dachten sie nicht daran das zu ändern.
Könnte sich aber nun mit dem Trustzone Fall durchaus ändern.
Vieles kann der RP2040 auch. Aber das, was der RP2350 zusätzlich kann,
das kann er wirklich gut. ;-)
Wenn man es auch tatsächlich braucht.
Der 12-Bit ADC ist ja immer noch bescheiden: typ. 9,5 ENOB gegenüber 8,7 beim RP2040. Ein STM32L031 zum Beispiel bietet 11 ENOB.
Ohne SPI-Flash geht gar nichts und ohne Quarz ist die Taktfrequenz irgendwo zwischen Mond und Mars.
Die Tage hatte ich einen STM32G031 programmiert: richtige Timer, ADC mit guter Genauigkeit - Überabtastung/Mittelwertbildung muß nur eingeschaltet werden; UART mit internem Takt hinreichend genau. Richtig edel! Da ist mir aufgefallen, was die RP2040/2350 nicht können.
Keine Frage, die RP-Teile sind affenschnell, und die angeschlossenen SPI-Speicher so groß, daß man dem Raubkopierer gleich noch den Quelltext mitliefern kann ;-)
ohne Quarz ist die Taktfrequenz
irgendwo zwischen Mond und Mars.
Wenn man's genau braucht nimmt man einen Quarz.
Wenn man's mäßig genau braucht nimmt man einen Resonator.
Wenn man's gar nicht genau braucht nimmt man weder noch.
Wenn man aber gerne 24 PWM mit 12 Frequenzen hätte
Wenn man gerne 3 PIO mit 12 SM hätte
Wenn man gerne 16 DMA hätte
Wenn man gerne HSTX hätte
Wenn man gerne mehr als ein ½ Megabyte RAM hätte
Wenn man gerne ein paar Kerne… ;-)
Interessant ist die Ankündigung, daß es da wohl neues Silizium geben
wird.
In dem Artikel findet sich keine konkrete "Ankündigung" einer neuen Hardware-revision. Da steht lediglich, das das Erata ergänzt wird.
Im Originaltext liest man:
"Our aim was to smoke out weaknesses early, so that we could fix them before RP2350 became widely deployed in secure applications."
"could fix" würde ich jetzt nicht mit "will fix" gleichsetzen.
Man beachte des Weiteren, das der Hack-Wettbewerb auf Ende 2025 verlängert wurde (Ob es da neue Chips vor Ende des Wettbewerbes geben wird?) und jeder der Hacks einen direkten Zugriff auf die Hardware mit speziellem Laborequipment voraussetzt. Bspw. für die "instruction fault with laser injection ".
Zukünftige Chips sollen gegen Angriffe gehärtet sein, wobei die angedeuteten Gegenmassnahmen eher nach Neudesign und Architekturänderungen klingen als nach "simpler" (Masken-)revision.
IMHO sind die ganzen Spekulationen über zukünftige Versionen wertloses Marketing-Getöse. Wissenswertes findet sich dagegen in der detailierten Beschreibung der Angriffe in dem bereits erwähnten (Original-)Artikel von Upton.
Die Tage hatte ich einen STM32G031 programmiert: richtige Timer, ADC mit
guter Genauigkeit - Überabtastung/Mittelwertbildung muß nur
eingeschaltet werden; UART mit internem Takt hinreichend genau. Richtig
edel! Da ist mir aufgefallen, was die RP2040/2350 nicht können.
Ach ja? Kann dein STM32G031 ein Display mit einigermaßen augenfreundlicher Auflösung ansteuern? Nicht? Schon geloosed...
Kann es auch "ungewöhnliche" SPI-Geschichten, die man braucht um wirklich hochwertige ADCs hinreichend schnell zu abzufragen? Nicht? Schon geloosed...
Usw. usf.
Soll heißen: Du siehst das alles ausschließlich aus deinem Blickwinkel. Also dem einer klitzkleinen Kampfameise in Lauerstellung.
Mehr RAM, HSTX, und damit sind z.B. mehr Anwendungen möglich, mit denen man Monitore ansteuert. Oh, und wenn es die B-Version ist, 48 statt 30 I/O-Pins.
8kB RAM, der RP2040 hat 264kB. Es gibt schon ein paar sehr nette Sachen in dem Teil und für den Preis kann man eigentlich nicht meckern. Auch empfinde ich das SDK um Längen besser als das was STM da seit Jahren abliefert.
Allerdings habe ich letztens auch schmerzlich einen Timer mit Capture gesucht. Naja, jetzt übernimmt das eine der PIO Statemachines.
Aber wie immer, es kommt auf den Anwendungsfall an was man nimmt.
Wie schafft es eigentlich Raspberry, deren Zielmarkt "Enthusiasten" sind, einen Mikrocontroller herzustellen, der so viel besser ist (sein soll) als das was die Branchenriesen so produzieren?
Ja, die Integration von Flash und Analog-Performance (ADC, Takt) sind wohl die komplexeren Aspekte bei der MCU-Entwicklung, während z.B. die ARM-Kerne praktisch Plug&Play sind.
Sieht man auch bei den ESP32: Massig RAM und CPU-Leistung, aber kein Flash und ADC nicht toll.
Der 16KiB große 1cycle XIP hat mich bis jetzt noch nicht enttäuscht.
Ja funktioniert sicherlich, hängt wie immer von der Anwendung ab ob das reicht. Die großen STM32 haben ebenfalls einen Flash-Cache zusätzlich zum parallel angebundenen Flash.
Die Package-Größe ist auch so eine Sache: Der RP2350 ist 7×7mm. Die STM32 gehen bis WLCSP 1.7×1.42mm runter - inklusive Flash!
Wie schafft es eigentlich Raspberry, deren Zielmarkt "Enthusiasten"
sind, einen Mikrocontroller herzustellen, der so viel besser ist (sein
soll) als das was die Branchenriesen so produzieren?
Er ist hauptsächlich amerikanisch: größer, breiter, schneller.
Aber in vielen Details ist er schlechter. Der ADC ist ungenauer die Timer haben weniger Funktionen und die Stromaufnahme taugt z.B nicht, um daraus einen Taschenrechner odet einen Batteriebetriebenen Sensor zu bauen (der Monate laufen soll).
Und ob er so lange geliefert wird, wie man von klassischen uC gewohnt ist, muss sich erst noch zeigen.
Diese Informationen sind vom Hersteller schon längst veröffentlicht
worden.
Andere Hersteller versprechen ebenfalls lange Lieferbarkeit für manche Produkte. Die versprochene Verfügbarkeitsdauer vom RP2350 ist länger als die Firma überhaupt existiert... Der STM32F1 (von 2007) hat die vom RP2350 versprochene Lebenszeit fast erreicht, und es werden noch mindestens weitere 10 Jahre versprochen (bis 2035, also dann 28 Jahre). Für die Automotive MCUs werden direkt 20 Jahre versprochen.
Der ADC sollte nicht wirklich der Hauptgrund sein, sich für einen RP2xxx
zu entscheiden.
Ja klar, das ist der Grund:
…für 99ct
Meine Meinung: man soll sich durch das Preisschild nicht den Blick auf das Wesentliche verstellen lassen.
Mir geht es weder darum, einen RP2xxx durch einen STM32G031 zu ersetzen, noch darum einen STM32H7xxx durch einen RP2xyz.
Ich werde es begrüßen, wenn beim RP2350/54 zumindest der GPIO-Teil geflickt und nicht nur durch unbedarfte Anwender schöngeredet wird. Solange kein brauchbarer Schutz zum Auslesen des Programmes besteht, ist der kommerzielle Einsatz dieser Controller in Stückzahlen nicht zu empfehlen.