开发者社区> 技术小胖子> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

PowerPC VxWorks BSP分析(1)--PowerPC体系结构

简介:
+关注继续查看

1          PowerPC体系结构

POWER  Power Optimization With Enhanced RISC 的缩写,是 IBM 的很多服务器、工作站和超级计算机的主要处理器。POWER 芯片起源于 801 CPU,是第二代 RISC 处理器。POWER 芯片在 1990 年被 RS  RISC System/6000 UNIX 工作站(现在称为 eServer  pSeries)采用,POWER 的产品有 POWER1POWER2POWER3POWER4,现在最高端的是 POWER5POWER5 处理器是目前单个芯片中性能最好的芯片。POWER6计划 2006 年发布。
PowerPC  AppleIBM 和摩托罗拉(Motorola)联盟(也称为 AIM 联盟)的产物,它基于 POWER 体系结构,但是与 POWER 又有很多的不同。例如,PowerPC 是开放的,它既支持高端的内存模型,也支持低端的内存模型,而POWER 芯片是高端的。最初的 PowerPC设计也着重于浮点性能和多处理能力的研究。当然,它也包含了大部分 POWER 指令。很多应用程序都能在 PowerPC 上正常工作,这可能需要重新编译以进行一些转换。从2000 年开始,摩托罗拉和 IBM PowerPC芯片都开始遵循 Book E 规范,这样可以提供一些增强特性,从而使得 PowerPC 对嵌入式处理器应用(例如网络和存储设备,以及消费者设备)更具有吸引力。PowerPC 体系结构的最大一个优点是它是开放的:它定义了一个指令集(ISA),并且允许任何人来设计和制造与 PowerPC 兼容的处理器;为了支持 PowerPC 而开发的软件模块的源代码都可以自由使用。最后,PowerPC 核心的精简为其他部件预留了很大的空间,从新添加缓存到协处理都是如此,这样可以实现任意的设计复杂度。
PowerPC 体系结构分为三个级别(或者说是“book”)。通过对体系结构以这种方式进行划分,为实现可以选择价格/性能比平衡的复杂性级别留出了空间,同时还保持了实现间的代码兼容性。
Book I. 用户指令集体系结构
定义了通用于所有 PowerPC 实现的用户指令和寄存器的基本集合。这些是非特权指令,为大多数程序所用。
Book II. 虚拟环境体系结构
定义了常规应用软件要求之外的附加的用户级功能,比如高速缓存管理、原子操作和用户级计时器支持。虽然这些操作也是非特权的,但是程序通常还是通过操作系统调用来访问这些函数。
Book III. 操作环境体系结构
定义了操作系统级需要和使用的操作。其中包括用于内存管理、异常向量处理、特权寄存器访问、特权计时器访问的函数。Book III 中详细说明了对各种系统服务和功能的直接硬件支持。
从最初的 PowerPC 体系结构的开发开始,就根据特定的市场需求而发生分支。当前,PowerPC 体系结构家族树有两个活跃的分支,分别是 PowerPC AS体系结构和 PowerPC Book E体系结构。PowerPC AS 体系结构是 IBM 为了满足它的 eServer pSeries UNIX  Linux 服务器产品家族及它的 eServer iSeries 企业服务器产品家族的具体需要而定义的。PowerPC Book E 体系结构,也被称为 Book E,是 IBM  Motorola 为满足嵌入式市场的特定需求而合作推出的。PowerPC AS 所采用的原始 PowerPC 体系结构与 Book E 所采用的扩展之间的主要区别大部分集中于 Book III 区域中。
在这些衍生的体系结构中还有一些适当的应用级扩展,这些扩展大部分与具体应用的场合相关,但是 PowerPC AS PowerPC Book E 共享在 PowerPC 体系结构的 Book I 中定义的基本指令集。虽然三种体系结构主要在操作系统级别上表现出不同,但它们在很大程度上具备应用级的兼容性。
PowerPC 最初定义了同时对 32 位和 64 位实现的支持,可以让 32 位的应用程序运行于 64 位系统之上。在 IBM pSeries  iSeries 服务器上使用的 PowerPC AS 系统现在只提供体系结构的 64 位实现,新的 64 位应用程序和遗留的32 位的应用程序可以运行于同一个系统之上。PowerPC Book E 体系结构同时有 32位实现和 64 位实现,64 位实现也完全兼容 32  PowerPC 应用程序。这两种体系结构都具备与 PowerPC Book I 指令和寄存器的完全兼容性,同时提供了对内存管理、异常和中断、计时器支持和调试支持等各方面的系统级扩展。
最初的 PowerPC 体系结构仍是 PowerPC AS  PowerPC Book E 的主要组成部分,并仍保持了其完整性,表现出了令人信服的应用级兼容性。
摩托罗拉半导体(飞思卡尔)从低到高的PowerQUICC IIIII ProIII四个系列的通信处理器产品,应对不同的应用需求:
1) PowerQUICC I MPC8xx低成本通信控制器系列,8xx core
MPC823, MPC823E, MPC850, MPC852T, MPC853T, MPC855T, MPC857DSL, MPC857T, MPC859DSL, MPC860, MPC862, MPC866, MPC870, MPC875, MPC880, MPC885
2) PowerQUICC II MPC82xx高性能低价格通信控制器系列,603e or G2 core
MPC8247, MPC8248, MPC8250, MPC8255, MPC8260, MPC8264, MPC8265, MPC8266, MPC8270, MPC8271, MPC8272, MPC8275, MPC8280
3) PowerQUICC II Pro MPC83xx高集成度通信控制芯片系列,e300 core
MPC8343E, MPC8347E, MPC8349E, MPC8358E, MPC8360E
4)PowerQUICC III MPC85xx高性能低功耗通信控制芯片系列,e500 core
MPC8540, MPC8541E, MPC8555E, MPC8560, MPC8543E, MPC8545E, MPC8547E, MPC8548E

