锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

【Embedded System】嵌入式系统

时间:2023-12-15 20:37:02 mmc集成电路

??ARM Embedded System,欢迎关注我Gitee

文章目录

  • ??概念
  • ??嵌入式计算机系统的特点
    • ??嵌入式系统的特点
  • ??组成结构
    • ??嵌入式微处理器
    • ??存储器
    • ??和I/O接口
    • ??中间层
    • ??软件层
    • ??功能层
    • ??嵌入式处理器
      • ??嵌入式微处理器
      • ??嵌入式微控制器
      • ??嵌入式DSP处理器
      • ??SOC(System on Chip)片上系统
  • ??典型的嵌入式操作系统
    • ??Linux
    • ??μC/OS
    • ??Windows CE
    • ??VxWorks
    • ??QNK
    • ??IOS
    • ??Android
  • ??应用
    • ??电子消费领域
    • ??通信网络领域
    • ??工业控制领域
    • ??机器人领域
    • ??交通管理和汽车电子领域
    • ??国防和航空航天领域
  • ??嵌入式系统的发展趋势
  • ??开发流程
    • ??嵌入式系统设计的主要步骤
    • ??开发考虑要素
  • ??扩展-Arduino

??概念

??嵌入式系统是指以应用为中心,以计算机技术为基础,可切割软硬件,满足应用系统对功能、可靠性、成本、体积和功耗的严格要求的专用计算机系统。
??它包括硬件和软件。硬件包括处理器/微处理器、存储器和外设器件I/O端口、图形控制器等。软件包括操作系统软件(OS)(需要实时和多任务操作)和应用程序编程。
??有时设计师会将这两个软件结合在一起。应用程序控制系统的运行和行为,操作系统控制应用程序编程和硬件的交互。

??嵌入式计算机系统的特点

??嵌入式系统通常面向特定应用CPU,与通用型最大的区别是嵌入式CPU在为特定用户群设计的系统中,大部分工作都是实时性、安全性、可用性等具体要求的预定义任务。它通常具有功耗低、体积小、集成度高的特点CPU芯片内集成了板卡完成的许多任务,有利于嵌入式系统设计的小型化,大大提高了移动能力,与网络的耦合越来越紧密
??嵌入式系统的硬件和软件必须高效设计,量身定做,消除冗余,努力在同一硅片区域实现更高的性能,以便在具体应用中更具竞争力地选择处理器。由于嵌入式系统通常需要大规模生产,单个成本可以随着产量的增加而节省数百个。
??嵌入式系统与特定应用程序有机结合,其升级也与特定产品同步。因此,一旦嵌入式系统产品进入市场,生命周期就会很长。
??嵌入式系统中的软件通常固化在存储芯片或单片机本身,而不是存储在磁盘等载体中,以提高执行速度和系统可靠性。
??嵌入式系统本身没有自我开发能力。即使在设计完成后,用户通常也无法修改程序功能。开发必须有一套开发工具和环境。

??嵌入式系统的特点

??专用软硬件可切割配置。从嵌入式系统的定义可以看出,嵌入式系统是面向应用的,与一般系统最大的区别在于嵌入式系统具有一致的功能。根据这一特点,嵌入式系统的软硬件可以根据需要精心设计、定制和消除冗余,以实现低成本、高性能。因此,嵌入式系统使用各种微处理器和外围设备,系统不是通用的。
??低功耗、高可靠性、高稳定性。嵌入式系统主要用于特定场合,要么环境条件恶劣,要么长期连续运行。因此,嵌入式系统应具有高可靠性、高稳定性、低功耗等性能。
??软件代码短小精悍。由于成本和应用场合的特殊性,嵌入式系统的硬件资源(如内存等)通常较少,因此对嵌入式系统的设计提出了较高的要求。嵌入式系统的软件设计特别需要高质量,以实现高可靠性和高性能的系统。虽然随着硬件技术的发展和成本的降低,嵌入式操作系统也开始用于高端嵌入式产品,但其和PC资源仍然很差,所以嵌入式系统的软件代码仍然需要占用尽可能少的资源,以确保产品的成本性能,使其具有更强的竞争力。
??代码可以固化。嵌入式系统中的软件通常固化在存储芯片或单片机本身,而不是存储在磁盘中,以提高执行速度和系统可靠性。
??实时。许多嵌入式系统的应用程序都有实时要求,因此大多数嵌入式系统都使用实时系统。但需要注意的是,嵌入式系统并不等于实时系统。
??弱交互性。嵌入式系统不仅功能强大,而且使用灵活方便,一般不需要类似的
键盘、鼠标等,人机交互主要简单方便。

