使用 Trace32 对 FLASH 编程

https://safrans.blog.csdn.net/article/details/8544901

转来比较麻烦,原文阅读效果更好

摘要内容:

介绍:

一、FLASH 编程的两种方式

二、Trace32 脚本

三、Trace32 命令与 FLASH 编程软件之间的通信机制

四、Target controlled flash programming 流程

Trace32-ICD和Trace32-ICE的区别

https://blog.csdn.net/rikeyone/article/details/85252281

摘要:

ICD:In Circuit Debugger,ICE:In Circuit Emulator,中文分别为“在线调试器”和“在线仿真器”Trace32是Lauterbach公司开发的一套工具,包括软硬件一起搭配使用,包括了Trace32-ICD和 Trace32-ICE。

追踪到一篇讲嵌入式系统调试手段的演化的文章:

ICD与ICE的区别

https://bbs.21ic.com/blog-543880-74815.html

在进行嵌入式系统开发的过程中,经常会用到 ICD和ICE。从字面上讲,ICD的全称为:In Circuit Debugger,ICE为:In Circuit Emulator,中文分别为“在线调试器”和“在线仿真器”。笼统地说,二者都可用于硬件调试和软硬件联调。市面上常见的产品包括ARM公司的Multi-ICE,WindRiver公司的VisionICE和VisionProbe,以及Lauterbach公司的Trace32-ICD和 Trace32-ICE。

那么二者之间究竟有什么区别和联系呢?回答这个问题这要从嵌入式系统调试手段的演化说起。

在早期的嵌入式开发中,尤其是8位机和16位机占主流的时代,ICE是最为常用的调试设备,它的核心思想是完全模拟CPU工作,通过外围电路捕获CPU的各种状态信息,输送到PC端,也就是说它相当于CPU+调试电路,可以从物理上完全替代CPU。所以最早的ICE在使用时需要将CPU从插口上拔下来,再将ICE的电缆插进去。

ICE的出现,给嵌入式开发人员带来了极大的便捷。但随着芯片制造技术的飞速发展,ICE也逐渐显露出一些无法回避的缺陷
1、ICE必须比被调试 CPU运转更快,这样才能在模拟CPU的同时向外输送调试信息,而CPU主频的不断提高使得实现这一点越来越难;
2、日渐复杂的封装技术导致ICE替换CPU的难度不断增大;
3、ICE的先天特性决定它总是落后于CPU发布;
4、ICE的价格通常非常昂贵。
这些缺陷给ICE的发展带来了一定的阻碍,在这种情况下,EmbeddedICE应运而生。

EmbeddedICE是ARM公司提出的一种面向系统的解决方案,其关键技术是在处理器芯片内部加入一个EmbeddedICE单元,提供传统ICE的诸多功能,例如实时寻址、断点、单步以及对CPU核的控制,使用边界扫描链和JTAG接口与PC交互信息,从而实现硬件调试。EmbeddedICE解决了传统ICE的种种难题,从而得到了广泛的应用。ARM7TDMI系列就是基于该方案的典型产品,其名称中的字母I即指示EmbeddedICE。

有了EmbeddedICE,相应的也就出现了新的调试工具ICD。与复杂的ICE不同,ICD的核心硬件只包括一个EmbeddedICE接口盒,用于在PC和处理器芯片的JTAG接口之间搭起一座桥梁,实现PC端调试器指令与JTAG协议的转换,例如将PC端的一次鼠标点击转换成JTAG指令和数据序列,并最终通过EmbeddedICE实现对CPU核的控制。

说到这里,ICE和ICD的区别就不言自明了:ICE通过自身仿真CPU进行调试,而ICD则是利用芯片内部的EmbeddedICE单元对CPU进行调试。特别需要指出的是,上面的讨论都集中在硬件部分,实际上,不管是ICE还是ICD,都离不开一个优秀的集成开发环境;只有通过开发环境对二进制机器码的翻译,开发人员才能够轻松地查看寄存器,查看地址空间,设置断点,将机器指令转换为汇编指令甚至对应到高级代码、实现源码级调试。

弄清楚了二者的区别,现在回到第一段,给市面上的产品归归类。虽然名字看起来都像是ICE,其实未必:
ARM公司的Multi-ICE实际上是ICD,对应的开发环境是ARM SDT或者ADS;
WindRiver的visionICE和visionProbe也是ICD,开发环境是 visi;
Lauterbach的Trace32-ICD和Trace32-ICE倒是都货真价实,开发环境统一叫TRACE32,Lauterbach另外还有一款产品叫 Trace32-FIRE,同属ICE范畴;
目前国内不少公司也陆续开发了一些针对ARM芯片的JTAG仿真器,不过功能都比较简单,还不能称之为 ICD。

