This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

Thread Rating:
  • 4 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Guide] PS3 & emulation vocabulary
#1
Hey!

I am a newcomer on these forums and in the whole emulation scene but I have been developing indie games & software for years.

A week ago all the vocabulary considering emulation and PS3 were just a mess in my head. I was stumbling into dozens of new words here on the forums that I had never heard before. I was Googling for hours to find the information I was looking for, and still didn't get enough data to be satisfied. I thought that it might be a good idea to share the meanings of some of the most commonly used (PS3 & emulation related) words here at the forums since I didn't find a good listing anywhere.

This listing assumes that you already know some of the basic programming & computer vocabulary like threading, virtual memory, assembly language, OpenGL and vertices. The main reason I made this listing is to make it easier for newcomers like me to get into the scene and begin to develop the emulator further by themselves.

Please leave a comment below if you notice that something important is missing, or if I have understood something wrong!

Hardware & PS3 related:

RSX = Reality Synthesizer, a proprietary graphics processing unit (GPU) co-developed by Nvidia and Sony for the PlayStation 3 video game console
Cell = the CPU of PS3, a multi-core microprocessor microarchitecture, consists of PPE, 8 SPEs, EIB, Memory and I/O controllers
PPC = PowerPC which is what the processor architecture family that Cell is from is colloquially called (used in names in rpcs3 just to distinguish it from the host-system)
PPE = Power Processing Element, PPU + PPSS
PPSS = Power Processor Storage Subsystem, more info: http://moss.csc.ncsu.edu/~mueller/cluste..._elem.html
PPU = Power Processing Unit, two-way multithreaded core acting as the controller for the eight SPEs
SPE = SPU + MFC
SPU = Synergistic Processing Unit, handles most of the workload, forms virtual memory addresses etc.
MFC = Memory Flow Controller, sets up DMA operations
DMA = Direct Memory Access
EIB = Element Interconnect Bus, connects the Cell components together (PPE, SPEs etc.)

NV47 = Codename G70, is a Nvidia GPU that RSX is based on
PSGL = Basicly OpenGL ES 1.1 + Nvidia Cg
S3TC = S3 Texture Compression, used by PS3, also called DXTn or DXTC
TF = Texture Filtering, method used to determine the texture color for a texture mapped pixel, using the colors of nearby texels
TA = Texture Addressing

Emulation & software related:

HLE = High-level emulation, attempts to simulate the response of the system rather than accurately recreating its internal design
LLE = Low-level emulation, means emulating the inner hardware that is part of a system in order to execute its binary code on different architecture hardware
LLVM = A compiler infrastructure project (formerly Low Level Virtual Machine) written in C++

SPURS = SPU (Synergistic Processing Unit) Runtime System
FS = File System
VFS = Virtual File System
LDR = Loader, for example bootldr

GCM = Graphics Command Management library (a rendering library), has no abstraction layer and allows
to generate graphical commands directly, more info: http://games.soc.napier.ac.uk/resources/...al_004.pdf

File types:

ELF = Executable and Linkable Format, file format for executables, object code, shared libraries and core dumps
PRX = Playstation Plug-in file
PKG = Installable PS3 package file which usually contains multiple files
TRP = Trophy package file
PUP = Playstation Update Package, contains a patch or a full update
SFO = System File Object, also referred as PSF, used in folders which content needs to be displayed in the XMB
PFD = Protected Files Database, responsible to prevent tampering of other files of the same folder, the only purpose is the security of the folder contents

PowerPC (PPC) related:

SRR0 = Machine status save/restore register 0
SRR1 = Machine status save/restore register 1
DSISR = Register used for determining the source of a DSI exception
DSI = Data storage interrupt, the name used for a segmentation fault on PowerPC-based processors
DAR = Data address register
TB = Time base register
FPR = Floating-point register
GPR = General-purpose register

Other information:

FCX and Hdlr0, for example in
HLE: W {PPU[219] Thread (FCXSpursHdlr0)[0x00000000]} sys_spu warning: sys_spu_thread_group_join(id=209) aborted
are just parts of a game specific thread name. Hdlr probably is referring to some handler.

For more useful information, please look at the following pages:

https://github.com/RPCS3/rpcs3/wiki/Deve...nformation
http://www.psdevwiki.com/ps3/Main_Page
http://www.cebix.net/downloads/bebox/PRG.pdf
http://cell.scei.co.jp/e_download.html

PS: I hope someone who knows the rpcs3 code well would make a class diagram of some sort, or would describe the meanings & connections between the components of the project. That would also encourage more people to participate on the project!
i7-4470K, GTX 660 Ti, 8 GB DDR3, Kingston 256 GB HyperX SSD, Windows 8.1 (64-bit)
Reply


Messages In This Thread
[Guide] PS3 & emulation vocabulary - by DaHandy - 12-17-2014, 11:39 PM
RE: [Guide] PS3 & emulation vocabulary - by Annie - 02-14-2016, 11:26 PM

Forum Jump:


Users browsing this thread: 2 Guest(s)