• 0
Sign in to follow this  

Use Microblaze performance monitoring engine from AXI4Lite



I would like to use the MicroBlaze performance monitoring engine to 
collect some information on my application code running on the processor 
itself. I would need these information at application level. I have a 
problem to access these values.

In order to do these things, I have created a project with MicroBlaze 
and extended debug function, with 5 event counters and 1 latency 

Then I have inserted a MDM in my design and created an AXI4lite slave 
port to access from MicroBlaze itself. In this mode I should be able to 
access to internal performance monitoring engine by using DBG_CTRL and 
DBG_DATA registers indicated to page 12 of pg115 (MDM product guide), 
with values indicated on page 92 of MB reference guide (version 

Suppose I need to measure number of any valid executed instruction, I 
have written the code attached to this post.

The problem happens when I perform the read from *dbg_data: the read 
action on this variable does not give any response.

The register pointed by variable is R/W.

Do you have any suggestion about this wrong behaviour?

Thank you.


Share this post

Link to post
Share on other sites

2 answers to this question

Recommended Posts

  • 0

Hi giav,

I apologize for not getting back to you sooner. I have asked some of our applications engineers to see if they have any thoughts on this.


Share this post

Link to post
Share on other sites
  • 0

Unfortunately, this is a topic that is outside of our capabilities.  Please try to contact Xilinx over at their forum.

Best of luck!


Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this