The Intersil HSP45116A combines a high performance
quadrature numerically controlled oscillator (NCO) and a
high speed 16-bit Complex Multiplier/Accumulator (CMAC)
on a single IC. This combination of functions allows a
complex vector to be multiplied by the internally generated
(cos, sin) vector for quadrature modulation and
demodulation. As shown in the Block Diagram, the
HSP45116A is divided into three main sections. The Phase/
Frequency Control Section (PFCS) and the Sine/Cosine
Section together form a complexNCO. The CMAC multiplies
the output of the Sine/ Cosine Section with an external
complex vector.
The inputs to the Phase/Frequency Control Section consist
of a microprocessor interface and individual control lines.
The phase resolution of the PFCS is 32 bits, which results in
frequency resolution better than 0.013Hz at 52MHz. The
output of the PFCS is the argument of the sine and cosine.
The spurious free dynamic range of the complex sinusoid is
greater than 90dBc.
The output vector from the Sine/Cosine Section is one of the
inputs to the Complex Multiplier/Accumulator. The CMAC
multiplies this (cos, sin) vector by an external complex vector
and can accumulate the result. The resulting complex vectors
are available through two 20-bit output ports which maintain
the 90dB spectral purity. This result can be accumulated
internally to implement an accumulate and dump filter.
A quadrature down converter can be implemented by
loading a center frequency into the Phase/Frequency
Control Section. The signal to be down converted is the
Vector Input of the CMAC, which multiplies the data by the
rotating vector from the Sine/Cosine Section. The resulting
complex output is the down converted signal. The bit
position and widths for the outputs of CMAC and Complex
Accumulator (ACC) are programmable.
4156.3
Features
• NCO and CMAC on One Chip
• 52MHz Version
• 32-Bit Frequency Control
• 16-Bit Phase Modulation
• 16-Bit CMAC
• 0.013Hz Tuning Resolution at 52MHz
• Programmable Rounding Option
• Spurious Frequency Components < -90dBc
• Fully Static CMOS
Applications
• Frequency Synthesis
• Modulation - AM, FM, PSK, FSK, QAM
• Demodulation, PLL
• Phase Shifter
• Polar to Cartesian Conversions
Ordering Information
TEMP.
PART NUMBER
HSP45116AVC-520 to 70160 Ld MQFPQ160.28x28
RANGE (oC)PACKAGEPKG. NO.
Block Diagram
MICROPROCESSOR
CONTROL SIGNALS
INTERFACE
INDIVIDUAL
3-197
VECTOR INPUT
RI
SINE/
PHASE/
FREQUENCY
CONTROL
SECTION
CAUTION: These devices are sensitive to electrostatic discharge; follow proper IC Handling Procedures.
C0-1554-61, 63-70IControl input bus for loading phase and frequency data into the PFCS. C15 is the MSB.
AD0-151, 52IAddress pins for selecting destination of C0-15 data. AD1 is the MSB.
CS47IChip select (active low).
WR53IWrite Enable. Data is clocked into the input register selected by AD0-1 on the rising edge of WR
CLK49IClock. All registers, except the Control Registers clocked with WR, are clocked (when enabled)
ENPHREG27IPhase Register Enable (active low). Registered on chip by CLK. When active low, after being
ENOFREG28IFrequency Offset Register Enable (active low). Registered on chip by CLK. When active, after
ENCFREG42ICenter Frequency Register Enable (active low). Registered on chip by CLK. When active, after
22, 34, 50, 87, 95,
102, 111, 124, 132,
145, 159
83, 92, 98, 108,
114, 119, 125, 131,
143, 157
-+5V Power supply input.
-Power supply ground input.
when the CS line is low.
by the rising edge of CLK.
clocked onto chip,ENPHREG enables the clocking of data into the Phase Register.
being clocked onto chip,ENOFREG enables clocking of frequency offset data into the frequency
offset register.
being clockedonto chip, ENCFREGenables clocking of datainto the Center FrequencyRegister.
ENPHAC43IPhase Accumulator Register Enable (active low). Registered on chip by CLK. When active, after
being clocked onto chip,ENPHAC enables clocking of the Phase Accumulator Register.
ENTIREG44ITime Interval ControlRegister Enable (activelow). Registered onchip by CLK. Whenactive, after
being clocked onto chip,ENTIREG enables clocking of data into the Time Accumulator Register.
ENI45IReal and Imaginary Data Input Register (RIR, IIR) Enable (active low). Registered on chip by
CLK. When active, after being clocked onto chip, ENI enables clocking of data into the real and
imaginary input data register.
MODPI/2PI46IModulo π/2π Select. When low, the Sine and Cosine ROMs are addressed modulo 2π (360
degrees). When high, the mostsignificant address bitis held lowso that theROMs areaddressed
modulo π (180 degrees). This input is registered on chip by clock. This control pin was included
for FFT processing.
CLROFR41IFrequency Offset Register Output Zero (active low). Registered on chip by CLK. When active,
after being clocked onto chip, CLROFR zeros the data path from the Frequency Offset Register
to the frequency adder. New data can still be clocked into the Frequency Offset Register;
CLROFR does not affect the contents of the register.
LOAD38IPhase Accumulator Load Control (active low). Registered on chip byCLK. Zeroes feedback path
in the phase accumulator without clearing the Phase Accumulator Register.
MOD0-135, 36IExternalModulation Control Bits.When selectedwith the PMSELline, thesebits add a0, 90, 180,
or 270degree offsetto the currentphase inthe phase accumulator. Thelower 14bits of thephase
control path are set to zero.
These bits are loaded into the Phase Register when ENPHREG is low.
MOD1MOD0PHASE SHIFT (DEGREES)
000
0190
10270
11180
3-199
HSP45116A
Pin Description
NAMENUMBERTYPEDESCRIPTION
PMSEL39IPhase Modulation Select Line. This line determines the source of the data clocked into the Phase
RBYTILD30IROM Bypass, Timer Load (active low). Registered by CLK. This input bypasses the sine/ cosine
PACI37IPhase Accumulator Carry Input (active low). A low on this pin causes the phase accumulator to
TICO33OTime Interval Accumulator Carry Output. Active low, registered by CLK. This output goes low
RIN0-182-6, 8-19, 21, 23IReal Input Data Bus. RIN18 is the MSB. This is the external real component into the complex
IMIN0-181, 138-142, 144,
(Continued)
146-156, 158
Register.When high, the Phase Control Registeris selected. When low ,the external modulation pins
(MOD0-1) are selected forthe most significant two bits and the least significant two bits and the least
significant 14 bits are set to zero. This control is registered by CLK.
ROM sothat the 16 bit phase adder output and lower16 bits of thephase accumulator go directly
to the CMAC’s sine and cosine inputs, respectively. It also enables loading of the Timer
Accumulator Register by zeroing the feedback in the accumulator.
increment by one in addition to the values in the Phase Accumulator Register and frequency
adder.
that the phase accumulator has overflowed, i.e., the end of one sine/cosine cycle has been
reached.
when a carry is generated by the time interval accumulator. This function is provided to time out
control events such as synchronizing register clocking to data timing.
ACC26IAccumulate/Dump Control. This input controls the complex accumulators and their holding
registers. Whenhigh, the accumulators accumulateand the holding registers aredisabled. When
low, the feedback in the accumulators is zeroed to cause the accumulators to load.
The holding registers are enabled to clock in the results of the accumulation. This input is
registered by CLK.
BINFMT31IThis input is used to convert the two’s complement output to offset binary (unsigned) for
applications using D/A converters. When low, bits RO19 and IO19 are inverted from the internal
two’s complement representation. This input is registered by CLK.
PEAK29IThis input enables the peak detect feature of the block floating point detector. When high, the
maximum bit growth in the Output Holding Registers is encoded and output on the DET0-1 pins.
When the PEAK input is asserted, the block floating point detector output will track the maximum
growth in the holding registers, including the data in the Holding Registers at the time that PEAK
is activated.
3-200
HSP45116A
Pin Description
NAMENUMBERTYPEDESCRIPTION
OUTMUX0-171, 72IThese inputs select the data to be output on RO0-19 and IO0-19.
RO0-1984-86, 88-91, 93,
IO0-19110, 112, 113,
DET0-181, 82OThese output pins indicate the number of bits of growth in the accumulators. While PEAK is low,
(Continued)
94, 96, 97, 99-101,
103-107, 109
115-118, 121-123,
126-130, 133-137
OUT
OUT
MUX
MUX
1
0RO16-19RO0-15IO16-19IO0-15
00Real CMAC
31-34
01Real CMAC
31-34
10Real ACC
16-19
11ReservedReservedReservedReserved
OReal Output Data Bus. R19 is the MSB. These three-state outputs are controlled by OER and
OEREXT. OUTMUX0-1 select the data output on the bus.
OImaginaryOutput Data Bus. I19 is the MSB. These three-state outputs are controlled by OEI and
OEIEXT. OUTMUX0-1 select the data output on the bus.
these pins indicate the peak growth. The detector examines bits 15-18, real and imaginary
accumulator holding registers and bits30-33 of the real and imaginary CMAC Holding Registers.
The bits indicate the largest growth of the four registers.
Real CMAC
15-30
0, Real
CMAC 0-14
Real ACC
0-15
Imag CMAC
31-34
Imag CMAC
31-34
Imag ACC
16-19
Imag CMAC
15-30
0, Imag
CMAC 0-14
Imag ACC
0-15
NUMBER OF BITS
DET 1DET 0
000
011
102
113
OER74IThree-state control for bits RO0-15. Outputs are enabled when the line is low.
OEREXT76IThree-state control for bits RO16-19. Outputs are enabled when the line is low.
OEI78IThree-state control for bits IO0-15. Outputs are enabled when the line is low.
OEIEXT77IThree-state control for bits IO16-19. Outputs are enabled when the line is low.
RND75IRound Enable. This input enables rounding of the output data precision from 9 to 20 bits. This
input is active “low”. This input must be tied either high or low.
OF GROWTH ABOVE 2
o
3-201
HSP45116A
Functional Description
The Numerically Controlled Oscillator/Modulator (NCOM)
produces a digital complex sinusoid waveform whose
amplitude, phase and frequency are controlled by a set of
input command words. When used as a Numerically
Controlled Oscillator (NCO), it generates 16-bit sine and
cosine vectors at a maximum sample rate of 40MHz. The
NCOM can be preprogrammed to produce a constant (CW)
sine and cosine output for Direct Digital Synthesis (DDS)
applications. Alternatively, the phase and frequency inputs
can be updated in real time to produce a FM, PSK, FSK, or
MSK modulated waveform. The Complex Multiplier/
Accumulator (CMAC) can be used to multiply this wa veform
by an input signal for AM and QAM signals. By stepping the
phase input, the output of the ROM becomes an FFT twiddle
factor; when data is input to the V ector Inputs (see Block
Diagram), the NCOM calculates an FFT butterfly.
As shown in the Block Diagram, the NCOM consists of
three parts: Phase and FrequencyControlSection (PFCS),
Sine/Cosine Generator, and CMAC. The PFCS stores the
phase and frequency inputs and uses them to calculate the
phase angle of a rotating complex vector. The Sine/Cosine
Generator performs a lookup on this phase and outputs the
appropriate values for the sine and cosine. The sine and
cosine form one set of inputs to the CMAC,whichmultiplies
them by the input vector to form the modulated output.
The outputs of the CMAC and ACC can be rounded to
different bit widths.
Phase and Frequency Control Section
The phase and frequency of the internally generated sine
and cosine arecontrolledby the PFCS (Figure 1). The PFCS
generates a 32-bit word that represents the current phase of
the sine and cosine waves being generated: The Sine/
Cosine Argument. Stepping this phase angle from 0 through
full scale (2
sinusoid starting at 0
counterclockwise. The PFCS automatically increments the
phase by a preprogrammed amount on every rising edge of
the external clock. The value of the phase step (which is the
sum of the Center and Offset Frequency Registers) is:
Phase Step =
where Signal Frequency is a 2’s complement number. The
sign bit will settheoutput vector notation for Upper Sideband
(USB) or lower Sideband (LSB) applications.
The PFCS is divided into two sections: The Phase
Accumulator uses the data on C0-15 to compute the phase
angle, that is the input to the Sine/Cosine Section (Sine/
Cosine Argument);theTime Accumulator supplies a pulseto
mark the passage of a preprogrammed period of time.
32
- 1) corresponds to the phase angle of a
o
and advancing around the unit circle
Signal Frequency
----------------------------------------------
Clock Frequency
232×
bit accumulator register every clock cycle; when the sum
causes the addertooverflow,the accumulation continues with
the 32 bits of the adder going into the Accumulator Register.
The overflow bit is used as an output to indicate the timing of
the accumulation overflows . In the Time Accum ulator, the
overflow bit generates
TICO, the Time Accumulator carry out
(which is the only output of the Time Accumulator). In the
Phase Accumulator, the overflow is inverted to generate the
Phase Accumulator Carry Out,
PACO.
The output of the Phase Accumulator goes to the Phase
Adder, which adds an offset to the top 16 bits of the phase.
This 32-bit number forms the argument of the sine and
cosine, which is passed to the Sine/Cosine Generator.
Both accumulators are loaded 16 bits at a time over the
C0-15 bus. Data on C0-15 is loaded into one of the three
input registers when
CS and WR are low. The data in the
Most Significant Input Register and Least Significant Input
Register forms a 32-bit word that is the input to the Center
Frequency Register, Offset Frequency Register and Time
Accumulator. These registers are loaded by enabling the
proper register enablesignal; for example,toloadthe Center
Frequency Register, the data is loaded into the LS and MS
Input Registers, and
edge of CLK will pass the registered version of
ENCFREG is set to zero; the nextrising
ENCFREG,
R.ENCFREG, to the clock enable of the Center Frequency
Register; this register then gets loaded on the following
rising edge of CLK. The contents of the Input Registers will
be continuously loaded into the Center Frequency Register
as long as
R.ENCFREG is low.
The Phase Register is loaded in a similar manner. Assuming
PMSEL is high, the contents of the Phase Input Register is
loaded into the Phase Register on every rising clock edge
that R.ENPHREG is low. If PMSEL is low, MOD0-1 supply
the two most significant bits into the Phase Register (MOD1
is the MSB) and the least significant 14 bits are loaded with
0. MOD0-1 and are used to generate a Quad Phase Shift
Keying (QPSK) signal (Table 2).
TABLE 1. AD0-1 DECODING
AD1AD0
000
010
100
11XXReserved.
XX1XNo Operation.
CSWRFUNCTION
Load leastsignificant bits
↑
of frequency input.
Load most significant bits
↑
of frequency input.
Load phase register.
↑
The Phase Accumulator and Time Accumulator work on the
same principle: a 32-bit word is added to the contents of a 32-
3-202
Loading...
+ 11 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.