MicroBlaze

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

MicroBlaze ist ein in FPGAs der Firma Xilinx verwendbarer Mikrocontroller. Dieser Mikrocontroller existiert als Besonderheit nicht als physische Hardware, sondern ist nur als in Hardwarebeschreibungssprachen wie VHDL und Verilog verfasster Softcore verfügbar. Durch die spezielle Optimierung auf die Besonderheiten bestimmter FPGA-Bausteine ist der Logikbedarf dieses Mikrocontrollers gering und bewegt sich je nach Ausbaustufe und Version zwischen rund 700 und über 2000 Slices.

Microblaze ist ein 32-Bit-RISC-Mikrocontroller, der in der Architektur von dem DLX-Mikroprozessor motiviert ist. Er hat eine konfigurierbare drei- bis fünfstufige Pipeline, internen Cache, einen Interrupt, einen hardwarebasierten Multiplizierer und optional eine hardwarebasierende Divisionseinheit, eine Gleitkommaeinheit und spezielle Schieberegistereinheiten. Er besitzt mehrere unterschiedliche Busse, welche für den Anschluss von umfangreicher Peripherie und Speicher in einem FPGA vorgesehen sind.

Der Prozessor hängt primär an einem FPGA-internen CoreConnect-Bus (auch bekannt als PLB). Zusammen mit optionalem externem Speicher und weiteren Peripherieeinheiten am PLB oder On-Chip Peripheral Bus entsteht ein System-on-a-Chip.

Als Entwicklungssystem kommt die GNU Compiler Collection zur Anwendung, die von Xilinx um eine grafische Oberfläche mit der Bezeichnung EDK ergänzt wurde und die Integration in die FPGA-Hardware erleichtern soll. Daneben gibt es noch eine auf Eclipse basierende Entwicklungsumgebung. Als Betriebssysteme können bei Bedarf µClinux, Linux[1] oder FreeRTOS eingesetzt werden.

Neben der kostenpflichtigen Version des Microblaze, welcher durch vertragliche Beschränkungen nur auf FPGA-Bausteinen der Firma Xilinx eingesetzt werden darf, existieren diverse Nachbauten, welche quelloffen und binärkompatibel sind und auch auf FPGAs anderer Hersteller eingesetzt werden dürfen, beispielsweise der aeMB und der OpenFire. Der aeMB-MicroBlaze-Clone steht unter der LGPL-Lizenz und hat, im Gegensatz zu seinem Vorbild, einen bei OpenCores [2] üblichen Wishbone-Bus, der den Anschluss vieler fertiger und meist ebenfalls quelloffener FPGA-IO-Module ermöglicht [3]. Xilinx stellt außerdem einen weniger leistungsstarken "Softcore" zur Verfügung, den PicoBlaze.

Einzelnachweise[Bearbeiten]

  1. kernelnewbies 2.6.30Support Microblaze CPU architecture
  2. Opencores IP-Cores, die unter einer Open Source-Lizenz veröffentlicht wurden
  3. Wishbone-Spezifikation (engl.)

Weblinks[Bearbeiten]