??组成结构

??嵌入式系统的核心计算系统可以抽象出硬件层、中间层、软件层和功能层的典型组成模型
在这里插入图片描述

??嵌入式微处理器

??嵌入式微处理器是嵌入式系统硬件层的核心CPU最大的区别在于,嵌入式微处理器大多工作在为特定用户群设计的系统中,这将是通用的CPU芯片内部集成了许多由板卡完成的任务,有利于嵌入式系统在设计上趋于小型化,同时也具有很高的效率和可靠性。
??可采用嵌入式微处理器的系统结构·诺依曼系统或哈佛系统结构;精简指令系统可用于指令系统(Reduced Instruction Set Computer,RISC)和复杂指令系统(Complex Instruction Set Computer,CISC)
??嵌入式微处理器有不同的系统,即使在同一系统中,也可能有不同的时钟频率和数据总线宽度,或集成不同的外设和接口。据不完全统计,全球嵌入式微处理器已超过1 有30多个系列,包括主流系统ARM、MIPS、PowerPC、X86、SH等。但与全球PC市场不同的是,没有一种嵌入式微处理器可以主导市场,仅以32位的产品而言,就有100种以上的嵌入式微处理器。嵌入式微处理器的选择取决于具体应用

??存储器

??嵌入式系统需要存储器来存储和执行代码。嵌入式系统的存储器包括Cache、主存和辅助存储器
??Cache它是一个容量小、速度快的存储阵列,位于主存储器和嵌入式微处理器的核心之间,存储最近使用最多的程序代码和数据。当需要读取数据时,微处理器尽可能多地从Cache读取数据而不是主存,大大提高了系统的性能,提高了微处理器与主存之间的数据传输速率
??主存储器:主存储器是嵌入式微处理器可以直接访问的存储器,用于存储系统和用户的程序和数据。它可以位于微处理器的内部或外部,容量为256KB~1GB,根据具体应用,一般片内存储容量小,速度快,片外存储容量大
??主存储器常用于以下几种:
??- ROM类NOR Flash、EPROM、PROM等;
?? - RAM类SRAM、DRAM、SDRAM等。
??其中,NOR Flash 嵌入式领域广泛应用于可擦写次数多、存储速度快、存储容量大、价格低廉等优点。
??辅助存储器:辅助存储器用于存储大数据量的程序代码或信息,容量大,但读取速度远慢于主存储器,用于长期保存用户信息。
??嵌入式系统中常用的外部硬盘,NAND Flash、CF卡、MMC、SD卡等

??和I/O接口

??嵌入式系统和外部交互需要一定形式的通用设备接口,如A/D、D/A、I/O等,外设通过和片外其他设备的或传感器的连接来实现微处理器的输入/输出功能。每个外设通常都只有单一的功能,它可以在芯片外也可以内置芯片中。外设的种类很多,可从一个简单的串行通信设备到非常复杂的802.11无线设备

??中间层

??硬件层和软件层是中间层,也称为硬件抽象层(Hardware Abstract Layer,HAL)或板级支持包(Board Support Package,BSP),将系统的上层软件与底层硬件分开,使系统的底层驱动程序与硬件无关,上层软件开发人员不必关心底层硬件的具体情况,根据BSP 开发层提供的界面。该层一般包括硬件设备的初始化、数据输入/输出操作和配置功能
??BSP具有以下两个特点
??- 硬件相关性:由于嵌入式实时系统的硬件环境具有应用相关性,实时系统的硬件环境具有应用相关性,BSP为操作系统提供操作和控制特定硬件的方法
??- 操作系统相关性:同的操作系统具有各自的软件层次结构,因此,不同的操作系统具有特定的硬件接口形式

