首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

Ubuntu12.04下Xilinx MicroBlaze调试总结(2)

Ubuntu12.04下Xilinx MicroBlaze调试总结(2)

设置完成之后点击program。ps:这里针对Digilent Atlys编程的时候需要设置JTAG,否则识别不了,具体的就是Menu->Xilinx Tools->Config JTAG Settings,在弹出的窗口中的JTAG Cable一栏中Type选择Digilent USB Cable,默认的Auto Detect在这里不能识别Digilent的USB编程器。如下图:

  
不过这里的Digilent USB Cable可能是因为我安装了Digilent的工具才有的,如果没有安装Digilent的工具,XUP课程中也提供了一种设置方法,如下图(此方法我没有验证过):

待编程结束后即可看到串口终端有信息输出:

到此程序运行成功!


b. 将一部分section放到其他的存储区(比如外部的DDR中),而不是全部放在bram中。
这个方法对于Memory Test程序来说可能不适用(因为Memory Test是测试DDR的,不能放在DDR中运行),对于其他程序来说就可以了。主要的过程是修改linkscript,即链接脚本,它是用来设置section存放的地址的。
设置如下,打开Generate linker script

在basic选项卡中可以设置Code/Data/Heap&Stack存放的地址,如果要放到DDR中可以选择mcv_ddr2_s0_AXI_BASEADDR

设置完成之后也能编译通过,不过如果要在外部DDR中运行,则需要做一些其他设置。如下图,FPGA编程的时候需要设置Software Configuration部分的内容必须为bootloop(
这里不能够将生成的elf文件直接通过Program FPGA烧写进去,否则会报elf check failed!",参考链接如下:http://forums.xilinx.com/t5/Embedded-Development-Tools/Programing-FPGA-Problem-elfcheck-failed/m-p/64667#M13690


编程结束后,Menu->Xilinx Tools->XMD Console打开XMD控制台,然后在控制台中:
cd到可执行文件存放的目录
dow xxx.elf
run
如果想要在线调试,直接点击xsdk面板上的debug按钮即可。
不过在Ubuntu12.04下,点击debug会出现如下Error:
ERROR : Unexpected error while launching program. java.lang.RuntimeException: Error creating session
    at com.xilinx.sdk.debug.core.XilinxAppLaunchConfigurationDelegate.debugApplication(Unknown Source)
    at com.xilinx.sdk.debug.core.XilinxAppLaunchConfigurationDelegate.launch(Unknown Source)

查了一些资料发现是GDB的问题,链接如下:
http://forums.xilinx.com/t5/Embedded-Development-Tools/XMD-XSDK-Debugging-does-not-start-Error-creating-session/td-p/110328(同时解决方法在第二页)
继承事业,薪火相传
返回列表