Der Weg zum „universellen“ Ethernet

14. April 2008, 16:15 Uhr | Christian Schlegel
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 1

FPGAs – Basis für eine universelle Lösung

Da der Physical-Layer bei allen Industrial-Ethernet-Protokollen auf IEEE802.3 basiert, ist es seitens der physikalischen Ankopplung grundsätzlich möglich, eine Hardware zu erstellen, welche alle Protokolle unterstützt. Problematisch ist jedoch, dass einige der Protokolle spezifische Echtzeit-Eigenschaften besitzen, welche wiederum spezifische Verarbeitungsmechanismen erfordern. Unter den heute verfügbaren CPUs gibt es – mit Ausnahme des Hilscher-Chips – keine, welche alle Anforderungen der verschiedenen Protokolle erfüllen kann.

Alternativ lässt sich diese Problematik mit dem Einsatz von frei programmierbaren Logikbausteinen lösen. FPGAs (Field Programmable Gate Arrays), wie zum Beispiel die Cyclone-Familie von Altera, bieten neben einer programmierbaren schnellen Logik optional dynamisch ladbare und skalierbare Prozessorkerne mit 32-Bit-RISC-Architektur – NIOS II genannt. Mit dieser Kombination lassen sich praktisch alle Anforderungen der unterschiedlichen Protokolle erfüllen. Für Protokolle mit speziellen Anforderungen wie Ethercat und Sercos III sind die spezifischen Hardware-Anschaltungen in Form von FPGAIP-Cores verfügbar, die in das FPGA geladen werden und intern an den NIOS-Prozessor anschließbar sind. Diese FPGA-IP-Cores garantieren die schnelle und spezifische Verarbeitung der Ethernet-Pakete, während auf dem integrierten NIOS-II-Prozessor der jeweilige busspezifische Protokollstack ausgeführt wird. Ist keine spezifische Hardware-Anschaltung erforderlich, stehen Standard-Ethernet-Controller sowie Switch- und Hub-Funktionen als FPGA-IP-Cores zur Verfügung.

Für die Entwicklung einer FPGA-basierten Ethernet-Anschaltung ist das FPGA wie eine CPU mit externen Komponenten zu beschalten. Erforderlich sind hierfür im Wesentlichen ein Quarz oder Oszillator, ein dynamisches RAM und ein serieller Flash-Baustein. Hinzu kommen die beiden PHYs für die Ethernet-Schnittstellen. Im seriellen Flash werden das Konfigurations-File für das FPGA und das Programm abgelegt, welches auf der CPU im FPGA ausgeführt werden soll. Somit benötigt eine FPGA-basierte Hardware-Lösung nicht mehr Komponenten als eine CPU-basierte Lösung und liegt damit in vergleichbaren Preisregionen bei wesentlich höherer Flexibilität.

Zur Erstellung des Konfigurations-File für das FPGA dient ein Synthesetool, bei Altera „Quartus II“ genannt. Die benötigten Funktionen (zum Beispiel Prozessor, Memory Interface oder externe Interfaces wie PCI, PCIe, Shared Memory, SPI) lassen sich hierbei aus einer Vielzahl von mitgelieferten IP-Cores auswählen, miteinander verbinden und fehlende Mechanismen in VHDL oder Verilog programmieren. Das Tool ermöglicht zudem die Simulation des erstellten Designs sowie Analysen hinsichtlich des Timing und des tatsächlichen Strombedarfs. Schließlich generiert das Tool eine Binärdatei für das FPGA, welche beispielsweise über eine JTAG-Schnittstelle in den Flash geladen wird. Was die Software-Entwicklung betrifft, so steht für den NIOS II eine kostenlose Entwicklungsumgebung zu Verfügung, welche auf Eclipse und GNU basiert. Der erzeugte Binärcode wird ebenfalls zu den FPGA-Konfigurationsdaten in den seriellen Flash geladen. Das Debuggen der Software erfolgt über die JTAG-Schnittstelle des FPGA.

Der Vorteil einer FPGA-basierten Ethernet-Anschaltung besteht nun darin, dass sich mit nur einer Hardware alle Industrial-Ethernet-Protokolle unterstützen lassen. Hierzu sind lediglich die für das jeweilige Protokoll erforderliche FPGA-Konfiguration sowie die Software mit dem Protokollstack in das FPGA zu laden. Dies kann entweder zum Fertigungszeitpunkt erfolgen oder erst zu einem späteren Zeitpunkt durch die Geräte-CPU selbst. Damit ergibt sich die Möglichkeit, jederzeit zukünftige ethernet-basierte Protokollstandards mit derselben Hardware zu unterstützen. Zwar legt sich der Gerätehersteller auch bei diesem Ansatz zunächst auf einen FPGA-Hersteller fest; da VHDL und Verilog jedoch Standardsprachen beim FPGA-Design sind, besteht mit vertretbarem Aufwand immer die Möglichkeit, auf einen anderen FPGA-Hersteller zu wechseln. gh

CA804-12-Schlegel_af_03.jpg
Christian Schlegelist Technischer Geschäftsführer der Firma Ixxat Automation.

  1. Der Weg zum „universellen“ Ethernet
  2. FPGAs – Basis für eine universelle Lösung
  3. Der Weg zum „universellen“ Ethernet

Jetzt kostenfreie Newsletter bestellen!