User Manual SMT712 Page 7 of 89 Last Edited: 11/12/2012 10:36:00
1 Introduction
The SMT712 is a PXI Express (opt. Hybrid or CompactPCI) Peripheral Module (3U),
which integrates two fast 12-bit DACs, 2 banks of DDR2 memory, a clock circuitry
and a Virtex5 Xilinx FPGA, under the 3U format.
The PXIe specification integrates PCI Express signalling into the PXI standard for
more backplane bandwidth. It also enhances PXI timing and synchronisation
features by incorporating a 100MHz differential reference clock and triggers. The
SMT712 can also integrate the standard 32-bit PXI (Hybrid) signalling as an option or
a standard 32-bit CompactPCI.
Both DAC chips are identical and can update their output at up 2.3 Giga-samples per
second each, with a 12-bit resolution. The manufacturer is Maxim and the part
number is MAX19692. Digital-to-Analog converters are clocked by circuitry based on
a PLL coupled with a VCO in order to generate a low-jitter fixed signal. The
MAX19692 is capable to achieve SFDR figures close to 70dBs. Each DAC integrates
settings depending on the type of frequency response required.
The on-board PLL+VCO chip ensure a stable fixed sampling frequency (maximum
rate), in order for the board to be used as frequency synthesizer without the need of
external clock signal. The PLL will be able to lock the VCO either on the 100MHz PXI
express reference (or 10MHz PXI reference depending on option) or on an external
reference signal. The sampling clock for the converters can either be coming from
the PLL+VCO chip or from an external source. The reference clock selected is also
output on a connector in order to pass it to an other module.
The Virtex5 FPGA is responsible for controlling all interfaces, including CPCI (32-bit
33MHz), PXI (32-bit) and PXIe (8 lanes allocated – depending on PXIe chassis, 4 or 8
lanes would be used), as well as routing samples. The SMT712 is populated with an
XC5VLX110T-3.
Two DDR2 memory banks are accessible by the FPGA in order to access data on the
fly. Both banks are individually clocked at 312 MHz.
One or two SHB connector(s) is(are) available in order to collect data/samples from
an other Sundance module (depending on the option). The first SHB connector is
available on all versions of the board, whereas the second SHB connector is only
available on the non-PCI versions.
All analog connectors on the front panel are SMA.
Examples of application where the SMT712 can be involved in are wideband
communication, radar, wireless modem, software radio or waveform generator
systems.
User Manual SMT712 Page 8 of 89 Last Edited: 11/12/2012 10:36:00
2 Related Documents
1 – Maxim MAX19692:
http://www.maxim-ic.com/quick_view2.cfm/qv_pk/5172
2 – Analog Devices AD9516-2:
User Manual SMT712 Last Edited: 11/12/2012 10:36:00
3 Acronyms, Abbreviations and Definitions
3.1 Acronyms and Abbreviations
PXIe : PXI Express.
SNR: Signal-to-Noise Ratio. It is expressed in dBs. It is defined as the ratio of a signal
power to the noise power corrupting the signal.
SINAD: Signal-to-Noise Ratio plus Distorsion. Same as SNR but includes harmonics
too (no DC component).
ENOB: Effective Number Of Bits. This is an alternative way of defining the Signal-to-
Noise Ratio and Distorsion Ratio (or SINAD). This means that the ADC is equivalent
to a perfect ADC of ENOB number of bits.
SFDR: Spurious-Free Dynamic Range. It indicates in dB the ratio between the powers
of the converted main signal and the greatest undesired spur.
4 Functional Description
4.1 General Block Diagram
Below is the general block diagram showing all resources available on the board.
Note that not all options are implement in the standard firmware.
Figure 1 - SMT712 General Block Diagram.
The following block diagram shows all three options. The first option (PXIe) can be
plugged into any PXI Express slot, the second (32-bit PXI) into any Hybrid PXI
Express slot and the third can go in any CPCI system.
User Manual SMT712 Last Edited: 11/12/2012 10:36:00
4.2 Block Diagram – Standard SMT712 (PXIe)
Figure 2 - SMT712 Block Diagram – Standard SMT712 (PXIe)
This option implements a PCI Express Endpoint core (Xilinx) based on 4 lanes. It can
support up to 8 lanes or only one. The FPGA also has accesses to all PXI triggers and
synchronisation signals.
In case the user has in mind to recompile/change the firmware, the PCI Express Core
is free and provided by Xilinx. A free license locked on a PC MAC key has to be
requested.
The SMT712 (PXIe version) can only be plugged into a PXI Express or CompactPCI
Express Rack.
Note that not all resources are implemented in the standard FPGA firmware.
User Manual SMT712 Page 11 of 89 Last Edited: 11/12/2012 10:36:00
This option implements a 32-bit PCI core (33 Mhz). The FPGA also has accesses to all
PXI triggers and synchronisation signals.
The PCI core source core cannot be supplied by Sundance as the license held does
not cover such use for it. In case the user intends to recompile the source code or
design his own firmware, he would have to purchase a license for the core.
The SMT712-HYBRPXI32 can only be plugged into a PXI Express or CompactPCI
Express rack.
Note that not all ressoures shown on the above diagram are implemented in the
standard firmware.
User Manual SMT712 Page 12 of 89 Last Edited: 11/12/2012 10:36:00
This option implements a 32-bit PCI core (33 Mhz). Note that PXI trigger signals and
reference clock (10Mhz) are not accessible by the PFGA (not available on a standard
CPCI rack). An external reference clock would have to be used.
The PCI core source core cannot be supplied by Sundance as the license held does
not cover such use for it.
The SMT712-CPCI32 can be plugged in either a PXI (CompactPCI) or PXI Express
rack.
Note that not all resources shown on the above diagram are implemented in the
standard firmware.
4.5 Module Description
4.5.1 DACs
The DACs are 12-bit parts from Maxim (MAX19692). On the SMT712, each DAC can
achieve up to 2.3 GSPS, via a built-in 4:1 multiplexer.
Both DACs have a selectable frequency response mode, that can be NRZ (NonReturn-to-Zero – high dynamic range and output power in the first Nyquist zone),
RZ (Return-to-Zero – this mode trades off SNR for improved gain flatness in the
first, second and third Nyquist zones) or RF (Radio Frequency – high SNR and
dynamic range in the second and third Nyquist Zones). For more information, please
refer to the MAX19692 datasheet (Maxim).
The typical output power of the MAX19692 is -2.6 dBm (50-Ohm – Full scale). These
are the manufacturer figures.
Both DACs are AC coupled using RF transformers.
User Manual SMT712 Page 13 of 89 Last Edited: 11/12/2012 10:36:00
Each DAC has a heat sink to help the heat dissipation.
4.5.2 FPGA
4.5.2.1 General Description
The FPGA fitted as standard on the SMT712 is part of the Virtex5 LXT family:
XC5VLX110T. The package used is FFG1136 and the speed grade -3 (fastest part).
For more information about the LXT family, you can visit the Xilinx website.
It is fitted with a heatsink coupled with a fan to keep it within an appropriate range
of temperature (no more than 85 ºC) when using the default firmware provided.
Nevertheless the board requires some forced cooling. It is recommended to use a
PXIe-1062Q chassis or equivalent from National instrument as it already integrates a
built-in regulated cooling system. Measurements have been made using a PXIe1062Q on the maximum fan speed setting and the standard firmware with both
DACs clocked at 2,3GHz:
In an ambient temperature of 25 ºC, the FPGA die temperature stays close to 60 ºC.
In an ambient temperature of 30 ºC, the FPGA die temperature stays close to 70 ºC.
In order to improve the heat dissipation is a system, some slot blockers can be used
(from National Instrument), which redirect the air flow of non-used slots to where it
is needed.
4.5.2.2 Resources used – XCV5FX70T.
Below is a summary (ISE11.4) of the resources used in the FPGA by the default
firmware (Standard SMT712-FX70T):
Slice Logic Utilization:
Number of Slice Registers: 19,258 out of 44,800 42%
Number used as Flip Flops: 19,251
Number used as Latches: 1
Number used as Latch-thrus: 6
Number of Slice LUTs: 13,781 out of 44,800 30%
Number used as logic: 13,160 out of 44,800 29%
Number using O6 output only: 12,075
Number using O5 output only: 457
Number using O5 and O6: 628
Number used as Memory: 417 out of 13,120 3%
Number used as Dual Port RAM: 308
Number using O6 output only: 204
Number using O5 output only: 20
Number using O5 and O6: 84
Number used as Shift Register: 109
Number using O6 output only: 109
Number used as exclusive route-thru: 204
Number of route-thrus: 924
Number using O6 output only: 656
Number using O5 output only: 264
Number using O5 and O6: 4
Slice Logic Distribution:
Number of occupied Slices: 7,245 out of 11,200 64%
Number of LUT Flip Flop pairs used: 22,949
Number with an unused Flip Flop: 3,691 out of 22,949 16%
Number with an unused LUT: 9,168 out of 22,949 39%
Number of fully used LUT-FF pairs: 10,090 out of 22,949 43%
User Manual SMT712 Page 14 of 89 Last Edited: 11/12/2012 10:36:00
Number of unique control sets: 1,143
Number of slice register sites lost
to control set restrictions: 2,779 out of 44,800 6%
A LUT Flip Flop pair for this architecture represents one LUT paired with
one Flip Flop within a slice. A control set is a unique combination of
clock, reset, set, and enable signals for a registered element.
The Slice Logic Distribution report is not meaningful if the design is
over-mapped for a non-slice resource or if Placement fails.
OVERMAPPING of BRAM resources should be ignored if the design is
over-mapped for a non-BRAM resource or if placement fails.
IO Utilization:
Number of bonded IOBs: 534 out of 640 83%
Number of LOCed IOBs: 533 out of 534 99%
IOB Flip Flops: 724
IOB Master Pads: 97
IOB Slave Pads: 97
Number of bonded IPADs: 10 out of 50 20%
Number of bonded OPADs: 8 out of 32 25%
Specific Feature Utilization:
Number of BlockRAM/FIFO: 46 out of 148 31%
Number using BlockRAM only: 30
Number using FIFO only: 16
Total primitives used:
Number of 36k BlockRAM used: 15
Number of 18k BlockRAM used: 17
Number of 36k FIFO used: 14
Number of 18k FIFO used: 2
Total Memory used (KB): 1,386 out of 5,328 26%
Number of BUFG/BUFGCTRLs: 26 out of 32 81%
Number used as BUFGs: 26
Number of IDELAYCTRLs: 6 out of 22 27%
Number of BUFDSs: 1 out of 8 12%
Number of BUFIOs: 18 out of 80 22%
Number of DCM_ADVs: 8 out of 12 66%
Number of LOCed DCM_ADVs: 8 out of 8 100%
Number of GTX_DUALs: 2 out of 8 25%
Number of LOCed GTX_DUALs: 2 out of 2 100%
Number of PCIEs: 1 out of 3 33%
Number of LOCed PCIEs: 1 out of 1 100%
Number of PLL_ADVs: 1 out of 6 16%
Number of SYSMONs: 1 out of 1 100%
Number of RPM macros: 128
Average Fanout of Non-Clock Nets: 3.15
4.5.2.3 Resources used – XCV5FX100T.
Below is a summary (ISE14.3) of the resources used in the FPGA by the default
firmware (Standard SMT712-FX100T):
Slice Logic Utilization:
Number of Slice Registers: 20,303 out of 64,000 31%
Number used as Flip Flops: 20,296
Number used as Latches: 1
Number used as Latch-thrus: 6
Number of Slice LUTs: 14,666 out of 64,000 22%
Number used as logic: 13,969 out of 64,000 21%
Number using O6 output only: 12,848
Number using O5 output only: 493
Number using O5 and O6: 628
Number used as Memory: 490 out of 19,840 2%
Number used as Dual Port RAM: 308
User Manual SMT712 Page 15 of 89 Last Edited: 11/12/2012 10:36:00
Number using O6 output only: 204
Number using O5 output only: 20
Number using O5 and O6: 84
Number used as Shift Register: 182
Number using O6 output only: 182
Number used as exclusive route-thru: 207
Number of route-thrus: 892
Number using O6 output only: 698
Number using O5 output only: 193
Number using O5 and O6: 1
Slice Logic Distribution:
Number of occupied Slices: 8,232 out of 16,000 51%
Number of LUT Flip Flop pairs used: 24,867
Number with an unused Flip Flop: 4,564 out of 24,867 18%
Number with an unused LUT: 10,201 out of 24,867 41%
Number of fully used LUT-FF pairs: 10,102 out of 24,867 40%
Number of unique control sets: 1,027
Number of slice register sites lost
to control set restrictions: 2,077 out of 64,000 3%
A LUT Flip Flop pair for this architecture represents one LUT paired with
one Flip Flop within a slice. A control set is a unique combination of
clock, reset, set, and enable signals for a registered element.
The Slice Logic Distribution report is not meaningful if the design is
over-mapped for a non-slice resource or if Placement fails.
OVERMAPPING of BRAM resources should be ignored if the design is
over-mapped for a non-BRAM resource or if placement fails.
IO Utilization:
Number of bonded IOBs: 536 out of 640 83%
Number of LOCed IOBs: 535 out of 536 99%
IOB Flip Flops: 726
IOB Master Pads: 97
IOB Slave Pads: 97
Number of bonded IPADs: 10
Number of LOCed IPADs: 2 out of 10 20%
Number of bonded OPADs: 8
Specific Feature Utilization:
Number of BlockRAM/FIFO: 45 out of 228 19%
Number using BlockRAM only: 29
Number using FIFO only: 16
Total primitives used:
Number of 36k BlockRAM used: 10
Number of 18k BlockRAM used: 22
Number of 36k FIFO used: 14
Number of 18k FIFO used: 2
Total Memory used (KB): 1,296 out of 8,208 15%
Number of BUFG/BUFGCTRLs: 24 out of 32 75%
Number used as BUFGs: 24
Number of IDELAYCTRLs: 8 out of 22 36%
Number of BUFDSs: 1 out of 8 12%
Number of BUFIOs: 16 out of 80 20%
Number of DCM_ADVs: 8 out of 12 66%
Number of LOCed DCM_ADVs: 8 out of 8 100%
Number of GTX_DUALs: 2 out of 8 25%
Number of LOCed GTX_DUALs: 2 out of 2 100%
Number of PCIEs: 1 out of 3 33%
Number of LOCed PCIEs: 1 out of 1 100%
Number of PLL_ADVs: 1 out of 6 16%
User Manual SMT712 Page 16 of 89 Last Edited: 11/12/2012 10:36:00
Number of SYSMONs: 1 out of 1 100%
Number of RPM macros: 128
Average Fanout of Non-Clock Nets: 3.36
The part mentioned above is also footprint compatible with the SXT series:
XC5VSX50T and XC5VSX95T. The SXT series implements a DSP48E core, which if
used on the SMT712 may result an increase of the power consumption. Please
contact Sundance if you require details about the SXT series.
4.5.3 Configuration (CPLD+Flash)
On the SMT712, the FPGA is connected to a CPLD via a serial link. The CPLD is
responsible for controlling read and write operations to and from the Flash memory
and to route data to the FPGA configuration port.
The following diagram show how connections are made on the board between the
CPLD, the Flash memory and the FPGA:
Flash
Data[7:0]
FPGA
Ctrl[9:0]
Switch
(bitstream
selection)
CPLD
JTAG
Connector
(J8)
Serial Link
Serial Link
jtag
Jtag
Figure 5 - Configuration (Flash).
Configuration Task
A reset coming from the bus (PXI/PCI or PXI Express) triggers a configuration cycle
and the FPGA is configured with the default firmware (stored in factory at location
0).
The on-board Flash memory (256-Mbit part) is big enough to store several versions
(4 in total on the SMT712) of firmware. A switch (SW1) at the back of the board
allows the selection among the 4 locations. It selects the bitstream to be loaded at
power up (only switches 1 and 2 of SW1 are used. Each can contain up to 8Mbytes of
Reset
PXIe
Bus or 32-bit
PCI Bus
User Manual SMT712 Page 17 of 89 Last Edited: 11/12/2012 10:36:00
data, which is big enough to store an XC5LX110T bitstream (about 3.8 Mbytes) and
some text (comments or description of the firmware version).
The user can store a ‘user’ bitstream at location 1 (see table below) for instance
using the SMT6002 piece of software (host server to load bitstream into Sundance
FPGA modules also called Flash Utility). The SMT6002 also allows adding text based
comments above the bitstream in flash memory.
This architecture allows the SMT712 to be used as a development platform for
signal processing and algorithms implementation. The function reboot can be used
from the SMT6002 GUI to boot from any flash location within seconds.
Both FPGA and CPLD can be reprogrammed/reconfigured at anytime via JTAG (J8
connector – Using a Xilinx parallel/USB programming cable) but it can cause
problems as it will break the access to the board from the host. JTAG has a higher
priority.
At power up or under a reset on the PXI or PXI Express bus, it takes 140ms for the
FPGA (XC5VLX110T-3) to be fully configured and ready to answer the requests from
the host.
The following table shows the settings that can be used and the start addresses of
the bitstream in the Flash memory.
Position
Switch 2
Position
Switch 1
Bitstream start
address in
Description
flash
ON ON 0x1800000
(Location 3)
User Bitstream 2
loaded at power
up
ON OFF 0x1000000
(Location 2)
User Bitstream 1
loaded at power
up
OFF ON 0x0800000
(Location 1)
User bitstream 0
loaded at power
Default
selection
up
OFF OFF 0x0000000
(Location 0)
Standard
bitstream loaded
at power up
Note that the CPLD routes the contents of the flash starting from the location
selected (SW1) until the FPGA indicates that it is configured. Addresses are
incremented by a counter that rolls over to 0 when the maximum address is
reached. For instance, in the case where Location 1 is selected and a corrupted
bitstream is loaded at that location (or if there is no bitstream at that location), the
default bitstream will end up being loaded.
The default bitstream returns ‘DEF’ as firmware revision (see register ‘Firmware
Version and Revision numbers).
It is recommended to keep the Switch SW1 so the User bitstream 0 is selected and
store a custom/user bitstream at Location 1 is needed. The card would then boot
from this location. Otherwise the card would boot automatically from the default
firmware (Location 0)
Storing a new bitstream using the SMT6002 first involves erasing the appropriate
sectors before programming them with the bitstream. This is automatically handled
User Manual SMT712 Page 18 of 89 Last Edited: 11/12/2012 10:36:00
by the SMT6002. Storing a new bitstream at location 1 (User Bitstream 0) will only
require from the user to select the file (.bit for instance) and to press the ‘Comit’
button. The advanced tab offers more options such as a full erase or a partial erase
of the flash memory. None of them should be required in normal mode of operation.
Note that a full erase will erase the entire contents of the flash including the default
firmware and that it can take up to 3-4 minutes. The partial erase will erase the User
bitstreams only.
4.5.4 DDR2 Memory
Two banks of DDR2 memory are available on the SMT712, directly connected to the
FPGA. Interfaces are part of the FPGA design. Each bank is 64-bit wide and 128-Meg
deep, so each bank can store up to 1 Giga bytes of samples. Each memory bank is
dedicated to one DAC. Not all bits are used in the memory are 4 12-bit samples are
stored in a 64-bit word.
In the standard firmware provided with the board, both DDR2 interfaces are clocked
at 312MHz in order to be able to play back a pattern from the memory to match the
full DAC sampling rate.
4.5.5 Clock circuitry
An on-board PLL+VCO chip ensure a stable fixed sampling frequency (maximum
rate, i.e. 2300MHz), in order for the board to be used as synthesizer without the
need of external clock signal. The PLL will be able to lock the VCO either on the onboard 10MHz PXI reference or the 100MHz PXI express reference or on an external
reference signal. The sampling clock for the converters can be either coming from
the PLL+VCO chip or from an external source. The chip used is a part from Analog
Devices, the AD9516-2. The reference used for locking the VCO is output on a
connector available on the front panel.
The selection Internal/External clock is made via a bit in the control register. The
same applies to the selection of the reference clock.
Below is a block diagram of the clock circuitry:
User Manual SMT712 Page 19 of 89 Last Edited: 11/12/2012 10:36:00
B
A
Output
Analog Out
Analog Out
External Clock
Fs
Fs
‘And’
Gate
‘And’
Gate
‘1’
OUT2
OUT0
Clock Distribution
AD9516-2
Flip
Flop
OUT3
Sync
Pulse
DACB
reference
clock
DAC B
8
/
s
F
Clock Mux
DCM
DACB
with
phase
shift
adjust.
DAC A
Fs/8
Clock Mux
Samples
DACA
reference
clock
Virtex 5 LX110T-3
DCM
DACA
with
phase
shift
adjust.
Samples
Figure 6 - SMT712 Clock circuitry.
On the FPGA side, one Xilinx DCM is implemented per channel. They are used to
clock the logic, to be able to change their phase shift to align outgoing data and
incoming clock. Both DCM are set in High Frequency Mode. This mode has a
limitation in terms of input clock (120 Mhz minimum), which implies a minimum
sampling frequency of 960 MSPS.
4.5.6 Data (samples) path / Data storage
This section details how samples can be routed to the DACs. By default and after
power-up or reset operation, all interfaces are in reset state. The only exception is
for the PXI/PXIe bus interface. Relevant interfaces should first be taken out of the
initial reset state.
The next step is to program both DACs and the clock generator and make sure it
locked to a reference signal. This is not needed in case of using an external
sampling clock. A DAC synchronisation cycle can be run to make sure their Fs/8
output clocks are in phase. DACs are then ready to receive samples and output a
clock to the FPGA.
Here are the details of the following step. One Xilinx DCM per DAC clock is used
inside the FPGA to ensure a good capture of data. The status of these DCMs should
be checked to make sure they are ‘locked’. They are available in the Global Control
Register. The DDR2 interface uses some Xilinx specific blocks, such as idelays,
DCMs and Phy, which have to be ‘locked’ and ‘ready’ as well. These have to be
checked the same way, using the bits available from the Global Control Register.
User Manual SMT712 Page 20 of 89 Last Edited: 11/12/2012 10:36:00
Each DAC has a dedicated bank of DDR2 Memory, which can be seen as a Fifo. Both
Fifos have status bits to check whether they are empty or full (bit available from
Global Control Register). Each Fifo is connected to a DMA channel. DMA channel are
implemented as Xlinks. Each FIFO is used in the firmware as a pattern generator.
Once samples are written into it, the can be played out in a repetitive way, the size
of the pattern is loaded into a register.
The following diagram shows the data path implemented:
4
x
8
b
D
i
D
t
s
R
(
2
L
8
V
7
D
.
5
S
M
H
z
)
4x8 bits (287.5MHz)
DDR LVDS
Figure 7 - Data path.
Note the data coming from the SHB are coming on 8 bits and casted to 12 bits to
match the DAC inputs.
4.5.7 PXI Express Bus
As standard, the SMT712 is a 3U PXI Express peripheral module, which means it
comes with two PXI Express connectors: XP4 (PXI timing and synchronisation
signals) and XP3 (x8 PCI Express and additional synchronisation signals). The
SMT712 dedicates 8 lanes to the PXI Express bus, which gives an effective
bandwidth per direction of 16Gb/s. It also implies core and user clocks to be 250
MHz. Note that not all PXIe Express chassis can handle 8 lanes on peripheral
modules. The default SMT712 firmware (For PXIe version of the board) only
implements 4 lanes.
The standard SMT712 can plug in any PXI Express Peripheral Slot or any PXI Express
Hybrid Slot.
User Manual SMT712 Page 21 of 89 Last Edited: 11/12/2012 10:36:00
Figure 8 - Standard SMT712 - PXI Express Peripheral Module
Optionally, the module can be a 3U Hybrid Peripheral Slot Compatible PXI-1 Module,
means it comes with two connectors: XP4 (PXI timing and synchronisation signals)
and P1 (32-bit, 33MHz PCI Signals). This version of SMT712 can only plug in any PXI
Express Hybrid Slot
User Manual SMT712 Page 22 of 89 Last Edited: 11/12/2012 10:36:00
The SMT712 module can also be a 3U Compact PCI module, which can only be
plugged into a CPCI system. It only has one connector fitted: P1 (32-bit, 33MHz PCI
signals).
Figure 10 - SMT712-CPCI32 - Compact PCI Module
The FPGA requires a reference clock to implement either the PCI or PCI Express
core. The selection is made via J11. The Jumper should be fitted in Position1-2 when
a PCI core is used (a 250MHz clock is then available to the FPGA) or in Position2-3
when a PCI Express core is used (the 100-MHz express reference is then routed to
the FPGA).
4.5.8 SHB connector
An SHB (1) Connector is available from the FPGA. It maps 32 single-ended data lines
and a set of control signals including a clock.
It can be used to transfer samples from an other Sundance module, for instance the
SMT702.
A second SHB (2) connector is also available on non-PCI versions of the board.
As an example, both SHBs can be used to link an SMT702 and an SMT712 to create a
dual-channel, 2GSPS PXIe platform.
SHB clock should match the FPGA clock rate used for DAC (clk/8) and SHB data is
automatically phase shifted to be aligned with internal clock.
4.5.9 External Trigger.
The external trigger function is not implemented in current version of the default
firmware.
User Manual SMT712 Page 23 of 89 Last Edited: 11/12/2012 10:36:00
4.5.10 Power dissipation
The PXI Express chassis receiving the SMT712 module should provide enough forced
air flow in order to dissipate the heat generated by the module. The air flow must be
going against gravity or upwards, as specified in the PXI Specification.
The FPGA is fitted with a heatsink to keep it within an appropriate range of
temperature (no more than 85 ºC) when using the default firmware provided.
Nevertheless the board requires some forced cooling. It is recommended to use a
PXIe-1062Q chassis or equivalent from National instrument as it already integrates a
built-in regulated cooling system. Measurements have been made using a PXIe1062Q on the maximum fan speed setting and the standard firmware with both
DACs clocked at 2,3GHz (both DDR2 memory banks used as a pattern generator):
In an ambient temperature of 25 ºC, the FPGA die temperature stays close to 60 ºC.
In an ambient temperature of 30 ºC, the FPGA die temperature stays close to 70 ºC.
In order to improve the heat dissipation is a system, some slot blockers can be used
(from National Instrument), which redirect the air flow of non-used slots to where it
is needed. Keeping the FPGA die temperature below 70-75 ºC ensures constant
performance in time.
The temperature of the FPGA die is available within the register to read-back so it
can be monitored.
It is also specified that a 3U PXI Express module should not dissipate more than 30
Watts of heat.
The following picture shows the direction of the forced air flow across a 3U PXI
Express module:
Figure 11 - Forced airflow for a 3U module.
A PXI Express rack has a capacity of dissipating 30 watts of heat per slot using
forced air-cooling system via typically two 110-cfm fans with filter.
4.5.11 JTAG
A connector (J8) is specifically dedicated for FPGA and CPLD detection and
programming. Both the CPLD and the FPGA are part of the JTAG chain. A 14-
User Manual SMT712 Page 24 of 89 Last Edited: 11/12/2012 10:36:00
position (2x7) connector (2mm) is available and shows TDI, TDO, TCK and TMS
lines, as well as a Ground and a reference voltage, as shown below:
Figure 12 - JTAG Connector.
This connector has been chosen because it can connect easily to a Xilinx Parallel IV
cable using the ribbon cable provided by Xilinx. The connector is a Molex part:
87831-1428.
User Manual SMT712 Page 25 of 89 Last Edited: 11/12/2012 10:36:00
Molex
Figure 13 - Photo of a Xilinx Parallel IV cable and its ribbon cable for JTAG connection
The JTAG connector should only be needed when reprogramming the CPLD. The
FPGA is accessible from the host using the SMT6002 software.
4.5.12 PXI Express Hybrid Connectors
As being a PXI Express Hybrid Peripheral Module, the SMT712 is a 3U card with 2
PXI connectors, XP3, XP4 and P1. The following table shows their pinouts.
User Manual SMT712 Page 26 of 89 Last Edited: 11/12/2012 10:36:00
The SMT712 can implement up to eight 2.5-Gigabit PCI Express lanes, allowing a
maximum data transfer of 2 gigabytes per second. It also implements optionally a
32-bit, 33-MHz PXI/PCI interface.
User Manual SMT712 Page 27 of 89 Last Edited: 11/12/2012 10:36:00
4.6 FPGA Design
The following block diagram shows how the default FPGA design is organised.
The FPGA implements some control registers in order to configure and control all
blocks. Most of them are available to read-back.
DDR2 interfaces have been designed in such way that both banks can be used as a
pattern generator. Each memory interface uses some Xilinx specific blocks such as
IDelay and DCM. Their respective status Ready and Lock are available from the
Control Register. A pattern can be stored on the DDR2 memory and played back.
A 32-bit SHB (1) connector is available. A second one is shared with the PCI 32-bit
bus, i.e. you can have one or the other depending on the option ordered.
DACs provide the FPGA with with a divided version of the sampling clock (sampling
clock/8). DCMs are used so they can be phase-adjusted. DCMs Status is available
from the Control Register. DCMs introduces a limitation of the sampling clock
(DCMs won’t work when sampling clocks are below 960MHz).
The PCI Express interface (when option purchased) implements 4 Express lanes.
The PCI 32-bit (33Mhz) (when option purchased) implements some Xilinx specific
blocks such as IDelays and DCMs. Status bits are available from the Control
Register. On non-PCI versions of the board a second 32-bit SHB (2) connector is
fitted.
The FPGA is also responsible for accesses to the CPLD in order to access the flash
memory that can contain up to 4 bitstreams. The CPLD can be triggered to reload
the FPGA with a different bistream. In this situation, the Sundance driver (SMT6300)
ensures that the link between the host application and the board is not lost.
SHB
connector
Dual SATA
connector
(optional)
4xRSL
via RSL connectors
(4xlinks@2.5Gbits/s)
(optional)
PXIe
Bus on PXIe
version
4 Lanes@2.5Gbits/s
32-bit on PXI/
CPCI versions
Otherwise
SHB (2)
User Manual SMT712 Page 28 of 89 Last Edited: 11/12/2012 10:36:00
4.6.1 Control Registers
The write packets must contain the address where the data must be written to and
the read packets must contain the address where the required data must be read.
The following figure shows the memory map for the writable and readable registers
on the SMT712.
The access to a specific register is made by reading or writing to the address:
Address from Host = Offset + Register Address
Offset Description.
0x0000
0x0400
0x0800
0x0C00
0x1000
0x1400
0x2400
SMT7xx Boards common registers (Reboot, global reset).
SMT712 Registers (DACs, Clock and control).
DACa data channel (Xlink 1)
DACb data channel (Xlink 2)
Table of Contents (see Xlink Specifications for more details).
4.6.1.1.69 System Monitor – FPGA core voltage thresholds – 0x1C4
(write).
Offset 0x0400 – System Monitor – FPGA core voltage thresholds – 0x1C4 (write).
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
3
Default
2
Default
1
Default
0
Default
Reserved Vccint upper threshold[9:6]
‘0000’ ‘0000’
Vccint upper threshold[5:0] Vccint lower
‘000000’ ‘00’
Vccint lower threshold[7:0]
Offset 0x0400 – System Monitor – FPGA core voltage thresholds – 0x1C4 (write).
Setting Bit 19..10 FPGA Core voltage upper threshold
1
Setting Bit 9..0 FPGA Core voltage lower threshold
0
The Voltage is coded on 10 bits.
The Voltage is coded on 10 bits.
Reserved
‘00000000’
threshold[9:8]
‘00000000’
User Manual SMT712 Page 73 of 89 Last Edited: 11/12/2012 10:36:00
4.6.1.1.70 System Monitor – FPGA Aux Voltages – 0x1C8 (read).
Offset 0x0400 – System Monitor – FPGA Aux Voltages – 0x1C8 (read).
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
3
Default
2
Default
1
Default
0
Default
Offset 0x0400 – System Monitor – FPGA Aux Voltages – 0x1C8 (read).
Setting Bit 29..20
2
Setting Bit 19..10
1
Setting Bit 9..0
0
Reserved Maximum Vccaux[9:4]
‘00’ ‘000000’
Maximum Vccaux [3:0] Minimum Vccaux [9:6]
‘0000’ ‘0000’
Minimum Vccaux [5:0] Current Vccaux [9:8]
‘000000’ ‘00’
Current Vccaux [7:0]
‘00000000’
Maximum FPGA Vccaux (measured)
The Voltage is coded on 10 bits.
Minimum FPGA Vccaux (measured)
The Voltage is coded on 10 bits.
Current FPGA Vccaux (measured)
The Voltage is coded on 10 bits.
4.6.1.1.71 System Monitor – FPGA aux voltage thresholds – 0x1C8
(write).
Offset 0x0400 – System Monitor – FPGA aux voltage thresholds – 0x1C8 (write).
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
3
Default
2
Default
1
Default
0
Default
Reserved Vccaux upper threshold[9:6]
‘0000’ ‘0000’
Vccaux upper threshold[5:0] Vccaux lower
‘000000’ ‘00’
Vccaux lower threshold[7:0]
Offset 0x0400 – System Monitor – FPGA aux voltage thresholds – 0x1C8 (write).
Setting Bit 19..10 FPGA Aux voltage upper threshold
1
Setting Bit 9..0 FPGA Aux voltage lower threshold
0
The Voltage is coded on 10 bits.
The Voltage is coded on 10 bits.
Reserved
‘00000000’
threshold[9:8]
‘00000000’
User Manual SMT712 Page 74 of 89 Last Edited: 11/12/2012 10:36:00
4.6.1.1.72 DDS Frequency Register DACA – 0x1CC (write).
DDS Frequency Register DACB – 0x1CC (write)
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
3
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
2
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
1
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
0
DDS Frequency Register[31:24]
DDS Frequency Register[23:16]
DDS Frequency Register[15:8]
DDS Frequency Register[7:0]
The FPGA implements a DDS block that takes a 32-bit word to set the frequency
(phase increment). Note that the phse increment should be an entire multiple of 8.
The maximum frequency that can be programmed is 0xFFFFFFF8, which
corresponds to 1/8th of the DAC sampling frequency.
The DDS output frequency is calculated as follows:
Fout = 0.125 * Phase Increment / 232.
4.6.1.1.73 DDS Frequency Register DACB – 0x1D0 (write).
DDS Frequency Register DACB – 0x1D0 (write)
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
3
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
2
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
1
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
0
DDS Frequency Register[31:24]
DDS Frequency Register[23:16]
DDS Frequency Register[15:8]
DDS Frequency Register[7:0]
The FPGA implements a DDS block that takes a 32-bit word to set the frequency
(phase increment). Note that the phse increment should be an entire multiple of 8.
The maximum frequency that can be programmed is 0xFFFFFFF8, which
corresponds to 1/8th of the DAC sampling frequency.
The DDS output frequency is calculated as follows:
Fout = 0.125 * Phase Increment / 232.
The default firmware implements one DCM_ADV (see Xilinx Virtex 5 documentation
for more details) per DAC data path, i.e. one DCM_ADV for DACA and one for DACB.
Both are set to have a programmable phase shift, which means it can be changed
from the host application. Both DCMs are set in mode VARIABLE_CENTER.
There is one bit to set the sign of the phase shit and 8 bit to set the value. The phase
shift range is -255…+255. Once the control word of send, the DCM is being reset
and programmed with the new phase shift. By default, the shift register is set to 0.
The default firmware implements one DCM_ADV (see Xilinx Virtex 5 documentation
for more details) per DAC data path, i.e. one DCM_ADV for DACA and one for DACB.
Both are set to have a programmable phase shift, which means it can be changed
from the host application. Both DCMs are set in mode VARIABLE_CENTER.
There is one bit to set the sign of the phase shit and 8 bit to set the value. The phase
shift range is -255…+255. Once the control word of send, the DCM is being reset
and programmed with the new phase shift. By default, the shift register is set to 0.
User Manual SMT712 Page 76 of 89 Last Edited: 11/12/2012 10:36:00
4.6.1.1.76 Pattern size DACA – 0x1DC (write).
Pattern Size DACA – 0x1DC (write)
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
3
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
2
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
1
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
0
Pattern size[31:24]
Pattern size [23:16]
Pattern size [15:8]
Pattern size [7:0]
Pattern size has to be a multiple of 8. A size pattern of 8 means that 64 samples will
have to be loaded in memory and will be played back and sent out to the DAC.
4.6.1.1.77 Pattern size DACB – 0x1E0 (write).
Pattern Size DACB – 0x1E0 (write)
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
3
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
2
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
1
Byte Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
0
Pattern size[31:24]
Pattern size [23:16]
Pattern size [15:8]
Pattern size [7:0]
Pattern size has to be a multiple of 8. A size pattern of 8 means that 64 samples will
have to be loaded in memory and will be played back and sent out to the DAC.
4.6.2 DAC Synchronisation
The Digital to Analog converters used on the SMT712 have multiplexed inputs,
which means their input data rate is a fraction of the sampling rate. DACs have got
an internal clock divider in order to provide the data clock. These dividers can start
in any state at power up, which gives very little chance to have both DACs ‘in phase’
at this stage.
The synchronisation process is an iterative process. The SMT712 implements a
group of flip-flops to provide information on whether DAC data clocks are in phase
or not. In case they are not, the FPGA is capable of cancelling a certain number of
sampling clock cycles (7 – synch pulse) of DACA. Information on the clock phase
have to be collected again to check whether DACA and DACB data clocks are in
phase or not. The operation is repeated until they are in phase.
The SMT712 Demo application (SMT7002 package) implements this function.
User Manual SMT712 Page 77 of 89 Last Edited: 11/12/2012 10:36:00
The following block diagram show the block implements in the standard firmware
provided with the board:
User Manual SMT712 Page 78 of 89 Last Edited: 11/12/2012 10:36:00
4.6.3 External Signal characteristics
The main characteristics of all external signals of the SMT712 are gathered into the
following table.
Analogue Outputs
Output voltage range
DACs Maximum Output Power
Impedance
Output Bandwidth
Input Voltage Level
Input Impedance
Frequency Range
Output Voltage Level
Output Impedance
External Sampling Clock Input
Input Voltage Level
Input Impedance
Input Format
Frequency range
AC coupled option. AC coupled via RF transformer.
-2.6dBm (50R)
50Ω.
Minimum 1500MHz depending on the frequency
response mode set.
External Reference Input
1-3.3 Volts peak-to-peak (AC-coupled)
50Ω (Termination implemented at the connector)
0 – 100 MHz.
External Reference Output
1.6 Volts peak-to-peak (AC-coupled)
50-Ohm (Termination implemented at the connector)
0.5 – 3.3 Volts peak-to-peak (AC-coupled)
To be connected to a 50-Ohm source
Single-ended.
960 (Firmware limitation)-2300 MHz
External Trigger Inputs
0-3.3 Volts peak-to-peak (Schmidt Trigger).
Input Voltage Level
Format
Frequency range
Input Data Width
Data Format
SFDR
Wideband Noise-spectral Density
Minimum Sampling Clock
Maximum Sampling Frequency
Figure 17 – Main Characteristics.
DACs Input Format
12-Bits
Offset Binary
58-75dBs maximum (manufacturer fugures)
Up to -162dBm/Hz maximum (manufacturer figures)
10 MHz
2300 MHz
Low : 0 -> 3.3/2 Volts
High : 3.3/2 -> 3.3Volts
DC-coupled and Single-ended
Sampling Clock/8 maximum (MHz)
User Manual SMT712 Page 79 of 89 Last Edited: 11/12/2012 10:36:00
The following capture has been made with a converter sampling at 2.3Ghz and
generating a sine wave of 143.5 mhz:
Figure 18 - Capture DACA – Sampling Frequency 2.3 GHz and Output Frequency 143.5
MHz.
User Manual SMT712 Page 80 of 89 Last Edited: 11/12/2012 10:36:00
5 Board Layout
5.1 Top View
Figure 19 - Board Layout (Top View)
User Manual SMT712 Page 81 of 89 Last Edited: 11/12/2012 10:36:00
Figure 20 - Board picture (Top view) – SMT712.
User Manual SMT712 Page 82 of 89 Last Edited: 11/12/2012 10:36:00
5.2 Bottom View.
Figure 21 - Board Layout (Bottom View).
User Manual SMT712 Page 83 of 89 Last Edited: 11/12/2012 10:36:00
Figure 22 - Board picture (bottom view) SMT712.
5.3 Front panel
On the front panel of the SMT712, 7 SMA connectors are available for DAC
ChannelA, DAC ChannelB, Trigger, External Reference input, External Reference
User Manual SMT712 Page 84 of 89 Last Edited: 11/12/2012 10:36:00
output, External clock input and External clock output. There is also a dual SATA-I
connector.
Figure 23 - SMT712 Front Panel.
6 Software Packages
Here is a list of the software packages that will be required for the SMT712 to work.
•SMT6300 is the software package that installs the Sundance driver for the
SMT712 board.
•SMT6002 is the software package that installs the server application to write
into flash memory (this is to store bitstreams and to reboot dynamically the
board). The application is called Flash Utility.
• SMT7002 is the software package that installs a demo application (smt712
Configuration) for the SMT712 as shown below:
User Manual SMT712 Page 85 of 89 Last Edited: 11/12/2012 10:36:00
As soon as the application is launched, it reads from the FPGA the board name, type
of FPGA, PCB revision and the firmware version. Once running, status flags are
displayed in the status section as well as the temperature of the FPGA and its
internal voltages (1.0V and 2.5V). A log is available on the right hand side.
Figure 24 - SMT712 Demo application.
User Manual SMT712 Page 86 of 89 Last Edited: 11/12/2012 10:36:00
Parameters to configure the clock distribution chip, DCM phase shifts can be loaded
(Hardware selection section - example files are provided in \\Program
Files\Sundance\SMT7026\Host\Smt712Config\Custom_Parameters) from a
configuration file, as well as the clock and reference source. A pattern can be loaded
from the application itself (sinewave) or from text files (file DDR2 pattern generator
section)..
In order to have the software source code for the SMT7002, the SMT7026 package
will have to be purchased. They come as a visual C++ project with all necessary files
to recompile the application and modify it.
The SMT7002 GUI has been used to configure the boards from which currents
consumed were measured. Boards were setup as follows, internal clock locked on
external 10-MHz reference, ADCs clocked at 3GSPS and set in Test mode, continuous
acquisitions (DMAs).
User Manual SMT712 Page 87 of 89 Last Edited: 11/12/2012 10:36:00
8 Safety
This module presents no hazard to the user when in normal use.
9 EMC
This module is designed to operate from within an enclosed host system, which is
build to provide EMC shielding. Operation within the EU EMC guidelines is not
guaranteed unless it is installed within an adequate host system.
This module is protected from damage by fast voltage transients originating from
outside the host system which may be introduced through the output cables.
Short circuiting any output to ground does not cause the host PC system to lock up
or reboot.
10 Ordering Information
Three variations of this product are available:
1 – SMT712 with an XC5VLX110T-3 (fastest speed grade available) FPGA and works
as a PXI Express Peripheral Module. The part number for this option is SMT712.
Requires a PXI Express chassis such as the NI-1062Q from National Instrument.
2 – SMT712 with an XC5VLX110T-3 (fastest speed grade available) FPGA and works
as a PXI Express Hybrid Peripheral Module (PXI P1 connector). The part number for
this option is SMT712-HYBRPXI32. Requires a PXI Express chassis such as the NI1062Q from National Instrument.
3 - SMT712 with an XC5VLX110T-3 (fastest speed grade available) FPGA and works
as a Compact PCI Module. The part number for this option is SMT712-CPCI32.
Requires a Compact PCI rack. Note that it can also be plugged into a PXI Express
chassis such as the NI-1062Q from National Instrument.
4 - SMT712 with an XC5VLX110T-3 (fastest speed grade available) FPGA and works
in standalone. It can be fitted in a PCI slot (Can be PCI-32 or 64 or PCI-X on a PC
motherboard) without being electrically connected to it. This option requires an
external power cable and a connection to an other piece of hardware from Sundance
via SHB or RSL or SATA (optional). The part number for this option is SMT712-STANDALONE. Note that the Standalone version of the SMT712 does not have any
dual SATA connector.
5 – SMT712 with an XC5VFX70T-3 (fastest speed grade available) FPGA and works as
a PXI Express Peripheral Module. The part number for this option is SMT712-FX70T. Requires a PXI Express chassis such as the NI-1062Q from National
Instrument.
6 – SMT712 with an XC5VFX70T-3 (fastest speed grade available) FPGA and works as
a PXI Express Hybrid Peripheral Module (PXI P1 connector). The part number for this
option is SMT712-HYBRPXI32-FX70T. Requires a PXI Express chassis such as the
NI-1062Q from National Instrument.
User Manual SMT712 Page 88 of 89 Last Edited: 11/12/2012 10:36:00
7 - SMT712 with an XC5VFX70T-3 (fastest speed grade available) FPGA and works as
a Compact PCI Module. The part number for this option is SMT712-CPCI32-FX70T.
Requires a Compact PCI rack. Note that it can also be plugged into a PXI Express
chassis such as the NI-1062Q from National Instrument.
8 – SMT712 with an XC5VFX100T-3 (fastest speed grade available) FPGA and works
as a PXI Express Peripheral Module. The part number for this option is SMT712-FX100T. Requires a PXI Express chassis such as the NI-1062Q from National
Instrument.
9 – SMT712 with an XC5VFX100T-3 (fastest speed grade available) FPGA and works
as a PXI Express Hybrid Peripheral Module (PXI P1 connector). The part number for
this option is SMT712-HYBRPXI32-FX100T. Requires a PXI Express chassis such as
the NI-1062Q from National Instrument.
10 - SMT712 with an XC5VFX100T-3 (fastest speed grade available) FPGA and works
as a Compact PCI Module. The part number for this option is SMT712-CPCI32-FX100T. Requires a Compact PCI rack. Note that it can also be plugged into a PXI
Express chassis such as the NI-1062Q from National Instrument.
Note that an SMT712 can also be used in a PC. This will require a PXIe to PCIe
adaptor (Sundance part number SMT580) as show below:
The SMT580 only routes the PCI express lanes, reference clock and power supplies.
None of the PXI signals are routed.
User Manual SMT712 Page 89 of 89 Last Edited: 11/12/2012 10:36:00
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.