SHUN6游戏秘籍  
网站地图 RSS订阅
高级搜索 收藏本站
秘籍首页 | 游戏新闻 | 单机游戏 | 网络游戏 | 游戏秘技 | 游戏文学 | 游戏介绍 | 游戏知识 | 电子竞技 | PS2攻略 | PS攻略 | SFC攻略 | SS攻略 | XBOX攻略
| PC游戏 | ARC攻略 | MD攻略 | NGC攻略 | FC攻略 | GB攻略 | GBA攻略 | 游戏快报 | 网游攻略 | 游戏攻略 | 游戏秘籍 | 玩家技巧 | 游戏下载 | 游戏说明
| 单机游戏 | 网络游戏 | 游戏行业 | 电视游戏 | 游戏文化 | 游戏硬件 | 电玩硬件 | 游戏评测 | 游戏动漫 | 手机游戏 | 跑跑卡丁车 | 游戏攻略 | 魔兽世界
  当前位置:主页>游戏知识>文章内容
2工作原理解密 - 游戏知识
来源: 作者:[标签:作者] 发布时间:3月18日  
Sound and Vision:
A Technical Overview of the Emotion Engine

本文主要分析了Sony出品的Playstation 2的核心:Emotion Engine。当然,不可能只关注于Emotion Engine而忽略PS2的其他部分。所以在文章的开头,首先对PS2的整体设计进行简介,然后我们再把目光集中在Emotion Engine上。

PLAYSTATION2的整体结构

在整个PS2结构中我们如此关注于Emotion Engine是因为,与标准PC的CPU相比,Emotion Engine并不是通用处理器。PC的CPU是为了完成SPEC测试而设计的……当然,这么说刻薄了一点,是让应用程序代码的执行速度越快越好。不可避免地,由于应用程序代码的形式与功能五花八门,CPU必须有足够的兼容性以执行一个程序员所能写出来的各种稀奇古怪的东西。在一个PC系统中,通用性的CPU必须依赖于所添加的特殊硬件才能完成诸如图形加速,网络通信,音频处理等任务。

PS2则又有不同,它生来就是为了让一种程序的运行效果好到极致:3D游戏。虽然PS2也可以上网,收发email,或其它一些软件,但这些都排在第二位。PS2就是专为运行3D游戏而存在的,它所做的就是尽其所能地产生各种*真的视听效果来营造一个虚拟的世界。几乎所有PS2的硬件都是为此而设计的。

那PS2如何生成3D图像和音响效果呢?下面我们来看PS2的主要部件构成:

由图可见,PS2主要分为4大部分。I/O Processor(简称IOP)控制所有的U**,FireWire和手柄接口。当你在PS2上玩游戏的时候,IOP将手柄输入送给Emotion Engine(简称EE),从而由Emotion Engine去更新游戏场景。可以说,Emotion Engine是PS2的核心,是真正使PS2独一无二的关键部件。Emotion Engine主要控制以下两类运算:

几何运算(Geometry calculations):几何变形,几何变换等。
行为/世界模拟(Behavior/World simulation):敌方AI,两个物体间的磨擦,模拟生成海浪的高度等。
其他功能(Misc. functions): 程序控制,管理等。

总而言之,Emotion Engine的任务就是产生display lists(一系列显示命令的序列)送给Graphics Synthesizer(PS2的图形加速卡,简称GS)。GS负责执行所有的标准视频加速函数,它的作用是将EE传来的display lists显示出来。最后,Sound Processor(即PS2的声卡)以AC-3和DTS输出3D数字音频信号


Emotion Engine基本构架

正如上文所提到的,Emotion Engine的主要输出是display list。生成这些display list需要进行大量的几何运算。比如说,你正在运行赛车游戏,在拐弯进入下一场景前得首先算出轮胎与地面之间的虚拟摩擦。又如第一视角射击游戏,必须执行敌方AI的路径查找代码,这样才能知道如何将其放入每一帧。在每一帧画面的背后都有如此多的要素影响到屏幕上的输出。所有这些几何运算,物理运算,AI及数据传输都由下列单元来执行:

MIPS III CPU core
Vector Unit (向量处理单元,共有两个,VU0 and VU1)
Floating-point coprocessor (浮点协处理器,FPU)
Image Processing Unit (一个增强型的MPEG2解码器,IPU)
10-channel DMA controller (十道DMA控制器)
Graphics Interface unit. (图形接口单元,GIF)
RDRAM interface and I/O interface (连接RDRAM和IOP)

所有上述单元(除FPU之外)都与128位共享式内部总线相连。