💦软件层

  软件层由实时多任务操作系统(Real-time Operation System,RTOS)、文件系统、图形用户接口(Graphic User Interface,GUI)、网络系统及通用组件模块组成。RTOS是嵌入式应用软件的基础和开发平台
  嵌入式操作系统(Embedded Operation System,EOS)是一种用途广泛的系统软件,过去它主要应用与工业控制和国防系统领域。EOS负责嵌入系统的全部软、硬件资源的分配、任务调度,控制、协调并发活动。它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。
  嵌入式文件系统比较简单,主要提供文件存储、检索、更新等功能,一般不提供保护、加密等安全机制。它以系统调用和命令方式提供文件的各种操作,主要有设置、修改对文件和目录的存取权限。提供建立、修改、改变和删除目录等服务。提供创建、打开、读写、关闭和撤销文件等服务。
  图形用户接口(GUI)的广泛应用是当今计算机发展的重大成就之一,它极大地方便了非专业用户的使用,人们从此不再需要死记硬背大量的命令,取而代之的是可用通过窗口、菜单、按键等方式来方便地进行操作。而嵌入式GUI具有下面几个方面的基本要求:轻型、占用资源少、高性能、高可靠性、便于移植、可配置等特点

💦功能层

  功能层也称为应用软件层,应用软件是由基于实时系统开发的应用程序组成,运行在嵌入式操作系统之上,一般情况下与操作系统是分开的。应用软件用来实现对被控对象的控制功能。功能层是要面对被控对象和用户,为方便用户操作,往往需要提供一个友好的人机界面

💦嵌入式处理器

  嵌入式处理器是嵌入式系统的核心,是控制、辅助系统运行的硬件单元。其产品范围极其广阔,从最初的4位处理器、目前仍在大规模应用的8位单片机,到最新的受到广泛青睐的32位、64位嵌入式CPU
  目前,世界上具有嵌入式功能特点的处理器已经超过1000种,流行体系结构包括MCU、MPU等30多个系列。

💦嵌入式微处理器

  嵌入式微处理器(Micro Processor Unit,MPU)是由通用计算机中的CPU演变而来的。它的特征是具有32位以上的处理器,具有较高的性能,其价格也相应较高。但与计算机处理器不同的是,在实际嵌入式应用中,只保留和嵌入式应用紧密相关的功能硬件,去除其他的冗余功能部分,这样就以最低的功耗和资源实现嵌入式应用的特殊要求。
  嵌入式微处理器具有体积小、重量轻、成本低、可靠性高的优点。目前,主要的嵌入式处理器类型有Am186/88、386EX、SC-400、Power PC、68000、MIPS、ARM/StrongARM系列等

💦嵌入式微控制器

  嵌入式微控制器(Microcontroller Unit,MCU)的典型代表是单片机,从20世纪70年代末单片机出现到今天,虽然已经经过了20多年的历史,但这种8位的电子器件目前在嵌入式设备中仍然有着极其广泛的应用。
  单片机芯片内部集成ROM/EPROM、RAM、总线、总线逻辑、定时/计数器、看门狗、I/O、串行口、脉宽调制输出、A/D、D/A、Flash RAM、EEPROM等各种必要功能和外设,与嵌入式微处理器相比,微控制器的最大特点是单片化,体积大大减小,从而使功耗和成本下降、可靠性提高。微控制器是目前嵌入式系统工业的主流。

💦嵌入式DSP处理器

  嵌入式DSP处理器(Embedded Digital Signal Processor,EDSP)是专门用于信号处理方面的处理器,其在系统结构和指令算法方面进行了特殊设计,具有很高的编译效率和指令的执行速度。在数字滤波、FFT、谱分析等各种仪器上DSP获得了大规模的应用
  目前,最为广泛应用的是TI的TMS320C2000/C5000系列,另外如Intel的MCS-296和Siemens的TriCore也有各自的应用范围

