®
HSP45116
Data Sheet
July 2004
FN2485.8
Numerically Controlled
Oscillator/Modulator
The Intersil HSP45116 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
HSP45116 is divided into three main sections. The
Phase/Frequency Control Section (PFCS) and the
Sine/Cosine Section together form a complex NCO. 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.008Hz at 33MHz. 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.
Features
• NCO and CMAC on One Chip
• 15MHz, 25.6MHz, 33MHz Versions
• 32-Bit Frequency Control
• 16-Bit Phase Modulation
• 16-Bit CMAC
• 0.008Hz Tuning Resolution at 33MHz
• 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
PART NUMBER
HSP45116VC-25
HSP45116AVC-52
TEMP.
RANGE (°C)
0 to 70
0 to 70
PACKAGE
PKG.
DWG. #
160 Ld MQFP Q160.28x28
160 Ld MQFP Q160.28x28
†
This part has its own data sheet under HSP45116A,
Document # FN4156.
Block Diagram
VECTOR INPUT
R
I
SINE/
COSINE
ARGUMENT
MICROPROCESSOR
INTERFACE
INDIVIDUAL
CONTROL SIGNALS
PHASE/
FREQUENCY
CONTROL
SECTION
SIN
SINE/
COSINE
SECTION
COS
CMAC
R
I
VECTOR OUTPUT
1
CAUTION: These devices are sensitive to electrostatic discharge; follow proper IC Handling Procedures.
1-888-INTERSIL or 321-724-7143
|
Intersil (and design) is a trademark of Intersil Americas Inc.
Copyright © Intersil Americas Inc. 1999, 2004. All Rights Reserved
All other trademarks mentioned are the property of their respective owners.
Pinout
IMIN0
RIN18
RIN17
RIN16
RIN15
RIN14
GND
RIN13
RIN12
RIN11
RIN10
RIN9
RIN8
RIN7
RIN6
RIN5
RIN4
RIN3
RIN2
GND
RIN1
V
CC
RIN0
SH1
SH0
ACC
ENPHREG
ENOFREG
PEAK
RBYTILD
BINFMT
GND
TICO
V
CC
MOD1
MOD0
PACI
LOAD
PMSEL
NC
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
2
120
119
118
117
116
115
114
113
112
111
110
109
108
107
106
105
104
103
102
101
100
99
98
97
96
95
94
93
92
91
90
89
88
87
86
85
84
83
82
81
NC
GND
IO6
IO5
IO4
IO3
GND
IO2
IO1
V
CC
IO0
RO19
GND
RO18
RO17
RO16
RO15
RO14
V
CC
RO13
RO12
RO11
GND
RO10
RO9
V
CC
RO8
RO7
GND
RO6
RO5
RO4
RO3
V
CC
RO2
RO1
RO0
GND
DET1
DET0
HSP45116
160 LEAD MQFP
TOP VIEW
CLROFR
ENCFREG
ENPHAC
ENTIREG
ENI
MODPI/2PI
CS
GND
CLK
V
CC
AD1
AD0
WR
C15
C14
C13
C12
C11
C10
C9
C8
GND
C7
C6
C5
C4
C3
C2
C1
C0
OUTMUX1
OUTMUX0
GND
OER
V
CC
OEREXT
OEIEXT
OEI
PACO
NC
160
159
158
157
156
155
154
153
152
151
150
149
148
147
146
145
144
143
142
141
140
139
138
137
136
135
134
133
132
131
130
129
128
127
126
125
124
123
122
121
NC
V
CC
IMIN1
GND
IMIN2
IMIN3
IMIN4
IMIN5
IMIN6
IMIN7
IMIN8
IMIN9
IMIN10
IMIN11
IMIN12
V
CC
IMIN13
GND
IMIN14
IMIN15
IMIN16
IMIN17
IMIN18
IO19
IO18
IO17
IO16
IO15
V
CC
GND
IO14
IO13
IO12
IO11
IO10
GND
V
CC
IO9
IO8
IO7
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
HSP45116
Pin Description
NAME
V
CC
GND
C0-15
AD0-1
CS
WR
CLK
ENPHREG
ENOFREG
ENCFREG
ENPHAC
ENTIREG
NUMBER
A1, A9, A15, G1,
J15, Q1, Q7, Q15
A8, A14, B1, H1,
H15, P15, Q2, Q8
N8-11, P8-13,
Q9-14
N7, P7
P6
Q6
Q5
M1
N1
N5
Q3
P5
TYPE
-
-
I
I
I
I
I
I
I
I
I
I
+5V Power supply input.
Power supply ground input.
Control input bus for loading phase and frequency data into the PFCS. C15 is the MSB.
Address pins for selecting destination of C0-15 data.
Chip Select (active low).
Write Enable. Data is clocked into the register selected by AD0-1 on the rising edge of WR when
the CS line is low.
Clock. All registers, except the control registers clocked with WR, are clocked (when enabled)
by the rising edge of CLK.
Phase Register Enable (active low). Registered on chip by CLK. When active, after being
clocked onto chip, ENPHREG enables the clocking of data into the phase register.
Frequency Offset Register Enable (active Low). Registered on chip by CLK. When active, after
being clocked onto chip, ENOFREG enables clocking of data into the frequency offset register.
Center Frequency Register Enable (active low). Registered on chip by CLK. When active, after
being clocked onto chip, ENCFREG enables clocking of data into the center frequency register.
Phase 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.
Time Interval Control Register Enable (active low). Registered on chip by CLK. When active,
after being clocked onto chip, ENTIREG enables clocking of data into the time accumulator
register.
Real 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.
Modulo
π/2π
Select. When low, the Sine and Cosine ROMs are addressed modulo 2π (360
degrees). When high, the most significant address bit is held low so that the ROMs are
addressed modulo
π
(180 degrees). This input is registered on chip by clock.
Frequency 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.
Phase Accumulator Load Control (active low). Registered on chip by CLK. Zeroes feedback
path in the phase accumulator without clearing the phase accumulator register.
External Modulation Control Bits. When selected with the PMSEL line, these bits add a 0, 90,
180, or 270 degree offset to the current phase in the phase accumulator. The lower 14 bits of
the phase control path are set to zero.
These bits are loaded into the phase register when ENPHREG is low.
PMSEL
P3
I
Phase Modulation Select Line. This line determines the source of the data clocked into the phase
register. When high, the phase control register is selected. When low, the external modulation pins
(MOD0-1) are selected for the 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 Bypass, Timer Load. Active low, registered by CLK. This input bypasses the sine/ cosine
ROM so that the 16-bit phase adder output and lower 16 bits of the phase 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.
Phase Accumulator Carry Input (active low). A low on this pin causes the phase accumulator to
increment by one, in addition to the values in the phase accumulator register and frequency
adder.
DESCRIPTION
ENI
Q4
I
MODPI/2PI
N6
I
CLROFR
P4
I
LOAD
MOD0-1
N4
M3, N3
I
I
RBYTILD
L3
I
PACI
P2
I
3
HSP45116
Pin Description
NAME
PACO
(Continued)
TYPE
O
DESCRIPTION
Phase Accumulator Carry Output. Active low and registered by CLK. A low on this output
indicates that the phase accumulator has overflowed, i.e., the end of one sine/cosine cycle has
been reached.
Time Interval Accumulator Carry Output. Active low, registered by CLK. This output goes low
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.
Real Input Data Bus. This is the external real component into the complex multiplier. The bus is
clocked into the real input data register by CLK when ENI is asserted; two’s complement.
NUMBER
L13
TICO
P1
O
RIN0-18
C1, C2, D1, D2, E1-
3, F1-3, G2, G3,
H2, H3, J1-3, K1,
K2
A2-7, B2-7, C3-8,
D3
K3, L1
L2
I
IMIN0-18
I
Imaginary Input Data Bus. This is the external imaginary component into the complex multiplier.
The bus is clocked into the real input data register by CLK when ENI is asserted; two’s
complement.
Shift Control Inputs. These lines control the input shifters of the RIN and IIN inputs of the
complex multiplier. The shift controls are common to the shifters on both of the busses.
Accumulate/Dump Control. This input controls the complex accumulators and their holding
registers. When high, the accumulators accumulate and the holding registers are disabled.
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.
SH0-1
ACC
I
I
BINFMT
N2
I
This 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.
This 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.
These inputs select the data to be output on RO0-19 and IO0-19.
Real Output Data Bus. These Three-state outputs are controlled by OER and OEREXT.
OUTMUX0-1 select the data output on the bus.
PEAK
M2
I
OUTMUX0-1
RO0-19
N12, N13
C15, D14, D15,
E14, E15, F13-15,
G13-15, H13, H14,
J13, J14, K13-15,
L15, M15
A10-13, B8-15, C9-
14, D13, E13
N15, L14
I
O
IO0-19
DET0-1
O
O
Imaginary Output Data Bus. These Three-state outputs are controlled by OEI and OEIEXT.
OUTMUX0-1 select the data output on the bus.
These output pins indicate the number of bits of growth in the accumulators. While PEAK is low,
these pins indicate the peak growth. The detector examines bits 15-18, real and imaginary
accumulator holding registers and bits 30-33 of the real and imaginary CMAC holding registers.
The bits indicate the largest growth of the four registers.
Three-state control for bits RO0-15. Outputs are enabled when the line is low.
Three-state control for bits RO16-19. Outputs are enabled when the line is low.
Three-state control for bits IO0-15. Outputs are enabled when the line is low.
Three-state control for bits IO16-19. Outputs are enabled when the line is low.
OER
OEREXT
OEI
OEIEXT
P14
M13
M14
N14
I
I
I
I
4
HSP45116
IMIN(18:0)
RIN(18:0)
MOD(1:0)
ENCODE
PHASE
INPUT
0
REGISTER
R
E
G
2
MUX
14
16
R.PMSEL
0
16
R.ENPHREG
CLK
PHASE
REGISTER
R
E
G
IMIN(18:0)
RIN(18:0)
1
C(15:0)
16
PHEN
>
16
>
MS INPUT
REGISTER
R
E
G
16
MSEN
>
1
LS INPUT
REGISTER
16
R
E
G
CENTER FREQUENCY
REGISTER
32
32
R
E
G
CLK
>
OFFSET
FREQUENCY
R.ENCFREG REGISTER
32
R
E
G
32
0
32
MUX
FREQUENCY
ADDER
SIN/COS
ARGUMENT
A
D
D
E
R
32
32
PHASE
20
>
16
SINE/COSINE
GENERATOR 16
CLK
32
LSEN
AD(1:0)
CS
WR
CLK
DECODER
R.ENOFREG
>
R
E
G
SIN 16
COS 16
>
R.CLROFR
R.PMSEL
R.ENPHREG
R.ENCFREG
R.ENOFREG
R.CLROFR
R.LOAD
R.ENPHAC
R.MODPI/2PI
R.RBYTILD
R.ENTIREG
PHASE
ACCUMULATOR
R
E
G
PACO
PMSEL
ENPHREG
ENCFREG
ENOFREG
CLROFR
LOAD
ENPHAC
MODPI/2PI
RBYTILD
ENTIREG
CLK
R
E
G
0
CLK
>
PHASE
ADDER
PHASE
ACCUMULATOR
ADDER
MUX
32
A
D
D
E
R
0
1
PHASE
ACCUMULATOR
REGISTER MSB
32
R
E
G
16 MSBs
15
>
CLK
0
32
0
A
D
D
E
R
16
R
E
G
0
CLK
>
MUX
32
1
CLK
>
R.ENPHAC
R.LOAD
PACI
R.MODPI/2PI
SH(1:0)
ENI
ACC
PEAK
BINFMT
CLK
R.SH(1:0)
R.ENI
R.ACC
R.PEAK
R.BINFMT
CARRY OUT
CLK
32
CLK
R.RBYTILD
R.SH(1:0)
R.ENI
R.ACC
R.PEAK
R.BINFMT
PACI
32
16 LSBs
Functional Block Diagram
R
E
G
>
TIME
ACCUMULATOR
REGISTER
R
E
G
32
R
E
G
R
E
G
TICO
OEI
OEIEXT
OER
OEREXT
OUTMUX(1:0)
ADDER
32
0
R.ENTIREG
32
TIME ACCUMULATOR
0
CLK
>
>
MUX
1
TIME
INCREMENT
>
32
TICO PACO
5