SnakeBytes Flexibles Referenzdesign auf PowerPC- und FPGA-Basis

Redakteur: Johann Wiesböck

Die Referenzdesign-Plattform SnakeBytes ist eine gemeinsame Entwicklung von EBV Elektronik, Freescale Semiconductor, Altera, National Semiconductor und Avago Technologies. Sie bietet hohe Rechenleistung, das Hardware-Co-Processing und unterstützt zahlreiche I/O-Standards und Multimediaformate.

Anbieter zum Thema

SnakeBytes enthält einen Prozessor des Typs PowerQUICC II Pro sowie ein High-Density-FPGA. Es ermöglicht Anwendern die Erweiterung ihres Systems um zusätzliche I/O-Funktionen und kundenspezifische Schnittstellen. Ein zugehöriges Linux Board-Support-Package (BSP), zahlreiche Entwicklungs-Tools und ein leicht konfigurierbares I/O-System auf FPGA-Basis verkürzen die Entwicklungszeit und ermöglichen es, Produkte schnell auf den Markt zu bringen.

Die Hardwarekomponenten im Überblick

Zu den Hauptkomponenten von SnakeBytes gehören ein Mainboard mit einem Prozessor des Typs MPC8349, ein FPGA-basiertes Peripherie/CoProzessor-Board und mehrere Erweiterungsboards für Peripherie und I/O. Das System wird in zwei verschiedenen Versionen an-geboten:

  • SnakeBytes-PCI mit Linux-BSP und einer PCI-Lösung für hohen Datendurchsatz.
  • SnakeBytes-LB mit Linux-BSP und einer Local-Bus-Lösung für Datenübertragungen mit niedriger Latenzzeit und höchster Leistungsfähigkeit.

Beide Alternativen unterstützen zahlreiche I/O-Module und verfügen über eine Vielzahl von Schnittstellen-Optionen wie RS232, RS485, CAN, Kupfer- und Fibre-Industrial-Ethernet, DVI-IN, DVI-OUT und TFT LVDS. Zusätzlich stehen für beide Alternativen mehrere Module zur Speichererweiterung zur Verfügung: 128 MByte SDRAM und 2 MByte Fast-SRAM plus 8 MByte Flash sowie 192 MByte Flash.

Entwicklungskit für PCI-Lösungen

Die Industrie-Plattform MPC8349E-MITX-GP wurde für Kunden entwickelt, die noch nicht mit der PowerPC-(PPC-)Architecture vertraut sind. Sie können mit der Plattform den Prozessor MPC8349E und die zugehörige Software evaluieren. Die Plattform nutzt externe Komponenten, um Features wie Gigabit-Ethernet-Port, High-Speed-USB-Port, serielle Kanäle und PCI-Slot zu unterstützen. Ein Linux-BSP ist bereits installiert. Es besteht aus einem Bootloader (U-Boot), einem generischen PPC-Linux-basierten System und zugehörigem File-System. U-Boot, Linux-Kernel und das File-System befinden sich im On-Board-Flash-Memory. Beim Einschalten läuft der U-Boot-Bootloader auf dem System und ist bereit, Linux mit U-Boot-Befehlen zu starten.

Das Board DBF2S30 ist ein Produkt, das aus einem Entwicklungskonzept für hohe Flexibilität resultiert. Es enthält eine PCI-Schnittstelle zur Verbindung mit dem Board MPC8349E-MTIX-GP sowie sieben I/O-Slots, in die I/O- oder Memory-Module gesteckt werden können. Die Module arbeiten mit SOPC-Builder-Komponenten wie CAN-IP, SRAM, SDRAM oder Ethernet-MACs zusammen. Dieses System bildet das SOPC-Builder-Konzept auf Entwicklungsboard-Ebene ab.

Die Variante mit Loca-Bus-Interface

Das Prozessormodul DBF8349 enthält einen PowerPC-Prozessor und ist mit einer Schnittstelle für die Integration in das DBF2S30-Application-System ausgerüstet, die die Datenübertragung mit hoher Bandbreite und niedriger Latenzzeit ermöglicht. Das DBF8349 verfügt über einen 533 MHz schnellen MPC8349 mit 512 MByte DDR2-SDRAM, Dual-Gigabit-Ethernet-Interface, Dual-USB-OTG-Interface sowie RS232-, SPI- und I²C-Schnittstellen plus Core-Spannungsversorgung und einen I/O-Erweiterungsstecker. Als Schnittstelle zum DBF2S30-Application-System dient das Local-Bus-Interface des MPC8349. Das DBF8349 beansprucht zwei Slots auf dem Application-System.

Das DBF-ADC ist ein Zweikanal-ADC-Modul mit 14 Bit Auflösung, 155 MSample/s Abtastrate und SMA-Eingangsstecker. Die zugehörige SOPC-Builder-Komponente für die nahtlose Integration in die FPGA-Entwicklungs-Software unterstützt die High-Speed-Datenerfassung in das On-Chip-RAM. Steuerregister zur Einstellung der Abtastfrequenz starten die Datenerfassung einer vorgegebenen Anzahl von Samples sowie die IRQ-Steuerung für das Sampling Ready Flag.

