Presentation is loading. Please wait.

Presentation is loading. Please wait.

Virtual frame buffer and VSYNC. fb on GPU fb on GPU Kernel Vfb on XDR Output request from application mmap /dev/fb Every VSYNC, do; - notify VSYNC to.

Similar presentations


Presentation on theme: "Virtual frame buffer and VSYNC. fb on GPU fb on GPU Kernel Vfb on XDR Output request from application mmap /dev/fb Every VSYNC, do; - notify VSYNC to."— Presentation transcript:

1 Virtual frame buffer and VSYNC

2 fb on GPU fb on GPU Kernel Vfb on XDR Output request from application mmap /dev/fb Every VSYNC, do; - notify VSYNC to application - DMA and FLIP request FLIP DMA V field VSYNC to application t DMA Timing chart Vfb on XDR DMA FLIP FLIP req FLIP

3 GPU Kernel vsync Flip done irq FB 0 hvc DMA blocking FLIP req. hvc vsync Flip done FLIP with sync DMA is kicked, if the former FLIP has been done t single frame buffer is used from Xserver,... FB 0

4 User Kernel vsync Flip done FB 0 DMA vsync Flip done FLIP with sync t stop flipping in the kernel ON IOCTL FSEL WAITFORVSYNC IOCTL blocking FB 1 IOCTL FSEL 1st frame buffer OFF end of user application screen size, num of frame buffers SCREENINFO IOCTL FLIP req. 2nd frame buffer WAITFORVSYNC

5 Overview of Linux Installation

6 Linux Area Select “Format utility” menu Game Area Built-in HDD PS3

7 Download Install Other OS Flash Area Select “Install Other OS” menu 0 Boot flag: 0(= Game OS) Distro-A Web Page Kboot for Distro-A Flash Rom Kboot for Distro-A PS3 Memory card/Optical Disc

8 address segment ------- +===============================================+ ---- 0x000000 | “cell_ext_os_area" | 0 +-----------+-----------+-----------+-----------+ 0x000010 | version | offset1 | offset2 | (reserved)| +===========+===========+===========+===========+ 0x000020 | ldr format| ldr size | | +-----------+-----------+ | | | : (reserved) : | | +-----------+-----------------------------------+ ---- 0x000200 | boot flag | (reserved) | 1 +-----------+-----------------------------------+ 0x000210 | | | | : (ext params) : | | +===============================================+ ----- 0x000400 | | 2(offset1) : (Other OS area) : : | | : +===============================================+ ----- | | offset2 : (boot loader area) : : | | : ------- +===============================================+ ----- 0x400000 8192 boot loader image install User changeable *Reserved Area in PS3 System Flash Rom ● Header ● CELL OS Area ● Boot flag could be change by user ● Other OS Area ● Boot Loader Area ● Boot loader image could be installed by user Detail of Format The format could be change. Please refer PS3 website, for up to date information

9 PS3 Select “Default System” menu and set to “Other OS” Boot flag: 0 -> 1 (Other OS) Other OS Flash Area 1 Kboot for Distro-A User can switch which system to be booted though by PS3 System menu. Flash Rom

10 Power on boot flag = 1 PS3 Env Load & exec boot loader from boot loader area Initialize Hardware and mount devices Time out or RET User inputs? Exec default kernel Exec user specified kernel N N Y Y Y N in kboot kboot

11 SPE Programming Environment Overview

12 PPE Linux Kernel PPE Application SPUFS libspe SPE SPE Application newlib vector math library SIMD math library

13 System Overview

14 PPC64 infrastructure Mouse/KBDBluetoothPAD HW Hyper visor HDD/ BD GbE Graphics Mouse/ KBD NETWORK 802.11 Wireless Bluetooth USB audioGbEstorage ALSA ATA virtualization FB VFB disk TCP/IP etc X Video Output Control Video Output Control Linux kernel video output control graphicsaudionetworkstorageUSB function SPUs Audio USB mass SPE support utilslibspe SPU support PS3 support System Bus Platform support PPU SCSI rom

15 Copyright © 2007 Sony Computer Entertainment Inc. Copyright © 2006,2007 Sony Corp. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License". DISCLAIMER OF WARRANTY THIS DOCUMENT IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, OR TITLE; THAT THE CONTENTS OF THE DOCUMENT ARE SUITABLE FOR ANY PURPOSE; NOR THAT THE IMPLEMENTATION OF SUCH CONTENTS WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE DOCUMENT OR THE PERFORMANCE OR IMPLEMENTATION OF THE CONTENTS THEREOF.

16 1st frame buffer 2nd frame buffer offset to 1st fb offset to 2nd fb + 0 (byte) + xres * yres * BPP (byte) xres - 2 * xoff (pixel) yres - 2 * yoff (pixel) xres * BPP (byte) byte to next line yres - 2 * yoff (pixel) mmap address offset


Download ppt "Virtual frame buffer and VSYNC. fb on GPU fb on GPU Kernel Vfb on XDR Output request from application mmap /dev/fb Every VSYNC, do; - notify VSYNC to."

Similar presentations


Ads by Google