ARM集成开发环境_第1页
ARM集成开发环境_第2页
ARM集成开发环境_第3页
ARM集成开发环境_第4页
ARM集成开发环境_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第九讲ARM集成开发环境河南大学计算机与信息工程学院授课人:金勇联系:Email:计算机专业核心课程之一ADS1.2集成开发环境介绍软件程序编译、PC模拟调试TRACE32仿真调试器介绍硬件板级调试SOC设计开发环境介绍ARM芯片设计

议程ARM集成开发环境ADS1.2集成开发环境介绍ADS1.2是为嵌入式ARM设计的一整套软件开发工具从最初的软件原型到最终优化的ROM代码。ADS1.2发布于2001的12月支持的主机系统IBMcompatiblePCswithWindows95,98,2000,MEorNT4SunworkstationswithSolaris2.6,2.7or2.8HPworkstationswithHPUX10.20,11RedHatLinux6.2&7.1使用FLEXLM管理器,管理它的LICENSE45天的评估版软件第三方工具支持:ADS1.2概述支持最新的ARM内核ARM926EJ-S,ARM9EJ-S,VFPv2支持V5TEJ体系结构ARMulator仿真执行JavabytecodeBytecode显示Jazelle状态库管理器可合并各种库(RTOS,TCP/IPX通讯协议栈)使用pragmas,可实现出色代码和数据的布局,为可重定位的代码设置新的链接选项编译器同时输出汇编码和目标码ADS1.2特性ANSIC编译器-armccandtccISO/EmbeddedC++编译器-armcppandtcppARM/Thumb汇编器-armasmLinker-armlink

Windows集成开发环境-CodeWarriorDebugger-AXDarmsd可向前兼容格式转换器-fromelfADS1.2主要模块库管理器-armarCandC++库指令级仿真器-ARMulator同时包含ARMFirmwareSuite〔底层的例程和库〕ARMApplicationLibraryRealMonitorADS1.2主要模块C++sourcemodule(s)ASMsource

module(s)Csource

module(s)命令行makefileIDEfromelfROMformat

DisassemblyCodesizeDatasizeetc.ofromelf.oarmarLibrary.carmcpp-c

tcpp-carmcc-c

tcc-carmasm.cppELF

object

file(s)

withDWARF2debugtables.s.o.axfarmlinkLibrariesELF/DWARF2imageADS1.2工具使用C/C++

BrowserC/C++

SensitiveEditorProject

ManagerCodeWarrior-IDEDockingwindowsDockingtoolbarsRegistersSource/DisassemblyMemoryAXDC/C++编译器–关键特性完全支持ANSI及其兼容C编译器属于ISO/EmbeddedC++compilers支持所有的ARM处理器(用‘-cpu’)e.g.ARM7TDMI,StrongARM,ARM9TDMI,ARM9E,ARM10,Xscale优化的代码可以实现源码级调试:-O0:最正确的调试信息,没有优化(-g) “Debug〞-O1:大局部优化,比较好的调试信息〔–g〕 “DebugRel〞-O2:完整优化,有限的调试信息 “Release〞内嵌汇编C和汇编的交叉列表(‘-S-fs’)C/C++Compiler–数据类型下面这些数据类型可支持char 8bitbyteshort 16bithalf-wordint 32bitwordlong 32bitintegerfloat 32bitIEEEsingle-precisiondouble 64bitIEEEdouble-precisionpointers 32bitslonglong 64bitinteger

pointer,char〔默认为unsigned,可用-zc变为signed〕之外,上述所有的默认值为Signed。

ADS1.2提供的库ANSIC库完整的文件处理,字符,数学库等这些库、函数包不需要为重定向而重新编译。适合嵌入式使用-不必设单独的内嵌变量自动选择正确的库决定于所使用的字节对齐方式,独立的位置,堆栈的检查等。保存了runtime功能支持和浮点支持C++库包含:标准c++库〔2.01版本〕C++编译器包含runtime功能支持ADS1.2支持的调试方式ELF/DWARF2imageHostrunningdebuggerMulti-ICEAngelARMulator指令级仿真串口方式调试,目标板上运行monitorJTAG调试ARMulator针对某种ARM内核进行指令级仿真可以完成精确的指令仿真允许对程序的执行进行校验可以对存储器周期进行统计允许为指定的存储器和时钟速度,设定系统的基准根据要求可以配置所有的ARM核来进行调试最新的含CACHE的核e.gARM946E,ARM966E,ARM10(inclVFP),XScale支持TRACE-指令追踪提供扩展的工具包所有的模板用C编写,可以容易地用VISUALC++增加新的外设模板也可仿真IRQ或FIQ中断可参考ADS1.2DebugTargetGuide有关模板的详细说明Multi-ICEJTAG调试的系统就是最终系统也存在第三方的协议转换器产品

