|
Multi-channel Digital Filter
for GSM and TETRA repeaters
Features
¨
Wide
instantaneous bandwidth
¨
High
input bandwidth
¨
Dual
analog input channels
¨
Dual
analog output channels
¨
8
digital down converter channels
¨
8
digital up converter channels
¨
Configuration software with filter download
¨
Monitoring of internal signals (optional)
¨
External
reference frequency input
Typical
applications
¨
Wide-bandwidth data capturing
¨
High-speed signal generation
¨
Signal
filtering with analog I/O
¨
Improve
existing receiver systems
¨
Implement
GSM and TETRA repeaters
DFU-60 is a multifunctional
analog input/output super component with 1 ADC and 1 DAC channels. The output
data stream of ADC fed to the on board FPGA and could be processed by digital
down converter (DDC), which are able to tune their 8 digital channels anywhere
into the frequency pass band and down convert the signal to a base band. The 8
out channels of the down converters fed into the FPGA for further processing.
From the FPGA it is possible to forward the wideband data to the DAC or could be
processed by the digital up converters (DUC) before converting back to the
analog domain. The 8 digital up converter channel can tune anywhere in the pass
band of the out instantaneous bandwidth.
Porpose of the unit: implement
digital filtering of radio signals in communication network infrastructure
products like base stations or repeaters. Thanks for the digital, software
defined nature, same units could be used with different filter shapes and
multichannel offset apllications too. Target applications are GSM and TETRA
repeaters.
This multifunctional
trans-receiver board combines high-speed analog to digital conversion with
digital processing suitable for multi channel wide-band/narrow-band/phase-array
down conversion and filtering.
The analog input/output
conversions use the same sampling clock for in-phase operation and could be
triggered together.

Block diagram of the GSM and TETRA digital filter

Mechanical drawing of the GSM and TETRA digital filter
Measured results

DFU-60 GSM filter response

DFU-60 TETRA filter response

Multichannel output with
equal channel spaceing: (400KHz)

