wiki:Component/ST231

Version 2 (modified by sylvain.girbal@…, 14 years ago) (diff)

--

SocLib Components General Index

!!!! UNDER CONSTRUCTION !!!!

ST231 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

Ports

The IssWrapper module is in charge of defining the communication ports.