- 1、本文档共7页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ASimpleMIPSEJTAG自从进公司认识了MIPS这种CPU,我就在寻找
A Simple MIPS EJTAG
自从进公司认识了MIPS这种CPU,我就在寻找如何业余使用这种CPU的方法。首先就是需要一个简单的工具能把程序下载进去。公司使用的是LAUTERBACH公司的MIPS Debugger (TRACE32)。据说非常的贵,而且公司只有一台,因此使用的时候都非常小心,严格按顺序上电。于是就上网search了一番,结果只找到一个个人做的,而且是Linux下使用的一个EJTAG。这方面的资料是少之又少。更多的是关于ARM的,想比之下MIPS在国内还没普及。另外即使商业的ARM仿真器也不是很贵,ULINK2 和 JLINK价格也在4K以下。使用最简单的并口wiggler和免费的调试代理配合成本不会超过10RMB(如果JTAG自己做的话)。没有搜到合适资料也就放弃了这个想法。
后来microchip公司推出了PIC32系列芯片,是MIPS4Kc的核。有幸从做代理的同学那搞到两片。于是又重新想起如何使用MIPS芯片的事了(龙芯也是MIPS的,不过龙芯居然不留EJTAG口,开发人员说他们用示波器+printf)。又上网搜了一番,资料多了些,最后找到一个网站,是关于如何使用商品路由器做开发板的。幸运的是那个开发板的CPU是ADM5120 (MIPS 4Kc)。我们公司也有很多这个CPU的产品。通过那个网站我又幸运的找到了更多的资料。但是好多都是针对特定CPU的。找到这些资料后由于东西比较杂,另外工作也比较忙,也没急着去尝试。最近空余时间又仔细翻了翻IE收藏夹里关于MIPS EJTAG的内容,另外又在网上找了找资料。发现一个比较通用的简易并口wiggler, 电路和ARM中通用的wiggler几乎一样。而且可以在一个商业公司发布的一个免费软件上使用。这才决定去做一个。昨天晚上回到宿舍(呵呵,宿舍就是我的实验室)直到1点才把这个小东西做出来。
这个是从那个开发板网站上找到的MIPS Wiggler的图:
/OpenWrtDocs/Customizing/Hardware/JTAG_Cable
还有这个,ARM的wiggler图:
这两个图有很多相似之处,我把这两个整合起来做出一个即支持MIPS又支持ARM的 wiggler:
这个wiggler用了一块总线驱动芯片74LVC244
做好后试了下ARM的功能,是好的。用H-JTAG软件可以detect到我的AT91SAM9260板子。也可以下载AT91SAM7S256这些自带flash的小型arm芯片。
今天早上到公司,占用点上班时间,就迫不及待试了下昨晚的成果。正好手上的XXXXXX(虽然这不是工作要做的事情,属于自己的研究,但是这里还是去掉产品型号,请谅解)的板子焊有14pin的EJTAG口。结果是1个小时就搞定了,在kathy的帮助下设置好CPU的SDR寄存器,成功地把bootext(公司产品程序的一段) load到SDRAM中运行起来。自己把整个flash毁掉,让板子彻底起不来,然后写好脚本,load特定的bootext,再试试。 哈哈,可以顺利运行,进bootext后把bootbase烧到flash, 接着板子就又可以用了。
接下来介绍下控制这个wiggler的软件:OCD Commander
这是个免费软件。官方网址:/ocd_cmd.htm
这个软件有Windows 和 Linux两个版本。我下载了常用的Windows版本。文件大小不到8M (相比TRACE32 500多M要苗条多啊)。下载安装后(PS:需要java virtual machine的支持)在桌面上会有这几个图标:
其中OCD Commander就是我们想要的。 OCD Commander – Java是OCD Commander的Java版本。
打开OCD Commander
如上图,这里可以选择处理器(MIPS),调试用的接口(Wiggler), Wiggler是插在PC的并口上用的,所以需要选择并口号(LPT1)。速度我们选择最快的380KHz。 途中的Multiple是选择多个CPU的。这个暂时没有试过。
点击OK进入主程序:
很简单的一个界面,提供的功能也比较简单。中间的文字说明了命令的简单规则。 上面的菜单按钮是一些常用的功能。如reset,step,go,halt,regs等。 最下面的是输入命令的地方。这里可以读写一些寄存器,内存等。具体可以看help里的帮助文档。
把板子的电源打开,Wiggler的14pin线要正确插在板子的JTAG口上。一切准备好,可以电reset按钮
如果板子里有程序,点击go就可以看到串口输出的信息。按halt可以暂停CPU的运行。
点cpu可以看到cpu的PC值,还
文档评论(0)