Multichannel output with random channel spaceing:
(0/100/250/600/1000/1400/4000KHz)
For further info or in case you are interested in
any part of the results please contact:
info@sagax.hu
DFU-60
Digital Filter Unit
Command interface manual
rev. 1. - 07/05/10
PRELIMINARY
Contents
Communication
interface...............................................................................................3
Device
Address.............................................................................................................4
Document
syntax..........................................................................................................5
Basic device command
syntax........................................................................................6
Command and parameter
description.............................................................................7
ECHO.......................................................................................................................7
SET BASE
ADDRESS..................................................................................................7
STATUS....................................................................................................................7
SET
FREQUENCY.......................................................................................................8
SET
GAIN.................................................................................................................8
SET
SCALE................................................................................................................9
REQEST
LEVEL..........................................................................................................9
SET FIR FILTER
COEFFICIENTS................................................................................10
SET FIR FILTER COEFFICIENTS
(DOWNLOAD)..........................................................10
SAVE or RECALL
SETTINGS......................................................................................10
FIRMWARE
UPDATE................................................................................................11
Communication interface
The command interface of the DFU-60 is a simple asynchronous start/stop
interface
commonly used on RS-232 communication ports on personal computers.
Parameters of the serial communications interface:
Device commands can be issued in the form of ASCII strings.
The device requires only one way communications however optionally the response
can be
monitored on an ASCII terminal or processed by the receiving equipment.
Device Address
Device commands start with device address. The device address is used to select
the
target of the command if there are multiple devices attached to the same bus.
For
compatibility reasons, the device address also used if there are only one device
on the
command bus. Another function of device address is to select subunits in the
device
usually an input or output channel.
The DFU-60 uses up to eight sequential addresses, one for each filter channel.
The
starting address is called the base address and is preprogrammed to the device.
The
default base address is 0x00. This can be changed in the factory upon customer
request.
For example if base address is 0x12 then commands to filter channel 3. should be
sent to
0x14. Commands that not channel dependent can be sent to any of the eight
sequential
addresses used by the DFU-60.
Subunit Address
Filter Channel 1 Base address
Filter Channel 2 Base address + 1
Filter Channel 3 Base address + 2
Filter Channel 4 Base address + 3
Filter Channel 5 Base address + 4
Filter Channel 6 Base address + 5
Filter Channel 7 Base address + 6
Filter Channel 8 Base address + 7
Document syntax
The following syntax is used in this document for the description of device
commands.
substitute : italic green text, substitute it with corresponding expression
(e.g.: command
or option).
exact : bold blue text, insert into device command as is.
expression : roman font, it can be either a substitute or an exact expression.
SPEC : bold orange capital text indicates special character sequence.
[expression] : expression placed in brackets is optional.
(expression1 | expression2) : expressions placed in parenthesis and separated by
a
vertical bar | are alternatives, one and only one should be used.
{expression}: expression in braces can appear zero or more times.
space (ascii: 0x20): where there is a space in the command syntax, there and
only
there one or more spaces should be inserted into the device command.
Basic device command syntax
$address: command{ parameters}EOL
address : Address is the device address of the commanded device in two
digit hexadecimal format.
address = (0|1|2|3|4|5|6|7|8|9|A|B|C|D|E|F)(0|1|2|3|4|5|6|7|8|9|A|
B|C|D|E|F)
address is always followed by $:
examples: 00$: , 04$: , 1B$:
command : Command is a one word expression describing the required
action.
If there are parameters to follow a space must be inserted after the
command. Valid commands will be discussed later.
examples: S, SEI
parameters : Zero or more one word parameters for the issued command. If
there are more than one parameters they should be separated by spaces.
See valid parameters at the command descriptions.
examples: 0, OFF, B 1 ON
EOL : End of line characters must close every device command.
End of line is a CR (carriage return, ascii: 0x0D) followed by a LF (line feed,
ascii: 0x0A).
A device command including spaces and EOL must not exceed 250
characters in length.
Command and parameter description
ECHO
$address: E (1|0)EOL
If turned on 1, the device echoes back incoming characters. This is useful
when commanding the device manually from a terminal without local echo.
example: 00$: E 0
SET BASE ADDRESS
$address: SETADDR addrEOL
Sets the device base address.
addr = (0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f){(0|1|2|3|4|5|6|7|8|9|a|b|c|
d|e|f)}
addr is the required base address two digit hexadecimal format.
example: 00$: SETADDR a2
STATUS
$address: S[ about]EOL
Displays device status.
Without parameter the device reports it's type and version.
about = (TEMP|POWER|CLK)
With the TEMP parameter internal temperatures are reported.
With the POWER parameter power supply voltages and current values are
reported.
With the CLK parameter the status of the clock distribution network is
reported.
This section is incomplete.
SET FREQUENCY
$address: SETFREQ side freqEOL
Sets the NCO frequency for the addressed filter channel.
side = (DDC|DUC)
DDC sets the frequency of the digital downconverter at the input of the filter.
DUC sets the frequency of the digital upconverter at the output of the filter.
freq = (0|1|2|3|4|5|6|7|8|9){(0|1|2|3|4|5|6|7|8|9)}
Desired value of input or output frequency in Hz.
example: 03$: SEF DUC 62500000
SET GAIN
$address: SETGAIN [side ]gainEOL
With side present it sets the input or output analog gain or attenuation.
side = (ADC|DAC)
ADC sets the gain of the input amplifier.
DAC sets the gain of the output amplifier.
gain = [-](0|1|2|3|4|5|6|7|8|9)[(0|1|2|3|4|5|6|7|8|9)]
Desired value of input or output gain or attenuation in dB. Valid values are
from -4dB to 20dB in 2dB steps.
example: 00$: SETGAIN ADC 8
Without side it sets the additional fine gain for the addressed channel's FIR
filter scaler.
gain = (0|1|2|3|4|5|6)
Desired value of fine gain in dB. Valid values are from 0dB to 6dB.
example: 04$: SETGAIN 3
SET SCALE
$address: SETSCALE [SUM ]scaleEOL
Sets the channel summarizer and FIR filter scaler values.
If SUM is present, the scale value refers to the channel summarizer.
scale = (0|1|2|3)
The effect of this setting can be roughly expressed by
Outsum=ΣOuti−scale⋅6dB
This scaler makes it possible to attenuate channel outputs to avoid
summarizer overflow.
Without the SUM parameter scale refers to the addressed channel's FIR filter
scaler. Because of the fixed point arithmetic used in the internal FIR filters
the output is not normalized. This scale value has to be set for every
different filter coefficient set.
scale = (0|1|2|3|4|5|6|7|8|9)[(0|1|2|3|4|5|6|7|8|9)]
The effect of this setting can be roughly expressed by
Out=Out FIRscale⋅6dB
Valid values are 0-12 and 13. 13 mutes the channel.
example: 02$: SETSCALE 2
REQEST LEVEL
$address: REQLEVEL[ (IN|OUT)]EOL
Requests signal peak value.
If IN is present, the returned value refers to the wideband ADC output. If
OUT is present, the returned value refers to the wideband DAC input. If no
parameters are present it refers to the addressed channel's narrowband
signals.
In case of the wideband signal 2^20 samples are compared and the highest
is reported in dBfs.
In case of the narrowband signals 2^13 samples are compared and the
highest is reported in dBfs for both I and Q channels.
example: 07$: REQLEVEL
SET FIR FILTER COEFFICIENTS
$address: SETCOEF (CLEAR|index {coef})EOL
Sets the channel FIR filter coefficients.
If CLEAR the parameter specified the coefficient buffer of the addressed
channel is filled with 0s.
index = (0|1|2|3|4|5|6|7|8|9)[(0|1|2|3|4|5|6|7|8|9)]
The index parameter specifies the zero based starting point where from the
following coefficient value(s) are written into the buffer.
Valid values are: 0-79
coef = (0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f){(0|1|2|3|4|5|6|7|8|9|a|b|c|
d|e|f)}
coef is the filter coefficient in 16 bit fixed point signed (2's complement)
hexadecimal format. Valid values are: 0x0000-0xffff
example: $00:SETCOEF 0 fed2 fc3c fba0 04f0 1f34 477b 6dac 7d7e 6dac
477b 1f34 04f0 fba0 fc3c fed2
Note that after specifying the coefficients those have to be downloaded into
the filter by the SETFIR command.
SET FIR FILTER COEFFICIENTS (DOWNLOAD)
$address: SETFIREOL
Downloads the values from the coefficient buffer to the filter.
SAVE or RECALL SETTINGS
$address: SETUP (SAVE|RECALL)EOL
Saves or recalls the following settings to or from the nonvolatile flash
memory.
-NCO frequencies
-Scale values
-Filter coefficients
-Gain settings
-Echo
-Base address
FIRMWARE UPDATE
$address: UPD
EOL
This section is incomplete.
This function currently only available through the supplied updater
application.
|