ARM嵌入式系统设计

一:STM32项目开发准备

1:了解ARM嵌入式系统概述

定义:

嵌入式系统是以应用为中心,以现代计算机技术为基础,能够根据用户需求(功能、可靠性、成本、体积、功耗、环境等)灵活裁剪软硬件模块的专用计算机系统。

构成:

嵌入式系统由硬件和软件组成.是能够独立进行运作的器件。

其软件内容只包括软件运行环境及其操作系统。硬件内容包括信号处理器、存储器、通信模块等在内的多方面的内容。

相比于一般的计算机处理系统而言,嵌入式系统存在较大的差异性, 它不能实现大容量的存储功能,因为没有与之相匹配的大容量介质,大部分采用的存储介质有E-PROM、EEPROM 等, 软件部分以API编程接口作为开发平台的核心。

要点概括:

以应用为中心:强调嵌入式系统的目标是满足用户的特定需求。就绝大多数完整的嵌入式系统而言,用户打开电源即可直接享用其功能,无需二次开发或仅需少量配置操作。 

专用性:嵌入式系统的应用场合大多对可靠性、实时性有较高要求,这就决定了服务于特定应用的专用系统是嵌入式系统的主流模式,它并不强调系统的通用性和可扩展。这种专用性通常也导致嵌入式系统是一个软硬件紧密集成的最终系统,因为这样才能更有效地提高整个系统的可靠性并降低成本,并使之具有更好的用户体验。 

以现代计算机技术为核心:嵌入式系统的最基本支撑技术,大致上包括集成电路设计技术、系统结构技术、传感与检测技术、嵌入式操作系统和实时操作系统技术、资源受限系统的高可靠软件开发技术、系统形式化规范与验证技术、通信技术、低功耗技术、特定应用领域的数据分析、信号处理和控制优化技术等,它们围绕计算机基本原理,集成进特定的专用设备就形成了一个嵌入式系统。 

软硬件可裁剪:嵌入式系统针对的应用场景如此之多,并带来差异性极大的设计指标要求(功能性能、可靠性、成本、功耗),以至于现实上很难有一套方案满足所有的系统要求,因此根据需求的不同,灵活裁剪软硬件、组建符合要求的最终系统是嵌入式技术发展的必然技术路线。 

发展过程:

嵌入式计算机的真正发展是在微处理器问世之后。1971年11月,算术运算器和控制器电路成功的被集成在一起,推出了第一款微处理器,其后各厂家陆续推出了8位、16位微处理器。以这些微处理器为核心所构成的系统广泛地应用于仪器仪表、医疗设备、机器人、家用电器等领域。微处理器的广泛应用形成了一个广阔的嵌入式应用市场,计算机厂家开始大量地以插件方式向用户提供OEM产品,再由用户根据自己的需要选择一套适合的CPU板、存储器板及各式I/O插件板,从而构成专用的嵌入式计算机系统,并将其嵌入自己的系统设备中。 

20世纪80年代,随着微电子工艺水平的提高,集成电路制造商开始把嵌入式计算机应用中所需要的微处理器、I/O接口、A/D转换器、D/A转换器、串行接口,以及RAM、ROM等部件全部集成到一个VLSI中,从而制造出面向I/O设计的微控制器,即俗称的单片机。单片机成为嵌入式计算机中异军突起的一支新秀。20世纪90年代,在分布控制、柔性制造、数字化通信和信息家电等巨大需求的牵引下,嵌入式系统进一步快速发展。面向实时信号处理算法的DSP产品向着高速、高精度、低功耗的方向发展。21世纪是一个网络盛行的时代,将嵌入式系统应用到各类网络中是其发展的重要方向。 

嵌入式系统的发展大致经历了以下三个阶段:

第一阶段:嵌入技术的早期阶段。嵌入式系统以功能简单的专用计算机或单片机为核心的可编程控制器形式存在,具有监测、伺服、设备指示等功能。这种系统大部分应用于各类工业控制和飞机、导弹等武器装备中。 

第二阶段:以高端嵌入式CPU和嵌入式操作系统为标志。这一阶段系统的主要特点是计算机硬件出现了高可靠、低功耗的嵌入式CPU,如ARM、PowerPC等,且支持操作系统,支持复杂应用程序的开发和运行。 

第三阶段:以芯片技术和Internet技术为标志。微电子技术发展迅速,SOC(片上系统)使嵌入式系统越来越小,功能却越来越强。目前大多数嵌入式系统还孤立于Internet之外,但随着Internet的发展及Internet技术与信息家电、工业控制技术等结合日益密切,嵌入式技术正在进入快速发展和广泛应用的时期。 

