欢迎来到天天文库
浏览记录
ID:38344287
大小:494.50 KB
页数:11页
时间:2019-06-10
《MICROBLAZE的调试方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、MICROBLAZE的调试方法介绍MICROBLAZE是XILINX提供的采用大端存储系统、指令和数据采用哈佛结构的32位软核,可在SPARTAN2,3和VIRTEX系统上运行,现对其调试方法做一个简单介绍,希望对有兴趣这方面开发的人有所帮助。 XILINX提供的调试环境主要有GDB和SDK。即在XPS环境下可通过调用GDB完成,也可将程序导入SDK环境下进行调试。这两种方法都是通过XMD作为底层工具与目标进行通讯。本文以XPS环境下的GDB调试为例。 调试的方法主要由4种:MDM,XMD-stub,ISS和VirtualPlatform。其中
2、后两为仿真调试,不需要目标硬件支持,对于没有目标板的而又想预先程序开发的用户是个不错的选择。下面对这4种方法逐一做一简要介绍。1.MDM(MicroprocessorDebugModule) 这种方式是基于硬件的调试方法。主机通过JTAG与FPGA中的MDMcore相连,而MDM又与Microblaze的调试端口连接起来,从而完成调试信息的通讯。一个MDM模块可以与一个和多个MicroBlaze处理器核相连,如下图1。 图1MDM连接 首先要加入opb_mdm模块并完成与microblaze调试接口的连接,并设置好相应的参数,如图2所示。如果是
3、通过BSB创建的项目,选择UseOn-chipDebugLogic作为调试方式即可完成opb_mdm模块的加入。 图2MDM相关设置相应的MHS文件为:BEGINmicroblazePARAMETERINSTANCE=microblaze_0PARAMETERHW_VER=4.00.aPARAMETERC_DEBUG_ENABLED=1PARAMETERC_NUMBER_OF_PC_BRK=2PARAMETERC_NUMBER_OF_RD_ADDR_BRK=1PARAMETERC_NUMBER_OF_WR_ADDR_BRK=1BUS_INTERFA
4、CEDLMB=dlmbBUS_INTERFACEILMB=ilmbBUS_INTERFACEDOPB=mb_opbBUS_INTERFACEIOPB=mb_opbPORTCLK=sys_clk_sPORTDBG_CAPTURE=DBG_CAPTURE_sPORTDBG_CLK=DBG_CLK_sPORTDBG_REG_EN=DBG_REG_EN_sPORTDBG_TDI=DBG_TDI_sPORTDBG_TDO=DBG_TDO_sPORTDBG_UPDATE=DBG_UPDATE_sENDBEGINopb_mdmPARAMETERINSTANCE=deb
5、ug_modulePARAMETERHW_VER=2.00.aPARAMETERC_MB_DBG_PORTS=1PARAMETERC_USE_UART=1PARAMETERC_UART_WIDTH=8PARAMETERC_BASEADDR=0x41400000PARAMETERC_HIGHADDR=0x4140ffffBUS_INTERFACESOPB=mb_opbPORTOPB_Clk=sys_clk_sPORTDBG_CAPTURE_0=DBG_CAPTURE_sPORTDBG_CLK_0=DBG_CLK_sPORTDBG_REG_EN_0=DBG_
6、REG_EN_sPORTDBG_TDI_0=DBG_TDI_sPORTDBG_TDO_0=DBG_TDO_sPORTDBG_UPDATE_0=DBG_UPDATE_sEND 其中PARAMETERC_USE_UART=1是使能MDM中的UART功能,可通过它模拟UART从JTAG口传送数据。 在启动XMD与目标板连接之前,应用相应的设置如图3所示,选择HARDWARE,即选用MDM的调试方法。 图3 如一切正常的话,则XMD窗口显示的信息如图4所示。 图4MDM信息显示此时便可启动GNB进行软件调试了。2XMDSTUB 这是一种基于软件
7、的调试方法。XMDSTUB是一段从0x0开始的监控程序(ROMMONITOR),它可通过JTAG-UART(在OPB-MDM中使能的UART,当然也可单独加入一JTAG-UARTIP核)或UART口与XMD完成数据通讯,因此在MSS文件中必须有一个OPB-MDM或UARTLITE设计为XMDSTUBPERIPHERAL。相应的MSS文件如下所示:BEGINmicroblazePARAMETERINSTANCE=microblaze_0PARAMETERHW_VER=3.00.aPARAMETERC_DEBUG_ENABLED=0BUS_INTERFACE
8、DOPB=mb_opbBUS_INTERFACEIOPB=mb_opbBUS_I
此文档下载收益归作者所有