wiki:Component/MicroBlaze

SocLib Components General Index

Micro Blaze Processor Functional Description

This hardware component is a Micro Blaze processor core as described in [www.xilinx.com/ise/embedded/mb_ref_guide.pdf the Xilinx documentation]. Note that the 9.2 version of ISE contains a pretty major evolution of the Micro Blaze that integrates a MMU, but this is not the version available within SoCLib (at least yet!). This component is an ISS, which should be wrapped with an IssWrapper for integration into a complete platform.

This instruction set simulator acts as a slave to the Iss Wrapper and is organised identically to the other Isses available within the library. Currently, the execution timings are pretty rough, and are typically one cycle per instruction.

The support for symetric and asymetric multiprocessing is hardwired using the fsl feature of the Micro Blaze. The processor number is given at instanciation time, and accessible through get on fsl0. Using other fsls will lead to an abort.

Component definition

Available in source:trunk/soclib/soclib/lib/metadata/microblaze.sd

Usage

Micro Blaze has no parameters.

Uses( 'microblaze')

Microblaze Processor ISS Implementation

The implementation is in

It is possible to compile a version of the Micro Blaze that issues the instruction address along with the instruction being executed by defining MBDEBUG at 1 line 35 of source:trunk/soclib/soclib/lib/src/iss/microblaze.cpp This is quite useful to check that the processor is really interpreting correctly a sequence of instructions. The Micro Blaze model is now able to connect to the GDB stub, so it is possible to use GDB for debugging software running on it.

Template parameters

This component has no template parameters.

Constructor parameters

MicroblazeIss( 
     sc_module_name name,   //  Instance Name
     int  ident);   // processor id

Visible registers

I'm not sure to understand what this means, ...

Interrupts

There is a single interrupt line on the Micro Blaze, so all the handling is software based.

Ports

None, They are provided by the IssWrapper.

Last modified 16 years ago Last modified on May 29, 2008, 6:07:19 PM