Jump to content
  • 0

Unable to get UART working on existing Arty MicroBlaze solution


rehsd

Question

Hi, everyone. I am looking for some guidance on how I could best troubleshoot an issue I'm running into. On my Arty, I can setup a new project with a MicroBlaze and UART, and I can write to the serial port from the MicroBlaze C code just fine. However, I have an existing MicroBlaze project where I am trying to add a UART, and I have been struggling to get output to the serial monitor.

I've posted some additional details here. Any suggestions on how to get the UART working in this existing project? What information can I provide to be more helpful?

Thank you!

Link to comment
Share on other sites

8 answers to this question

Recommended Posts

  • 0

Thank you, @thinkthinkthink! I haven't used the Integrated Logic Analyzer IP before, but this looks to be a good time to try it out. ☺️ I'll dig into that next.

In the meantime, I found that the two UART pins aren't getting placed. The below image shows the results from a working project and a failing project. I haven't been able to find too much on the Netlist 29-160 Implementation error, yet, but I'm still looking.

pins.thumb.png.0ffea3f37a027d69e4c64b45760939af.png

 

board_pin.thumb.png.c22ab9e95ba4f0114116640237eaa588.png

 

board_pin2.thumb.png.956c717965deb3db53aefec3367d5823.png

Link to comment
Share on other sites

  • 0

You can also try regenerating the bitstream after clearing IP cache from Tools->Settings->IP and/or manually constraining those pins in the board XDC file to your UART interface. It's pretty pointless to do any debugging if those pin connections haven't been made inside the FPGA. What I hope will happen is after you add an ILA to your design and regenerate the bitstream, Vivado will finally do its job properly during the synthesis and implementation phases.

Edited by thinkthinkthink
Link to comment
Share on other sites

  • 0

I have regenerated the bitstream (along with the IP and other aspects of the project). I have tried the following in my board XDC (lines 91, 92), with no change in the placed pins, and with the subsequent error.

1468921777_boardconstraints.thumb.png.02fab3adc6b12109505969bad0704cf4.png

 

xdc_1.thumb.png.e3a9b75922281a597c970f549aa920f2.png

I also tried this:

xdc_2.thumb.png.27e1c08689acbb1336fb23e42d3f7a8b.png

Same Common 17-55 error and no change to the placed pins.

I also tried this:

xdc_3.thumb.png.df8d9c7c8e4ec4608ec7058d93a5176e.png

Same Common 17-55 error and no change to the placed pins.

I then tried connecting the uartlite this way and received the subsequent error:

1059996192_altconn.thumb.png.6667513ae10cd48af92c8f17995d5cca.png

 

The connection approach above resulted in no changes to the placed pins.

Should I be trying to map the board pins a different way?

 

Link to comment
Share on other sites

  • 0

I disconnected the USB UART component from the Board tab and configured the ports and constraints as seen below. 

disc1.thumb.png.3f52d2b790320bf263ee3e6f80ebf01b.png

disc2.thumb.png.2e4dca8178adee3277dd0b07e3c223b3.png

Same Common 17-55 error and no change to the placed pins.

I then removed the uartlite and added again (not from the Board tab, naming it _55).

repl.thumb.png.fc868ede998b6fcc72a8aa50a246f4ea.png

 

Same Common 17-55 error and no change to the placed pins.

It seems that I'm not getting the right names in the constraint file for Vivado to figure out where to tie it to, hence the 17-55 error.

Most recently, I tried this (same results):

usb2.thumb.png.3c11774e3fbd507cc602e175a6872eee.png

usb2b.thumb.png.d1cb7afb45f763a07913336ddc451aca.png

 

usb2c.thumb.png.0bb38ac08a852872db78a8b9b43f0e66.png

I will scour through the Warnings and see if I can find some additional clues.

Edited by rehsd
Link to comment
Share on other sites

  • 0

I've noticed that the design wrapper isn't even getting the uartlite information in it (e.g., external ports), so I'll focus on the block design-to-design wrapper as where the issue lies. I'll post more details later today.

Link to comment
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
×
×
  • Create New...