cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
vivienwwp
Explorer
Explorer
607 Views
Registered: ‎10-28-2018

Code won't run to main()

Hi,

    I've got a microblaze and a AXI4 SPI peripheral and I am using the test code to run a SPI self-test. However, my processor runs but will not get to main(). I do not have a DDR and I am running code off the BRAM.  I am new to the Xilinx SDK, how do I tell where this code is now residing? 

Tags (2)
0 Kudos
Reply
8 Replies
florentw
Moderator
Moderator
578 Views
Registered: ‎11-09-2015

Hi @vivienwwp ,

Can you check that the microblaze in not held in reset?


Florent
Product Application Engineer - Xilinx Technical Support EMEA
**~ Don't forget to reply, give kudos, and accept as solution.~**
0 Kudos
Reply
vivienwwp
Explorer
Explorer
550 Views
Registered: ‎10-28-2018

I am pretty sure the Microblaze is not in reset because I do see that is says "Microblaze(Running)"

0 Kudos
Reply
watari
Teacher
Teacher
546 Views
Registered: ‎06-16-2013

Hi @vivienwwp 

 

Would you share your block design by jpeg or something ?

 

Best regards,

0 Kudos
Reply
vivienwwp
Explorer
Explorer
543 Views
Registered: ‎10-28-2018

 
Capture.PNG
0 Kudos
Reply
vivienwwp
Explorer
Explorer
542 Views
Registered: ‎10-28-2018

I was also going to ask where the should the master SPI clock be fed into at AXI Quad SPI? The microblaze is a slave at this point.

0 Kudos
Reply
watari
Teacher
Teacher
528 Views
Registered: ‎06-16-2013

Hi @vivienwwp 

 

1) Make sure the polarity of reset_rtl_0 and other module's input reset port.

2) Fix input floating on microblaze_0_xlconcat module.

 

Best regards,

0 Kudos
Reply
vivienwwp
Explorer
Explorer
519 Views
Registered: ‎10-28-2018

I am pretty sure the polarity is correct for reset_rtl_0.
As for microblaze_0_xlconcat, how should the input In0 and In1 be connected?
0 Kudos
Reply
dtodorovtu
Visitor
Visitor
84 Views
Registered: ‎12-05-2018

Hello,

 

I have pretty much the same issue:

-> Microblaze MCS design (using only internal BRAM).

-> Code compiles, debug session is started. PL is working - i.e. clock and reset are as expected.

-> However, CPU stalls at a code loop somewhere. I can pause execuition and step through the code.

-----> Over the XSCT console I can reset the target (using rst) and the instruction stepping window points me at instruction at 0x0000000 (which is inside some arbitrary C function, not main).

-----> Strangely, when i run the target to breakpoint at main (using con) the target actually reaches the main(). (???)

Is there any explanation on this odd behavior?

 

0 Kudos
Reply