c39cc4408b79edd0ea58a19fa698cea5.ppt
- Количество слайдов: 70
SDR FE USB SDRham, A Software Defined Radio Project Nordic VHF/UHF/SHF Meeting 2007
The Project n Project started in 2004 n Project goals n n n Develop an SDR FE (Front End) hardware Develop SDR PC software Learn SDR technology Learn Digital Signal Processing Use SDR in amateur radio applications where high performance is needed l l LA 7 BO n 2 Weak signal reception in crowded HF bands EME (Earth-Moon-Earth) communication in the VHF band To have a plattform, SDR FE and PC, for development of analog and digital modes SDRham
Status May 2007 n First SDR FE running n A Windows/PC test application with SSB/CW demodulator is developed LA 7 BO n Some initial performance testing is done 3 SDRham
Participants n LA 9 CY, Kjell Syverud n LA 7 OU, Stein Erik Ellevseth n LA 8 TO, Odd Arild Olsen n LB 8 X, Tom Twist LA 7 BO n LA 7 BO, Halvor Liland 4 SDRham
Agenda n An introduction to SDRham n Applied technology and theory n Sampling n Filter design, time and frequency domain n USB, sample streaming n Signal Processing on PC l n MMX and SSE instruction sets in Pentium CPU Demodulation techniques n Tools LA 7 BO n Receiver design 5 SDRham
LA 7 BO The SDR Architecture, HW 6 SDRham
LA 7 BO The SDR Architecture, Test SW 7 SDRham
LA 7 BO SDR Test Application User Interface 8 SDRham
LA 7 BO Ideas of Project 9 SDRham
The Analog Devices Integrated Circuits AD 6645 14 -Bit, 80 MSPS AD Converter LA 7 BO AD 6620 Digital Receive Signal Processor 10 SDRham
Technology and Tools Technology n Direct RF sampling n to 200 MHz n USB n Digital Signal Processing on PC n MMX and SSE instruction set Tools n Borland C++ Builder 6 n n Keil µVision 2 n n LA 7 BO Filter design, analyses and simulation Ansoft Harmonica n 11 EPLD Math. CAD n n USB communication Altera Quartus II n n EZ USB FX 2 8051 code Cypress EZ-USB Control Panel n n PC SDR SW Analog Simulation SDRham
ADC Module LA 7 BO Design of KD 7 O 12 SDRham
Analog to Digital Converter, AD 6645 14 -bit 80 MSPS ADC 1 LA 7 BO The AD 6645 employs a three stage subrange architecture 13 ADC 2 ADC 3 80 MSPS Guaranteed Sample Rate SNR = 75 d. B, f. IN 15 MHz @ 80 MSPS SNR = 72 d. B, f. IN 200 MHz @ 80 MSPS SFDR = 89 d. Bc, f. IN 70 MHz @ 80 MSPS SDRham
Subranging ADC LA 7 BO N-bit Two-Stage Subranging ADC 14 SDRham
Missing Codes LA 7 BO Missing Codes Due to MSB SADC Nonlinearity or Interstage Misalignment 15 SDRham
SNR, SFDR and Process Gain (Measured over the Nyquist Bandwidth: DC to f. S/2) Calculated SNR for an 14 -bit ADC SFDR Process Gain LA 7 BO fs = 64 MHz, BW = 3. 2 k. Hz 16 SDRham
Some “Magic” of Process Gain The AD 6645 Input Voltage Range is 2. 2 Vp-p. The voltage for LSB (Least Significant Bit) is then (134 u. V) The power P in a signal of -110 d. Bm is found from The voltage is then = 1 u. VPEAK How can the ADC detect voltage levels of one hundred (-40 d. B) of its LSB? LA 7 BO Answer: The signal voltage is added to the ADC internal noise voltage, which is more than many LSBs. With a process gain of 40 d. B the signal will appear again. 17 SDRham
Sampling, Nyquist Zones Undersampling and Frequency Translation between Nyquist Zones LA 7 BO The process of sampling a signal outside the first Nyquist zone is often referred to as undersampling or harmonic sampling 18 A restate of the Nyquist criteria: A signal must be sampled at a rate equal to or greater than twice its bandwidth in order to preserve all the signal information SDRham
Mathematics of Undersampling LA 7 BO A Math. Cad simulation proves theory 19 SDRham
Noise Factor (NF) of the AD 6645 LA 7 BO NF is an important parameter in receivers. To calculate a receiver NF one need to know the NF of each stage. NF is normally not specified by ADC manufacturers. 20 SDRham
Maximum Input Signal to the AD 6645 A 1: 4 impedance transformer makes the 50 ohm antenna input to 200 ohm at the AD 6645 input. LA 7 BO The maximum input voltage of the AD 6645 is 2. 2 VP-P, that is 0. 78 VRMS. The power is then 21 SDRham
Effect of Dither (Math. CAD Simulation) LA 7 BO Without dither 22 With dither (normal distributed noise) SDRham
LA 7 BO RSP (Receive Signal processor) Module 23 SDRham
Digital Signal Receive Processor, AD 6620 LA 7 BO The AD 6620 decimating receiver is designed to bridge the gap between high-speed ADCs and general purpose DSPs. It has four cascaded signal processing elements: a frequency translator, two fixed coefficient decimating filters and a programmable coefficient decimating filter. 24 SDRham
LA 7 BO Numeric Controlled Oscillator, NCO - HW 25 SDRham
Numeric Controlled Oscillator, NCO Frequency is phase change pr time interval. A phase change of 2 л (360°) in 1 second is equal to a frequency of 1 Hz NCO_FREQ is interpreted as a 32 -bit unsigned integer. NCO_FREQ is calculated by LA 7 BO Clk = 16 MHz Phase increment = 1 -> f = 1 MHz Phase increment = 2 -> f = 2 MHz 26 SDRham
Time and Frequency Domain Time Domain Frequency Domain LA 7 BO Fourier transform og Fourier Series transform a signal between the time and frequency domain 27 SDRham
The ideal filter in the frequency and time domain Ideal filter LA 7 BO Ideal Low Pass Filter time domain response 28 SDRham
Filter, frequency domain vs time domain Multiplication in the frequency domain is convolution in the time domain The Convolution Integral LA 7 BO Changing variable with u = t - t and replace the integrals gives 29 SDRham
FIR (Finite Impulse Response) Filter A finite impulse response (FIR) filter is a discrete linear time-invariant system whose output is based on the weighted summation of a finite number of past inputs. LA 7 BO In the discrete domain (a sampled digital data system) the convolution integral changes to a summation 30 SDRham
Cascaded Integrator Comb Filter, CIC LA 7 BO The CIC filter is a fixed-coefficient, multiplierless, decimating filter. The characteristics are defined by the decimation rate. 31 SDRham
CIC 2 Frequency Response f. SAMP = 65 MHz, MCIC 2 = 10 LA 7 BO BW = 4 k. Hz -> DR = 127 d. B BW = 100 k. Hz -> DR = 71 d. B 32 SDRham
AD 6620 RCF (RAM Coefficient Filter) The length of the filter kernel limits the transition bandwidth LA 7 BO This filter is an FIR (Finite Impulse Response) filter 33 Where BW is a fraction of sampling frequency SDRham
AD 6620 Setup File, ad 6620. imp LA 7 BO Low Pass Filter with 3 k. Hz cut off frequency 34 16 25 20 64000000 1 1 0 1 4 10 19 30 44 61 80 100 121 141 158 172 181 183 175 MCIC 2 MCIC 5 MRCF f. SAMP CHIP MODE CLK MULT FILTER COEFF SDRham
LA 7 BO AD 6620 Filter Design Software 35 SDRham
AD 6620 Setup Dialog Box LA 7 BO The dialog box reads parameters from a file or let the user change them 36 SDRham
EPLD, Serial to Parallel Converter LA 7 BO In the SDRham the serial output format of the AD 6620 is used to get 24 -bit resolution. An EPLD, Altera EPM 3064, is used to convert the serial bit stream to the 8 -bit parallel FIFO interface of the EZ USB FX 2 37 SDRham
Why 24 -bit when the Input is 14 -bit ? A sine wave sampled with 2 -bit A sine wave sampled with 4 -bit LA 7 BO A sine wave sampled with 8 -bit 38 SDRham
EZ-USB FX 2 LA 7 BO The Cypress Semiconductor EZ-USB FX 2 (often abbreviated as “FX 2” ) is a single chip USB 2. 0 peripheral with an 8051 microcontroller core 39 SDRham
USB Transfer Types n Bulk Transfers n Bulk data is bursty, traveling in packets of 8, 16, 32 or 64 bytes at full speed or 512 bytes at high speed. Bulk data has guaranteed accuracy, due to an automatic retry mechanism for erroneous data. The host schedules bulk packets when there is available bus time. Bulk transfers are typically used for printer, scanner, or modem data. Bulk data has built-in flow control provided by handshake packets. n Interrupt Transfers n Interrupt data is like bulk data; it can have packet sizes of 1 through 64 bytes at full speed or up to 1024 bytes at high speed. Interrupt endpoints have an associated polling interval that ensures they will be polled (receive an IN token) by the host on a regular basis. n Isochronous Transfers LA 7 BO n 40 Isochronous data is time-critical and used to stream data like audio and video. An isochronous packet may contain up to 1023 bytes at full speed, or up to 1024 bytes at high speed. SDRham
Pipes and Endpoints The FX 2 Full-Speed Alternate Settings LA 7 BO From the driver point of view, the endpoints are referenced as pipes 41 SDRham
USB used in the SDRham An OUT bulk endpoint is used for control (AD 6620 setup) LA 7 BO An IN isosynchronous endpoint is used for sample streaming 42 SDRham
FX 2 Re. Numeration LA 7 BO Once the Default USB Device enumerates, it downloads firmware and descriptor tables from the host into the FX 2’s onchip RAM. The FX 2 then begins executing the downloaded code, which electrically simulates a physical disconnect/connect from the USB and causes the FX 2 to enumerate again as a second device, this time taking on the USB personality defined by the downloaded code and descriptors. This patented secondary enumeration process is called “Re. Numeration™. ” 43 SDRham
FX 2 Access from Windows LA 7 BO The FX 2 is accessed through Windows API functions and a Cypress supplied driver ezusb. sys 44 SDRham
MMX Instruction Set The MMX instructions defines a SIMD (Single Instruction Multiple Data) model to handle 64 -bit packed integer data. MMX adds the following new features to the Intel IA-32 architecture: n Eight new 64 -bit MMX registers (aliased in th x 87 register stack) n Three new packed data types n 64 -bit packed byte integers (signed and unsigned) n 64 -bit packed word integers (signed and unsigned) n 64 -bit packed double word integers (signed and unsigned) LA 7 BO n New instructions to support the new data types and to handle the MMX state management 45 SDRham
MMX Execution Model and Instructions MMX Instructions n. Data Transfer n. Arithmetic n. Comparison n. Unpacking n. Logical n. Shift LA 7 BO n. Empty MMX State Instruction 46 SDRham
MMX Convolution Routine //-------------------------------------void DSP 001: : MMXConvolute(int *src_ptr, int *dest_ptr, unsigned int size) { int dummy[]={0, 0}; int *end_of_buffer=&psig_buf[(size_filter<<1)-2]; int *pbuf_sig=psig_buf; int *pbuf_filt=pfilt_buf; int *pbuf_signal=psignal_buf; unsigned int filtersize=size_filter; asm { MOV TEST JZ ECX, size ECX, -1 no_convolute //here to perform convolution EBX, pbuf_signal //EBX is pointer to data line ESI, src_ptr //ESI is pointer to source data EDI, dest_ptr //EDI is pointer to destination data LA 7 BO MOV MOV next_conv: 47 filter_loop: MOVQ MM 0, QWORD PTR [EBX] PSRAD MM 0, 8 //shift sourec to 16 -bit PMULHW MM 0, QWORD PTR [EDI] PADDSW MM 1, MM 0 //accumulated vale is in MM 1 CMP EBX, end_of_buffer JGE new_start_buffer ADD EBX, 8 JMP next_loop new_start_buffer: MOV EBX, pbuf_sig SDRham
SSE Instruction Set The SSE (Streaming SIMD Extensions) add the following features to the IA 32 architecture n Eight 128 -bit data registers, called XMM registers n 128 -bit packed single-precision floating point data type (four IEEE single-precision floating point values packed into a double quad word) n Instructions that perform SIMD operations on single-precision floating point values and that extend the SIMD operations that can be performed on integers: n 128 -bit packed and scalar single-precision floating point instructions that operate on data located in the XMM registers n 64 -bit SIMD integer instructions that support additional operations on packled integer operands located in MMX registers LA 7 BO The SSE extensions were introduced in the Pentium III processor family 48 SDRham
Demodulation Techniques LA 7 BO Give me In-Phase (I) and Quadrature (Q) signal components, and you can get everything. The I- and Q-components contain both amplitude and phase information of a received signal. Frequency is found from phase change per time interval. 49 SDRham
SSB Demodulation The phasing method LA 7 BO To obtain a filter with 90 o phase shift over many octaves is not so easy in the analog world. This is not a problem in a digital world (FIR filter) 50 SDRham
Tools n Borland C++Builder 6 n Personal Edition, approx. EUR 100 n Keil u. Vision n Free evalution version, 4 k byte code maximum n www. cypress. com or www. keil. com n EZ USB Control Panel n Free, www. cypress. com n Quartus II n Free WEB edition, www. altera. com n Math. Cad, www. mathsoft. com n Ansoft Harmonica LA 7 BO n 51 Free student version with limited number of nodes, www. ansoft. com SDRham
LA 7 BO Borland C++ Builder 6 52 SDRham
LA 7 BO Keil u. Vision 2 53 SDRham
LA 7 BO EZ-USB Control Panel 54 SDRham
LA 7 BO ALTERA Quartus II 55 SDRham
LA 7 BO Math. Cad 56 SDRham
LA 7 BO Ansoft Harmonica 57 SDRham
Receiver Design Three important parameters n MDS (Minimum Discernible Signal) n Capability to pick weak signals out of the noise n DR (Dynamic Range) n Capability to read weak signals with other strong ones in the receiver front end pass band n IIP 3 (3 rd order Input Intercept Point) LA 7 BO n 58 Gives information of the receiver two tone DR SDRham
MDS The MDS is defined as the signal level at the receiver input that doubles the output signal, that is 3 d. B output increase. A calculated MDS for a ideal receiver (NF=0) with 3 k. Hz bandwidth LA 7 BO Pn in 1 Hz bandwidth is -174 d. Bm 59 SDRham
MDS in the HF Bands In the 14 MHz band (20 meters) the man made and atmospheric NF is estimated to 22 d. B (KD 7 O). Then the receiver NF needs not to be much better. As a rule of thumb a receiver NF of 6 d. B better than the background noise is enough. For the 14 MHz band an analog front end with some gain is needed. (The NF of the ADC is calculated to 29 d. B). To maintain high DR this amplifier needs a high IIP 3, which is a design challenge. In the lower short wave band, 1. 8 MHz (160 meter), 3. 6 MHz (80 meter) and 7. 0 MHz (40 meter) no gain is expected to be used in front of the ADC (to be confirmed by tests). LA 7 BO In the VHF band, where the background noise is low, an analog front end with a Low Noise Amplifier (LNA) is needed. 60 SDRham
Two Tone Dynamic Range Why is the two tone dynamic range so important? LA 7 BO Third order distortion products are impossible to remove by filters in the analog front end. 61 SDRham
Mathematics of Third Order Distortion An amplifier or ADC is not ideal. A transfer function is given by K 3 VIN 3 is 3 rd order term and makes distortion products in the passband. Expanding this term gives: LA 7 BO Expanding the last term gives: 62 SDRham
IMD Ratio and 3 rd order Intercept Point LA 7 BO The intercept point is a figure of merit that is commonly used to describe the IMD (Inter Modulation Distortion) performance of an individual stage or a complete system 63 SDRham
Signal Levels in MF and low HF Bands In the MF and low HF bands extreme strong signals may appear. Remember from old days, the circuit below works. LA 7 BO A signal of S 9 (defined to – 73 d. Bm) +40 d. B has a signal voltage given by 64 SDRham
Receiver Analysis LA 7 BO A Math. Cad worksheet is developed to analyse receiver NF and IIP 3 65 SDRham
A Receiver Example LA 7 BO NF = 22. 1 d. B 66 IIP 3 = 34. 8 d. Bm SDRham
LA 7 BO Performance Tests 67 SDRham
Measured Performance Calculated MDS Measured MDS about as the calculated one Some unexpected results seen in two tone dynamic range measurements. LA 7 BO Tones at frequencies that say they are third order products, but their amplitudes do not follow the cube law. 68 SDRham
Project Publication LA 7 BO A series of articles are and will be published in the NRRL (Norwegain Radio Relay League) bulletin AMATØR RADIO to promote SDR technology among Norwegian radio amateurs. 69 SDRham
The next Generation of SDRham FE for receiver, spectrum analyser and oscilloscope applications AD 9254 - 14 -Bit, 150 MSPS, 1. 8 V ADC LA 7 BO • SNR = 71. 7 d. Bc (72. 7 d. BFS) to 70 MHz input • SFDR = 83 d. Bc to 70 MHz input • Low power: 250 m. W @ 150 MSPS • Differential input with 650 MHz bandwidth 70 SDRham
c39cc4408b79edd0ea58a19fa698cea5.ppt