💦SOC(System on Chip)片上系统

  SoC追求产品系统最大包容的集成器件,是目前嵌入式应用领域的热门话题之一。SoC最大的特点是成功实现了软硬件无缝结合,直接在处理器片内嵌入操作系统的代码模块。而且SoC具有极高的综合性,在一个硅片内部运用VHDL等硬件描述语言,实现一个复杂的系统

💦典型的嵌入式操作系统

  嵌入式操作系统(Embedded Operating System,EOS)是一种用途广泛的系统软件,过去它主要应用于工业控制和国防系统领域。EOS负责嵌入系统的全部软、硬件资源的分配、调度工作,控制协调并发活动;它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能
  EOS是相对于一般操作系统而言的,它除具备了一般操作系统最基本的功能,如任务调度、同步机制、中断处理、文件功能等外,还具有以下特点:
  - 可装卸性、开放性、可伸缩性的体系结构
  - 强实时性,可用于各种设备控制当中
  - 统一的接口,提供各种设备驱动接入
  - 操作方便、简单,提供友好的图形用户界面
  - 提供强大的网络功能,支持TCP/IP及其他协议,提供TCP/UDP/IP/PPP支持及统一的MAC访问层接口,为各种移动计算设备预留接口
  - 强稳定性,弱交互性。嵌入式系统一旦开始运行就不需要用户过多地干预,这就要负责系统管理的EOS具有较强的稳定性。嵌入式操作系统的用户接口一般不提供操作命令,它通过系统调用命令向用户程序提供服务
  - 固化代码。在嵌入系统中,嵌入式操作系统和应用软件被固化在嵌入式系统计算机的ROM中。辅助存储器在嵌入式系统中很少使用,因此,嵌入式操作系统的文件管理功能应该能够很容易地拆卸,而用各种内存文件系统
更好的硬件适应性,也就是良好的移植性

💦Linux

  在所有的操作系统中,Linux是发展最快、应用最广泛的系统之一。Linux本身的种种特性使其成为嵌入式开发的首选。在进入市场的前两年中,嵌入式Linux的设计通过广泛应用而获得巨大的成功。
  随着嵌入式Linux技术的成熟,以其按应用要求可定制系统、支持多数硬件平台等特性,已由早期的试用阶段迈进到逐渐成为嵌入式市场的主流。
  根据IDC的报告,Linux已经成为全球第二大操作系统。Linux发展如此之快的另一个主要原因是产品的成本。在激烈的市场竞争中,只拥有先进的技术是远远不够的,如何减少产品的投入也是需要重点考虑的问题。免费的Linux为厂商节约了一大笔开支,特别是对于经济实力不强的公司来说。目前 Linux 内核的最新版本已经达到4.9.xx

💦μC/OS

  μC/OS是一个典型的实时操作系统。该系统从1992年开始发展,目前流行的是第二个版本,即μC/OSⅡ。
其特点可以概括为以下几个方面:公开源代码,代码结构清晰、明了,注释详细,组织有条理,可移植性好,可裁剪,可固化,内核属于抢占式,最多可以管理64个任务。
  该系统短小精悍,是研究和学习实时操作系统的首选

💦Windows CE

  Windows CE是Microsft公司的产品,是从整体上为有限资源的平台设计的多线程、完整优先权、多任务的操作系统。
  Windows CE采用模块化设计,并对于从掌上电脑到专用的工控电子设备进行定制。此操作系统的基本内核需要至少200KB ROM存储器。从游戏机到现在大部分的掌上电脑都采用了Windows CE作为操作系统,其缺点是系统软件价格过高,影响整个产品的成本控制

💦VxWorks

  VxWorks是WindRiver(风河)公司专门为实时嵌入式系统设计开发的操作系统软件,为程序员开发提供了高效的实时任务调度、中断管理、实时的系统资源以及实时的任务间通信。应用程序员可以将尽可能多的精力放在应用程序本身,而不必再去关心系统资源的管理。
  该系统主要应用在单板机、数据网络(以太网交换机、路由器)、通信等多方面。该公司据已为Intel所收购