Power QUICC系列微处理器一般有三个功能模块组成,嵌入式PowerPC(EMPCC),系统接口单元(SIU)以及通信处理器(CPM)模块,这三个模块内部总线都是32位。Power QUICC中除集成了PowerPC核,还集成了一个32位的RISC内核。Power PC核主要执行高层代码,而RISC则处理实际通信的低层通信功能,两个处理器内核通过高达8K字节的内部双口RAM相互配合,共同完成MPC854强大的通行控制和处理功能。CPMRISC控制器为核心构成,除包括一个RISC控制器外,还包括七个串行DMA(SDMA)通道、两个串行通信控制器(SCC)、一个通用串行总线通道(USB)、两个串行管理控制器(SMC)、一个I2C接口和一个串行外围电路(SPI),可以通过灵活的编程方式实现对EthemetUSBT1/E1,ATM等的支持以及对UART, HDLC等多种通信协议的支持。
Power QUICC II 完全可以看作是Power QUICC的第二代,在灵活性、扩展能力、集成度等方面提供了更高的性能。Power QUICC II同样由嵌入式的PowerPC核和通信处理模块CPM两部分集成而来。这种双处理器器的结构由于CPM承接了嵌入式Power PC核的外围接口任务,所以较传统结构更加省电。CPM交替支持三个快速串行通信控制器(FCC),二个多通道控制器(MCC),四个串行通信控制器(SCC),二个串行管理控制器(SMC),一个串行外围接口电路(SPI)和一个I2C接口。嵌入式的Power PC核和通信处理模块(CPM)的融和,以及Power QUICCII的其他功能、性能缩短了技术人员在网络和通信产品方面的开发周期。


Power QUICCII相比,Power QUICC III集成度更高、功能更强大、具有更好的性能提升机制。Power QUICCIII中的CPMPower QUICC II产品200MHzCPM的运行速度提升了66%,达到333MHz,同时保持了与早期产品的向后兼容性。这使得客户能够最大范围的延续其现有的软件投入、简化未来的系统升级、又极大的节省开发周期。Power QUICC III通过微代码具有的可扩展性和增加客户定制功能的特性,能够使客户针对不同应用领域开发出各具特色的产品。这种从Power QUICC II开始就有的微代码复用功能,已经成为简化和降低升级成本的主要设计考虑。 
MPC860 PowerQUICC是当今比较流行、性能相当优越的单片集成嵌入式微处理器。MPC860 PowerQUICC通信处理器可根据用户不的要求提高24个串行通信控制器、不同规格的指令和数据缓存,各种级别的网络协议支持。该产品专为宽带接入设备如路由器、接入集线器、LAN/WAN交换机、PBX系统和STM网关等设计。MPC860包括三个主要模块:PowerPC核心、系统接口单元(SIU)、通信处理模块(CPM)。

