annotate paper/cell.tex @ 2:76144c47b4fc

Initial revision
author akira
date Wed, 13 Feb 2008 17:40:26 +0900
parents
children 3f96fdc6d522
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2
76144c47b4fc Initial revision
akira
parents:
diff changeset
1 \chapter{CELL BROADBAND ENGINE}
76144c47b4fc Initial revision
akira
parents:
diff changeset
2 \section{cell broandband engineの構造}
76144c47b4fc Initial revision
akira
parents:
diff changeset
3 ここでは研究・実験題材の対象となったCellというアーキテクチャーについて説
76144c47b4fc Initial revision
akira
parents:
diff changeset
4 明する。CellはメインプロセッサであるPowerPC Processor Element(PPE)と8個
76144c47b4fc Initial revision
akira
parents:
diff changeset
5 のデータ処理プロセッサアーキテクチャーSynergistic Processor Element(SPE)からな る非対称なマルチコアプロセッ
76144c47b4fc Initial revision
akira
parents:
diff changeset
6 サでなり、リングバスで構成されている。(図\ref{fig:cell})
76144c47b4fc Initial revision
akira
parents:
diff changeset
7 \begin{figure}[htb]
76144c47b4fc Initial revision
akira
parents:
diff changeset
8 \begin{center}
76144c47b4fc Initial revision
akira
parents:
diff changeset
9 \includegraphics[width=17cm]{./fig/cell.eps}
76144c47b4fc Initial revision
akira
parents:
diff changeset
10 \end{center}
76144c47b4fc Initial revision
akira
parents:
diff changeset
11 \caption{cell}
76144c47b4fc Initial revision
akira
parents:
diff changeset
12 \label{fig:cell}
76144c47b4fc Initial revision
akira
parents:
diff changeset
13 \end{figure}
76144c47b4fc Initial revision
akira
parents:
diff changeset
14 \\
76144c47b4fc Initial revision
akira
parents:
diff changeset
15 PPEはCell Broadband Engineのメインプロセッサで、複数のSPUをコアプロセッ
76144c47b4fc Initial revision
akira
parents:
diff changeset
16 サとして使用することができる汎用プロセッサで、オペレーティングシステムの役割であるメインメモリや外部デバイスへの入出力制御を行います。
76144c47b4fc Initial revision
akira
parents:
diff changeset
17 %Cellの内部でのデータ通信はDMAで行われCPUに負担をかけない。\\
76144c47b4fc Initial revision
akira
parents:
diff changeset
18 \subsection{spe}
76144c47b4fc Initial revision
akira
parents:
diff changeset
19 SPEは
76144c47b4fc Initial revision
akira
parents:
diff changeset
20 %128個の128ビット汎用レジスタと256kbのローカルストア(LS)と呼ばれる専用メモリを備えたSIMD構成のアーキテクチャーとなっており、
76144c47b4fc Initial revision
akira
parents:
diff changeset
21 PPEのような複雑な制御よりも計算を単純に繰り返すマルチメディア系の処理を得意とする演算系プロセッサコアです。(図\ref{fig:spe}参照)
76144c47b4fc Initial revision
akira
parents:
diff changeset
22 %メインメモリ上のプログラムとデータは直接扱えず、MFCを用いてメインメモリとLS間の転送を行う必要がある。
76144c47b4fc Initial revision
akira
parents:
diff changeset
23 SPUとMFCから構成され、SPUは独自規格の命令セットを持ち、各々のSPUはLocal Store(LS)とよばれる256kbのメモリ量を持ちます。LSは各SPUから直接参照できる唯一のメモリです。MFCはメインメモリや他のSPEなどとデータをやり取りするためのユニットで、SPUはチャネルというインタフェースを介してMFCに対してデータ転送などを依頼し、各々のSPUが持つLSにメインメモリ上のデータなどを転送します。
76144c47b4fc Initial revision
akira
parents:
diff changeset
24 \begin{figure}[htb]
76144c47b4fc Initial revision
akira
parents:
diff changeset
25 \begin{center}
76144c47b4fc Initial revision
akira
parents:
diff changeset
26 \includegraphics{./fig/spe.eps}
76144c47b4fc Initial revision
akira
parents:
diff changeset
27 \end{center}
76144c47b4fc Initial revision
akira
parents:
diff changeset
28 \caption{spe}
76144c47b4fc Initial revision
akira
parents:
diff changeset
29 \label{fig:spe}
76144c47b4fc Initial revision
akira
parents:
diff changeset
30 \end{figure}
76144c47b4fc Initial revision
akira
parents:
diff changeset
31
76144c47b4fc Initial revision
akira
parents:
diff changeset
32 % ここでPPEとSPEの詳細必要?
76144c47b4fc Initial revision
akira
parents:
diff changeset
33 %http://www.cellusersgroup.com/modules/feature/co_tutorial/ch01s01s02.php
76144c47b4fc Initial revision
akira
parents:
diff changeset
34 %http://cell.fixstars.com/ps3linux/index.php/1.2 Cellの物理構成
76144c47b4fc Initial revision
akira
parents:
diff changeset
35 % wikipedia
76144c47b4fc Initial revision
akira
parents:
diff changeset
36 % SPE単体の図とか
76144c47b4fc Initial revision
akira
parents:
diff changeset
37 % とりあえず保留
76144c47b4fc Initial revision
akira
parents:
diff changeset
38 \section{cellの基本機能}
76144c47b4fc Initial revision
akira
parents:
diff changeset
39 \subsection{SIMD}
76144c47b4fc Initial revision
akira
parents:
diff changeset
40 Cellは基本的にあらゆるものを並列的に計算できるような構造になっている。SPUに実装されている128ビットレジスタもSIMDを行うために設計されている。通常は32ビットのデータを4回計算できるところを1回の計算で行うことができる。
76144c47b4fc Initial revision
akira
parents:
diff changeset
41 \subsection{メールボックス}
76144c47b4fc Initial revision
akira
parents:
diff changeset
42 メールボックスは、PPEとSPE間で通信するための機構の一つです。DMA転送はメインメモリとLSとの間で最大16Kバイトの大きなデータの受け渡しを行います。それに対し、メールボックスはステータスの変化などの小さなデータ受け渡し向けで、PPEとSPEとの間で双方向のデータの受け渡しが可能です。メールボックスはFIFOキュー構造になっており、3つの振る舞いができるよう設計されています。(図\ref{fig:Mailbox}参照)\\
76144c47b4fc Initial revision
akira
parents:
diff changeset
43 \begin{figure}[htb]
76144c47b4fc Initial revision
akira
parents:
diff changeset
44 \begin{center}
76144c47b4fc Initial revision
akira
parents:
diff changeset
45 \includegraphics[width=17cm,height=10cm]{./fig/Mailbox.eps}
76144c47b4fc Initial revision
akira
parents:
diff changeset
46 \end{center}
76144c47b4fc Initial revision
akira
parents:
diff changeset
47 \caption{Mailbox}
76144c47b4fc Initial revision
akira
parents:
diff changeset
48 \label{fig:Mailbox}
76144c47b4fc Initial revision
akira
parents:
diff changeset
49 \end{figure}
76144c47b4fc Initial revision
akira
parents:
diff changeset
50 \begin{enumerate}
76144c47b4fc Initial revision
akira
parents:
diff changeset
51 \item SPU Inbound Mailbox\\
76144c47b4fc Initial revision
akira
parents:
diff changeset
52 PPEからSPEへデータを渡すためのキューで、最大4個までのデータを蓄積できます。もし、SPEがキューを読むときにキューにデータをない場合は、キューにデータが書き込まれるまで待ち続けます。
76144c47b4fc Initial revision
akira
parents:
diff changeset
53 \item SPU Outbound Mailbox\\
76144c47b4fc Initial revision
akira
parents:
diff changeset
54 SPEからPPEへデータを渡すためのキューでSPU Inbound Mailboxと同様にデータがない場合はデータが書き込まれるまで待ち続けます。一番の違いはデータが1個までしかキューに格納できないことです。
76144c47b4fc Initial revision
akira
parents:
diff changeset
55 \item SPU Outbound Intterupt Mailbox\\
76144c47b4fc Initial revision
akira
parents:
diff changeset
56 SPU Outbound Mailboxとほとんど同じですが、SPU Outbound Interrupt MailboxではSPEからキューにデータが書き込まれると、PPEに対して割り込みイベントが発生しデータの読み出しタイミングを通知することができます。
76144c47b4fc Initial revision
akira
parents:
diff changeset
57 \end{enumerate}
76144c47b4fc Initial revision
akira
parents:
diff changeset
58 \subsection{パイプライン}
76144c47b4fc Initial revision
akira
parents:
diff changeset
59 CellはDMAの機能を持っているので、パイプライン的な処理が可能となる。基本的な要素としてRead、Exec、Writeから構成できる。(図\ref{fig:pipeline})\\
76144c47b4fc Initial revision
akira
parents:
diff changeset
60 \begin{figure}[htb]
76144c47b4fc Initial revision
akira
parents:
diff changeset
61 \begin{center}
76144c47b4fc Initial revision
akira
parents:
diff changeset
62 \includegraphics{./fig/pipeline.eps}
76144c47b4fc Initial revision
akira
parents:
diff changeset
63 \end{center}
76144c47b4fc Initial revision
akira
parents:
diff changeset
64 \caption{pipeline実行}
76144c47b4fc Initial revision
akira
parents:
diff changeset
65 \label{fig:pipeline}
76144c47b4fc Initial revision
akira
parents:
diff changeset
66 \end{figure}
76144c47b4fc Initial revision
akira
parents:
diff changeset
67