种类:

嵌入式微处理器

嵌入式微处理器(Embedded Microprocessor Unit,EMPU)是以通用计算机中的标准CPU为微处理器,并将其装配在专门设计的电路板上,且仅保留与嵌入式应用有关的母板功能,构成嵌入式系统。与通用计算机相比,其系统体积和功耗大幅度减小,而工作温度的范围、抗电磁干扰能力、系统的可靠性等方面均有提高。

在EMPU中,微处理器是整个系统的核心,通常由3大部分组成:控制单元、算术逻辑单元和寄存器。

嵌入式微控制器

嵌入式微控制器(Microcontroller Unit,MCU)又称单片机。它以某一种微处理器为核心,芯片内部集成有一定容量的存储器(ROM/EPROM、RAM)、I/O接口(串行接口、并行接口)、定时器/计数器、看门狗、脉宽调制输出、A/D转换器、D/A转换器、总线、总线逻辑等。与嵌入式微处理器相比,微控制器的最大特点是单片化、体积小、功耗低、可靠性较高。微控制器是目前嵌入式系统工业的主流。

嵌入式数字信号处理器

嵌入式数字信号处理器(Embedded Digital Signal Processor,EDSP)对系统结构和指令进行了特殊设计,使其适合执行DSP算法,编译效率高,指令执行速度也较快,在数字滤波、FFT、谱分析等方面,DSP算法已广泛应用于嵌入式领域,DSP应用正从在单片机中以普通指令实现DSP功能,过渡到采用EDSP。

嵌入式片上系统

嵌入式片上系统(System on Chip,SoC)是集系统性能于一块芯片上的系统组芯片。它通常含有一个或多个微处理器IP核(CPU),根据需求也可增加一个或多个DSP IP核,相应的外围特殊功能模块,以及一定容量的存储器(RAM、ROM)等,并针对应用所需的性能将其设计集成在芯片上,成为系统操作芯片。其主要特点是嵌入式系统能够运行于各种不同类型的微处理器上,兼容性好,操作系统的内核小,效果好。

特点:

嵌入式系统的硬件和软件必须根据具体的应用任务,以功耗、成本、体积、可靠性、处理能力等为指标来进行选择。嵌入式系统的核心是系统软件和应用软件,由于存储空间有限,因而要求软件代码紧凑、可靠,且对实时性有严格要求。

从构成上看,嵌入式系统是集软硬件于一体的、可独立工作的计算机系统;从外观上看,嵌入式系统像是一个“可编程”的电子“器件”;从功能上看,它是对目标系统(宿主对象)进行控制,使其智能化的控制器。


从用户和开发人员的不同角度来看,与普通计算机相比较,嵌入式系统具有如下特点:

(1)专用性强。由于嵌入式系统通常是面向某个特定应用的,所以嵌入式系统的硬件和软件,尤其是软件,都是为特定用户群设计的,通常具有某种专用性的特点。 

(2)体积小型化。嵌入式计算机把通用计算机系统中许多由板卡完成的任务集成在芯片内部,从而有利于实现小型化,方便将嵌入式系统嵌入目标系统中。  

(3)实时性好。嵌入式系统广泛应用于生产过程控制、数据采集、传输通信等场合,主要用来对宿主对象进行控制,所以对嵌入式系统有或多或少的实时性要求。例如,对武器中的嵌入式系统,某些工业控制装置中的控制系统等的实时性要求就极高。有些系统对实时性要求也并不是很高,例如,近年来发展速度比较快的掌上电脑等。但总体来说,实时性是对嵌入式系统的普遍要求,是设计者和用户应重点考虑的一个重要指标。 

(4)可裁剪性好。从嵌入式系统专用性的特点来看,嵌入式系统的供应者理应提供各式各样的硬件和软件以备选用,力争在同样的硅片面积上实现更高的性能,这样才能在具体应用中更具竞争力。

(5)可靠性高。由于有些嵌入式系统所承担的计算任务涉及被控产品的关键质量、人身设备安全,甚至国家机密等重大事务,且有些嵌入式系统的宿主对象工作在无人值守的场合,如在危险性高的工业环境和恶劣的野外环境中的监控装置。所以,与普通系统相比较,嵌入式系统对可靠性的要求极高。 

(6)功耗低。有许多嵌入式系统的宿主对象是一些小型应用系统,如移动电话、MP3、数码相机等,这些设备不可能配置交流电源或容量较大的电源,因此低功耗一直是嵌入式系统追求的目标。 