使用 Trace32 对 FLASH 编程摘要及Trace32-ICD和Trace32-ICE的区别相关推荐

  1. 使用 Trace32 对 FLASH 编程

    from:   http://www.ibm.com/developerworks/cn/linux/l-trace32/ 随着软硬件复杂性的增加,在嵌入式系统开发中,调试器对项目的开发进度.质量起着 ...

  2. Python 编程摘要

    几年前终于系统学了一下 Python,没有耐心看教程,东翻西查花大半天整理出来给自己速成了一下,只是个提纲,很多细节需要拿着关键词再查,分享给同样没有耐心的朋友-- Python 编程摘要 -杨武 2 ...

  3. C语言获取norflash大小,NOR Flash 编程

    NOR Flash 编程1//************************************************************************************* ...

  4. NAND FLASH编程器烧录详解

    NAND FLASH编程器_NAND FLASH烧录器 SUPERPRO5000是西尔特出品的新一代USB接口独立式智能极速NAND FLASH编程器.具有编程速度快,烧录稳定,软件集成度高,更智能化 ...

  5. 【stm32f407】flash编程

    一.Flash介绍 不同型号的STM32F40xx/41xx,其FLASH容量也有所不同,最小的只有128K字节,最大的则达到了1024K字节.STM32F4的FLASH容量为1024K字节,如参考手 ...

  6. STM32F1_片内FLASH编程

    前言 今天总结"STM32F103  片内FLASH编程",对于学习编程的人来说"FLASH"这个词肯定很熟悉,因为FLASH主要用于存储数据.对于STM32来 ...

  7. ADSP-21565的开发详解(三)Flash编程和烧写实现脱机运行的详细说明

    硬件准备 ADSP-21565CB开发板 AD-HP530ICE仿真器 软件准备 CCES,CrossCoreUtilities 安装软件 CCES已经安装好了,我们烧写程序,要再装一个插件,就是这个 ...

  8. TMS570学习3-内部Flash编程

    QQ:971586331 软件环境: 操作系统:windows 10 IDE:CCS7.4 代码生成工具:HALCoGen 04.07.01 Flash操作库:F021FlashApi-02.01.0 ...

  9. STM32L0芯片FLASH编程示例及提醒

    关注+星标公众号,不错过精彩内容 来源 | 茶花MCU 这里就STM32L053芯片的FLASH编程做个简单演示并做些提醒,以供有需要的人参考. 一般来讲,FLASH编程主要包括擦除.代码编程.Opt ...

最新文章

  1. Facebook 3D视觉研究最新进展
  2. Stanford机器学习笔记-5.神经网络Neural Networks (part two)
  3. python——初识python篇
  4. 2018年广东年销售额超千亿的企业有哪些?
  5. Material design 色彩
  6. 学习笔记-----本地事务
  7. java开发平台普元_java开发平台的两种实现模式
  8. OSPF 的六种 LSA类型
  9. vue2.x 父组件监听子组件事件并传回信息
  10. 浅析MyBatis执行器原理
  11. 大三上学期学期总结及百度实习感受
  12. 海康人脸认证设备对接
  13. 互联网日报 | 农夫山泉正式登陆港交所;飞猪推出旅游业首个百亿补贴;苹果秋季发布会正式官宣...
  14. 一个页面崩溃,其他页面也跟着崩溃
  15. shader篇-程序纹理
  16. 指定decode_responses=True,连接redis存的数据是字符串格式
  17. python 开发按键钢琴
  18. 【NOTE】python3.6下scons运行提示找不到SCons.Script解决方式
  19. Vue项目清理本地缓存并删除node_modules (清除不掉揍我)
  20. MQTT 串口 TCP 互转工具

热门文章

  1. 用ad2018绘制51单片机最小系统原理图和pcb
  2. ftp读取文件并处理数据插入数据库
  3. 个人博客-7(网站首页制作)
  4. 单方面论述题-区间贪心快递柜详解+代码——zzx的博客
  5. 单片机基础:什么是中断系统、中断系统如何用(附中断系统应用实例)
  6. win7系统没有诊断策略服务器,win7系统提示诊断策略服务未运行无法诊断检查网络的解决方法...
  7. 零基础学习CANoe Panel(1)—— 新建 Panel
  8. jboss加载外部的文件
  9. 7天涨粉20万,看过这篇抖商代理攻略的人,都偷偷收藏了!
  10. AD板卡数据采集程序