作者tsairay (火の红宝石)
看板Modchip
标题Re: [PS3 ] 关於PS3改机的问题
时间Mon Sep 20 13:59:43 2010
※ 引述《QQ37213 (菇菇)》之铭言:
1F:推 tsairay:楼上的各位,USB在传输的时候是要吃CPU资源的,会变慢是因为 09/20 09:29
2F:→ tsairay:这样,你们focus在错误的地方了... 09/20 09:30
3F:→ visor:楼上肯定没听过 DMA ... 09/20 10:46
4F:推 tsairay:不要把x86的知识套用在ps3上,有DMA那也要他们有做 09/20 10:48
5F:→ visor:..... 谁说只有 x86 有 DMA..... 09/20 10:49
6F:推 tsairay:DMA又不是USB的标准,要有加进去才有,没加就是没有 09/20 10:51
7F:推 flygaga:等到破解後再试试看能不能跑..不就好了@@ 09/20 10:59
8F:→ cassine:有人总是喜欢泼冷水护航,自己又不参与破解别人吃面他喊热 09/20 11:01
9F:→ visor:我看过 linux for ps3 的 usb driver 是有支援 DMA 的 09/20 11:05
10F:→ visor:所以 ps3 的 usb 基本上是支援 DMA 的 09/20 11:05
11F:推 cassine:娃!某楼又被打脸了:P 09/20 11:10
12F:→ visor:我玩过一堆非x86的开发版,至少还没看到不支援 DMA 的 USB 09/20 11:13
http://moss.csc.ncsu.edu/~mueller/cluster/ps3/doc/LinuxKernelOverview.html
看来看去就只有NIC有独立的DMAC,所以能有背景下载
前景游戏照玩的功能
Giga Bit Ethernet(GbE) (Module name: gelic_net)
PS3 has built-in giga bit ethernet controller. Unlike conventional PC’s
ethernet controllers, it is not PCI device. It is connected to companion
chip directly. To access or setup the chip, guest OSes should use dedicated
hypervisor call.
This controller has its dedicated DMA controller,
thus transfer data is automatically sent/received without PPE interventions.
There is also dedicated hypervisor call to set up DMAC.
而USB host controller是直接被PPE access的
USB
PS3 equips industry standard USB EHCI host controller and its companion
OHCI host controllers. Although most USB host controllers are PCI devices,
PS3 USB host controller exists in the companion chip. The PCI probe routines
of Linux are modified so that PS3 USB host controller can imitate PCI device.
After initialization,
all operational registers of USB host controllers are
directly accessed by PPE, so no modification to original Linux USB host
controller driver is needed. PS3 has internal high speed USB hub.
至於visor说的DMA,我想指的是这个
http://en.wikipedia.org/wiki/Cell_%28microprocessor%29
the Cell processor marries the SPEs and the PPE via EIB to give access,
via fully cache coherent DMA (direct memory access), to both main memory
and to other
external data storage.To make the best of EIB, and to overlap
computation and data transfer,
each of the nine processing elements
(PPE and SPEs) is equipped with a DMA engine.
而这个DMA engine的目的不是为了降低在I/O时CPU的负担
而是用CPU去加速I/O
http://en.wikipedia.org/wiki/Direct_memory_access
DMA engine
In addition to hardware interaction, DMA can also be used to
offload
expensive memory operations, such as large copies or scatter-gather
operations, from the CPU to a dedicated DMA engine. Intel includes such
engines on high-end servers, called I/O Acceleration Technology (IOAT).
============================================================================
综合以上几点,可以证明PS3的USB传输是会耗用CPU资源的
想不耗用资源就只能像NIC那样多加一个DMAC
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 211.75.120.194
※ 编辑: tsairay 来自: 220.130.46.98 (09/20 14:00)
13F:推 monHHH:专业推 09/20 14:42
14F:推 nightk:专业推 09/20 16:34
15F:→ SUCKERKING:USB 2.0实际传输速度不如理论基本上跟CPU没有关系, 09/20 23:30
16F:→ SUCKERKING:翻翻spec就知道overhead在哪些地方。 09/20 23:31
17F:→ JackONeilll:的确 网路也是如此 科科 09/20 23:54
18F:→ todotaurus:我想问一个无关紧要的问题,就是为什麽USB2.0做不到理 09/21 01:55
19F:→ todotaurus:论值,却不做好,然後弄一个USB3.0的规格出来呢!? 09/21 01:56
20F:→ todotaurus:对不起,由於看到了一堆USB速度的讨论串,所以就生出莫 09/21 01:57
21F:→ todotaurus:明的疑问...不过好像跟这版没关系@@~ 我左转出去好了 09/21 01:57
22F:推 MAGICXX:因为各种误差 连接处不是100%完全连接之类的系统误差 09/21 01:59
23F:→ MAGICXX:而且大部分的理论环境在地球上都找不到 09/21 02:00
24F:→ MAGICXX:EX:0重力 0摩擦力 绝对低温 等等 这些只有脑补补的出来 09/21 02:01
25F:→ MAGICXX:现实社会中是做不到的 这是坐实验药有的观念Q_Q 09/21 02:01
26F:→ JackONeilll:就像三楼说的 理论值讲的是毛频宽 实际值讲的是净频宽 09/21 03:00
27F:→ JackONeilll:没有做不到 就像开高速公路你不可能车头接车尾吧? 09/21 03:02
28F:→ JackONeilll:行车间距就是那个overhead 真想了解就去google 09/21 03:05
29F:→ narcissusli:有疑惑的话,就去看USB spec..知道packet运作就能理解, 09/21 03:59
30F:→ narcissusli:为何跑不到理论值.封包传送总会有杠龟,需要重送的时候 09/21 04:00