(7)嵌入式系统本身不具备自我开发能力,必须借助通用计算机平台来开发。嵌入式系统设计完成以后,普通用户通常没有办法对其中的程序或硬件结构进行修改,必须有一套开发工具和环境才能进行。

(8)嵌入式系统通常采用“软硬件协同设计”的方法实现。早期的嵌入式系统设计方法经常采用的是“硬件优先”原则,即在只粗略估计软件任务需求的情况下,首先进行硬件设计与实现,然后在此硬件平台之上进行软件设计。如果采用传统的设计方法,则一旦在测试中发现问题,需要对设计进行修改时,整个设计流程将重新进行,对成本和设计周期的影响很大。系统的设计在很大程度上依赖于设计者的经验。20世纪90年代以来,随着电子和芯片等相关技术的发展,嵌入式系统的设计和实现出现了软硬件协同设计方法,即使用统一的方法和工具对软件和硬件进行描述、综合和验证。在系统目标要求的指导下,通过综合分析系统软硬件功能及现有资源,协同设计软硬件体系结构,以最大限度地挖掘系统软硬件能力,避免由于独立设计软硬件体系结构而带来的种种弊病,得到高性能、低代价的优化设计方案。

嵌入方式:

嵌入式系统是通过把CPU嵌入目标系统或被控系统中起作用的。但是在不同的嵌入式系统中,嵌入的形式和程度是各不相同的。根据嵌入式系统和通用计算机连接关系的密切程度,嵌入形式可以分为全嵌入方式、半嵌入方式。 

全嵌入方式

如果采用全嵌入方式,则嵌入式系统(或其核心功能)可以不依赖于通用计算机系统,即可单独工作,典型实例有手机、MP4、车载GPS导航系统等。采用全嵌入方式的嵌入式系统有如下特点。

(1)具有独立的处理器系统,且具有完整的输入/输出系统,能独立完成系统的功能。 

(2)高端CPU支持嵌入式操作系统,可以开发功能复杂的应用程序。 

(3)一般为便携式手持式设备,其工作环境一般是无人值守、移动空间、高空或其他条件恶劣的环境。

(4)供电方式一般采用电池供电,有些情况下也可以直接采用市电220V供电,由系统自行设计转换和稳压电路。较高端的设备往往会把两种供电方式结合起来,让用户使用起来更加灵活。

(5)全嵌入方式适合任何不宜采用通用计算机的场合,如消费电子、家用电器、通信网络设备、工业控制、智能仪器、战场电子对抗、航天航空武器等,其应用范围十分广泛。 


半嵌入方式

如果采用半嵌入方式,则嵌入式系统(或其核心功能)需要和通用计算机系统结合起来才能正常工作,典型实例有医用B超系统、基于PCI卡的数据采集系统等。采用半嵌入方式的嵌入式系统有如下特点。  

(1)一般没有独立的处理器,而是借用通用计算机系统的CPU完成计算和/或控制功能;有时即使具有自己的独立处理器,但是处理器也只是完成一些有限的特定功能,而不具备控制全部系统的功能。

(2)嵌入式系统只是整个系统的--部分,只能完成整个系统的一部分功能,而其他功能需要在通用计算机上完成。通用计算机利用自己丰富的软件和硬件资源,提供友好的人机操作界面和强大的数据处理能力。

(3)嵌入式系统的功能体现在对前端数据的采集和执行对被控对象的控制,其中的数据分析、处理和存储等功能由通用计算机系统完成。

(4)嵌入式系统一般采用各种规范的总线形式和通用计算机相连接。典型的实例有PCI总线、USB总线等,简单的嵌入式系统还可以通过串口来连接。

(5)嵌入式系统是作为外设连接在通用计算机上的,因此在通用计算机中一般需要提供嵌入式系统的标准驱动程序。

ARM:

ARM(Advanced RISC Machines)公司自1990年11月正式成立以来,从事并专注于市场不断增长的对低成本、低功耗、高性能的32位RISC芯片的需求,选择了设计基础技术并将其以知识产权的形式向客户进行授权。虽然诞生初期引来了业界许多怀疑,然而1991年ARM的第一次成功的商业交易,引来了SHARP、TI、SAMSUNG等公司加入授权行列,直接促使了新的RISC架构的开发。目前全世界有200多家领先的半导体厂商获得ARM授权,组成了一个牢靠的产业联盟,每秒可生产90个芯片。ARM公司最新的微控制器Cortex采用v7指令集体系结构,为嵌入式市场提供了一个三管齐下的解决方案。Cortex-A系列提供高性能应用处理器,Cortex-R系列专门针对实时、深度嵌入式解决方案,Cortex-M系列专注于低成本嵌入式微控制器。目前有Cortex-M0、Cortex-M1、Cortex-M3、Cortex-M4、Cortex-A5、Cortex-A8、Cortex-A9、Cortex-A15、Cortex-R4和Cortex-R4F等多种类型。


