Kommunikationsschnittstellen zwischen FPGA und Mikrocontroller: Eine Analyse samt Slave-Implementierung für FPGAs

  • Hannes Gernot Peball

    Studienabschlussarbeit: Masterarbeit

    Abstract

    In modernen industriellen Anwendungen werden zunehmend kleine, energieeffiziente
    Systeme eingesetzt, die komplexe Aufgaben bewältigen müssen. Diese Systeme kombinieren häufig Mikrocontroller und FPGA-Bausteine (Field Programmable Gate Array),
    um eine hohe Flexibilität und Leistungsfähigkeit zu erreichen. Während Mikrocontroller
    für die Programmierung komplexer Abläufe prädestiniert sind, stoßen sie bei Aufgaben
    mit hohen Anforderungen an Parallelisierung und spezialisierten Schnittstellen oft an
    ihre Grenzen. FPGAs hingegen bieten eine hervorragende Lösung für diese Herausforderungen, da sie digitale Schaltungen als Hardware implementieren, die eine extrem hohe
    Parallelität und eine konstante Laufzeit gewährleisten.
    Das Ziel dieser Arbeit ist es, typische digitale Busschnittstellen von Mikrocontrollern und SOCs (Systems on Chip) zu evaluieren, um eine geeignete Schnittstelle für
    eine FPGA-basierte Slave-Implementierung auszuwählen. Diese Implementierung soll
    eine effiziente und schnelle Datenübertragung mit minimalem Hardwareaufwand ermöglichen, wobei eine Übertragungsgeschwindigkeit von etwa 1 Gbit/s angestrebt wird. Die
    Evaluation der Schnittstellen erfolgt anhand von Kriterien wie Übertragungsgeschwindigkeit, Latenz, Aufwand auf einer Leiterplatte, Implementierungsaufwand für einen
    FPGA-Slave und Verfügbarkeit solcher Implementierungen.
    Für die Implementierung wird die RGMII-Schnittstelle (Reduced Gigabit Media Independent Interface) gewählt, da sie den hohen Anforderungen an die Datenübertragung
    gerecht wird und eine geeignete Lösung für die Verbindung zwischen FPGA und dem
    Ethernet-MAC (Media Access Controller) bietet. Ein wesentlicher Grund für diese Entscheidung ist zudem, dass keine verfügbaren IP-Cores (Intellectual Property) existieren,
    die eine direkte Datenübertragung von einem Ethernet-MAC ermöglichen, wodurch eine
    Eigenentwicklung erforderlich ist. Die entwickelte Implementierung wird mithilfe von
    UVVM-Komponenten (Universal VHDL Verification Methodology) umfassend verifiziert, um die Funktionalität im simulierten Umfeld sicherzustellen. Anschließend erfolgt
    eine praktische Erprobung auf realer Hardware.
    Datum der Bewilligung2024
    OriginalspracheDeutsch (Österreich)
    Betreuer/-inMarkus Pfaff (Betreuer*in)

    Zitieren

    '