Browse Prior Art Database

Multiplexing an asynchronous command channel on a streaming SPI communication channel with low CPU overhead.

IP.com Disclosure Number: IPCOM000008836D
Original Publication Date: 2002-Jul-17
Included in the Prior Art Database: 2002-Jul-17
Document File: 3 page(s) / 29K

Publishing Venue

Motorola

Related People

Mark Austin Lee: INVENTOR

Abstract

The Synchronous Peripheral Interface SPI interface is a full duplex serial communication interface which is suited for streaming and large data transfers. When a streaming or bulk transfer is initiated; the Master SPI has no way to redirect communication commands to Slave. With the Dragonball CSPI a secondary communication channel can be supported without adding control packets to primary channel.

This text was extracted from a Microsoft Word document.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 59% of the total text.

Multiplexing  an asynchronous command channel on a streaming SPI communication channel with low CPU overhead.

Author:         Mark Austin Lee

Abstract:

The “Synchronous Peripheral Interface” SPI interface is a full duplex serial communication interface which is suited for streaming and large data transfers.   When a streaming or bulk transfer is initiated; the Master SPI has no way to redirect communication commands to Slave.  With the Dragonball CSPI a secondary communication channel can be supported without adding control packets to primary channel.

Body

The “Synchronous Peripheral Interface” SPI interface is a full duplex serial communication interface that can transfer a streaming data channel and when combined with a Direct Memory Access controller “DMA” end to end data transfer can be achieved minimal to no processor overhead. 

Often there is a need to transfer multiple communication channels between microprocessors, this can be accomplished by adding additional HW communications ports (more SPI or UARTS etc.)  or by multiplexing or sharing the bandwidth on the existing SPI channel.  Multiplexing communication channels is often necessary due to limited HW resources.

The SPI is a low level interface that does not have defined communication channels in the protocol; this is an implementation dependent function and not explicitly supported by most HW.  To do this, typically the communications data is arranged in frames where each channel is assigned a data slot in the frame, or by packet...