1.嵌入式的定义

如何理解嵌入式?我们做的哪些工作可以理解为嵌入式的工作?
嵌入式即嵌入式系统,IEEE(美国电气和电子工程师协会)对其定义是用于控制、监视或者辅助操作机器和设备的装置,是一种专用的计算机系统;国内普遍认同的嵌入式系统定义是以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统;从应用对象上加以定义来说,嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。嵌入式系统作为装置或设备的一部分,它是一个控制程序存储在ROM中的嵌入式处理器控制板。事实上,所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使用嵌入式系统,有些嵌入式系统还包含操作系统,但大多数嵌入式系统都是由单个程序实现整个控制逻辑。

2.嵌入式系统发展的4个阶段:

嵌入式系统发展:分为四个阶段1)单片微型计算机(SCM)阶段,即单片机时代:系统功能由汇编语言实现。这一时代系统硬件:单片机。软件:无操作系统。主要特点:系统结构相对单一,处理效率低,存储容量十分有限,几乎无用户接口。2)微控制器(MUC)阶段,:主要技术方向:不断扩展对象系统要求的各种外围电路和接口电路,突显其对象的智能化控制能力这一阶段基础:嵌入式微处理器。这一阶段核心:简单操作系统。主要特点:硬件使用嵌入式微处理器,微处理器的种类繁多,通用性弱;系统开销小,效率较高。3)片上系统(SOC):主要特点:嵌入式系统能够运行于各种不同的微处理器上,兼容性好,操作系统的内核小,效果好。4)internet为标志的嵌入式系统:嵌入式网络化主要表现:一方面是嵌入式处理器集成了网络接口另一方面是嵌入式设备应用于网络环境中。

**

3.嵌入式系统的组成

一、硬件层中包含1.嵌入式微处理器
2.存储器(SDRAM、ROM、Flash等)
3.通用设备接口和I/O接口(A/D、D/A、I/O等)

在一片嵌入式处理器基础上添加电源电路、时钟电路和存储器电路,就构成了一个嵌入式核心控制模块。也就是我们所说的单片机,其中操作系统和应用程序都可以固化在ROM中。
(1)嵌入式微处理器:硬件层的核心
嵌入式系统硬件层的核心是嵌入式微处理器,嵌入式微处理器与通用CPU最大的不同在于嵌入式微处理器大多工作在为特定用户群所专用设计的系统中,它将通用CPU(例如51单片机)许多由板卡完成的任务集成在芯片内部,从而有利于嵌入式系统在设计时趋于小型化,同时还具有很高的效率和可靠性。这里可以理解为STM32单片机和51单片机的不同。
嵌入式微处理器的体系结构可以采用冯·诺依曼体系哈佛体系结构;

1)冯诺依曼体系结构:也称普林斯顿结构,是一种将程序指令存储器和数据存储器 合并在一起 的存储器结构。取指令和取操作数都在同一总线上,通过分时复用的方式进行;缺点是在高速运行时,不能达到同时取指令和取操作数,从而形成了传输过程的瓶颈。由于程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,因此程序指令和数据的宽度相同,如英特尔公司的8086中央处理器的程序指令和数据都是16位宽。

