什么是嵌入式系统?


嵌入式系统是一个计算机系统 。在一个较大的机械或电气系统中具有专用功能 。通常具有实时计算约束 。作为一个完整的设备的一部分被嵌入 。通常包括硬件和机械部件 。嵌入式系统控制着今天常用的许多设备 。98%的微处理器都是作为嵌入式系统的组件制造的 。
典型的嵌入式计算机与通用相对应的计算机属性的例子是低功耗 。小尺寸 。稳定的操作范围和低单位成本 。这是以有限的处理资源为代价的 。这使得编程和交互更加困难 。然而 。通过在硬件之上构建智能机制 。利用可能存在的传感器和嵌入式单元网络的存在 。既可以优化管理单元和网络级别的可用资源 。又可以提供增强的功能 。远远超越那些可用 。例如 。可以设计智能技术来管理嵌入式系统的功耗 。数字信号处理器(DSP)是一种常见的标准专用处理器 。
由于嵌入式系统专用于特定任务 。设计工程师可以对其进行优化 。以减少产品的尺寸和成本 。并提高可靠性和性能 。一些嵌入式系统是大规模生产的 。受益于规模经济 。
嵌入式系统的范围从便携式设备(如数字手表和MP3播放器)到大型固定安装(如交通信号灯 。工厂控制器以及复杂系统 。如混合动力车辆 。MRI和航空电子设备) 。复杂性从单个微控制器芯片的低端到具有多个单元的高端设备 。外围设备和网络安装在大型机箱或机箱内 。
了解更多硅谷前沿深度讯息请看 硅发布 微信公众号
其他观点:
【什么是嵌入式系统?】所谓嵌入式系统 。指的是为特定应用而设计的专用计算机系统 。嵌入式系统由硬件+软件构成 。我们分别从硬件和软件这两个方面来讲述 。
一、我们来看硬件部分:
我们都有使用个人桌面电脑的经历 。而个人电脑系统属于通用计算机系统 。那嵌入式系统跟通用系统在硬件设计上有什么区别呢?
1. 通用计算机系统
这里所讲的通用计算机系统 。主要指的是intel x86系统 。这种系统基本由intel cpu + 南北桥芯片组成 。cpu通过南桥连接到低速外设 。比如:实时时钟、usb、以太网、wifi、蓝牙等;通过北桥连接到高速外设 。比如:内存 。显卡等 。

什么是嵌入式系统?

文章插图
这样设计的通用系统性能非常强大 。比如 。我们可以在个人电脑上办公、运行大型软件、玩游戏、运行photoshop等 。
我们在使用个人PC的时候也从来不关注能耗的问题 。反正我们玩电脑都要插电源的 。
以上是通用系统(以个人电脑为例)的硬件架构和使用场景 。
2. 嵌入式系统
跟通用计算机系统不同 。嵌入式系统使用所谓的soc实现硬件的最大集成 。具体来讲就是把cpu和外设都封装在同一个芯片上 。也叫soc 。或者叫片上系统 。
什么是嵌入式系统?

文章插图
这样设计有什么好处呢?最大的好处就是减小系统尺寸、节能省电 。
尺寸问题好理解 。因为很多嵌入式设备是手持的 。甚至是可穿戴的 。
为什么要考虑节能省电的问题呢?因为嵌入式系统一般都无法做到像个人pc一样持续供电 。举个例子:大疆的无人机 。就是一个典型的嵌入式系统 。你能想象让它拖着一根电源线上天吗?显然不可能 。所以 。无人机系统必须要考虑电能的供给和消耗的问题 。供给靠电池 。消耗就是系统的事情了 。所以低功耗的硬件才能工作更长的时间 。而只有嵌入式专用系统才能做到低功耗 。能耗和性能是嵌入式系统设计者需要不断优化和改善的两个指标 。
另外有些外设和接口也是传统的通用系统所不支持的 。所以就需要嵌入式系统来做定制了 。
二、再来看软件部分:
嵌入式系统一般采用linux系统(也有wince 。vxworks 。ucos等) 。开发语言一般用c语言 。因为c语言的效率高、性能优 。这样可以最大程度的节省能耗、提升性能 。我们在PC上做开发的时候可以选择java 。c#等开发语言 。这些语言在开发上给我们提供了很大的便利性 。但是代码的执行效率并不高 。但是 。在嵌入式系统上开发应用软件需要考虑的最大的因素就是性能 。所以最佳的开发语言是c语言 。这也是嵌入式系统和通用系统在软件开发上的的差异 。
以上 。我从硬件和软件这两个方面解释了什么是嵌入式系统 。希望对你有所帮助!
其他观点:
什么是嵌入式系统?

文章插图
嵌入式分为嵌入式硬件和嵌入式软件 。所谓嵌入式 。就是指软件在特定的嵌入式硬件开发完成后 。最后被固化在此硬件平台中 。当硬件启动后 。自动执行软件 。完成特定的功能 。

推荐阅读