资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,汇编及嵌入式,C,语言,教 师:王茜,Email:,wqwypmyhww,课程内容安排,第一章,ARM,微处理器概述,嵌入式系统的概念、组成以及与通用计算机的区别;,嵌入式微处理器的概念、特点、架构和分类;,ARM,微处理器的应用领域、特点、体系结构、系列产品以及在选择,ARM,微处理器时应该考虑的因素。,课程内容安排,第二章,ARM,编程模型和指令集介绍,ARM,微处理器的编程模式,包括编程模型、指令格式、以及指令寻址方式;,ARM,指令集介绍,这部分是汇编程序的基础。,课程内容安排,第三章,ARM,程序设计基础,ARM,伪指令;,汇编语言程序设计;,C,语言和汇编语言混合程序设计;,编译器的使用,包括,ARM,编译器关键词、,ARM,编译器支持的数据类型;,程序设计示例。,课程内容安排,第四章,S3C2410A,处理器硬件结构,S3C2410A,硬件部分概述;,S3C2410A,特殊功能寄存器;,最小应用系统设计,包括电源、晶振和复位电路;,JTAG,调试接口设计。,课程内容安排,第五章 存储系统设计,存储器控制器介绍;,地址线接口设计;,Nor Flash,与,Nand,Flash,接口设计;,SDRAM,接口设计。,课程内容安排,第六章 时钟和定时器,时钟和功耗管理;,PWM,定时器设计;,实时时钟(,RTC,)设计;,看门狗设计。,课程内容安排,第七章 通用端口和中断设计,I/O,端口设计;,中断控制设计。,第八章 串行接口设计,UART,接口设计;,I2C,总线接口设计;,SPI,接口设计。,课程内容安排,第九章,LCD,接口设计,LCD,控制器的特性;,LCD,设计。,第十章,ADC,和触摸屏接口设计,ADC,的基础知识;,触摸屏原理;,编程示例。,课程内容安排,第十一章 引导程序设计,引导机理分析;,ARM9,初始化代码分析。,第十二章 嵌入式操作系统及其应用开发,嵌入式操作系统介绍,第一章,ARM,微处理器概述,1.1,嵌入式系统概述,1.1.1,嵌入式系统定义,嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。,从定义可得知,嵌入式系统是面向用户、面向产品、面向应用的,它必须与具体应用相结合才会具有生命力、才更具有优势,即是嵌入式系统是与应用紧密结合的,它具有很强的专用性,所以必须结合实际系统需求对软硬件进行合理的裁剪利用。,1.1.2,嵌入式系统的组成,嵌入式系统一般由嵌入式硬件和软件组成。硬件以微处理器为核心集成存储器和系统专用的输入输出设备;软件包括初始化代码及驱动、嵌入式操作系统和应用程序等,这些软件有机地结合在一起,形成系统特定的一体化软件。,1.1.2,嵌入式系统的组成,硬件:,MPU,微处理器,电源,模块,时钟,复位,Flash,RAM,ROM,USB,LCD,Keyboard,外围电路,Other,外设,1.1.2,嵌入式系统的组成,软件:,处理器,存储器,输入,输出,操作系统,应用程序,软件结构,硬件结构,1.1.3,嵌入式系统与通用计算机的异同,相同:,都具有一个微处理器芯片、随机存储器(,RAM,)、非易失性存储器和输入输出设备。,1.1.3,嵌入式系统与通用计算机的异同,区别:,系统配置不同。如通用计算机一般配置较大容量的,RAM,,而某些嵌入式系统配置的内存只有几百个存储单元;,通用计算机是一个通用的计算平台,而嵌入式系统一般是用于特定任务的专用系统,其硬件和软件都必须高效率的设计,量体裁衣,去除冗余;,通用计算机是面向计算和处理的,而嵌入式系统一般是面向控制的;,1.1.3,嵌入式系统与通用计算机的异同,区别:,嵌入式系统需要专用的开发工具;,嵌入式系统大都有成本和功耗的要求;,嵌入式系统软件故障带来的后果比,PC,机大得多。,1.2,嵌入式微处理器,1.2.1,嵌入式微处理器概述,嵌入式处理器是整个嵌入式系统的核心部件,与通用计算机系统的,CPU,相比,它特别强调面向具体应用,“,量身定做,”,,不同的应用领域往往需要不同结构和性能指标的处理器产品,同时它还具有品种多、体积小、成本低、集成度高的特点。,嵌入式处理器通常由三大部分组成:控制单元、算术逻辑单元和寄存器。,1.2.1,嵌入式微处理器概述,1.2.1,嵌入式微处理器概述,控制单元:主要负责取指、译码和取操作数等基本动作,并发送主要的控制指令,控制单元中包括两个重要的寄存器,即程序计数器(,PC,)和指令寄存器(,IR,),,PC,用于记录下一条程序指令在内存中的位置,以便控制单元能到正确的内存位置取指,,IR,负责存放控制单元所取的指令,通过译码产生必要的控制信号送到算术逻辑单元进行相关的数据处理工作;,算术逻辑单元:算术逻辑单元分为两个部分,一部分是算术运算单元,主要处理数值型的数据,进行数学运算,另一部分是逻辑运算单元,主要处理逻辑运算工作;,寄存器:用于存储暂时性的数据,主要是从存储器中得到的数据和算术逻辑单元中处理好的数据。,1.2.3,嵌入式微处理器的特点,功耗低:尤其是用于便携式的无线及移动的计算和通信设备中靠电池供电的嵌入式系统更是如此;,集成丰富的外围设备接口:不仅满足了系统的功能要求,还可以大大提高产品的集成度,从而达到缩小面积,/,体积、提高可靠性的目的;,对实时多任务有很强的支持能力,:,能完成多任务并且有较短的中断响应时间,从而使内部的代码和实时内核的执行时间减少到最低限度,。,1.2.4 CISC,和,RISC,架构,传统的,CISC,(,Complex Instruction Set Computer,)结构有其固有的缺点,即是随着计算机技术的发展而不断引入新的复杂的指令集,为支持这些新增的指令,计算机的架构会越来越复杂。然而,在,CISC,指令集的各种指令中,其使用频率却相差悬殊,大约有,20%,的指令会被反复使用,占整个程序代码的,80%,,而剩下的不常使用的,80%,的指令在程序中只占,20%,,显然,这种结构是不太合理的。,1.2.4 CISC,和,RISC,架构,1979,年美国加州大学伯克利分校提出了,RISC,(,Reduced Instruction Set Computer,)的概念,把着眼点放在了如何是计算机的结构更加简单合理地提高运算速度上。,RISC,结构优先选取使用频率最高的简单指令,避免复杂指令;将指令长度固定,指令格式和寻址方式种类减少。,RISC,架构具有如下特点:,1.,采用固定长度的指令格式,指令规整、简单;,2.,使用单周期指令,便于操作执行;,3.,大量使用,cache,,只有载入,/,存储指令可以存取存储器,以提高指令的执行效率。,1.3,ARM,微处理器概述,1.3.1 ARM,ARM,(,Advanced RISC Machines,),既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。,1990,年,ARM,公司成立于英国剑桥,是专门从事基于,RISC,技术的芯片设计开发的公司,作为知识产权供应商,,ARM,本身不直接从事芯片生产,而是转让设计许可,由合作公司生产各具特色的芯片。,1.3.1 ARM,ARM7TDMI,是,ARM,公司最成功的微处理器,IP,之一,至今在蜂窝电话领域已销售了数亿个微处理器。,DEC,公司获得,ARM,公司授权设计并生产了,StrongARM,系列微处理器,这款,CPU,的主频达到了,233MHz,,而功率不到,1,瓦。后来,DEC,公司,StrongARM,部门被,Intel,公司并购,,Intel,公司用,StrongARM,取代了他们境况不佳的,i860,和,i960,体系,并在此基础上开发了新的体系结构,XScale,系列。,1.3.1 ARM,将技术授权给其它芯片厂商,形成各具特色的,ARM,芯片,.,1.3.1 ARM,ARM,微处理器的应用领域:,1.,工业控制领域:作为,32,位的,RISC,架构,基于,ARM,核的微控制器芯片不但占据了高端微控制器市场的大部分市场份额,同时也逐渐向低端微控制器应用领域扩展,,ARM,微控制器的低功耗、高性价比,向传统的,8,位,/16,位微控制器提出了挑战;,2.,无线通讯领域:目前已有超过,85%,的无线通讯设备采用了,ARM,技术,,ARM,以其高性能和低成本,在该领域的地位日益巩固;,3.,网络应用:随着宽带技术的推广,采用,ARM,技术的,ADSL,芯片正逐步获得竞争优势。此外,,ARM,在语音及视频处理上行了优化,并获得广泛支持,也对,DSP,的应用领域提出了挑战;,4.,消费类电子产品:,ARM,技术在目前流行的数字音频播放器、数字机顶盒和游戏机中得到广泛采用;,5.,成像和安全产品:现在流行的数码相机和打印机中绝大部分采用,ARM,技术。手机中的,32,位,SIM,智能卡也采用了,ARM,技术。,1.3.1 ARM,ARM,微处理器的特点,采用,RISC,架构的,ARM,微处理器具有如下特点:,-,体积小、低功耗、低成本、高性能;,-,支持,Thumb,(,16,位),/ARM,(,32,位)双指令集,兼容,8,位,/16,位器件;,-,大量使用寄存器,指令执行速度更快;,-,大多数数据操作都在寄存器中完成;,-,寻址方式灵活简单,执行效率高;,-,指令长度固定。,1.3.2 ARM,架构版本与产品系列,迄今为止,,ARM,公司定义了,7,种主要的,ARM ISA,(,Instruction Set Architecture,),从版本,1,到版本,7,,,ARM,体系的指令集功能不断扩大,,ARM,处理器系列种的各种处理器,虽然在实现技术、应用场合和性能方面都不相同,但只要支持相同的,ARM,体系版本,基于他们的应用软件是兼容的。,1.3.2 ARM,架构版本与产品系列,版 本,处理器,系列,特 点,ARMv1,ARM1,该版架构只在原型机,ARM1,出现过,未,用于商业产品。其基本性能如下:,基本的数据处理指令(无乘法),26,位寻址模式,ARMv2,ARM2,ARM3,该版架构对,ARMv1,版进行了扩展,版本,ARMv2a,是,v2,版的变种,,ARM3,芯片采用了,ARMv2a,。,ARMv2,版增加了以下功能:,32,位乘法和乘加指令,支持,32,位协处理器操作指令,快速中断模式,1.3.2 ARM,架构版本与产品系列,版 本,处理器,系列,特 点,ARMv3,ARMv3M,ARM6,ARM7DI,ARM7M,ARMv3,版架构对,ARM,体系结构作了较大改动:,寻址空间增至,32,位(,4GB,),独立的当前程序状态寄存器,CPSR,和程序状态保存寄存器,SPSR,,保存程序异常中断时的程序状态,以便于对异常的处理,增加了中止(,Abort,)和未定义两种处理器模式,增加了,MMU,支持,ARMv3M,增加了有符号和无符号长乘法指令,1.3.2 ARM,架构版本与产品系列,版 本,处理器,系列,特 点,ARMv4,ARMv4T,StrongARM,ARM7TDMI,ARM9T,ARMv4,版架构是目前应用最广的,ARM,体系结构,在,v3,版上作了进一步扩充,指令集增加了以下功能:,增加了系统模式,增加了,16,位,Thumb,指令集,完善了软件中断,SWI,指令的功能,不再支持,26,位寻址模式,1.3.2 ARM,架构版本与产品系列,版 本,处理器,系列,特 点,ARMv5TE,ARMv5TEJ,ARM9E,ARM10E,Xscale,ARM7EJ,ARM926EJ,ARMv5,版架构是在,ARMv4,版基础上增加了一些新的指令:,增加了,ARM,与,Thumb,状态之间切换的指令,增强乘法指令和快速乘法累加指令,增加了数字信号处理指令(,ARMv5TE,版),增加了,Java,加速功能,(,ARMv5TEJ,版),1.3.2 ARM,架构版本与产品系列,版 本,处理器,系列,特 点,ARMv6,ARM11,ARMv6,版架构是,2001,年发布的,首先在,2002,年春季发布的,ARM11,处理器中使用,增加了以下功能:,Thumb-2,:增强代码密度,SIMD,:增强的媒体和数字处理功能,TrustZone,:提供增强的安全性能,IEM,:提供增强的功耗管理功能,1.3.2 ARM,架构版本与产品系列,版 本,处理器,系列,特 点,ARMv7,Cortex,ARMv7,版架构定义了,3,种不同的微处理器系列:,A,系列:面向应用的微处理器核,支持复杂操作系统和用户应用,R,系列:深度嵌入的微处理器核,针对实时系统应用,M,系列:微控制核,针对成本敏感的嵌入式控制应用,1.3.2 ARM,架构版本与产品系列,ARM7,微处理器系列,为低功耗的,32,位,RISC,处理器,最适合用于对价位和功耗要求较高的消费类应用,具有如下特点:,具有嵌入式,ICE,RT,逻辑,调试开发方便,极低的功耗,能够提供,0.9MIPS/MHz,的三级流水线,程序密度高并兼容,16,位的,Thumb,指令集,对操作系统的支持广泛,包括,Windows CE,、,Linux,、,Palm OS,等,指令系统与,ARM9,、,ARM9E,和,ARM10E,系列相容,便于用户的产品升级换代,主频最高可达,130MIPS,,高速的运算处理能力能胜任绝大多数的复杂应用,1.3.2 ARM,架构版本与产品系列,ARM9,微处理器系列,ARM9,在高性能和低功耗特性方面提供最佳的性能,具有如下特点:,5,级整数流水线,指令执行效率更高;,1.1MIPS/MHz,的哈佛结构,支持,32,位,ARM,指令集和,16,位,Thumb,指令集,支持,32,位的高速,AMBA,总线接口,全性能的,MMU,,支持,Windows CE,、,Linux,、,Palm OS,等多种主流嵌入式操作系统,支持数据,cache,和指令,cache,,具有更高的指令和数据处理能力,1.3.2 ARM,架构版本与产品系列,ARM9E,微处理器系列,ARM9E,系列微处理器为可综合处理器,使用单一的处理器内核提供了微控制器、,DSP,、,Java,应用系统的解决方案,极大的减少了芯片的面积和系统的复杂程度,具有如下特点:,支持,DSP,指令集,适合于需要高速数字信号处理的场合,支持,VFP9,浮点处理协处理器,主频最高可达,300MIPS,1.3.2 ARM,架构版本与产品系列,ARM10E,微处理器系列,ARM10E,具有高性能、低功耗的特点,由于采用了新的架构,与,ARM9,器件相比较,在同样的时钟频率下,性能提高了近,50%,,同时,,ARM10E,采用了两种先进的节能方式,使其功耗极低,具有如下特点:,6,级整数流水线,指令执行效率更高,支持,DSP,指令集,适合于需要高速数字信号处理的场合,支持,VFP10,浮点处理协处理器,主频最高可达,400MIPS,内嵌并行读,/,写操作部件,1.3.2 ARM,架构版本与产品系列,ARM11,微处理器系列,ARM11,着重提高了多媒体处理性能,在处理流媒体和,Java,程序时的性能表现更为出色,,ARM11,具有更低的耗电量,可以满足下一代手持设备对电池供应时间的要求。具有如下特点:,8,级整数流水线,指令执行效率更高,主频最高可达,1GHz,1.3.2 ARM,架构版本与产品系列,SecurCore,微处理器系列,SecurCore,系列微处理器除了具有,ARM,体系结构的低功耗、高性能的特点外,还具有其独特的优势,即提供了对安全解决方案的支持,。具有如下特点:,带有灵活的保护单元,以确保操作系统和应用数据的安全,采用软内核技术,防止外部对其进行扫描探测,可集成用户自己的安全特性和其他协处理器,1.3.2 ARM,架构版本与产品系列,StrongARM,微处理器系列,Inter,StrongARM,SA-1100,处理器是采用,ARM,体系结构高度集成的,32,位,RISC,微处理器。它融合了,Inter,公司的设计和处理技术以及,ARM,体系结构的电源效率,采用在软件上兼容,ARMv4,体系结构、同时采用具有,Intel,技术优点的体系结构。,Intel,StrongARM,处理器是便携式通讯产品和消费类电子产品的理想选择,已成功应用于多家公司的掌上电脑系列产品。,1.3.2 ARM,架构版本与产品系列,Xscale,微处理器系列,Xscale,处理器是基于,ARMv5TE,体系结构的解决方案,是一款全性能、高性价比、低功耗的处理器。它支持,16,位的,Thumb,指令和,DSP,指令集,已使用在数字移动电话、个人数字助理和网络产品等场合。,1.3.3,选择,ARM,微处理器的准则,ARM,微处理器内核的选择,如,果希望使用,WinCE,或标准,Linux,等操作系统以减少软件开发时间,就需要选择,ARM720T,以上带有,MMU,(,Memory Management Unit,)功能的,ARM,芯片。,ARM720T,、,ARM920TARM922TStrong-ARM,都带有,MMU,功能;,ARM7TDMI,没有,MMU,,不支持,WinCE,或标准,Linux,,但目前有,uCLinux,等不需要,MMU,支持的操作系统可运行。,1.3.3,选择,ARM,微处理器的准则,系统的工作频率,系统的工作频率在很大程度上决定了,ARM,微处理器的处理能力;,ARM7,系列微处理器的典型处理速度为,0.9MIPS/MHz,,常见的,ARM7,芯片系统主时钟为,20MHz-133MHz,;,ARM9,系列微处理器的典型处理速度为,1.1MIPS/MHz,,常见的,ARM9,芯片系统主时钟为,100MHz-233MHz,,,ARM10,最高可达,700MHz,。,1.3.3,选择,ARM,微处理器的准则,芯片内存储器的容量,大多数的,ARM,微处理器芯片内存储器的容量都不太大,但也有相对比较大的,如,AT91F40162,就具有高达,2MB,的片内程序存储空间,在设计时如果希望简化系统的设计,就需要考虑内存容量的问题。,片内外围电路的选择,除,ARM,微处理器内核之外,几乎所有的,ARM,芯片均需要根据各自不同的应用领域扩展相关功能的模块,并集成在芯片之中。,多芯核结构的选择,为了增强多任务处理能力、数学运算能力、多媒体以及网络处理能力,某些供应商提供的,ARM,芯片内置有多个芯核,用户可以根据不同的应用做出选择。,
展开阅读全文