pmon使用手册

上传人:suns****4568 文档编号:117494398 上传时间:2019-12-05 格式:PDF 页数:81 大小:679.42KB
返回 下载 相关 举报
pmon使用手册_第1页
第1页 / 共81页
pmon使用手册_第2页
第2页 / 共81页
pmon使用手册_第3页
第3页 / 共81页
pmon使用手册_第4页
第4页 / 共81页
pmon使用手册_第5页
第5页 / 共81页
点击查看更多>>
资源描述

《pmon使用手册》由会员分享,可在线阅读,更多相关《pmon使用手册(81页珍藏版)》请在金锄头文库上搜索。

1、 江苏中科龙梦科技有限公司 Jiangsu Lemote Technology Corporation Limited PMON 使用手册 (V1.0) 江苏中科龙梦科技有限公司 江苏中科龙梦科技有限公司 江苏中科龙梦科技有限公司 Jiangsu Lemote Technology Corporation Limited 目 录 目 录 PMON概述.1 1 PMON介绍2 1.1 PMON命令.3 1.2 PMON的特点.5 2 PMON环境变量6 3 下载记录类型.8 4 经过RS-232C下载文件8 4.1 选择目标端口的数目9 4.2 选择和设置波特率9 4.3 流控制9 4.4 实例

2、10 4.4.1 一个端口的模式.11 4.4.2 两个端口的模式.11 5 网络连接.11 5.1 配置.11 5.2 配置TFTP服务器 13 5.3 通过网卡下载文件13 6 监控命令介绍.13 7 按字母顺序列出所有命令.20 8 在SDEMIPS使用 PMON61 9 在PMON中的AlgPOST(一段自检代码)63 9.1 本章介绍63 9.2 AlgPOST 简介和概述.63 9.3. 测试队列.64 9.4 AlgPOST怎样和你通信.64 9.5 控制测试- AlgPOST 使用的环境变量65 9.6 AlgPOST诊断细节.66 9.6.1 测试顺序66 9.6.2 所有部

3、件都工作时发生了什么.68 9.6.4 解释AlgPOST输出69 9.6.5 显示屏上的状态消息.69 9.6.6 控制台的错误消息.70 9.7 编程AlgPOST75 9.7.1 PROM包 75 9.7.2 PROM布局76 9.7.3 NVRAM(nor-volatile RAM)的环境变量 77 9.7.4 NVRAM 结构.77 9.7.5 AlgPOST 的例外向量和重新引导77 10 术语表.78 1 PMON 概述 PMON 概述 本手册描述了PMON(prom monitor) ,PMON原本是为了LSI Logic写的,并且提供了可再用的 源代码。Algorithmic

4、s公司已经得到扩展并且适用了PMON运行在一些主板的产品中,例如 P-4000i原形主板。在你的硬件平台上应用PMON时,它将给你支持和建议。本手册包括以下 几部分: Section 1, PMON介绍 Section 2, PMON的环境变量 Section 3, 下载记录类型 Section 4, 经过RS-232C下载文件 Section 5, 网络连接 Section 6, PMON命令概述 Section 7, 字符命令列表 Section 8, 在SDEMIPS使用PMON Section 9, 加电自检描述 Section 10,经常使用的关键字和缩写字的词汇表 Section

5、11, 参考文献 2 1 PMON 介绍介绍 PMON提供了在MIPS体系结构处理器下调试软件应用的一个基本命令集。LSI原本是使PMON运 行在LS33000 Self-Embedding(TM)处理器上;而Algorithmics公司使PMON运行在64位的 R4X00系列的处理器上。 PMON在P-4000i上的三个基本用法: (1)用户首先要在PC机或工作站上开发代码,然后在自己的主机上交叉编译这些代码。 (2)用户通过RS-232C或者网络把代码下载到目标主板上。 (3)PMON的调试功能可以让用户做到以下几点: ? 在硬件和软件的断点中的任何一个点, 用户可以开始和停止程序的执行,

