是的,嵌入式系统的本质,是一个计算机,一个经过裁剪的计算机。它和你桌面上的计算机有许多相同的地方,从Big picture来看,它都是由运算器,控制器,存储器和I/O系统构成。一般来说,与桌面通用计算机的区别也就在于I/O系统。
比如,一个基于ARM的家用路由器,运算器/控制器由ARM核心的CPU构成,存储器可能是一片SDRAM,而I/O系统相比于通用PC,少了硬盘、声卡、显卡等不必要的部分,而增加了几个以太网适配器。
而我们再看一款高端产品: http://www.juniper.net/in/en/pro ... ecurity/srx-series/
注意这个页面最下面的那个大盒子,它也是一个嵌入式系统,每秒钟可以处理100Gb以上的网络数据流量,对它进行网络安全的方面处理。由于现在没有任何一个单独的CPU具备这么强的处理能力,因此,这个系统采用了"分布式"设计,简单说就是将处理分布到多个CPU上进行。但是,它本质上还是由若干个计算机系统构成,硬件是x86/MIPS/PPC处理器,带有FPGA加速,而软件运行于FreeBSD操作系统之上。
从上面的对比,我们可以总结,流行的ARM,FPGA,DSP都只是一种构建嵌入式系统的手段。如果仅限于希望在这方面养家糊口,那么深入理解这些技术本身就可以了。但是,如果希望在行业内有影响力,食有鱼,出有车,还需要对行业本质、客户需求的把握。 |