DataAddressControlBREAKPTCPUARMDebuggerandMulti-ICEserver(canberunonseparatemachines)TAPEmbeddedICELogic-RTADS1.2提供的ARM应用库应用库是一个优化的软件包:包括数学运算和应用等由ARM体系结构专家手工制作的优秀的ARM例子程序完全源代码,包含说明文档和创立〔BUILD〕工具在用户应用软件里使用,是免版税的软件包包括:DSP变换:-DCT,FFTDSP过滤-FIR,IIR&LMS数学计算快速定点乘法和除法平方根,立方根,三角函数有符号的饱和加法其它大量有用的函数ADS1.2小结完成软件程序的编译,连接定位完成初级的软件模拟调试工作初步验证程序的正确性为后续板级硬件集成调试提供前提条件(Multi-ICE)……TRACE32仿真调试器介绍TRACE32德国Lauterbach公司出品致力于开发全能型开发工具-仿真器,调试器成立于1979,最大最全的仿真器,调试器设计制造商20余年嵌入式微处理器设计和开发工具设计制造经验ONESYSTEMFITSALL

TRACE32简介产品有3个系列TRACE32-ICE〔InCircuitEmulator〕TRACE32-ICD〔InCircuitDebugger〕TRACE32-FIRE〔FullyIntegratedRISCEmulator〕模块化结构,可按用户要求裁剪,配置多种仪器的综合体:通用仿真器逻辑/状态/时序分析仪通用计数器/定时器模式/脉冲信号源模拟调试器软件测试FLASH编程……TRACE32简介TRACE32支持600种以上的微处理器.以下是局部常见品牌: AMD ARM Dallas Hitachi IBM Intel Mitsubishi Motorola National NEC Oki Philips Siemens Toshiba SGS-Thomson Zilog Infineon ...通用性,更换仿真模块就可调试不同的芯片TRACE32简介TRACE32支持60种以上的编译器,主要有:

ARM

Borland

Tasking CAD-UL

Diab-SDS

Greenhills Hitech

Hiware

HP

IAR

Intel

Keil

Microsoft Motorola...TRACE32支持6种编程语言: ASM,C,C++,PASCAL,PL/M, ADA或MODULA2TRACE32支持多种不同的主机操平台,主要有:

Windsows3.1/95/98/NT

HP-UX Solaris

UNIX……TRACE32简介TRACE32支持的嵌入式操作系统超过20种,主要有

Nucleus OSE

Rubus CMX RTXC

pSOSVxWORKS...TRACE32支持RTOS调试:RTOS专用菜单Kernel资源显示Task状态显示、统计评估任务级调试……TRACE32简介TRACE32支持FLASH在线编程,FLASH〔厂家〕主要有: AMD ATMEL FUJISTU INTE MACRONIX MICRON MITSUBISHI MOTOROLA SHARP SST ST TI TOSHIBA…既支持片外FLASH,也支持片内FLASH支持8bit、16bit、32bit总线宽度TRACE32简介TRACE32具有独特的嵌入式软件测试功能:程序追踪〔Trace)程序流程,选择追踪...函数性能测试〔Performance〕运行时间,函数嵌套...代码覆盖分析〔Coverage〕代码覆盖率,变量检查〔读/写〕堆栈深度分析...TRACE32简介TRACE32系列产品具有统一的工作界面,使用同一命令集,易学易用,一通百通个性化的可编程菜单和功能键,用户可以根据自己的需要增加或删除某些下拉菜单和工具按键TRACE32简介Memory测试硬件断点功能,TRACE32可以在FLASH或EPROM中直接调试支持多CPU调试丰富的断点类型支持MMU、FPU调试上下文追踪系统CTS〔ContextTracingSystem〕条件执行功能〔STEP、GO〕……TRACE32简介TRACE32-ICD简介TRACE32-ICD是基于集成在片内的调试和跟踪逻辑〔BDM、JTAG、ETM、OCDS、NEXUS〕的在线调试器〔In-CircuitDebugger〕TRACE32-ICD根本结构TRACE32-ICD典型构成ControllerDebuggerDebugPortControllerDebuggerDebugPortTRACE32-ICD根本模块控制/接口模块PODPRT(并口)ETH(网口)调试模块DEBUGPowerDEBUGPowerDEBUGUSBTrace模块PowerNEXUICR(RISCTrace)PowerTraceROM调试器(ESI)配置方案BDM/JTAG调试器〔网口〕

Hub

EthernetInterfaceBDM/JTAGDebuggerBDM/JTAG调试器〔USB口〕BDM/JTAGDebuggerwithUSBInterface配置方案BDM/JTAG调试器,带Trace模块〔并口〕

PRTCable

PodbusParallelInterfaceBDM/JTAGDebugger

RISCTraceModule配置方案BDM/JTAG调试器,带触发探头〔并口〕