可以看出,VU进一步分为两个独立的128-bit SIMD/VLIW向量处理单元,VU0,VU1。两者虽然在微结构上是相同的,但运行时各自扮演不同角色。Emotion Engine的设计者Toshiba公司并不认为使用三个通用硬件(CPU和两个VU)以满足所有需求是明智的。相反,Toshiba提升了设备应完成的功能,根据所需功能定制设备,最后将设备组织为逻辑单元。形象地说,这些逻辑单元就像是由各具天赋的成员合理搭配以发挥最大才华而组成的工作小组。我们接着就来看看这些小组和小组成员吧:

CPU FPU: 基本程序控制与管理等。
CPU FPU VU0: 行为与感情演绎,物理运算等。
VU1: 几何运算以产生display lists 通过GIF送Graphics Synth。
IPU: 图像解压。

CPU/FPU/VU0工作组

FPU和VU0是MIPS III CPU core的协处理器。这就是说,虽然三者整体上构成一个逻辑功能块,但CPU是主要控制设备,而FPU和VU0只是增强了它的功能。CPU/FPU/VU0工作组有共同的目标:感情演绎,物理运算,行为模仿等。

在PS2中有两个部件使这个工作组捆绑在一起且工作时关系密切。第一,它们运行时要相互通信:专用的128位协处理器总线将VU0和FPU与CPU直接相连,而不需要使用共享总线,这就极大的提升了处理速度。专用128位总线使CPU能直接访问VU0的寄存器,从而使VU0能完美地扮演MIPS III 协处理器的角色。

另一个重要部件是将CPU核心和VU0连在一起的Scratch Pad RAM。SPRAM是集成在CPU上的一块高速RAM,但CPU和VU0都可在此存数据。同时SPRAM也作为数据送128位总线前的临时存储区域。SPRAM就像是一块共享工作区,CPU和VU0就在这里生成数据,然后再发送到指定设备。

VU1/Graphics Synth工作组

另一个重要的工作组由VU1和Graphics Synthesizer(通过GIF通信)。正如VU0由专用总线与CPU核心相连,VU1也有自己的专用128位总线与GIF相连。但VU1和Graphics Synth并不像CPU/FPU/VU0工作组结合得那么紧。与CPU控制VU0相比,VU1和GS更像是平等的合作者。

CPU/FPU/VU0与VU1/GS的协同工作方式

即使是PS2的设计者们限定了各部件的功能,其整体设计还是富有弹性的。你可以自由地在工作组之间分配程序的运行。比如说,CPU/FPU/VU0工作组正在生成display list,同时VU1在与之并行地进行图形几何处理,两者可同时将display list送入GIF。

或者,换一种方式,将CPU/FPU/VU0工作组作为VU1的前端处理器。CPU和VU0执行程序代码并从主存中读取数据,生成的虚拟世界信息交与VU1,并由VU1转化为display list。

这种弹性为游戏开发者提供了最大的便利,使之能够从容地设计3D场景的生成与渲染过程,以产生各种各样的特殊程序效果。

Summary

 
[收藏] [推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]  
用户名: 新注册) 密码: 匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
 §最新评论:
  热点文章
·自己动手清洗 2光头 - 游戏知识
·XBOX升级中文最简易方法全攻略 -
·世嘉街机主板历代记 - 游戏知识
·索尼传奇 - 游戏知识
·水货1G彩棒测试报告 - 游戏知识
·选购基本知识与注意事项 - 游戏
·日版 游戏累计销量、新作情报一
·“革命”主机初步规格公布 - 游
·让你的 显示出更多汉字 - 游戏知
·CPU完全揭密 - 游戏知识
·GDC2005:微软首度公布Xbox2部分
·4m vms使用指南 - 游戏知识
  相关文章
·日本游戏公司名称由来 - 游戏知
·Phoenix Bios Loader/从硬盘运行
·NEOGEO简介 - 游戏知识
·Virtual Boy简介 - 游戏知识
·SEGA历史回顾 - 游戏知识
·XBOX游戏版本的差异 - 游戏知识
·深入探讨 国内身价翻倍现象 - 游
·购机必读:教你买XBOX - 游戏知
·和 2游戏可进行同步开发 - 游戏
·XBOX硬盘解密过程 - 游戏知识
·3性能将会是 2的40倍 - 游戏知识
·Xbox主板上的实时系统和后备电池
关于我们 联系我们 合作机会 版权声明 招聘信息 合作伙伴
2007-2008 Powered by 三只眼工作室 SHUN6游戏秘籍 www.shun6.com Power by DedeCms