Ich habe die RP1-Dokumentation gelesen, damit Sie das nicht tun müssen.

Grundlagen des RP1 Titelbild

Eines der bemerkenswertesten Merkmale des neuen Raspberry Pi 5 ist der RP1 - der erste selbst entwickelte Siliziumchip in einem Raspberry Pi-Flaggschiffprodukt. In diesem Artikel möchte ich auf die wesentlichen Merkmale des RP1 eingehen und Ihnen erklären, was ihn so revolutionär macht.

Leider kann dieser Artikel nicht das Äquivalent eines "Alles über RP1" sein, da die vollständige Dokumentation noch nicht veröffentlicht wurde.

Stattdessen haben sie eine 90-seitiger Entwurf eines Datenblatts in dem einige der Grundlagen von RP1 erläutert werden.

Raspberry Pi 5 Komponenten

Beginnen wir also mit der Geschichte von RP1.

Geschichte

RP1 ist also das am längsten laufende interne Siliziumprojekt bei Raspberry Pi. Deshalb wird es auch "RP" genannt.1“.

In der Ankündigung für den Raspberry Pi 5 schrieb Eben Upton: "RP1 wird seit 2016 entwickelt und ist mit Abstand das am längsten laufende, komplexeste und (mit $15 Millionen) teuerste Programm, das wir hier bei Raspberry Pi jemals durchgeführt haben."

Es ist die die am längsten laufende, am unübersichtlichstenund am teuersten Programm.

Es ist jedoch nicht das erste selbst entwickelte Silizium, das Raspberry Pi veröffentlicht hat. Dazu muss man den RP2040 heranziehen, den Mikrocontroller des Pico und des Pico W. Der RP2040 wurde also 2021 auf den Markt gebracht, obwohl das Programm eigentlich erst später begann.

Intern wurde der RP1 bei Raspberry Pi von allen als "Projekt Y" bezeichnet.

Schauen wir uns also an, was es mit dem RP1 auf sich hat.

Eigenschaften

Bei den Vorgängermodellen waren im Grunde alle E/A in den Hauptprozessor integriert.

Die Hauptidee hinter RP1 ist also die Trennung der E/A vom Hauptprozessor - in diesem Fall dem Broadcom BCM2712. Es handelt sich also um eine Southbridge, die den Großteil der E/A-Funktionen des Raspberry Pi 5 übernimmt.

Dies hat eine Reihe von Auswirkungen - eine davon ist die Möglichkeit, kleinere Geometrieprozesse für den Hauptprozessor anzubieten. Der BCM2712 befindet sich, wie wir bereits berichtet haben, in einem 16-nm-Prozessknoten.

In der Zwischenzeit befindet sich RP1 selbst im 40nm-Prozessknoten.

Dadurch kann sich der Hauptprozessor auch auf komplexere Aufgaben konzentrieren.

Das BCM2712 übernimmt also die schnellsten Schnittstellen, während die langsameren Schnittstellen dem RP1 überlassen werden. Ich werde das im nächsten Abschnitt näher erläutern.

Aber die beiden Chips - RP1 und BCM2712 - arbeiten zusammen und sind über einen 4-Lane-PCIe-2.0-Bus verbunden. Es ist eine schnelle Verbindung, aber es gibt zwangsläufig eine gewisse Latenz zwischen den beiden.

Die PCIe-Lanes zwischen RP1 und BCM2712
Die PCIe-Lanes zwischen RP1 und BCM2712.

Kommen wir nun zu den internen Spezifikationen des RP1.

Ich habe unten ein Bild des Diagramms des RP1 als Referenz eingefügt.

Der RP1 enthält also zwei Prozessorkerne, die auf der Arm Cortex-M3-Architektur basieren (Cortex M3 0 und Cortex M3 1 in den roten Kästen oben links im Diagramm).

Außerdem verfügt er über einen Acht-Kanal-DMA-Controller, mit dem der Chip Datenübertragungen für bis zu acht verschiedene Peripheriegeräte gleichzeitig verwalten kann.

Der Chip verfügt über drei integrierte PLLs: 2 fractional-N PLLs zur Erzeugung unabhängiger Video- und Audiotakte und 1 Integer PLL zur Erzeugung von Systemtakten.