PrinterCableParallelInterfaceBDM/JTAGDebuggerTriggerProbe

配置方案TRAC32小结完成板级硬件调试仿真实时调试跟踪性能分析RTOS级调试……ADS+TRACE小结ADS1.2软件编译,模拟调试TRACE32-ICD硬件调试仿真ADS1.2+TRACE32-ICDARM嵌入式开发的黄金组合美国高通CDMA方案标配SOC设计开发环境介绍-Integrator典型的SOC系统架构通用外设Integrator概述Integrator是ARM公司提供的用于SOC(SystemOnChip)设计的集成开发环境将ARM公司的测试芯片〔各种ARM内核〕及其相关技术通过灵活而又高效的开发平台提供给用户。提高设计效率缩短上市时间降低开发本钱Integrator将软件和硬件IP集成在一起PrimeCell及其相关驱动使用可编程器件方便得到与最终系统极为相近的早期原型Integrator的内核模块〔CM〕支持最新的ARM内核200-500MIPSASB,AHBIntegrator组件Integrator系列由各种模块和板极平台构成:CM—CoreModule:内核模块,提供ARM处理器内核LM—LogicModule:逻辑模块,提供用户可编程逻辑单元IM—InterfaceModule:接口模块,提供与LM相连的电路和连结器,为开发测试、基准确定、原理认证以及用户原型设计提供方便板极平台:提供各模块所需的以AMBA为骨干的系统架构AP—ASICDevelopmentPlatform:ASIC开发平台AM—AnalyzerModule:分析模块,用于与逻辑分析仪对接SP—CompactPCIDevelopmentBoard,可用于WinCE开发内核模块〔CM〕CM可独立工作,也可与AP或用户设计的硬件一起工作主要是提供SOC的核心—ARM内核主要特性ARM微处理器技术266K或1MSSRAM,因内核不同而不同SDRAMDIMM扩展槽,支持最多256MB空间引出AMBA系统总线到各种平台板时钟产生复位控制JTAG调试接口,可接Multi-ICE、Trace32-ICD等开发工具内核模块〔CM〕CM设计有紧耦合存储系统SSRAM和SDRAM尽可能靠近CPU,使得存储器速度得到优化有利的影响将在存储器总线性能中得到表达实际数字与所用的内核有关,典型值是40MHz多处理器支持允许多达4个CM堆接在同一个开发平台上—支持多处理器应用4个系统总线接口,分置在板子两端。方便与其他模块连结工作方式独立工作:加上电源和Multi-ICE/Trace32-ICD,就可独立工作可用于ARM内核性能的评估和演示集成到Integrator环境中:连接ARM公司的开发模块和平台与第三方开发环境集成使用:满足AMBA总线特性的第三方开发平台或ASIC原型设计系统内核模块〔CM〕CM支持的ARM处理器〔目前有8种〕Integrator/CM7TDMI --ARM7TDMIIntegrator/CM720T --ARM720TIntegrator/CM740T --ARM740TIntegrator/CM920T --ARM920TIntegrator/CM920-ETM --ARM920TandETM9Integrator/CM940T --ARM940TIntegrator/CM946E-S --ARM946E-SandETM9Integrator/CM966E-S --ARM966E-SandETM9逻辑模块〔LM〕LM是逻辑设计模块。提供用户可自由编程的FPGA单元,用于总线〔AMBA,ASB,AHB,APB〕设备的开发主要用于外设接口的添加开发。用户可将其外设设计通过总线直接连接到真实的环境中可用作原型设计、测试,与ARMPrimeCell外设或用户自己的硬件IP集成支持最新的FPGA技术和知名厂家〔如:Xilinx,Altera〕,目前最新的LM有:Xilinx:VirtexEXCV2000E–2MgatesAltera:ApexEP20K1000E–1.7Mgates工作方式单独使用和Integrator其他模块〔CM,IM,AP,SP〕集成使用支持多模块应用,最多可将4个LM堆接在一起当在FPGA中设计了一个软核后,也可作CM使用逻辑模块〔LM〕主要特性Xilinx或AlteraFPGA1MBZBTSRAM9个通用LED8个通用开关时钟及复位电路按钮提供连接到FPGA的原型设计区与IM的连接接口与IntegratorAMBA系统和控制总线全连接,包括中断、仲裁器和时钟信号AMBAHDL例子代码2个32位的逻辑分析仪接口〔直接连接到FPGA引脚上〕JTAG,Trace,逻辑分析仪接口接口模块〔IM〕接口模块是外设添加开发系统的一局部用于连接逻辑模块提供标准接口,用户可以连接使用PrimeCell或用户自己在LMFPGA中实现的外设。需要与兼容的LM配套使用两种类型〔资源及接口不尽相同〕IM-PD1:主要针对便携式、无线、娱乐市场 IM-AD1:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论