Workspaces & Projekte
Alles, was Sie in Subaya tun, lebt innerhalb eines Projekts. Dieser Leitfaden
zeigt, wie Projekte organisiert sind, wie Sie sie über die CLI erstellen und
inspizieren und wie die lokale .subaya/config.toml ein Arbeitsverzeichnis mit
einem Projekt verbindet.
Mandantenstruktur: Organisation → Workspace → Projekt
Abschnitt betitelt „Mandantenstruktur: Organisation → Workspace → Projekt“Subaya verschachtelt drei Ebenen der Zugehörigkeit:
- Organisation — der oberste Mandant Ihres Kontos. Abrechnung, Mitglieder und Lizenzen leben hier.
- Workspace — eine Gruppierung von Projekten innerhalb einer Organisation (ein Team oder eine Produktlinie). Jedes Projekt gehört zu genau einem Workspace.
- Projekt — die Arbeitseinheit: ein typisierter (
fpgaoderembedded) Entwurf mit eigenen Anforderungen, Simulationen, Repository und Phase.
Den größeren Zusammenhang finden Sie unter Kernkonzepte.
Projekttypen
Abschnitt betitelt „Projekttypen“Ein Projekt wird als einer von zwei Typen erstellt, was die ihm zur Verfügung stehenden Toolchains bestimmt:
| Typ | Für | Toolchains |
|---|---|---|
fpga |
RTL-/FPGA-Entwürfe | RyuSim, Verilator, Icarus, Questa, Vivado xsim, Quartus |
embedded |
MCU-Firmware (z. B. STM32) | CubeMX-Pin-Planung, Renode |
Ein Projekt erstellen
Abschnitt betitelt „Ein Projekt erstellen“Erstellen Sie ein Projekt innerhalb eines Workspace und wählen Sie seinen Typ:
suya project create --name <name> --workspace <workspace-id> --type fpgaFür ein Embedded-Projekt übergeben Sie --type embedded. Optional können Sie einen
URL-Slug festlegen oder bei der Erstellung ein Gerät anheften:
suya project create \ --name blinky \ --workspace <workspace-id> \ --type embedded \ --slug blinky \ --device <device-id>suya project init ist ein Alias von suya project create.
Projekte auflisten und inspizieren
Abschnitt betitelt „Projekte auflisten und inspizieren“Listen Sie die Projekte in einem Workspace auf:
suya project list --workspace <workspace-id>Zeigen Sie die Details eines einzelnen Projekts an. Ohne angegebenes Projekt wird
standardmäßig das in der lokalen .subaya/config.toml erfasste Projekt verwendet
(siehe unten):
suya project showDie lokale Konfiguration: .subaya/config.toml
Abschnitt betitelt „Die lokale Konfiguration: .subaya/config.toml“Wenn Sie aus einem Verzeichnis heraus an einem Projekt arbeiten, erfasst Subaya die
Projekt-ID in .subaya/config.toml. Die meisten Befehle, die ein --project-Flag
annehmen, greifen standardmäßig auf diesen Wert zurück, sodass Sie sie ausführen
können, ohne die ID zu wiederholen:
# Both work the same once .subaya/config.toml points at a project:suya project showsuya project show --project <project-id>Genau dies ermöglicht es Befehlen wie suya sim run, suya arch ...,
suya rag search --scope project:<id> und ähnlichen, „einfach zu wissen“, zu
welchem Projekt sie gehören.
Jedes Projekt durchläuft Phasen, die die Benutzeroberfläche und die verfügbaren Tools bestimmen:
Concept → Plan → Implement → Simulate → Verify
Aktuelle Phase abrufen oder setzen:
suya project phaseProjekte können mit einem Hardwaregerät aus dem Katalog verknüpft werden. Durchsuchen Sie den Katalog, inspizieren Sie ein Bauteil und weisen Sie eines Ihrem Projekt zu:
suya device search --type embeddedsuya device show <device-id>suya device set <device-id>Sie können ein Gerät auch bei der Erstellung mit --device <device-id> bei
suya project create anheften.
Nächste Schritte
Abschnitt betitelt „Nächste Schritte“- Simulationen ausführen — eine Simulation von Anfang bis Ende ausführen.
- Cloud-Toolchains & CubeMX — Cloud-Toolchains und Embedded-Pin-Planung.
- CLI: project — die vollständige
suya project-Referenz. - CLI: device — die vollständige
suya device-Referenz.