2017-03-28 00:00:00小静 嵌入式培训
从应用对象上加以定义,嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。下面是小编整理的关于嵌入式处理器体系结构,欢迎大家参考!
嵌入式处理器体系结构
这个阶段课程渊源已久。上世纪90年代时单片机的大行其道是计算机单芯片化的开端。随着集成电路技术的发展,单芯片上集成的功能越来越强,终于在本世纪初发展出现了在单芯片上集成复杂计算机系统的技术(System-on-Chip SOC)。这使得原本需要独立运行在单独的计算机上的复杂的软件系统可以运行在(嵌入)小型的设备上。这就是“嵌入式系统”。这种系统的核心处理器被称为“嵌入式处理器”。
在讲授这部分课程时,讲师应当让学生同时接触到Intel架构以及ARM架构的指令。学生应当首先学习编写在操作系统环境下运行的汇编语言程序,然后在无操作系统环境下运行的裸板程序。归根结底,这个阶段课程教给学员分析和编写汇编语言程序的一般性方法,而非仅仅针对某个体系结构和汇编器。学员将学到超越某个具体指令集的汇编语言能力以及建立在此之上的自底向上的思考整个计算机体系的能力。
传统误区
完全地学习处理器体系结构需要具备大量的先修课程(主要是电路类课程),今天的学生不具备这些先修课程能力。传统的方式是首先讲解处理器体系结构,然后讲解指令集,再然后讲解汇编程序语法,再然后像C语言阶段一样写一些小程序,再然后...。但是很不幸,教学实践表明,由于无法安排足够的课时,这种方式的教学甚至无法让学员获得最基本的分析和使用汇编代码的能力。同时由于处理器能力的增强导致嵌入式软件体系的复杂度大大提升的结果是芯片厂商包办了底层的诸如Bootloader之类的底层软件。同时大部分的嵌入式产品都通过运行某种操作系统环境提供应用层支持。直接在无操作系统环境下编程的程序员岗位在嵌入式行业中大大减少。这样一来,讲授裸机汇编的传统课程体系和最新工程实践严重脱节。
问题分析
问题的根源在于现代程序员对于汇编语言的需求是很独特的。即使是在操作系统核心级别的代码中,用汇编语言写成的代码总量也不会很多。而当程序员开始和这些代码打交道时,往往意味着他碰到了关键的核心问题。这个时候问题的核心在于整体的软硬件结构而不是具体的汇编指令。现代的程序员在处理构成系统关键部分的汇编代码时,并不需要像计算机发展的早期时的汇编程序员那样精通某种汇编语言的每一个角落。只要“框架”清晰,指令集的障碍自然可以通过临时查阅相关体系结构的手册迈过。但是框架却不是临时能够建立起来的。
应当彻底改变这部分课程以适应最新的工程实践。压缩繁琐的汇编指令教学,增加在操作系统环境下的关键汇编代码分析和设计,把原本放在汇编程序上的精力转移到SOC的体系结构和操作系统的底层机制上。
教师应当在C、内核这几个课程阶段展开多架构汇编语言视角的讨论。这样能够让学生在很长的时间跨度上去习惯用汇编语言的视角分析问题。在本阶段的教学中,首先在Linux环境下写汇编,然后才是裸板的汇编。这是因为经过前期的学习,学生对于Linux和C是比较熟悉的,使用汇编语言和这两种环境打交道会降低学习的难度梯度。
消除了学生对指令集的恐惧之后,再展开用汇编和C语言直接操作硬件的SOC课程环节。他们将通过这个环节了解到基于ARM的SOC体系结构特点,包括总线、地址、外设以及中断等等硬件知识。由于已经熟悉了汇编语言,所以此时的学生能够把精力集中在SOC体系结构本身上。这是组织课程的一种“超级技巧”,尤其用来解决那些复杂的课程环节:尽量避免在课程中同时出现两个或多个学生之前并不熟悉的知识体系(在这里就是汇编和SOC芯片)。通过重新规划这课程,甚至动用其它环节的课程以呼应这一阶段课程的方式降低学习的难度梯度。
嵌入式微处理器(Micro Processor Unit,MPU)
嵌入式微处理器是由通用计算机中的CPU演变而来的。它的特征是具有32位以上的处理器,具有较高的性能,当然其价格也相应较高。但与计算机处理器不同的是,在实际嵌入式应用中,只保留和嵌入式应用紧密相关的功能硬件,去除其他的冗余功能部分,这样就以最低的功耗和资源实现嵌入式应用的特殊要求。和工业控制计算机相比,嵌入式微处理器具有体积小、重量轻、成本低、可靠性高的优点。目前主要的嵌入式处理器类型有Am186/88、386EX、SC-400、Power PC、68000、MIPS、ARM/ StrongARM系列等。其中Arm/StrongArm是专为手持设备开发的嵌入式微处理器,属于中档的价位。
Power PC:
由IBM、Apple和Motorola联合开发,并制造出基于PowerPC的多处理器计算机。PowerPC架构具有可伸缩性好、方便灵活的特点。主要有以下产品使用Power PC微处理器
苹果公司:Power Macintosh系列、PowerBook系列(1995年以后的产品)、iBook系列、iMac系列(2005年以前的产品)、eMac系列产品。
任天堂:GameCube 和 Wii。
Sony:PlayStation 3。
MIPS:
MIPS是世界上很流行的一种RISC处理器。MIPS的意思“无内部互锁流水级的微处理器”(Microprocessor without interlocked piped stages),其机制是尽量利用软件办法避免流水线中的数据相关问题。它最早是在80年代初期由斯坦福(Stanford)大学Hennessy教授领导的研究小组研制出来的。MIPS公司的R系列就是在此基础上开发的RISC工业产品的微处理器。这些系列产品为很多计算机公司采用构成各种工作站和计算机系统。MIPS技术公司是美国著名的芯片设计公司,它采用精简指令系统计算结构(RISC)来设计芯片。和英特尔采用的复杂指令系统计算结构(CISC)相比,RISC具有设计更简单、设计周期更短等优点,并可以应用更多先进的技术,开发更快的下一代处理器。MIPS是出现最早的商业RISC架构芯片之一,新的架构集成了所有原来MIPS指令集,并增加了许多更强大的功能。MIPS处理器是八十年代中期RISC CPU设计的一大热点。MIPS是卖的最好的RISC CPU,可以从任何地方,如Sony, Nintendo的游戏机,Cisco的路由器和SGI超级计算机,看见MIPS产品在销售。目前随着RISC体系结构遭到x86芯片的竞争,MIPS有可能是起初RISC CPU设计中唯一的一个在本世纪盈利的。和英特尔相比,MIPS的授权费用比较低,也就为除英特尔外的大多数芯片厂商所采用。
861
人