欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > PPT文档下载  

    嵌入式系统基础教程第04讲第3章嵌入式调试技术.ppt

    • 资源ID:2618876       资源大小:3.72MB        全文页数:84页
    • 资源格式: PPT        下载积分:8
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要8
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    嵌入式系统基础教程第04讲第3章嵌入式调试技术.ppt

    嵌入式系统原理与开发,第04讲 南京大学计算机系 俞建新主讲,第3章 嵌入式微处理器技术基础,本章主要介绍以下内容: 嵌入式处理器的调试技术 边界扫描测试技术JTAG,3.3 嵌入式系统调试技术,指令集模拟器 ROM仿真器 实时在线仿真 片上调试器与背景调试模式,基于Angle的调试方案 边界扫描测试技术和JTAG接口概述 Nexus调试标准 半主机调试方式,嵌入式系统调试技术概貌,嵌入式计算机调试基本结构 主机目标机结构 主机常常是PC平台 原因: 运算能力相对较弱 存储能力和显示能力较小 数据吞吐率较小 很难在目标程序运行的计算设备上直接进行硬件软件调试。,嵌入式系统调试技术概貌,8051单片机 寻址范围:0000H FFFFH 容量64KB 地址长度:16位 片内数据存储器为8位地址,所以最大可寻址的范围为256个单元地址 DPTR是16位地址指针,寻址范围就可达到64KB keil C51,Keil C51的系统要求,主机和目标机之间调试信道,主机往往和目标机的体系结构不同。因此,需要有通信转换器对调试信息进行转换。,SDT(Software Development Kit ,软件开发工具包)介绍,ARM SDT包括一套完整的应用软件开发工具 *armcc ARM的C编译器,具有优化功能,兼容于ANSI C(American National Standards Institute,美国国家标准学会)。 *tcc THUMB的C编译器,同样具有优化功能,兼容于ANSI C。 *armasm 支持ARM和THUMB的汇编器。 *armlink ARM连接器,连接一个和多个目标文件,最终生成ELF( executable and linkable format )格式的可执行映像文件 *armsd ARM和THUMB的符号调试器。,Keil简介,调试程序界面,Keil调试界面,Keil生成的hex文件(STC-ISP打开),Hex文件和Elf文件都是程序汇编的产物。,3.3.1 指令集模拟器,指令集模拟器 ISS,Instruction Set Simulator 在一台计算机上模拟另外一台计算机上目标程序(机器指令)运行过程的软件工具 有时也叫做软仿真器 嵌入式系统开发的不可或缺工具,指令集模拟器的结构,指令集模拟器是一个纯软件系统 内部有一个反映目标处理器硬件的数据结构 以时序状态机的方式工作 可以根据目标机指令集定义执行目标指令 按照实现方法的不同指令集模拟器分为 解释型 编译型,解释型和编译型,编译型语言写的程序执行之前,需要一个专门的编译过程,把程序编译成为机器语言的文件,比如exe文件,翻译只做了一次,运行时不需要翻译,像C/C+、Pascal/Object Pascal(Delphi)等都是编译语言。 解释则不同,解释性语言的程序不需要编译,解释性语言每执行一次就要翻译一次,效率比较低,解释是一句一句的翻译,如Java、JavaScript、VBScript、Perl、Python、Ruby、MATLAB 等等。,指令集模拟器的运行,指令集模拟器的操作界面与IDE (Integrated Development,集成开发环境)类似 模仿目标机的取指、译码和执行操作 将中间执行结果或者最终执行结果存入目标机映像数据结构 调试人员可以观察目标机映像寄存器或者映像存储器的单元,了解目标代码的执行结果 调试程序界面,指令集模拟器主要用途,指令集模拟器主要用在以下几种场合: 没有目标机开发板 有目标机开发板,但使用目标机开发板成本较高 调试的程序模块不需要在实际开发板上执行,例如学习ARM汇编语言程序 模块代码的先行调试,以加快调试速度,流行的ARM指令集模拟器,有两种比较流行的指令集模拟器: ARMulator SkyEye 还有一些研究中的ARM指令集模拟器,ARM公司推出的ARMulator,ARMulator是业界著名的指令集仿真器 运行在PC平台上 ARM体系结构的指令集模拟器 集成在SDT 2.51(软件开发工具包)和ADS 1.2( ARM Developer Suite ,全套的实时开发软件工具)上的插件 由四个部分组成:处理器核模型、存储器接口、处理器接口、操作系统接口。,指令模拟精度的级别,指令模拟精度有三个级别 指令级 周期级 时序(节拍)级 ARMulator完全实现了指令级和周期级模拟精度,但是没有完全实现时序级精度。,指令集模拟器ARMulator对ARM程序运行 进行指令周期数统计的结果快照,Armulator的指令周期统计结果说明,SkyEye,一个ARM体系结构的嵌入式仿真和集成开发环境 国内开放源码的自由软件项目 运行环境:Linux平台和Windows的Cygwin( cygwin是一个在windows平台上运行的Unix模拟环境) 能够仿真的CPU包括: 不带MMU( Memory Management Unit,内存管理单元)的Atmel 91x40 带MMU的ARM720T等 基于ARM7TDMI的内核 SkyEye还能够模拟其它一些硬件外设,如串口、网络芯片、内存、时钟等,指令集模拟器缺点,部分集成开发环境提供了指令集模拟器,可方便用户在 PC 机上完成一部分简单的调试工作,但是由于指令集模拟器与真实的硬件环境相差很大,因此即使用户使用指令集模拟器调试通过的程序也有可能无法在真实的硬件环境下运行,用户最终必须在硬件平台上完成整个应用的开发。,3.3.2 ROM仿真器,嵌入式系统的程序存储器为ROM(只读存储器)时,如果调试需要修改代码、设置断点及更新程序代码,就需要进行离线编程。 离线编程是一个费时间的工作,用RAM(随机存取存储器)替代ROM可以解决这个问题 ROM(只读存储器)仿真器 用RAM(随机存储器)以及附加电路制成的替代ROM进行离线编程的工具 MCS-51单片机研发过程中常常使用ROM仿真工具,ROM仿真系统组成和结构框图,ROM仿真器原理,仿真器由两组RAM区,RAM1和RAM2区,分别被目标机和仿真器分别操作,隔离电路的动作是由仿真器CUP控制,仿真器CUP是听命于上位机指令。某一时刻仿真器CPU对应于RAM1区,目标机CUP对应于RAM2区,此时上位机可以对RAM1区的数据进行更改,而RAM2区作为目标机的ROM被使用;比如说两个RAM起始数据都为P3=0xFE,RAM1被上位机指令修改为P3=0xFF,此时的RAM2仍然被目标机CUP控制,P3口输出为0xFE;,

    注意事项

    本文(嵌入式系统基础教程第04讲第3章嵌入式调试技术.ppt)为本站会员(本田雅阁)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开