Microblaze start up code

Hi all ,

I am using EDK to develop software for microblaze. Where can I find the startup file where all the exception vectors are defined , stack is initilised , .bss is zeroed out etc.

I am hitting a software exception called _vectore_sw_exception at 0x08 location , I think it is the used defined exception. How can I put my own debug code in this location.

I am new to EDK so any help would save me sleepless nights.

BR Rate

Reply to
ratemonotonic
Loading thread data ...

In your project directory, look at 'microblaze_0\code\xmdstub.s'

G.

Reply to
ghelbig

But I am using the bootloop programmed in the BRAM. Cant find _vector_sw_exception anywhere in the project directory structure.

BR Rate

Reply to
ratemonotonic

You won't find that defined in the project; it's defined in the processor reference guide.

0x08 is "User Vector (Exception) 0". Somewhere in the "other" code, a call is being made that goes to this vector.

The 1st thing to do is write an exception handler that figures out who invoked it (and install it at vector 0x8).

G.

Reply to
ghelbig

Thank G. This might be a very daft question , but couldnt find any answers from google-

I am using Standalone framework , which gives me an option to register exception handlers using void_microblaze_register_exception_handler(Xuint8 ExceptionId, XExceptionHandler Handler, void *DataPtr) function ,

ExceptionId being the exception number. From documentation I found that exception ID for User exceptions is not there.

How can I register a handler for user exceptions?

BR Rate

Reply to
ratemonotonic

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.