• 指令长度固定。
ARMv1到ARMv3为早期版本,未使用商业授权模式,现已不再使用;ARMv4是一个运行在32位地址空间的32位ISA[2],是目前支持的最老版本;ARMv4T在v4的基础上添加了一个运行在32位地址空间的16位Thumb指令集;之后的版本从冯▪诺依曼结构开始全面转向哈佛结构。ARMv5TE改进了Thumb指令集,添加了增强DSP指令集扩展;ARMv5TEJ加入了ARM独有的Jazelle技术扩展;ARMv6在存储器系统、异常处理、多处理器环境等多方面加以改进,加入了单指令多数据(SIMD)、多媒体指令扩展及可选Thumb-2指令集和TrustZone技术;ARMv7推出了全新的Cortex系列,采用了Thumb-2技术和NEON[3]技术,Cortex系列有三种类型:A(应用处理器)、R(嵌入式实时处理器)和M(微控制器)。
通过Cortex-M3的实验有助于帮助了解ARM的体系结构,Cortex-M系列各个版本区别不大,而且整个Cortex系列同本同源,一旦有了Cortex-M3的基础,转向其他其他ARM内核会有触类旁通的效果。源:自/751-·论,文'网·www.751com.cn/
1.3 国内研究现状
1.4 本文的主要研究内容和结构安排
本文需要利用LM3S9B92开发板实现USB与CAN总线的数据转换系统,使用Keil μVision4集成开发环境实现软件编写。据此,分为以下开发流程:首先,熟悉背景知识、硬件平台和开发环境;其次,熟悉UART模块编程技术并编写相关软件下载到开发板中测试、运行;然后,熟悉CAN模块的编程技术,实现CAN总线与UART数据转换程序并下载到开发板中测试、运行;紧接着,熟悉USB模块的编程技术,实现USB与UART数据转换程序并下载到开发板中测试、运行;最后,集成CAN模块驱动程序和USB模块驱动程序,实现USB与CAN总线的数据转换程序并下载到开发板中测试、运行。
全文共分为五章:
第一章:为引言部分,介绍了本文的起因、研究背景及意义、国内研究的状况以及具体介绍了本文研究的结构组织。
第二章:简单介绍本文使用的硬件平台。硬件平台中着重介绍了Cortex-M3的特点、LM3S9B92微控制器特点以及本文所涉及模块的特点、协议规范、硬件接口电路图及其编程技术,其中编程技术是通过本人亲身实验而得出的一些经验和方法。
第三章: 简单介绍本文使用的开发环境和调试工具。开发环境中主要介绍了Keil μVision4的特点以及所属工程文件的配置;调试工具中介绍了本文在PC上用来调试开发板系统的三个软件。
第四章: 详细讲述了UART、CAN总线和USB两两之间的数据转换系统的实现。本章本着循序渐进的方法,从简单的模块先入手再到相对难的模块,最后将子任务集成完成本文的核心研究。每个系统都有详细的需求分析、系统设计和运行效果图。文献综述
第五章: 本次实验的结论和过程中遇到的相关问题总结,并阐述了今后的工作努力方向。
2 硬件平台介绍
2.1 ARM Cortex-M3的体系结构
ARM Cortex™ - M3处理器是行业领先的32位处理器,它是一个具有低门数、低中断延迟、低成本调试的低功耗处理器,适用于具有高确定性的实时应用。