Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
19525 Discussions

Moving HPS UART to FPGA fabric in Cyclone V

BAbbott
Novice
824 Views

Hi,

 

I'm looking to move my console port (UART0) from where it is currently implemented to using FPGA pins to do so. Using the HPS IO set is straight forward but I'm not able to see any activity when using FPGA pins (and fabric). 

I've set UART0 to use FPGA pins (UART0 Mode). However, I'm still not seeing a console port when connecting to the device. Are there more steps that I'm missing? Do I need to regenerate the BSP to support this and what changes should I expect?

 

Thank you.

 

 

0 Kudos
1 Solution
BAbbott
Novice
798 Views

As an update - 

 

I've been able to confirm that in moving the UART and updating the pinmux config file, the UART0USEFPGA  flag has been set to 1. The console port (UART0) now outputs data to the PC terminal. However, I'm unable to send characters TO the console.

 

I've been able to verify that the terminal is sending information to the FPGA but nothing happens. I confirmed that the pin assignments themselves are correct for the FPGA. Could there be something I'm missing from a setup standpoint that allows me to move the console from the origianl HPS UART pins to FPGA pins instead?

 

Thanks.

View solution in original post

7 Replies
sstrell
Honored Contributor III
813 Views

Any time you make changes to the HPS you have to regenerate the system, recompile the Quartus project, and recreate the bootloader/preloader.

BAbbott
Novice
808 Views

Got it.

 

I was able to move the UART and updated a pinmux file to do so. However, I'm still running into issues where I'm unable to receive data, only transmit data FROM the Cylcone V. Any thoughts?

BAbbott
Novice
799 Views

As an update - 

 

I've been able to confirm that in moving the UART and updating the pinmux config file, the UART0USEFPGA  flag has been set to 1. The console port (UART0) now outputs data to the PC terminal. However, I'm unable to send characters TO the console.

 

I've been able to verify that the terminal is sending information to the FPGA but nothing happens. I confirmed that the pin assignments themselves are correct for the FPGA. Could there be something I'm missing from a setup standpoint that allows me to move the console from the origianl HPS UART pins to FPGA pins instead?

 

Thanks.

jozephka99
New Contributor II
748 Views

Hi,

I'm also working on routing UART to FPGA. I use hps ip and route the uart0 and uart1 to fpga. then I export the uart pins and  in fpga connect it's  rx/txto my uart core and other pins open or low or high as hps guideline said (https://www.intel.com/content/www/us/en/programmable/documentation/pde1458159073865.html#pde14581669.... I didn't do anything with pin assignment. But as you said. I'm only receiving hps debug messages from one uart port and receiving nothing from other. Couldn't send to port either. Am I missing something in the connections? How can you connect the uart to fpga? My connections is the attachment. Thx for any help. (ps: I'm using Arria10 device but basics are the same I think) 

aikeu
Employee
677 Views

Hi BAbbott,

 

Do your uart still having problem sending characters to the console?

 

Thanks.

Regards,

Aik Eu

BAbbott
Novice
671 Views

My problem has been solved. Turns out the transmit issue was an issue with an external device.

aikeu
Employee
638 Views

Hi BAbbott,


Thanks for your feedback.

I will close this thread for now.


Thanks.

Regards,

Aik Eu


Reply