指令系统可以选用精简指令系统(Reduced Instruction Set Computer,RISC)和复杂指令系统CISC(Complex Instruction Set Computer,CISC)。RISC计算机在通道中只包含最有用的指令,确保数据通道快速执行每一条指令,从而提高了执行效率并使CPU硬件结构设计变得更为简单。嵌入式微处理器有各种不同的体系,即使在同一体系中也可能具有不同的时钟频率和数据总线宽度,或集成了不同的外设和接口。据不完全统计,全世界嵌入式微处理器已经超过1000多种,**体系结构有30多个系列,其中主流的体系有ARM、MIPS、PowerPC、X86和SH等。**但与全球PC市场不同的是,没有一种嵌入式微处理器可以主导市场,仅以32位的产品而言,就有100种以上的嵌入式微处理器。嵌入式微处理器的选择是根据具体的应用而决定的。
(2)存储器:嵌入式系统需要存储器来存放和执行代码。
嵌入式系统的存储器包含Cache、主存和辅助存储器。
1、Cache
Cache是一种容量小、速度快的存储器阵列它位于主存和嵌入式微处理器内核之间,存放的是一段时间微处理器使用最多的程序代码和数据。在需要进行数据读取操作时,微处理器尽可能的从Cache中读取数据,而不是从主存中读取,这样就大大改善了系统的性能,提高了微处理器和主存之间的数据传输速率。Cache的主要目标就是:减小存储器(如主存和辅助存储器)给微处理器内核造成的存储器访问瓶颈,使处理速度更快,实时性更强。在嵌入式系统中Cache全部集成在嵌入式微处理器内,可分为数据Cache、指令Cache或混合Cache,Cache的大小依不同处理器而定。一般中高档的嵌入式微处理器才会把Cache集成进去。
2、主存
主存是嵌入式微处理器能直接访问的寄存器,用来存放系统和用户的程序及数据。它可以位于微处理器的内部或外部,其容量为256KB~1GB,根据具体的应用而定,一般片内存储器容量小,速度快,片外存储器容量大。常用作主存的存储器有:ROM类:NOR Flash、EPROM和PROM等。RAM类:SRAM、DRAM和SDRAM等。其中NOR Flash 凭借其可擦写次数多、存储速度快、存储容量大、价格便宜等优点,在嵌入式领域内得到了广泛应用。
3、辅助存储器
辅助存储器用来存放大数据量的程序代码或信息,它的容量大、但读取速度与主存相比就慢的很多,用来长期保存用户的信息。嵌入式系统中常用的外存有:硬盘、NAND Flash、CF卡、MMC和SD卡等。
(3)通用设备接口和I/O接口
嵌入式系统和外界交互需要一定形式的通用设备接口,如A/D、D/A、I/O等,外设通过和片外其他设备的或传感器的连接来实现微处理器的输入/输出功能。
每个外设通常都只有单一的功能,它可以在芯片外也可以内置芯片中。
嵌入式系统中常用的通用设备接口有A/D(模/数转换接口)、D/A(数/模转换接口),I/O接口有RS-232接口(串行通信接口)、Ethernet(以太网接口)、USB(通用串行总线接口)、音频接口、VGA视频输出接口、I2C(现场总线)、SPI(串行外围设备接口)和IrDA(红外线接口)等。

二、中间层:
硬件层与软件层之间为中间层,也称为硬件抽象层(Hardware Abstract Layer,HAL)或板级支持包(Board Support Package,BSP),它将系统上层软件与底层硬件分离开来,使系统的底层驱动程序与硬件无关,上层软件开发人员无需关心底层硬件的具体情况,根据BSP 层提供的接口即可进行开发。
该层一般包含相关底层硬件的初始化、数据的输入/输出操作和硬件设备的配置功能。
BSP具有以下两个特点:
1.硬件相关性:因为嵌入式实时系统的硬件环境具有应用相关性,而作为上层软 件与硬件平台之间的接口,BSP需要为操作系统提供操作和控制具体硬件的方法。
2.操作系统相关性:不同的操作系统具有各自的软件层次结构,因此,不同的操作系统具有特定的硬件接口形式。实际上,BSP是一个介于操作系统和底层硬件之间的软件层次,包括了系统中大部分与硬件联系紧密的软件模块。设计一个完整的BSP需要完成两部分工作:嵌入式系统的硬件初始化以及BSP功能,设计硬件相关的设备驱动。

三、系统软件层:
由实时多任务操作系统(Real-timeOperation System , RTOS)、文件系统、图形用户界面接口(Graphic User Interface , GUI)、网络系统及通用组件模块组成