💦QNK

  QNX是一款实时操作系统,由加拿大 QNX 软件系统有限公司开发,广泛应用于自动化、控制、机器人科学、电信、数据通信、航空航天、计算机网络系统、医疗仪器设备、交通运输、安全防卫系统、POS机、零售机等任务关键型应用领域。20世纪90年代后期,QNX系统在高速增长的Internet终端设备、信息家电、掌上电脑等领域也得到了广泛应用

💦IOS

  iOS是由苹果公司为iPhone开发的操作系统。它主要是给iPhone、iPod Touch以及iPad使用。就像其基于的Mac OS X操作系统一样,它也是以Darwin为基础的。原本这个系统名为iPhone OS,直到2010年6月7日WWDC大会上宣布改名为iOS
  iOS的系统架构分为4个层次:核心操作系统层(the Core OS layer),核心服务层(the Core Services layer),媒体层(the Media layer)、可轻触层(the Cocoa Touch layer)。

💦Android

  Android是Google开发的基于Linux平台的开源手机操作系统。它包括操作系统、用户界面和应用程序—移动电话工作所需的全部软件,而且不存在任何以往阻碍移动产业创新的专有权障碍。
  Google与开放手机联盟合作开发了Android,这个联盟由包括中国移动、摩托罗拉、高通、宏达电和T-Mobile在内的30多家技术和无线应用的领军企业组成。
  Google通过与运营商、设备制造商、开发商和其他有关各方结成深层次的合作伙伴关系,希望借助建立标准化、开放式的移动电话软件平台,在移动产业内形成一个开放式的生态系统

💦应用

💦消费电子领域

💦通信网络领域

💦工业控制领域

  基于嵌入式芯片的工业自动化设备将获得长足的发展,目前已经有大量的8位、16位、32位嵌入式微控制器在应用中,网络化是提高生产效率和产品质量、减少人力资源主要途径,如工业过程控制、数字机床、电力系统、电网安全、电网设备监测、石油化工系统。就传统的工业控制产品而言,低端型采用的往往是8位单片机。但是随着技术的发展,32位、64位的处理器逐渐成为工业控制设备的核心,在未来几年内必将获得长足的发展

💦机器人领域

💦交通管理与汽车电子领域

💦国防和航空航天领域

💦嵌入式系统的发展趋势

  • 小型化、智能化、网络化、可视化
  • 多核技术的应用
  • 低功耗(节能)、绿色环保
  • 云计算、可重构、虚拟化等技术被进一步应用到嵌入式系统中
  • 嵌入式软件开发平台化、标准化、系统可升级,代码可复用将更受重视
  • 嵌入式系统软件将逐渐PC化
  • 融合趋势
  • 安全性

💦开发流程

💦嵌入式系统设计的主要步骤

  以自顶向下的角度来看,系统设计从系统需求分析开始;第二步是规格说明,在这一步我们对需设计的系统功能进行更细致地描述,这些描述并不涉及系统的组成;第三步是系统结构设计,在这一阶段以大的构件为单位设计系统内部详细构造,明确软、硬件功能的划分;第四步是构件设计,它包括系统程序模块设计、专用硬件芯片选择及硬件电路设计;第五步是系统集成,在完成了所有构件设计的基础上进行系统集成,构造出所需的完整系统。

💦开发考虑要素

  在嵌入式系统设计开发时必须考虑以下因素:

  • 功能可靠实用、便于升级
  • 实时并发处理,及时响应
  • 体积符合要求,结构紧凑
  • 接口符合规范,易于操作
  • 配置精简稳定,维护便利
  • 功耗管理严格,成本低廉

💦扩展-Arduino

  Arduino 是一款便捷灵活、方便上手的开源电子原型平台,包含硬件(各种型号的arduino板)和软件(arduino IDE)。它适用于艺术家、设计师、爱好者和对于“互动”有兴趣的朋友们。
  Arduino,是一个基于开放原始码的软硬件平台,构建于开放原始码simple I/O介面版,并且具有使用类似Java,C语言的Processing/Wiring开发环境。

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章