MICROBLAZE的调试方法
更新时间:2024-04-17 08:11:01 阅读量: 综合文库 文档下载
MICROBLAZE的调试方法介绍
MICROBLAZE是XILINX提供的采用大端存储系统、指令和数据采用哈佛结构的32位软核,可在SPARTAN2,3和VIRTEX系统上运行,现对其调试方法做一个简单介绍,希望对有兴趣这方面开发的人有所帮助。
XILINX提供的调试环境主要有GDB和SDK。即在XPS环境下可通过调用GDB完成,也可将程序导入SDK环境下进行调试。这两种方法都是通过XMD作为底层工具与目标进行通讯。本文以XPS环境下的GDB调试为例。
调试的方法主要由4种:MDM,XMD-stub,ISS和Virtual Platform。其中后两为仿真调试,不需要目标硬件支持,对于没有目标板的而又想预先程序开发的用户是个不错的选择。下面对这4种方法逐一做一简要介绍。
1. MDM(Microprocessor Debug Module)
这种方式是基于硬件的调试方法。主机通过JTAG与FPGA中的MDM core相连,而MDM又与Microblaze的调试端口连接起来,从而完成调试信息的通讯。一个MDM模块可以与一个和多个MicroBlaze处理器核相连,如下图1。
图1 MDM连接
首先要加入opb_mdm模块并完成与microblaze调试接口的连接,并设置好相应的参数,如图2所示。如果是通过BSB创建的项目,选择Use On-chip Debug Logic作为调试方式即可完成opb_mdm模块的加入。
图2 MDM相关设置 相应的MHS文件为: BEGIN microblaze
PARAMETER INSTANCE = microblaze_0 PARAMETER HW_VER = 4.00.a PARAMETER C_DEBUG_ENABLED = 1 PARAMETER C_NUMBER_OF_PC_BRK = 2
PARAMETER C_NUMBER_OF_RD_ADDR_BRK = 1 PARAMETER C_NUMBER_OF_WR_ADDR_BRK = 1 BUS_INTERFACE DLMB = dlmb BUS_INTERFACE ILMB = ilmb BUS_INTERFACE DOPB = mb_opb BUS_INTERFACE IOPB = mb_opb PORT CLK = sys_clk_s
PORT DBG_CAPTURE = DBG_CAPTURE_s PORT DBG_CLK = DBG_CLK_s
PORT DBG_REG_EN = DBG_REG_EN_s PORT DBG_TDI = DBG_TDI_s PORT DBG_TDO = DBG_TDO_s
PORT DBG_UPDATE = DBG_UPDATE_s END
BEGIN opb_mdm
PARAMETER INSTANCE = debug_module PARAMETER HW_VER = 2.00.a PARAMETER C_MB_DBG_PORTS = 1 PARAMETER C_USE_UART = 1 PARAMETER C_UART_WIDTH = 8
PARAMETER C_BASEADDR = 0x41400000 PARAMETER C_HIGHADDR = 0x4140ffff BUS_INTERFACE SOPB = mb_opb PORT OPB_Clk = sys_clk_s
PORT DBG_CAPTURE_0 = DBG_CAPTURE_s PORT DBG_CLK_0 = DBG_CLK_s
PORT DBG_REG_EN_0 = DBG_REG_EN_s PORT DBG_TDI_0 = DBG_TDI_s PORT DBG_TDO_0 = DBG_TDO_s
PORT DBG_UPDATE_0 = DBG_UPDATE_s END
其中PARAMETER C_USE_UART = 1是使能MDM中的UART功能,可通过它模拟UART从JTAG口传送数据。
在启动XMD与目标板连接之前,应用相应的设置如图3所示,选择HARDWARE,即选用MDM的调试方法。
图3
如一切正常的话,则XMD窗口显示的信息如图4所示。
图4 MDM信息显示
此时便可启动GNB进行软件调试了。
2 XMDSTUB
这是一种基于软件的调试方法。XMDSTUB是一段从0x0开始的监控程序(ROM
MONITOR),它可通过JTAG-UART(在OPB-MDM中使能的UART,当然也可单独加入一JTAG-UART IP核)或UART口与XMD完成数据通讯,因此在MSS文件中必须有一个OPB-MDM或UARTLITE设计为XMDSTUB PERIPHERAL。相应的MSS文件如下所示:
BEGIN microblaze
PARAMETER INSTANCE = microblaze_0 PARAMETER HW_VER = 3.00.a PARAMETER C_DEBUG_ENABLED = 0 BUS_INTERFACE DOPB = mb_opb BUS_INTERFACE IOPB = mb_opb BUS_INTERFACE DLMB = dlmb BUS_INTERFACE ILMB = ilmb PORT CLK = sys_clk_s END
BEGIN opb_mdm
PARAMETER INSTANCE = debug_module PARAMETER HW_VER = 2.00.a PARAMETER C_MB_DBG_PORTS = 0 PARAMETER C_USE_UART = 1 PARAMETER C_UART_WIDTH = 8
PARAMETER C_BASEADDR = 0x80002000 PARAMETER C_HIGHADDR = 0x800020ff BUS_INTERFACE SOPB = mb_opb PORT OPB_Clk = sys_clk_s END .....
当然这也可通过GUI进行设置,PROJECT-SOFTWARE PLATFORME SETTING,如图5所示:
图5
在Applications中完成如图6所示的设置,保证在编译时将XMDSTUB程序从0x0处开始放置。
另在XMD设置中,即图3中,应选择stub选项。在advanced options中,默认的是JTAG方式的连接,即采用JTAG-UART方式,用JTAG口模拟UART功能。如要选用UART方式,可勾上advanced options,选择serial,并设置好相应的串口参数,与IP CORE中选中的UARTLITE参数保持一致,保证正确连接,如图7所示。 另外,有一个有意思的事,不知是不是我机子的问题,就是当我将advanced options中选为SERIAL之后,就没法再改回JTAG了,SAVE时总是报错。一个解决的办法就是先将CONNECTION TYPE改为其它类型SAVE,然后再改回STUB,此时就不要再选advanced options了,因为默认的是JTAG方式。
图6
图7
上述设置完成后,便可DOWNLOAD程序,将XMDSTUB程序下载时FPGA中,然后打开XMD进行连接和启动GDB的SEVER,最后用GDB完成应用程序的下载和调试。
3 ISS(Instruction Set Simulator)
这是一种基于指令集仿真的调试方法,只能支持处理器和内存模型,对其它的周边硬件不支持。在图3中选用SIMULATOR,没有使用过这种方法,所以不多说。
4 Virtual Platform systems
虚拟平台是硬件系统指令周期级的仿真模型。通过它可以在没有硬件的基础上,进行应用程序的调试和优化。如果没有硬件平台,这是一种很好的选择。 在XPS中,选择Tools > Generate Virtual Platform创建虚拟平台。然后在图3的XMD中便可选择virtual platform选项。打开XMD,输入vpconnect命令,或前三个字母vpc,完成XMD与虚拟平台的连接,如图8所示。 最后便可运行GDB程序进行相应的调试工作了。
图8
这4种调试方法先介绍到这里,具体可参考XILINX公司提供的文档。文中错误在所难免,希望大家指正,telantan@sohu.com
正在阅读:
MICROBLAZE的调试方法04-17
中专生的出路 初中结业上中专好不好03-30
中电建〔2012〕498号关于印发《中国电力建设集团有限公司专业技05-03
回转窑安装作业指导书01-04
最新2018年部编版小学语文二年级上册第一次月考(第一二单元)试卷10-06
《力和物体平衡》练习04-20
《苏教版六年级上册语文期末试卷》12-29
增值税日常稽查办法01-09
- 冀教版版五年级科学下册复习资料
- 微生物学复习提纲
- 2013—2014学年小学第二学期教研组工作总结
- 国有土地转让委托服务合同协议范本模板
- 我的固废说明书
- 企业管理诊断报告格式
- 东鼎雅苑施工组织设计
- 谈谈如何做好基层党支部书记工作
- 浮梁县环保局市级文明单位创建工作汇报
- 管理学基础知识
- 大学物理实验报告23 - PN结温度传感器特性1
- 计算机网络实践
- 酒桌上这四种情况下要坐牢,千万别不当回事……
- 国家康居示范工程建设技术要点
- 中国贴布行业市场调查研究报告(目录) - 图文
- 新课标下如何在高中物理教学中培养学生的创新能力初探
- 营养师冬季养生食谱每日一练(7月4日)
- 关注江西2017年第3期药品质量公告
- 建设海绵城市专题习题汇总
- 10万吨年环保净水剂建设项目报告书(2).pdf - 图文
- MICROBLAZE
- 调试
- 方法
- 人员管理流程
- 电力基础与实务考试辅导习题g - 图文
- 小学高年级说明文阅读训练题集(有答案)
- 电大毕业论文写作格式与模板
- 淮河流域水利科技发展规划
- 《行政法学》第04章在线测试
- H3C华三产品线 - 路由器 - 交换机命名规则及交换机基本命令
- 河南监理工程师继续教育C 答案 85分
- 当代微建筑设计倾向的实验性探索 - 夏峻嵩 - 图文
- 西华师范大学-计量经济学复习资料 - 图文
- 北师大版二年级语文下册 - 近义词反义词多音字 - 成语
- 2017-2018幼儿园保教工作总结
- 灵台县丧葬习俗的调查与研究(曹永强)
- 花样跳绳教案
- 织金县城关镇富祥煤矿2015年三项计划文字说明
- 青岛大学2012年硕士生招生专业目录
- 关于孝道在当今社会中的思考1
- 浅析新会计准则和新税法下工资与福利费的列支范围
- 计算机网络(谢希仁)复习题
- XX产业园路网工程建设项目可行性研究报告 - 图文