
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、基于usb的arm仿真器的研究与设计基于jtag器的调试是目前开发中采纳最多的一种方式。大多数arm设计采纳了片上jtag接口,并将其作为测试、调试办法的重要组成。jtag仿真器通过arm芯片的jtag边界扫描口与arm cpu核通信,实现了彻低非插入式调试,不用法片上资源,不需要目标存储器,不占用目标系统的任何端口。因为jtag调试的目标程序是在目标板上执行,使得仿真越发临近于目标硬件。目前针对系统开发的调试工具品种繁多,如arm公司的axd debugger软件与mutil-ice仿真器等。但是大部分嵌入式调试工具价格过高,因此设计实现一种速度快、性能稳定、价格低廉、易于实现的arm调试工
2、具是非常须要的。1 arm jtag调试原理arm典型的调试系统结构1所示。调试系统包括调试主机、仿真器和调试目标。调试主机是一台运行调试软件(例如ads)的计算机。调试主机可以发出高层的调试指令,例如设置断点、拜访内存等。仿真器用来将调试主机发出的高层调试指令转换为底层的arm jtag调试指令。由于目标机无法识别调试主机发送来的高级指令,因此就需要仿真器将调试主机发出的高层调试指令转换为底层的arm jtag调试指令。在囫囵调试系统中起到重要的作用,其性能也打算了囫囵调试系统性能。2 计划设计本文提出了一种采纳philips公司的arm7芯片lpc2148设计,具有2.0通信方式、高速稳定
3、的arm仿真器实现计划,2所示。守护进程接收从ide集成开发环境发送来的调试指令,将其通过usb转发到arm仿真器,arm仿真器再将调试指令转换成jtag格式的信号并发送到i/o口,从而控制调试目标执行特定的操作,达到调试的目的。同理,从调试目标返回的数据,先经过arm仿真器的译码,再经过守护进程返回到ide开发环境,从而形成一个完整的调试系统。3 硬件设计本设计的最大特点是采纳了lpc2148作为主控芯片。该芯片内部集成了arm7tdmi-s微控制器和彻低兼容usb2.0的设备控制器,支持32个物理(16个规律)端点;支持控制、批量、中断和同步端点;全部端点都有一个双向的dma通道。由于芯片
4、内部集成了usb控制器,大大降低了电路板的设计难度和开发成本。其硬件电路框图3所示。(1)本机jtag调试电路为了便于调试和烧写程序,将芯片lpc2148的jtag接口接到一个20引脚的标准jtag插口。本设计中用法引脚p0.8、p0.9、p0.10、p0.12、p0.14作为外部jtag接口,尽量不用有其他接口功能的引脚,如p0.11、p0.14接口与i2c接口scl1、sda1功能复用,以便于未来的硬件升级。为了增加带负载能力,用法一片74hc244芯片,同时为了尽量兼容大部分arm开发板上的不同jtag插口,本设计提供了一个20引脚的jtag插口和一个14引脚的jtag插口。(2)usb
5、电路(包括供电电路)usb接口电路4所示。为了使lpc2148的软件可以更灵便地控制usb设备与主机之间的衔接,本接口电路用法p0.31(只能用法该引脚)来实现softconnect特性。当p0.31输出低电平常,d+线通过上拉到vdd3.3,通知usb主机:usb设备与其建立衔接;当p0.31输出高电平常,d+线断开与vdd3.3的衔接,通知usb主机:usb设备已经断开与usb主机的衔接。q1选用的是p沟道mos管,而不选用一般的pnp,由于mos管是驱动型,驱动几乎为0;而一般的pnp三极管是电流驱动,需要一定的驱动电流。导通时,p0.31_p17有可能被拉低,lpc2148要求该引脚在
6、复位引脚为低电平期间不能被拉低,否则jtag口将被禁止,因此必需选用p沟道的mos管。lpc2148的p0.23引脚为usb设备控制器,用于检测usb总线是否插入检测引脚。4 仿真器固件程序设计仿真器lpc2148芯片中的固件程序实现的功能包括:通过usb与上位机软件举行通信,并将上位机发送过来的、经过封装的usb数据流转换为jtag信号,并终于送到相应的引脚或者将相应引脚的数据经过封装后,通过usb传送到pc机中。图5为应用程序的流程图。主函数首先将作为jtag接口用法的5个引脚设置成相应属性,并完成usb设备初始化,配置中断向量、开中断,然后进入无限循环函数。无限循环函数首先处理usb大事
7、,如usb控制传输、usb总线复位等。然后推断标记位是否收到数据,假如未收到则继续执行无限循环;假如收到了数据,则将数据从端点缓冲区读出,再交给数据处理函数处理。数据处理函数根据上位机程序对数据封装方式举行解析,按照解析的指令(读取tdi、写tms或tdo等),通过分支处理跳到相应的处理函数。在这个过程中假如上位机要读取调试目标数据,可将相应的值按同样格式举行封装,然后通过usb发送到上位机。数据封装格式6所示。定义的指令码如下:define unkown_command 0x00 /未知命令define port_direction 0x01 /设置端口方向为输入或输出define port
8、_set 0x02 /将jtag端口的引脚都设为高电平define port_get 0x03 /读jtag端口的引脚数据define port_setbit 0x04 /设置jtag端口的某一位为1,由data0中数据打算设置的详细位数define port_getbit 0x05 /读取jtag端口的某一位为1,由data0中数据打算读取的详细位数define write_tdi 0x06 /写tdi信号指令define read_tdo 0x07 /读tdo信号指令define write_and_read 0x08 /读写命令,对tdi写一位,对tdo一位define write_tms 0x09 /写tms信号指令define write_tms_chain 0x0a /写tms扫描链指令本仿真
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年广东省佛山市高考数学二模试卷(含答案)
- 商用房屋使用协议
- 铁路旅客运输服务途中作业96课件
- 铁路调车综合实训铁鞋的使用和注意事项课件
- 铁路工程安全技术石家庄铁路63课件
- 日式餐厅装修施工方案
- 中国人传统节日课件
- 中医技能用书课件
- 中专内科护理课件
- 酒店多功能会议室场地租赁合同
- 宿舍楼设计开题报告
- 益生菌与健康课件
- 2022医学课件医院获得性肺炎(HAP)诊治指南最新综述(精)
- 教育的起源和古代东方文明古国的教育
- 如何提高小学数学课堂教学地有效性讲座
- 05 【人教版】七年级下期中数学试卷(含答案)
- 凑十法加法竖式运算(可打印)
- GB_T 31148-2022木质平托盘 通用技术要求_(高清-最新版)
- 固体物理(黄昆)第一章
- 认识餐饮环境(课堂PPT)
- 常用拉铆螺母规格表
评论
0/150
提交评论