ANALOG DEVICES EE-236 Service Manual

Engineer-to-Engineer Note EE-236
a
Technical notes on using Analog Devices DSPs, processors and development tools
Contact our technical support at dsp.support@analog.com and at dsptools.support@analog.com Or vi sit our o n-li ne r esou rces htt p:/ /www.analog.com/ee-notes and http://www.analog.com/processors
Real-Time Solutions Using Mixed-Signal Front-End Devices with the Blackfin® Processor
Contributed by Prashant Khullar Rev 1 – May 18, 2004

Introduction

Certain areas of telecommunications infrastructure are evolving towards the creation of smaller, localized wireless networks. These so-called ‘picocells’ can extend wireless connectivity to areas where terrestrial networks are not present. The development of this micro­infrastructure brings about the need for compact devices that can perform some of the tasks traditionally associated with larger wireless base stations.
The Blackfin® family of processors can be gluelessly integrated with a mixed-signal front­end (MxFE) for these and a wide variety of other real-time applications. The Blackfin architecture’s signal processing performance, ease of programmability, and flexible parallel port make it an ideal candidate for such roles. Additionally, MxFE devices integrate the necessary analog front-end functionality onto a single chip with a programmable architecture.

Hardware Architecture

The AD9866 MxFE is chosen for this discussion. The 12-bit data converters (A/D and D/A) on the MxFE connect to the Blackfin’s parallel peripheral interface (PPI) without any external logic. The PPI is a half-duplex 16-bit parallel port which runs at up to half the speed of the Blackfin system clock (SCLK/2). At the
maximum SCLK frequency of 133 MHz, this translates to a PPI update rate of 66 MHz. The MxFE serial interface for control register configuration connects directly to the Blackfin’s serial peripheral interface (SPI). Depending on the application’s bandwidth requirements, a half­duplex or full-duplex implementation can be used. The former can be accomplished using the ADSP-BF531/BF532/BF533 line of processors which have a single PPI.
Full-duplex applications require a dual
!
PPI device such as the ADSP-BF561 symmetric multiprocessor. Such implementations are not discussed in this EE-Note.
As shown in Figure 1, the parallel digital interfaces of the 12-bit ADC and 12-bit DAC connect directly to the Blackfin PPI. A fixed number of samples is transferred directly using DMA from the ADC to a buffer in the processor’s internal memory. Signal processing may then be performed on this block of data before the PPI direction is reversed and the data is transferred out to the DAC.
General-purpose flag pins are used to alternately enable and disable the ADC and DAC in a deterministic fashion. All data transfers are synchronized by a single clock sourced by an oscillator running at frequencies up to 60 MHz.
Copyright 2004, Analog Devices, Inc. All rights reserved. Analog Devices assumes no responsibility for customer product design or the use or application of customers’ products or for any infringements of patents or rights of others which may result from Analog Devices assistance. All trademarks and logos are property of their respective holders. Information furnished by Analog Devices applications and development tools engineers is believed to be accurate and reliable, however no responsibility is assumed by Analog Devices regarding technical accuracy and topicality of the content provided in Analog Devices’ Engineer-to-Engineer Notes.

Figure 1. Hardware Interconnection

a
The serial connection between the Blackfin and AD9866 is used to program the MxFE’s on­board register set. These registers control various aspects of the device’s operation including power management, clocking, programmable gain amplifiers, and interpolation filters.

Software-Controlled Data Flow

To implement such a half-duplex communication scheme, the PPI and DMA controller on the Blackfin processor need to reverse their direction of data transfer at specified intervals. This can be accomplished in software using a block of configuration code placed in an interrupt service routine (ISR). In the tested implementation, a general-purpose timer was used to generate the interrupts that trigger this routine at deterministic intervals. The timer period was chosen empirically such that the time between successive interrupts was adequate to ensure that the ongoing DMA transfer is able to complete and that the ‘turnaround’ code is also able to execute to completion.
the main execution flow and the ISR. The delay involved with reconfiguring the GPIO, DMA, and PPI register sets constitutes the remainder of the turn-around time.
The subsequent quantitative analysis of this dataflow uses the following abbreviations:
N: Number of Samples (Data Window
Size)
CCLK: Blackfin Core Clock Frequency
SCLK: Blackfin System Clock Frequency
DCLK: Data Clock/PPI Clock (synchronizes
MxFE converters and PPI)
RX 0, RX 1: first and second halves of the received
data window, respectively
TX 0, TX 1: first and second halves of the
transmitted data window, respectively
P0, P1: signal processing of first and second
data window halves, respectively
The following benchmarks were obtained empirically:
The latency associated with the DMA/PPI turn­around code has two components. The first is the time associated with switching context between
Real-Time Solutions Using Mixed-Signal Front-End Devices with the Blackfin® Processor (EE-236) Page 2 of 5
Context Switch Latency (Using EX_InterruptHandler with the stack in L1 Data Memory) = ISR Initialization Latency +
Loading...
+ 3 hidden pages