嵌入式体系无处不在。与您进行交互的几乎一切电气设备都比简略的电灯开关杂乱,它包含一个数字处理器,该数字处理器从其环境中读取输入数据,履行核算算法,并生成与环境进行交互的某种输出。
从早上睁开眼睛(响应数字设备宣布的警报)到刷牙(运用包含数字处理器的电动牙刷)到烤面包圈(在电烤箱中),要禁用您的(数字)家庭报警体系,您需求与嵌入式设备进行交互。整天,您都向许多其他设备(例如电视遥控器,交通讯号灯和铁路道口)供给输入并从中接纳输出。高度数字化的运输体系,包含轿车,飞机和客运渡轮,每个体系都包含数十个(即使不是数百个)嵌入式处理器,用于管理传动体系的运转,监督安全功用,坚持舒适的气候并为所载人员供给文娱。
让咱们花一点时刻弄清有时含糊的分隔线,该分隔线将嵌入式体系与通用核算设备差异开。界说嵌入式核算体系的特点是设备中数字处理的集成,该设备具有除单纯的核算之外的更大用途。不包含任何类型的数字处理的设备不是嵌入式体系。例如,仅包含电池和由开关操控的电动机的电动牙刷不是嵌入式体系。包含微操控器的牙刷是嵌入式体系,当您在刷牙时用力向下按时,该微操控器会亮起红灯。
台式核算机虽然可以履行许多任务,并且可以经过增加各种外围设备来增强功用,但它仅仅一台核算机。另一方面,轿车的主要目的是运送乘客。在履行此功用时,它依赖于包含嵌入式处理的各种子体系。轿车是嵌入式体系。个人核算机不是。
智能手机更难明晰地分类。当用作电话时,它明显在履行与嵌入式体系界说一致的功用。可是,将其用作Web浏览器时,它更类似于小型通用核算机。明显,并非总是可以确定一个设备是否是嵌入式体系。
了解通用核算机与嵌入式设备比较在操作环境方面的差异是有帮忙的。个人核算机往往在气候受控的室内环境中运转效果最佳。诸如轿车中的嵌入式设备经常露出于更加恶劣的条件下,包含雨,雪,风,灰尘和热的各种影响。
很大一部分嵌入式设备短少任何类型的有源冷却体系(这在个人核算机中是规范的),因而有必要采纳步骤以保证其内部组件在不受外部条件影响的情况下仍坚持安全的作业温度。
嵌入式体系,无论是相对简略的设备还是高度杂乱的体系,一般都由多种元素组成,咱们现在将对其进行评论。
能量源
一切电子数字设备都需求某种电源。最常见的是,嵌入式体系由市电或电池供电,或由设备在其间运转的主机体系供给的电源供电。例如,包含处理器和CAN总线通讯接口的轿车尾灯组件由轿车电气体系供给的12伏直流电(DC)供电。
还可以经过与太阳能电池板衔接的可充电电池为嵌入式设备供电,然后使该设备在夜间和阴天乃至从环境中搜集能量就可以持续运转。主动上弦手表运用从手臂运动中搜集到的能量来产生机械或电能。对安全性和安全性至关重要的嵌入式体系一般运用市电作为主要电源,同时供给电池作为备用电源,以便在停电期间进行操作。
时基
嵌入式体系一般需求一些方法来盯梢短期(对于微秒和毫秒的持续时刻)和长时刻的时刻(也称为挂钟时刻)的进度,以盯梢日期和时刻。最常见的是,运用产生几兆赫兹输出频率的晶体振荡器或微机电体系(MEMS)振荡器生成一次体系时钟信号。晶体振荡器放大一般由石英制成的物理晶体的谐振,然后运用压电效应产生方波电信号。MEMS振荡器包含一个振荡的机械结构,该结构经过静电传导产生电输出。
一旦设置为正确的时刻,由晶体振荡器或MEMS振荡器驱动的时钟将表现出微小的频率差错(一般为百万分之一1-100),这些差错会在几天和几周的时刻内累积,逐步偏移几秒钟,然后逐步偏移几分钟违背正确的时刻。为了缓解此问题,大多数与Internet衔接的嵌入式设备都会定时访问时刻服务器,以将其内部时钟重置为当时时刻。
数字处理
根据界说,嵌入式核算体系包含某种方法的数字处理器。处理功用一般由微操控器,微处理器或片上体系(SoC)供给。微操控器是一种高度集成的设备,包含一个或多个中心处理器(CPU),随机存取存储器(RAM),只读存储器(ROM)和各种外围设备。微处理器包含一个或多个CPU,但与微操控器比较,集成到同一设备中的全体体系功用要少得多,后者一般依赖于RAM,ROM和外围接口的外部电路。
SoC的集成度乃至比微操控器更高,一般将一个或多个微操控器与其他数字硬件资源组合在一起,这些数字硬件资源被配置为高速履行特别功用。SoC规划可以在将传统微操控器与定制的高性能数字逻辑相结合的体系结构中完成为现场可编程门阵列(FPGA)器材。
回忆
嵌入式体系一般包含用于作业内存的RAM以及某种类型的ROM(一般是闪存),用于存储可履行程序代码和其他所需信息,例如静态数据库。每种类型的内存的数量有必要足以满意嵌入式体系体系结构在其方案的生命周期内的需求。假如该设备旨在支撑固件升级,则有必要在硬件规划中供给足够的内存资源,以支撑在整个体系生命周期中或许呈现的一系列功用增强。
软件和固件
在传统的核算环境中,用户运用的可履行代码(例如Web浏览器和电子邮件程序)称为软件。该术语用于差异程序代码和构成核算机体系物理组件的硬件。在通用核算机中,该软件以文件方法存储在磁盘驱动器上。在嵌入式体系中,可履行代码一般存储在ROM中,ROM是设备内的硬件组件。由于这种组织,咱们可以以为代码占有了硬件和软件之间的中间地带。此中间部分称为固件。在嵌入式体系的早期,代码经常被烧入存储设备中,在进行初始编程后便无法更改。与大多数当时出产的嵌入式设备(一般包含可重写闪存)比较,这些设备更像硬件(因而更“坚固”)。可是,咱们持续运用固件一词来描述编程到嵌入式体系中的代码。
专用电路
嵌入式体系支撑各式各样的应用程序,其间一些是相对简略的进程,例如监督电视遥控器上的按钮按下并向电视产生相应的输出信号,而其他类型的体系则在高清环境下履行极端杂乱的处理密集型作业。数据速率输入信号。虽然简略的嵌入式体系或许可以运用微型微操控器履行一切必要的数字处理,但更杂乱的体系或许需求的处理资源超出了现成的微操控器以及更强壮的微处理器(例如,x86和ARM处理器。
在过去的几年中,这些更杂乱的嵌入式规划的架构师将转向专用集成电路(ASIC)来完成自界说电路,以便以恰当的体系操作所需的速度履行处理。ASIC是一种集成电路,其间包含旨在支撑特定应用的定制数字电路。ASIC设备的出产一般触及非常贵重的出产设置阶段,这使其在项目原型规划和小规模出产运转中无法运用。
幸运的是,ASIC供给的许多功用现在都可以在低本钱FPGA(现场可编程门阵列)设备中运用。由于FPGA易于重新编程,因而一般用于嵌入式体系原型规划和小批量出产。对于大批量出产(成千上万个单位),ASIC较低的每单位本钱可以使出产设置本钱值得。
来自环境的投入
嵌入式体系一般需求来自其环境的输入,无论是来自操作用户界面的人员还是来自丈量其所在体系某些方面的传感器。例如,电动车辆动力总成操控器将盯梢车辆状况的各个方面,例如电池电压,电动机电流,车辆速度和加速踏板的方位。体系架构有必要供给硬件外围设备,以必要的精度来丈量每个传感器的输入。整个体系有必要可以以正常车辆操作所需的速率从一切传感器履行丈量。
输出到环境
除了从环境中读取输入外,嵌入式体系一般还会产生一个或多个输出,供操作员或主机体系运用。持续以电动轿车为例,动力总成操控器运用油门踏板方位以及其他输入来核算对驱动马达操控器的指令,该指令可调整动力总成的扭矩输出。除了直接支撑体系操作外,嵌入式操控器一般还供给供人类运用的输出,例如在仪表板上显现车速。有必要以足以支撑恰当的体系操作(包含人类感知的需求)的速率更新每个输出。在完成人机界面时,
网络通讯
虽然许多简略的嵌入式体系以彻底独立的方法运转,在阻隔的上下文中读取其输入,核算输出并更新输出设备,但越来越多的嵌入式体系规划支撑某种方法的网络通讯。此功用启用了设备功用,例如来自家用视频门铃的远程告诉以及对工厂车间机械的连续监控。
经过始终可用的网络通讯功用增强嵌入式体系可以增加很多的功用。可是,假如开发人员不注意体系体系结构中的安全性,则此功用还存在或许被歹意行为者运用的安全风险。重要的是要了解和处理由于嵌入式体系体系结构中包含通讯功用而带来的安全风险。
嵌入式体系架构师将这些元素结合在一起,以生成可以在预期环境条件的整个范围内以恰当的安全裕度履行其预期功用的体系规划。
适宜的体系规划可满意其他要求,例如尺寸和重量约束以及功耗约束,并将出产本钱坚持在可接受的水平。嵌入式体系的可用规划空间在很大程度上取决于以下特点:要出产的单元数量,体系的安全关键方面以及在恶劣条件下运转的需求。
包含耐久通讯功用的嵌入式体系体系结构有必要处理规划空间的另一个方面,触及单个设备与集中式节点(一般是经过Internet访问的服务器)之间的通讯以及用户与嵌入式体系之间的交互。
具有网络衔接性的小型嵌入式体系的广泛布置引入了物联网(IoT)一词。下一节将评论物联网与嵌入式体系架构的相关性。
物联网
从概念上讲,物联网代表着经过大规模网络通讯来最大极限地运用很多不同的嵌入式设备的尽力。IoT设备与普通的嵌入式体系的差异在于,每个设备与一个或多个中心节点之间都存在通讯途径。这些节点从设备的海洋中搜集数据,并且在许多情况下,答应授权用户向单个设备和设备调集宣布指令。
在物联网设备开发进程中,尤其是在开发将可以访问灵敏个人信息的设备(例如家庭安全摄像机)时,负责任的嵌入式体系架构师有必要采纳广泛的措施以保证终端设备的安全性。IoT设备一般安装在顾客的家中,有必要最大程度地避免答应歹意行为者操控摄像头,麦克风或安全体系的安全漏洞。虽然体系规划人员无法避免最终用户或许犯下的每一个安全性过错,可是安全的体系规划可以经过采纳一些步骤来帮忙用户,例如辅导挑选强暗码以及抵御常见的进犯类型,例如蛮力进犯。暗码猜测。
物联网设备和体系的示例包含:
由窗户和门传感器以及运动传感器组成的家庭警报体系:这种类型的体系一般包含一个智能手机应用程序,可立即告诉警报事情。该体系不仅告诉警报公司发动对警报事情的响应,还告诉房主这些事情的产生。明显,这种警报体系有必要可以反抗使警报体系失效的网络进犯。
电灯和电源插座:供给基于Internet的监督和操控功用的许多不同的照明设备,包含灯泡,灯具和可以打开和封闭灯的电源板。与这些设备中的每一个相关联的应用程序都可以对单个照明进行远程操控,并可以全天调度照明的敞开和封闭时刻。与物联网警报体系一样,安全性是一项重要功用,有必要彻底集成到体系规划中。
智能扬声器:IoT扬声器供给语音界面,答应用户以自然语言宣布恳求。用户在指令前增加单词或词组以“唤醒”扬声器,例如“Alexa”或“HeyGoogle”,后跟指令或恳求。这些设备可以与各种其他物联网设备进行交互,包含警报体系和照明操控。语音指令的一个示例是“Alexa,开灯”。
医疗监督和医治:在医院和家庭环境中布置了许多类型的嵌入式设备,以监督患者健康状况,例如温度,血氧,心率,呼吸等。这些设备一般与集中式数据库进行通讯,以使医疗专业人员可以盯梢当时和前史的健康状况。其他数字体系履行主动医治功用,例如注入药物和帮忙呼吸。
工业应用:嵌入式体系广泛用于工厂线,动力发电体系,动力传输体系以及石油和天然气行业中,以监督和操控杂乱的体系和进程。例如,需求各式各样的传感器和履行器来履行对或许长达数千英里的输油管道的运转情况的实时监督和管理。