作者visor (~~~~~~~~~~)
看板Modchip
标题Re: [PS3 ] 关於PS3改机的问题
时间Mon Sep 20 15:29:45 2010
※ 引述《tsairay (火の红宝石)》之铭言:
: 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.
以上这段只说明 PS3 的 usb host controller 是模拟成 PCI device
并没说明他不支援 DMA,而你高亮度的地方也只说明 CPU 可直接操作 usb host
controller 的 operational registers,这里也没说明 PCI device 的 data 是怎麽
传送的,CPU 直接存取 PCI device 的暂存器并不能代表没使用 DMA。
: 至於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.
这边有说明啦 PPC 有一个内建的 DMA engine 了,至於他有没有用他去存取 USB,
我是有看到 linux for ps3 里的 usb driver 有启动 DMA 机制,我还没看到其他资料
有说他是用 PPE 直接读取 usb 的 data,至於 PS3 的 OS 我更无法得知了。
: 而这个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).
以上你的讲法会让懂 DMA 的人笑死.....
: ============================================================================
: 综合以上几点,可以证明PS3的USB传输是会耗用CPU资源的
: 想不耗用资源就只能像NIC那样多加一个DMAC
不管怎样,读取 USB 一定会耗用 CPU 资源,毕竟 CPU 一定要下指令要 USB host
controller 去读取哪个装置上的资料,但是到了资料传输时,就可以省去 CPU 的时间
转交由 DMAC 帮你读取然後将资料转存到 DRAM 上,DMA主要是不让 CPU 去等待 device
回应的时间然後可以做其他事情,也可以减少 CPU 从 device 读资料出来再写回记忆体的
指令数量,并不是什麽用 CPU 去加速 I/O....
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.36.217.198
※ 编辑: visor 来自: 114.36.217.198 (09/20 15:31)
1F:推 cassine:啧~最近流行打脸XD 09/20 15:31
2F:→ visor:而且 usb host controller 是内建在 PPC 内的 09/20 15:35
3F:→ visor:更没理由不支援 DMA,IBM 如果设计出这样的东西,早被骂死 09/20 15:35
4F:→ visor:网路晶片是独立的,他当然需要 DMAC 电路支援 09/20 15:37
※ 编辑: visor 来自: 114.36.217.198 (09/20 15:40)
5F:推 snowwolf725:要战了,老板鸡排要切不要辣~~ 09/20 15:42
6F:推 cassine:老板~我的九层塔要加鸡排 09/20 15:46
7F:推 MaiLu:200元,谢谢惠顾 09/20 15:50
8F:推 tlight:不要去假设专业知识,请去了解他,还是你喜欢别人看戏? 09/20 16:02
9F:→ ntoufatman:老板:我这边没卖花博牌九层塔,你要不要换平价牌? 09/20 16:07
10F:推 cassine:那那……可以改放空心菜吗? 09/20 16:08
11F:→ ntoufatman:这个台风刚过,我库存的等着涨价卖,暂时不卖菜喔! 09/20 16:18
12F:→ narcissusli:老板: 买半斤九层塔,就送你神奇PS3解码棒喔 09/21 04:00