Beim DBF-COM1 handelt es sich um ein Kommunikationsmodul mit physikalischen Treibern für 2 × CAN, 4 × RS485 und 1 × RS232. Zugehörige SOPC-Builder-Komponenten stehen für CAN (www.ifi-pld) und UARTs für RS485 und RS232 im Internet zur Verfügung. Neben der Standard-UART bietet www.maco-engineering.de eine 16.550-kompatible UART an. Folgende Speicher- und I/O-Module sind verfügbar:

  • DBF-SDRAM1: 128-MByte-SDRAM-Modul, 32 Bit breit mit SOPC-Builder.
  • DBF-SRAM1: 2 MByte Fast-SRAM und 8 MByte Flash mit SOPC-Builder-Komponente.
  • DBF-FLASH1/192: 192 MByte NOR-Flash.
  • DBF-DVI-IN: DVI-Eingangsmodul, basierend auf dem TFP401 von TI.
  • DBF-DVI-OUT: DVI-Ausgangsmodul, basierend auf dem TFP401 von TI.
  • DBF-PHY1: Zweifach-Industrial-Ethernet-Phy, basierend auf DP83848-Chips von NSC. RJ45-Schnittstelle mit SOPC-Builder-10/100-MAC-Komponente.
  • DBF-PHY2: Zweifach-Industrial-Ethernet-Phy-Modul, basierend auf dem Dual-Phy DP83849 von NSC. RJ45-Schnittstelle mit SOPC-Builder-Komponente.
  • DBF-PHY3: Zweifach-Industrial-Ethernet-Phy-Modul, basierend auf dem Dual-Phy DP83849 von NSC. Mit Fibre-Optic-Interface, basierend auf dem AFBR-5978 von Avago.
  • DBF-TFT1: TFT-Schnittstelle für LVDS (3+1) oder (4+1) mit Inverter-Stromversorgungsschnittstelle und Touch-Screen-Controller, basierend auf dem TSC2200 von TI. Die SOPC-Builder-Komponente zur Ansteuerung von TFTs ist verfügbar.

Software- und Betriebssystemkomponenten

Die emlix GmbH hat ein Embedded-Linux-Package speziell für das SnakeBytesKit entwickelt. Dieses Linux-Paket unterstützt die konfigurierbare Peripherie des FPGA-Erweiterungsboards mit einem modularen Treiber-Layer und ist Bestandteil des Softwarepakets. Das Linux-BSP, das mit dem Kit geliefert wird, basiert auf dem Linux Target Image Builder (LTIB) von Freescale für das Board RioGrande. Es unterstützt eine beliebige Anzahl von FPGA-Instanzen und I/O-Module: ein LCD-Controller mit SRAM und einfacher 2-D-Beschleunigung, ein sehr schnelles Zweifach-A/D-Wandler-Modul, ein CAN-Modul und andere. Mitgelieferte Demo-Applikationen zeigen, wie dieses Referenzdesign innerhalb des Linux-Systems verwendet wird.

Als zusätzlichen Service und um Kunden den Zugang zu den Vorteilen der Embedded-Linux-Welt zu ermöglichen, bietet emlix Einführungstrainings sowie projektspezifische Unterstützung und Entwicklungsservices an.

IP-Information für PCI und Local Bus

Der PCI IP-Core von Altera befindet sich seit über fünf Jahren auf dem Markt. Mit dem SnakeBytes-Board wird ein PCI-IP-Core für 32 Bit/33 MHz angeboten. Die IP-Module stehen in Verilog HDL und VHDL zur Verfügung. Das PCI-Core-Target kann kostenlos evaluiert werden, sofern die Ziel-Hardware und die Entwicklungssoftware Quartus II miteinander verbunden sind, zum Beispiel über USB. Dieses Feature wird als „OpenCore Plus“ bezeichnet.

Der Local-Bus-IP wurde Wiese Signalverarbeitung (www.wiese.de) für den Datenaustausch zwischen PowerPC und FPGA auf niedrige Latenz optimiert. Das Interface stellt zwei Modi zur Verfügung: Memory-Mapped-Interface und Avalon-Master-Interface. Das Memory-Mapped-Interface ist auf höchsten Datendurchsatz und niedrigste Latenz optimiert. FPGA-seitig lässt sich Peripherie direkt an diese Schnittstelle anschließen.

Das Avalon-Master-Interface unterstützt den SOPC-Builder mit einer einfachen Möglichkeit zur Einrichtung eines Peripherie-Systems ohne VHDL-Programmierung. Der IP-LBUS ist in Form einer OpenCore-Plus-Version für Entwicklungszwecke erhältlich.

Entwicklungs-Tools für Hard- und Software

Mit SnakeBytes liefert EBV die komplette Version der Altera-Software Quartus II aus. Im Rahmen der Entwicklungsumgebung Quartus II wird der SOPC-Builder ebenfalls mit ausgeliefert. Der SOPC-Builder ist ein Tool, bei dem der Anwender die jeweiligen IP-Cores und die Verbindung auswählen und sein System erzeugen kann.

Für das MPC8349E-MITX-GP-Linux-BSP wurden die Möglichkeiten des Linux Target Image Builders (LTIB) genutzt. Der LTIB setzt sich aus mehreren Tools zu-sammen, die vorhandene Open-Source-Konfigurationsskripte und Source-Code-Pakete verwenden und diese in einem einzigen BSP bündeln.

Die Source-Code-Pakete enthalten Boot Loader und Linux-Kernel-Sources sowie viele User-Space Source-Code-Packages, die zur Weiterentwicklung oder Anpassung des kompletten BSP verwendet werden können. LTIB enthält auch die notwendigen Compiler-Pakete, die zur Entwicklung des BSP erforderlich sind.

EBV Elektronik, Tel. +49(0)8121 7740

(ID:194491)