TI GC1115

GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
Crest Factor Reduction Processor
FEATURES
APPLICATIONS
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Significantly Reduces Signal Peaks to ≥ 6 dB
PAR
One 20-MHz or 2 Independent 10-MHz
Channels
Programmable Output PAR Down to 6 dB
Programmable Cancellation Pulse Coefs
Meets 3GPP TS 25.141 Down to 6 dB PAR
Meets cdma2000 C.S0010 Down to 6 dB PAR
256-ball PBGA Package, 17 × 17 mm
1.2-V Core, 3.3 V I/O
3GPP (W-CDMA) Base Stations
3GPP2 (cdma2000) Base Stations
CDMA Multi-Carrier Power Amps (MCPAs)
CFR Reduction of OFDM, HSDPA Signals
Two-Channel Transmit Diversity Applications
Operates with TI DAC5687 (500 Msps)
DESCRIPTION
The GC1115 is a flexible, programmable, wideband crest factor reduction (CFR) processor with a maximum
composite bandwidth of 20 MHz. The GC1115 selectively reduces the peak-to-average ratio (PAR) of wideband
digital signals provided in quadrature (I & Q) format, such as those used in third-generation (3G) code division
multiple access (CDMA) wireless applications. By reducing the PAR of digital signals, the efficiency of follow-on
power amplifiers (PAs) is improved, the D/A converter requirements are eased, and the out-of-band spectral
regrowth caused by simple hard limiting is eliminated.
By including the GC1115, manufacturers of 3G BTS equipment can realize significant savings on power amplifier
costs. The GC1115 meets multi-carrier 3G performance standards (PCDE, composite EVM, and ACLR) at PAR
levels down to 6 dB. The GC1115 integrates easily into the transmit signal chain, between a digital upconverter
such as the Texas Instruments GC5016 or GC5316 and a high-quality D/A converter, such as the Texas
Instruments DAC5675 or DAC5687.
The GC1115 uses four cascaded stages of peak detection and cancellation (PDC) to remove over-threshold
peaks from the input signal. Each PDC stage can be independently programmed with detection target peak
levels and cancellation pulse coefficients. A pool of 32 cancellation pulse generators can be flexibly assigned in
groups of 4 to any PDC stage. Spectrally shaped cancellation pulses are designed using any of the widely
available FIR filter design programs, such as those from Matlab™, ADS™, etc. Cancellation pulses are designed
to match the user’s carrier frequency allocation. Cancellation pulse energy is bandlimited and thus is only added
within allocated carrier bands. The GC1115’s peak cancellation algorithm does not affect the signal’s ACLR.
Input sampling rates to 130 Msamp/sec are supported, in either parallel or multiplexed I/Q modes, and in either
twos complement or unsigned format. Output sampling rates to 130 Msamp/sec are supported in either parallel
or multiplexed I/Q modes, and in either twos complement or unsigned format. A special one-channel output
mode uses both GC1115 output ports to carry odd/even real output samples. The GC1115 includes an
interpolator that increases the output sampling rate by 2x or 4x and optionally modulates the output signal to the
fs/4 center frequency. Dual on-chip RAM banks provide either time-domain snapshots or long-term
histogramming of the internal peak cancellation signal chain at five user-selected points, enabling real-time
monitoring of the CCDF function. A power level meter monitors either the GC1115 input or output power level.
Please be aware that an important notice concerning availability, standard warranty, and use in critical applications of Texas
Instruments semiconductor products and disclaimers thereto appears at the end of this data sheet.
PRODUCTION DATA information is current as of publication date.
Products conform to specifications per the terms of the Texas
Instruments standard warranty. Production processing does not
necessarily include testing of all parameters.
Copyright © 2005, Texas Instruments Incorporated
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
FUNCTIONAL BLOCK DIAGRAM
VDD
(40)
VSS
(64)
VDDSHV
(31) VDDA1 VSSA1
CORE_CLK
VSS1
VDD1
.
PLL1
VDDA2 VSSA2
.
PLL2
LOOP
(NC)
IN_CLK
32 Cancellation Pulse Generators
(allocate to PDC Stages in groups of 4)
IN_A[17:0]
IN_B[17:0]
PDC
Stage
1
PDC
Stage
2
PDC
Stage
3
PDC
Stage
4
Interp
2x, 4x
+ fs/4
Soft
Limiter
&
Output
Format
SYNC_A_
SYNC_B_
Test Signal
Generator
Sync
Control
JTAG[4:0]
Snapshot RAM
Input Selector
Snapshot
RAM A
TEST_MODE
Interrupt
Generator
.
..
..
.
OUT_IQ_SEL
OUT_A[17:0]
OUT_B[17:0]
SYNC_OUT_
CRC
Gen.
Snapshot
RAM B
OUT_CLK
VPP
(NC)
Microprocessor Registers
A[7:0]
D[15:0]
CS_
RD_ WR_
INT_
RESET_
Related Documents
•
•
•
•
GC1115 Evaluation Module (EVM) User’s Guide
Application Note: GC1115 Configuration for UMTS (W-CDMA) Base Stations
Application Note: GC1115 Configuration for 3GPP2 (cdma2000) Base Stations
Matlab code for cancellation pulse design
ORDERING INFORMATION
2
TA
PACKAGE
DEVICE
-40°C to 85°C
256-PBGA Plastic Ball Grid Array
GC1115IZDJ
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
INTRODUCTION
Figure 1 shows the typical usage of the GC1115 crest factor reduction processor in the transmit signal chain of a
wireless base station.
GC5016,
GC5316,
or
other DUC
GC1115
D/A
RF
upconversion
PA
Microproc.
or
TI DSP
Figure 1. Wireless System Using the GC1115
The GC1115 is initialized and controlled using an 8-bit address (A) and a 16-bit data (D) bus. These pins, along
with the read (RD), write (WR), and chip select (CS) pins, allow users to modify the control registers of the
GC1115.
Signals are provided to the GC1115 using two 18-bit input ports, IN_A[17:0] and IN_B[17:0], which are typically
driven by a digital upconverter such as the GC5016, GC5316, or similar. The GC1115 can accept either one or
two input channels.
When the GC1115 is configured to process two input channels, IN_A[17:0] carries channel 0’s multiplexed I & Q
samples, while IN_B[17:0] carries channel 1’s multiplexed I & Q samples. The GC1115 output samples are
provided to a D/A converter using two 18-bit output ports, OUT_A[17:0] and OUT_B[17:0]. The GC1115 output
may appear on one or both output ports, depending on which output mode (real or complex; parallel or
multiplexed; odd-even) is selected.
NOTE:
The D/A converter must not use the GC1115’s OUT_CLK signal. OUT_CLK is for test
purposes only. OUT_CLK’s phase is not aligned with the data on the OUT_A and
OUT_B ports. OUT_CLK may contain jitter in excess of that required to clock
high-speed D/A converters.
Why Cancel Peaks?
The purpose of the GC1115 is to lower the peak-to-average ratio (PAR) of composite digital communication
signals. Specifically, wideband code division multiple access (W-CDMA) and orthogonal frequency division
multiplexed (OFDM) signals have high peak-to-average ratios (PARs) ranging from 10 dB to 15 dB. After D/A
conversion, a power amplifier (PA) amplifies the resulting analog signal. In order to accommodate the high PAR
of W-CDMA and OFDM signals, the peak signal level must be at or below the 1 dB compression point of the PA,
which is usually accommodated by backing off the input drive to the power amplifier.
Figure 2 illustrates the effects of a decrease in peak-to-average ratio on a PA’s Vin vs Vout graph.
3
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
Vout
7 dB
output PAR
GC1115
provides
6 dB peak
reduction
1 dB Compression Point
(maximum output)
Input Signal
Average Power
(0 dB Point)
PA efficiency before GC1115:
Avg PA output (10 W )
= 8%
DC power (125 W)
13 dB
input PAR
Vin
Figure 2. Reducing the Peak-to-Average Ratio (PAR)
However, since the peak-to-average ratio of CDMA signals is so high, the average power is relatively low,
consequently resulting in a low PA efficiency (output power divided by input power). By decreasing the
peak-to-average ratio, the average power of the peak-reduced signal at the output of the GC1115 can be
increased, decreasing PA back-off thus also increasing PA efficiency.
Figure 3 illustrates that the decrease in PAR can then be used to increase the average signal power while still
keeping the peaks below the PA’s 1 dB compression point. The GC1115 can typically limit the output PAR of
CDMA signals to between 6 dB and 7 dB while still meeting all relevant 3GPP or 3GPP2 requirements. This
decreased PAR enables a 2 dB to 3 dB increase in PA drive, which in turn allows PA manufacturers to achieve 2
dB to 3 dB more PA output power. As PAs represent a significant percentage of the capital equipment cost of
base stations, using a 10 W PA instead of a 20 W PA (for example) significantly decreases base station costs.
V out
7 dB
output PAR
6 dB less
PA back −off
Input Signal
Average Power
1 dB Compression Point
(maximum output)
PA efficiency after GC1115:
Output Signal
Average Power
Avg PA power (20 W)
DC power (125 W)
13 dB
input PAR
V in
Figure 3. Increasing PA Efficiency
4
= 16%
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
How Peak Cancellation Works: Time Domain View
Figure 4 provides a time-domain example of GC1115 operation. Figure 4 shows the magnitude of the complex
input signal in blue, and the magnitude of the complex, peak-reduced signal (after GC1115 processing) in red.
[Note: for users who print this data sheet on a black-and-white printer, the input signal is a solid line, while the
output signal is a finely dotted line.] Notice that for most of the 130 samples in this example, the red output
waveform is identical to the blue input waveform. However, the GC1115 has reduced the magnitude of samples
around two peaks (one at sample 63, one at sample 95) that exceed the detection threshold. The aqua-colored
waveform above the gain threshold line demonstrates the magnitude of the cancellation pulse that was
subtracted from the complex input waveform. Notice that the GC1115’s PDC stages each have two independent
thresholds:
1. Detection threshold: interpolated peaks above the detection threshold are candidates for cancellation
2. Target peak level: detected peaks will be reduced to the target peak level, assuming cancellation resources
are available
Independent detection and target peak levels allow the GC1115 greater flexibility in peak reduction processing.
4
7
x 10
Detection Threshold
6
Target Peak Level
5
4
3
2
1
0
0
20
40
60
80
100
120
140
Figure 4. Peak Cancellation Example: Time Domain
How Peak Cancellation Works: Frequency Domain View
Figure 5 demonstrates the frequency-domain effects of peak cancellation. In Figure 5, the original signal’s
frequency response is shown in blue. The output signal’s frequency response looks identical and is not shown.
The yellow (8 dB PAR), red (7 dB PAR), green (6 dB PAR), and black (5 dB PAR) curves show the spectra of
just the added signal (GC1115 input – GC1115 output) to achieve peak reduction. The difference between the
input and output signals is the signal distortion. [Note: for users who print this data sheet on a black-and-white
printer, the input spectrum is a solid line, while the output spectra are finely dotted lines.] Note that the distortion
is not significant in the spectral response:
1. The out-of-band energy of the distortion added by the GC1115 during peak cancellation is 70 to 80 dB below
the signal and hence is not an issue. The out-of-band energy is only a weak function of the target PAR level.
2. The amount of in-band distortion energy rises with decreasing output PAR. This is to be expected, because
lower PAR thresholds result in more peaks being canceled. Lower PAR levels require more energy to cancel
the peaks, thus increasing the distortion level.
5
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
The GC1115 reduces the amplitude of peaks in a way that keeps the out-of-band (ACLR) energy well below
required levels. Users can determine how much in-band distortion is acceptable by monitoring the effects of peak
cancellation at a given output PAR, using two key in-band distortion metrics for CDMA signals:
1. peak code domain error, or PCDE, and
2. composite error vector magnitude, or EVM
Various CFR signal quality metrics (ACLR, PCDE, EVM, CCDF) will be further discussed in a subsequent
section.
Power spectral density: input (blue) & distortion (red)
100
80
Input Spectrum
60
Distortion Spectrum,
5 dB Output PAR
40
Distortion Spectrum,
8 dB Output PAR
20
0
−20
−4
−3
−2
−1
0
1
2
3
4
x 10
7
Figure 5. Spectral View of Distortion
SUMMARY OF GC1115 FEATURES
Refer to the GC1115 functional block diagram for the following discussion.
The GC1115 removes peaks from an input signal stream by subtracting user-designed, spectrally shaped
cancellation pulses from detected peaks in the input waveform that are above a user-specified detection
threshold. The cancellation pulse’s spectral shape matches that of the GC1115 input signal’s single- or
multi-carrier configuration. This cancellation pulse design methodology ensures that energy is only added into
frequency bands where signal energy is located, minimizing out-of-band energy that could otherwise increase
ACLR/ACPR.
Cancellation pulses may be real or complex. Real cancellation pulses are used when the input signal spectrum is
symmetric, while complex cancellation pulses are used when the input signal spectrum is asymmetric. A single
cancellation pulse reduces the peak amplitude of multiple samples around each signal peak while maintaining
both the in-band (PCDE, cEVM) and out-of-band (ACLR) signal quality requirements. Peaks are cancelled to a
user-specified level, which is called the output peak-to-average ratio, or PAR. The GC1115 provides four
sequential peak detection and cancellation (PDC) stages to remove peaks. The PDC stage thresholds are
normally set so that earlier stages remove the largest peaks, while later stages remove smaller, remaining peaks.
6
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
During peak detection, an effective 256x oversampling process identifies the exact magnitude and location of
interpolated peaks. In other words, the interpolated waveform approximates the output of the follow-on D/A
converter. The interpolated waveform can therefore have a larger amplitude than any of the D/A’s individual input
samples. The GC1115’s effective 256x oversampling allows both the magnitude and the location of peaks (after
D/A conversion) to be predicted prior to the actual D/A conversion process. If the magnitude of the interpolated
peak is above the detection threshold of the PDC stage, the peak is a candidate for peak cancellation. Detected
peaks are always cancelled, unless all of the cancellation resources assigned to a given stage are already busy.
When all of a PDC stage’s cancellation resources are already busy canceling other peaks, subsequent PDC
stages will again detect and cancel the missed peak, if that stage’s resources allow.
The GC1115 contains a total of 32 cancellation pulse generators (also called cancelers) per channel that are
allocated in groups of four to PDC stages. The normal allocation of the 32 cancelers is as follows:
• PDC Stage 1 uses 4 cancelers
• PDC Stage 2 uses 8 cancelers
• PDC Stage 3 uses 12 cancelers
• PDC Stage 4 uses 8 cancelers
The allocation of cancelers should correspond to the detection threshold (DETECT_TSQD) for each PDC Stage.
A PDC stage with a lower detection threshold will find more peaks than a PDC stage with a higher detection
threshold. As mentioned above, the detection threshold for PDC stages 1 and 2 is set to detect and cancel the
largest peaks (typically those above 8 or 9 dB PAR), while PDC stages 3 and 4 detect and cancel peaks at the
desired output PAR (typically between 6 and 8 dB). Since the largest peaks are the ones that would cause the
most distortion in the PA if they were not cancelled, setting the detection threshold higher in PDC Stages 1 and 2
ensures that the large peaks will be canceled.
Cancellation pulse coefficients are stored in special GC1115 RAM blocks. The GC1115 RAM blocks can store up
to 256 real or 128 complex cancellation pulse coefficients and their associated first and second derivatives.
Cancellation coefficients are signed, 12-bit integer value between –2048 and +2047. Each cancellation coefficient
RAM supports up to four cancelers. Cancellation pulse generator RAMs assigned to the same stage normally
contain the same coefficients, but each of the GC1115’s eight cancellation RAMs may contain different
coefficients. The cancellation pulse coefficients are normalized, i.e. the largest coefficient magnitude is always
+2047 (1.0). However, both the magnitude and the phase of the normalized cancellation pulses are adjusted
before the cancellation pulse is added to the input waveform during peak cancellation, ensuring proper alignment
with the samples of the input signal.
While the subtraction of cancellation pulses reduces the peak amplitude in the region immediately surrounding a
detected peak, this subtraction may also introduce new, smaller, over-threshold peaks away from the region of
the peak. This phenomenon is called peak regrowth. Peak regrowth is an infrequent phenomenon whose effects
are mitigated by using four serial PDC stages. If Stage N causes peak regrowth, Stage N+1 and subsequent
stages will detect and cancel the regrowth peaks, assuming the PDC stages have available pulse cancelers.
Regrowth peaks, when they occur, are usually just a few percent (or less) over the PAR threshold.
Following the four PDC stages, the GC1115 also contains an interpolator and a soft limiter. When enabled, the
interpolator supports 2x real, 2x complex, and 4x real interpolation. The real output modes also modulate the
signal by fs/4. The soft limiter acts as a fixed-length AGC that optionally attenuates the input signal over a
fixed-length window of up to 33 samples surrounding the detected over-threshold peak. Under nearly all
circumstances, the soft limiter should be bypassed.
The GC1115 operates most efficiently when there are at least 2.5 complex samples per Hertz of bandwidth. For
example, a four-carrier (20 MHz) 3G stack should be sampled at no less than 50 Msamp/sec, while a
single-carrier 3G system can be sampled as low as 12.5 Msamp/sec. Under certain circumstances, the input
signal can be represented using as few as 2.0 complex samples per Hz.
The GC1115 contains two flexible, user-programmable snapshot RAMs. The snapshot memories operate either
in capture or in histogram mode. In the capture mode, 1024 consecutive I and Q samples are stored in one of
the snapshot RAMs. During capture mode, 32 bits per complex sample (16 bits I, 16 bits Q) are captured. The
lower 2 LSBs of each real and imaginary 18-bit sample are dropped.
Each of the two snapshot RAMs receives samples from one of five user-selected test probe points:
1. At the GC1115 input
2. After PDC Stage 1
7
GC1115
SLWS144 – FEBRUARY 2005
www.ti.com
3. After PDC Stage 2
4. After PDC Stage 3
5. After PDC Stage 4
When operating in histogram mode, the snapshot RAMs generate a histogram of the real part, the imaginary
part, or the power of each complex sample. In histogram mode, millions of samples can be characterized using
the snapshot RAM’s 32-bit bin counters, thus providing a statistically significant number of events for CCDF and
related magnitude distribution measurements.
Each of the GC1115’s PDC stages can be bypassed by clearing a corresponding bit in the CONTROL register.
Although bypassing a stage removes that stage’s peak cancellation capability, it also removes the latency
introduced by the peak detection and cancellation process itself, and reduces power consumption as well.
The GC1115 includes an on-chip test signal generator that can create DC levels, sawtooth waveforms, and a
filtered random number generator with Gaussian-like peak-to-average statistics (i.e. approximately 10 dB PAR).
In conjunction with a CRC generator, the test signal generator can be used to verify proper, expected behavior of
the GC1115 without applying an input signal to the GC1115 IN_A and IN_B ports. The CRC generator processes
the GC1115 output samples and generates a periodic, 16-bit checksum. Since both the test signal generator and
the CRC generator can be synchronized to the same sync source, the presence of a predictable, periodic value
in the CRC register indicates that the GC1115 internal circuitry is operating as expected. TI provides several
GC1115 configurations (starting test generator register values, sample periods, and expected CRC value at the
end of each period) that enable GC1115 users to test for proper GC1115 internal operation. The test signal
generator can also be used without the CRC generator, providing a suite of general-purpose test signals (DC,
sawtooth, pseudo-LFSR) to exercise ICs attached to the GC1115 output ports, OUT_A and OUT_B.
CFR PERFORMANCE METRICS FOR CDMA SIGNALS: CCDF, ACLR, PCDE, cEVM
The GC1115 reduces peaks by subtracting spectrally shaped waveforms from detected peaks in the input signal
whose interpolated magnitude is above a user-specified output PAR threshold. Researchers in peak reduction
techniques use a graph called the complementary cumulative distribution function, or CCDF, to display the
probability that a particular sample has a given magnitude. The x-axis of a CCDF curve begins at 0 dB, defined
as the average power of the signal, and extends to the peak value of the waveform. The y-axis of a CCDF curve
lists the probability (usually on a log scale) that a given complex sample has a certain magnitude. Plotting the
before and after CCDF curves on the same graph demonstrates that the GC1115 peak reduction algorithms
have achieved their primary purpose: reducing peaks to a user-specified level. In Figure 6, the input CCDF curve
is shown in blue and the output CCDF curve (after GC1115 peak reduction) is shown in red.
8
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
Complementary Cumulative Distrib
Function
2
10
1
10
CCDF Curve
After Peak
Reduction
0
10
% of
samples
−1
10
−2
10
CCDF Curve
Before Peak
Reduction
−3
10
−4
10
0
2
4
6
8
10
12
Sample Power (mean sample power = 0
14
Figure 6. Example Complementary Cumulative Distribution Function (CCDF)
Because the GC1115 modifies samples of the input waveform during peak reduction, the peak reduction process
introduces certain distortions. The nature of these distortions is well understood and is under the user’s control.
GC1115 users have great flexibility in determining the overall distortion level. Distortion can be quantified in
several ways:
• By analyzing the spectrum of the distortion (input–output) signal
• By analyzing the out-of-band output noise level in neighboring channels (also called the adjacent channel
leakage ratio, or ACLR)
• By measuring a composite error vector magnitude (cEVM) level
• By determining the interference level (caused peak reduction) in the CDMA code noise floor; this metric is
called the peak code domain error, or PCDE
• By monitoring bit error rate (BER) at the receiver
The two dominant 3G standards, W-CDMA (3GPP) and cdma2000 (3GPP2), have developed a set of
standardized requirements for ACLR, cEVM, and PCDE. Because a wide variety of valid CDMA waveforms exist,
the 3G standards bodies have also specified a set of test waveforms called test models to verify all elements in
the downlink signal processing chain. Test models also allow BTS developers to compare the performance of
competing signal processing devices, including crest factor reduction processors, on identical input signals.
Texas Instruments quantified GC1115 behavior with extensive 3G Test Model 1, Test Model 3, and Test Model 5
signals, and in both single-carrier and multi-carrier configurations. For all tests, TI measured the following
parameters:
• CCDF
• ACLR
• PCDE
• CEVM
The following paragraphs review the relevant 3G requirements for these parameters. Subsequent sections
present test results that demonstrate the GC1115’s ability to meet all relevant 3G requirements at output PAR
levels to 6 dB.
9
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
Relevant 3GPP (W-CDMA) Requirements
The GC1115 is designed to meet the following 3GPP specifications. The Test Models used to verify these
specifications are described in 3GPP TS 25.141, Section 6.1.1 of Release 6 (2002-12).
• ACLR: At least 45 dB ACLR at 5 MHz below the first (or above the last) active W-CDMA carrier in the band,
and at least 50 dB ACLR at 10 MHz below the first (or above the last) active W-CDMA carrier in the band,
(TS 25.141, Section 6.5.2.2), using Test Model 1.
– NOTE: The GC1115 supports > 70 dB ACLR using 85-tap cancellation pulses or longer.
• EVM: ≤ 17.5% for QPSK modulation (TS 25.141, Section 6.7.1), using Test Model 4.
– NOTE: The GC1115 provides ≤ 17.5% cEVM for all Test Models with output PAR down to 6 dB.
• PCDE: ≤– 33 dB (TS 25.141, Section 6.7.2), using Test Model 3.
– NOTE: The GC1115 provides ≤ -33 PCDE for all Test Models with output PAR down to 6 dB.
• Spurious emissions: various (TS 25.141, Section 6.5.3), using Test Model 1.
Relevant cdma2000 Requirements
Ref. 3GPP2 C.S0010-A (March 30, 2001):
• Section 4.2: Modulation Requirements (Rho – waveform quality)
• Section 4.3: RF Output Power Requirements
• Section 4.4: Limitations on Emissions
SUMMARY OF GC1115 PERFORMANCE USING 3G TEST MODEL SIGNALS
Table 1. 3GPP PCDE and Composite EVM Performance
3G Test Signal
# of cxrs
PCDE (Spec: < -33 dB)
Composite EVM (Spec: < 17.5%)
8 dB
7 dB
6 dB
5 dB
8 dB
7 dB
6 dB
5 dB
TM1_64
1
–50.7
–46.2
–41.7
–38.3
3.3%
5.4%
8.5%
11.7%
TM1_64
2
–50.1
–45.6
–42.2
–37.8
3.4%
5.8%
8.7%
12.7%
TM1_64
4
–49.8
–47.2
–43.3
–39.8
3.9%
4.9%
7.6%
10.8%
TM3_32
1
–46.3
–41.4
–37.1
–34.4
3.9%
6.5%
9.7%
13.5%
TM3_32
2
–44.5
–42.3
–38.2
–36.3
4.5%
7.0%
9.3%
12.3%
TM3_32
4
–42.5
–39.1
–35.6
–34.2
7.0%
10.0%
13.2%
15.5%
Test Conditions:
a. Each simulation processed 614,400 input samples (one 10 msec frame at 61.44 Msamp/sec)
b. PCDE and composite EVM were measured using a Rohde & Schwarz FSU
c. Cancellation pulse lengths varied from 75 to 181
d. ACLR depends mostly on cancel pulse length. Cancel pulse lengths of 85 achieve –70 dB ACLR for
four-carrier UMTS signals. Cancel pulse lengths of 115 achieve –70 dB ACLR for single-carrier UMTS
signals.
e. Multi-carrier Test Model signals used frames that were staggered by 2 msec between carriers
f. Stages 1 thru 4 were assigned 4, 8, 12, and 8 cancelers, respectively (total of 32 cancelers).
g. For PAR = 7 dB, Stages 1 thru 4 used detection thresholds of 8, 7, 7, and 7 dB, respectively.
h. For PAR = 6 dB, Stages 1 thru 4 used detection thresholds of 8, 7, 6, and 6 dB, respectively.
i. For PAR = 5 dB, Stages 1 thru 4 used detection thresholds of 8, 6, 5, and 5 dB, respectively.
RESET
The GC1115 supports three kinds of reset:
1. PLL reset (only the PLLs are reset)
2. Hardware reset (all configuration registers are brought to their RESET values)
3. Datapath hardware reset
10
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
Setting specific bits in the RESET register activates these resets. Asserting the RESET pin of the GC1115 also
causes hardware reset. Hardware reset results in the following GC1115 conditions:
• All input pins are put in their high-impedance state
• All output pins are put in their high-impedance state
• All internal registers are reset to their RESET states
• All state machines are placed in their initial (idle) states
• No config registers can be modified before clearing the config reset.
GC1115 Initialization Sequence
The GC1115 initialization sequence requires the following register groups to be properly initialized:
1. RESET, PLL_CONTROL, CLK_CONTROL, IO_CONTROL
2. CONTROL, IO_MODE, DECIMATE, RESOURCE_MASK, DELAY_MASK
3. SYNC registers
4. TSQD detection threshold and target peak level registers
5. INTERP registers
6. OUT_GAIN, OUT_OFFSET
7. CANCEL_MODE, CANCEL_LENGTH, CANCEL_DELAY, cancellation coefficients
The following paragraphs describe in general terms how each of these registers is initialized to achieve the
desired user-specified peak reduction performance.
RESET, PLL_CONTROL, CLK_CONTROL, IO_CONTROL
The RESET register contains four bits that can individually reset:
• The memory-mapped registers
• The GC1115 internal datapath
• The “core” PLL
• The output PLL
At GC1115 startup, hardware RESET always precedes all other register accesses and this asserts all internal
reset registers. Configuration control reset must also be cleared before performing subsequent configuration
steps.
After the RESET bits have been asserted, the PLL_CONTROL and CLK_CONTROL registers should be
initialized to the desired values. The GC1115 normally operates at four times the input sample rate, while the
output clock rate is determined by several additional factors (decimation, interpolation, and output format and
mode). The CLK_CONTROL register determines the PLL multiplying factors that control the GC1115 core clock
and output clock frequencies. Finally, the IO_CONTROL register determines the input and output format (twos
complement or unsigned), the output enabled state (tri-stated or enabled), and the output bit width (18, 16, 14, or
12 bits).
The GC1115 PLLs require a warm-up time of at least 1 µs from PLL_CONTROL modification to PLL reset
release, and at least 100 µs from PLL_CONTROL and CLK_CONTROL modification to PLL reset release before
the internal clock is stable.
CONTROL, IO_MODE, DECIMATE, RESOURCE_MASK, DELAY_MASK
The CONTROL register contains six control bits that selectively enable or disable the four PDC stages, the
interpolator, and the soft limiter. The DECIMATE register allows users to decimate the input sample stream by 1
(no decimation) or 2. The RESOURCE_MASK register determines which of the eight cancellation pulse SRAMs
are updated with new cancel pulse coefficients when a CANCEL_SYNC event occurs. Similarly, the
DELAY_MASK register determines which of the four PDC stages are affected by changes to the CANCEL_DELAY register when the DELAY_SYNC event occurs.
11
GC1115
SLWS144 – FEBRUARY 2005
www.ti.com
SYNC Registers
The GC1115 contains a group of SYNC registers that control the behavior of thirteen different sync-related
functions. A subsequent section discusses GC1115 synchronization alternatives. This section only describes the
registers that must be properly initialized prior to GC1115 operation. Four datapath SYNC registers (RCV_SYNC,
STAGE_SYNC, DECIM_SYNC, and INTERP_SYNC) must be synchronized by a hardware event before the
GC1115 will process input samples. Four additional ancillary SYNC registers (DELAY_SYNC, CANCEL_SYNC,
RESOURCE_SYNC, and OUTGAIN_SYNC) must be synchronized by a hardware or software event before the
GC1115 properly applies cancellation coefficients and gains. TI recommends that the four datapath SYNC
registers be synchronized using a SYNC_A or SYNC_B hardware event, and that the ancillary SYNC registers
be synchronized using a SW_TRIGGER software event. Note that the SYNC registers must be initialized
BEFORE the corresponding hardware or software event occurs. For example, CANCEL_SYNC must be
initialized before the cancellation coefficients are transferred from the GC1115’s shadow RAM to the internal
canceler RAMs.
TSQD (Threshold) and RESOURCE_CNT Registers
The behavior of each PDC stage is controlled by two threshold registers (DETECT_TSQDx and GAIN_TSQDx)
and one resource (RESOURCE_CNTx) register, where x represents a specific stage (from 1 to 4). These 16-bit
registers contain the scaled threshold-squared values for the stage’s detection threshold and target peak level.
The 16-bit RESOURCE_CNT registers contain the number of cancellation resources (from 0 to 8) assigned to
the stage. NOTE: if a RESOURCE_CNT register is set to N (0 ≤ N ≤ 8), that PDC stage can cancel up to 4 × N
peaks simultaneously. A resource represents a canceler RAM. Up to four cancellation pulse generators are
supported by each canceler RAM.
INTERP Registers
A programmable output interpolator follows the GC1115’s four PDC stages. The GC1115 interpolator operates in
one of four modes:
• Bypass (the default condition)
• Interpolate by 2 (complex output)
• Interpolate by 2 (real output centered at fs/4)
• Interpolate by 4 (real output centered at fs/4)
The interpolator’s filter coefficients are programmable and must therefore be initialized, even in bypass mode,
before the GC1115 starts processing input samples. A total of 40 interpolator registers (from D0_COEF0 thru
D3_COEF9) must be initialized before the GC1115 processes input data.
OUT_GAIN and OUT_OFFSET Registers
The GC1115 output circuitry includes individual I and Q gain and offset registers that allow users to compensate
for I/Q imbalances in subsequent D/A converters and/or subsequent analog I/Q modulators. Because the
OUT_GAIN and OUT_OFFSET registers are user-programmable, they must be properly initialized before the
GC1115 starts processing input samples. OUT_GAIN registers are normally initialized to 0x2000 (gain of 1.0),
and OUT_OFFSET registers are usually initialized to 0x0000.
CANCEL_MODE, CANCEL_LENGTH, CANCEL_DELAY, Cancellation Coefficients
The GC1115 applies user-specified cancellation coefficients to detected peaks. Cancellation coefficients can
contain either real or complex values, to support both symmetric and asymmetric input spectra. For this reason,
the CANCEL_MODE, CANCEL_LENGTH, and CANCEL_DELAY registers must be properly initialized before the
GC1115 begins processing input samples. The cancellation coefficients themselves (in either real or complex
format) must be copied to the GC1115 canceler RAMs in a two-step process:
• The microprocessor or FPGA writes the cancellation coefficients to memory-mapped shadow RAM registers
• The shadow RAM registers are copied to one or more (of a total of eight) cancellation pulse SRAMs after a
CANCEL_SYNC event occurs.
12
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
The CANCEL_MODE register determines whether the GC1115 is using real or complex coefficients
(corresponding to a symmetric or an asymmetric input spectrum), as well as whether coefficient symmetry is to
be exploited. Coefficient symmetry (mirrored coefficients) only applies when using real coefficients. The
CANCEL_MODE register also contains a four-bit field that indicates a timeout or hysteresis value. A non-zero
timeout value indicates that the PDCs are to examine the envelope of the input signal, rather than the magnitude
of the input signal. TI-provided Matlab cancel pulse design software automatically calculates the timeout value.
The CANCEL_LENGTH register specifies the number of unique cancellation coefficients used to cancel peaks.
The CANCEL_MODE register settings affect the interpretation of CANCEL_LENGTH. The following table
describes how CANCEL_LENGTH and CANCEL_DELAY are used, depending on CANCEL_MODE:
Table 2. Relationship Between CANCEL_MODE, CANCEL_LENGTH,
and CANCEL_DELAY
CANCEL_LENGTH
CANCEL_DELAY
0 (Real, unique coefs)
CANCEL_MODE
N (odd, from 15 to 255)
(N-1)/2
1 (Real, mirrored coefs)
N (odd, from 15 to 255)
N
1 (Complex, unique coefs)
N (odd, from 15 to 127)
(N-1)/2
OPERATING MODES
The GC1115 supports a variety of operating modes that accommodate a range of input formats, number of
channels, and follow-on A/D converter and transmit architectures. Users select a specific input and output
operating mode that depends upon:
• The number of channels (one or two)
• The input sampling rate:
– Up to 130 Msamp/sec in 1-channel mode
– Up to 65 Msamp/sec in 2-channel mode
– Down to 25 Msamp/sec in 1-channel parallel mode
– Down to 12.5 Msamp/sec in 1-channel multiplexed mode, or in 2-channel mode
• The input format (parallel or multiplexed)
• The input decimation factor (1, 2, or 4)
• The output interpolator mode (bypass, 2x real, 2x complex, 4x real)
• The output format (parallel, multiplexed, or odd-even; real or complex)
• The internal GC1115 clock rate (up to 320 MHz)
• The PLL multiplier (1x, 2x, or 4x)
13
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
The following constraints restrict the allowed combinations of the previously listed parameters:
1. Maximum input pin toggling rate: 130 MHz
2. Maximum output pin toggling rate in single-ended mode: 130 MHz
3. Maximum internal GC1115 clock rate: 305 MHz (IN_CLK x1, x2, x4)
4. Minimum PLL-driven internal GC1115 clock rate (at divide-by-1 PLL output): 100 MHz
5. Minimum IN_CLK rate: 25 MHz (using the 4x PLL multiplier with IN_CLK = 25 MHz generates the 100 MHz
minimum PLL output rate, at divide-by-1 PLL output)
Table 3 and Table 4 summarize the available one-channel and two-channel operating modes of the GC1115,
respectively.
Table 3. One-Channel Operating Modes
INPUT FORMAT
OUTPUT
FORMAT
DECIM
INTERP
PLL MULT
IN_CLK
(MHz)
CORE CLK
(MHz)
OUT_CLK
(MHz)
fs/4 (MHz)
Parallel
Parallel
Parallel
Parallel
1
1
4
25 - 75
1
2c
4
25 - 65
100 - 305
25 - 80
NA
100 - 260
50 - 130
Parallel
Parallel
2
1
2
NA
50 - 130
100 - 260
25 - 65
NA
Parallel
Parallel
2
2c
Parallel
Muxed
1
1
2
50 - 130
100 - 260
50 - 130
NA
4
25 - 65
100 - 260
50 - 130
Parallel
Muxed
1
NA
2c
4
25 - 32.5
100 - 305
100 - 130
NA
Parallel
Muxed
Parallel
Muxed
2
1
2
50 - 130
100 - 260
50 - 130
NA
2
2c
2
50 - 130
100 - 260
50 - 130
Parallel
NA
Odd/Even
1
2r
4
25 - 75
100 - 305
50 - 160
12.5 - 40
Parallel
Odd/Even
1
4r
4
25 - 75
100 - 305
100 - 250
25 - 62.5
Parallel
Odd/Even
2
2r
2
50 - 130
100 - 260
100 - 250
25 - 62.5
Parallel
Odd/Even
2
4r
2
50 - 130
100 - 260
100 - 250
25 - 62.5
Muxed
Parallel
1
1
2
50 - 130
100 - 260
25 - 65
NA
Muxed
Parallel
1
2c
2
50 - 130
100 - 260
50 - 130
NA
Muxed
Parallel
2
1
1
100 - 130
100 - 130
25 - 32.5
NA
Muxed
Parallel
2
2c
1
100 - 130
100 - 130
50 - 65
NA
Muxed
Muxed
1
1
2
50 - 130
100 - 260
50 - 130
NA
Muxed
Muxed
1
2c
2
50 - 65
100 - 130
100 - 130
NA
Muxed
Muxed
2
1
1
100 - 130
100 - 130
25 - 32.5
NA
Muxed
Muxed
2
2c
1
100 - 130
100 - 130
50 - 65
NA
Muxed
Odd/Even
1
2r
2
50 - 130
100 - 260
25 - 65
12.5 - 32.5
Muxed
Odd/Even
1
4r
2
50 - 130
100 - 260
50 - 130
25 - 32.5
Muxed
Odd/Even
2
2r
1
100 - 130
100 - 130
25 - 32.5
12.5 - 16.25
Muxed
Odd/Even
2
4r
1
100 - 130
100 - 130
50 - 65
25 - 32.5
OUT_CLK
(MHz)
fs/4 (MHz)
Table 4. Two-Channel Operating Modes
14
INPUT
FORMAT
OUTPUT
FORMAT
DECIM
INTERP
PLL MULT
IN_CLK
(MHz)
CORE CLK
(MHz)
Muxed
Muxed
Muxed
Muxed
1
1
2
50 - 130
100 - 260
50 - 130
NA
1
2c
2
50 - 130
100 - 260
100 - 260
Muxed
NA
Muxed
2
1
1
100 - 130
100 - 130
50 - 65
NA
Muxed
Muxed
2
2c
1
100 - 130
100 - 130
100 - 130
NA
Muxed
Real
1
2r
2
50 - 130
100 - 260
50 - 130
NA
Muxed
Real
2
2r
1
100 - 130
100 - 130
50 - 130
NA
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
Clock Generation and PLL Operation
The GC1115 internal clock is normally generated through an on-board PLL. The PLL output frequency is 1, 2, or
4 times the frequency of the user-provided IN_CLK signal. For example, if the GC1115 is provided with an input
signal stream at 61.44 Msamp/sec and the PLL is configured to operate at 4x, the GC1115’s internal clock rate
will be 245.76 MHz. The GC1115’s functional blocks require four internal clock cycles per sample. This rule
affects the selection of related decimation and interpolation factors at a given input sampling rate. In addition, the
GC1115’s PLL divide-by-1 output frequency must fall between 100 MHz and 305 MHz. The 100 MHz minimum
PLL output clock rate is driven by the PLL design, while the 305 MHz maximum PLL output clock rate is limited
by the GC1115’s internal logic design. Alternately, the GC1115’s internal PLL can be bypassed, effectively using
IN_CLK directly as the GC1115 chip clock. However, in this mode, each input sample must be presented to the
input port(s) for four consecutive clock cycles, and the DECIM register must be set to 4. Using this bypass PLL
configuration allows users to operate the GC1115 at input sampling rates lower than 25 Msamp/sec.
NOTE:
Users may have to adjust the clock phase, relative to the data, for proper operation
during bypass PLL mode. Note that DECIM_SYNC may also have to be enabled on a
particular user-selected sample phase (1 of 4 phases) in order to achieve proper
operation during bypass PLL mode.
GC1115 users should be aware that the choice of input operating mode affects IN_CLK and thus also affects the
PLL clock. Specifically, GC1115 users must ensure the relationships shown in Table 5:
Table 5. IN_CLK, PLL Mode, and Core Clock
IN_CLK
(MHz)
PLL MODE
GC1115 CORE CLOCK
(MHz)
25 - 75
4x
100 - 305
50 - 130
2x
100 - 260
100 - 130
1x
100 - 130
1 - 125
Bypass
1 - 125
GC1115 users should also be aware that the core clock affects the choice of output operating mode. Specifically,
GC1115 users must ensure the relationships shown in Table 6. Notice that the odd-even output mode requires
that the interpolator operate in one of its two real-output modes: 2x real or 4x real.
Table 6. Core Clock and Interp Mode
GC1115 CORE CLOCK
(MHz)
INTERP MODE
OUTPUT FORMAT
OUTPUT CLOCK RATE
(MHz)
100 - 305
Bypass
Parallel
25 - 75
100 - 260
Bypass
Muxed I/Q
50 - 130
100 - 260
2x (complex)
Parallel
50 - 130
100 - 130
2x (complex)
Muxed I/Q
100 - 130
100 - 305
2x (real)
Odd/Even
25 - 75
100 - 260
4x (real)
Odd/Even
50 - 130
Summary of Registers Affecting GC1115 Clocks
The following GC1115 registers affect the input, core, and output clocks:
• PLL_CONTROL (0x1): determines PLL multiplier (1x, 2x, 4x, bypass) and source of Tx feedback
• CLK_CONTROL (0x2): determines relationship of IN_CLK and OUT_CLK to CORE_CLK
• IO_MODE (0x9): determines the number of channels (1 or 2), the input data format (parallel, muxed), and
the output data format (parallel, muxed, odd-even)
• DECIMATE (0xC): determines the downsampling of the input stream prior to GC1115 processing
• INTERP_CTL (0x80): determines the interpolator operating mode (bypass, 2x complex, 2x real, 4x real).
Note that INTERP_CTL and IO_MODE must be consistent to ensure proper operation!
15
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
Figure 7 demonstrates the GC111 registers that determine the various internal clock frequencies.
PLL feedback
.
PLL_CONTROL
9 8
1 0
2
1
3
0
PLL_CORE
OUT_CLK
FCLK
to LOOP_SEL
PLL mult
CTRL
IN_CLK
RCLK
IN_CLK phase
÷1
÷2
÷4
3
2
1
0
loads
.
CLK_CORE
PLL bypass
OUT_CLK select
CLK_CONTROL
15 14 13 12
98
3 2 1 0
LOOP_IN
0PLL_OUT
FCLK
RCLK
÷1
÷2
÷4
3
2
1
0
.
÷2
÷4
CLK_OUT
LOOP_OUT
LOOP_SEL
Figure 7. PLL_CONTROL and CLK_CONTROL Registers
DETAILED DESCRIPTION OF GC1115 FUNCTIONAL BLOCKS
Microprocessor Interface Registers and Interrupts
The GC1115’s microprocessor interface presents the device as a set of memory-mapped registers to the
controlling microprocessor or DSP. All aspects of the GC1115 are configured, monitored, and controlled through
these registers. The microprocessor interface consists of a 16-bit bi-directional data bus D[15:0], an 8-bit address
bus A[7:0], a write strobe WR, a read strobe RD, and a chip select CS. The WR pin selects between the two-pin
and three-pin operation:
• (three-pin mode; WR is used) separate read strobe on RD pin and write strobe on WR pin
• (two-pin mode; WR is grounded) combined RD/WR signal using the GC1115’s RD pin.
NOTE:
The GC1115 rev0 silicon does not support three-pin mode. Please use two-pin mode
with rev0 silicon.
Figure 8 demonstrates a glueless interface between a generic Texas Instruments TMS320Cxx DSP chip and a
GC1115, assuming that the CG1115 is the only device in the DSP’s I/O memory space. If the TMS320Cxx DSP
controls multiple devices in its I/O memory space, additional external address decoding is required to generate
CS.
The microprocessor or DSP can configure the GC1115 to generate an interrupt at the occurrence of various
GC1115 internal events. Please refer to the description of the INT_MAP and INT_MASK registers for a complete
description of these events.
16
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
DETAILED DESCRIPTION OF GC1115 FUNCTIONAL BLOCKS (continued)
The GC1115 microprocessor interface operates at speeds between 33 MHz and 100 MHz. Register read/write
accesses are faster than RAM read/write accesses. RAM access is used for snapshot RAM and shadow RAM.
Please refer to the timing diagrams for specific information on GC1115 register access rates. RAM access is
limited to 33 MHz.
TMS320Cxx
GC1115
A[7:0]
A[7:0]
D[15:0]
D[15:0]
RD/WR
RD_
WR_
IOS
CS_
INT_A
INT_
Figure 8. TMS320Cxx – GC1115 Interface
Users configure the GC1115 by writing control information into a set of 16-bit memory-mapped registers. The
registers are accessed using the GC1115’s A[7:0], D[15:0], CS, RD, and WR pins. The complete register map is
described in detail in a subsequent section. Certain GC1115 registers can be modified at any time during
GC1115 operation, while other registers may not be modified until certain conditions are met. Table 7 summarize
these restrictions. The GC1115 will strictly enforce the update restrictions listed in Table 7. If a particular update
condition is not met, the GC1115 will not update the specified register.
Table 7. GC1115 Register Updates
ADDRESS
NAME
WHEN CAN REGISTER BE UPDATED?
0
RESET
Any time
1
PLL_CONTROL
Any time
2
CLK_CONTROL
Any time
3
CONTROL
Any time
4
INT_MAP
After GC1115 sends an interrupt
5
INT_MASK
Any time
6
MASK_REV
READ ONLY
7
SW_TRIGGER
Any time
8
IO_CONTROL
Any time
9
IO_MODE
After GC1115 receives IN_CLK
10 (0xA)
POWER_CTL
Any time
11 (0xB)
POWER
READ ONLY
12 (0xC)
DECIMATE
Any time (after change, output may be invalid for a few samples)
13 (0xD)
TIMER_HI_RST
When timer is OFF
14 (0xE)
TIMER_LO_RST
When timer is OFF
15 (0xF)
CANCEL_MODE
Any time
16 (0x10)
CANCEL_LENGTH
Any time
17 (0x11)
CANCEL_ADDRESS
Any time
18 (0x12)
CANCEL_DATA
Any time
19 (0x13)
RESOURCE_MASK
Any time
20 (0x14)
DELAY_MASK
Any time
17
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
DETAILED DESCRIPTION OF GC1115 FUNCTIONAL BLOCKS (continued)
Table 7. GC1115 Register Updates (continued)
18
ADDRESS
NAME
WHEN CAN REGISTER BE UPDATED?
21 (0x15)
SIG_GEN_CTL
Any time
22 (0x16)
SIG_GEN_BASE
Any time
23 (0x17)
SIG_GEN_INC
Any time
24 (0x18)
CRC_RESULT
Any time
25 (0x19)
RCV_SYNC
Any time (after change, output may be invalid for a few samples)
26 (0x1A)
STAGE_SYNC
Any time (after change, output may be invalid for a few samples)
27 (0x1B)
DECIM_SYNC
Any time (after change, output may be invalid for a few samples)
28 (0x1C)
TIMER_SYNC
Any time (after change, output may be invalid for a few samples)
29 (0x1D)
DELAY_SYNC
Any time (after change, output may be invalid for a few samples)
30 (0x1E)
CANCEL_SYNC
Any time (after change, output may be invalid for a few samples)
31 (0x1F)
RESOURCE_SYNC
Any time (after change, output may be invalid for a few samples)
32 (0x20)
INTERP_SYNC
Any time (after change, output may be invalid for a few samples)
33 (0x21)
OUTGAIN_SYNC
Any time
34 (0x22)
OUTPIN_SYNC
Any time
35 (0x23)
SIG_GEN_SYNC
Any time
36 (0x24)
SNAP_A_SYNC
Any time
37 (0x25)
SNAP_B_SYNC
Any time
48 (0x30)
RESOURCE_CNT1
Any time
49 (0x31)
DETECT_TSQD1
Any time
50 (0x32)
GAIN_TSQD1
Any time
51 (0x33)
CANCEL_DELAY1
Any time
56 (0x38)
RESOURCE_CNT2
Any time
57 (0x39)
DETECT_TSQD2
Any time
58 (0x3A)
GAIN_TSQD2
Any time
59 (0x3B)
CANCEL_DELAY2
Any time
64 (0x40)
RESOURCE_CNT3
Any time
65 (0x41)
DETECT_TSQD3
Any time
66 (0x42)
GAIN_TSQD3
Any time
67 (0x43)
CANCEL_DELAY3
Any time
72 (0x48)
RESOURCE_CNT4
Any time
73 (0x49)
DETECT_TSQD4
Any time
74 (0x4A)
GAIN_TSQD4
Any time
75 (0x4B)
CANCEL_DELAY4
Any time
96 (0x60)
SNAP_A_CONTROL
Any time
97 (0x61)
SNAP_A_STATUS
READ ONLY
98 (0x62)
SNAP_A_ADDRESS
Any time
99 (0x63)
SNAP_A_DATA
Any time
100 (0x64)
SNAP_A_MINVAL
When Snap A is OFF
101 (0x65)
SNAP_A_MAXVAL
When Snap A is OFF
102 (0x66)
SNAP_A_SCALER
When Snap A is OFF
103 (0x67)
SNAP_A_HISTCOUNT
When Snap A is OFF
112 (0x70)
SNAP_B_CONTROL
Any time
113 (0x71)
SNAP_B_STATUS
READ ONLY
114 (0x72)
SNAP_B_ADDRESS
Any time
115 (0x73)
SNAP_B_DATA
Any time
116 (0x74)
SNAP_B_MINVAL
When Snap B is OFF
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
DETAILED DESCRIPTION OF GC1115 FUNCTIONAL BLOCKS (continued)
Table 7. GC1115 Register Updates (continued)
ADDRESS
NAME
WHEN CAN REGISTER BE UPDATED?
117 (0x75)
SNAP_B_MAXVAL
When Snap B is OFF
118 (0x76)
SNAP_B_SCALER
When Snap B is OFF
When Snap B is OFF
119 (0x77)
SNAP_B_HISTCOUNT
127 (0x7F)
COUNTER_VAR
Any time
128 (0x80)
INTERP_CTL
When interpolator is bypassed
129 (0x81)
(reserved)
(reserved)
130 (0x82)
D0_COEF0
When interpolator is bypassed
...
...
...
169 (0xA9)
D3_COEF9
When interpolator is bypassed
192 (0xC2)
SOFT_LENGTH
When soft limiter is bypassed
193 (0xC3)
SOFT_TSQD
When soft limiter is bypassed
194 (0xC4)
SOFT_COEF0
When soft limiter is bypassed
...
...
...
209 (0xD1)
SOFT_COEF15
When soft limiter is bypassed
210 (0xD2)
SOFT_TAB_SCALE
When soft limiter is bypassed
211 (0xD3)
SOFT_INVGAIN0
When soft limiter is bypassed
...
...
...
242 (0xF2)
SOFT_INVGAIN31
When soft limiter is bypassed
243 (0xF3)
OUT_GAIN0
When soft limiter is bypassed
244 (0xF4)
OUT_GAIN1
When soft limiter is bypassed
245 (0xF5)
OUT_OFFSET_I0
When soft limiter is bypassed
246 (0xF6)
OUT_OFFSET_Q0
When soft limiter is bypassed
247 (0xF7)
OUT_OFFSET_I1
When soft limiter is bypassed
248 (0xF8)
OUT_OFFSET_Q1
When soft limiter is bypassed
19
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
Setting Detection Thresholds and Target Peak Levels
The most obvious user-specified parameter for a CFR processor is the desired output PAR. The output PAR
determines the largest sample magnitude on the output ports of the GC1115. Ultimately, the PAR determines the
maximum Vin voltage of the PA. This maximum value is then adjusted to fit just under the 1 dB compression
point of the PA. The average power of the GC1115 input samples (0 dB point on the CCDF curve) can be
calculated from a group of input samples. TI provides a Matlab function that uses a group of input samples to
calculate the 16-bit threshold-squared values that are loaded into the GC1115’s DETECT_TSQD and
GAIN_TSQD registers (one pair of registers for each of four stages; total of eight TSQD registers). Upon request,
TI will provide the Matlab source code (m-file) for the threshold calculations based on input samples.
Alternately, GC1115 users can use the GC1115’s built-in hardware power measurement capability to determine
the average input power. The detection thresholds and target peak levels can then be calculated from the
average input power.
GC1115 threshold settings are based on a threshold SQUARED (power) value, not a threshold (magnitude)
value. The following example demonstrates how the GC1115’s threshold-squared values are calculated, using
the Matlab language:
%
%
Calculate the average power of the complex input array x, and the desired fractional (magnitude)
%
threshold, given the user-specified target peak level (in dB).
avgMag
= sqrt(mean(abs(x).^2));
frac
= avgMag * 10 ^ (dB_target / 20);
%
%
Derive the following threshold-related values from the target PAR magnitude:
%
%
thresh
signed, 14-bit threshold value (a magnitude!)
%
threshSqd threshold set as a 16-bit mag-squared value (reduced from a 29-bit mag-squared value)
%
thresh
= floor (frac * 2^13);
% set the threshold relative to signed 14-bit samples
threshSqd
= floor((thresh ^ 2)/ (2^13)); % mag-sqd of a 14-bit value = 28 bits plus an add = 29
bits
% Divide by 2^13 to convert to 16-bit thresh-sqd value
The GC1115 uses four sequential PDC stages to achieve the desired output PAR. For output PAR levels below
8 dB, both cEVM and PCDE performance is improved if the earlier stages have higher detection thresholds (set
to 8 dB or 7 dB), while later stages contain the final, desired threshold (7 dB, 6 dB, or 5 dB, for instance). In all
cases, the GAIN_TSQD registers should be set to the target peak level (desired output PAR). When the desired
output PAR is at or above 8 dB, the DETECT_TSQD and GAIN_TSQD registers are set as shown in Table 8:
Table 8. Detection and Gain Thresholds, PAR ≥ 8 dB
STAGE
DETECT_TSQD
GAIN_TSQD
1
my_tsqd
my_tsqd
2
my_tsqd
my_tsqd
3
my_tsqd
my_tsqd
4
my_tsqd
my_tsqd
When the desired output PAR is below 8 dB, the recommended DETECT_TSQD and GAIN_TSQD register
settings are set as shown in Table 9:
Table 9. Detection and Gain Thresholds, PAR < 8 dB
20
STAGE
DETECT_TSQD
GAIN_TSQD
1
min(8 dB, my_tsqd + 2 dB)
my_tsqd
2
min(7 dB, my_tsqd+1 dB)
my_tsqd
3
my_tsqd
my_tsqd
4
my_tsqd
my_tsqd
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
Designing Cancellation Pulse Coefficients
Cancellation pulse coefficient design is identical to FIR filter design. The goal of designing cancellation pulses is
to mirror the signal energy of the input signal. If the input signal contains one carrier, the cancellation pulse’s
center frequency and bandwidth will have the same center frequency and bandwidth as that carrier. For
multi-carrier signals, multiple single-carrier cancellation pulses are added together to create a spectrum that is
identical to the spectrum of the multi-carrier input signal. The goal of cancellation pulse design is to place energy
ONLY in those frequency regions where the input signal has appreciable energy, i.e. in the carrier bands
themselves. This design method ensures that cancellation pulse energy is inserted only where input signal
energy is already present, and to avoid placing any additional energy outside those bands, since such
out-of-band energy would worsen ACLR performance.
Upon request, TI will provide Matlab code that demonstrates how cancellation pulses are designed. This Matlab
software requires the following input parameters:
• Input sampling rate
• Single-carrier bandwidth
• Carrier center frequencies
• Desired cancellation pulse length (an odd number; from 15 to 255 for real cancel pulses, and from 15 to 127
for complex cancel pulses)
The Matlab cancellation pulse design software then calls a standard Matlab FIR filter design function (such as
fir1, firls, or remez) to design a prototype cancellation pulse whose bandwidth matches the single-carrier
bandwidth input parameter. If the input signal contains two or more carriers, copies of this prototype filter will be
translated to the center frequency of each carrier and the copies summed together.
Cancellation Coefficient Shadow RAM
The GC1115 uses a derivative-based approximation method to calculate highly accurate phase shifts of the
cancellation pulse. The approximation method requires not only the cancellation coefficients themselves to be
stored in the GC1115, but also the coefficients’ first and second derivatives. The cancellation coefficient shadow
RAM contains 768 unique addresses that hold up to 256 unique cancellation coefficients and their first and
second derivatives.
NOTE:
Upon request, TI will provide a Matlab script that calculates the proper first and
second derivatives from user-designed cancellation coefficients.
Shadow RAM is physically distinct from canceler RAM. This distinction is fully explained in the section entitled
Shadow RAM and Canceler RAMs, below. The microprocessor or DSP controlling the GC1115 can only access
the shadow RAM.
Cancellation coefficient shadow RAM is used differently, depending on the CANCEL_MODE setting (real or
complex coefficients; unique or mirrored coefficients). Table 10, Table 11, and Table 12 illustrate how
cancellation coefficients are stored and accessed in the GC1115’s cancellation coefficient shadow RAM.
Table 10. Real, Unique Coefficients
TYPE OF DATA
ADDRESS
COEFFICIENT
Coefficients
0
coef[0]
1
coef[1]
2
coef[2]
...
...
CANCEL_LENGTH-1
coef[CANCEL_LENGTH-1]
256
deriv1[0]
257
deriv1[1]
258
deriv1[2]
...
...
255+CANCEL_LENGTH
deriv1[CANCEL_LENGTH-1]
First derivative
21
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
Table 10. Real, Unique Coefficients (continued)
TYPE OF DATA
ADDRESS
COEFFICIENT
Second derivative
512
deriv2[0]
513
deriv2[1]
514
deriv2[2]
...
...
511+CANCEL_LENGTH
deriv2[CANCEL_LENGTH-1]
Coefficient access pattern:
coef[0], coef[1], …, coef[CANCEL_LENGTH-2], coef[CANCEL_LENGTH-1]
Table 11. Real, Mirrored Coefficients
TYPE OF DATA
ADDRESS
COEFFICIENT
Coefficients
Same as Table 10
Same as Table 10
First derivative
Same as Table 10
Same as Table 10
Second derivative
Same as Table 10
Same as Table 10
Coefficient access pattern:
coef[0], coef[1], …, coef[CANCEL_LENGTH-2], coef[CANCEL_LENGTH-1], coef[CANCEL_LENGTH-2],
coef[CANCEL_LENGTH-3], …, coef[1], coef[0].
Table 12. Complex Coefficients
TYPE OF DATA
ADDRESS
COEFFICIENT
Complex coefs (real part)
0
coef_re[0]
1
coef_re[1]
2
coef_re[2]
...
...
CANCEL_LENGTH-1
coef_re[CANCEL_LENGTH-1]
128
coef_im[0]
129
coef_im[1]
130
coef_im[2]
...
...
127+CANCEL_LENGTH
coef_im[CANCEL_LENGTH-1]
256
deriv1_re[0]
257
deriv1_re[1]
258
deriv1_re[2]
...
...
255+CANCEL_LENGTH
deriv1_re[CANCEL_LENGTH-1]
384
deriv1_im[0]
385
deriv1_im[1]
386
deriv1_im[2]
...
...
383+CANCEL_LENGTH
deriv1_im[CANCEL_LENGTH-1]
512
deriv2_re[0]
513
deriv2_re[1]
514
deriv2_re[2]
...
...
511+CANCEL_LENGTH
deriv2_re[CANCEL_LENGTH-1]
Complex coefs (imaginary part)
First derivative (real part)
First derivative (imaginary part)
Second derivative (real part)
22
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
Table 12. Complex Coefficients (continued)
TYPE OF DATA
ADDRESS
COEFFICIENT
Second derivative (imaginary part)
640
deriv2_im[0]
641
deriv2_im[1]
642
deriv2_im[2]
...
...
639+CANCEL_LENGTH
deriv2_im[CANCEL_LENGTH-1]
Coefficient access pattern:
{coef_re[0], coef_im[0]}, {coef_re[1], coef_im[1]}, …,
{coef_re[CANCEL_LENGTH-1], coef_im[CANCEL_LENGTH-1]}
Writing Cancellation Coefficients to Shadow RAM
The GC1115 uses the CANCEL_ADDR register as a coefficient memory pointer to access cancellation
coefficient shadow RAM. This indirect addressing method requires only two registers (CANCEL_ADDR and
CANCEL_DATA) in the GC1115 memory map, while allowing GC1115 users access to 768 unique shadow RAM
addresses.
To access a particular shadow RAM location, the microprocessor or DSP that controls the GC1115 first writes
the desired address into the CANCEL_ADDR register. To write to the shadow RAM, the microprocessor or DSP
then writes the desired coefficient value to the CANCEL_DATA register. A write to (or read from) the
CANCEL_DATA register automatically post-increments the address in the CANCEL_ADDR register. The
following example demonstrates how the CANCEL_ADDR auto-increment feature is used to initialize the first
three cancellation coefficient shadow RAM locations mem(0), mem(1), and mem(2):
STEP
REGISTER
VALUE
CANCEL_ADDR
AUTO-INCREMENT
COMMENTS
1
CANCEL_ADDR
0
0
addr = 0
2
CANCEL_DATA
0x111
0→1
mem(0) = 0x111
3
CANCEL_DATA
0x456
1→2
mem(1) = 0x456
4
CANCEL_DATA
0x321
2→3
mem(2) = 0x321
Alternately, the microprocessor or DSP software can specify a shadow RAM address (0..767) with each
CANCEL_DATA access. This mode is useful when updating non-contiguous shadow RAM addresses. The
following example demonstrates how the CANCEL_ADDR direct-addressing mode is used to initialize the first
three cancellation coefficient shadow RAM locations mem(0), mem(2), and mem(1), in non-sequential order (just
to demonstrate the direct addressing capability):
STEP
REGISTER
VALUE
CANCEL_ADDR
AUTO-INCREMENT
COMMENTS
1
CANCEL_ADDR
0
0
addr = 0
2
CANCEL_DATA
0x111
0→1
mem(0) = 0x111
3
CANCEL_ADDR
2
2
addr = 2
4
CANCEL_DATA
0x321
2→3
mem(2) = 0x321
5
CANCEL_ADDR
1
1
addr = 1
6
CANCEL_DATA
0x456
1→2
mem(1) = 0x456
Shadow RAM and Canceler RAMs
The GC1115 contains eight unique canceler RAM memories that hold cancellation coefficients and their
derivatives. Each of the eight unique canceler RAMs can be accessed up to four times per IN_CLK clock period,
and each of the cancelers has its own canceler RAM pointer. This structure allows four cancelers to be
supported by one canceler RAM per IN_CLK clock period. This structure also makes it possible to store eight
different cancellation coefficient sets in the GC1115 (although this option is not recommended). With a total of
23
GC1115
SLWS144 – FEBRUARY 2005
www.ti.com
eight canceler RAMs, the GC1115 can have up to 32 cancelers running independently per channel (four
cancelers per canceler RAM per channel). Cancellation pulse resources are allocated in groups of four per
channel, i.e. one canceler RAM at a time, to the four PDC stages. The registers RESOURCE_CNT1 thru
RESOURCE_CNT4 specify how many canceler RAMs are allocated to each PDC stage. The total number of
resources cannot exceed 8.
The CANCEL_ADDR and CANCEL_DATA registers are used to write to an independent “shadow RAM”. Using
the CANCEL_ADDR and CANCEL_DATA registers, the GC1115’s controlling microprocessor or DSP writes
cancellation coefficients and derivative values to this shadow RAM, and not directly to the canceler RAMs
themselves. When a COEF_SYNC synchronization event occurs, the contents of the shadow RAM are copied
(one value per internal GC1115 clock cycle) to those canceler RAMs whose corresponding bit is set in the
RESOURCE_MASK register. Using the RESOURCE_CNT registers, cancelers may be separately taken off-line,
updated, and brought back on-line in seamless operation. This approach ensures that the GC1115 is never
without cancellation resources.
To summarize, cancellation coefficients and their derivatives are written to canceler RAMs as follows:
1. Using CANCEL_ADDR and CANCEL_DATA, write up to 768 canceler coefficients and their derivatives to
shadow RAM
2. Using the RESOURCE_MASK register, specify which canceler RAMs are to be initialized from shadow RAM
when the COEF_SYNC event occurs
3. Using the COEF_SYNC register, specify which event (SW_TRIGGER, timer, SYNC_A, SYNC_B, etc.) will
trigger the COEF_SYNC event
4. After the COEF_SYNC event occurs, the GC1115 copies 3 × CANCEL_LENGTH values from shadow RAM
to the canceler RAMs selected by the RESOURCE_MASK register. During each internal clock cycle, one
shadow RAM value is copied simultaneously to the canceler RAMs enabled by their corresponding
RESOURCE_MASK bits. The total canceler RAM copy time depends on CANCEL_LENGTH and on the time
spent waiting for the selected RAMs to become idle, not on how many canceler RAMs are enabled for
update in the RESOURCE_MASK register.
5. After the GC1115 has copied 3 × CANCEL_LENGTH values from shadow RAM to canceler RAM, the
microprocessor or DSP can optionally be interrupted, if bit 6 of INT_MASK was set prior to Step 3.
Alternately, bit 6 of INT_MAP can be polled to determine when the shadow RAM copy completes.
Once the shadow RAM has been initialized, the process of copying the shadow RAM values to the canceler
RAMs occurs very quickly. For example, assuming an IN_CLK frequency of 61.44 MHz (16.3 ns), a
GC1115-internal clock rate of 4 × 61.44 MHz (4.1 ns), and a CANCEL_LENGTH of 87, the GC1115 only requires
3 × 87 × 4.1 ns = 1.07 µs to initialize all RESOURCE_MASK-enabled canceler RAMs, assuming all cancelers to
be updated were idle when the CANCEL_SYNC trigger occurred.
CANCEL_LENGTH and CANCEL_DELAY
In many GC1115 applications, a symmetric set of cancellation coefficients is chosen to match a symmetric carrier
configuration (i.e. the center frequencies of the carrier configuration are symmetric about DC). When cancellation
coefficients are symmetric, the delay introduced by a cancellation pulse with N coefficients is N/2, or half the
cancellation pulse length. The number of samples between the first coefficient and the largest coefficient
determines CANCEL_DELAY. Since the largest coefficient of symmetric filters is usually at the midpoint of the
filter, the delay is half the filter length.
Figure 9 illustrates a typical, symmetric FIR filter impulse response, whose largest coefficient is at tap 50, at the
midpoint of the 99-coefficient filter.
24
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
Figure 9. Typical Symmetric Cancel Pulse Impulse Response, CANCEL_DELAY = 50
It is possible, however, to generate cancellation pulses whose largest coefficient is less than CANCEL_LENGTH/2. Such cancellation pulses are called minimum phase pulses. Minimum-phase cancellation
pulses reduce the effective delay through the GC1115. Figure 10 illustrates the impulse response of a minimum
phase cancellation pulse. Notice that the largest magnitude coefficient (tap 7) is significantly closer to tap 1 than
to the middle coefficient (tap 25). The GC1115 can use either non-minimum phase or minimum phase
cancellation pulses. If a non-minimum phase filter is being used, CANCEL_DELAY = CANCEL_LENGTH / 2. If a
minimum phase filter is being used, CANCEL_DELAY < CANCEL_LENGTH / 2. CANCEL_DELAY must be
properly initialized to compensate for the cancellation pulse delay.
Figure 10. Minimum Phase Cancel Pulse Impulse Response, CANCEL_DELAY = 7
Software Timer
The GC1115 provides a flexible, user-controlled software timer that can serve as a programmable
synchronization source. The timer is controlled through the TIMER_SYNC register, which allows users to select
the event that triggers the timer. Before enabling the timer to start (via the TIMER_CTL register), the user
specifies a timer period using the TIMER_HI_RST and TIMER_LO_RST registers. The timer is decremented with
each internal clock edge (normally at a frequency of 4 x IN_CLK). When the TIMER_SYNC event occurs, the
timer copies the 32-bit values contained in TIMER_HI_RST and TIMER_LO_RST into a GC1115-internal 32-bit
timer register. This 32-bit timer is then decremented with each internal chip clock (normally chip clock = 4 x
IN_CLK). When the timer reaches zero, the timer is re-loaded from TIMER_HI_RST and TIMER_LO_RST
(periodic timer event), or the timer is disabled (for one-time timer events). Bit 15 of the TIMER_SYNC register
determines the timer mode (periodic or one-time).
25
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
The microprocessor or DSP can be interrupted when the timer expires by setting bit 4 of INT_MASK. It is
expected that software-initiated timer start operation will most often be used in one-time mode (and not periodic
mode), thus giving the microprocessor or DSP time to monitor a GC1115 event, such as reading the snapshot
RAM contents.
Signal Generator and CRC Generator
The GC1115 contains a simple signal generator that can be used to drive the GC1115 PDC stages. The signal
generator capability is useful when debugging a board containing a GC1115, or to debug the GC1115 itself.
When enabled, the signal generator output drives the input of PDC Stage 1. The signal generator can be
configured to generate one of several types of signals:
• A DC level
• A sawtooth waveform
• A pseudo-LFSR waveform with PAR of approximately 10 dB
The signal generator is configured using the SIG_GEN_CTL, SIG_GEN_BASE, and SIG_GEN_INC registers.
The signal generator period is determined by SIG_GEN_CTL, SIG_GEN_BASE, SIG_GEN_INC, and
SIG_GEN_SYNC registers. In LFSR mode, the LFSR generator and the CRC generators are reset whenever a
SIG_GEN_SYNC trigger occurs. Because the GC1115 pipeline must contain predictable information, the
minimum SIG_GEN_SYNC period should be at least 1000 IN_CLK periods.
The GC1115 also contains a cyclic redundancy check (CRC) generator. The CRC generator receives its input
from the output of PDC Stage 4. The CRC generator is enabled whenever the signal generator is enabled. The
CRC generator can also be fed using user-provided data on Input Port A and B, and by setting SIG_GEN_CTL to
0x3. CRC generation using sawtooth or LFSR data provides a predictable, periodic way to determine proper
internal GC1115 operation, independent of a user-provided input sequence. Note that the LFSR sequence is not
bandlimited, but the distribution of its magnitudes is Gaussian.
Contact TI to receive an appropriate set of CRC initialization and test parameters.
Snapshot RAM Operation
The GC1115 contains two independent, identically operating snapshot RAMs for signal capture and histogram
generation. The snapshot RAMs operate in one of three modes:
• No operation (OFF)
• Capture mode (RAM is configured as a 2k × 16-bit memory, with I and Q samples interleaved)
• Histogram mode (RAM is configured with even addresses storing the 16 MSBs, and odd addresses storing
the 16 LSBs, of 32-bit counters)
These RAMs can capture or histogram sample streams at five independent locations within the GC1115:
• At the GC1115’s input (after the decimator and prior to Stage 1)
• After PDC Stage 1
• After PDC Stage 2
• After PDC Stage 3
• After PDC Stage 4
In capture mode, the 16 MSBs of each 18-bit sample are stored in the snapshot RAM as follows:
ADDRESS
VALUE
i=0,2,4,…
I[17:2] (sixteen MSBs of 18-bit I value)
j=1,3,5,…
Q[17:2] (sixteen MSBs of 18-bit Q value)
In histogram mode, each snapshot RAM monitors the output of a function generator that generates one of the
following values from its I & Q source samples:
• I sample
• Q sample
• Magnitude squared (I*I + Q*Q)
26
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
The arithmetic processing of samples in histogram mode is shown in Figure 11. First, the user-selected function
of the complex input sample I + jQ is calculated. Second, the calculated value is compared to SNAP_MINVAL
and SNAP_MAXVAL. If the calculated value is not within the desired range, no further action occurs for this
sample. If the calculated value is within the desired range, then SNAP_MINVAL is subtracted from the calculated
value, and the result is multiplied by SNAP_SCALE to generate a 10-bit histogram index (between 0 and 1023).
Let us consider a histogram example in which users are interested in monitoring the power of samples above the
average power (to calculate CCDF, for instance). Assume that the average power corresponds to 16-bit samples
with mag-squared values of 2 × (100002), or 2 × 108. For 16-bit samples, the largest possible mag-squared value
is 2 × 327672 = 2.14x 109. The GC1115 removes the lower 16 bits from each 32-bit mag-squared values, so that
the function generator output is always in the signed 16-bit range. The initial values for SNAP_MINVAL,
SNAP_MAXVAL, and SNAP_SCALE are calculated as follows:
• SNAP_MINVAL = 3052 (2 × [100002] / 216)
• SNAP_MAXVAL = 32767 (2 × [327672] / 216)
• SNAP_SCALE = 1024 / (32767 – 3052) = 0.03446 (= 1129 as a signed 16-bit integer)
If users wanted to monitor the input signal for 30 seconds (about 1.8 × 109 samples – plenty of statistical
significance), SNAP_HISTCOUNT = 27465 (1.8 × 109 / 65536).
SNAP_MAXVAL
I
Q
18
18
Function
Generator
(I, Q, mag^2)
SNAP_SCALE
16
16
min & max
range check
−
16
10
x
16
SNAP_MINVAL
HISTOGRAM
INDEX
10
Histogram bin
update
(fetch bin count,
increment,
store inc’d count)
Histogram bins
(1k x 32 bits)
Figure 11. Snapshot RAM Histogram Operation
•
•
•
SNAP_MINVAL: minimum value of interest (-32768..+32767)
SNAP_MAXVAL: maximum value of interest (-32768..+32767)
SNAP_SCALE: a 16-bit multiplier that scales the 16-bit (value – SNAP_MINVAL) into the 10-bit range
0..1023.
In C pseudo-code, the GC1115 histogram index calculation and bin update is performed as follows:
if ( (funcGen[i] >= SNAP_MINVAL) && (funcGen[i] <= SNAP_MAXVAL) ) {
j
= funcGen[i]
SNAP_MINVAL;
index = int(j * SNAP_SCALE);
index &= 0x3FF;
hist[index]++
}
The minimum histogram index will never be less than 0, while the maximum histogram index should never
exceed 1023. The SNAP_MINVAL and SNAP_MAXVAL values allow GC1115 users to bracket specific sample
ranges of interest, while ignoring values outside of this range. The SNAP_SCALE multiplier then maps the range
of interest into the available histogram bins (0..1023).
In histogram mode, the GC1115 snapshot RAMs collect statistics on the frequency of occurrence of certain
sample or magnitude-squared values. Since the GC1115 contains two snapshot RAMs, these statistics can be
used to simultaneously monitor the signal at two different stages of processing (such as at the input and at the
output). After a time, the histograms stored in RAM A and RAM B are read by the microprocessor or DSP, which
allows derived values (such as CCDF) to be obtained from the histogram bin counts.
27
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
Snapshot RAMs can be individually cleared (i.e. all entries set to zero) via control bits in the
SNAP_A_CONTROL and SNAP_B_CONTROL registers. Snapshot RAMs must be cleared prior to histogram
processing in order to zero all histogram counts.
Table 13 below shows how the snapshot RAM memory is used in capture and histogram modes. The addresses
in Table 13 are those that appear in the SNAP_A_ADDRESS or SNAP_B_ADDRESS registers.
Table 13. Snapshot RAM Addressing in Capture and Histogram Modes
MODE
ADDRESS
CONTENTS
Capture
0
I[0] (1)
1
Q[0] (1)
2
I[1] (1)
3
Q[1] (1)
Histogram
(1)
...
...
2046
I[1023] (1)
2047
Q[1023] (1)
0
HIST_MSW[0]
1
HIST_LSW[0]
2
HIST_MSW[1]
3
HIST_LSW[1]
...
...
2046
HIST_MSW[1023]
2047
HIST_LSW[1023]
In capture mode, the 16 MSBs of the 18-bit samples are saved. MSW = most significant word (upper
16 bits), LSW = least significant word (lower 16 bits)
The SNAP_ADDRESS registers autoincrement with each SNAP_DATA access. This autoincrementing can result
in addresses that exceed the allowed snapshot RAM address range. The GC1115 resolves this address overflow
condition by resetting the SNAP_ADDRESS register to zero if an autoincrement generates an address value
greater than 2047.
Input Decimator
When the input signal is highly oversampled, the GC1115 user may want to decimate the complex input stream
prior to PDC processing. The DECIMATE register is provided for such circumstances. Under most conditions,
decimating an input signal will result in decreased performance because the higher, non-decimated sampling rate
better represents the signal. However, if the GC1115 is unable to accept the original input sampling rate,
decimation by 2 is provided as an option. GC1115 users wanting to use the 2x decimation settings must be
aware of decimation’s effects on GC1115 clock generation. Please refer to the Operating Modes section of this
document for details about how DECIMATE = 2 affects GC1115 operation.
Interpolation Operation
The GC1115 contains an interpolator stage after the fourth (final) PDC Stage. This interpolation stage can be
bypassed by clearing bit 4 of the CONTROL register. The interpolation stage also provides the following optional
capability:
• Interpolate by 2, real output, fs/4 modulation at the upsampled sampling rate
• Interpolate by 2, complex output
• Interpolate by 4, real output, fs/4 modulation at the upsampled sampling rate
The interpolate-by-4 stage uses 40 interpolation coefficients. These interp-by-4 coefficients are stored at
addresses 0x82 thru 0xA9. When the interpolate-by-4 stage is bypassed, the GC1115 requires the interp-by-4
coefficients shown in Table 14 (these are the default interp-by-4 values after a GC1115 RESET):
28
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
Table 14. Interpolate-by-4 Bypass Coefficients
ADDRESS RANGE
INTERP-BY-4 COEFFICIENTS
0x82 – 0x85
0x8000, 0, 0, 0
0x86 – 0x89
0, 0, 0, 0
0x8A – 0x8D
0, 0, 0, 0
0x8E – 0x91
0, 0, 0, 0
0x92 – 0x95
0, 0, 0, 0
0x96 – 0x99
0, 0, 0, 0
0x9A – 0x9D
0, 0, 0, 0
0x9E – 0xA1
0, 0, 0, 0
0xA2 – 0xA5
0, 0, 0, 0
0xA6 – 0xA9
0, 0, 0, 0
When the interpolate-by-4 stage is active, the GC1115 requires the interp-by-4 coefficients shown in Table 15:
Table 15. Table 17. Interpolate-by-4 2x and 4x Interpolation Coefficients
ADDRESS RANGE
INTERP-BY-4 COEFFICIENTS
0x82 – 0x85
0, -4, -21, -35
0x86 – 0x89
0, 122, 287, 319
0x8A – 0x8D
0, -700, -1401, -1372
0x8E – 0x91
0, 2519, 4781, 4558
0x92 – 0x95
0, -8970, -20028, -29203
0x96 – 0x99
-32768, -29203, -20028, -8970
0x9A – 0x9D
0, 4558, 4781, 2519
0x9E – 0xA1
0, -1372, -1401, -700
0xA2 – 0xA5
0, 319, 287, 122
0xA6 – 0xA9
0, -35, -21, -4
When the interp-by-4 stage operates in real output mode (i.e. not in complex output mode), it also modulates the
input (baseband) signal to an intermediate frequency. For example, if IN_CLK is 61.44 Msamp/sec, interp-by-2
real mode would raise the sampling rate to 122.88 Msamp/sec (real samples) and the interpolated output signal
would be centered at 122.88 / 4 = 30.72 MHz after the interpolate-by-4 stage.
If the interpolated output sampling rate exceeds 130 Msamp/sec, the output ports must be configured in
odd/even mode. In odd/even mode, successive samples are demultiplexed between OUT_A and OUT_B ports,
effectively lowering the sampling rate on each output port by a factor of 2.
Soft Limiter Operation
NOTE:
Under nearly all operating conditions, the GC1115 Soft Limiter can safely be
bypassed by clearing bit 5 of the CONTROL register at address 0x3. The Soft Limiter
is only required for output PAR levels below 6 dB, when PDC canceler resources may
become continuously busy. However, at PAR levels below 6 dB, the cEVM and PCDE
levels are also likely to be out of spec, even if the Soft Limiter is enabled.
The soft limiter block is the final block in the GC1115 processing chain. The soft limiter provides a final check of
the output samples values after all four PDC stages, can optionally apply a user-specified, multiplicative
attenuation curve to over-threshold samples. When enabled, the soft limiter limits the output samples to the
SOFT_TSQD threshold-squared value. Values above SOFT_TSQD are adjusted over N samples, where N is
specified by the 2 LSBs in SOFT_LENGTH. Valid values for N are 5, 9, 17, or 33. Longer soft limiter lengths
provide more gradual roll-offs and thus provide smaller ACLR increases when the soft limiter is active.
29
GC1115
SLWS144 – FEBRUARY 2005
www.ti.com
A user-specified, normalized taper table (maximum of 16 table entries) is stored starting at address 0xC2. The
taper table entries are read twice: once in the forward direction, and once in the reverse direction. The taper
table is always used starting at SOFT_COEF0.
The inverse gain table (32 entries) works in conjunction with the SOFT_TAB_SCALE value. When the soft limiter
block finds an over-threshold peak, it calculates the difference between the peak’s mag-squared value and the
SOFT_TSQD threshold, and then shifts the difference to the right by SOFT_TAB_SCALE bits. The resulting
value should always be between 0 and 31, as this shifted value is used as the index into the inverse gain lookup
table. If the scaled index is greater than 31, the GC1115 hardware sets the index to 31. The inverse gain lookup
is applied to the taper table and (with a bit of extra math), the scaled taper table values are applied to the input
samples. After this soft limiter processing, the over-threshold peak’s amplitude is reduced to a value that is just
below the SOFT_TSQD threshold.
In pseudo-code, the soft limiter performs the following operations:
//
k is the index of the current sample.
in_pwr = in_I[k] ^ 2 + in_Q[k] ^ 2;
if (in_pwr > SOFT_TSQD) {
//
//
The difference between the current over-threshold sample’s
//
power and the threshold power is a measure of how much
//
over threshold the current sample is.
//
//
Because the inverse gain lookup table has only 32 entries, we
//
must guarantee that the lookup table index does not exceed 31.
//
diff = in_pwr - SOFT_TSQD;
table_index = diff >> SOFT_TAB_SCALE;
if (table_index > 31)
table_index = 31;
//
//
Get the inverse gain for this over-threshold peak. We
//
will use the inverse gain to scale the normalized taper
//
coefficients (SOFT_COEFS).
//
inverse_gain = SOFT_INVGAIN[table_index];
//
//
Scale the tapered gain with the inverse gain, and apply
//
the tapered, scaled values to the input samples
//
//
N is the number of samples in the taper coefficient table.
//
//
We will taper N/2 samples BEFORE the peak and N/2 samples
//
AFTER the peak.
//
j = k - (N/2);
for (i=0; i<N; i++, j++) {
sampleGain = 1 - (inverse_gain * SOFT_COEF[i]);
sample[j] *= sampleGain;
}
}
Output Gain and Offset Operation
The GC1115 includes output gains OUT_GAIN0 and OUT_GAIN1, which can provide up to a 4x increase in the
output signal’s gain. The OUT_GAIN registers allow users to apply a signed 16-bit output gain to both the I and
Q output sample streams just prior to output formatting (rounding to the user-selected number of output bits and
conversion to unsigned binary if requested).
The GC1115 also implements two or four DC offset adjustments (which are applied after the OUT_GAIN0 and
OUT_GAIN1 adjustments) for the I and Q data paths, to adjust for DC offsets in quadrature modulators that may
be present in the transmit chain after GC1115 processing. GC1115 users must calibrate the transmit path to
determine the appropriate values for the OUT_OFFSET_I0, _Q0, _I1, and _Q1 registers. When the GC1115 is
configured for real output, only the OUT_OFFSET_I0 value, and the OUT_OFFSET_I1 value if in two-channel
mode, are used.
Power Measurement
The GC1115 can measure signal power of a complex I/Q signal at one of two locations in the GC1115 datapath:
30
GC1115
www.ti.com
•
•
SLWS144 – FEBRUARY 2005
at the input to PDC Stage 1, and
at the output of PDC Stage 4
The POWER_CTL and POWER_CNT registers configure the GC1115 to measure power at one of these two
locations. The total number of samples observed during power measurement is POWER_CNT ×
POWER_CTL[13:0]. After power measurement has completed, the resulting average power value is available in
the POWER register.
The total number of samples used for the power calculation is the product of an inner loop count (determined by
the POWER_CNT register) and an outer loop count (determined by bits [13:0] of POWER_CTL):
POWER_CNT
--------0x1
0x3
0x7
0xF
inner loop count (# samples)
--------------------------16
256
4096
65536
The outer loop count is specified by the lower 14 bits of the POWER_CTL register, but only the most-significant
"1" matters - the other bits are ignored:
POWER_CTL[13:0]
--------------1
2 3
4 7
8 15
16 31
32 63
64 127
128 255
256 511
512 - 1023
1024 - 2047
2048 - 4095
4096 - 8191
8192 - 16383
outer loop count (# samples)
---------------------------1
2
4
8
16
32
64
128
256
512
1024
2048
4096
8192
For example, to calculate the average power over about a million samples, the GC1115 registers would be
initialized as follows:
POWER_CNT = 0xF (inner loop count = 65536)
POWER_CTL = 0x10 (outer loop count = 16)
Total # samples used to calculate power: 16 × 65536 = 1 048 576 samples
To summarize, the GC1115 performs the following steps during power measurement:
1. Use 18 bits I and 18 bits Q from each sample to calculate a 37-bit power value
NOTE:
Input samples must be left-justified, i.e. the input sample’s most significant bit is
always aligned to bit 17 (MSB) of input ports IN_A and IN_B.
2. Add the upper 16 bits of each 37-bit power value to a 40-bit power accumulator
3. Accumulate N = POWER_CNT × POWER_CTL[13:0]) sample powers
4. Shift the final accumulator value by 4 to 18 bits to calculate the average power over N samples, depending
on how POWER_CNT and POWER_CTL are set. The GC1115 does this shifting (divide by N) automatically.
5. Transfer the resulting 16 bits to the POWER register.
GC1115 users will also need to set the two MSBs of POWER_CTL properly, to specify whether the input or
output power is to be measured, and (in two-channel configuration) the channel number (channel 0 or channel 1)
whose power is to be measured.
31
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
High-Speed Real Output: Odd/Even Mode
When the output sampling rate exceeds 130 MHz (which may occur when the interp-by-4 block is enabled), the
GC1115 provides a high-speed odd-even output mode. This high-speed output mode requires that the
interp-by-4 block is either in interp-by-2, real output mode, or in interp-by-4, real output mode. The special
high-speed output mode is configured using bits [3:2] of IO_MODE (address 0x9): IO_MODE[3:2] = 11.
NOTE:
GC1115 users should only use the odd/even output mode when the output
pin-toggling rate on OUT_A and OUT_B exceeds 130 MHz.
SYNCHRONIZATION
Figure 12 demonstrates the various registers, input and output pins, and functional blocks that are involved in
synchronizing a variety of functional blocks within the GC1115. GC1115 synchronization involves three functional
areas:
• SYNC sources
• SYNC’d functional blocks, and
• SYNC registers
Refer to Figure 12 for the following discussion.
SYNC Sources
The GC1115 uses two hardware SYNC sources (pins), SYNC_A and SYNC_B. SYNC_A or SYNC_B events are
edge-triggered. Because hardware SYNC sources are active-low signals, the SYNC trigger occurs at the rising
edge, i.e. when SYNC is de-asserted.
The GC1115 has two software SYNC sources: SW_TRIGGER and TIMER. The SW_TRIGGER register
generates a trigger signal for each “1” in the SW_TRIGGER register. The SW_TRIGGER has individual SYNC
bits for each of the functional blocks that can be triggered. The software TIMER is a general-purpose, 32-bit
timer that controls the duration of various events, such as the number of samples captured by a snapshot RAM.
The software TIMER can be configured (via bit 15 of TIMER_SYNC) either to run once or periodically, resetting
to its initial value whenever the timer count reaches zero. Whenever the software timer’s count reaches zero (it is
a count-down timer), it generates a timer SYNC event.
Two other SYNC sources are provided for completeness: NEVER (i.e. the functional block will never be
triggered) and ALWAYS (i.e. the functional block will be updated as soon as its corresponding parameter is
updated). For some functional blocks that are comprised of multiple registers (such as the snapshot RAMs or the
cancellation coefficients), the ALWAYS state is invalid.
NOTE:
Setting a functional block’s SYNC register to NEVER is not the same as disabling the
functional block!
Functional Blocks and SYNC Registers
The operation of thirteen GC1115 functional blocks can be triggered by one of the SYNC sources:
• The receive block (GC1115 input) [use only SYNC_A or SYNC_B!]
• The pipeline stages [use only SYNC_A or SYNC_B!]
• The decimation function (to select a particular input sample phase) [use only SYNC_A or SYNC_B!]
• The software timer
• The PDC stage delay values (CANCEL_DELAY registers)
• The cancellation pulse coefficient shadow RAM
• The canceler RAM allocation variables (RESOURCE_CNT registers)
• The interpolate-by-4 block [use only SYNC_A or SYNC_B!]
• The output gain registers (OUT_GAIN0 and OUT_GAIN1)
32
GC1115
www.ti.com
•
•
•
•
SLWS144 – FEBRUARY 2005
The SYNC_OUT pin (for debugging or for synchronizing multiple GC1115s)
The signal generator functions
Snapshot RAM A
Snapshot RAM B
As shown in Table 16, SYNC selection registers control which SYNC source is assigned to each functional block.
Table 16 summarizes the SYNC source selection encoding, using the 3 LSBs of each SYNC register.
Table 16. SYNC Register Source Selection
SYNC SELECTION
SYNC REGISTER VALUE
(3 LSBs)
NEVER
0
SW_TRIGGER
1
TIMER
2
SYNC_A
3
SYNC_B
4
ALWAYS
5
(reserved)
6
(reserved)
7
33
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
Input Pins:
Microprocessor
write
SYNC_A SYNC_B
”NEVER”
SW_TRIGGER
SYNC
Sources
Timer
trigger
”ALWAYS”
TIMER
RCV_SYNC
Receive Block
STAGE_SYNC
Pipeline Stage Blocks
DECIM_SYNC
Decimate Block
TIMER_SYNC
SW Timer Block
DELAY_SYNC
Cancel Delay Block
CANCEL_SYNC
Cancel Coef Block
RESOURCE_SYNC
Cancel Resource Blk
INTERP_SYNC
Interp−by−4 Block
OUTGAIN_SYNC
OUT_GAIN0, 1 values
OUTPIN_SYNC
SYNC_OUT_ pin
SIG_GEN_SYNC
Signal Gen, CRC control
SNAP_A_SYNC
Snap A RAM
SNAP_B_SYNC
Snap B RAM
SYNC
Registers
Figure 12. GC1115 Synchronization Elements
34
Functional
Blocks
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
REGISTER MAP
Global Registers (Addresses 0 – 14)
RESET
0x0
Type: Read/Write Value at RESET: 0x0033
The RESET register provides separate bits to reset the GC1115 registers, the datapath, and the two PLLs.
Writing a 1 at a given bit location resets the functions mapped to that bit. Multiple bits can be set during each
write to the RESET register. The RESET register is unclocked, i.e. IN_CLK does not have to be toggling to
change RESET.
BITS
Configuration Reset
0 = running
1 = reset
1
Datapath Reset
0 = running
1 = reset
[3:2]
Reserved
4
CORE_PLL Reset
0 = running
1 = reset
5
TX_PLL Reset
0 = running
1 = reset
[16:6]
PLL_CONTROL
DESCRIPTION
0
0x1
Reserved
Type: Read/Write Value at RESET: 0x0000
The PLL_CONTROL register provides separate bits to control the GC1115’s core and transmit PLLs. The
PLL_CONTROL register is unclocked, i.e. IN_CLK does not have to be toggling to change
PLL_CONTROL.
Figure 7 demonstrates how the various bits of the PLL_CONTROL and CLK_CONTROL registers interact to
determine various GC1115 clock frequencies.
BITS
[1:0]
DESCRIPTION
Core PLL Control:
00: PLL_CLL = IN_CLK
01: PLL_CLK = 2 × IN_CLK
10: Reserved
11: PLL_CLK = 4 × IN_CLK
[7:2]
Reserved
[9:8]
Transmit PLL Control:
[15:10]
00: PLL_CLL = IN_CLK
01: PLL_CLK = 2 × IN_CLK
10: Reserved
11: PLL_CLK = 4 × IN_CLK
Reserved
35
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
CLK_CONTROL
0x2
Type: Read/Write Value at RESET: 0x1310
The CLK_CONTROL register provides separate bits to control the GC1115’s input, core, and output clocks. The
CLK_CONTROL register is unclocked, i.e. IN_CLK does not have to be toggling to change
CLK_CONTROL.
Figure 7 demonstrates how the various bits of the PLL_CONTROL and CLK_CONTROL registers interact to
determine various GC1115 clock frequencies.
BITS
[1:0]
DESCRIPTION
OUT_CLK source:
00: CLK_TX (after pad)
01: CLK_CORE (before buf)
10: CLK_CORE (after
buf)
11: CLK_TX (before pad)
2
IN_CLK edge selector
0 = rising, 1 = falling
3
PLL bypass
0 = use PLLs, 1 = bypass PLLs
[5:4]
Input clock rate:
00 – OFF
01 – inClk = PLL_CLK / 4
10 – inClk = PLL_CLK /
2
11 – inClk = PLL_CLK
[7:6]
Reserved
[9:8]
Core clock rate:
00 – OFF
01 – coreClk = PLL_CLK / 4
10 – coreClk = PLL_CLK 11 – coreClk = PLL_CLK
/2
[11:10]
Reserved
[13:12]
Output clock rate:
00 – OFF
01 – outClk = PLL_CLK / 4
10 – outClk = PLL_CLK / 11 – outClk = PLL_CLK
2
[15:14]
CONTROL
0x3
Reserved
Type: Read/Write Value at RESET: 0x0000
The CONTROL register provides separate bits to enable or to bypass the four peak detection and cancellation
(PDC) stages, the interpolate-by-4 block, and the soft limiter. If all bits are cleared, the GC1115 is in bypass
mode, during which no peaks are processed but the samples still flow through the GC1115’s internal delay
buffers.
BITS
36
DESCRIPTION
0
PDC Stage 1
0 = bypassed, 1 = enabled
1
PDC Stage 2
0 = bypassed, 1 = enabled
2
PDC Stage 3
0 = bypassed, 1 = enabled
3
PDC Stage 4
0 = bypassed, 1 = enabled
4
Interpolator
0 = bypassed, 1 = enabled
5
Soft limiter
0 = bypassed, 1 = enabled
[15:6]
Reserved
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
INT_MAP
0x4
Type: Read/Write Value at RESET: 0x0000
The INT_MAP register indicates the reason(s) for a GC1115-initiated interrupt on the INT pin. Read INT_MAP to
determine whether that condition occurred (indicated by a “1”). Write a “1” to individual bits of INT_MAP to clear
(reset) specific interrupt conditions. INT_MAP operates in conjunction with INT_MASK (0x5) in generating an INT
signal.
The INT_MAP and INT_MASK registers work together to control interrupt sources that trigger the INT (interrupt)
output pin, which is normally tied to the hardware interrupt pin of the microprocessor or DSP chip that controls
the GC1115. Setting one or more bits of the INT_MASK register unmasks (enables) the corresponding interrupt
source in the INT_MAP register. The GC1115 contains eight possible interrupt sources. When the
microprocessor receives a signal on its INT pin, INT_MAP should be read to determine the specific cause (or
causes) of the interrupt.
BITS
DESCRIPTION
0
Snapshot RAM A capture/histogram completion
1
Snapshot RAM B capture/histogram completion
2
Snapshot RAM A histogram bin overflow
3
Snapshot RAM B histogram bin overflow
4
Timer counted down to zero
5
Input power measurement completed
6
Cancellation update has completed
7
CRC is available in the CRC_RESULT register
[15:8]
INT_MASK
0x5
Reserved
Type: Read/Write Value at RESET: 0x0000
The INT_MASK register determines whether the corresponding individual interrupt conditions in the INT_MAP
register will cause an INT interrupt. A “0” in a bit position disables the condition from causing an INT interrupt. A
“1” in a bit position allows the condition to cause an INT interrupt. The INT_MAP and INT_MASK registers work
together to control interrupt sources that trigger the INT (interrupt) output pin, which is normally tied to the
hardware interrupt pin of the microprocessor or DSP chip that controls the GC1115. Setting one or more bits of
the INT_MASK register unmasks (enables) the corresponding interrupt source in the INT_MAP register.
BITS
DESCRIPTION
0
Snapshot RAM A capture/histogram completed: disable (0) or enable (1) interrupt
1
Snapshot RAM B capture/histogram completed: disable (0) or enable (1) interrupt
2
Snapshot RAM A histogram bin overflow occurred: disable (0) or enable (1) interrupt
3
Snapshot RAM B histogram bin overflow occurred: disable (0) or enable (1) interrupt
4
Timer counted down to zero:
disable (0) or enable (1)
5
Input power measurement
completed:
disable (0) or enable (1)
6
Cancellation update completed:
disable (0) or enable (1)
7
CRC available in
CRC_RESULT:
disable (0) or enable (1)
[15:8]
Reserved
37
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
MASK_REV
0x6
Type: Read Only
Value at RESET: 0x0001 (HW-version dependent)
The MASK_REV register allows the controlling microprocessor or DSP to determine the hardware revision of a
particular GC1115. MASK_REV is useful in determining, via software, which version of the GC1115 is present on
a board or in a system, in the event that different functionality exists in two or more revisions of GC1115 silicon.
BITS
[15:0]
SW_TRIGGER
0x7
DESCRIPTION
GC1115 mask revision (a 16-bit, non-zero value)
Type: Read/Write Value at RESET: 0x0000
The SW_TRIGGER register is a software trigger source that can synchronize one or more of thirteen internal
GC1115 components via software command. If a component’s SYNC register (from Address 0x19 to Address
0x25) selects SW_TRIG as its SYNC source, setting that component’s bit in the SW_TRIGGER register will sync
the component. The GC1115 automatically clears the SW_TRIGGER bits after the trigger occurs.
BITS
RCV_SYNC (receive datapath)
0 = no effect, 1 = trigger (SW_TRIGGER not
recommended)
1
STAGE_SYNC (PDC stage)
0 = no effect, 1 = trigger (SW_TRIGGER not
recommended)
2
DECIM_SYNC (decimator)
0 = no effect, 1 = trigger (SW_TRIGGER not
recommended)
3
TIMER_SYNC (SW timer)
0 = no effect, 1 = trigger
4
DELAY_SYNC (apply CANCEL_DELAY)
0 = no effect, 1 = trigger
5
CANCEL_SYNC (change cancel coefs)
0 = no effect, 1 = trigger
6
RESOURCE_SYNC (apply RESOURCE_CNT)
0 = no effect, 1 = trigger
7
INTERP_SYNC (sync interp-by-4 block)
0 = no effect, 1 = trigger (SW_TRIGGER not
recommended)
8
OUTGAIN_SYNC (change outgain)
0 = no effect, 1 = trigger
9
OUTPIN_SYNC (apply OUT_SYNC)
0 = no effect, 1 = trigger
10
SIG_GEN_SYNC (signal generator)
0 = no effect, 1 = trigger
11
SNAP_A_SYNC (Snapshot RAM A)
0 = no effect, 1 = trigger
12
SNAP_B_SYNC (Snapshot RAM B)
0 = no effect, 1 = trigger
[15:13]
38
DESCRIPTION
0
Reserved
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
IO_CONTROL
0x8
Type: Read/Write Value at RESET: 0x0000
The IO_CONTROL register controls various input and output port characteristics.
BITS
Input port format
0 = 2's complement
1 = unsigned
1
Output port format
0 = 2's complement
1 = unsigned
2
Output Port A enable (1)
0 = high-impedance
state
1 = enabled
3
Output Port B enable (1)
0 = high-impedance
state
1 = enabled
4
Output “force zeros (2)
0 = normal
1 = "force zeros"
[6:5]
Output sample width (3)
(2)
(3)
(4)
00: 18 bits
01: 16 bits
10: 14 bits
11: 12 bits
7
Reserved
8
Non-Port Output Enable (4) 0 = high-impedance
state
[15:9]
(1)
DESCRIPTION
0
1 = driven
Reserved
If Bit 2 AND Bit 3 are both zeros, OUT_CLK, OUT_IQ_SEL, SYNC_OUT, and INT will all be put into
a high-impedance state.
When forcing zeros, the output port format (Bit 1) determines the values used to drive the output
ports. Two's complement drives the output ports with all zeros, while unsigned drives the output ports
with a “1” for the MSB and zeros for all other output bits.
The output samples are always MSB-justified. Bits [6:5] simply determine the GC1115’s internal
convergent rounding point for the output samples.
Bit 8 affects all output pins (OUT_CLK, OUT_IQ_SEL, SYNC_OUT, and INT) except Port A and Port
B pins, which are separately enabled using Bits 2 and 3.
IO_MODE
0x9
Type: Read/Write Value at RESET: 0x0000
The IO_CONTROL register controls various input and output port characteristics.
BITS
DESCRIPTION
0
Number of channels
0 = one channel
1 = two channels
1
Input port I/Q mux
0 = parallel
1 = muxed
[3:2]
Bits [3:2]: One-channel output port mode:
Bits 3:2
OUT_A
OUT_B
00
Reserved
Reserved
01 (complex)
I/Q muxed samples
(not used)
10 (complex)
I sample
Q sample
11 (real)
Samples 0, 2, 4, . . .
Samples 1, 3, 5, . . .
During two-channel operation, the interp-by-4 mode determines which samples are carried
on Ports A and B:
[15:4]
Interp-b-4 mode
OUT_A
OUT_B
Bypass
Channel 0, I/Q muxed
Channel 1, I/Q muxed
2x (complex)
Channel 0, I/Q muxed
Channel 1, I/Q muxed
2x (real)
Channel 0, real samples
Channel 1, real samples
4x (real)
Channel 0, real samples
Channel 1, real samples
Reserved
39
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
POWER_CTL
0xA (10) Type: Read/Write Value at RESET: 0x0000
The POWER_CTL register controls various power measurement parameters. Power measurement begins
automatically when bits [13:0] of POWER_CTL contain a non-zero value. The results of power measurement are
returned in the POWER register. The microprocessor controlling the GC1115 can request an interrupt at the
conclusion of power measurement by setting Bit 5 of INT_MASK (address 0x5).
BITS
[13:0]
(1)
(2)
POWER
DESCRIPTION
Number of POWER_CNT
8191).
blocks (1)
used to measure the average power (a value from 0 to
14
Measure in/out power
0 = input
15
Measure Channel 0/Channel 1
power (2)
0 = Channel 0 1 = Channel 1
1 = output
The number of samples per block is specified in the POWER_CNT register (address 0x7F). Normally
POWER_CNT is set to 0xFFFF (65,536 samples per block).
During one-channel operation, setting POWER_CTL[15] to 1 will result in unpredictable power
measurements!
0xB (11) Type: Read Only
Value at RESET: 0x0000
The POWER register contains the results of a power measurement process that was initiated according to the
parameters in the POWER_CTL register. The microprocessor controlling the GC1115 can request an interrupt at
the conclusion of power measurement by setting Bit 5 of INT_MASK (address 0x5).
BITS
[15:0]
DECIMATE
DESCRIPTION
Average power measurement (0x0000 to 0xFFFF)
0xC (12) Type: Read/Write Value at RESET: 0x0001
The DECIMATE register determines the decimation factor at the input of the GC1115. When set to 2, only every
second input sample is processed by the GC1115 datapath. A decimation factor of 2 is only required when input
clock rates below 25 MHz or above 75 MHz are used. When DECIMATE = 2, the GC1115 user must provide a
properly aligned synchronization signal (normally SYNC_A or SYNC_B) to select which input sample phase is
used to align the GC1115’s decimator. The DECIM_SYNC register selects the source of the decimator’s SYNC
signal.
BITS
[1:0]
DESCRIPTION
Decimation factor:
01: no decimation
[15:2]
TIMER_HI_RST
10: decimate by 2
Reserved
0xD (13) Type: Read/Write Value at RESET: 0x0000
The TIMER_HI_RST and TIMER_LO_RST registers (each 16 bits wide) determine the reset value of the
GC1115’s programmable software timer. This timer can be enabled to control the occurrence of SYNC events
during GC1115 processing. TIMER_HI_RST and TIMER_LO_RST are combined into a 32-bit unsigned value
that is clocked with every internal GC1115 clock. The TIMER_HI_RST and TIMER_LO_RST registers operate in
conjunction with the TIMER_SYNC register.
BITS
[15:0]
40
DESCRIPTION
Upper 16 bits of the GC1115’s 32-bit timer reset value.
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
TIMER_LO_RST
0xE (14) Type: Read/Write Value at RESET: 0x0000
The TIMER_LO_RST and TIMER_HI_RST registers (each 16 bits wide) determine the reset value of the
GC1115’s programmable software timer. This timer can be enabled to control the occurrence of SYNC events
during GC1115 processing. TIMER_HI_RST and TIMER_LO_RST are combined into a 32-bit unsigned value
which is clocked with every internal GC1115 clock. The TIMER_HI_RST and TIMER_LO_RST registers operate
in conjunction with the TIMER_SYNC register.
BITS
[15:0]
DESCRIPTION
Lower 16 bits of the GC1115’s 32-bit timer reset value.
Cancellation Coefficient Registers (Addresses 15 – 20)
CANCEL_MODE
0xF (15) Type: Read/Write Value at RESET: 0x0000
The CANCEL_MODE register sets the characteristics of the cancellation coefficients. The GC1115 operates
using either real (symmetric carrier spectra) or complex (asymmetric carrier spectra) cancellation coefficients. For
symmetric spectra, the cancellation coefficients can also be unique or mirrored. Mirrored coefficients are only
needed when a cancellation pulse with more than 255 coefficients is desired. [Note: cancellation pulses with
about 100 unique coefficients are more than adequate to meet all 3G or cdma2000 requirements]. Mirrored
mode is also useful because only half of the coefficients need be downloaded, thus shortening the time required
to provide the GC1115 with a new set of cancellation coefficients. When mirrored mode is used, the GC1115
applies N real cancellation coefficients in the following order:
coef[0], coef[1], …, coef[N-2], coef[N-1], coef[N-2], …, coef[1], coef[0]
Bits [11:8] of CANCEL_MODE contain a peak hysteresis (timeout) count whose value is determined during
cancellation pulse design. Under most operating conditions, the hysteresis count is zero. However, for some
configurations with large gaps between carriers (“missing” carriers), the hysteresis count will have a non-zero
value of 6 or less. Please contact TI to determine how to calculate the peak hysteresis count for your cancellation
coefficients.
BITS
DESCRIPTION
0
Cancel coef format
0 = real
1 = complex
1
Mirrored coefs
0 = unique
1 = mirrored
[7:2]
Reserved
[11:8]
Peak hysteresis count (0
to 6)
[15:12]
Reserved
41
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
CANCEL_LENGTH
0x10 (16)
Type: Read/Write Value at RESET: 0x0000
The CANCEL_LENGTH register determines the number of unique cancellation coefficients present in each
cancellation pulse (ignoring the “mirror” mode bit of the CANCEL_MODE register). The CANCEL_LENGTH must
be an odd value. See Table 10, Table 11, and Table 12 for details on the proper use of CANCEL_LENGTH. Note
that CANCEL_LENGTH and CANCEL_DELAY are related – see the discussion in the earlier section entitled
CANCEL_LENGTH and CANCEL_DELAY.
BITS
[7:0]
[15:8]
DESCRIPTION
Number of unique cancellation coefficients:
For real coefficients:
odd number from 5 to 255
For complex coefficients:
odd number from 5 to 127
Reserved
NOTE:
In most circumstances, CANCEL_LENGTH should be at least 15. For 3GPP
processing, CANCEL_LENGTH of 101 or less achieves all relevant requirements.
CANCEL_ADDR
0x11 (17)
Type: Read/Write
Value at RESET: 0x0000
The CANCEL_ADDR register is used to access the GC1115 shadow RAM memory. The earlier Cancellation
Coefficient Shadow RAM section described the structure of the cancellation coefficient shadow RAM. After
writing a unique address (from 0 to 767) to CANCEL_ADDR, subsequent writes to (or reads from) the
CANCEL_DATA register will auto-increment CANCEL_ADDR. The auto-increment and direct address modes
were described earlier in Writing Cancellation Coefficients to the GC1115.
BITS
[9:0]
[15:10]
CANCEL_DATA
DESCRIPTION
Cancellation coefficient shadow RAM memory address (0 to 767)
Reserved
0x12 (18)
Type: Read/Write
Value at RESET: 0x0000
The CANCEL_DATA register holds the 16-bit value to be written to (or read from) GC1115 cancellation
coefficient shadow RAM. The structure of the cancellation coefficient memory is described in Cancellation
Coefficient Shadow RAM. After writing a unique address (from 0 to 767) to CANCEL_ADDR, subsequent writes
to (or reads from) the CANCEL_DATA register will auto-increment CANCEL_ADDR.
BITS
[15:0]
42
DESCRIPTION
Value written to (or read from) cancellation coefficient shadow RAM at the address
specified in CANCEL_ADDR.
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
RESOURCE_MASK
0x13 (19)
Type: Read/Write Value at RESET: 0x00FF
The RESOURCE_MASK register contains an 8-bit field that determines which canceler RAMs will be initialized
after a CANCEL_SYNC trigger. By setting RESOURCE_MASK one bit at a time, canceler RAMs can be updated
one at a time. If all canceler RAMs were updated at the same time, there would be some short time period (a few
microseconds) in which no cancelers would be active. During this time, over-threshold peaks would pass through
the GC1115 without being canceled, which may be undesirable. Changing canceler RAMs one PDC stage at a
time allows subsets of canceler RAMs to be modified without disabling all cancelers.
BITS
DESCRIPTION
0
Canceler RAM 0 update
status:
0 = do not update
1 = update
1
Canceler RAM 1 update
status:
0 = do not update
1 = update
2
Canceler RAM 2 update
status:
0 = do not update
1 = update
3
Canceler RAM 3 update
status:
0 = do not update
1 = update
4
Canceler RAM 4 update
status:
0 = do not update
1 = update
5
Canceler RAM 5 update
status:
0 = do not update
1 = update
6
Canceler RAM 6 update
status:
0 = do not update
1 = update
7
Canceler RAM 7 update
status:
0 = do not update
1 = update
[15:8]
Reserved
NOTE:
The GC1115 user must ensure that the values in RESOURCE_CNT1, RESOURCE_CNT2, RESOURCE_CNT3, and RESOURCE_CNT4 sum to 8 or less,
since there are only 8 canceler RAMs.
DELAY_MASK
0x12 (20)
Type: Read/Write
Value at RESET: 0x00FF
The DELAY_MASK register determines which peak detect and cancel (PDC) stages are updated when the
CANCEL_DELAY value is changed (i.e. when a DELAY_SYNC event occurs). Each of the four PDC stages has
its own CANCEL_DELAY value, so that different cancellation pulse delays could in theory be used by each PDC
stage. Under normal circumstances, however, CANCEL_DELAY will be identical for all PDC stages, since the
same cancellation pulse is normally stored in all canceler RAMs.
BITS
DESCRIPTION
0
PDC Stage 0 update
status:
0 = do not update
1 = update
1
PDC Stage 1 update
status:
0 = do not update
1 = update
2
PDC Stage 2 update
status:
0 = do not update
1 = update
3
PDC Stage 3 update
status:
0 = do not update
1 = update
[15:4]
Reserved
43
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
Signal Generator and CRC Registers (Addresses 21– 24)
SIG_GEN_CTL
0x15 (21)
Type: Read/Write
Value at RESET: 0x0000
The SIG_GEN_CTL register controls the operation of a signal generator. When enabled, the signal generator’s
outputs feed the I and Q inputs of PDC Stage 1. In pseudo-LFSR mode, the GC1115 generates a signal with a
PAR of approximately 10 dB. In order to properly generate a periodic signal and its related periodic CRC, the
GC1115 must be initialized by parameters provided by TI. If CRC generation is not required, the CRC_RESULT
register can simply be ignored, and the signal generator can be used without any restrictions.
Bit 7 of INT_MAP indicates when the CRC result is available. When Bit 7 of INT_MASK is set, the GC1115 will
interrupt the controlling microprocessor or DSP to indicate that the CRC_RESULT register can be read. Once
this bit is set, the microprocessor or DSP must manually clear Bit 7 of INT_MAP prior to subsequent “CRC result
available” interrupts.
BITS
[1:0]
DESCRIPTION
Signal generator and CRC control:
00 = Signal Generator and CRC Generator are DISABLED
01 = Signal Generator in DC or sawtooth mode (CRC enabled)
if SIG_GEN_INC = 0, generate DC value of SIG_GEN_BASE
if SIG_GEN_INC > 0, generate a sawtooth waveform
10 = pseudo-LFSR with 10 dB PAR (CRC generator enabled)
11 = External (CRC generator enabled)
[15:2]
SIG_GEN_BASE
Reserved
0x16 (22)
Type: Read/Write
Value at RESET: 0x0000
The SIG_GEN_BASE register specifies the output value for DC signal generation, or the starting accumulator
value for sawtooth signal generation. While SIG_GEN_BASE is a 16-bit value, the GC1115 DC/sawtooth signal
generator uses an 18-bit signed accumulator. SIG_GEN_BASE initializes the 16 LSBs of this 18-bit accumulator,
with proper sign extension. If bit 15 of SIG_GEN_BASE is set, bits 17, 16, and 15 of the internal 18-bit
accumulator will also be set. If bit 15 of SIG_GEN_BASE is clear, bits 17, 16, and 15 of the internal 18-bit
accumulator will also be clear. When the signal generator is enabled in DC or sawtooth mode, the 18-bit
accumulator value drives the 18-bit I input of PDC Stage 1. The bit-reversed version of the 18-bit accumulator
drives the 18-bit Q input of PDC Stage 2.
If GC1115 users want to observe the signal generator output at OUT__A and OUT__B, the detection and gain
thresholds for all enabled PDC stages should be set to 0xFFFF (i.e. no peaks will be found). Alternately, there
are two ways of achieving this: 1. All PDC stages are disabled in the CONTROL register, 2. No cancelers are
assigned to any PDC stages (using the four RESOURCE_CNT registers).
BITS
[15:0]
SIG_GEN_INC
DESCRIPTION
Signal generator accumulator value (for DC and sawtooth signals)
[initial value of a signed, 18-bit internal accumulator]
0x17 (23)
Type: Read/Write
Value at RESET: 0x0000
The SIG_GEN_INC register specifies the signed increment value for sawtooth signal generation. At each
IN_CLK, the signal generator adds the signed, 16-bit SIG_GEN_INC value to the current 18-bit accumulator.
BITS
[15:0]
44
DESCRIPTION
Signal generator increment value (for sawtooth signals)
[increment value applied to a signed, 18-bit internal accumulator]
GC1115
www.ti.com
CRC_RESULT
SLWS144 – FEBRUARY 2005
0x18 (24)
Type: Read Only
Value at RESET: 0x0000
The CRC_RESULT register holds the CRC generator value. The signal generator must be properly configured to
ensure a periodic signal for the CRC_RESULT to be repeatable. The SIG_GEN_SYNC event must have the
same period as the signal generator, otherwise the CRC_RESULT will be invalid. Contact TI to receive an
appropriate set of signal generator configuration and CRC_RESULT values.
BITS
[15:0]
DESCRIPTION
CRC result (reaches steady state after four SIG_GEN_SYNC events)
Synchronization Registers (Addresses 25 – 37)
RCV_SYNC
0x19 (25)
Type: Read/Write
Value at RESET: 0x0000
The RCV_SYNC register selects the synchronization source for the GC1115’s receive datapath. SYNC_A or
SYNC_B must be used as the RCV_SYNC source.
BITS
[2:0]
[15:3]
STAGE_SYNC
DESCRIPTION
RCV_SYNC selection:
0: invalid
1: invalid
2: invalid
3: SYNC_A
4: SYNC_B
5: invalid
6: invalid
7: invalid
Reserved
0x1A (26)
Type: Read/Write
Value at RESET: 0x0000
The STAGE_SYNC register selects the synchronization source for the GC1115’s PDC stages. SYNC_A or
SYNC_B must be used as the STAGE_SYNC source.
BITS
[2:0]
[15:3]
DECIM_SYNC
DESCRIPTION
STAGE_SYNC selection:
0: invalid
1: invalid
2: invalid
3: SYNC_A
4: SYNC_B
5: invalid
6: invalid
7: invalid
Reserved
0x1B (27)
Type: Read/Write
Value at RESET: 0x0000
The DECIM_SYNC register selects the synchronization source for the GC1115’s decimator. Because the
decimator processes input samples, a hardware synchronization source (SYNC_A or SYNC_B) must be used
when DECIMATE = 2, allowing the user to select which phase of the input signal stream is processed by the
decimator.
BITS
[2:0]
[15:3]
DESCRIPTION
STAGE_SYNC selection:
0: invalid
1: invalid
2: invalid
3: SYNC_A
4: SYNC_B
5: invalid
6: invalid
7: invalid
Reserved
45
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
TIMER_SYNC
0x1C (28)
Type: Read/Write Value at RESET: 0x0000
The TIMER_SYNC register selects the synchronization source for the GC1115’s software timer. In addition, Bit
15 of TIMER_SYNC determines whether the software timer runs once (Bit 15 = 0) or runs repeatedly (Bit 15 = 1).
BITS
[2:0]
[14:3]
15
DELAY_SYNC
DESCRIPTION
STAGE_SYNC selection:
0: NEVER
1: SW_TRIGGER
2: TIMER
3: SYNC_A
4: SYNC_B
5: ALWAYS
6: invalid
7: invalid
Reserved
Timer repeat:
0x1D (29)
0: do not repeat (run
once)
Type: Read/Write
1: repeat
Value at RESET: 0x0000
The DELAY_SYNC register selects the synchronization source that triggers the GC1115’s CANCEL_DELAY
being copied to PDC stages selected by DELAY_MASK. Under normal circumstances, all cancel RAMs contain
the same set of cancellation coefficients. When this is the case, DELAY_MASK is set to 0xF, and
CANCEL_DELAY1 thru CANCEL_DELAY4 are copied to their respective internal registers as soon as
DELAY_SYNC is triggered. Under normal circumstances, DELAY_SYNC can be set to ALWAYS, i.e. as soon as
CANCEL_DELAY1 thru CANCEL_DELAY4 are written, their corresponding internal registers are immediately
updated.
BITS
[2:0]
[15:3]
CANCEL_SYNC
DESCRIPTION
DELAY_SYNC selection:
0: NEVER
1: SW_TRIGGER
2: TIMER
3: SYNC_A
4: SYNC_B
5: ALWAYS
6: invalid
7: invalid
Reserved
0x1E (30)
Type: Read/Write
Value at RESET: 0x0000
The CANCEL_SYNC register selects the synchronization source that causes the GC1115’s cancel coefficient
shadow RAM values to be copied to the canceler RAMs whose corresponding RESOURCE_MASK bit is set. At
GC1115 initialization, all cancel RAMs are normally initialized using the same set of cancellation coefficients.
When this occurs, RESOURCE_MASK is set to 0xFF and the shadow RAM coefficients are copied to all
canceler RAMs as soon as the CANCEL_SYNC trigger occurs. It is convenient for the microprocessor or DSP to
use SW_TRIGGER as the CANCEL_SYNC source. As soon as the shadow RAM has been initialized, the
microprocessor or DSP can then simply write a 0x20 to SW_TRIGGER, causing a trigger that only affects the
CANCEL_SYNC functional block.
BITS
[2:0]
[15:3]
46
DESCRIPTION
CANCEL_SYNC selection:
0: NEVER
1: SW_TRIGGER
2: TIMER
3: SYNC_A
4: SYNC_B
5: ALWAYS
6: invalid
7: invalid
Reserved
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
RESOURCE_SYNC
0x1F (31)
Type: Read/Write Value at RESET: 0x0000
The RESOURCE_SYNC register determines the synchronization source when canceler resources are allocated
or re-allocated. The GC1115 contains a total of 32 cancelers, which can be assigned in groups of four to the four
PDC stages. Each stage contains a RESOURCE_CNT register that specifies how many canceler RAMs (0 to 8)
are assigned to that stage. The canceler allocation changes when the RESOURCE_SYNC trigger occurs. The
RESOURCE_SYNC register determines the source of the trigger event that configures the GC1115 with the
specified RESOURCE_CNT values. It is convenient for the microprocessor or DSP to use SW_TRIGGER as the
RESOURCE_SYNC source. As soon as the RESOURCE_CNT registers have been initialized, the
microprocessor or DSP can then simply write a 0x40 to SW_TRIGGER, causing a sync event that only affects
the RESOURCE_SYNC functional block.
BITS
[2:0]
[15:3]
INTERP_SYNC
DESCRIPTION
RESOURCE_SYNC selection:
0: NEVER
1: SW_TRIGGER
2: TIMER
3: SYNC_A
4: SYNC_B
5: ALWAYS
6: invalid
7: invalid
Reserved
0x20 (32)
Type: Read/Write Value at RESET: 0x0000
The INTERP_SYNC register determines the synchronization source for the GC1115’s interpolator. The GC1115’s
interpolator operates in four modes:
1. Bypass,
2. 2x interp (real output, fs/4),
3. 2x interp (complex output),
4. 4x interp (real output, fs/4).
To ensure proper operation in the non-bypass interpolator modes, the GC1115 interpolator must use either
SYNC_A or SYNC_B as its synchronization source.
BITS
[2:0]
INTERP_SYNC selection:
[15:3]
OUTGAIN_SYNC
DESCRIPTION
0: invalid
1: invalid
2: invalid
3: SYNC_A
4: SYNC_B
5: invalid
6: invalid
7: invalid
Reserved
0x21 (33)
Type: Read/Write Value at RESET: 0x0000
The OUTGAIN_SYNC register determines the synchronization source for the GC1115’s output gain and offset
values, stored in the OUT_GAIN0, OUT_GAIN1, OUT_OFFSET_I0, OUT_OFFSET_I1, OUT_OFFSET_Q0, and
OUT_OFFSET_Q1 registers. OUTGAIN_SYNC can normally be set to ALWAYS, so that the microprocessor or
DSP’s writing to the OUT_GAINx and OUT_OFFSETy registers immediately causes the change. All OUT_GAIN
and OUT_OFFSET registers are modified when the OUT_SYNC trigger occurs.
BITS
[2:0]
[15:3]
DESCRIPTION
OUTGAIN_SYNC selection:
0: NEVER
1: SW_TRIGGER
2: TIMER
3: SYNC_A
4: SYNC_B
5: ALWAYS
6: invalid
7: invalid
Reserved
47
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
OUTPIN_SYNC
0x22 (34)
Type: Read/Write Value at RESET: 0x0000
The OUTPIN_SYNC register determines the synchronization source for the SYNC_OUT pin. Because the
SYNC_OUT pin is often used to synchronize hardware that follows the GC1115, OUTPIN_SYNC is normally set
to SYNC_A or SYNC_B.
BITS
[2:0]
[15:3]
SIG_GEN_SYNC
DESCRIPTION
OUTPIN_SYNC
selection:
0: NEVER
1: SW_TRIGGER
2: TIMER
3: SYNC_A
4: SYNC_B
5: ALWAYS
6: invalid
7: invalid
Reserved
0x23 (35)
Type: Read/Write
Value at RESET: 0x0000
The SIG_GEN_SYNC register determines the synchronization source for the GC1115’s internal signal generator.
After the SIG_GEN_CTL, SIG_GEN_BASE, and SIG_GEN_INC registers have been initialized, a
SIG_GEN_SYNC trigger starts the signal generator. It is convenient for the microprocessor or DSP to use
SW_TRIGGER as the SIG_GEN_SYNC source. As soon as the SIG_GEN_CTL, SIG_GEN_BASE, and
SIG_GEN_INC registers have been initialized, the microprocessor or DSP can then simply write a 0x400 to
SW_TRIGGER, causing a sync event that only affects the SIG_GEN_SYNC functional block.
BITS
[2:0]
[15:3]
48
DESCRIPTION
SIG_GEN_SYNC
selection:
0: NEVER
1: SW_TRIGGER
2: TIMER
3: SYNC_A
4: SYNC_B
5: ALWAYS
6: invalid
7: invalid
Reserved
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
SNAP_A_SYNC
0x24 (36)
Type: Read/Write
Value at RESET: 0x0000
The SNAP_A_SYNC register determines the synchronization source for the GC1115’s Snapshot RAM A. After
the appropriate SNAP_A registers (from SNAP_A_CONTROL to SNAP_A_HISTCOUNT) have been initialized, a
SNAP_A_SYNC trigger enables Snapshot RAM A. Snapshot RAM A can be triggered either by software or by
hardware. If a particular Snapshot RAM A timing relationship must be established with the input samples,
SNAP_A_SYNC should be associated with SYNC_A or SYNC_B. Alternately, the microprocessor or DSP can
initiate a Snapshot RAM A capture by assigning SW_TRIGGER as the SNAP_A_SYNC event. Snapshot RAM A
and Snapshot RAM B can operate simultaneously, and both may be triggered by the same SYNC event.
NOTE:
SNAP_A_SYNC cannot be associated with a repeating TIMER trigger.
BITS
[2:0]
[15:3]
SNAP_B_SYNC
DESCRIPTION
SNAP_A_SYNC
selection:
0: NEVER
1: SW_TRIGGER
2: TIMER
3: SYNC_A
4: SYNC_B
5: ALWAYS
6: invalid
7: invalid
Reserved
0x25 (37)
Type: Read/Write Value at RESET: 0x0000
The SNAP_B_SYNC register determines the synchronization source for the GC1115’s Snapshot RAM B. After
the appropriate SNAP_B registers (from SNAP_B_CONTROL to SNAP_B_HISTCOUNT) have been initialized, a
SNAP_B_SYNC trigger enables Snapshot RAM B. Snapshot RAM B can be triggered either by software or by
hardware. If a particular Snapshot RAM B timing relationship must be established with the input samples,
SNAP_B_SYNC should be associated with SYNC_A or SYNC_B. Alternately, the microprocessor or DSP can
initiate a Snapshot RAM B capture by assigning SW_TRIGGER as the SNAP_B_SYNC event. Snapshot RAM A
and Snapshot RAM B can operate simultaneously, and both may be triggered by the same SYNC event.
NOTE:
SNAP_B_SYNC cannot be associated with a repeating TIMER trigger.
BITS
[2:0]
[15:3]
DESCRIPTION
SNAP_B_SYNC selection:
0: NEVER
1: SW_TRIGGER
2: TIMER
3: SYNC_A
4: SYNC_B
5: ALWAYS
6: invalid
7: invalid
Reserved
49
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
Cancellation Stage Control Registers (Addresses 48 – 75)
RESOURCE_CNT1
0x30 (48)
Type: Read/Write
Value at RESET: 0x0000
The RESOURCE_CNT1 register specifies how many canceler RAMs are associated with PDC Stage 1.
RESOURCE_CNT1 contains a value between 0 and 8. The sum of canceler RAMs in RESOURCE_CNT1,
RESOURCE_CNT2, RESOURCE_CNT3, and RESOURCE_CNT4 must be 8 or less. Resource allocations
become effective only after a RESOURCE_SYNC event occurs. The RESOURCE_SYNC register selects the
source of the RESOURCE_SYNC event.
BITS
DESCRIPTION
[3:0]
Number of canceler RAMs assigned to PDC Stage 1 (from 0 to 8)
[15:4]
Reserved
DETECT_TSQD1
0x31 (49)
Type: Read/Write
Value at RESET: 0x0000
The DETECT_TSQD1 register contains the detection threshold-squared value for PDC Stage 1. The detection
threshold-squared value is usually calculated from the average power (0 dB point) of the GC1115 input signal.
Interpolated peaks found by PDC Stage 1 whose magnitude is above DETECT_TSQD1 will be decreased to the
magnitude-squared value specified in GAIN_TSQD1, assuming that PDC Stage 1 has an available canceler.
BITS
[15:0]
GAIN_TSQD1
DESCRIPTION
Detection threshold-squared value for PDC Stage 1.
0x32 (50)
Type: Read/Write
Value at RESET: 0x0000
The GAIN_TSQD1 register contains the gain threshold-squared value for PDC Stage 1. The gain
threshold-squared value is usually calculated from the average power (0 dB point) of the GC1115 input signal.
Interpolated peaks found by PDC Stage 1 whose magnitude is above DETECT_TSQD1 will be decreased to the
magnitude-squared value specified in GAIN_TSQD1, assuming that PDC Stage 1 has an available canceler.
BITS
[15:0]
CANCEL_DELAY1
DESCRIPTION
Gain threshold-squared value for PDC Stage 1.
0x33 (51)
Type: Read/Write
Value at RESET: 0x0000
The CANCEL_DELAY1 register contains the PDC Stage 1 cancellation pulse delay, in samples. For real
cancellation pulses, CANCEL_DELAY = (CANCEL_LENGTH – 1) / 2. If minimum-phase cancellation pulses are
used, CANCEL_DELAY < (CANCEL_LENGTH – 1) / 2. The contents of the CANCEL_DELAY1 register are
applied to the GC115 hardware delay block only after a CANCEL_SYNC event occurs.
BITS
50
DESCRIPTION
[7:0]
Cancel pulse delay for PDC Stage 1 (a value from 5 to 255)
[15:8]
Reserved
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
RESOURCE_CNT2
0x38 (56) Type: Read/Write Value at RESET: 0x0000
The RESOURCE_CNT2 register specifies how many canceler RAMs are associated with PDC Stage 2.
RESOURCE_CNT2 contains a value between 0 and 8. The sum of canceler RAMs in RESOURCE_CNT1,
RESOURCE_CNT2, RESOURCE_CNT3, and RESOURCE_CNT4 must be 8 or less. Resource allocations
become effective only after a RESOURCE_SYNC event occurs. The RESOURCE_SYNC register selects the
source of the RESOURCE_SYNC event.
BITS
DESCRIPTION
[3:0]
Number of canceler RAMs assigned to PDC Stage 2 (from 0 to 8)
[15:4]
Reserved
DETECT_TSQD2
0x39 (57)
Type: Read/Write Value at RESET: 0x0000
The DETECT_TSQD2 register contains the detection threshold-squared value for PDC Stage 2. The detection
threshold-squared value is usually calculated from the average power (0 dB point) of the GC1115 input signal.
Interpolated peaks found by PDC Stage 2 whose magnitude is above DETECT_TSQD2 will be decreased to the
magnitude-squared value specified in GAIN_TSQD2, assuming that PDC Stage 2 has an available canceler.
BITS
[15:0]
GAIN_TSQD2
DESCRIPTION
Detection threshold-squared value for PDC Stage 2.
0x3A (58)
Type: Read/Write Value at RESET: 0x0000
The GAIN_TSQD2 register contains the gain threshold-squared value for PDC Stage 2. The gain
threshold-squared value is usually calculated from the average power (0 dB point) of the GC1115 input signal.
Interpolated peaks found by PDC Stage 2 whose magnitude is above DETECT_TSQD2 will be decreased to the
magnitude-squared value specified in GAIN_TSQD2, assuming that PDC Stage 2 has an available canceler.
BITS
[15:0]
CANCEL_DELAY2
DESCRIPTION
Gain threshold-squared value for PDC Stage 2.
0x3B (59)
Type: Read/Write
Value at RESET: 0x0000
The CANCEL_DELAY2 register contains the PDC Stage 2 cancellation pulse delay, in samples. For real
cancellation pulses, CANCEL_DELAY = (CANCEL_LENGTH – 1) / 2. If minimum-phase cancellation pulses are
used, CANCEL_DELAY < (CANCEL_LENGTH – 1) / 2. The contents of the CANCEL_DELAY2 register are
applied to the GC115 hardware delay block only after a CANCEL_SYNC event occurs.
BITS
DESCRIPTION
[7:0]
Cancel pulse delay for PDC Stage 2 (a value from 5 to 255)
[15:8]
Reserved
51
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
RESOURCE_CNT3
0x40 (64)
Type: Read/Write Value at RESET: 0x0000
The RESOURCE_CNT3 register specifies how many canceler RAMs are associated with PDC Stage 3.
RESOURCE_CNT3 contains a value between 0 and 8. The sum of canceler RAMs in RESOURCE_CNT1,
RESOURCE_CNT2, RESOURCE_CNT3, and RESOURCE_CNT4 must be 8 or less. Resource allocations
become effective only after a RESOURCE_SYNC event occurs. The RESOURCE_SYNC register selects the
source of the RESOURCE_SYNC event.
BITS
DESCRIPTION
[3:0]
Number of canceler RAMs assigned to PDC Stage 3 (from 0 to 8)
[15:4]
Reserved
DETECT_TSQD3
0x41 (65)
Type: Read/Write
Value at RESET: 0X0000
The DETECT_TSQD3 register contains the detection threshold-squared value for PDC Stage 3. The detection
threshold-squared value is usually calculated from the average power (0 dB point) of the GC1115 input signal.
Interpolated peaks found by PDC Stage 3 whose magnitude is above DETECT_TSQD3 will be decreased to the
magnitude-squared value specified in GAIN_TSQD3, assuming that PDC Stage 3 has an available canceler.
BITS
[15:0]
GAIN_TSQD3
DESCRIPTION
Detection threshold-squared value for PDC Stage 1.
0x42 (66)
Type: Read/Write
Value at RESET: 0X0000
The GAIN_TSQD3 register contains the gain threshold-squared value for PDC Stage 3. The gain
threshold-squared value is usually calculated from the average power (0 dB point) of the GC1115 input signal.
Interpolated peaks found by PDC Stage 3 whose magnitude is above DETECT_TSQD3 will be decreased to the
magnitude-squared value specified in GAIN_TSQD3, assuming that PDC Stage 3 has an available canceler.
BITS
[15:0]
CANCEL_DELAY3
DESCRIPTION
Gain threshold-squared value for PDC Stage 3.
0x43 (67) Type: Read/Write
Value at RESET: 0X0000
The CANCEL_DELAY3 register contains the PDC Stage 3 cancellation pulse delay, in samples. For real
cancellation pulses, CANCEL_DELAY = (CANCEL_LENGTH – 1) / 2. If minimum-phase cancellation pulses are
used, CANCEL_DELAY < (CANCEL_LENGTH – 1) / 2. The contents of the CANCEL_DELAY3 register are
applied to the GC115 hardware delay block only after a CANCEL_SYNC event occurs.
BITS
52
DESCRIPTION
[7:0]
Cancel pulse delay for PDC Stage 3 (a value from 5 to 255)
[15:8]
Reserved
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
RESOURCE_CNT4
0x48 (72) Type: Read/Write Value at RESET: 0x0000
The RESOURCE_CNT4 register specifies how many canceler RAMs are associated with PDC Stage 4.
RESOURCE_CNT1 contains a value between 0 and 8. The sum of canceler RAMs in RESOURCE_CNT1,
RESOURCE_CNT2, RESOURCE_CNT3, and RESOURCE_CNT4 must be 8 or less. Resource allocations
become effective only after a RESOURCE_SYNC event occurs. The RESOURCE_SYNC register selects the
source of the RESOURCE_SYNC event.
BITS
DESCRIPTION
[3:0]
Number of canceler RAMs assigned to PDC Stage 4 (from 0 to 8)
[15:4]
Reserved
DETECT_TSQD4
0x49 (73)
Type: Read/Write
Value at RESET: 0x0000
The DETECT_TSQD4 register contains the detection threshold-squared value for PDC Stage 4. The detection
threshold-squared value is usually calculated from the average power (0 dB point) of the GC1115 input signal.
Interpolated peaks found by PDC Stage 4 whose magnitude is above DETECT_TSQD4 will be decreased to the
magnitude-squared value specified in GAIN_TSQD4, assuming that PDC Stage 4 has an available canceler.
BITS
[15:0]
GAIN_TSQD4
DESCRIPTION
Detection threshold-squared value for PDC Stage 4.
0x4A (74)
Type: Read/Write Value at RESET: 0x0000
The GAIN_TSQD4 register contains the gain threshold-squared value for PDC Stage 4. The gain
threshold-squared value is usually calculated from the average power (0 dB point) of the GC1115 input signal.
Interpolated peaks found by PDC Stage 4 whose magnitude is above DETECT_TSQD4 will be decreased to the
magnitude-squared value specified in GAIN_TSQD4, assuming that PDC Stage 4 has an available canceler.
BITS
[15:0]
CANCEL_DELAY4
DESCRIPTION
Gain threshold-squared value for PDC Stage 4.
0x4B (75)
Type: Read/Write
Value at RESET: 0x0000
The CANCEL_DELAY4 register contains the PDC Stage 4 cancellation pulse delay, in samples. For real
cancellation pulses, CANCEL_DELAY = (CANCEL_LENGTH – 1) / 2. If minimum-phase cancellation pulses are
used, CANCEL_DELAY < (CANCEL_LENGTH – 1) / 2. The contents of the CANCEL_DELAY4 register are
applied to the GC115 hardware delay block only after a CANCEL_SYNC event occurs.
BITS
DESCRIPTION
[7:0]
Cancel pulse delay for PDC Stage 4 (a value from 5 to 255)
[15:8]
Reserved
53
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
Snapshot RAM Registers (Addresses 96 – 119)
SNAP_A_CONTROL
0x60 (96)
Type: Read/Write
Value at RESET: 0x0000
The SNAP_A_CONTROL register controls the operation of Snapshot RAM A, including the selection of its data
source and the type of data being captured. When using Snapshot RAM A in histogram mode, the RAM must
first be cleared by writing a 0x0002 to SNAP_A_CONTROL. If the GC1115 is operating in two-channel mode,
Snapshot RAM A can monitor the samples of either Channel 0 or Channel 1. Snapshot RAM A will not begin a
capture or histogram until the SNAP_A_SYNC event occurs. SNAP_A_SYNC cannot be triggered by a periodic
TIMER event.
BITS
[1:0]
DESCRIPTION
Snapshot RAM A command:
00 – DISABLE (ignore all other bits in word)
01 – ENABLE (observe all other bits)
1x – CLEAR_RAM (ignore all other bits)
2
[5:3]
Two-channel data source:
0 = Channel 0
1 = Channel 1
Snapshot RAM A data source:
001: input
010: after Stage 1
011: after Stage 2
100: after Stage 3
101: after Stage 4
[7:6]
Snapshot RAM A operating mode: 00 = capture 1k samples
10 = histogram Q samples
01 = histogram I samples
11 = histo. mag2(I + jQ)
[15:8 Reserved
]
SNAP_A_STATUS
0x61 (97)
Type: Read only
Value at RESET: 0x0000
The SNAP_A_STATUS register can be read to determine the current status (state) of Snapshot RAM A. After
sending a 0x2 command (clear RAM) to SNAP_A_CONTROL, SNAP_A_STATUS can be polled to determine
when the RAM has been cleared. After a Snapshot RAM A capture completes, the microprocessor or DSP can
receive an interrupt by enabling bit 0 of INT_MASK. During histogram operation, if one or more Snapshot RAM A
histogram bins overflows its 32-bit count, bit 2 of INT_MAP will be set. If bit 2 of INT_MASK is set, a Snapshot
RAM A bin overflow will also generate an interrupt. Snapshot RAM A will not begin a capture or histogram until
the SNAP_A_SYNC event occurs. SNAP_A_SYNC cannot be triggered by a periodic TIMER event.
BITS
[2:0]
DESCRIPTION
Snapshot RAM A
status:
000 – OFF
001 – enabled (waiting)
010 – active (capturing) 011 – capture complete
100 – resetting (clearing all snapshot RAM bins)
[15:3]
54
Reserved
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
SNAP_A_ADDRESS
0x62 (98)
Type: Read only
Value at RESET: 0x0000
The SNAP_A_ADDRESS register contains a pointer into Snapshot RAM A memory (2048 locations × 16 bits per
locations). SNAP_A_ADDRESS is written by the microprocessor or DSP. As when accessing cancellation
coefficient shadow RAM, SNAP_A_ADDRESS auto-increments after each SNAP_A_DATA register access (read
or write). In capture mode, Snapshot RAM A contains I samples at even addresses (0, 2, 4, …), and Q samples
at odd addresses (1, 3, 5, …). In histogram mode, Snapshot RAM A contains 32-bit counter entries, with the
upper 16 bits at even addresses (0, 2, 4, …) and the lower 16 bits at odd addresses (1, 3, 5, …).
BITS
[10:0]
DESCRIPTION
Snapshot RAM A address: 0 to 2047
In capture mode:
Snap_RAM_A[0] = sample_I(0) [16 MSBs of 18-bit I sample]
Snap_RAM_A[1] = sample_Q(0) [16 MSBs of 18-bit Q samp]
...
Snap_RAM_A[2046] = sample_I(1023) [16 MSBs of I sample]
Snap_RAM_A[2047] = sample_Q(1023) [16 MSBs of Q sample]
In histogram mode:
Snap_RAM_A[0] = hist_hi_word(0)
Snap_RAM_A[1] = hist_lo_word(0)
...
Snap_RAM_A[2046] = hist_hi_word(1023)
Snap_RAM_A[2047] = hist_lo_word(1023)
[15:11]
SNAP_A_DATA
Reserved
0x63 (99)
Type: Read/Write
Value at RESET: 0x0000
The SNAP_A_DATA register allows access to the Snapshot RAM A memory location addressed by
SNAP_A_ADDRESS. Snapshot RAM A contains 2048 × 16-bit values, whose organization is described with
SNAP_A_ADDRESS. After SNAP_A_DATA is read or written, the value in SNAP_A_ADDRESS is
auto-incremented.
BITS
[15:0]
SNAP_A_MINVAL
DESCRIPTION
Snapshot RAM A data
0x64 (100)
Type: Read/Write Value at RESET: 0x0000
The SNAP_A_MINVAL register is used only during Snapshot RAM A histogram mode. In histogram mode, the
microprocessor or DSP can specify a desired range of values to be histogrammed. The minimum value of
interest is SNAP_A_MINVAL, while the maximum value of interest is SNAP_A_MAXVAL. Input values
SNAP_A_MINVAL will be counted in Snapshot RAM A’s histogram bin 0. Input values SNAP_A_MAXVAL will
be counted in Snapshot RAM A’s histogram bin 1023.
BITS
[15:0]
DESCRIPTION
Snapshot RAM A (in histogram mode): minimum allowable value
55
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
SNAP_A_MAXVAL
0x65 (101) Type: Read/Write Value at RESET: 0x0000
The SNAP_A_MAXVAL register is used only during Snapshot RAM A histogram mode. In histogram mode, the
microprocessor or DSP can specify a desired range of values to be histogrammed. The minimum value of
interest is SNAP_A_MINVAL, while the maximum value of interest is SNAP_A_MAXVAL. Input values ≤
SNAP_A_MINVAL will be counted in Snapshot RAM A’s histogram bin 0. Input values ≥ SNAP_A_MAXVAL will
be counted in Snapshot RAM A’s histogram bin 1023.
BITS
[15:0]
SNAP_A_SCALE
DESCRIPTION
Snapshot RAM A (in histogram mode): maximum allowable value
0x66 (102) Type: Read/Write
Value at RESET: 0x0000
The SNAP_A_SCALE register is used only during Snapshot RAM A histogram mode. In histogram mode, the
microprocessor or DSP can specify a desired range of values to be histogrammed, using SNAP_A_MINVAL and
SNAP_A_MAXVAL. However, the difference between SNAP_A_MAXVAL and SNAP_A_MINVAL can be larger
than the number of histogram bins (1024). SNAP_A_SCALE is used to scale the difference between the input
value (to be histogrammed) and SNAP_A_MINVAL into the allowed 10-bit histogram index range (0..1023). The
GC1115 user is responsible for ensuring that SNAP_A_SCALE limits histogram indices to the range 0..1023.
SNAP_A_SCALE is interpreted as an unsigned 14-bit fractional value, from 0x0000 = 0.0 to 0x3FFF = 1.0.
BITS
DESCRIPTION
[13:0]
Snapshot RAM A (in histogram mode): maximum allowable value
[15:14]
Reserved
Histogram index calculation:
if ( (sample[i] >= SNAP_MINVAL) && (sample[i] <= SNAP_MAXVAL) ) {
j = sample[i] - SNAP_MINVAL;
index = int(j * SNAP_SCALE);
hist[index]++
}
The GC1115 user is responsible for ensuring that index (the product of j × SNAP_SCALE) is in the allowed range
of 0..1023.
SNAP_A_HISTCOUNT
0x67 (103)
Type: Read/Write
Value at RESET: 0x0000
The SNAP_A_HISTCOUNT register determines how many groups of samples will be observed in histogram
mode. SNAP_A_HISTCOUNT is used only during Snapshot RAM A histogram mode operation.
SNAP_A_HISTCOUNT works in conjunction with POWER_CNT (0x7F). The number of samples in a group is
specified in POWER_CNT, while the number of groups monitored during histogram mode is specified in
SNAP_A_HISTCOUNT. Thus the total number of samples observed in histogram mode is POWER_CNT ×
SNAP_A_HISTCOUNT. At reset, POWER_CNT = 0xFFFF, or 65535.
BITS
[15:0]
56
DESCRIPTION
Number of POWER_CNT sample groups to be histogrammed.
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
SNAP_B_CONTROL
0x70 (112)
Type: Read/Write Value at RESET: 0x0000
The SNAP_B_CONTROL register controls the operation of Snapshot RAM A, including the selection of its data
source and the type of data being captured. When using Snapshot RAM A in histogram mode, the RAM must
first be cleared by writing a 0x0002 to SNAP_B_CONTROL. If the GC1115 is operating in two-channel mode,
Snapshot RAM A can monitor the samples of either Channel 0 or Channel 1. Snapshot RAM A will not begin a
capture or histogram until the SNAP_B_SYNC event occurs. SNAP_B_SYNC cannot be triggered by a periodic
TIMER event.
BITS
[1:0]
DESCRIPTION
Snapshot RAM A command:
00 – DISABLE (ignore all other bits in word)
01 – ENABLE (observe all other bits)
1x – CLEAR_RAM (ignore all other bits)
2
Channel-channel data source:
0 = Channel 0
1 = Channel 1
[5:3]
Snapshot RAM A data source:
001: input
010: after Stage 1
011: after Stage 2
100: after Stage 3
101: after Stage 4
[7:6]
Snapshot RAM A operating mode:
00 = capture 1k samples
01 = histogram I samples
10 = histogram Q samples
11 = histo. mag2(I + jQ)
[15:8] Reserved
SNAP_B_STATUS
0x71 (113) Type: Read only
Value at RESET: 0x0000
The SNAP_B_STATUS register can be read to determine the current status (state) of Snapshot RAM A. After
sending a 0x2 command (clear RAM) to SNAP_B_CONTROL, SNAP_B_STATUS can be polled to determine
when the RAM has been cleared. After a Snapshot RAM A capture completes, the microprocessor or DSP can
receive an interrupt by enabling bit 0 of INT_MASK. During histogram operation, if one or more Snapshot RAM A
histogram bins overflows its 32-bit count, bit 2 of INT_MAP will be set. If bit 2 of INT_MASK is set, a Snapshot
RAM A bin overflow will also generate an interrupt. Snapshot RAM A will not begin a capture or histogram until
the SNAP_B_SYNC event occurs. SNAP_B_SYNC cannot be triggered by a periodic TIMER event.
BITS
[2:0]
DESCRIPTION
Snapshot RAM A
status:
000 – OFF
001 – enabled (waiting)
010 – active (capturing)
011 – capture complete
100 – resetting (clearing all snapshot RAM bins)
[15:3]
Reserved
57
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
SNAP_B_ADDRESS
0x72 (114)
Type: Read only
BITS
[10:0]
Value at RESET: 0x0000
DESCRIPTION
Snapshot RAM A address: 0 to 2047
In capture mode:
Snap_RAM_A[0] = sample_I(0) [16 MSBs of 18-bit I sample]
Snap_RAM_A[1] = sample_Q(0) [16 MSBs of 18-bit Q samp]
...
Snap_RAM_A[2046] = sample_I(1023) [16 MSBs of I sample]
Snap_RAM_A[2047] = sample_Q(1023) [16 MSBs of Q sample]
In histogram mode:
Snap_RAM_A[0] = hist_hi_word(0)
Snap_RAM_A[1] = hist_lo_word(0)
...
Snap_RAM_A[2046] = hist_hi_word(1023)
Snap_RAM_A[2047] = hist_lo_word(1023)
[15:11]
SNAP_B_DATA
Reserved
0x73 (115) Type:
Read/Write
Value at RESET: 0x0000
The SNAP_B_DATA register allows access to the Snapshot RAM A memory location addressed by
SNAP_B_ADDRESS. Snapshot RAM A contains 2048 × 16-bit values, whose organization is described in the
discussion of SNAP_B_ADDRESS. After SNAP_B_DATA is read or written, the value in SNAP_B_ADDRESS is
auto-incremented.
BITS
[15:0]
SNAP_B_MINVAL
DESCRIPTION
Snapshot RAM A data
0x74 (116)
Type: Read/Write
Value at RESET: 0x0000
The SNAP_B_MINVAL register is used only during Snapshot RAM A histogram mode. In histogram mode, the
microprocessor or DSP can specify a desired range of values to be histogrammed. The minimum value of
interest is SNAP_B_MINVAL, while the maximum value of interest is SNAP_B_MAXVAL. Input values ≤
SNAP_B_MINVAL will be counted in Snapshot RAM A’s histogram bin 0. Input values ≥ SNAP_B_MAXVAL will
be counted in Snapshot RAM A’s histogram bin 1023.
BITS
[15:0]
58
DESCRIPTION
Snapshot RAM A (in histogram mode): minimum allowable value
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
SNAP_B_MAXVAL
0x75 (117)
Type: Read/Write
Value at RESET: 0x0000
The SNAP_B_MAXVAL register is used only during Snapshot RAM A histogram mode. In histogram mode, the
microprocessor or DSP can specify a desired range of values to be histogrammed. The minimum value of
interest is SNAP_B_MINVAL, while the maximum value of interest is SNAP_B_MAXVAL. Input values
SNAP_B_MINVAL will be counted in Snapshot RAM A’s histogram bin 0. Input values SNAP_B_MAXVAL will
be counted in Snapshot RAM A’s histogram bin 1023.
BITS
[15:0]
SNAP_B_SCALE
DESCRIPTION
Snapshot RAM A (in histogram mode): maximum allowable value
0x76 (118) Type: Read/Write
Value at RESET: 0x0000
The SNAP_B_SCALE register is used only during Snapshot RAM A histogram mode. In histogram mode, the
microprocessor or DSP can specify a desired range of values to be histogrammed, using SNAP_B_MINVAL and
SNAP_B_MAXVAL. However, the difference between SNAP_B_MAXVAL and SNAP_B_MINVAL can be larger
than the number of histogram bins (1024). SNAP_B_SCALE is used to scale the difference between the input
value (to be histogrammed) and SNAP_B_MINVAL into the allowed 10-bit histogram index range (0..1023). The
GC1115 user is responsible for ensuring that SNAP_B_SCALE limits histogram indices to the range 0..1023.
SNAP_B_SCALE is interpreted as an unsigned 14-bit fractional value, from 0x0000 = 0.0 to 0x3FFF = 1.0.
BITS
DESCRIPTION
[13:0]
Snapshot RAM A (in histogram mode): maximum allowable value
[15:14]
Reserved
Histogram index calculation:
if ( (sample[i] >= SNAP_MINVAL) && (sample[i] <= SNAP_MAXVAL) ) {
j = sample[i] - SNAP_MINVAL;
index = int(j * SNAP_SCALE);
hist[index]++
}
The GC1115 user is responsible for ensuring that index (the product of j × SNAP_SCALE) is in the allowed range
of 0..1023.
SNAP_B_HISTCOUNT
0x77 (119)
Type: Read/Write
Value at RESET: 0x0000
The SNAP_B_HISTCOUNT register determines how many groups of samples will be observed in histogram
mode. SNAP_B_HISTCOUNT is used only during Snapshot RAM A histogram mode operation.
SNAP_B_HISTCOUNT works in conjunction with POWER_CNT (0x7F). The number of samples in a group is
specified in POWER_CNT, while the number of groups monitored during histogram mode is specified in
SNAP_B_HISTCOUNT. Thus the total number of samples observed in histogram mode is POWER_CNT *
SNAP_B_HISTCOUNT. At reset, POWER_CNT = 0xFFFF, or 65535.
BITS
[15:0]
DESCRIPTION
Number of POWER_CNT sample groups to be histogrammed.
59
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
POWER_CNT
0x7F (127)
Type: Read/Write
Value at RESET: 0xFFFF
The POWER_CNT register determines how many samples are used in each group during power measurement
and during Snapshot RAM operation. During power measurement, the total number of samples observed for
power measurement is POWER_CNT × POWER_CTL[13:0]. During Snapshot RAM histogram operation, the
total number of samples observed for the histogram is POWER_CNT × SNAP_HISTCOUNT. At GC1115 reset,
POWER_CNT = 0xFFFF (65535).
BITS
DESCRIPTION
[15:0]
Number of samples in a power measurement or histogram group (0 to 65535)
Interpolate-by-4 Registers (Addresses 128 – 169)
INTERP_CTL
0x80 (128)
Type: Read/Write
BITS
[1:0]
Value at RESET: 0x0000
DESCRIPTION
Interpolator operation:
00: Interp by 2, complex output
01: Interp by 2, fs/4 enabled, real output
1x: Interp by 4, fs/4 enabled, real output
[15:2]
Reserved
NOTE:
To bypass the interp-by-4 stage, clear bit 4 of the CONTROL register, set 0x82 to
0x8000, and clear 0x83 to 0xA9.
INTERP_COEFS
0x82 – 0xA9
(130 – 169)
Type:
Read/Write
Value at RESET: 0x8000 (0x82), 0x0000 (0x83 – 0xA9)
Addresses 0x82 to 0xA9 store the interpolation stage’s 40 interpolation coefficients. These coefficients are
accessed even if the interpolation stage is bypassed, i.e. even when bit 4 of CONTROL (0x2) is cleared. GC1115
users must therefore ALWAYS initialize the interpolation coefficients. After RESET, the interpolation coefficients
are initialized for bypass operation (value at address 0x82 = 0x8000; all other interpolation coefficients = 0). The
earlier section entitled Interpolate-by-4 Operation described the required interp-by-4 coefficients during
interpolation.
BITS
[15:0]
60
DESCRIPTION
Signed, 16-bit interp-by-4 coefficient, from –32768 to +32767
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
Soft Limiter Block (Addresses 192 – 248)
NOTE:
The Soft Limiter block can safely be bypassed under almost all operating conditions.
The Soft Limiter is only required when very low PAR levels (≤ 5 dB output PAR)
cause PDC canceler resources to be overwhelmed. At these low PAR levels, the
cEVM and PCDE specifications already cannot be met, and the soft limiter will
probably make the ACLR worse.
SOFT_LENGTH
0xC0 (192)
Type: Read/Write
Value at RESET: 0x0000
The SOFT_LENGTH register controls the operation of the GC1115’s soft limiter. In addition to providing a final
limiter after the interpolation stage, the soft limiter also contains I and Q gain and offset values that can
compensate for gain and offset imbalances in I/Q modulators that follow the GC1115. The soft limiter is
bypassed by clearing bit 5 of the CONTROL register.
When SOFT_LENGTH[1:0] = 01, taper table uses SOFT_COEF0 to SOFT_COEF3
When SOFT_LENGTH[1:0] = 10, taper table uses SOFT_COEF0 to SOFT_COEF7
When SOFT_LENGTH[1:0] = 11, taper table uses SOFT_COEF0 to SOFT_COEF15
Because the I/Q gain and I/Q offset registers are always in the GC1115 datapath (even when the soft limiter is
bypassed), GC1115 users must initialize the gain and offset register appropriately.
The default OUT_GAIN0 and OUT_GAIN1 values are 0, so the GC1115 will output zeros at RESET. In order to
generate non-zero GC1115 output values, OUT_GAIN0 and OUT_GAIN1 must be set to non-zero values
(preferably 0x2000, which equates to 1.0). OUT_GAIN0 and OUT_GAIN1 must be written by the
microprocessor or DSP, or the OUT_A and OUT_B ports will always output zeros.
The default I and Q offset is 0 (i.e. I and Q samples are not offset at RESET).
BITS
[1:0]
DESCRIPTION
Number of samples in the soft
limiting interval:
01: 9-sample soft limit length (4 coefs)
10: 17-sample soft limit length (8 coefs)
11: 33-sample soft limit length (16 coefs)
The middle soft limiter coefficient is always an implied “1”
[15:2]
SOFT_TSQD
Reserved
0xC1 (193)
Type: Read/Write
Value at RESET: 0xFFFF
The SOFT_TSQD register contains the soft limiter’s threshold-squared value. This threshold-squared value is
scaled identically to the DETECT_TSQD and GAIN_TSQD PDC Stage thresholds. Note that the default
SOFT_TSQD value is 0xFFFF, ensuring that the soft limiter’s threshold is set to its maximum value at RESET.
BITS
[15:0]
DESCRIPTION
Soft limiter threshold-squared value
61
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
SOFT_COEF0..15
0xC2 – 0xD1 (194 – 209) Type: Read/Write
Value at RESET: 0x0000
The sixteen SOFT_COEF registers hold the soft limiter’s taper table. The taper table contains 4, 8, or 16
normalized coefficients, whose values are scaled by a variable that is proportional to the size of the detected,
over-threshold soft limiter peak. SOFT_COEF0 at address 0xC2 is the smallest coefficient, while SOFT_COEFn
(n=3, 7, or 15) is the largest coefficient (near to a normalized value of 1.0). The soft limiter uses an internal,
normalized value of 1.0 at SOFT_COEFm (m = 4, 8, or 16) that is NOT stored in the SOFT_COEF taper table.
The taper table’s values are applied to the N samples before the detected peak, and again to the N samples
after the detected peak (N = 4, 8, or 16). Please refer to the section of this document entitled Soft Limiter
Operation for a detailed description of the soft limiter taper table.
When SOFT_LENGTH[1:0] = 01, taper table uses SOFT_COEF0 to SOFT_COEF3
When SOFT_LENGTH[1:0] = 10, taper table uses SOFT_COEF0 to SOFT_COEF7
When SOFT_LENGTH[1:0] = 11, taper table uses SOFT_COEF0 to SOFT_COEF15
BITS
[15:0]
SOFT_TAB_SCALE
DESCRIPTION
Soft limiter taper table coefficient (unsigned, 16-bit value)
0xD2 (210)
Type: Read/Write
Value at RESET: 0xFFFF
The SOFT_TAB_SCALE register contains the soft limiter’s lookup table scale factor. For a desired shift value of
N bits, SOFT_TAB_SCALE should be set to N – 17. The valid range for SOFT_TAB_SCALE is 0 to 15, encoded
in the 4 LSBs.
BITS
DESCRIPTION
[3:0]
Soft limiter lookup table scale factor (# bits to shift, 0 to 15)
[15:4]
Reserved
SOFT_INVGAIN0..31 0xD3 – 0xF2 (211 – 242)
Type: Read/Write
Value at RESET: 0x000
The thirty-two SOFT_INVGAIN registers hold the soft limiter’s inverse gain lookup table. The taper table contains
31 inverse gain values between 1.0 and g, where g is the maximum expected over-threshold value. For example,
if the soft limiter expects to see a peak after PDC Stage 4 that is at most 50% higher than the SOFT_TSQD
threshold, g would be set to 1.5. SOFT_INVGAIN0 (0xD3) contains the smallest inverse gain value.
SOFT_INVGAIN31 contains the largest inverse gain value. Please refer to the section of this document entitled
Soft Limiter Operation for a detailed description of the inverse gain lookup table.
BITS
[15:0]
62
DESCRIPTION
Soft limiter inverse gain lookup coefficient (unsigned, 16-bit value)
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
OUT_GAIN0
0xF3 (243)
Type: Read/Write
Value at RESET: 0x0000
The OUT_GAIN0 register contains the OUT_A output gain. Under normal circumstances, the microprocessor or
DSP should initialize OUT_GAIN0 to 0x2000, which corresponds to a normalized gain of 1.0. OUT_GAIN0 can
provide up to two bits of boost: an OUT_GAIN0 value of 0x3FFF corresponds to a normalized gain of 3.999939.
OUT_GAIN0 is a signed value, so negative OUT_GAIN0 values are permitted. Users should be aware that a
negative OUT_GAIN0 value would cause a 180-degree phase inversion of the OUT_A output signal.
The default OUT_GAIN0 value is 0, so the GC1115 will output zeros at RESET. In order to generate non-zero
GC1115 output values, OUT_GAIN0 and OUT_GAIN1 must be set to non-zero values (preferably 0x2000,
which equates to 1.0). OUT_GAIN0 and OUT_GAIN1 must be written by the microprocessor or DSP, or
the OUT_A and OUT_B will always output zeros.
BITS
DESCRIPTION
[14:0]
Output Port A gain (2 MSBs are
GAIN bits):
0x7FFF = gain of
3.999939
0x4000 = gain of 2.0
0x2000 = gain of 1.0
0x1FFF = gain of 0.999893
0x0000 = gain of 0.0 (zeros are output)
15
OUT_GAIN1
Output gain sign bit:
0xF4 (244)
0 = positive gain
Type: Read/Write
1 = negative gain
Value at RESET: 0x0000
The OUT_GAIN1 register contains the OUT_B output gain. Under normal circumstances, the microprocessor or
DSP should initialize OUT_GAIN1 to 0x2000, which corresponds to a normalized gain of 1.0. OUT_GAIN1 can
provide up to two bits of boost; an OUT_GAIN1 value of 0x3FFF corresponds to a normalized gain of 3.999939.
OUT_GAIN1 is a signed value, so negative OUT_GAIN1 values are permitted. Users should be aware that a
negative OUT_GAIN1 value would cause a 180-degree phase inversion of the OUT_B output signal.
The default OUT_GAIN1 value is 0, so the GC1115 will output zeros at RESET. In order to generate non-zero
GC1115 output values, OUT_GAIN0 and OUT_GAIN1 must be set to non-zero values (preferably 0x2000,
which equates to 1.0). OUT_GAIN0 and OUT_GAIN1 must be written by the microprocessor or DSP, or
the OUT_A and OUT_B will always output zeros.
BITS
[14:0]
DESCRIPTION
Output Port B gain (2 MSBs are
GAIN bits):
0x7FFF = gain of
3.999939
0x4000 = gain of 2.0
0x2000 = gain of 1.0
0x1FFF = gain of 0.999893
0x0000 = gain of 0.0 (zeros are output)
15
OUT_OFFSET_I0
Output gain sign bit:
0xF5 (245)
0 = positive gain
1 = negative gain
Type: Read/Write Value at RESET: 0x0000
The OUT_OFFSET_I0 register contains the OUT_A offset value for the I0 channel. In one-channel operation, I0
is the I-channel offset. OUT_OFFSET register values are signed, 16-bit values that are aligned with the 16 MSBs
of the 18-bit signed I-channel sample. OUT_OFFSET_I0 is also the Channel 0 offset applied to the real output
samples in real-output modes (i.e. when the interpolate block is generating 2x real or 4x real samples).
BITS
[15:0]
DESCRIPTION
Channel 0, I leg DC offset (also the Channel 0 real offset in real output mode)
63
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
OUT_OFFSET_Q0
0xF6 (246)
Type: Read/Write
Value at RESET: 0x0000
The OUT_OFFSET_Q0 register contains the OUT_A offset value for the Q0 channel. In one-channel operation,
Q0 is the Q-channel offset. OUT_OFFSET register values are signed, 16-bit values that are aligned with the 16
MSBs of the 18-bit signed Q-channel sample.
BITS
[15:0]
OUT_OFFSET_I1
DESCRIPTION
Channel 0, Q leg DC offset
0xF7 (247)
Type: Read/Write Value at RESET: 0x0000
The OUT_OFFSET_I1 register contains the OUT_B I-offset value for the second channel during two-channel
operation. OUT_OFFSET register values are signed, 16-bit values that are aligned with the 16 MSBs of the
18-bit signed I-channel sample. OUT_OFFSET_I1 is also the Channel 1 offset applied to the real output samples
in real-output modes (i.e. when the interpolate block is generating 2x real or 4x real samples).
BITS
[15:0]
OUT_OFFSET_Q1
DESCRIPTION
Channel 1, I leg DC offset (also the Channel 1 real offset in real output mode)
0xF8 (248)
Type: Read/Write
Value at RESET: 0x0000
The OUT_OFFSET_Q1 register contains the OUT_B Q-offset value for the second channel during two-channel
operation. OUT_OFFSET register values are signed, 16-bit values that are aligned with the 16 MSBs of the
18-bit signed Q-channel sample.
BITS
[15:0]
64
DESCRIPTION
Channel 1, Q leg DC offset
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
ABSOLUTE MAXIMUM RATINGS
over operating free-air temperature range (unless otherwise noted) (1)
UNIT
±1.2 V
VCC
Supply voltage
VI
Input voltage
IO
Output current
TJ
Maximum junction temperature
105°C
TA
Operating free-air temperature
–40°C to +85°C
Tstg
Storage temperature
–65°C to 120°C
±VCC
TBD mA
Lead temperature 1,6 mm (1/16-inch) from case for 10 seconds
(1)
TBD°C
Stresses beyond those listed under absolute maximum ratings may cause permanent damage to the device. These are stress ratings
only and functional operation of the device at these or any other conditions beyond those indicated under recommended operating
conditions is not implied. Exposure to absolute-maximum-rated conditions for extended periods may affect device reliability.
DISSIPATION RATINGS
TA
PACKAGED DEVICES
MSOP SYMBOL
–40°C to +85°C
GC1115xxx
TBD
CAPACITANCE OVER RECOMMENDED RANGES OF SUPPLY VOLTAGE AND OPERATING
FREE-AIR TEMPERATURE, f = 1 MHz (1)
MIN
NOM
MAX
UNIT
NO TEXT IN THE SOURCE DOCUMENT
NO TEXT IN THE SOURCE DOCUMENT
(1)
Capacitance measurements are made on sample basis only.
DISSIPATION RATINGS TABLE
PACKAGE
TA <25°C
POWER RATING
OPERATING FACTOR
ABOVE TA = 25°C
TA = 70°C
POWER RATING
NO text in the source document
NO text in the source document
ELECTRICAL CHARACTERISTICS
over operating free-air temperature range (unless otherwise noted)
PARAMETER
TEST CONDITIONS
MIN
TYP
MAX
UNIT
NO TEXT IN THE SOURCE DOCUMENT
NO TEXT IN THE SOURCE DOCUMENT
RECOMMENDED OPERATING CONDITIONS
MIN
NOM
MAX
UNIT
MIN
NOM
MAX
UNIT
NO TEXT IN THE SOURCE DOCUMENT
NO TEXT IN THE SOURCE DOCUMENT
OPERATING CHARACTERISTICS
PARAMETER
NO TEXT IN THE SOURCE DOCUMENT
NO TEXT IN THE SOURCE DOCUMENT
65
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
SWITCHING CHARACTERISTICS
PARAMETER
MIN
MAX
UNIT
JTAG:
tperiod
JTAG clock period 14 ns
12
ns
tjt_ckh
JTAG clock high time tjt_ckl JTAG clock low time
3
ns
tjt_su
JTAG input (TDI or TMS) setup time before TCK goes high
1
ns
tjt_hd
JTAG input (TDI or TMS) hold time after TCK goes high
2
ns
tjt_dly
JTAG output (TDO) delay from falling edge of TCK
5
ns
tjt_oh
JTAG output (TDO) hold time from falling edge of TCK
1
ns
FUNC DATAPATH:
tin_duty_c
ycle
Clock duty cycle
tperiod
Clock period
tin_ckh
Clock high time
43.75%
1:4x (1)
12.5
ns
7.7
ns
5.47
7.03
ns
1:2, 1:x (1)
1:4x (1)
1:2,
1:x (1)
56.25%
3.37
4.33
ns
1:4x (1)
5.47
7.03
ns
1:2, 1:x (1)
3.37
4.33
ns
tin_ckl
Clock low time
tin_su
Input setup before clock goes high
0.5
ns
tin_hd
Input hold time after clock goes high
1.1
ns
tin_dly
Output delay from rising edge of clock
2.5
tin_oh
Output hold time from rising edge of clock
ns
0
ns
MPUREG 2 WIRE MODE:
tup_cenh
CE_N high time
10
ns
tup_cenl
CE_N low time
10
ns
tup_a_su
Address setup time before read or write
3
ns
tup_a_hd
Address hold time after read or write
3
ns
tup_c_su
Control setup time before read or write
7
ns
tup_c_hd
Control hold after read or write
-2.5
ns
tup_wd_su Control data setup before read or write
1
ns
tup_wd_hd Control data hold after read or write
3
ns
tup_dly
8
ns
Control ouput delay CE low and A stable to C(read operation)
MUPRAM 2 WIRE MODE:
tup_cenh
CE_N high time
10
ns
tup_cenl
CE_N low time
10
ns
tup_a_su
Address setup time before read or write
2
ns
tup_a_hd
Address hold time after read or write
2
ns
tup_c_su
Control setup time before read or write
1
ns
tup_c_hd
Control hold after read or write
0.1
ns
5
ns
3.25
ns
10
ns
tup_wd_su Control data setup before read or write
tup_wd_hd Control data hold after read or write
tup_dly
(1)
66
Control output delay CE low and A stable to C(read operation)
These are for different clocking modes. One clocking mode is identified as (1:4:x) and means the internal clock is 4x the chip's input
clock (IN_CLK) and the transmit clock can be 1x, 2x or 4x IN_CLK's rate. The second clocking mode is (1:2,1:x) and means the internal
clock is 2x or 1x the chip's input clock (IN_CLK) and the transmit clock can be 1x (or 2x if the core clock is 2x) IN_CLK's rate.
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
TIMING PARAMETERS
NO.
PARAMETER
1
NO TEXT IN THE SOURCE DOCUMENT
2
NO TEXT IN THE SOURCE DOCUMENT
EMPTY?
EMPTY?
MIN
MIN
MAX
MAX
UNIT
TIMING REQUIREMENTS
over recommended ranges of voltage and operating free-air temperature
PARAMETER
ALT. SYMBOL
EMPTY?
EMPTY?
EMPTY?
MIN
MIN
MIN
MAX
MAX
MAX
UNIT
NO TEXT IN THE SOURCE DOCUMENT
NO TEXT IN THE SOURCE DOCUMENT
CONTROL TIMING FOR EDGE WITH SINGLE STROBE (2-WIRE MODE)
Figure 13. Read Cycle –RD Held Low
67
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
Control Timing for Edge With Single Strobe (2-Wire Mode) (continued)
Figure 14. Write Cycle –RD Held Low
Control Timing for Normal Mode (3-Wire Mode)
Figure 15. Read Cycle – Normal Mode
68
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
Control Timing for Edge With Single Strobe (2-Wire Mode) (continued)
Figure 16. Write Cycle – Normal Mode
Figure 17. Generic Data Setup and Hold. Data Output Hold and Delay
69
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
DEVICE INFORMATION
ZDJ Package (Bottom View)
1
2
T
VSS
VSS
R
VSS
VSS
OUT_A6 OUT_A3 OUT_A0 OUT_B17 OUT_B15 OUT_B13 OUT_B10 OUT_B7 OUT_B4 OUT_B2
4
5
6
7
8
9
10
15
16
OUT_A5 OUT_A2 OUT_IQ_
OUT_B16 OUT_B14 OUT_B12 OUT_B11 OUT_B9 OUT_B6 OUT_B3 OUT_B0 SYNC_B
SEL
VSS
VSS
T
SYNC_ SYNC_A
OUT
VSS
VSS
R
13
14
IN_B17
IN_B15
P
VDD
VSS
VDD
IN_B13
IN_B12
N
VDD
VSS
VDD
IN_B9
M
VSS
VSS
VDD
VDDSHV IN_B16
IN_B8
IN_B7
L
VSS
VSS
VSS
VDD
VDDSHV IN_B14
IN_B6
IN_B5
K
VSS
VSS
VSS
VSS
VDD
VDDSHV IN_B11
IN_B4
IN_B3
J
VSS
VSS
VSS
VSS
VDD
VDDSHV
IN_B0
IN_B2
IN_B1
H
VSS
VDD
N
OUT_A11 OUT_A9
VDD
VSS
VDD
M
OUT_A14 OUT_A12 VDDSHV
VDD
VSS
VDD
VDD
VDD
VDD
VDD
VDD
VSS
VSS
VSS
VSS
VDD
VSS
VSS
VSS
VDD
VSS
VSS
OUT_A17 OUT_A16 OUT_A10 VDDSHV
12
VSS
OUT_A8 OUT_A7
VDDSHV OUT_A4 OUT_A1
11
VDD
P
L
LOOP
OUT_B8 OUT_B5 OUT_B1 VDDSHV
VDDSHV VDDSHV VDDSHV VDDSHV VDDSHV VDDSHV
VDDSHV IN_B10
K
D0
J
D2
D1
H
D3
D4
D7
VDDSHV
VDD
VSS
VSS
G
D5
D6
D9
VDDSHV
VDD
VSS
VSS
VSS
VSS
VSS
VSS
VDD
VDDSHV IN_A14
IN_A16
IN_A17
G
F
D8
D10
D13
VDDSHV
VDD
VSS
VSS
VSS
VSS
VSS
VSS
VDD
VDDSHV IN_A11
IN_A13
IN_A15
F
E
D11
D12
VDDSHV
VDD
VSS
VDD
VDD
VDD
VDD
VDD
VDD
VSS
VDD
VDDSHV IN_A10
IN_A12
E
D
D14
D15
VDD
VSS
VDD
VDD
VSS
VDD
IN_A8
IN_A9
D
C
A1
A0
VSS
VDD
VDDSHV
A2
A6
TCK
IN_A3
VDDA2
VSS1
IN_CLK
VDD
VSS
VSSA1
VDDA1
C
B
VSS
VSS
A3
A5
A7
RD
TEST_
MODE
TRST
TMS
IN_A2
IN_A5
IN_A7
RESET
VDD1
VSS
VSS
B
INT
WR
CS
TDO
TDI
4
5
A
70
3
OUT_CLK OUT_A13 VDDSHV
OUT_A15 VDDSHV
VSS
VSS
A4
1
2
3
VDDSHV VDDSHV VDDSHV VDDSHV VDDSHV VDDSHV
6
7
8
IN_A0
9
IN_A1
VPP
IN_A4
IN_A6
10
11
12
13
VSSA2
14
VSS
VSS
15
16
A
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
DEVICE INFORMATION (continued)
TERMINAL FUNCTIONS (Alphabetical Listing)
TERMINAL
NAME
NO.
I/O
DESCRIPTION
A[7:0]
B5, C7, B4, A3, B3,
C6, C1, C2
I
Address Bus – Active high inputs
CS
A6
I
CHIP SELECT – Active low chip select
D[15:0]
D2, D1, F3, E2, E1,
F2, G3, F1, H3, G2,
G1, H2, H1, J1, J2,
K1
IN_A[17:0]
G16, G15, F16, G14,
F15, E16, F14, E15,
D16, D15, B12, A13,
B11, A12, C9, B10,
A10, A9
I
Input Port A, bits 17 (MSB) through 0 (LSB). IN_A carries I samps in parallel input mode; I/Q
samps in muxed one-channel input mode
IN_B[17:0]
P15, L14, P16, K14,
N15, N16, J14, M15,
M16, L15, L16, K15,
K16, J15, J16, H15,
H16, H14
I
Input Port B, bits 17 (MSB) through 0 (LSB) IN_B carries Q samples in parallel mode; I/Q
samples of second channel in 2-chan mode
IN_CLK
C12
I
Input data clock (drives the PLL that generates CHIP_CLK)
INT
A4
O
INTERRUPT – Active low output
LOOP
P8
O
Output pad for Tx PLL loop-back (MUST BE UNCONNECTED – NO LOAD!!)
OUT_A[17..0]
L1, L2, J3, M1, K3,
M2, N1, L3, N2, P1,
P2, R3, T3, P6, R4,
T4, P7, R5
O
Output Port A, bits 17 (MSB) through 0 (LSB)
OUT_A carries I samps in parallel output mode; I/Q samps in muxed 1-chan output mode
OUT_B[17..0]
R6, T6, R7, T7, R8,
T8, T9, R9, T10, P9,
R10, T11, P10, R11,
T12, R12, P11, T13
O
Output Port B, bits 17 (MSB) through 0 (LSB)
OUT_B carries Q samples in parallel mode; I/Q samples of second channel in 2-channel
mode
OUT_CLK
K2
O
Output data clock (do NOT use to drive other parts – for test purposes only!)
OUT_IQ_SEL
T5
O
Output I/Q select pin (low=I, high=Q) – only active in multiplexed I/Q output modes
RD
B6
I
READ - Active low read input (option: ground WR to use RD as a RD/WR pin)
RESET
B13
I
CHIP RESET – Active low input
SYNC_A
R14
I
Input synchronization pin A (active low)
SYNC_B
T14
I
Input synchronization pin B (active low)
SYNC_OUT
R13
O
Output sync pin (active low)
TCK
C8
TDI
A8
I
JTAG Data In
TDO
A7
O
JTAG Data Out
TEST_MODE
B7
I
Test mode (not required for operation; pull to GND)
TMS
B9
I
JTAG Mode Select
TRST
B8
I
JTAG Reset (during GC1115 reset, TRST must be pulled low, then high)
VDD
C4, C13, D3, D5,
D12, D14, E4, E6,
E7, E8, E9, E10,
E11, E13, F5, F12,
G5, G12, H5, H12,
J5, J12, K5, K12, L5,
L12, M4, M6–M11,
M13, N3, N5, N12,
N14, P4, P13
I
Digital core supply voltage, 1.2 V (40 pins)
VDD1
B14
I
Digital supply voltage for both PLLs (1 pin)
VDDA1
C16
I
PLL 1 analog supply voltage (1 pin)
I/O Data Bus - Active high bidirectional I/O
Note: This pin is also the Scan clock, when GC1115 is in scan mode.
I JTAG Clock
71
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
DEVICE INFORMATION (continued)
TERMINAL FUNCTIONS (Alphabetical Listing) (continued)
TERMINAL
NAME
NO.
I/O
DESCRIPTION
VDDA2
C10
I
PLL 2 analog supply voltage (1 pin)
VDDSHV
C5, D6–D11, E3,
E14, F4, F13, G4,
G13, H4, H13, J4,
J13, K4, K13, L4,
L13, M3, M14,
N6–N11, P5, P12
I
I/O supply voltage, 3.3 V (31 pins)
VPP
A11
I
E-fuse program supply voltage (not required for operation; pull to GND)
VSS
A1, A2, A15, A16,
B1, B2, B15, B16,
C3, C14, D4, D13,
E5, E12, F6–F11,
G7–G11, H6–H11,
J6–J11, K6–K11,
L7–L11, M5, M12,
N4, N13, P3, P14,
R1, R2, R15, R16,
T1, T2, T15, T16,
I
Digital ground (64 pins)
VSS1
C11
I
Digital ground for both PLLs (1 pin)
VSSA1
C15
I
PLL 1 analog ground (1 pin)
VSSA2
A14
I
PLL 2 analog ground (1 pin)
WR
A5
I
WRITE - Active low write input
72
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
APPLICATION INFORMATION
PC Board Layout Notes
1. Leave the LOOP pin unconnected.
2. Vpp is used only in manufacturing (for die ID). Attach Vpp via a pull-down resistor to GND.
3. SYNC_A and SYNC_B are input synchronization signals. SYNC_OUT is only needed to synchronize multiple
GC1115s, or if exact notification of a GC1115-internal event is needed (such as when a snapshot RAM
capture ends, or when the software timer count reaches zero). Wire SYNC_A, SYNC_B, and SYNC_OUT_
to test points so they can be observed on a scope or logic analyzer.
4. During chip start-up, TRST must be pulled low and then high, or the GC1115 will not reset. A
general-purpose pin on the microprocessor or DSP that controls the GC1115 can do this operation. All other
JTAG signals are no-connects
5. Place power supply bypass caps on the back side of the board if possible.
Suggested Test Points:
• IN_CLK, OUT_CLK
• a few IN_A, IN_B, OUT_A, and OUT_B pins
• SYNC_A, SYNC_B, SYNC_OUT
• CS, RD, WR, plus a few A[ ] and D[ ] pins.
Power Connections
The PLL supplies should connect to dedicated pads with filtering as shown in Figure 18.
Series 50R
Ferrite Bead
VDDA Dedicated Package
Pin and Bond Pad
VDD Supply
0.1 µF
0.01 µF
VSSA Dedicated Package
Pin and Bond Pad
VSS Supply
Series 50R
Ferrite Bead
VDD Dedicated Package
Pin and Bond Pad
0.1 µF
0.01 µF
VSS Dedicated Package
Pin and Bond Pad
A.
The 50R ferrite beads should be similar to: Murata P/N: BLM31P500SPT, Description: IND FB BLM31P500SPT 50R
1206.
Figure 18. Power-Supply Filter
The PLL's analog supply wires
• should be 30 µm or wider and located in metal level 2, 3, or 4
• should be routed directly to the PLL's analog supply pads
• should avoid crossing or running parallel to any other supply or signal wires
73
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
APPENDIX – GLOSSARY OF TERMS
3G
Third generation (refers to next-generation wideband cellular systems that use CDMA)
3GPP
3GPP2 Third generation partnership project 2 (cdma2000 specification, www.3gpp2.org)
ACLR
Adjacent channel leakage ratio (measure of out-of-band energy from one CDMA carrier)
ACPR
Adjacent channel power ratio
ADC
Analog-to-digital converter
AWGN
Additive white Gaussian noise
BER
Bit error rate
BW
Bandwidth
CCDF
Complementary cumulative distribution function
CDF
Cumulative distribution function
CDMA
Code division multiple access (spread spectrum)
cdma2000
Qualcomm’s next generation CDMA standard (see www.3gpp2.org)
CDP
Code domain power
CEVM
Composite error vector magnitude
CFR
Crest factor reduction
CMOS
Complementary metal oxide semiconductor
DAC
Digital-to-analog converter
dB
decibels
dBm
decibels relative to 1 mW (30 dBm = 1 W)
DSP
Digital signal processing or digital signal processor
DSSS
Direct sequence spread spectrum
DUC
Digital up-converter (usually provides the GC1115 input)
EVM
Error vector magnitude
FIR
Finite impulse response (type of digital filter)
I&Q
In-phase and quadrature (signal representation)
IF
Intermediate frequency
IIR
Infinite impulse response (type of digital filter)
JTAG
Joint Test Action Group (chip debug and test standard 1149.1)
LO
Local oscillator
LSB
Least significant bit
MSB
Most significant bit
Msps
Megasamples per second (1x10E6 samples/sec)
NPR
Noise power ratio
PA
Power amplifier
PAR
Peak-to-average ratio
PCDE
Peak code domain error
PDC
Peak detection and cancellation (stage)
74
GC1115
www.ti.com
SLWS144 – FEBRUARY 2005
APPENDIX – GLOSSARY OF TERMS (continued)
PDF
Probability density function
RF
Radio frequency
RMS
Root mean square (method to quantify error)
SEM
Spectrum emission mask
SNR
Signal-to-noise ratio (usually measured in dB or dBm)
UMTS
Universal mobile telephone service
VSA
Vector signal analyzer
W-CDMA
Wideband code division multiple access (synonymous with 3GPP)
75
GC1115
SLWS144 – FEBRUARY 2005
Errata Page for rev0 Silicon
1. 3-wire up mode does not work as described – use 2-wire mode
2. Detection threshold for stages 3 and 4 are wired together under normal operating circumstances
76
www.ti.com
PACKAGE OPTION ADDENDUM
www.ti.com
13-May-2005
PACKAGING INFORMATION
Orderable Device
Status (1)
Package
Type
Package
Drawing
GC1115IZDJ
PREVIEW
BGA
ZDJ
Pins Package Eco Plan (2)
Qty
256
TBD
Lead/Ball Finish
Call TI
MSL Peak Temp (3)
Call TI
(1)
The marketing status values are defined as follows:
ACTIVE: Product device recommended for new designs.
LIFEBUY: TI has announced that the device will be discontinued, and a lifetime-buy period is in effect.
NRND: Not recommended for new designs. Device is in production to support existing customers, but TI does not recommend using this part in
a new design.
PREVIEW: Device has been announced but is not in production. Samples may or may not be available.
OBSOLETE: TI has discontinued the production of the device.
(2)
Eco Plan - The planned eco-friendly classification: Pb-Free (RoHS) or Green (RoHS & no Sb/Br) - please check
http://www.ti.com/productcontent for the latest availability information and additional product content details.
TBD: The Pb-Free/Green conversion plan has not been defined.
Pb-Free (RoHS): TI's terms "Lead-Free" or "Pb-Free" mean semiconductor products that are compatible with the current RoHS requirements
for all 6 substances, including the requirement that lead not exceed 0.1% by weight in homogeneous materials. Where designed to be soldered
at high temperatures, TI Pb-Free products are suitable for use in specified lead-free processes.
Green (RoHS & no Sb/Br): TI defines "Green" to mean Pb-Free (RoHS compatible), and free of Bromine (Br) and Antimony (Sb) based flame
retardants (Br or Sb do not exceed 0.1% by weight in homogeneous material)
(3)
MSL, Peak Temp. -- The Moisture Sensitivity Level rating according to the JEDEC industry standard classifications, and peak solder
temperature.
Important Information and Disclaimer:The information provided on this page represents TI's knowledge and belief as of the date that it is
provided. TI bases its knowledge and belief on information provided by third parties, and makes no representation or warranty as to the
accuracy of such information. Efforts are underway to better integrate information from third parties. TI has taken and continues to take
reasonable steps to provide representative and accurate information but may not have conducted destructive testing or chemical analysis on
incoming materials and chemicals. TI and TI suppliers consider certain information to be proprietary, and thus CAS numbers and other limited
information may not be available for release.
In no event shall TI's liability arising out of such information exceed the total purchase price of the TI part(s) at issue in this document sold by TI
to Customer on an annual basis.
Addendum-Page 1
IMPORTANT NOTICE
Texas Instruments Incorporated and its subsidiaries (TI) reserve the right to make corrections, modifications,
enhancements, improvements, and other changes to its products and services at any time and to discontinue
any product or service without notice. Customers should obtain the latest relevant information before placing
orders and should verify that such information is current and complete. All products are sold subject to TI’s terms
and conditions of sale supplied at the time of order acknowledgment.
TI warrants performance of its hardware products to the specifications applicable at the time of sale in
accordance with TI’s standard warranty. Testing and other quality control techniques are used to the extent TI
deems necessary to support this warranty. Except where mandated by government requirements, testing of all
parameters of each product is not necessarily performed.
TI assumes no liability for applications assistance or customer product design. Customers are responsible for
their products and applications using TI components. To minimize the risks associated with customer products
and applications, customers should provide adequate design and operating safeguards.
TI does not warrant or represent that any license, either express or implied, is granted under any TI patent right,
copyright, mask work right, or other TI intellectual property right relating to any combination, machine, or process
in which TI products or services are used. Information published by TI regarding third-party products or services
does not constitute a license from TI to use such products or services or a warranty or endorsement thereof.
Use of such information may require a license from a third party under the patents or other intellectual property
of the third party, or a license from TI under the patents or other intellectual property of TI.
Reproduction of information in TI data books or data sheets is permissible only if reproduction is without
alteration and is accompanied by all associated warranties, conditions, limitations, and notices. Reproduction
of this information with alteration is an unfair and deceptive business practice. TI is not responsible or liable for
such altered documentation.
Resale of TI products or services with statements different from or beyond the parameters stated by TI for that
product or service voids all express and any implied warranties for the associated TI product or service and
is an unfair and deceptive business practice. TI is not responsible or liable for any such statements.
Following are URLs where you can obtain information on other Texas Instruments products and application
solutions:
Products
Applications
Amplifiers
amplifier.ti.com
Audio
www.ti.com/audio
Data Converters
dataconverter.ti.com
Automotive
www.ti.com/automotive
DSP
dsp.ti.com
Broadband
www.ti.com/broadband
Interface
interface.ti.com
Digital Control
www.ti.com/digitalcontrol
Logic
logic.ti.com
Military
www.ti.com/military
Power Mgmt
power.ti.com
Optical Networking
www.ti.com/opticalnetwork
Microcontrollers
microcontroller.ti.com
Security
www.ti.com/security
Telephony
www.ti.com/telephony
Video & Imaging
www.ti.com/video
Wireless
www.ti.com/wireless
Mailing Address:
Texas Instruments
Post Office Box 655303 Dallas, Texas 75265
Copyright  2005, Texas Instruments Incorporated