控制/MCU
工业4.0快速发展,ARM处理器的应用也越来越广泛,是什么让ARM处理器在工业领域分掉X86的那杯羹呢?
从51单片机到ARM处理器,嵌入式微控制领域不断更替交叠,伴随而来的是技术的不断发展和生产力水平的不断提高。
目前在工业控制系统中大量应用了嵌入式ARM,如工业过程控制、电力系统、石油化工、数控机床等,ARM嵌入式系统的发展促进了工业控制自动化程度的提高。
图 1 ARM的广泛应用
多方业内人士表示,ARM会是趋势,未来嵌入式市场可能会形成中高端会是X86主导,低端由ARM的产品蚕食的双雄格局。
但你知道ARM和X86架构是什么吗,有什么区别,你能清楚的表述出吗?
大学一本《微机原理和接口技术》教会了我们什么是CPU——中央控制器,它是一个执行部件,它之所以能执行,也是因为人们在里面制作了执行各种功能的硬件电路,然后再用一定的逻辑让它按照一定的顺序工作,这样就能完成人们给它的任务。
所以它主要由运算单元、控制单元、寄存单元三部分组成,从字面意思看运算单元就是起着运算的作用,控制单元就是负责发出CPU每条指令所需要的信息,寄存单元就是保存运算或者指令的一些临时文件,这样可以保证更高的速度。
图 2 CPU内部架构和工作原理
CPU的速度和功率效率是至关重要的。速度影响用户体验,而效率影响电池寿命。最完美的设备是高性能和低功耗相结合。
从CPU发明到现在,有多种架构,从最基本的逻辑角度来分类的话,它们可以被分为两大类,即“复杂指令集”与“精简指令集”系统,而X86和ARM处理器的第一个区别是,前者使用复杂指令集(CISC),而后者使用精简指令集(RISC)。
表 1 CISC与RISC对比表
网上有个有趣的例子来说明两者的不同。比如说我们要命令一个人吃饭,那么我们应该怎么命令呢?
我们可以直接对他下达“吃饭”的命令,也可以命令他“先拿勺子,然后舀起一勺饭,然后张嘴,然后送到嘴里,最后咽下去”。
从这里可以看到,对于命令别人做事这样一件事情,不同的人有不同的理解,有人认为,如果我首先给接受命令的人以足够的训练,让他掌握各种复杂技能(即在硬件中实现对应的复杂功能),那么以后就可以用非常简单的命令让他去做很复杂的事情——比如只要说一句“吃饭”,他就会吃饭。
但是也有人认为这样会让事情变的太复杂,毕竟接受命令的人要做的事情很复杂,如果你这时候想让他吃菜怎么办?难道继续训练他吃菜的方法?
我们为什么不可以把事情分为许多非常基本的步骤,这样只需要接受命令的人懂得很少的基本技能,就可以完成同样的工作,无非是下达命令的人稍微累一点——比如现在我要他吃菜,只需要把刚刚吃饭命令里的“舀起一勺饭”改成“舀起一勺菜”,问题就解决了,多么简单。
这就是“复杂指令集”和“精简指令集”的逻辑区别。
而作为ARM与X86在嵌入式市场对决的主战场,在工业4.0中哪个有更有优势呢?
图 3 (此图无题注)
1.运算性能:
lX86架构的工业电脑比ARM架构的工业电脑在性能方面要快,综合运算能力强,但由于不具有实时系统,无法做到快速零启动;
lARM的优势在于效率,在完成综合性工作处于劣势,而ARM可快速启动进入状态,在任务相对固定的工业应用场合其优势就能发挥得淋漓尽致。
2.操作系统兼容性:
l几乎所有X86硬件平台都可以直接使用微软的视窗系统及现在流行的几乎所有工具软件,所以X86系统在兼容性方面具有无可比拟的优势;
lARM几乎都采用Linux的操作系统,而且几乎所有的硬件系统都要单独构建自己的系统,与其他系统不能兼容,这也导致其应用软件不能方便移植,也制约了ARM的发展和应用;
3.系统安全性:
l这是由于Windows软件平台的高兼容性,软件病毒容易侵入,引起电脑蓝屏或者死机,危害系统数据安全;
l而linux系统作为开放源代码构架,用户可以找出自己系统所存在的安全问题,并采取相应的防范措施以应对潜在的安全威胁;
图 4 windows系统遭受勒索病毒
图 5 linux用户及时更新补丁
全部0条评论
快来发表一下你的评论吧 !