Day1-10_DevelopingCodeforCell-DMAandMailboxes-SDK30

Day1-10_DevelopingCodeforCell-DMAandMailboxes-SDK30 - IBM...

Info iconThis preview shows pages 1–7. Sign up to view the full content.

View Full Document Right Arrow Icon
Cell Programming Workshop 3/2/2008 © 2007 IBM Corporation 1 Cell Programming Workshop Cell/Quasar Ecosystem Solutions Enablement
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
© 2007 IBM Corporation Cell Programming Workshop 3/2/2008 2 Class Objectives – Things you will learn ! How MFC commands are used to access main storage and maintain synchronization with other processors and devices in the system ! DMA transfer and how to initiate a DMA transfer from an SPE ! Double buffering and multi-buffering DMA transfers ! Mailboxes for communications messaging Trademarks - Cell Broadband Engine and Cell Broadband Engine Architecture are trademarks of Sony Computer Entertainment, Inc.
Background image of page 2
© 2007 IBM Corporation Cell Programming Workshop 3/2/2008 3 Class Agenda ! MFC Commands ! DMA Commands ! DMA-Command Tag Groups ! DMA Transfers ! DMA To/From Another SPE ! DMA Command Status ! DMA Transfers Example ! Mailboxes ! Reading and Writing Mailboxes ! SPU Write Outbound Mailboxes ! SPU Read Inbound Mailbox ! PPE Mailbox Queue – PPE Calls, SPU Calls ! SPU Mailbox Queue – PPE Calls, SPU Calls
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
© 2007 IBM Corporation Cell Programming Workshop 3/2/2008 4 Cell’s Primary Communication Mechanisms ! DMA transfers, mailbox messages, and signal-notification ! All three are implemented and controlled by the SPE’s MFC
Background image of page 4
© 2007 IBM Corporation Cell Programming Workshop 3/2/2008 5 MFC Commands ! Main mechanism for SPUs to access main storage (DMA commands) maintain synchronization with other processors and devices in the system (Synchronization commands) ! Can be issued either SPU via its MFC by PPE or other device, as follows: Code running on the SPU issues an MFC command by executing a series of writes and/or reads using channel instructions - read channel (rdch), write channel (wrch), and read channel count (rchcnt). Code running on the PPE or other devices issues an MFC command by performing a series of stores and/or loads to memory-mapped I/O (MMIO) registers in the MFC ! MFC commands are queued in one of two independent MFC command queues: MFC SPU Command Queue — For channel-initiated commands by the associated SPU MFC Proxy Command Queue — For MMIO-initiated commands by the PPE or other device
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
© 2007 IBM Corporation Cell Programming Workshop 3/2/2008 6 Sequences for Issuing MFC Commands " All operations on a given channel are unidirectional (they can be only read or write operations for a given channel, not bidirectional) " Accesses to channel-interface resources through MMIO addresses do
Background image of page 6
Image of page 7
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 57

Day1-10_DevelopingCodeforCell-DMAandMailboxes-SDK30 - IBM...

This preview shows document pages 1 - 7. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online