![]() |
|
If you can't view the Datasheet, Please click here to try to view without PDF Reader . |
|
Datasheet File OCR Text: |
tm 3-1 HSP50214B programmable downconverter the HSP50214B programmable downconverter converts digitized if data into ?tered baseband data which can be processed by a standard dsp microprocessor. the programmable downconverter (pdc) performs down conversion, decimation, narrowband low pass ?tering, gain scaling, resampling, and cartesian to polar coordinate conversion. the 14-bit sampled if input is down converted to baseband by digital mixers and a quadrature nco, as shown in the block diagram. a decimating (4 to 32) ?th order cascaded integrator-comb (cic) ?ter can be applied to the data before it is processed by up to 5 decimate-by-2 halfband ?ters. the halfband ?ters are followed by a 255-tap programmable fir ?ter. the output data from the programmable fir ?ter is scaled by a digital agc before being re-sampled in a polyphase fir ?ter. the output section can provide seven types of data: cartesian (i, q), polar (r, ), ?tered frequency (d / dt), timing error (te), and agc level in either parallel or serial format. features up to 65 msps front-end processing rates (clkin) and 55mhz back-end processing rates (procclk) clocks may be asynchronous processing capable of >100db sfdr up to 255-tap programmable fir overall decimation factor ranging from 4 to 16384 output samples rates to ? 12.94 msps with output bandwidths to ? 982khz lowpass 32-bit programmable nco for channel selection and carrier tracking digital resampling filter for symbol tracking loops and incommensurate sample-to-output clock ratios digital agc with programmable limits and slew rate to optimize output signal resolution; fixed or auto gain adjust serial, parallel, and fifo 16-bit output modes cartesian to polar converter and frequency discriminator for afc loops and demodulation of am, fm, fsk, and dpsk input level detector for external i.f. agc support applications single channel digital software radio receivers base station rx s: amps, na tdma, gsm, and cdma compatible with hsp50210 digital costas loop for psk reception evaluation platform available block diagram ordering information part number temp. range ( o c) package pkg. no. HSP50214Bvc 0 to 70 120 ld mqfp q120.28x28 HSP50214Bvi -40 to 85 120 ld mqfp q120.28x28 halfband polyphase fir and filters input section level detect carrier 5 th cartesian to output formatter discriminator agc loop filter mag. phase resampling i out q out freq agc ? timing error in(13:0) refclk serouta seroutb aout(15:0) bout(15:0) control c(7:0) microprocessor read/write gain (2:0) halfband filters filter cic order halfband filters polar coordinate converter halfband polyphase fir and filters nco nco cof sof adj clkin procclk 255-tap fir filter 255-tap fir filter 5 th filter cic order data sheet may 2000 file number 4450.3 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 corporation. | copyright intersil corporation 2000
3-2 block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1 pinout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4 pin descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-5 figure 1. functional block diagram of the HSP50214B programmable downconverter . . . . . . . . . . . . . . . . . . . . . . . . 3-7 functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-8 pdc applications overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-8 fdm based standards and applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-8 tdm based standards and applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-8 cdma based standards and applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9 traditional modulation formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9 resampling and interpolation filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9 14-bit input and processing resolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10 summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10 multiple chip synchronization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10 figure 2. synchronization circuit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10 input section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10 interpolation example: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11 input level detector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11 figure 3. block diagram of the input section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11 figure 4. statement of the problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11 figure 5. block diagram of the interpolation approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11 figure 6. interpolation spectrum: interpolate by 8 the input data with zero stuffing; sample at rate r = f s . . . . . 3-12 figure 7. alias profile and the 85db dynamic range bandwidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-12 figure 8. processor based external if agc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-12 figure 9. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-13 figure 10. input threshold detector bit weighting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-13 figure 11. signal processing within level detector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-14 carrier synthesizer/mixer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-14 figure 12. block diagram of nco section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-14 figure 13. serial input timing for cof and sof inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-15 figure 14. holding registers load sequence for cof and sof serial offset frequency data . . . . . . . . . . . . . . . . . . 3-15 cic decimation filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-16 figure 15. cic shift gain values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-16 cic gain calculations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-16 using the input gain adjust control signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-17 halfband decimating filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-17 figure 16. cic filter bit weighting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-17 figure 17. block diagram of halfband filter section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-18 figure 18. halfband filter frequency response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-18 figure 19. halfband filter alias considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-18 examples of procclk rate calculations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-19 255-tap programmable fir filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-19 figure 20. demonstration of different types of digital fir filters configured in the programmable downconverter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-20 automatic gain control (agc) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-20 figure 21. agc multiplier linear and db transfer function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-21 figure 22. agc gain control transfer function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-21 figure 23. agc block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-23 re-sampler/halfband filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-25 figure 24a. polyphase resampler filter broadband frequency response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-25 figure 24b. polyphase resampler filter pass band frequency response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-25 figure 24c. polyphase resampler filter expanded resolution passband frequency response . . . . . . . . . . . . . . . . . 3-28 figure 25. generating data ready pulses for output data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-28 timing nco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-28 figure 26. timing nco block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-29 figure 27. timing error generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-29 figure 27a. timing error application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-29 HSP50214B 3-3 cartesian to polar converter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-30 figure 28. phase bit mapping of coordinate converter output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-30 frequency discriminator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-31 figure 29. frequency discriminator block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-31 output section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-32 parallel direct output port mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-32 data transitions:. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-32 figure 30. parallel output block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3- 32 data ready signal assertion rate: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-33 figure 31. d a t ard y waveforms when i (read data) is selected as aout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-33 figure 32. datardy waveforms when |r| (magnitude) is selected as aout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-33 figure 33. datardy waveforms when f (frequency) is selected as aout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-33 serial direct output port mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-34 figure 34. serial output formatter block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-35 serial output con?uration example 1: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-36 serial output con?uration example 2: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-36 figure 35. example 2 serial output data stream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-37 figure 36. valid sersync configuration options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-37 buffer ram output port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-37 fifo operation via 16-bit processor interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-38 figure 37. 16-bit microprocessor interface buffer ram mode block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-38 figure 38. interface between a 16-bit microprocessor and pdc in fifo buffer ram mode . . . . . . . . . . . . . . . . . . . . . . 3-39 figure 39. timing diagram for pdc in fifo mode with outputs i, q, and frequency sent to aout(7:0) and bout(7:0) . . 3-39 figure 40. fifo register operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-40 fifo operation via 8-bit processor interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-40 figure 41. 8-bit microprocessor interface buffer ram mode block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-41 figure 42. ram load sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-41 snap shot operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-41 figure 43. snap shot sampling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-41 avoiding timing pitfalls when using the buffer ram output port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-42 figure 44. avoiding false intrrp assertions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-42 microprocessor write section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-42 figure 45. loading the control registers with 32-bit control words . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-43 microprocessor read section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-43 figure 46. reading the control registers using a latch code equal to a 5, a read address and a read code . . . . 3-43 applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-44 composite filter response example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-44 figure 47. receive signal frequency spectrum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-44 rf/if considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-44 pdc con?uration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-45 references . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-45 figure 48a. cic filter response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-46 figure 48b. hb3 filter response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-46 figure 49a. hb5 filter response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-46 figure 49b. 255 fir tap filter response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-46 figure 49c. composite filter response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-46 figure 49d. pdc filter frequency spectrums example (normalized to same scale) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-46 con?uration control word de?itions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-47 ac test load circuit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-59 waveforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-60 figure 50. timing relative to wr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-60 figure 51. timing relative to rd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-60 figure 52. output rise and fall times . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-60 figure 53. timing relative to clkin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-60 figure 54. output enable/disable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-60 figure 55. timing relative to procclk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-60 figure 56. refclk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-60 HSP50214B pag e 3-4 pinout 120 lead mqfp top view 2 1 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 89 90 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 31 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 91 97 98 99 100 92 93 94 95 96 106 107 108 109 110 111 101 102 103 104 105 117 118 119 120 112 113 114 115 116 nc bout3 bout2 bout1 oebl bout0 bout4 gnd procclk v cc msynci gnd bout7 bout6 bout5 gnd msynco gnd bout15 bout14 v cc nc bout12 bout11 bout10 bout9 bout8 bout13 oebh d a t ard y syncout intrrp wr rd gnd c7 c6 nc c5 c4 v cc c3 c2 c1 nc c0 a2 a1 a0 gnd sel2 sel1 sel0 gnd serouta seroutb sersync ser oe serclk v cc syncin2 syncin1 cof gainadj0 cofsync gnd sof sofsync v cc v cc in0 in1 gnd in3 clkin gnd nc eni gainadj2 in4 in8 in9 in10 gnd in7 nc in6 in5 in2 oeal gnd aout0 aout1 aout2 aout3 aout4 nc v cc aout5 aout6 aout7 aout8 aout9 nc gnd aout10 aout11 aout12 in11 aout13 aout14 aout15 oeah gnd refclk v cc agcgnsel in13 in12 gainadj1 32 HSP50214B 3-5 pin descriptions name type description v cc - positive power supply voltage. gnd - ground. clkin i input clock. this clock should be a multiple of the input sample rate. all input section processing occurs on the rising edge of clkin. the frequency of clkin is designated f clkin . in(13:0) i input data. the format of the input data may be set to offset binary or 2 s complement. in13 is the msb (see control word 0). eni i input enable. active low. this pin enables the input to the part in one of two modes, gated or interpolated (see con- trol word 0). in gated mode, one sample is taken per clkin when eni is asserted. the input sample rate is desig- nated f s , which can be different from f clkin when eni is used. gainadj(2:0) i gainadj input. adds an offset to the gain via the shifter following the mixer. gainadj value is added to the shift code from the microprocessor ( p) interface. the shift code is saturated to a maximum code of f. the gain is offset by (6db)(gainadj); (000 = 0db gain adjust; 111 = 42db gain adjust) gainadj2 is the msb. see ?sing the input gain adjust control signals?section. procclk i processing clock. procclk is the clock for all processing functions following the cic section. processing is per- formed on procclk s rising edge. all output timing is derived from this clock. note: this clock may be asynchronous to clkin. agcgnsel i agc gain select. this pin selects between two agc loop gains. this input is setup and held relative to procclk. gain setting 1 is selected when agcgnsel = 1. cof i carrier offset frequency input. this serial input pin is used to load the carrier offset frequency into the carrier nco (see serial interface section). the offset may be 8, 16, 24, or 32 bits. the setup and hold times are relative to clkin. this input is compatible with the output of the hsp50210 costas loop [1]. cofsync i carrier offset frequency sync. this signal is asserted one clk before the most signi?ant bit (msb) of the offset frequency word (see serial interface section). the setup and hold times are relative to clkin. this input is com- patible with the output of the hsp50210 costas loop [1]. sof i re-sampler offset frequency input. this serial input pin is used to load the offset frequency into the re-sampler nco (see serial interface section). the offset may be 8, 16, 24, or 32 bits. the setup and hold times are relative to procclk. this input is compatible with the output of the hsp50210 costas loop [1]. sofsync i re-sampler offset frequency sync. this signal is asserted one clk before the msb of the offset frequency word (see serial interface section). the setup and hold times are relative to procclk. this input is compatible with the output of the hsp50210 costas loop [1]. aout(15:0) o parallel output bus a. two parallel output modes are available on the HSP50214B. the ?st is called the direct out- put port, where the source is selected through control word 20 (see the microprocessor write section) and comes directly from the output mux section (see output control section). the most signi?ant byte of aout always out- puts the most signi?ant byte of the parallel direct output port whose data type is selected via p interface. aout15 is the msb. in this mode, the aout(15:0) bus is updated as soon as data is available. d a t ard yisas- serted to indicate new data. for this mode, the output choices are: i, |r|, or f. the format is 2 s complement, except for magnitude, which is unsigned binary with a zero as the msb. the second mode for parallel data is called the buffer ram output port. the buffer ram output port acts like a fifo for blocks of information called data sets. within a data set is i, q, magnitude, phase, and frequency informa- tion; a data type is selected using sel(2:0). up to 7 data sets are stored in the buffer ram output port. the lsbytes of the aout and bout busses form the 16 bits for the buffered output mode and can be used for buffered mode while the msbytes are outputting data in the direct output mode. for this mode, the output formats are the same as the direct output port mode. bout(15:0) o parallel output bus b. two parallel output modes are available on the HSP50214B. the ?st is called the direct out- put port, where the source is selected through control word 20 (see the microprocessor write section) and comes directly from the output mux section (see output control section). the most signi?ant byte of bout always out- puts the most signi?ant byte of the parallel direct output port whose data type is selected via p interface. bout15 is the msb. in this mode, the bout(15:0) bus is updated as soon as data is available. d a t ard y is as- serted to indicate new data. for this mode, the output choices are: q, , or |r|. the format is 2 s complement, except for magnitude which is unsigned binary with a zero as the msb. the second mode for parallel data is called the buffer ram output port. the buffer ram output port acts like a fifo for blocks of information called data sets. within a data set is i, q, magnitude, phase, and frequency informa- tion; a particular information is selected using sel(2:0). up to 7 data sets is stored in the buffer ram output port. the least signi?ant byte of bout can be used to either output the least signi?ant byte of the b parallel direct output port or the least signi?ant byte of the buffer ram output port. see output section. for this mode the output formats are the same as the direct output port mode. HSP50214B 3-6 d a t ard y o output strobe signal. active low. indicates when new data from the direct output port section is available. da- tardy is asserted for one procclk cycle during the ?st clock cycle that data is available on the parallel out bus- ses. see output section. oeah i output enable for the msbyte of the aout bus. active low. the aout msbyte outputs are three-stated when oeah is high. oeal i output enable for the lsbyte of the aout bus. active low. the aout lsbyte outputs are three-stated when oeal is high. oebh i output enable for the msbyte of the bout bus. active low. the bout msbyte outputs are three-stated when oebh is high. oebl i output enable for the lsbyte of the bout bus. active low. the bout lsbyte outputs are three-stated when oebl is high. sel(2:0) i select address is used to choose which information in a data set from the buffer ram output port is sent to the least signi?ant bytes of aout and bout. sel2 is the msb. intrrp o interrupt output. active low. this output is asserted for 8 procclk cycles when the buffer ram output port is ready for reading. serouta o serial output bus a data. i, q, magnitude, phase, frequency, timing error and agc information can be sequenced in programmable order. see output section and microprocessor write section. seroutb o serial output bus b data. contents may be related to serouta. i, q, magnitude, phase, frequency, timing error and agc information can be sequenced in programmable order. see output section and microprocessor write section. serclk o output clock for serial data out. derived from procclk as given by control word 20 in the microprocessor write section. sersync o serial output sync signal. serves as serial data strobes. see output section and microprocessor write section. ser oe i serial output enable. when high, the serouta, seroutb, serclk, and sersync signals are set to a high impedance. c(7:0) i/o processor interface data bus. see microprocessor write section. c7 is the msb. a(2:0) i processor interface address bus. see microprocessor write section. a2 is the msb. wr i processor interface write strobe. c(7:0) is written to control words selected by a(2:0) in the programmable down converter on the rising edge of this signal. see microprocessor write section. rd i processor interface read strobe. c(7:0) is read from output or status locations selected by a(2:0) in the pro- grammable down converter on the falling edge of this signal. see microprocessor read section. refclk i reference clock. used as an input clock for the timing error detector. the timing error is computed relative to ref- clk. refclk frequency must be less than or equal to procclk/2. msynco o multiple chip sync output. provided for synchronizing multiple parts when clkin and procclk are asynchro- nous. msynco is the synchronization signal between the input section operating under clkin and the back end processing operating under procclk. this output sync signal from one part is connected to the msynci signal of all the HSP50214Bs. msynci i multiple chip sync input. the msynci pin of all the parts should be tied to the msynco of one part. note: msynci must be connected to an msynco signal for operation. syncin1 i cic decimation/carrier nco update sync. can be used to synchronize the cic section, carrier nco update, or both. see the multiple chip synchronization section and control word 0 in the microprocessor write section. active high. syncin2 i fir/timing nco update/agc gain update sync. can be used to synchronize the fir, timing nco update, agc gain update, or any combination of the above. see the multiple chip synchronization section and control words 7, 8, and 10 in the microprocessor write section. active high. syncout o strobe output. this synchronization signal is generated by the p interface for synchronizing multiple parts. can be generated by proclk or clkin (see control word 0 and control word 24 in the microprocessor write section). active high. pin descriptions (continued) name type description HSP50214B 3-7 i 2 q 2 + q i ---- ?? ?? atan aout(15:0) bout(15:0) t d d level limit loop filter error detect nco (symbol tracking) mixer decimate from 4-32 5th order cic 0 to 5 halfband filter; decimation up to 32 255-tap programmable fir filter agc re-sampler cartesian to polar discriminator interpolate by 2/4 halfband (decimate up to 16) in(13:0) serouta seroutb c(7:0) control section output section cic, halfband filter, and fir sections input section synchronization section level detect section digital agc section discriminator section re-sampler/interpolation halfband section cof sof polyphase filter clkin procclk cofsync sofsync a(2:0) wr rd refclk input section gainadj(2:0) agcgnsel eni (carrier tracking) msynci msynco syncout syncin1 syncin2 microprocessor read/write sel(2:0) serclk sersync ser oe oeah oeal oebh oebl carrier nco sections intrrp cos sin difference timing error i q agcout to output formatter agcout a and microprocessor interface detect nco clkin procclk to processor interface shift shift 63-tap programmable fir filter intrrp a figure 1. functional block diagram of the HSP50214B programmable downconverter output formatter chip circuitry synchronization front end circuitry synchronization back end circuitry synchronization polyphase filter timing nco d a t ard y (c o = 1; c n = 0) (c o = 1; c n = 0) filters HSP50214B 3-8 functional description the HSP50214B programmable downconverter (pdc) is an agile digital tuner designed to meet the requirements of a wide variety of communications industry standards. the pdc contains the processing functions needed to convert sampled if signals to baseband digital samples. these functions include lo generation/mixing, decimation ?tering, programmable fir shaping/bandlimiting ?tering, resampling, automatic gain control (agc), frequency discrimination and detection as well as multi-chip synchronization. the HSP50214B interfaces directly with a dsp microprocessor to pass baseband and status data. a top level functional block diagram of the HSP50214B is shown in figure 1. the diagram shows the major blocks and multiplexers used to recon?ure the data path for various architectures. the HSP50214B can be broken into 13 sections: synchronization, input, input level detector, carrier mixer/numerically control oscillator (nco), cic decimating filter, halfband decimating filter, 255-tap programmable fir filter, automatic gain control (agc), re-sampler/halfband filter, timing nco, cartesian to polar converter, discriminator, and output sections. all of these sections are con?ured through a microprocessor interface. the HSP50214B has three clock inputs; two are required and one is optional. the input level detector, carrier nco, and cic decimating filter sections operate on the rising edge of the input clock, clkin. the halfband filter, programmable fir filter, agc, re-sampler/halfband filters, timing nco, discriminator, and output sections operate on the rising edge of procclk. the third clock, refclk, is used to generate timing error information. note: all of the clocks may be asynchronous. pdc applications overview this section highlights the motivation behind the key programmable features from a communications system level perspective. these motivations will be defined in terms of ability to provide dsp processing capability for specific modulation formats and communication applications. the versatility of the programmable downconverter can be intimidating because of the many control words required for chip configuration. this section provides system level insight to help allay reservations about this versatile dsp product. it should help the designer capitalize on the greatest feature of the pdc - versatility through programmability . it is this feature, when fully understood, that brings the greatest return on design investment by offering a single receiver design that can process the many waveforms required in the communications marketplace. fdm based standards and applications table 1 provides an overview of some common frequency division multiplex (fdm) base station applications to which the pdc can be applied. the pdc provides excellent selectivity for frequency division multiple access (fdma) signals. this high selectivity is achieved with 0.012hz resolution frequency control of the nco and the sharp filter responses capable with a 255-tap, 22-bit coefficient fir filter. the 16-bit resolution out of the cartesian to polar coordinate converter are routed to the frequency detector, which is followed by a 63-tap, 22-bit coefficient fir filter structure for facilitating fm and fsk detection. the 14-bit input resolution is the smallest bit resolution found throughout the conversion and filtering sections, providing excellent dynamic range in the dsp processing. a unique input gain scaler adds an additional 42db of range to the input level variation, to compensate for changes in the analog rf front end receive equipment. synchronization circuitry allows precise timing control of the base station reconfiguration for all receive channels simultaneously. portions of this table were corroborated with reference [2]. tdm based standards and applications table 2 provides an overview of some common time division multiplexed (tdm) base station applications to which the pdc can be applied. for time division multiple access (tdma) applications, such as north american tdma (is136), where 30khz is the received band of interest for the pcs basestation, the pdc offers 0.012hz frequency resolution in downconversion in addition to = 0.35 matched (programmable) filtering capability. the /4 dpsk modulation can be processed using the pdc cartesian to polar coordinate converter and d /dt detector circuitry or by table 1. cellular phone base station applica- tions using fdma standard amps (is-91) mcs-l1 mcs-l2 nmt- 400 nmt- 900 c450 etacs ntacs rx band (mhz) 824-849 925-940 453-458 890-915 451-456 871-904 915-925 channel bw (khz) 30 25.0 12.5 25 12.5 20.0 10.0 25.0 12.5 # traffic channels 832 600 1200 200 1999 222 444 1240 800 voice modula- tion fm fm fm fm fm peak deviation (khz) 12 5 5 4 9.5 control modula- tion fsk fsk fsk fsk fsk peak deviation (khz) 8 4.5 3.5 2.5 6.4 control channel rate (kbps) 10 0.3 1.2 5.3 8 HSP50214B 3-9 processing the i/q samples in the dsp p. the pdc provides the ability to change the received signal gain and frequency, synchronous with burst timing. the synchronous gain adjustment allows the user to measure the power of the signal at the a/d at the end of a burst, and synchronously reload that same gain value at the arrival of the next user burst. for applications other than cellular phones (where the preambles are not changed), the pdc frequency discriminator output can be used to obtain correlation on the preamble pattern to aid in burst acquisition. several applications are combinations of frequency and time domain multiple access schemes. for example, gsm is a tdma signal that is frequency hopped. the individual channels contain gaussian msk modulated signals. the pdc again offers the 0.012hz tuning resolution for de- hopping the received signal. the combination of halfband and 256-tap programmable, 22-bit coef?ient fir ?ters readily performs the necessary matched ?tering for demodulation and optimum detection of the gmsk signals. cdma based standards and applications for code division multiple access (cdma) type signals, the pdc offers the ability to have a single wideband rf front end, from which it can select a single spread channel of interest. the synchronization circuitry provides for easy control of multiple pdc for applications where multiple received signals are required, such as base-stations. in is-95 cdma, the receive signal bandwidth is approximately 1.2288mhz wide with many spread spectrum channel in the band. the pdc supplies the downconversion and ?tering required to receive a single rf channel in the presence of strong adjacent interference. multiple pdc s would be sourced from a single receive rf chain, each processing a different receive frequency channel. the despreader would usually follow the pdc. in some very speci? applications, with short, ?ed codes, the ?tering and despreading may be possible with innovative use of the programmable, 22-bit coef?ient fir ?ter. the pdc offers 0.012hz resolution on tuning to the desired receive channel and excellent rejection of the portions of the band not being processed, via the halfband and 255-tap programmable, 22- bit coef?ient fir ?ter. traditional modulation formats am, ask, fm and fsk the pdc has the capability to fully demodulate am and fm modulated waveforms. the pdc outputs 15 bits of amplitude or 16 bits of frequency for these modulation formats. the fm discriminator has a 63-tap programmable, 22-bit coefficient fir filter for additional signal conditioning of the fm signal. digital versions of these formats, ask and fsk are also readily processed using the pdc. just as in the am modulated case, ask signals will use 15-bit magnitude output of the cartesian to polar coordinate converter. multi-tone fsk can be processed several ways. the frequency information out of the discriminator can be used to identify the received tone, or the filter can be used to identify and power detect a specific tone of the received signal. amps is an example of an fm application. pm and psk the pdc provides the downconversion, demodulation, matched ?tering and coordinate conversion required for demodulation of pm and psk modulated waveforms. these modulation formats will require external carrier and symbol timing recovery loop ?ters to complete the receiver design. the pdc was designed to interface with the hsp50210 digital costas loop to implement the carrier phase and symbol timing recovery loop ?ters (for continuous psk signals - not burst). digital modulation formats that combine amplitude and phase for symbol mapping, such as m-ary qam, can also be downconverted, demodulated, and matched ?tered. the received symbol information is provided with 16 bits of resolution in either cartesian or polar coordinates to facilitate remapping into bits and to recover the carrier phase. external symbol mapping and carrier recovery loop filtering is required for this waveform. resampling and interpolation filters two key features of the resampling fir ?ter are that the re- sampler ?ter allows the output sample rate to be programmed with millihertz resolution and that the output sample rate can be phase locked to an independent separate clock. the re-sampler frees the front end sampling clocks from having to be synchronous or integrally related in rate to the baseband output. the asynchronous relationship between front end and back end clocks is critical in applications where isdn interfaces drive the baseband interfaces, but the channel sample rates are not related in any way. the interpolation halfband ?ters can increase the rate of the output when narrow frequency bands are being processed. the increase in output rate allows maximum use of the programmable fir while preserving time resolution in the baseband data. table 2. cellular basestation applications using tdma standard gsm pcn is-54 type cellular cellular cellular basestation rx band (mhz) 935-960 1805-1880 824-849 channel bw (khz) 200 200 30 # traffic channels 8163 voice modulation gmsk gmsk /4 dqpsk channel rate (kbps) 270.8 270.8 48.6 control modulation gmsk gmsk /4 dqpsk channel rate (kbps) 270.8 270.8 48.6 HSP50214B 3-10 14-bit input and processing resolution the pdc maintains a minimum of 14 bits of processing resolution through to the output, providing over 84db of dynamic range. the 18 bits of resolution on the internal references provide a spurious ?or that is better than 98dbc. furthermore, the pdc provides up to 42db of gain scaling to compensate for any change in gain in the rf front end as well as up to 96db of gain in the internal pdc agc. this gain maximizes the output resolution for small signals and compensates for changes in the rf front end gain, to handle changes in the incoming signal. summary the greatest feature of the pdc is its ability to be recon?ured to process many common standards in the communications industry. thus, a single hardware element can receive and process a wide variety of signals from pcs to traditional cellular, from wireless local loop to satcom. the high resolution frequency tuning and narrowband ?tering are instrumental in almost all of the applications. multiple chip synchronization multiple pdcs are synchronized using a master/slave con?uration. one part is responsible for synchronizing the front end internal circuitry using clkin while another part is responsible for synchronizing the backend internal circuitry using procclk. the pdc is synchronized with other pdcs using ?e control lines: syncout, syncin1, syncin2, msynco, and msynci. figure 2 shows the interconnection of these ?e signals for multiple chip synchronization where different sources are used for clkin and procclk. syncout for pdc b should be set to be synchronous with clkin (control word 0, bit 3 = 0. see the microprocessor write section). syncout for pdc b is tied to the syncin1 of all the pdcs. the syncin1 can be programmed so that the carrier nco and/or the 5th order cic filter of all pdcs can be synchronously loaded/updated using syncin1. see control word 0, bits 19 and 20 in the microprocessor write section for details. syncout for one of the pdc s other than pdc b, should be set for procclk (bit 3 = 1 in control word 0). this output signal is tied to the syncin2 of all pdcs. the syncin2 can be programmed so that the agc updates its accumulator with the contents in the master registers (control word 8, bit 29 in the microprocessor write section). syncin2 is also used to load or reset the timing nco using bit 5, control word 11. the halfband and fir ?ters can be reset on syncin2 using control word 7, bit 21. the msynco of one of the pdcs is then used to drive the msynci of all the pdcs (including its own). for application con?urations where clkin and procclk have the same source, syncin1 and syncin2 can be tied together. however, if different enabling is desired for the front end and backend processing of the pdc s, these signals can still be controlled independently. in the HSP50214B, the control word 25 reset signal has been extended so that the front end reset is 10 clkin periods wide and the back end reset is 10 procclk periods wide. this guarantees that no enables will be caught in the pipelines. in addition, the syncin1 internal reset signal, which is enabled by setting control word 7, bit 21 = 1, has been extended to 10 cycles. in summary, syncin1 is used to update carrier phase offset, update carrier center frequency, reset cic decimation counters and reset the carrier nco (clear the feedback in the nco). syncin2 is used to reset the hb ?ter, fir ?ter, re-sampler/hb state machines and the output fifo, load a new gain into the agc and load a new re-sampler nco center frequency and phase offset. input section the block diagram of the input controller is provided in figure 3. the input can support offset binary or two s complement data and can be operated in gated or interpolated mode (see control word 0 from the microprocessor write section). the gated mode takes one sample per clock when the input enable (eni) is asserted. the gated mode allows the user to synchronize a low speed sampling clock to a high speed clkin. the interpolated mode allows the user to input data at a low sample rate and to zero-stuff the data prior to ?tering. this zero stuf?g effectively interpolates the input signal up to the rate of the input clock (clkin). this interpolated mode allows the part to be used at rates where the sampling frequency is above the maximum input rate range of the halfband ?ter section, and where the desired output bandwidth is too wide to use a cascaded integrator comb (cic) ?ter without signi?antly reducing the dynamic range. HSP50214B msynco msynci syncout syncin2 syncin1 pdc a is the master sync through mso. pdc a con?ures the procclk sync through syncin2. pdc b con?ures the clkin sync through syncin1. all other msi all other syncin2 all other syncin1 ab figure 2. synchronization circuit HSP50214B msynco msynci syncout syncin2 syncin1 (master syncin2) (master syncin1) HSP50214B 3-11 see figures 4-7 for an interpolated input example, detailing the associated spectral results. interpolation example: the speci?ations for the interpolated input example are: clkin = 40mhz input sample rate = 5 msps procclk = 28mhz interpolate by 8, decimate by 10 desired 85db dynamic range output bandwidth = 500khz input level detector the input level detector section measures the average magnitude error at the pdc input for the microprocessor by comparing the input level against a programmable threshold and then integrating the result. it is intended to provide a gain error for use in an agc loop with either the rf/if or a/d converter stages (see figure 8). the agc loop includes input level detector, the microprocessor and an external gain control amplifier (or attenuator). the input samples are rectified and added to a threshold programmed via the microprocessor interface, as shown in figure 9. the bit weighting of the data path through the input threshold detector is shown in figure 10. the threshold is a signed number, so it should be set to the inverse of the desired input level. the threshold can be set to zero if the average input level is desired instead of the error. the sum of the threshold and the absolute value of the input is accumulated in a 32-bit accumulator. the accumulator can handle up to 2 18 samples without overflow. the integration time is controlled by an 18-bit counter. the integration counter preload (icprel) is programmed via the microprocessor interface through control word 1. only the upper 16 bits are programmable. the 2 lsbs are always zero. control word 1, bits 29-14 are programmed to: where n is the desired integration period, de?ed as the number of input samples to be integrated. n must be a multiple of 4: [0, 4, 8, 12, 16 .... , 2 18 ]. icprel n () 41 + ? = (eq. 1) figure 3. block diagram of the input section without interpolation, the cic bypass path exceeds the hb/fir ?ter input sample rate and the cic ?ter path will not yield the desired 85db dynamic range band width of 500khz. figure 4. statement of the problem figure 5. block diagram of the interpolation approach input format in(13:0) input_fmt ? eni level detect reg reg input_mode ? nco ?? reg reg delay 3 delay 3 gainadj(2:0) shift cic control word 0 control logic control word 1 clkin ? controlled via microprocessor interface. ?? see nco section for more details. input_thresh ? intg_inteval ? intg_mode ? input_thresh ? intg_mode ? intg_inteval ? interp ? input format ? bypass ? mux input level detector ? status (0) ? limit 4 3 en 4 14 14 18 18 15 15 cic hb/fir filter 5mhz 500khz = 85db bandwidth mux max. f s = 4mhz min. r = 4 bypass procclk = 28mhz (exceeded in (not achieved with cic filter bypass path) filter path) clkin = 5mhz cic filter 8 (0 stuff) = 40mhz 500khz = 85db bandwidth r = 10 4mhz hb/fir filter 5mhz clkin = 40mhz HSP50214B 3-12 figure 6. interpolation spectrum: interpolate by 8 the input data with zero stuffing; sample at rate r = f s figure 7. alias profile and the 85db dynamic range bandwidth figure 8. processor based external if agc f s 2f s 3f s 4f s 5f s 6f s 7f s 8f s 9f s 10f s f s f s /2 f s /4 f s /8 3f s /8 5f s /8 7f s /8 3f s /4 the input data spectrum sampled at rate r = f s 5mhz 10mhz 15mhz 20mhz 25mhz 30mhz 35mhz 40mhz 45mhz 50mhz 5mhz 10mhz 15mhz 20mhz 25mhz 30mhz 35mhz 40mhz decimate by 10 and cic filter; sample at rate r = f s/10 8mhz 12mhz 16mhz 20mhz 24mhz 28mhz 32mhz 36mhz 40mhz 4mhz 2mhz 1mhz 3mhz cic filter alias profile 85db dynamic range bandwidth cic filter response frequency o.5mhz 4mhz proc thresh pdc dac a/d gca if input input level detector (24-bit error value) HSP50214B 3-13 the integration period counter can be set up to run continuously or to count down and stop. continuous integration counter operation lets the counter run, with sampling occurring every time the counter reaches zero. because the processor samples the detector read port asynchronous to the clkin, data can be missed unless the status bit is monitored by the processor to ensure that a sample is taken for every integration count down sequence. additionally, in the HSP50214B, the ability to align the start/restart of the input level detector integration period with an external event is provided. this allows the sync signals, which are synchronized to external events, to be used to align all of the gain adjustments or measurements. if control word 27, bit 17 is set to a logic one, the syncin1 signal will cause the input level detector to start/restart its integration period. if control word 27, bit 17 is set to a logic zero, control of the start/restart of the input level detector integration period does not respond to syncin1. in the count down and stop mode, the microprocessor read commands can be synchronized to system events, such as the start of a burst for a tdma application. the integration counter can be started at any time by writing to control word 2. at the end of the integration period (counter = 0000), the upper 23 bits of the accumulator are transferred to a holding register for reading by the microprocessor. note that it is not the restarting of the counter (by writing to control word 2) that latches the current value, but the end of the integration count. when the accumulator results are latched, a bit is set in the status register to notify the processor. reading the most significant byte of the 23 bits clears the status bit. see the microprocessor read section. figure 11 illustrates a typical agc detection process. figure 9. input gating logic |x| r + + e g r e g accumulator clkin clkin input_threshold ? integration_interval ? start ? integration_mode ? in(13:0) ? to proc addr(2:0) 32 24 8 16 continuous single r e g m u x counter ? controlled via microprocessor interface. a/d output input magnitude theshold proc read 2 0 2 -1 2 -2 2 -3 2 -4 2 -5 2 -6 2 -7 2 -8 2 -9 2 -10 2 -11 2 -12 2 -13 0 2 -1 2 -2 2 -3 2 -4 2 -5 2 -6 2 -7 2 -8 2 -9 2 -10 2 -11 2 -12 2 -13 -2 0 2 -1 2 -2 2 -3 2 -4 2 -5 2 -6 2 -7 2 -8 2 -9 2 -10 2 -11 2 -12 2 -13 2 0 2 -1 2 -2 2 -3 2 -4 2 -5 2 -6 2 -7 2 -8 2 -9 2 -10 2 -11 2 -12 2 -13 2 0 2 -1 2 -2 2 -3 2 -4 2 -5 2 -6 2 -7 2 -8 2 -9 2 -10 2 -11 2 -12 2 -13 f s -6db -12db -18db -24db -30db -36db -42db -48db -54db -60db -66db -72db -78db 2 14 2 13 2 12 2 11 2 10 2 9 2 8 2 7 2 6 2 5 2 4 2 3 2 2 2 1 2 17 2 16 2 15 2 18 2 0 2 -1 2 -2 2 -3 2 -4 2 14 2 13 2 12 2 11 2 10 2 9 2 8 2 7 2 6 2 5 2 4 2 3 2 2 2 1 2 17 2 16 2 15 2 18 0 000 010 001 read code a(2:0) ports accumulator figure 10. input threshold detector bit weighting HSP50214B 3-14 typically, the average input error is read from the input level detector port for use in agc applications. by setting the threshold to 0, however, the average value of the input signal can be read directly. the calculation is: where ?evel?is the 24-bit value read from the 3 level detector registers and ??is the number of samples to be integrated. note that to get the rms value of a sinusoid, multiply the average value of the recti?d sinusoid by 1.111. for a full scale input sinusoid, this yields an rms value of approximately 3dbf s . note: 1.111 scales the recti?d sinusoid average (2/ ) to 1/ 2 . in the HSP50214B, the polarity of the lsb s of the integration period pre-load is selectable. if control word 27, bit 23 is set to a logic one, the two lsb s of the integration period preload are set to logic ones. this allows a power of two to be set for the integration period, for easy normalization in the processor. if control word 27, bit 23 is set to a logic zero, then the two lsb s of the integration period preload are set to zeros as in the hsp50214. carrier synthesizer/mixer the carrier synthesizer/mixer section of the HSP50214B is shown in figure 12. the nco has a 32-bit phase accumulator, a 10-bit phase offset adder, and a sine/cosine rom. the frequency of the nco is the sum of a center frequency control word, loaded via the microprocessor interface (control word 3, bits 0 to 31), and an offset frequency, loaded serially via the cof and cofsync pins. the offset frequency can be zeroed in control word 0, bit 1. both frequency control terms are 32 bits and the addition is modulo 2 32 . the output frequency of the nco is computed as: or in terms of the programmed value: where n is the 32-bit sum of the center and offset frequency terms, f c is the frequency of the carrier nco sinusoids, f s is the input sampling frequency, and int is the integer of the computation. see the microprocessor write section on instructions for writing control word 3 . for example, if n is 3267 (decimal), and f s is 65mhz, then f c is 49.44hz. if received data is modulated at a carrier frequency of 10mhz, then the synthesizer/mixer should be programmed for n = 27627627 (hex) or d89d89d8 (hex). because the input enable, eni, controls the operation of the phase accumulator, the nco output frequency is computed relative to the input sample rate, f s , not to f clkin . the frequency control, n, is interpreted as two s complement because the output of the nco is quadrature. negative frequency l.o.s select the upper sideband; positive frequency l.o.s select the lower sideband. the range of the nco is -f s /2 to +f s /2. the frequency resolution of the nco is f s /(2 32 ) or approximately 0.015hz when clkin is 65 msps and eni is tied low. dbfs rms 20 () 1.111 () level () n () 16 () () ? [] log = (eq. 2) amplitude a) input signal c) threshold b) rectified signal d) accumulator inputs e) detector output amplitude amplitude amplitude amplitude amplitude f) closed loop steady state (constant input) figure 11. signal processing within level detector f c f s * n 2 32 () ? , = (eq. 3) nintf c 2 32 f s ? [] hex , = (eq. 3a) shift reg sync reg reg cof cofsync sin/cos rom reg reg to mixers sin cos carrier frequency ? carrier frequency carrier 32 32 10 18 18 mux 0 cof mux 0 clear phase accumulator cf cof enable ? r e g reg + reg + ? controlled via microprocessor interface. 18 phase offset ? phase accum ? carrier strobe ? carrier load on update ? r e g strobe ? phase sync circuitry eni figure 12. block diagram of nco section r e g syncin1 (f c ) HSP50214B 3-15 the phase of the carrier nco can be shifted by adding a 10-bit phase offset to the msb s (modulo 360 o ) of the output of the phase accumulator. this phase offset control has a resolution of 0.35 o and can be interpreted as two s complement from -180 o to 180 o ( - to ) or as binary from 0 to 360 o ( 0to2 ) . the phase offset is given by: or, in terms of the parameter to be programmed: where po is the 10-bit two s complement value loaded into the phase offset register (control word 4, bits 9-0). for example, a value of 32 (decimal) loaded into the phase offset register would produce a phase offset of 11.25 o and a value of -512 would produce an offset of 180 o . the phase offset is loaded via the microprocessor interface. see the microprocessor write section on instructions for writing control word 4. the most signi?ant 18 bits from the phase adder are used as the address a sin/cos lookup table. this lookup table maps phase into sinusoidal amplitude. the sine and cosine values have 18 bits of amplitude resolution. the spurious components in the sine/cosine generation are at least -102dbc. the sine and cosine samples are routed to the mixer section where they are multiplied with the input samples to translate the signal of interest to baseband. the mixer multiplies the 14-bit input by the 18-bit quadrature sinusoids. the mixer equations are: the mixer output is rounded symmetrically to 15 bits. to allow the frequency and phase of multiple parts to be updated synchronously, two sets of registers are used for latching the center frequency and phase offset words. the offset phase and center frequency control words are first loaded into holding registers. the contents of the holding registers are transferred to active registers in one of two ways. the first technique involves writing to a specific control word address. a processor write to control word 5, transfers the center frequency value to the active register while a processor write to control word 6 transfers the phase offset value to the active register. the second technique, designed for synchronizing updates to multiple parts, uses the syncin1 pin to update the active registers. when control word 1, bit 20 is set to 1, the syncin1 pin causes both the center frequency and phase offset holding registers to be transferred to active registers. additionally, when control word 0, bit 0 is set to 1, the feedback in the phase accumulator is zeroed when the transfer from the holding to active register occurs. this feature provides synchronization of the phase accumulator starting phase of multiple parts. it can also be used to reset the phase of the nco synchronous with a specific event. the carrier offset frequency is loaded using the cof and cofsync pins. figure 13 details the timing relationship between cof, cofsync and clkin. the offset frequency word can be zeroed if it is not needed. similarly, the sample offset frequency register controlling the re- sampler nco is loaded via the sof and sofsync pins. the procedure for loading data through the two pin nco interfaces is identical except that the timing of sof and sofsync is relative to procclk. each serial word has a programmable word width of either 8, 16, 24, or 32 bits (see control word 0, bits 4 and 5, for the carrier nco programming and control word 11, bits 3 and 4, for timing nco programming). on the rising edge of the clock, data on cof or sof is clocked into an input shift register. the beginning of a serial word is designated by asserting either cofsync or sofsync ?igh?one clk period prior to the ?st data bit. note: serial data must be loaded msb first, and cofsync or sofsync should not be asserted for more than one clk cycle. off 2 po 2 10 ? () 2 9 () po 2 9 1 () ? () ; = (eq. 4) 512 to 511 () po int 2 10 off () 2 ?] hex off << () ; [ = (eq. 4a) i out i in c () cos = (eq. 5) q out i in c () sin = (eq. 5a) cof/ msb msb clkin cofsync/ sofsync sof lsb ote: data must be loaded msb first. igure 13. serial input timing for cof and sof inputs ? serial word width can be: 8, 16, 24, 32 bits wide. ? t d is determined by the cofsync, cofsync rate. figure 14. holding registers load sequence for cof and sof serial offset frequency data 32 ? 54 50 46 42 38 34 30 26 22 18 14 10 6 2 30 28 26 24 ? 22 20 18 16 ? 14 12 10 8 ? 6 4 2 0 shift counter value data transferred to holding register t d ?? t d ?? t d ?? t d ?? clk times assertion of cofsync, sofsync (8) (32) (16) (24) HSP50214B 3-16 note: cof loading and timing is relative to clkin while sof loading and timing is relative to procclk. note: t d can be 0, and the fastest rate is with 8-bit word width. the assertion of the cofsync (or sofsync) starts a count down from the programmed word width. on following clks, data is shifted into the register until the specified number of bits have been input. at this point the contents of the register are transferred from the shift register to the respective 32-bit holding register. the shift register can accept new data on the following clk. if the serial input word is defined to be less than 32 bits, it will be transferred to the msbs of the 32-bit holding register and the lsbs of the holding register will be zeroed. see figure 14 for details. cic decimation filter the mixer output may be filtered with the cic filter or it may be routed directly to the halfband filters. the cic filter is used to reduce the sample rate of a wideband signal to a rate that the halfbands and programmable filters can process, given the maximum computation speed of procclk. (see halfband and fir filter sections for techniques to calculate this value). prior to the cic ?ter, the output of the mixer goes through a barrel shifter. the shifter is used to adjust the gain in 6db steps to compensate for the variation in cic ?ter gain with decimation. (see equation 6). fine gain adjustments must be done in the agc section. the shifter is controlled by the sum of a 4-bit cic shift gain word from the microprocessor and a 3-bit gain word from the gainadj(2:0) pins. the three bit value is pipelined to match the delay of the input samples. the sum of the 3 and 4-bit shift gain words saturates at a value of 15. table 1 details the permissible values for the gainadj(2:0) barrel shifter control, while figure 15 shows the permissible cic shift gain values. the cic ?ter structure for the HSP50214B is ?th order; that is it has ?e integrator/comb pairs. a ?th order cic has 84db of alias attenuation for output frequencies below 1/8 the cic output sample rate. the decimation factor of the cic filter is programmed in control word 0, bits 12 - 7. the cic shift gain is programmed in control word 0, bits 16-13. the cic bypass is set in control word 0, bit 6. when bypassing the cic filter, the eni signal must be de-asserted between samples, i.e., the clkin rate must be 2 ? f s . cic gain calculations the gain through the cic ?ter increases with increased decimation. the programmable barrel shifter that precedes the ?st integrator in the cic is used to offset this variation. gain variations due to decimation should be offset using the 4-bit cic shift gain word. this allows the input signal level to be adjusted in 6db steps to control the cic output level. the gain at each stage of the cic is: where r is the decimation factor and n is the number of stages. the input to the cic from the mixer is 15 bits, and the bit widths of the accumulators for the five stages in the HSP50214B are 40, 36, 32, 32, and 32, as shown in figure 16. this limits the maximum decimation in the cic to 32 for a full scale input. if r is 32, the gain through all five integrator stages is 32 5 =2 25 . (the gain through the last four cic stages is 2 20 , through the last 3 it is 2 15 , etc.). the sum of the input bits and the growth bits cannot exceed the accumulator size. this means that for a decimation of 32 and 15 input bits, the first accumulator must be 15 + 25 = 40 bits. thus, the value of the cic shift gain word can be calculated: note: the number of input bits is iin. (if the number of bits into the cic ?ter is used, the value 40 replaces 39). for 14 bits, equation 7 becomes: figure 15. cic shift gain values 15 13 11 9 7 5 4 2 0 16 440 32 24 64 56 48 decimation (r) cic shift gain (from processor) 14 12 10 8 6 3 1 812202836445260 8-bit input 12-bit input 10-bit input 14-bit input allowable cic shift gains are below the curves table 3. gain adjust control and cic decimation ? gain value (db) gain adj(2:0) max. cic decimation 0 000 32 6 001 27 12 010 24 18 011 21 24 100 18 30 101 16 36 110 12 42 111 10 kr n , = (eq. 6) (eq. 7) sg = floor 39 - [ iin () - log 2 (r) 5 for 4 |