6、 PMON同时支持 单步执行; ? 用户可以读取和设置任意寄存器的内容; ? 用户可以从主存中读取数据,并且可以反汇编代码; ? 用户可以在存储器中的拷贝内容从一个地方到另一个地方, 也可以用一个特别的字符串 或一个字节的数填写存储器,也可以在存储器中搜索一个特别的字符串或一个字节的 数。 PMON为用户提供了一个灵活的可以调试(可以参考Unix/linux的gdb调试命令)的环境。 3 1.1 PMON 命令 1.1 PMON 命令 PMON提供了34个命令,这些命令共分为4个组(见表1.1): 执行控制命令 b (breakpoint), c (continue), call, db (d

7、isplay or delete breakpoints), g (go), t (trace), and to (trace over). 现实和修改命令 boot (networ k loader), bt (stack backtrace), copy, d (display), dump, fill, l (disassemble),load (download), m (memor y display/modify), r (register display/modify), search (search memory for pattern), and tlb (display t

8、lb entries). 工作平台命令 date (display/set date ! !str !num +-/() addr name r *“ 默认的,在load或boot命令执行时断点被清除。 一些使用b命令的例子如下。 PMON b a002000c 设置软件断点0xA002.000C. Bpt 0 = a002000c 21 PMON b 显示所有软件断点 Bpt 0 = a002000c PMON b -r a0020020 在读数据的时候设置硬件断点 Bpt 32 = a0020020 PMON b 显示所有软件断点. Bpt 0 = a002000c Bpt 32 = a0

9、020020 看db,set,load和boot命令获得更多信息。 22 Boot boot命令是通过网络加载二进制目标文件 格式 命令格式如下: boot -bensy host:path 其中:其中: -b 下载之前阻止所有断点被删除 -e 阻止异常处理被清除 -n 阻止在文件中加载标号 -s 阻止标号表被清除在下载前 -y 只从文件中加载标号 Host 网络中读文件的主机 Path 从主机加载的文件名 调用不带参数的boot命令清除标号表,删除目前所有断点,试着加载主 机上的程序或者是bootaddr和bootfile环境变量指定的程序 功能介绍 boot命令借助于网络通过TFTP加载一

10、个主机上的二进制文件。 它可以执 行ELF格式的文件,还有较老的ECOFF格式的MIPS文件。PMON从这些文 件中抽取标号信息,然后加载到目标机的标号表。 Boot命令执行时一般都清除标号表,异常处理,和所有的断点。-s和-b 选项阻止清除标号表和断点。EPC寄存器的值被自动的设置成程序入口。 所以,执行下载的程序只要g命令就可以了。 Boot命令可能会返回很多错误信息,相关的网络问题或是进入远程主机 文件的问题。通过TFTP下载的文件必须是可公开的文件,而且它还应是 个远程服务器可以接受的目录。 当读标号表是PMON可能存在的问题是没有足够的空间存储这些标号。为 了增加堆的容量,通过hea

11、ptop命令来储存更多的空间,如果必要的话, 可以把你的程序从新链接到一个更高的基址。Boot命令也会检查可能覆 盖PMON重要数据或堆的可能,那么它也会从新链接程序到一个正确的地 址。 当加载文件的各个部分时, 此命令还显示内存地址和各部分文件大小。 这 些信息会按顺序输出。 23 Bt bt命令执行回朔功能 格式 命令格式如下: bt -v cnt 其中: -v 说明每个功能块的栈帧基地址和需要显示的大小 Cnt 说明需要显示的行数 如果无参调用这个命令,回朔显示栈帧名字和最多4个参数 功能描述 bt命令显示一个功能调用表, 从寄存器EPC所指的地址开始执行, 当返回的 地址是无效时停止执

12、行。当程序的地址不是环境变量validpc所规定的范 围内则认为程序地址无效。 每行的输出作为目前的一个功能,最多4个参数。当参数存在功能的开始的 话参数才有可能被找回,但这种情况对汇编和c代码似乎都行不通。如果你 想查看c代码的参数,在关掉优化的情况下编译你的程序。 如果有-v这个参数,命令将额外的显示栈帧的基地址和每个功能的大小。 它还将应用c的分配功能来提示动态分配的栈空间大小。 此命令的输出被送给more命令,让用户每次看一整屏的输出。用户可以设 定cnt来限制每次显示的行数。下面是个bt命令的例子。 PMON c write+10 write+0x0010 3c09a07f lui

13、t1,0xa07f PMON bt write+0x0010 (0x00000001,0xa0030300,0x0000001c) flsbuf+0x0234 (0xa0030300,0xa0029030) printf+0x045c (0xa0025490,0xa0020000,0x000000001,0x00000010) main+0x0138 (0x00000001,0xa07ffffe0) _start+0x0040 () 24 C 当断点停止了程序的执行时,命令c使程序继续执行 格式 命令格式如下: c bptadr where: bptadr 指定一个断点。断点被清除当程序停在这

14、个被指定的地址。 调用命令c不带参数时程序将从寄存器EPC所指的地址开始执行。 功能描述 当用户敲入c命令, 程序从EPC目前的值所指的地址开始执行。 g命令是从命令 行输入的地址开始执行程序。 单独一个暂时的断点可以被指定。 这个断点被清除当执行停止时。 该断点也可 能在另一个先停止程序执行是被清除。 例: PMON c a0020104 Continue execution until 0xA002.0104. 25 Call call命令执行一个函数 格式 命令格式: call adr val|-s str where: adr 函数的起始地址 val 传给函数的值 -s str 传给函

15、数的串 功能描述 call命令执行一个函数, 该函数的地址被指定为第一个参数。 最多4个参数 通过寄存器a0a3被传入。 Call命令和c命令比较相似,只是在函数调用完成后call命令不更新影子 寄存器的值。 举个例子,在例子中call命令将执行地址为0x8802.0304的函数,通过 a0传入参数0x8002.236c。 PMON call 80020304 8002236c 26 Copy copy命令把指定数量字节数的单元从内存的一个单元拷贝到另一个单元 格式 格式如下: copy from to siz where: from 申明源地址 to 申明目的地址 siz 要移动的内存大小。

16、但是是字节。 如果to小于from,那么就从from处地址增加拷入。如果from小于to,那么 就从from+siz处地址减少拷入。 功能描述 copy命令复制一些字节内存从一个地方拷贝到另一个地方 从低字节拷贝时, 源数据从低字节往高字节逐个被拷贝到目的地址; 从高字节 拷贝则相反。这样就不会出现数据拷贝重叠的情况。 下面这个例子演示了如何拷贝,4k字节,基地址是0x8002.0000,拷贝到另 一个地址的起始地址为0x8006.0000 PMON copy 80020000 80060000 4000 27 D d命令将以16进制或者ASCII形式显示内存内容 格式 格式如下: d -b|h|w|s adr cnt|-r

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号