MicroBlaze Tutorial

Sep 13, 2007 3 Replies

Can anyone suggest a tutorial for MicroBlaze?



I have googled it and found many tutorials, however, most seem to emphasize the software end of things, whereas I already have an evolved hardware system built from Project Navigator that needs to be folded into the design.



I followed one EDK 7.1 MicroBlaze Tutorial in Spartan



3 as a partial guide (I'm actually on an ML402) and came up with these questions:


1) In this tutorial there seems to be a XPS directory and a separate Proj Nav directory. I tried to open both tools in one directory and it failed. What is the best strategy for maintaining directories?


2) I attempted to add a MicroBlaze uP with only the UART enabled in the Studio Wizard. I then followed steps to incorporate the system_stub into the Proj Navigator. I then had two top level designs in Proj Navigator. Since the Microblaze was new and short, I decided to wrap the system_stub into the top of my hardware by declaring the system_stub as a component, and instantiating it once in the top layer. This elaborated into a single project. I also cut and paste the IOs into the top.ucf file. Some IOs, the sys_clk_in and sys_rst_in repeat. The TX and RX signals were added into the ucf file and also added to the top entity. I now have this synthesize error: "Port is connected to input buffer and following ports: Port IO of instance reset 1 in unit top with type LUT1." I think I can fudge around this but isn't there a better way to handle UCF edits?


3) In general, can I share inputs with top and system_stub?


4) If system_stub and top want an output is there a way to switch or mux from one to the other?


5) I think the ideal tutorial would have a simple hardware algorithm and the MicroBlaze would be added to change some parameters within that algorithm or exchange data. Perhaps, a dual ported BRAM with one side going to the MicroBlaze and another to the top layer.


6) What clock frequency does system_stub need?

Thanks for your advice,



Brad Smallridge Ai Vision


Hi Brad,

My recommendation is when getting started with MicroBlaze, just stick with the XPS (platform studio) tool, and the Base System Builder wizard.

Build your EDK systems as the top level, and don't do any of that silly "Import to ProjNav" stuff. I really have no idea why this complicated flow is pushed in introductory documents - it makes no sense until you have specific reasons to do so.

One of my students put together a nice walkthrough for the ML401, it might be useful to you:

formatting link

You can ignore the uClinux-specific software stuff if that's not what you're after.

Regards,

John

Brad Smallridge wrote:

That's a nice walkthrough but doesn't address the issue of incorporating hardware designs.

Zitierten Text ausblenden -

I have written a MicroBlaze tutorial. You find it here:

formatting link

Sven

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required