ARM Cortex™-M处理器系列是一系列可向上兼容的高能效、易于使用的处理器,可以帮助开发人员满足将来的嵌入式应用的需要,以更低的成本提供更多功能、不断增加连接、改善代码重用和提高能效。Cortex-M3作为Cortex-M系列的第一款处理器,集8位单片机的价格和32位ARM处理器的性能于一身,毫不夸张地说,可以看做51时代的终结者。Cortex-M3时常被当做在国内使用比较广泛的经典处理器ARM7的继承者来宣传。Cortex-M3处理器提供出色的计算性能和对事件的卓越系统响应,同时可以应对低动态和静态功率限制的挑战。该处理器是高度可配置的,可以支持范围广泛的实现(从那些需要内存保护和强大跟踪技术的实现到需要极小面积的对成本非常敏感的设备)。

总体而言,Cortex-M3的性能更为优越,速度比ARM7快1/3,功耗低3/4,并且能实现更小的芯片面积,利于将更多功能整合在更小的芯片尺寸中,有助于单片售价降到1 美元。最新资料显示,Cortex-M3授权用户数已达到29家,包括STMicroelectronics、Texas Instruments、Toshiba、NXP和ATMEL在内的多家公司已经出货。

CORTEX处理器:

什么是Cortex处理器
1979年,Hermann Hauser和Chris Curry在英国剑桥创立了Acorn计算机公司,制造和销售个人计算机。Acorn的第一个产品是家用计算机Atom,它有一颗非常强劲的1MHz处理器和12KB内存。8位系统已经无法满足日益增加的对性能的需求,Acorn的工程师为此成立了一个“高级研究和开发部”,希望能够尝试一个项目来设计开发RISC(Reduced Instruction Set Computer,精简指令集计算机)处理器。1985年这一项目的成果——第一颗处理器Acorn RISC Machine(后来改名为Advanced RISC Machine)的样片ARM1诞生了,并第一次以VLSI Technology的3µm技术生产出来。ARM2很快代替了ARM1处理器,这是第一个投入生产的ARM处理器,也可能是世界上最简单的RISC处理器。它配置有一个真正的32位数据总线,一个26位地址总线,16个寄存器。通过一系列应用软件的开发成功,使得Acorn巩固了其在英国家用及计算机市场的领先地位。1990年时钟频率达到25MHz的ARM3被成功用于Acorn的台式计算机中。

1990年11月27日,Advanced RISC Machines Ltd.,(ARM公司)正式成立,公司的目标是从事并专注于市场不断增长的对低费用、低功耗、高性能的32位RISC芯片的需求,ARM最终选择了设计基础技术并将其以知识产权IP的形式向客户进行授权。在ARM公司的第一年,由于财务危机,只能将办公室搬迁到剑桥附近Swaffhan Bulbeck的一个谷仓中。ARM公司的第一个产品ARM610专为苹果公司设计,后来用于苹果公司的Newton PDA。之后与SHARP、TI、SAMSUNG的合作推动了ARM处理器的发展。根据2008年国内的一份杂志所做的调查,嵌入式系统所采用的处理器架构中,ARM占63%,MIPS、PowerPC、x86各占8%左右。ARM公司的资料显示,自从公司成立以来ARM技术被200多家半导体厂商采用,现在每秒至少生产90个芯片,已生产出几百亿枚芯片。

经过20多年的发展,ARM公司开发出应用于不同领域的多款处理器,目前使用的包括ARM7、ARM9、ARM9E、ARM10、ARM11和Cortex系列。Cortex处理器基于ARMv7指令集体系结构,可用于企业应用、汽车系统、家庭网络和无线技术等不同的市场领域。Cortex系列处理器以一个标准的架构满足了不同市场领域中各种技术的不同性能需求。ARMv7架构的Cortex系列处理器拥有三个分工明确的分支系列:A系列面向复杂的高端应用程序,用于运行开放式的复杂操作系统;R系列针对实时系统;M系列为成本控制和微处理器应用提供优化。Cortex-M3处理器是基于ARMv7 M架构的第一款ARM处理器,可以在对功能和成本敏感的嵌入式应用(如微控制器、汽车车身系统、工业控制系统及无线网络)中实现较高的系统性能,从而大大简化了可编程性,使ARM架构成为各种应用方案(即使是最简单的方案)的上佳选择。

2:了解STM32

  • 15
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值