MicroBlaze
This article needs additional citations for verification. (August 2018) |
Designer | Encoding Fixed | |
---|---|---|
Endianness | Little (Big) | |
Open | No | |
Registers | ||
32 × 32 bits |
The MicroBlaze is a soft microprocessor core designed for Xilinx field-programmable gate arrays (FPGA). As a soft-core processor, MicroBlaze is implemented entirely in the general-purpose memory and logic fabric of Xilinx FPGAs.
MicroBlaze was introduced in 2002.[1]
Overview
In terms of its instruction set architecture, MicroBlaze is similar to the
The MicroBlaze has a versatile interconnect system to support a variety of embedded applications. MicroBlaze's primary I/O bus, the
Many aspects of the MicroBlaze can be user configured: cache size, pipeline depth (3-stage, 5-stage, or 8-stage), embedded peripherals,
With the memory management unit, MicroBlaze is capable of hosting operating systems requiring hardware-based paging and protection, such as the
MicroBlaze V is based on the RISC-V architecture.
Vivado
Xilinx's
Designers use the Vivado IP Integrator to configure and build the hardware specification of their embedded system (processor core, memory-controller, I/O peripherals, etc.) The IP Integrator converts the designer's block design into a synthesizeable
), and automates the implementation of the embedded system (from RTL to the bitstream-file.) For the MicroBlaze core, Vivado generates an encrypted (non human-readable) netlist.The SDK handles the software that will execute on the embedded system. Powered by the GNU toolchain (GNU Compiler Collection, GNU Debugger), the SDK enables programmers to write, compile, and debug C/C++ applications for their embedded system. Xilinx's tools provides the possibility of running software in simulation, or using a suitable FPGA-board to download and execute on the actual system.
Purchasers of Vivado are granted a perpetual license to use MicroBlaze in Xilinx FPGAs with no recurring royalties. The license does not grant the right to use MicroBlaze outside of Xilinx's devices.
Alternative compilers and development tools have been made available from Altium but an EDK installation and license is still required.
Open source
In June 2009, MicroBlaze became the first soft-CPU architecture to be merged into the mainline Linux kernel source tree. This work was performed by Michal Simek and supported by PetaLogix and Xilinx.
As of September 2009, MicroBlaze GNU tools support is also being contributed to the Free Software Foundation's mainline repositories. Support for MicroBlaze is included in GCC releases starting with version 4.6[2]
Support was added to LLVM in April 2010,[3] but subsequently removed in July 2013[4] due to a lack of maintainer.
Clones
- aeMB, implemented in Verilog, LGPL license
- OpenFire subset, implemented in Verilog, MIT license
- MB-Lite, implemented in VHDL, LGPL license
- MB-Lite+, implemented in VHDL, LGPL license
- myBlaze, implemented in MyHDL, LGPL license
- SecretBlaze, implemented in VHDL, GPL license
Other soft processors
- Nios II
- TSK3000
- Xtensa
- LatticeMico32
- ARC
- RISC-V (A number of open source soft cores are available. At least one is packaged for Vivado.)
- ARM Cortex-M (Cortex-M1 and Cortex-M3 soft cores are available in Vivado)
See also
- soft processorprojects
- PicoBlaze
- Advanced Microcontroller Bus Architecture § Advanced eXtensible Interface (AXI)
References
- ^ Xilinx (August 21, 2002). "MicroBlaze RISC 32-Bit Soft Processor datasheet" (PDF).
- ^ "GCC 4.6 Release Series Changes, New Features, and Fixes". 2011-03-15. Retrieved 2011-03-15.
Support has been added for the Xilinx MicroBlaze softcore processor (microblaze-elf) embedded target.
- ^ "LLVM 2.7 Release Notes". releases.llvm.org. Retrieved 2019-04-07.
- ^ Christopher, Eric (2013-07-24). "[LLVMdev] Deprecating and removing the MBlaze backend". Retrieved 2019-04-07.