Nios®-V-Prozessor-Entwicklerzentrum
Nios®V Dokumentation und Support für die Entwicklung und das Debugging von eingebetteten Prozessorsystemen.
1. Voraussetzungen
Mein Intel-Konto® erstellen
- Erstellen Sie Ihr Intel® Konto auf der Seite Intel Konto registrieren®.
- Mit Ihrem Intel Konto können Sie Serviceanfragen einreichen, sich für Schulungen anmelden, Software herunterladen, auf Ressourcen zugreifen und vieles mehr.
Designüberlegungen
Warum sollten Sie sich für den Nios V Prozessor entscheiden?
Der Nios®-V-Prozessor ist für Altera® FPGA Geräte ausgelegt und wurde auf Basis der RISC-V-Spezifikation entwickelt. Weitere Informationen, wie z. B. zum Benchmark der Prozessorleistung, finden Sie im Nios® V Prozessor-Referenzhandbuch.
In der folgenden Tabelle sind die unterstützten Funktionen in Nios-V-Prozessoren aufgeführt.
Nios-V-Prozessor |
RISC-V ISA |
Mikroarchitektur Merkmale |
Aktiviert mit |
Unterstützt Altera® FPGA Gerät |
|
---|---|---|---|---|---|
Nios® V/c Kompakter Mikrocontroller |
RISC-V 32I
|
|
|
|
|
Nios® V/m Mikrocontroller |
RISC-V 32I Zicsr
|
|
|
|
|
Nios® V/g Allzweck-Prozessor |
RISC-V 32IWF Zicbom Zicsr
|
|
|
|
|
Welches Betriebssystem (BS) sollte ich wählen?
Bare-Metal
Bare-Metal ist ein anwendungsbasiertes System ohne die Unterstützung eines Betriebssystems.
Der Bare-Metal-Ansatz bietet:
- Absolute Kontrolle über die Hardware
- Gesteigerte Effizienz
- Minimale Größe (sowohl Flash- als auch Speicherbedarf)
- Keine Abhängigkeit von anderen Quellcodes oder Bibliotheken
- Einfache Validierung und Analyse der Codeabdeckung.
Sie können auch eine Bare-Metal-Entwicklung in Betracht ziehen, wenn Sie:
- Keine Multitasking- oder Multithread-Operationen erforderlich
- Sie führen ein Board-Bring-Up durch und müssen sich auf jedes einzelne Peripheriegerät konzentrieren
- Wiederverwendung von bestehendem Legacy-Code, der bereits als Bare-Metal entwickelt wurde
Um eine Bare-Metal-Anwendung für den Nios®-V-Prozessor zu entwickeln, müssen Sie mit der Entwicklung von Laufzeitfunktionen vertraut sein, um sicherzustellen, dass Ihre Anwendung die in Ihrem CPU-Subsystem verfügbaren Ressourcen effizient nutzt. Beispiele für das, was erforderlich sein kann, sind wie folgt:
- Fundierte Kenntnisse der Hardware-Plattform
- Entwicklung von Laufzeitfunktionen zur Verwaltung des Prozesses zwischen dem Kern und dem Cache-Subsystem, wenn Sie das CPU-Subsystem voll ausnutzen möchten, da eine typische Bare-Metal-Anwendung nur einen einzigen Kern verwendet
- Entwicklung von Funktionen zum Verwalten und Planen von Prozessen, zum Verarbeiten der Kommunikation zwischen Prozessen und zum Synchronisieren von Ereignissen innerhalb Ihrer Anwendung
Wenn Ihr geplantes Projekt nicht den Aufwand zulässt, der erforderlich ist, um sich mit den oben genannten Punkten vertraut zu machen, wird empfohlen, andere Alternativen in Betracht zu ziehen.
® Altera Hardware Abstraction Layer (HAL) und Real Time Operating System (RTOS)
In Anbetracht der obigen Aussagen ist es oft sinnvoll, eine Abstraktionsschicht oder ein Betriebssystem zu verwenden, um mit minimalem Aufwand die maximale Leistung aus dem Nios® V Prozessor zu realisieren.
Die folgende Tabelle zeigt die Merkmale von Altera® HAL und RTOS.
Kriterien |
Altera® HAL |
RTOS (Echtzeit-Betriebssystem) |
---|---|---|
Hauptunterschied |
Altera® HAL ist eine leichtgewichtige eingebettete Laufzeitumgebung, die eine einfache Gerätetreiberschnittstelle bietet, über die Programme eine Verbindung zum zugrunde liegenden Altera® FPGA zu den Peripheriegeräten herstellen können. Die Altera® HAL Anwendungsprogrammschnittstelle (API) ist in die ANSI-C-Standardbibliothek integriert. | RTOS ist ein prioritätsbasiertes System und bietet eine präventive Aufgabenplanung, um eine zeitnahe und deterministische Reaktion auf Ereignisse oder Unterbrechungen zu gewährleisten. Zeitkritische Threads mit hoher Priorität werden Threads mit niedrigerer Priorität vorgezogen. Threads in einem Echtzeitbetriebssystem weisen eine begrenzte Latenz auf. Ein Prozess oder Thread wird innerhalb eines bestimmten Zeitlimits ausgeführt. |
Anwendung |
Ideal für Anwendungen, die auf Altera® FPGA Peripheriegeräten basieren. |
Ideal für Anwendungen, die eine sehr schnelle und vorhersehbare Reaktion erfordern. |
Ressource |
Geringes Gewicht und geringer Speicherbedarf. |
Geringes Gewicht und geringer Speicherbedarf. |
Codierungspraxis |
Hält sich an Altera® HAL API-Bibliothek, wenn der Altera HAL Gerätetreiber verwendet wird. |
Hält sich an strenge Codierungsrichtlinien, da der Code kontinuierlich konsistent ausgeführt werden muss. |
Dokumentation | ||
Andere Ressourcen |
2. Erste Schritte
Ziel-Mainboard auswählen
Wir empfehlen, die Entwicklung mit einem Altera® FPGA Entwicklungskit zu beginnen, da die Designbeispiele für Nios® V Prozessoren auf die Ausführung auf diesen Mainboards ausgerichtet sind. Informationen zu unterstützten Altera® FPGA Geräten finden Sie im Abschnitt Design-Berücksichtigung .
Unter Intel® FPGA Development Kits finden Sie eine Liste der verfügbaren Mainboards.
Installieren von Entwicklungstools
Sie müssen die Quartus® Prime Software und die Ashling* RiscFree* IDE installieren, damit Intel FPGA mit der Entwicklung eines Nios® V Prozessorsystems beginnen können. Navigieren Sie zum FPGA Software-Download-Center , um die neueste Softwareversion zu installieren.
Erstellen Sie Ihr erstes Nios®-V-Prozessorsystem
Das Designhandbuch für Nios®-V-Embedded-Prozessoren führt Sie in den Systementwicklungsablauf für den Nios®-V-Prozessor ein. Zusammen mit der Quartus® Prime Software und der Ashling* RiscFree* IDE für Intel® FPGA können Sie eine Komplettlösung erstellen, die ein Hardware-Systemdesign und ein Softwareprogramm umfasst, das auf dem Nios®-V-Prozessor läuft und Schnittstellen zu den Komponenten auf den Altera® Entwicklungsboards hat.
3. Erstellen Sie Ihr eigenes Projekt
Projekttypen
Die Entwicklungswerkzeuge für Nios®-V-Prozessoren, bestehend aus dem Board Support Package Editor und der Ashling* RiscFree* IDE, mit denen Intel® FPGA Nios® Prozessor-basierte Projekte erstellen können. Nios® V unterstützt zwei verschiedene Arten von Projekten: GUI-basierte und CLI-basierte Projekte.
In der folgenden Tabelle werden die Unterschiede zwischen den beiden Projekten verglichen.
Feature |
GUI-basiertes Projekt |
CLI-basiertes Projekt |
---|---|---|
Projektbeschreibung |
|
|
Verwaltung der Projektquelldatei |
|
|
Debuggen |
|
|
Integration mit benutzerdefinierten Shell-Skripten und Tool-Flows |
|
|
Dokumentation | Handbuch für Entwickler von Nios®-V-Prozessor-Software Ashling* RiscFree* Integrated Development Environment (IDE) für Intel® FPGAs Benutzerhandbuch |
Design-Flow
Die folgende Abbildung veranschaulicht den allgemeinen Entwicklungsablauf von Nios®-V-Prozessorsystemen.
Der Entwicklungsablauf des Nios®-V-Prozessors besteht aus drei Elementen:
- Systemdesign, das sowohl Hardware als auch Software umfasst
- Hardware-Design
- Software-Design
Sie beginnen Ihre Nios®-V-Prozessorentwicklung mit der Entwicklung eines Systemkonzepts und der Durchführung einer Systemanforderungsanalyse. Als Nächstes erstellen und generieren Sie das System im Platform Designer und erzeugen eine Platform Designer-Datei. Die Platform Designer-Datei enthält Nios® V Prozessorkerne und Standardkomponenten. Nach der Systemgenerierung können Hardware- und Softwareflüsse initiiert werden.
- Für die Entwicklung von Nios®-V-Prozessor-Hardware müssen Sie:
- Wählen Sie die Ziel-FPGA basierend auf den Systemanforderungen aus. Weitere Informationen finden Sie im Abschnitt Designüberlegungen .
- Integrieren Sie das Platform Designer-System in das Quartus® Prime-Softwareprojekt.
- Zuweisen von Pin-Positionen.
- Konfigurieren Sie Timing-Anforderungen und andere Designeinschränkungen.
- Nachdem Sie das Hardware-Design kompiliert haben, laden Sie die .sof-Datei auf das Ziel-Mainboard herunter.
Für die Entwicklung von Nios®-V-Prozessor-Software müssen Sie:
- Entwickeln Sie Ihre Software mit den Nios® V Prozessor Tools und Ashling* RiscFree* IDE für Intel® FPGA. Die Nios® V Prozessorsoftware umfasst die HAL, Peripherietreiber, Benutzer-C/C++-Anwendungscodes und benutzerdefinierte Bibliotheken.
- Laden Sie die .elf-Datei auf das Nios®-V-Prozessorsystem auf der Zielplatine herunter, nachdem Sie die Anwendung und das Board Support Package (BSP) erstellt haben. Das Nios®-V-Prozessorsystem steht zum Testen und Debuggen bereit.
Wenn Sie während des Tests feststellen, dass Ihre Software nicht den Spezifikationen entspricht, kehren Sie zum Anfang des Softwareablaufs zurück und überprüfen Sie die Anwendungscodes, Treiber und BSP, um Fehler zu korrigieren und sicherzustellen, dass das Nios® V Prozessorsystem korrekt ausgeführt wird.
Wenn die Hardware nicht den Spezifikationen entspricht, kehren Sie zum Schritt "Definieren und Generieren" des Platform Designer-Systems zurück und starten Sie sowohl den Hardware- als auch den Softwarefluss neu. Die für die Generierung der Anwendungssoftware erforderliche Schlüsseldatei ist die Platform Designer-Systemdatei. Da diese Datei Hardwarekomponenten und Verbindungen beschreibt, müssen Sie diese Datei neu generieren, wenn Sie eine Hardwareänderung vornehmen. Das System ist vollständig, wenn sowohl die Software als auch die Hardware den Spezifikationen entsprechen.
4. Design-Beispiele
Es gibt viele Designbeispiele, die Ihnen den Einstieg in Altera® FPGA Produkte erleichtern. Alle Beispiele können als Ausgangspunkt für Ihre eigenen Designs verwendet werden und sind anpassbar, um andere spezifische Anwendungsfälle zu implementieren.
Der Nios® V Prozessor Intel FPGA IP bietet eine Auswahl an einfachen Designbeispielen, um Ihre Reise mit Nios® V Prozessor zu beginnen.
Eine detaillierte Dokumentation finden Sie in "Nios® V Prozessor Designbeispielskripte" aus Nios® V Prozessor Softwareentwicklungshandbuch.
Wie führe ich eine Nios® V Prozessor "Hello World" Anwendung in Altera HAL, μC/OS-II RTOS und FreeRTOS aus?
- Erfahren Sie, wie Sie eine "Hello World"-Anwendung für einen Nios®-V-Prozessor in Altera HAL, μC/OS-II RTOS und FreeRTOS ausführen:
- Dokumentation: Tutorial zum Nios®-V-Prozessor
- Design-Beispiele: FPGA Design Store, Nios V, Hello World Design-Beispiele
Wie führe ich eine Nios® V Prozessor "Hello World" Anwendung in Zephyr RTOS aus?
- Kurzanleitung zum Generieren der Zephyr Hello World-Anwendung auf Nios V Hello World-Designbeispiel.
- Nios® V/g
- Dokumentation: Nios® V/g Zephyr Designbeispiel - Hello World
- Design-Beispiel: Arria® 10 FPGA Nios® V/g Prozessor-basiert Hello World
- Nios® V/m
- Dokumentation: Nios® V/m Zephyr Designbeispiel - Hello World
- Design-Beispiel: Arria® 10 FPGA Nios® V/m Prozessor-basiert Hello World
Wie betreibe ich einen Nios®-V-Prozessor mit dem MicroC/TCP-IP-Softwarepaket?
- Informationen zum Ausführen eines Nios®-V-Prozessors mit dem MicroC/TCP-IP-Softwarepaket finden Sie unter "Nios® V Prozessor – Verwenden des Micro/TCP-IP-Stacks".
Wie betreibe ich einen Nios®-V-Prozessor mit Remote System Update auf SDM-basierten Geräten?
- Informationen zum Ausführen eines Nios®-V-Prozessors mit Remote-Systemupdate in SDM-basierten Geräten finden Sie in der "Kurzanleitung für Nios® V Prozessor RSU in SDM-basierten Geräten".
- Dokumentation und Designbeispiel: Nios®-V-Prozessor RSU Kurzanleitung für SDM-basierte Geräte
Wie betreibe ich einen Nios®-V-Prozessor mit benutzerdefinierter Anleitung?
- Informationen zum Ausführen eines Nios®-V-Prozessors mit benutzerdefinierter Anweisung finden Sie unter "Nios® V Prozessor – Verwenden einer benutzerdefinierten Anleitung".
5. Zusätzliche Ressourcen
Dokumentation
Die folgende Dokumentation dient als primäre Referenz für den Nios® V Prozessor.
Titel der Dokumentation |
Beschreibung |
---|---|
Beschreibt die grundlegenden Informationen, die für die Entwicklung von Embedded-Software für den Nios®-V-Prozessor benötigt werden. Das Kapitel in diesem Handbuch beschreibt die Softwareentwicklungsumgebung für den Nios®-V-Prozessor, die verfügbaren Nios®-V-Prozessor-Tools und das Verfahren zur Softwareentwicklung. |
|
Ergänzt die primäre Dokumentation für die Entwicklung von Embedded-Systemen. Es beschreibt den effektiven Einsatz der Tools und empfiehlt Entwurfsstile und -praktiken für die Entwicklung, das Debugging und die Optimierung von eingebetteten Systemen mithilfe Altera bereitgestellten Tools. Das Handbuch stellt auch Konzepte für neue Benutzer der Embedded-Lösungen von Altera vor und trägt dazu bei, die Designeffizienz eines erfahrenen Benutzers zu erhöhen. |
|
Beschreibt den Nios®-V-Prozessor von der allgemeinen konzeptionellen Beschreibung bis zu den Implementierungsdetails auf niedriger Ebene. Die Kapitel in diesem Handbuch beschreiben die Architektur des Nios®-V-Prozessors, das Programmiermodell und den Befehlssatz. |
|
Beschreibt die von der Altera bereitgestellten IP-Cores, die nahtlos mit dem Nios®-V-Prozessor in der Quartus® Prime-Designsoftware zusammenarbeiten. Die IP-Cores sind für Altera® Geräte optimiert und können einfach implementiert werden, um die Design- und Testzeit zu verkürzen. |
|
Ashling* RiscFree* Integrated Development Environment (IDE) für Altera® FPGA |
Beschreibt die neuesten Funktionen in den Ashling* RiscFree* IDE Entwicklungstools. Das Benutzerhandbuch bietet detaillierte Erklärungen sowie Anwendungsfälle der jeweiligen Funktionen. |
Beschreibt die Implementierung benutzerdefinierter Anweisungen im Nios® V Prozessor. Dieser Anwendungshinweis stellt die Funktion für benutzerdefinierte Anweisungen vor und zeigt anhand von Anleitungen, wie Sie diese in Ihrem System instanziieren können. |
|
Beschreibt die Migrationsbemühungen von Nios® II Prozessor zu Nios®-V-Prozessor. In diesem Anwendungshinweis wird der Unterschied im Systemdesign (Hardware- und Softwaredesign) bei der Prozessormigration erläutert. |
|
AN 980: Nios®-V-Prozessor Quartus® Prime Software-Support | Beschreiben Sie die Unterschiede zwischen Quartus® Prime Pro und Quartus® Prime Standard bei der Entwicklung eines Nios V Prozessorsystems. |
AN985: Tutorial zum Nios®-V-Prozessor | Stellen Sie eine Kurzanleitung zum Generieren, Simulieren, Programmieren und Debuggen eines Nios®-V-Prozessorsystems bereit. |
Nios®-V-Prozessor: Lockstep-Implementierung | Beschreiben Sie die Nios® V Prozessor Lockstep-Funktion, die die fRSmartComp-Technologie verwendet, um einen intelligenten Komparator im Register Transfer Level (RTL) zu implementieren. Altera nutzt die Dual-Core-Lock-Step-Sicherheitsarchitektur (DCLS), um den intelligenten Komparator zu implementieren. Dieser Ansatz ermöglicht die Integration der Technologie in den Nios® V/g-Prozessor, was die Entwicklung ausfallsicherer Anwendungen ermöglicht. |
Demonstrationsvideos
Videotitel |
Beschreibung |
---|---|
Überblick darüber, was Nios® V-Prozessor zu bieten hat. |
|
Nios®-V-Prozessor-Portfolio – Video | Erfahren Sie mehr über das Nios® V Prozessor-Portfolio, das in der Quartus® Prime Pro Edition Software Version 23.3 verfügbar ist |
Sehen Sie sich die Hello World Design-Anleitung an, die zeigt, wie Sie den richtigen Nios®-V-Prozessor für Ihre Anwendung auswählen. |
|
Hier erfahren Sie, wie Sie ein einfaches "Hallo Welt"-Beispieldesign in Platform Designer für den Nios® V/m Prozessor generieren und erstellen. |
|
Erfahren Sie, wie Sie die Open-Source-Tools für die Softwareentwicklung auf dem Nios® V/m Prozessor herunterladen und einrichten können. |
|
Erfahren Sie mehr über die Softwareentwicklung auf dem Nios® V/m Prozessor mithilfe des Open-Source-Ökosystems. |
|
Debuggen des Nios-V-Prozessors mit der Ashling RiscFree IDE für Intel FPGAs |
Erfahren Sie, wie Sie den Nios® V Prozessor mit der Ashling RiscFree IDE für Intel FPGAs debuggen. |
Direktlinks
Ressourcenbeschreibung | |
---|---|
Nios®-V-Prozessor – Intel® FPGA | Holen Sie sich die neuesten Funktionen und Updates, um neue Möglichkeiten mit dem Nios® V Prozessor zu erkunden. |
Self Service Lizenzierungszentrum | Sie können die Nios® V/m Prozessor IP-Lizenz kostenlos erhalten. Die Dokumentation zur Intel® FPGA Softwareinstallation und -lizenzierung finden Sie auf der Seite für Intel® FPGA Softwareinstallation und -lizenzierung. |
Intel® FPGA Support-Ressourcen | Bietet technische Online-Ressourcen von Schulungen über Designbeispiele bis hin zu Foren, die Sie durch jeden Schritt des Designprozesses führen. |
FPGA Wissensdatenbank | Bietet eine Vielzahl von Supportlösungen, Referenzartikeln, Fehlermeldungen und Anleitungen zur Fehlerbehebung. Es ist auch vollständig durchsuchbar. |
Intel FPGA Community | Community-Website, die die Zusammenarbeit zwischen Intel® FPGA Benutzern ermöglicht. Verwenden Sie die Suchmaschine, um relevantes Material zu finden. Sie werden auch ermutigt, zu aktualisieren und einen Beitrag zu leisten. |
Intel Konto | Mit Ihrem Intel Konto können Sie eine Serviceanfrage stellen, um Hilfe zu bestimmten Themen zu erhalten. Sie können es auch verwenden, um sich für Schulungen anzumelden und auf andere Ressourcen zuzugreifen. |
Der Inhalt dieser Seite ist eine Kombination aus menschlicher und computerbasierter Übersetzung des originalen, englischsprachigen Inhalts. Dieser Inhalt wird zum besseren Verständnis und nur zur allgemeinen Information bereitgestellt und sollte nicht als vollständig oder fehlerfrei betrachtet werden. Sollte eine Diskrepanz zwischen der englischsprachigen Version dieser Seite und der Übersetzung auftreten, gilt die englische Version. Englische Version dieser Seite anzeigen.