Der RP1 verfügt außerdem über einen Analog-Digital-Wandler (ADC) mit 12-Bit-Auflösung und fünf Eingängen, der mit 500 kSPS arbeitet und über vier externe Eingänge sowie einen internen Temperatursensor verfügt.

Wenn Sie sich das Diagramm unten ansehen, werden Sie unten links ein gelbes Kästchen mit der Aufschrift "Shared SRAM 128bit 64kB) 4x 4kx32" bemerken. Dies bezieht sich auf die Tatsache, dass ein 64kB großer Teil des Speichers sowohl für den BCM2712 als auch für den RP1-Busmaster zugänglich ist.

Dieser Speicher besteht aus vier separaten Blöcken, von denen jeder 4 Kilobyte groß ist und Datenübertragungen von jeweils 32 Bit umfasst.

Schließlich verfügt der RP1 über Zeitbasisgeneratoren, die Sie für die DMA-Taktung konfigurieren können. Sie sind in erster Linie dazu da, DMA zu beschleunigen und GPIO-Eingangsereignisse zu stabilisieren.

Hier ist das Bild der internen Architektur des RP1 aus dem Datenblatt:

Architektur des RP1
Kredit: RP1-Datenblatt.

In diesem Bild können Sie also sehen, wie der RP1 im Allgemeinen funktioniert, aber Sie können auch sehen, welche peripheren Funktionen er steuert.

Peripherie-Steuerungen

Auf der rechten Seite sehen Sie, von unten beginnend, Folgendes: GPIO, USB 3 PHY, USB 2 PHY, USB 3 PHY, USB 2 PHY, MIPI DPHY, MIPI DPHY, VDAC, und RGMII.

RP1 steuert also die GPIO-Pins und die zugehörigen Peripherieschnittstellen: SPI, UART, I2C, PWM, I2S. Er steuert auch den Delta Sigma PWM-Audioausgang, aber man kann kein typisches analoges Audio erhalten, da der Raspberry Pi 5 keine Audiobuchse hat.

Er steuert auch die USB 2.0- und USB 3.0-Anschlüsse - jeder Host-Controller verwaltet einen nachgeschalteten USB 2.0- und USB 3.0-Anschluss. Wie es im Datenblatt heißt, bedeutet dies, dass "jeder Downstream-Port über eine unabhängige und uneingeschränkte Bandbreite verfügt".

Laut Liam Fraser: "Aufgrund der Bandbreite des PCIe-Links sollten wir in der Lage sein, beide USB-3-Ports mit voller Bandbreite zu betreiben." Das ist eine enorme Verbesserung gegenüber dem Raspberry Pi 4!

PCIe von RP1 nach USB
Was für schöne Gassen.

Der RP1 ist für die MIPI-Transceiver zuständig, die über vier Lanes verfügen und DSI und CSI-2 unterstützen.

Er verfügt über einen 3-Kanal-Video-Digital-Analog-Wandler, der PAL/NTSC und VGA unterstützt.

Und schließlich ist es auch die Aufgabe des RP1, den Gigabit-Ethernet-MAC zu steuern.

An dieser Stelle werden Sie sich vielleicht über PIO wundern. Leider gibt es eine Menge Informationen, die wir im Moment nicht haben, weil sie noch nicht alle Unterlagen für das RP1 veröffentlicht haben.

Was wir wissen, ist, dass der PIO-Block im RP1 ein wenig anders funktioniert als im RP2040. So gibt es zwar einen PIO-Block mit vier Zustandsautomaten (wie im RP2040), aber er hat die doppelte FIFO-Tiefe. Sehen Sie sich diesen Kommentar von Luke Wren an:

Das ist also das, was wir im Moment über periphere Kontrollen wissen.

Bleiben Sie dran, denn im Laufe der Zeit werden sie mit Sicherheit eine Menge Informationen über das RP1 herausgeben.

Nachteile

Wir haben bereits über einige der coolen Dinge des RP1 gesprochen, aber es ist nicht nur ein Zuckerschlecken.

