PCI-Express Multi-Function
PCI Express erlaubt es, im gleichen FPGA mehrere Endpoints – sogenannte Functions -, die sich die gemeinsame PCI Express Verbindung teilen, aufzubauen. Ein externer Switch ist dabei nicht notwendig. Der große Vorteil von Multi-Function Endpoints ist, dass jeder physikalischen Function ein eigener Treiber zugeordnet werden kann und sich dadurch die Softwareentwicklung deutlich vereinfacht.
Die meisten FPGA Devicefamilien unterstützen zwar Multifunction, jedoch nur auf einem sehr niedrigen Niveau. Unser DMA IP Cores bieten eine ausgereifte Lösung mit oder ohne DMA Unterstützung. Somit muss sich der Anwender nicht mehr mit der korrekten Bildung von PCI Express TLPs auseinandersetzen und kann über Industriestandard Schnittstellen (AXI, AXI Stream) mit dem Core rein die Daten (ohne PCI Express Protokoll) austauschen.
Die Xilinx PCIe Hardmacros der 7er Serie unterstützen Multi-Function nicht von Haus aus. Die patentierte Smartlogic Multi-Function IP Core Ergänzung (Optionale Ergänzung unserer multi channel DMA Cores) löst diese Einschränkung durch eine Erweiterung des PCIe Hardblocks um bis zu 6 physikalische PCIe Functions. Im Vergleich zu einer reinen PCIe Softcore-Lösung wird nur ein Bruchteil der FPGA Ressourcen benötigt, so dass der IP Core auch im kleinsten Artix Device Platz findet.
Download einer kostenlosen Evaluation für verschiedene Demoboards (AC701 / KC705 / Cyclone 5 GT) mit User Guide und Anleitung finden Sie im IP Evaluation Bereich.
Mehr Details hierzu finden Sie in unserem Datenblatt
Anwendungsbeispiel
Ein konkretes Beispiel ist mittels 4 Functions zwei UARTs, ein IIC Interface und eine kundenspezifische DMA Übertragung zu realisieren, bei der 4 Treiber zum Einsatz kommen.