Hey! Sie scheinen aus United States zu kommen, möchten Sie auf die Englisch Webseite wechseln?
Switch to Englisch site
Skip to main content

Erstellen Sie einen Soft- Prozessor auf einem Xilinx-FPGA und erraten Sie eine Zufallszahl

Dieses Projekt präsentiert ein Zahlenratespiel über den Xilinx-MicroBlaze-Prozessor, das von einem Praktikanten bei Digilent entwickelt wurde. Der Soft-Prozessor auf dem FPGA wählt eine Zahl zwischen 0 und 15 und gibt dem Spieler 4 Chancen, diese Zahl zu erraten. Durch das Programmieren dieses Spiels können Benutzer lernen, wie man einen einfachen Prozessor auf FPGA erstellt und einige unterhaltsame Anwendungen gestaltet.

Das Projekt verwendet das Development Board Arty A7: Artix-7 FPGA von Digilent und nutzt die Schalter, Tasten und LEDs des Arty, um eine einfache Interaktion zu erzielen.

Das Arty A7 ist eine gebrauchsfertige Entwicklungsplattform, die auf dem Artix-7™ Field Programmable Gate Array (FPGA) von Xilinx beruht. Es wurde speziell für die Verwendung als MicroBlaze-Soft-Processing-System entwickelt. Im Gegensatz zu anderen Single-Board-Computern ist Arty nicht an einen einzigen Satz von Verarbeitungsperipheriegeräten gebunden. Mal ist es ein leistungsstarkes Kommunikationszentrum voll mit UARTs, SPIs, IICs sowie einem Ethernet-MAC und dann wieder ein akkurater Zeitnehmer mit einem Dutzend 32-Bit-Timern.

MicroBlaze ist der 32-Bit-RISC-Softprozessorkern von Xilinx, der für eingebettete Anwendungen auf Xilinx-Geräten optimiert ist. Der MicroBlaze-Prozessor lässt sich einfach bedienen und bietet die Flexibilität, die Kombination aus Peripheriegeräten, Speicher und Schnittstellen nach Bedarf auszuwählen. Um MicroBlaze nutzen zu können, müssen Benutzer Vivado installieren, ein neues globales Repository erstellen, nach dem MicroBlaze-SDK suchen und es im Projekt verwenden.

Digilent Arty Board

Um das Spiel zu spielen, muss der Benutzer über einen Terminal-Emulator mit UART-Unterstützung wie z. B. Tera Term verfügen. Das Terminal zeigt Meldungen an. Die Spieler stellen die Schalter ein, um eine Zahl festzulegen, die sie im Binärformat erraten möchten. Bei eingestellten Schaltern leuchten die entsprechenden RGB-LEDs blau auf. Anschließend geben die Spieler den Tipp ab, indem sie die Taste 0 auf dem Board drücken. Wenn der Tipp korrekt ist, druckt das Programm eine Meldung, die genau das aussagt. Wenn der Tipp falsch ist, druckt das Programm eine Meldung, in der dem Spieler erfährt, ob der Tipp zu hoch oder zu niedrig war und wie viele Chancen noch verbleiben. Wenn der Spieler viermal falsch rät, blinken alle auf Rot eingestellten LEDs und RGB-LEDs dreimal. Anschließend druckt das Programm eine Meldung mit der richtigen Antwort. Schließlich fragt das Spiel die Spieler, ob sie weiterspielen möchten. Mit der Taste 0 beginnt ein neues Spiel und mit Taste 3 endet das Spiel. Die Spieler können das Spiel auch jederzeit beenden, indem sie die Taste 3 drücken.

Guessing game terminal emulator screenEinige der in der Software implementierten Funktionen umfassen das Entprellen von Benutzereingaben und die Kantendetektion, die LED-Pulsweitenmodulation (PWM) und die Generierung von Zufallszahlen für das Spiel.

Alle Einzelheiten zum Projekt und den Quellcode erhalten Sie auf der Projektseite von Digilent.

awong hat noch keine Biografie verfasst...
DesignSpark Electrical Logolinkedin