一文了解什么是嵌入式?相关推荐

  1. python docx 提取图片_Python提取docx文档中所有嵌入式图片和浮动图片

    术语: 浮动图片,是指在Word文档中位置可以自由移动.可以环绕文字或放置于文字上方.下方的图片,不占文档流的位置,可以和文字或嵌入式图片重叠. 嵌入式图片或行内图片,和文档中的文字一样占文档流的位置 ...

  2. ARM Cortex-M嵌入式C基础编程(下)

    ARM Cortex-M嵌入式C基础编程(下) ARM Cortex-M Embedded C Fundamentals/Tutorial-Aviral Mittal Load Region Vs E ...

  3. 知乎热议:嵌入式开发中C++好用吗?

    点击上方"大鱼机器人",选择"置顶/星标公众号" 福利干货,第一时间送达! 1 观点一 先说结论: 嵌入式.单片机里面C++非常好使: C with class ...

  4. python docx 合并文档 图片_Python+pymupdf处理PDF文档案例6则

    推荐图书:<Python程序设计(第3版)>,(ISBN:978-7-302-55083-9),清华大学出版社,2020年6月第1次印刷,7月第2次印刷 京东购买链接:https://it ...

  5. Python使用标准库zipfile+re提取docx文档中超链接文本和链接地址

    推荐教材: <Python程序设计实用教程>,ISBN:978-7-5635-6065-3,董付国,北京邮电大学出版社 教材封面: 全国各地新华书店有售 京东购买链接: 配套资源:教学大纲 ...

  6. semiplannar 什么是_图像识别VPU——易用的嵌入式AI支持深度学习平台介绍

    公司玩了大半年的嵌入式AI平台,现在产品进入量产模式,也接触了很多嵌入式方案,有了一些心得体会,本人不才,在这里介绍一下一款简单易用的嵌入式AI方案--Movidius Myriad 2 VPU(MA ...

  7. 图像识别VPU——易用的嵌入式AI支持深度学习平台介绍

    公司玩了大半年的嵌入式AI平台,现在产品进入量产模式,也接触了很多嵌入式方案,有了一些心得体会,本人不才,在这里介绍一下一款简单易用的嵌入式AI方案--Movidius Myriad 2 VPU(MA ...

  8. python嵌入式开发实战_python在嵌入式

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 我最近在移植python到嵌入式linux上,但是总是有部分模块,比如socke ...

  9. QT: 基于QT和嵌入式的视频监控系统

    [摘 要]为了降低视频监控系统的成本,提高系统布防的简易性,使其具有较好的稳定性和实时性,利用QT 设计了一款基于嵌入式视频服务器的监控系统.系统采用三星公司的S3C2440 微处理器芯片为核心的AR ...

最新文章

  1. Debug的T命令在执行修改寄存器SS 的指令时,下一条指令也紧接着被执行。
  2. MySQL下备份和恢复简单介绍
  3. Redmine Feedback
  4. v7000更换电池步骤_v7000 gen1 电池更换问题
  5. apigw鉴权分析(1-2)腾讯开放平台 - 鉴权分析
  6. Python中datetime类错误
  7. POJ1063 Flip and Shift
  8. VScode前端开发常用插件
  9. python3_04.循环函数
  10. Data Visualization [--0]
  11. 【Python入门教程】第70篇 创建文本文件
  12. 通达信手机版分时图指标大全_今天教大家怎么把通达信副图指标源码导入手机通达信软件上。...
  13. DEA模型及matlab应用3:SBM-DEA 模型
  14. [精易软件开发工程师Leo学习笔记]011DeBug(调试)
  15. vue脚手架安装时出现Error EPERM operation not permitted这个错误
  16. java gef_GEF开发入门要点(个人经验)
  17. android高德轨迹纠偏,轨迹纠偏-服务-教程-地图 JS API | 高德地图API
  18. MySQL学习笔记数据库学习【二】
  19. 数据结构(C)必会知识点+易错点:数组和广义表(n维数组地址计算公式,特殊矩阵对称矩阵的存储,广义表的表示方法)
  20. python实现输入一个字符串,输出每个字符的ASCLL码形成的列表

热门文章

  1. 企业如何借助百度百家号进行网络推广?
  2. D5渲染器电脑硬件配置Vol.1——操作系统丨显卡
  3. flutter 可拖拽吸边的悬浮按钮,悬浮布局;
  4. Windows 2003安全设置大全----2003系统错误大全解释
  5. python交换数组中的两个元素_Python 交换数组元素
  6. 1024,祝所有程序员节日快乐
  7. Docker容器运行GUI程序的方法(直接进入Docker容器运行或通过SSH连接Docker容器运行)
  8. 将Visio另存为图形或图像文件
  9. Cloudreve离线下载Aria2安装教程
  10. 凸优化“傻瓜”教程-----凸优化基础知识