PowerPC是主要的处理机单元,通常称为Embedded PowerPC核心(或EPPC)。它包括数据和指令的缓存和存储器管理单元(MMU),在40MHz时钟时为50 MIPS指令速度。
第二个主要的模块为系统接口单元(SIU)。主要包括:总线监视器、假中断监视器、软件看门狗、中断定时器和实时时钟(RTC)、复位控制器、不占用内部开销的片内总线仲裁、JTAG1149.1测试口。它的一个主要功能是提供内部总线和外部总线的接口。
第三个主要模拟为通信处理机模块(CPM)。主要包括:RISC控制器、所有串行通道口支持连续接收和发送模式、5K字节双口RAM16个串行DMA SDMA)通道、三个平行I/O寄存器、四个波特率独立的发生器(可以连接到任意一个SCCSMC,并允许运行中改变,支持自动波特率)、四个串行通信控制器SCC(支持以太网、HDLC/SDLCHDLC总线)、两个串行管理控制器(SMC)(UART方式或透明传输)、一个串行外围接口电路(SPI)(MC6830 SCP的扩展,支持主从模式,支持同一总线上多主操作)、一个I2CInter-Integrated Circuit)接口(支持主从模式,支持多主环境)。CPM在几个不同的通信设备如SCCSMC上发送、接收数据,所有的通信设备可以独立工作。SCCSMC也可以用于时分复用总线。
串行通信控制SCCMPC860中最强大的通信设备,它们可以以多种不同的协议传送数据,比如UART HDLC,以太网等等。
SMC2个全双工通道,编程可以配置它们独立支持UART、透明方式和GCISMCSCC的能力少一些,它支持少一些协议,而且CPM RISC提供的服务也少一些。
注意,与SCC一样,SMC使用缓存描述字符,缓存在存储器中,与SCC一样,SMCCPM RISC提供请求,使SDMA传送数据。SCCSMC一个显著的不同为没有FIFO做接收和发送工作,相反接收和发送为双缓存。
MPC860有两个CPUPowerPC32RISCPowerPC执行高层代码,RISC处理实际通信的低层通信功能。由于CPU分担了嵌入式PowerPC核的外围工作任务,这种双处理器体系结构功耗要低于传统体系结构的处理器。两个处理器主要是通过内部存储空间相互配合工作。在存储器区,每个处理器都可以设置控制位、读状态位。每个通信设备都有一个发送DMA和接收DMA32 RISC控制这16个串行DMA在通信设备和存储器之间传送数据。当MPC860接收数据时,串行DMA从通信设备接收数据并放入存储器中;发送数据顺序相反,串行DMA从存储器中取数据,送到通信设备,串行DMA只服务CPMRISC,但是两个虚拟IDMA可以为用户DMA所用。





 本文转自 21cnbao 51CTO博客,原文链接:http://blog.51cto.com/21cnbao/133619,如需转载请自行联系原作者



版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
BizWorks云原生数字工作台,助力企业数字化转型
BizWorks 是面向云原生应用构建和运营的一体化技术平台,内置了阿里巴巴在业务中台领域的最佳技术实践,致力于成为企业数字化转型的新基座。
467 0
利用powershell进行windows日志分析
0x00 前言   Windows 中提供了 2 个分析事件日志的 PowerShell cmdlet:一个是Get-WinEvent,超级强大,但使用起来比较麻烦;另一个是Get-EventLog,使得起来相当简单,可以实时筛选,接下来,我们利用PowerShell 来自动筛选 Windows 事件日志。
2028 0
大数据workshop:《云数据·大计算:海量日志数据分析与应用》之《数据加工:用户画像》篇
本手册为阿里云MVP《云计算·大数据:海量日志数据分析与应用》的《数据加工:用户画像》篇而准备。主要阐述在使用大数据开发套件过程中如何将已经采集至MaxCompute上的日志数据进行加工并进行用户画像,学员可以根据本实验手册,去学习如何创建SQL任务、如何处理原始日志数据。
12564 0
大数据workshop:《云数据·大计算:海量日志数据分析与应用》之《数据采集:日志数据上传》篇
本手册为云栖大会Workshop《云计算·大数据:海量日志数据分析与应用》的《数据采集:日志数据上传》篇而准备。主要为保障各位学员在workshop当天能够顺畅进行动手实操,那么本节为学员掌握阿里云数据采集的操作和使用。
5441 0
21114
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载