我在Xilinx FPGA中有一个设计,它是远程的,我只有一个JTAG连接。在Microblaze FPGA模块IP中有一个功能,可以让用户启用JTAG UART。在BSP中,有一个设置,usart用于stdin和stdout。当我打开下拉列表时,只有“none”或“axi_uartlite_0”可用。我真正想知道的是如何将STDIO更改为使用JTAG接口,以便我可以看到我的应用程序正在打印的内容。我在其他搜索结果中看到评论说“只需将stdio从axi_uartlite重定向到JTAG uart”但我没有找到确切的方法来做到这一点。这正是我想做的-重定向STDIO从一个物理UART到JTAG UART。如果有任何人谁知道,并愿意通过沿着的信息,我会非常感激,并会给予尽可能多的荣誉,因为我可能可以。提前感谢任何和所有的援助提供-非常感谢。
2条答案
按热度按时间ttvkxqim1#
我通过从头开始重新创建整个设计解决了这个问题。似乎仅仅在MicroBlaze SDK模块(MDM)中添加“启用JTAG接口”复选框并生成比特流和导出硬件不足以将该功能添加到BSP。
一旦我做了生成/导出,并创建了一个全新的应用程序的基础上,BSP我能够看到打印的jtagterminal。
所以,我相信在第一个过程中有一些奇怪的行为。应该做更多的工作来解决,但现在我正在前进。我希望这能帮助其他有类似问题的人。
dced5bon2#
我很确定你需要添加一个带有“启用JTAG接口”复选框的MDM,重新合成,重新构建比特流,导出位文件等。完成这些之后,Vivado将更新SDK用于配置库,编译器等的设置。
所以,是的,需要一个完整的重建,IMHO。
XSCT(Xilinx Software Command Line Tool):
https://japan.xilinx.com/htmldocs/xilinx2019_1/SDK_Doc/xsct/streams/reference_streams_jtagterminal.html
https://japan.xilinx.com/htmldocs/xilinx2017_1/SDK_Doc/index.html?q=/htmldocs/xilinx2017_1/SDK_Doc/xsct/use_cases/xsdb_using_jtag_uart.html