通常我们都有这么一个模糊的概念,我以前做单片机,单片机是不是嵌入式系统呢? 当然是。只不过呢,我们现在把它看成一个低端的嵌入式系统。通常我们所说的嵌入式系统是指什么呢?指像“ARM+LINUX”这样结构的系统。 低端的单片机系统和高端的ARM+LINUX这种结构有什么不同呢? 单片机系统在8位的单片机系统上跑一段程序,实际上呢,就是一段应用程序。这个架构比较简单。 ARM+LINUX系统呢,最下层是硬件,往上呢是驱动程序->操作系统->最上面呢是应用程序。最下面的硬件一般比较复杂,32位的系统(ARM、PPC、MIPS、X86等)。 在整个架构上有很大不同。如果要开发ARM+LINUX这样系统的时候,需要了解更多的知识,比如:什么是操作系统?驱动程序如何挂在到操作系统上?应用程序如何通过操作系统对硬件进行操作等等。 这样看来ARM+LINUX的架构比8位单片机这个架构要复杂很多。 一.单片机和ARM的区别 1. 单片机主要是面向于低端市场,实现一般性的控制功能,单片机一般单片集成CPU,RAM,ROM,各种外设。 2. ARM主要面向更复杂的嵌入式产品,主频更高,外围接口功能更加丰富。 3. ARM将逐渐取代单片机,成为嵌入式产品的通用硬件平台。 二.ARM是什么?什么是ARM9,ARM11,ARMCORTEX 1. ARM是一家公司,它不做芯片生产,销售,只是设计芯片内核,并把知识产权给芯片制造商。ARM是一门技术科学,它也是一种芯片。 2. ARM11系列微处理器ARM公司近年推出的新一代RISC处理器,它是RAM新指令架构,ARM11处理器瞄准的是高端的移动无线,消费类电子,网络和汽车电子应用,而且ARM11内核的很多特性使它还能充分适应高端嵌入式实时应用系统,如未来的网络和家庭娱乐产品。 3. ARMCORTEX不是代表更高端,而是一个全新的系列,CORTEX分三个系列:A系列,R系列,M系列,在R系列里,实时性高,多用于汽车电子和特殊行业,并且在实际开发中很少遇到,M系列终端快,多应用于机械加工领域,典型的产品有M0,M3,M4,其中M0是为了 抢占传统的51单片机市场,M3是为了取代ARM7,M4在M3的基础上增加了DSP和MPU,这是为了与低端的DSP处理器竞争,A系列是面向应用的,如苹果公司的iphone4就是cortexA8架构的,但是A系列的底层嵌入式开发难度很大,国内很少有公司有实力开发ARM A系列处理器并采用 三.ARM9和ARM11的区别 1. 主频不同,2440是400M,6410是533/667M. 2. 处理器的版本不一样。 3. 6410在视频处理方面比2440要强很多。 4. 6410采用的是DDR内存控制,2440采用的是SDRAM内存控制器。 5. 6410为双总线架构,一路用于内存总线,一路用于Flash总线。 6. 6410的启动方式更加灵活,主要包括SD,Nand Flash NorFLash和oneFLash等设备启动。 7. 6410的NondFLash支持SLC和MLC两种架构,从而大大扩大存储空间。 8. 6410具备8路DMA通道。 9. 6410的性能高于2440,ARM11通常跑操作系统,ARM9可跑可不跑。 10. 6410还支持2D和3D的图形加速。 四.嵌入式行业中的职业划分,分4种 1. 硬件工程师,包括电路工程师,芯片工程师,PCBLayout工程师,MCS51硬件工程师,ASIC设计工程师FPGA.(即硬件层) 2. 内核开发,内核优化,系统移植工程师,将LINUX系统进行移植和简单的裁剪修改使之运行起来。(即操作系统层) 3. 核心底层工程师,深入理解LINUX内核并且有一定的硬件知识,精通C语言,数据结构,最难的是自己写一个驱动出来,可以看时序图,电路图等。(即驱动层) 4. 嵌入式应用软件工程师,有LINUX平台或WINCE平台开发经验,熟悉C++,可以开发基于QT,GTK(图形库)等C++应用程序,比如手机上的QQ等这些相对来说简单。(即应用层) 寄语:我们知道,嵌入式系统是一个很有前景的行业。学会嵌入式技术,就相当于给自己创造了更多的机会。那么, 现在可以预计的将来,嵌入式技术的应用会越来越广泛(大量的人才需求,未来五年内,国内LINUX嵌入式软件开发的人才缺口达到120万)如果你想往这方面发展的话: 第一:把心踏实下来,做好打硬仗的准备。 第二:注意学习方法。尽量不要走弯路,争取一鼓作气入门。一旦入门了以后呢就好办了。嵌入式技术的掌握,本身呢就比较难,要是再走些弯路,时间上会浪费,甚至会影响学习的信心。 最好的学习方法: 做项目,如果有机会大家跟着做一个难度适中的嵌入式项目,相信大家会很快入门的。也就是说从实战之中来获得进步。 技术道路不是一朝一夕,有人领你进门更好,自学也得有一本时间的明细账本,希望有兴趣从事这个行业的朋友们,学有所成! # k! I7 M9 V0 i7 I+ p
|