Difference between revisions of "Sega Saturn/Hardware comparison"
From Sega Retro
Line 42: | Line 42: | ||
| 66 million adds/sec | | 66 million adds/sec | ||
| 100 million adds/sec | | 100 million adds/sec | ||
− | | colspan="2" style="text-align:center;" | 44 million adds/sec{{ref|3 cycles per add{{ | + | | colspan="2" style="text-align:center;" | 44 million adds/sec{{ref|3 cycles per add{{fileref|Instruction Tables.pdf|page=101}}|group=n}} |
|- | |- | ||
! Multiplications | ! Multiplications | ||
Line 48: | Line 48: | ||
| 66 million multiplies/sec | | 66 million multiplies/sec | ||
| 100 million multiplies/sec | | 100 million multiplies/sec | ||
− | | colspan="2" style="text-align:center;" | 44 million multiplies/sec{{ref|3 cycles per multiply{{ | + | | colspan="2" style="text-align:center;" | 44 million multiplies/sec{{ref|3 cycles per multiply{{fileref|Instruction Tables.pdf|page=101}}|group=n}} |
|- | |- | ||
! 16-bit divisions | ! 16-bit divisions | ||
Line 54: | Line 54: | ||
| 4 million divides/sec{{ref|25 cycles (23 cycles instruction,{{ref|1=[http://hitmen.c02.at/files/docs/psx/psx.pdf#page=60 Everything You Have Always Wanted to Know about the Playstation (pages 60-61)]}} 2 cycles delay{{ref|1=[http://ece545.com/F15/reports/F13_PSX.pdf#page=17 Team PSX (page 17)]}}) per 3 divides{{ref|[http://problemkaputt.de/psx-spx.htm#gtecoordinatecalculationcommands Playstation Specifications (GTE Coordinate Calculation Commands)]}}|group=n}} | | 4 million divides/sec{{ref|25 cycles (23 cycles instruction,{{ref|1=[http://hitmen.c02.at/files/docs/psx/psx.pdf#page=60 Everything You Have Always Wanted to Know about the Playstation (pages 60-61)]}} 2 cycles delay{{ref|1=[http://ece545.com/F15/reports/F13_PSX.pdf#page=17 Team PSX (page 17)]}}) per 3 divides{{ref|[http://problemkaputt.de/psx-spx.htm#gtecoordinatecalculationcommands Playstation Specifications (GTE Coordinate Calculation Commands)]}}|group=n}} | ||
| 14 million divides/sec{{ref|7 FLOPS per divide{{ref|1=[https://github.com/cxd4/rsp/blob/master/vu/divide.c MSP Simulation Layer for Vector Unit Computational Divides] (RSP)}}|group=n}} | | 14 million divides/sec{{ref|7 FLOPS per divide{{ref|1=[https://github.com/cxd4/rsp/blob/master/vu/divide.c MSP Simulation Layer for Vector Unit Computational Divides] (RSP)}}|group=n}} | ||
− | | colspan="2" style="text-align:center;" | 4 million divides/sec{{ref|30 cycles per divide{{ | + | | colspan="2" style="text-align:center;" | 4 million divides/sec{{ref|30 cycles per divide{{fileref|Instruction Tables.pdf|page=100}}|group=n}} |
|- | |- | ||
! rowspan="3" | Geometry | ! rowspan="3" | Geometry |
Revision as of 12:01, 2 December 2016
This short article is in need of work. You can help Sega Retro by adding to it.
Contents
Vs. PlayStation
The Sega Saturn generally has more raw power than the rival PlayStation,[1][2] but was more difficult to get to grips with.[2] The Saturn has more computational power and faster pixel drawing; the PS1 can only draw pixels through its polygon engine, whereas the Saturn can draw pixels directly with its processors, giving it more programming flexibility.[3] When both SH-2 and the SCU DSP are used in parallel, the Saturn is capable of 85 million fixed-point operations/sec, faster than the PS1's GTE, which processes 66 million fixed-point operations/sec. The GTE is faster at calculating 3D geometry than each SH-2 and SCU DSP individually, but when these processors are used as a parallel geometry engine, the Saturn can calculate more 3D geometry than the PS1.
In terms of rendering, the PS1's GPU has a higher peak fillrate than the VDP1, whereas the VDP1 has a fillrate under certain circumstances, such as texture Gouraud shading and smaller polygons/textures/sprites. The VDP2 has a significantly higher effective tile fillrate of 500 MPixels/s; if the VDP2 is used for drawing textured infinite planes, this frees up the VDP1's polygons for other 3D assets, whereas the PS1 needs to draw many polygons to construct 3D textured planes (with very limited draw distance compared to the VDP2).
The VDP1's quad polygons are drawn with edge anti‑aliasing (for smoother edges), forward texture mapping (a form of perspective correction), bilinear approximation (reduces texture warping), and medium polygon accuracy (resulting in seamless polygons), while the VDP2's infinite planes are drawn with true perspective correction, whereas the PS1's triangle polygons have aliased edges, are drawn with affine texture mapping which lacks perspective correction (resulting in perspective distortion), linear approximation (resulting in texture warping), and low polygon accuracy (resulting in seams between polygons).[4][5] The PS1 has more effective polygon transparency than the VDP1, while the VDP2 has more effective transparency than the PS1. The VDP1 is more effective at Gouraud shading than the PS1's GPU, while the VDP2 is more effective at visual effects such as misting and reflective water effects.[2]
The PS1's straightforward hardware architecture, triangle polygons, and more effective development tools and C language support, made it easier for developers to program 3D graphics. When it came to 2D graphics, on the other hand, the Saturn's combination of a VDP1 sprite framebuffer and VDP2 parallax scrolling backgrounds made it both more powerful and straightforward to program 2D graphics, compared to the PS1 which draws all 2D graphics to a single framebuffer.
Vs. Nintendo 64
Vs. PC
The Saturn's VDP1 was the basis for Nvidia's first graphics processor, the NV1, which was one of the first 3D graphics accelerators on PC, released in 1995. Like the Saturn, it uses quad polygons and supports forward texture mapping with limited perspective correction, and several Saturn ports are available for it. However, the NV1 has a lower fillrate and rendering performance. The most powerful PC graphics card of 1995 was Yamaha's Tasmania 3D, which was based on triangle polygons. It had a higher fillrate and rendering throughput than the NV1, but less than the Saturn and PlayStation.
Graphics comparison
- See Sega Saturn technical specifications for more technical details on Saturn hardware
System | Sega Saturn (1994) | Sony PlayStation (1994) | Nintendo 64 (1996) | PC (1995) | ||
---|---|---|---|---|---|---|
Geometry processors | 2x Hitachi SH-2 (28.63636 MHz),[n 1] Sega SCU DSP (14.31818 MHz) |
Sony GTE (33.8688 MHz)[8] | SGI RSP (62.5 MHz) | Intel Pentium (133 MHz) | ||
Arithmetic operations | 85 MOPS[n 2][n 3] | 66 MOPS[11] | 100 MOPS[n 4] | 44 MOPS[n 5] | ||
Calculations | Additions | 71 million adds/sec[n 6] | 66 million adds/sec | 100 million adds/sec | 44 million adds/sec[n 7] | |
Multiplications | 71 million multiplies/sec[n 8] | 66 million multiplies/sec | 100 million multiplies/sec | 44 million multiplies/sec[n 9] | ||
16-bit divisions | 5 million divides/sec[n 10] | 4 million divides/sec[n 11] | 14 million divides/sec[n 12] | 4 million divides/sec[n 13] | ||
Geometry | Transformations | 2,400,000 vertices/sec,[n 14] 1,800,000 polygons/sec[n 15] |
1,900,000 vertices/sec,[n 16] 1,300,000 polygons/sec[n 17] |
2,500,000 vertices/sec,[n 18] 2,000,000 polygons/sec[n 19] |
1,100,000 vertices/sec,[n 20] 380,000 polygons/sec[n 21] | |
Flat lighting | 800,000 polygons/sec[n 22] | 700,000 polygons/sec[n 23] | 1,400,000 polygons/sec[n 24] | 290,000 polygons/sec[n 25] | ||
Gouraud lighting | 700,000 polygons/sec[n 26] | 360,000 polygons/sec[n 27] | 1,000,000 polygons/sec[n 28] | 200,000 polygons/sec[n 29] | ||
Rendering processors | Hitachi VDP1 (28.63636 MHz), Yamaha VDP2 (28.63636 MHz) |
Sony GPU (33.8688 MHz)[30] | SGI RDP (62.5 MHz)[31] | NVIDIA NV1 (12.5 MHz) |
Yamaha Tasmania 3D (50 MHz)[32] | |
Bitmap framebuffer fillrate |
16-bit color/pixel | 57.2727 MPixels/s[n 30] | 33.8688 MPixels/s[30] | 62.5 MPixels/s | 12.5 MPixels/s | 25 MPixels/s |
8-bit color/pixel | 92.9192 MPixels/s[n 31] | 67.7376 MPixels/s[30] | 125 MPixels/s | |||
4-bit color/pixel | 150 MPixels/s[n 32] | |||||
Effective tile fillrate |
16-bit color/tile | 563 MPixels/s[n 33] | 33.8688 MPixels/s[n 34] | 62.5 MPixels/s | ||
8-bit color/tile | 570 MPixels/s[n 35] | 67.7376 MPixels/s[n 36] | 125 MPixels/s | |||
Flat shading |
Fillrate | 28.6363 MPixels/s (VDP1) | 33 MPixels/s (16-bit color), 36 MPixels/s (8-bit color)[33] |
62 MPixels/s | 12.5 MPixels/s | 25 MPixels/s |
Polygons | 800,000 polygons/s (35-pixel), 500,000 polygons/s (60-pixel) |
700,000 polygons/s (40-pixel), 360,000 polygons/s (100-pixel)[33] |
830,000 polygons/s (35-pixel), 600,000 polygons/s (64-pixel)[n 37] |
50,000 polygons/s | 290,000 polygons/s | |
Gouraud shading |
Fillrate | 28 MPixels/s (VDP1) | 33 MPixels/s (512×512 polygons),[30] 18 MPixels/s (10×10 polygons)[33] |
62 MPixels/s (512×512 polygons),[34] 44 MPixels/s (10×10 polygons)[n 38] |
12.5 MPixels/s | 18 MPixels/s |
Polygons | 300,000 polygons/s (VDP1) | 200,000 polygons/s | 600,000 polygons/s | 50,000 polygons/s | 200,000 polygons/s | |
Texture mapping |
Fillrate (bitmap textures) |
42 MTexels/s (504×255 textures), 20.4545 MTexels/s (10×10 textures), 18.2058 MTexels/s (8×8 textures)[n 39] |
24 MTexels/s (10×10 textures),[33] 15.36 MTexels/s (8×8 textures)[33] |
60 MTexels/s (128×64 textures),[n 40] 27 MTexels/s (8×8 textures)[n 41] |
10 MTexels/s | 15 MTexels/s |
Effective fillrate (tiled textures) |
503 MTexels/s (VDP2) (2048×2048 to 4096×4096 textures)[37] |
33 MTexels/s (256×256 textures)[n 42] |
62 MTexels/s[31] (100×100 to 1024×256 textures)[39] | |||
Polygons | 500,000 polygons/s (32-texel), 240,000 polygons/s (94-texel)[35] |
240,000 polygons/s (100-texel)[33] | 550,000 polygons/s (32-texel), 340,000 polygons/s (100-texel)[n 43] |
50,000 polygons/s | 150,000 polygons/s | |
Texture Gouraud shading |
Fillrate | 28 MTexels/s (504×255 textures), 13 MTexels/s (10×10 textures)[35] |
18 MTexels/s (256×256 textures), 12 MTexels/s (10×10 textures)[33] |
60 MTexels/s (128×64 textures), 27 MTexels/s (8×8 textures) |
10 MTexels/s | 12 MTexels/s |
Polygons | 200,000 polygons/s (VDP1) | 120,000 polygons/s[33] | 340,000 polygons/s | 50,000 polygons/s | 100,000 polygons/s | |
Sprites | Fillrate | 18.205897 MTexels/s (8×8 sprites), 28.536811 MTexels/s (504×255 sprites)[35] |
15.36 MTexels/s (8×8 sprites),[33] 66 MPixels/s (256×256 sprites)[30] |
27 MTexels/s (8×8 sprites), 125 MTexels/s (512×256 sprites)[31] |
10 MTexels/s | 15 MTexels/s |
Performance | 500,000 sprites/sec, 16,383 sprites/frame (VDP1) |
240,000 sprites/sec,[33] 4000 sprites/frame[40][41][38] |
400,000 sprites/sec,[n 44] 7000 sprites/frame |
50,000 sprites/sec, 1000 sprites/frame |
100,000 sprites/sec, 2000 sprites/frame | |
Graphical planes |
Total planes | 7 planes[n 45] | 1 plane | 1 plane | 1 plane | 1 plane |
3D textured planes | 3 planes[n 46] | |||||
Equivalent textured polygons |
1,500,000 polygons/s[n 47] | 240,000 polygons/s | 550,000 polygons/s | 50,000 polygons/s | 150,000 polygons/s |
Notes
- ↑ [2x CPU cores, 2x DMAC controllers, 2x MULT multiplier DSP, 2x DIVU division units[6][7] 2x CPU cores, 2x DMAC controllers, 2x MULT multiplier DSP, 2x DIVU division units[6][7]]
- ↑ [MOPS (million operations per second) MOPS (million operations per second)]
- ↑ [2x SH-2 MULT DSP: 57.27272 MOPS[9]
2x SH-2 DIVU: 1.468531 MOPS (39 cycles per divide)[10]
SCU DSP: 28.63636 MOPS (add and multiply per cycle) 2x SH-2 MULT DSP: 57.27272 MOPS[9]
2x SH-2 DIVU: 1.468531 MOPS (39 cycles per divide)[10]
SCU DSP: 28.63636 MOPS (add and multiply per cycle)] - ↑ [100 MFLOPS, 1.6 floating-point operations per cycle 100 MFLOPS, 1.6 floating-point operations per cycle]
- ↑ [3 cycles per add, 3 cycles per multiply 3 cycles per add, 3 cycles per multiply]
- ↑ [2x SH-2: 57,272,720 adds/sec (1 cycle per add)[9]
SCU DSP: 14,318,180 multiplies/sec (1 cycle per multiply) 2x SH-2: 57,272,720 adds/sec (1 cycle per add)[9]
SCU DSP: 14,318,180 multiplies/sec (1 cycle per multiply)] - ↑ [3 cycles per add[12] 3 cycles per add[12]]
- ↑ [2x SH-2 MULT DSP: 57,272,720 multiplies/sec (1 cycle per multiply)[13]
SCU DSP: 14,318,180 multiplies/sec (1 cycle per multiply) 2x SH-2 MULT DSP: 57,272,720 multiplies/sec (1 cycle per multiply)[13]
SCU DSP: 14,318,180 multiplies/sec (1 cycle per multiply)] - ↑ [3 cycles per multiply[12] 3 cycles per multiply[12]]
- ↑ [2x CPU: 3,579,545 divides/sec (16 cycles per 16-bit divide)[14]
2x DIVU: 1,468,531 divides/sec (39 cycles per divide)[10] 2x CPU: 3,579,545 divides/sec (16 cycles per 16-bit divide)[14]
2x DIVU: 1,468,531 divides/sec (39 cycles per divide)[10]] - ↑ [25 cycles (23 cycles instruction,[15] 2 cycles delay[16]) per 3 divides[5] 25 cycles (23 cycles instruction,[15] 2 cycles delay[16]) per 3 divides[5]]
- ↑ [7 FLOPS per divide[17] 7 FLOPS per divide[17]]
- ↑ [30 cycles per divide[18] 30 cycles per divide[18]]
- ↑ [Transformation (21 adds/multiplies),[19] projection (4 adds/multiplies)[20] and perspective division (1 divide)[21] per vertex:
- 894,886 vertices/sec: 894,886 SCU DSP transformations (14 cycles per transform,[19] 2 cycles per projection), 894,886 SH-2 DIVU divisions (1 divide per vertex)
- 573,644 vertices/sec: 14,341,100 SH-2 MULT DSP transform/projection operations (25 cycles per vertex), 573,644 SH-2 DIVU divisions (1 divide per vertex)
- 1,011,294 vertices/sec: 41,463,054 SH-2 transform/projection/divide cycles (41 cycles per vertex)
- 894,886 vertices/sec: 894,886 SCU DSP transformations (14 cycles per transform,[19] 2 cycles per projection), 894,886 SH-2 DIVU divisions (1 divide per vertex)
- 573,644 vertices/sec: 14,341,100 SH-2 MULT DSP transform/projection operations (25 cycles per vertex), 573,644 SH-2 DIVU divisions (1 divide per vertex)
- 1,011,294 vertices/sec: 41,463,054 SH-2 transform/projection/divide cycles (41 cycles per vertex)]
- ↑ [8 vertices per cube (6 quad polygons)[22] 8 vertices per cube (6 quad polygons)[22]]
- ↑ [17 cycles (15 cycles instruction,[23] 2 cycles delay[16]) per vertex 17 cycles (15 cycles instruction,[23] 2 cycles delay[16]) per vertex]
- ↑ [25 cycles (23 cycles instruction,[15] 2 cycles delay) per triangle polygon 25 cycles (23 cycles instruction,[15] 2 cycles delay) per triangle polygon]
- ↑ [39 FLOPS per vertex (32 multiplies/adds,[24] 1 divide[21]) 39 FLOPS per vertex (32 multiplies/adds,[24] 1 divide[21])]
- ↑ [16 vertex blocks, equivalent polygons/vertex ratio to triangle strips[25] (N polygons per N+2 vertices), 14 polygons per 16 vertices (7 polygons per 8 vertices) 16 vertex blocks, equivalent polygons/vertex ratio to triangle strips[25] (N polygons per N+2 vertices), 14 polygons per 16 vertices (7 polygons per 8 vertices)]
- ↑ [116 cycles per vertex (74 cycles matrix transformation,[26] 4 projection multiplies/adds,[24] 1 divide[21]) 116 cycles per vertex (74 cycles matrix transformation,[26] 4 projection multiplies/adds,[24] 1 divide[21])]
- ↑ [3 vertices per triangle polygon 3 vertices per triangle polygon]
- ↑ [8 transformations (168 adds/multiplies), 6 surface normals (72 multiplies, 36 adds),[27] 6 light sources (72 adds/multiplies),[28] 8 projections (32 adds/multiplies) and 8 perspective divisions (24 divides)[20] per cube with 8 vertices and 6 quad polygons:
- 52,640 cubes/sec: 52,640 SCU DSP cubes (112 transform cycles, 72 surface normal cycles, 72 light source cycles,[28] 16 projection cycles), 1,263,360 SH-2 DIVU divisions (24 divides per cube)
- 8548 cubes/sec: 2,940,512 SH-2 MULT DSP transform/projection operations (347 cycles per cube), 205,152 SH-2 DIVU divisions (24 divides per cube)
- 72,614 cubes/sec: 52,862,992 SH-2 transform/projection/divide cycles (728 cycles per cube)
- 52,640 cubes/sec: 52,640 SCU DSP cubes (112 transform cycles, 72 surface normal cycles, 72 light source cycles,[28] 16 projection cycles), 1,263,360 SH-2 DIVU divisions (24 divides per cube)
- 8548 cubes/sec: 2,940,512 SH-2 MULT DSP transform/projection operations (347 cycles per cube), 205,152 SH-2 DIVU divisions (24 divides per cube)
- 72,614 cubes/sec: 52,862,992 SH-2 transform/projection/divide cycles (728 cycles per cube)]
- ↑ [46 cycles (15 cycles RTPS, 8 cycles MVMVA, 17 cycles NCCS,[29] 6 cycles delay) per triangle polygon 46 cycles (15 cycles RTPS, 8 cycles MVMVA, 17 cycles NCCS,[29] 6 cycles delay) per triangle polygon]
- ↑ [976 FLOPS per 16-vertex block, 14 polygons per block, 75 FLOPS per polygon[24]
- Transformation: 528 FLOPS per 16-vertex block (512 multiplies/adds, 16 divides)
- Lighting: 448 FLOPS per 14-polygon block (32 FLOPS per polygon)
- Transformation: 528 FLOPS per 16-vertex block (512 multiplies/adds, 16 divides)
- Lighting: 448 FLOPS per 14-polygon block (32 FLOPS per polygon)]
- ↑ [444 cycles: 348 cycles transformation (116 cycles per vertex), 32 lighting multiplies/adds[24] 444 cycles: 348 cycles transformation (116 cycles per vertex), 32 lighting multiplies/adds[24]]
- ↑ [8 transformations (168 adds/multiplies), 8 surface normals (96 multiplies, 48 adds), 8 light sources (96 adds/multiplies), 8 projections (32 adds/multiplies) and 8 perspective divisions (24 divides) per cube with 8 vertices and 6 quad polygons:
- 44,744 cubes/sec: 44,744 SCU DSP cubes (112 transform cycles, 96 surface normal cycles, 96 light source cycles, 16 projection cycles), 1,073,856 SH-2 DIVU divisions (24 divides per cube)
- 16,444 cubes/sec: 7,235,360 SH-2 MULT DSP transform/projection operations (440 cycles per cube), 394,675 SH-2 DIVU divisions (8 divides per cube)
- 58,942 cubes/sec: 48,568,208 SH-2 transform/projection/divide cycles (824 cycles per cube)
- 44,744 cubes/sec: 44,744 SCU DSP cubes (112 transform cycles, 96 surface normal cycles, 96 light source cycles, 16 projection cycles), 1,073,856 SH-2 DIVU divisions (24 divides per cube)
- 16,444 cubes/sec: 7,235,360 SH-2 MULT DSP transform/projection operations (440 cycles per cube), 394,675 SH-2 DIVU divisions (8 divides per cube)
- 58,942 cubes/sec: 48,568,208 SH-2 transform/projection/divide cycles (824 cycles per cube)]
- ↑ [92 cycles (23 cycles RTPT, 24 cycles MVMVA, 39 cycles NCCT,[29] 6 cycles delay) per triangle polygon 92 cycles (23 cycles RTPT, 24 cycles MVMVA, 39 cycles NCCT,[29] 6 cycles delay) per triangle polygon]
- ↑ [1040 FLOPS per 16-vertex block, 14 polygons per block, 70 FLOPS per polygon[24]
- Transformation: 528 FLOPS per 16-vertex block (512 multiplies/adds, 16 divides)
- Lighting: 512 FLOPS per 16-vertex block (32 FLOPS per vertex)
- Transformation: 528 FLOPS per 16-vertex block (512 multiplies/adds, 16 divides)
- Lighting: 512 FLOPS per 16-vertex block (32 FLOPS per vertex)]
- ↑ [636 cycles: 348 cycles transformation (116 cycles per vertex), 96 lighting multiplies/adds[24] 636 cycles: 348 cycles transformation (116 cycles per vertex), 96 lighting multiplies/adds[24]]
- ↑ [28.63636 MPixels/s per VDP 28.63636 MPixels/s per VDP]
- ↑ [VDP1: 35.6465 MPixels/s
VDP2: 57.27272 MPixels/s VDP1: 35.6465 MPixels/s
VDP2: 57.27272 MPixels/s] - ↑ [VDP1: 35.6465 MPixels/s
VDP2: 114.54544 MPixels/s VDP1: 35.6465 MPixels/s
VDP2: 114.54544 MPixels/s] - ↑ [VDP1: 28.63636 MPixels/s (447,443 tiles/sec, 8×8 pixel tiles)
VDP2: 534.77376 MPixels/s (8,355,840 tiles/sec, 8×8 pixel tiles) VDP1: 28.63636 MPixels/s (447,443 tiles/sec, 8×8 pixel tiles)
VDP2: 534.77376 MPixels/s (8,355,840 tiles/sec, 8×8 pixel tiles)] - ↑ [33.8688 MPixels/s (529,200 tiles/sec, 8×8 pixel tiles) 33.8688 MPixels/s (529,200 tiles/sec, 8×8 pixel tiles)]
- ↑ [VDP1: 35.646464 MPixels/s
VDP2: 534.77376 MPixels/s VDP1: 35.646464 MPixels/s
VDP2: 534.77376 MPixels/s] - ↑ [67.7376 MPixels/s (1,058,400 tiles/sec) 67.7376 MPixels/s (1,058,400 tiles/sec)]
- ↑ [40 cycles (640 ns) latency per polygon,[31] 1 cycle per pixel, 75 cycles per 35-pixel polygon, 104 cycles per 64-pixel polygon 40 cycles (640 ns) latency per polygon,[31] 1 cycle per pixel, 75 cycles per 35-pixel polygon, 104 cycles per 64-pixel polygon]
- ↑ [40 cycles (640 ns) latency per polygon,[31] 1 cycle per pixel: 140 cycles per 10×10 pixel polygon 40 cycles (640 ns) latency per polygon,[31] 1 cycle per pixel: 140 cycles per 10×10 pixel polygon]
- ↑ [VDP1: 28.536811 MTexels/s (504×255 textures), 20.454542 MTexels/s (10×10 textures), 18.205897 MTexels/s (8×8 textures)[35]
VDP2: 14.31818 MTexels/s (512×256 to 256×512 textures) VDP1: 28.536811 MTexels/s (504×255 textures), 20.454542 MTexels/s (10×10 textures), 18.205897 MTexels/s (8×8 textures)[35]
VDP2: 14.31818 MTexels/s (512×256 to 256×512 textures)] - ↑ [4 KB texture cache, manual tiling[36] 4 KB texture cache, manual tiling[36]]
- ↑ [80 cycles (2x 640 ns) latency per textured polygon,[31] 1 cycle per texel:
- 8272 cycles per 128×64 texel polygon
- 144 cycles per 8×8 texel polygon
- 8272 cycles per 128×64 texel polygon
- 144 cycles per 8×8 texel polygon]
- ↑ [33 MTexels/s,[30] 256×256 textures, 2 KB texture cache, automatic tiling[38] 33 MTexels/s,[30] 256×256 textures, 2 KB texture cache, automatic tiling[38]]
- ↑ [80 cycles (2x 640 ns) latency per textured polygon,[31] 1 cycle per texel:
- 112 cycles per 32-texel polygon
- 180 cycles per 100-texel polygon
- 112 cycles per 32-texel polygon
- 180 cycles per 100-texel polygon]
- ↑ [80 cycles (2x 640 ns) latency per sprite,[31] 1 cycle per texel: 144 cycles per 8×8 texel sprite 80 cycles (2x 640 ns) latency per sprite,[31] 1 cycle per texel: 144 cycles per 8×8 texel sprite]
- ↑ [1 VDP1 plane, 6 VDP2 planes 1 VDP1 plane, 6 VDP2 planes]
- ↑ [1 VDP1 plane, 2 VDP2 planes 1 VDP1 plane, 2 VDP2 planes]
- ↑ [VDP1: 500,000 textured polygons per second
VDP2: Equivalent to 1,000,000 textured polygons per second. 4096×4096 tiled planes can be manipulated as polygons, with scaling, rotation, curved surfaces, and bumps. At 500 pixels per polygon, equivalent to 33,554 textured polygons per frame, at 30 frames per second. VDP1: 500,000 textured polygons per second
VDP2: Equivalent to 1,000,000 textured polygons per second. 4096×4096 tiled planes can be manipulated as polygons, with scaling, rotation, curved surfaces, and bumps. At 500 pixels per polygon, equivalent to 33,554 textured polygons per frame, at 30 frames per second.]
References
- ↑ File:Edge UK 030.pdf, page 99
- ↑ 2.0 2.1 2.2 File:SSM UK 24.pdf, page 25
- ↑ Scavenger Interview, Edge
- ↑ Sega Saturn 3D Capabilities
- ↑ 5.0 5.1 Playstation Specifications (GTE Coordinate Calculation Commands)
- ↑ File:SH7604 Hardware Manual.pdf, page 3
- ↑ File:SH7604 Hardware Manual.pdf, page 22
- ↑ File:PlayStation Hardware.pdf, page 17
- ↑ 9.0 9.1 File:SH7604 Hardware Manual.pdf, page 51
- ↑ 10.0 10.1 File:Hitachi SuperH Programming Manual.pdf, page 308
- ↑ File:NextGeneration US 12.pdf, page 42
- ↑ 12.0 12.1 File:Instruction Tables.pdf, page 101
- ↑ File:SH7604 Hardware Manual.pdf, page 36
- ↑ File:Hitachi SuperH Programming Manual.pdf, page 155
- ↑ 15.0 15.1 Everything You Have Always Wanted to Know about the Playstation (pages 60-61)
- ↑ 16.0 16.1 Team PSX (page 17)
- ↑ MSP Simulation Layer for Vector Unit Computational Divides (RSP)
- ↑ File:Instruction Tables.pdf, page 100
- ↑ 19.0 19.1 File:ST-240-A-SP1-052295.pdf, page 8
- ↑ 20.0 20.1 Design of Digital Systems and Devices (page 97)
- ↑ 21.0 21.1 21.2 3D Polygon Rendering Pipeline (page 50)
- ↑ File:ST-237-R1-051795.pdf, page 51
- ↑ Everything You Have Always Wanted to Know about the Playstation (pages 59-60)
- ↑ 24.0 24.1 24.2 24.3 24.4 24.5 Design of Digital Systems and Devices (pages 95-97)
- ↑ gSPVertex (N64 SDK)
- ↑ File:MMX Technology Architecture Overview.pdf, page 10
- ↑ Design of Digital Systems and Devices (page 95)
- ↑ 28.0 28.1 [Sega DTS, March 1996, DSP Demo Sega DTS, March 1996, DSP Demo]
- ↑ 29.0 29.1 Everything You Have Always Wanted to Know about the Playstation (pages 49-51, 59-67)
- ↑ 30.0 30.1 30.2 30.3 30.4 30.5 [Technical Reference CD (Sony), 12/12/96, Graphics Processing Unit (PlayStation Developer’s Conference, March 1996) Technical Reference CD (Sony), 12/12/96, Graphics Processing Unit (PlayStation Developer’s Conference, March 1996)]
- ↑ 31.0 31.1 31.2 31.3 31.4 31.5 31.6 31.7 RDP Programming, Nintendo 64 Programming Manual, Nintendo
- ↑ Tasmania 3D
- ↑ 33.0 33.1 33.2 33.3 33.4 33.5 33.6 33.7 33.8 33.9 [Technical Reference CD (Sony), 12/12/96, BBS Conference Messages (October 25, 1995) Technical Reference CD (Sony), 12/12/96, BBS Conference Messages (October 25, 1995)]
- ↑ Microcode: Past Microcode, Nintendo 64 Programming Manual, Nintendo
- ↑ 35.0 35.1 35.2 35.3 File:TUTORIAL.pdf, page 8
- ↑ Texture Mapping, Nintendo 64 Programming Manual, Nintendo
- ↑ File:ST-058-R2-060194.pdf, page 132
- ↑ 38.0 38.1 PlayStation GPU documentation
- ↑ Texture Mapping: Restrictions, Nintendo 64 Programming Manual, Nintendo
- ↑ File:NextGeneration US 01.pdf, page 48
- ↑ PlayStation documentation (pages 28-29)
See also