S P O R T
Figure 6.5 A communications interfaces using SPORT peripherals and a Blackfin BF547 DSP is shown. The Blackfin BF547 contains a dedicated USB controller.
Comparison of U RT bus and DSP SPORT bus
lthough the Blackfin U RT peripheral was used in this design, the Blackfin DSP has two synchronous serial ports in addition to the standard U RT bus. The U RT was chosen for the camera modules due to its simplicity but the synchronous serial ports may be more suitable than the U RT in a future design iteration. The Blackfin BF533  datasheet states that the serial port peripherals (SPORTs) support a TDM mode for shared bus access. This would simplify the configuration of the system compared with a shared U RT bus and allow the scheme described to be implemented fully in hardware. This would free the firmware from the burden of sharing the bus and free the bus control signal for another use.
The SPORT peripherals are more complex than the U RT peripherals and the configura- tion and running of these modules could increase the complexity of the software and also the hardware. Data must still be delivered to the PC using a USB port or other high speed bus such as a Firewire IEEE 1394 bus  (at the time of writing USB is the most popular peripheral bus so was the only bus considered). If a SPORT were used then a bridging chip
would be required to bridge between the SPORT bus and the USB.
nalog Devices make
a model of Blackfin processor that contains both a SPORT peripheral and a USB interface.
This chip is the
DSP-BF547  and could be used as a dedicated bridging chip between
the SPORT interface and the USB (Figure 6.5).
The transport layer consists of a communications protocol comprising a packet data format and a state machine that defines the states the protocol can have. From an OO perspective, the protocol is a simple mechanism for serialising and deserialising object data. The proto- col uses a packet structure in which each packet has a one-to-one mapping between itself and an object in the Soft Hub. packet consists of three parts. These parts are framing information, header information, and the actual packet data (Figure 6.6). Each part serves