Übersicht

Dynamic Function eXchange (DFX) bietet Entwicklern die Möglichkeit, bestimmte Teile eines Designs zu ändern, während das übrige Design ohne Unterbrechung weiter funktioniert. DFX ermöglicht neuartige Designtechniken und -funktionen – darunter flexible Hardwarebeschleunigung, On-the-Fly-Aktualisierungen von Systemen, Designzusammenarbeit und Fehlertoleranz. Dynamic Function eXchange folgt dem älteren Konzept der teilweisen Neukonfiguration (Partial Reconfiguration, PR), das seit mehr als 20 Jahren die Flexibilität logischer Ressourcen maximiert.

  • Robuste Design-Flows
    Intuitive Designmethoden mit umfassender Unterstützung der Chips
  • IP-Blöcke für einfache Implementierung
    Grundlegende Bausteine für einfache Platzierung, Neukonfiguration und Debugging
  • Erweiterte Anwendungsfälle
    DFX-Technologie wird für schnelles Kompilieren und teambasiertes Design genutzt

Funktionen

IP (Intellectual Property) für DFX

AMD bietet vier grundlegende IP-Blöcke für den dynamischen Funktionsaustausch (DFX) in der Vivado Design Suite an.

  • Der Kern DFX Controller IP verwaltet intelligent die Neukonfiguration von bis zu 4.096 Modulen in Echtzeit mit benutzerdefinierbaren Hardware-/Software-Triggerereignissen.
    • Funktionen von DFX Controller IP werden nur für FPGA-basierte DFX-Designs unterstützt, da SoC-DFX-Designs über Software auf dem PS verwaltet werden können. 
  • Der Kern DFX Decoupler IP isoliert das Design logisch von undefiniertem Verhalten, wenn ein Modul neu konfiguriert wird.
  • Der Kern DFX AXI Shutdown Manager IP isoliert AXI-Schnittstellen von potenziell fehlerhaften Transaktionen, wenn ein Modul neu konfiguriert wird.
  • DFX Bitstream Monitor IP ist ein leistungsstarkes Debugging-Tool für partielle Bitdateien von FPGAs, die in DFX verwendet werden. Das Tool kann partielle Bitdateien vom Speicher bis zur Konfigurations-Engine verfolgen, sodass Bitdateifehler vor der Neukonfiguration behoben werden können. 

Erweiterte Anwendungsfälle

Abstract Shells:

Die Vivado Design Suite unterstützt den Abstract Shell-Design-Flow für alle UltraScale+ und Versal Chips. Abstract Shell-Design-Flows können Kompilierungszeit und Speicherauslastung für die meisten Designs reduzieren.

  • Schnelle Kompilierung
    • Abstract Shell-Implementierungen sollen Kompilierungszeit und Speicherauslastung verringern. Weitere Informationen finden Sie in WP533.  
  • Zusammenarbeit beim Design
    • Designer können proprietäre IP im nicht einsehbaren statischen Bereich von Abstract Shell-Designs verbergen. Externe Designer können dann Funktionen in dynamischen Bereichen entwickeln, ohne dass sie Zugriff auf proprietäre Informationen haben. Dies erhöht die Sicherheit der Zusammenarbeit beim Design.
    • Dynamische Logik kann ebenfalls mit IP im statischen Bereich interagieren, ohne dabei IP-Lizenzüberprüfungen auszulösen.
      • (Haftungsausschluss: Voraussetzung sind Rechte an der IP, die weitergegeben werden dürfen.) 

Tandem Configuration + DFX:

Tandem Configuration ist eine Funktion der Vivado Design Suite, die den Bitstrom eines Designs in zwei Stufen aufteilt, damit UltraScale, UltraScale+ und Versal Chips die Standards von PCI Express® erfüllen können.

  • Flexibilität bei PCIe® Anwendungen
    • Im Gegensatz zu Tandem Configuration im Standalone-Modus kann eine beliebige Anzahl dynamischer Bilder nach der anfänglichen zweistufigen Konfiguration wiederholt neu konfiguriert werden (nur UltraScale und UltraScale+ Chips).
  • Flexibilität bei Bitstream-Bereitstellung
    • Partielle Bitströme für DFX können über PCIe® über QDMA oder einen beliebigen Konfigurationsport (PCAP, MCAP, ICAP) bereitgestellt werden. 

Videos