This is an old revision of the document!
The AD9467 is a 16-bit, monolithic, IF sampling analog-to-digital converter (ADC) with a conversion rate of up to 250MSPS. This reference design includes the device data capture and SPI interface. The samples are written to the external DDR-DRAM on ML605. It allows programming the device and monitoring it's internal registers via SPI. It also allows programming the AD9517-4 clock chip as an alternative clock source on the board. The board also provides other options to drive the clock to the ADC.
HW Platform(s): Virtex-6 ML605 (Xilinx), AD9467 Evaluation Board (ADI), ADC FMC Interposer Board (ADI)
System: Microblaze, AXI, UART
The bit file provided combines the FPGA bit file and the SDK elf files. It may be used for a quick check on the system. All you need is the hardware and a PC running a UART terminal and the programmer (IMPACT).
If you have a Rev. A version of the FMC interposer board, please do the following modifications on the board.
If you have a Rev. A version of the AD9467 evaluation board, please do the following modifications on the board.
To begin make the following connections (see image below):
If you have AD9467-200EBZ board setup the clock source to be 200MHz, if AD9467-250EBZ set up the clock source to be 250MHz. This quick start bit file configures the AD9467 for all test modes and verifies the captured data accordingly. After the hardware setup, turn the power on to the ML605 and the AD9467-2x0EBZ boards.
Start IMPACT, and initialze the JTAG chain. The program should recognize the Virtex 6 device (see screenshot below). Start a UART terminal (set to 57600 baud rate) and then program the device.
If programming was successful, you should be seeing messages appear on the terminal as shown in figure below. After programming the AD9467 and AD9517, the program checks data capture on various test modes. Please note that AD9517 is powered down by default but is still accessable via SPI.
The reference design consists of three functional modules, a capture interface, a DMA interface and a SPI interface.
The capture interface uses the IDDR to register ADC data. It is then transferred to the DMA module. The DMA module interfaces to the Xilinx AXI-DMA engine and stores a programmable number of samples on the external DDR-DRAM on ML605.
The SPI interface allows programming the AD9517 and/or AD9467. The provided SDK software shows the access methods for SPI reads and writes on both the devices.
QW Address1 | Bits | Default | Name | Description |
---|---|---|---|---|
0x00 | 31 | 0x10061 | version | 32'h00_01_00_61 |
0x01 | 25 | 0 | SPI start | SPI access start (a 0x0 to 0x1 initiates start). |
24 | 0 | SPI select | SPI device select AD9517 (0x1) or AD9467 (0x0). | |
23:8 | 0 | SPI address | SPI address. | |
7 | 0 | SPI write data | SPI write data. | |
0x02 | 8 | 0 | SPI status | SPI idle (0x1) or busy (0x0) status. |
7:0 | 0 | SPI read data | SPI read data. | |
0x03 | 16 | 0 | ADC capture start | ADC capture start (a 0x0 to 0x1 initiates start). |
15:0 | 0 | ADC capture count | ADC capture count (total count - 1). | |
0x04 | 2 | 0 | DMA underflow | DMA underflow (W1C). |
1 | 0 | DMA overflow | DMA overflow (W1C). | |
0 | 0 | DMA status | DMA idle (0x0) or busy (0x1) status. | |
0x05 | 0 | 0 | ADC OR | ADC OR (W1C). |
0x06 | 31:0 | 0 | ADC sample | ADC captured sample (debug purposes only). |
1. For AXI-Lite byte addresses, multiply by 4. | ||||
2. W1C: write 1 to clear the bit. |
There are several clock paths available on the evaluation board.
The tar file contains, in most cases, the following files and/or directories. To rebuild the reference design simply double click the XMP file and run the tool. To build SDK, select a workspace and use the C file to build the elf file. Please refer to Xilinx EDK documentation for details.
license.txt | ADI license & copyright information. |
system.bsb | BSB wizard file (optional). |
system.mhs | MHS file. |
system.xmp | XMP file (use this file to build the reference design). |
data/ | UCF file and/or DDR MIG project files. |
docs/ | Documentation files (Please note that this wiki page is the documentation for the reference design). |
ise/ | ISE project file(s) (for stand alone build) and/or simulation (optional). |
pcores/ | Reference design core file(s) (Xilinx EDK). |
scripts/ | Individual scripts for platgen, xst, xflow etc. for command line run. |
sw/ | Software (Xilinx SDK) & bit file(s). |
tb/ | Test bench source file(s) (optional). |