Offensichtlich funktioniert die PIO des RP1 anders als die des RP2040. Sehen Sie sich diesen Kommentar von Phil an:

Ein weiterer Nachteil der Trennung des E/A-Controllers vom Haupt-SoC ist, dass eine gewisse Latenzzeit entsteht.

Laut Datenblatt beträgt diese Latenzzeit "typischerweise 1μs bei der Design-Link-Breite und -Geschwindigkeit", was "für Anwendungen, die auf schnelle, aber zeitnahe Schreibsequenzen angewiesen sind, z. B. Bit-basierte Protokolle, oder Anwendungen, die schnell auf die Zustandsänderung eines Pins reagieren müssen, ein Problem darstellen könnte."

Wie sieht die Zukunft aus?

Eine der großen Fragen ist, ob Raspberry Pi den RP1 separat verkaufen wird oder nicht. Immerhin, sie verkaufen RP2040 separat. In einem Kommentar vor ein paar Tagen gab Alasdair Allan von Raspberry Pi die folgende Antwort:

Natürlich könnte das eine Ablenkung sein, oder es könnte eine echte Antwort sein, dass wir keine separate RP1 erwarten sollten. Bei dieser Frage wird nur die Zeit es zeigen.

Meiner Meinung nach wäre es fantastisch, wenn sie das RP1 separat verkaufen würden.

Eine der interessantesten Alternativen kommt jedoch von Jeff Geerling:

Vielleicht wird uns Raspberry Pi irgendwann beides bieten - einen separaten RP1-Chip und eine PCIe-Karte!

Wir müssen abwarten und sehen.

Gewinnspiel & Newsletter

Wir wissen, wie frustrierend es ist, bis zum 23. Oktober auf einen Raspberry Pi 5 warten zu müssen.

Deshalb wollten wir Ihnen die Möglichkeit geben, so schnell wie möglich mit einem solchen Gerät herumzuspielen.

Also haben wir einen Wettbewerb ins Leben gerufen: Was ist die verrückteste Sache, die Sie sich für den Raspberry Pi 5 ausdenken können?

Raspberr Pi 5-Wettbewerb

Vorausgesetzt, Ihre Idee macht sie nicht kaputt, können Sie uns Ihre Idee schicken und wir setzen sie auf unserer um - und schreiben einen Artikel darüber!

Wir geben den Gewinner hier und auf buyzero.de am 23. Oktober.

Die Gewinner-Idee (die von uns bestimmt wird) gewinnt ein komplettes Raspberry Pi 5-Kit - einschließlich eines 27W USB-C Power Delivery (PD) Netzteils, eines Raspberry Pi 5-Gehäuses, einer SD-Karte und eines Raspberry Pi 5. Alles mit kostenlosem Versand innerhalb der EU.

Der Zweitplatzierte gewinnt einen Raspberry Pi 5 mit kostenlosem Versand innerhalb der EU.

Schicken Sie also Ihre Ideen ein - weitere Informationen finden Sie unter dem folgenden Link: GEWINNEN SIE EINEN KOSTENLOSEN RASPBERRY PI 5!

Schlussfolgerung

Da haben Sie es also: das Wesentliche von RP1.

Wie ich bereits zu Beginn betonte, können sich einige dieser Informationen noch ändern. Wir werden auf jeden Fall einen neuen Artikel veröffentlichen, sobald Raspberry Pi eine ausführlichere Dokumentation herausgibt.

In der Zwischenzeit sollten Sie sich einige unserer anderen Artikel über den Raspberry Pi 5 ansehen:

Möchten Sie, dass das RP1 separat verkauft wird? Oder vielleicht ein PCIe-Board wie Jeff Geerling?

Teilen Sie uns dies in den Kommentaren unten mit!

1 Kommentar

  1. Veröffentlich von Renato am Oktober 15, 2023 um 5:36 pm

    Es ist interessant, den Hauptprozessor von allen E/S-Peripheriegeräten des Hauptchips zu trennen,
    Vielleicht wollen sie nicht separat zum RP1 verkaufen, weil sie nur die Kerne M3 haben und mit den Kernen M4 und M7 konkurrieren müssen.

Hinterlassen Sie einen Kommentar