跳转到主要内容

嵌入式开发arm技术JTAG接口解读

cathy /

通常所说的JTAG大致分两类,一类用于测试芯片的电气特性,检测芯片是否有问题;一类用于Debug;一般支持JTAG的CPU内都包含了这两个模块。

一个含有JTAG Debug接口模块的CPU,只要时钟正常,就可以通过JTAG接口访问CPU的内部寄存器和挂在CPU总线上的设备,如FLASH,RAM,SOC(比如4510B,44Box,AT91M系列)内置模块的寄存器,象UART,Timers,GPIO等等的寄存器。上面说的只是JTAG接口所具备的能力,要使用这些功能,还需要软件的配合,具体实现的功能则由具体的软件决定。例如下载程序到RAM功能。了解SOC的都知道,要使用外接的RAM,需要参照SOCDataSheet的寄存器说明,设置RAM的基地址,总线宽度,访问速度等等。有的SOC则还需要Remap,才能正常工作。运行Firmware时,这些设置由Firmware的初始化程序完成。但如果使用JTAG接口,相关的寄存器可能还处在上电值,甚至时错误值,RAM不能正常工作,所以下载必然要失败。要正常使用,先要想办法设置RAM。在ADW中,可以在Console窗口通过Let 命令设置,在AXD中可以在Console窗口通过Set命令设置。

嵌入式开发之CPU的那些事...

cathy /

cpu是数字处理系统中的一个重要环节。在我看来,单片机、微处理器、dsp都可以称作是cpu,只是它们的侧重点有所不同罢了。具体来说,传统意义上的单片机更偏重于嵌入式的计算,比如说我们经常使用的51、avr、arm芯片中不仅仅含有了运算和控制功能,它还涵盖了定时器、串口、并口、usb、i2c总线等外部资源。cpu一般只是作为dsp的一个核存在,它通常还会包含另外一个核,专门用于数字信号的处理工作。而微处理器,也就是我们经常说的pc上的处理器,它的工作比较单一,专注于计算和控制功能的处理,因此一般来说在这方面的性能上面,单片机和dsp都是不能和它相比的,有了南桥芯片和北桥芯片的帮助,pc的微处理器就可以专注于自己的本职工作了,效率上面也会有一个很大的提高。

<center><img src="http://mouser.eetrend.com/files/2018-04/wen_zhang_/100011031-38840-cpu-…; alt=“” width="600"></center>

嵌入式开发需要的不仅仅是处理器

editor Chen /

摘要:嵌入式系统工程师们在花大量时间试图找到最适合应用的完美器件。然而令他们失望的是,现有器件总是缺少其他器件所具备的一项或多项重要功能,因而在设计时总是要权衡利弊而无法实现完美。绝大多数情况下,完美器件只是一个梦想。

对于处理器和单片机,选择标准变得更加抽象和复杂。由于单片机可编程,正常的电气参数选择标准必须要考虑器件执行某项具体任务时的速度和效率。从表面上看,单片机性能取决于处理器内核,但事实上并非完全如此。处理器性能的确与处理器内核息息相关,但同时它还取决于其他因素,包括集成度、支持处理器内核的外设、采用的开发工具、要执行的任务、工程师发挥特定单片机性能的技巧以及系统成本,等等。图 1 中的几个示例显示了在不改变处理器内核的前提下,采用编译器技术所带来的不同效果。

  因此对于单片机而言,工程师心目中理想的器件不仅需要具有正确的电气特性和集成外设,还要有一个处理器能在规定时间内执行应用程序中最复杂的计算。工程师熟悉的单一最佳开发工具平台必须能支持这个器件,这样工程师既能够更快地熟悉器件,又能够更快地学习如何充分利用开发工具。最后,这个器件应该符合工程师负责的所有应用的成本目标。遗憾的是,这种理想的器件是不切实际的。

  <strong>持续变化的需求</strong>