|
| 1 | +# EVAL-AD463X-FMC/ZED HDL Project |
1 | 2 |
|
2 |
| -# EVAL-AD463X_FMCZ HDL reference design |
| 3 | +## Building the project |
3 | 4 |
|
4 |
| -## Building the design |
| 5 | +The parameters configurable through the `make` command, can be found below, as |
| 6 | +well as in the **system_project.tcl** file. |
5 | 7 |
|
6 |
| -The design supports almost all the digital interface modes of AD463x, AD403x |
7 |
| -and adaq42xx a new bit stream should be generated each time when the targeted |
8 |
| -configuration changes. |
| 8 | +``` |
| 9 | +cd projects/ad4630_fmc/zed |
| 10 | +make |
| 11 | +``` |
9 | 12 |
|
10 |
| -Default configuration: generic SPI mode for clocking, 2 lanes per channel, SDR |
11 |
| -data capture and capture zone 2. |
| 13 | +This design supports almost all the digital interface modes of AD463x, AD403x |
| 14 | +and ADAQ42xx. A new bit stream should be generated each time when the targeted |
| 15 | +configuration changes. More context on the supported modes can be found in the: |
12 | 16 |
|
13 |
| -### Building attributes |
| 17 | +- [AD403x-24 data sheet](https://www.analog.com/media/en/technical-documentation/data-sheets/ad4030-24-4032-24.pdf) |
| 18 | +- [AD463x-16 data sheet](https://www.analog.com/media/en/technical-documentation/data-sheets/ad4630-16-4632-16.pdf) |
| 19 | +- [AD463x-24 data sheet](https://www.analog.com/media/en/technical-documentation/data-sheets/ad4630-24_ad4632-24.pdf) |
| 20 | +- [ADAQ4216 data sheet](https://www.analog.com/media/en/technical-documentation/data-sheets/adaq4216.pdf) |
| 21 | +- [ADAQ4224 data sheet](https://www.analog.com/media/en/technical-documentation/data-sheets/adaq4224.pdf) |
14 | 22 |
|
15 |
| -| Attribute name | Valid values | |
16 |
| -| --------------- | ------------------------------------------------- | |
17 |
| -| CLK_MODE | 0 - SPI / 1 - Echo-clock or Master clock | |
18 |
| -| NUM_OF_SDI | 1 - Interleaved / 2 - 1LPC / 4 - 2LPC / 8 - 4LPC | |
19 |
| -| CAPTURE_ZONE | 1 - negedge of BUSY / 2 - next posedge of CNV | |
20 |
| -| DDR_EN | 0 - MISO runs on SDR / 1 - MISO runs on DDR | |
| 23 | +If other configurations are desired, then the parameters from the HDL project |
| 24 | +need to be changed, as well as the Linux project configurations: |
21 | 25 |
|
22 |
| -**Example:** |
23 |
| - make CLK_MODE=0 NUM_OF_SDI=2 CAPTURE_ZONE=2 DDR_EN=0 |
24 |
| - make CLK_MODE=0 NUM_OF_SDI=4 CAPTURE_ZONE=2 DDR_EN=0 |
25 |
| - make CLK_MODE=0 NUM_OF_SDI=8 CAPTURE_ZONE=2 DDR_EN=0 |
26 |
| - make CLK_MODE=1 NUM_OF_SDI=2 CAPTURE_ZONE=2 DDR_EN=0 |
27 |
| - make CLK_MODE=1 NUM_OF_SDI=4 CAPTURE_ZONE=2 DDR_EN=0 |
28 |
| - make CLK_MODE=1 NUM_OF_SDI=8 CAPTURE_ZONE=2 DDR_EN=0 |
29 |
| - make CLK_MODE=1 NUM_OF_SDI=2 CAPTURE_ZONE=2 DDR_EN=1 |
30 |
| - make CLK_MODE=1 NUM_OF_SDI=4 CAPTURE_ZONE=2 DDR_EN=1 |
31 |
| - make CLK_MODE=1 NUM_OF_SDI=8 CAPTURE_ZONE=2 DDR_EN=1 |
| 26 | +The overwritable parameters from the environment are: |
32 | 27 |
|
33 |
| -## Documentation |
| 28 | +- CLK_MODE: clocking mode of the device's digital interface |
| 29 | + - 0 - SPI |
| 30 | + - 1 - Echo-clock or Master clock |
| 31 | +- NUM_OF_SDI: the number of MOSI lines of the SPI interface |
| 32 | + - 1 - Interleaved |
| 33 | + - 2 - 1LPC |
| 34 | + - 4 - 2LPC |
| 35 | + - 8 - 4LPC |
| 36 | +- CAPTURE_ZONE: the capture zone of the next sample |
| 37 | + - 1 - neg. edge of BUSY |
| 38 | + - 2 - next pos. edge of CNV |
| 39 | +- DDR_EN: in echo and master clock mode the SDI lines can have Single or Double data rates |
| 40 | + - 0 - MISO runs on SDR |
| 41 | + - 1 - MISO runs on DDR |
34 | 42 |
|
35 |
| -https://wiki.analog.com/resources/eval/user-guides/ad463x/hdl |
| 43 | +### Example configurations |
36 | 44 |
|
| 45 | +#### Clock mode 0, MOSI lines 2, Capture zone 2, DDR_EN 0 |
| 46 | + |
| 47 | +This specific command is equivalent to running `make` only: |
| 48 | + |
| 49 | +``` |
| 50 | +make CLK_MODE=0 NUM_OF_SDI=4 CAPTURE_ZONE=2 DDR_EN=0 |
| 51 | +``` |
| 52 | + |
| 53 | +#### Clock mode 0, MOSI lines 2, Capture zone 2, DDR_EN 0 |
| 54 | + |
| 55 | +``` |
| 56 | +make CLK_MODE=0 NUM_OF_SDI=2 CAPTURE_ZONE=2 DDR_EN=0 |
| 57 | +``` |
| 58 | + |
| 59 | +#### Clock mode 0, MOSI lines 4, Capture zone 2, DDR_EN 0 |
| 60 | + |
| 61 | +``` |
| 62 | +make CLK_MODE=0 NUM_OF_SDI=4 CAPTURE_ZONE=2 DDR_EN=0 |
| 63 | +``` |
| 64 | + |
| 65 | +#### Clock mode 0, MOSI lines 8, Capture zone 2, DDR_EN 0 |
| 66 | + |
| 67 | +``` |
| 68 | +make CLK_MODE=0 NUM_OF_SDI=8 CAPTURE_ZONE=2 DDR_EN=0 |
| 69 | +``` |
| 70 | + |
| 71 | +#### Clock mode 1, MOSI lines 2, Capture zone 2, DDR_EN 0 |
| 72 | + |
| 73 | +``` |
| 74 | +make CLK_MODE=1 NUM_OF_SDI=2 CAPTURE_ZONE=2 DDR_EN=0 |
| 75 | +``` |
| 76 | + |
| 77 | +#### Clock mode 1, MOSI lines 4, Capture zone 2, DDR_EN 0 |
| 78 | + |
| 79 | +``` |
| 80 | +make CLK_MODE=1 NUM_OF_SDI=4 CAPTURE_ZONE=2 DDR_EN=0 |
| 81 | +``` |
| 82 | + |
| 83 | +#### Clock mode 1, MOSI lines 8, Capture zone 2, DDR_EN 0 |
| 84 | + |
| 85 | +``` |
| 86 | +make CLK_MODE=1 NUM_OF_SDI=8 CAPTURE_ZONE=2 DDR_EN=0 |
| 87 | +``` |
| 88 | + |
| 89 | +#### Clock mode 1, MOSI lines 2, Capture zone 2, DDR_EN 1 |
| 90 | + |
| 91 | +``` |
| 92 | +make CLK_MODE=1 NUM_OF_SDI=2 CAPTURE_ZONE=2 DDR_EN=1 |
| 93 | +``` |
| 94 | + |
| 95 | +#### Clock mode 1, MOSI lines 4, Capture zone 2, DDR_EN 1 |
| 96 | + |
| 97 | +``` |
| 98 | +make CLK_MODE=1 NUM_OF_SDI=4 CAPTURE_ZONE=2 DDR_EN=1 |
| 99 | +``` |
| 100 | + |
| 101 | +#### Clock mode 1, MOSI lines 8, Capture zone 2, DDR_EN 1 |
| 102 | + |
| 103 | +``` |
| 104 | +make CLK_MODE=1 NUM_OF_SDI=8 CAPTURE_ZONE=2 DDR_EN=1 |
| 105 | +``` |
| 106 | + |
| 107 | +Corresponding device trees: |
| 108 | + |
| 109 | +- [zynq-zed-adv7511-ad4030-24.dts](https://github.com/analogdevicesinc/linux/blob/main/arch/arm/boot/dts/xilinx/zynq-zed-adv7511-ad4030-24.dts) |
| 110 | +- [zynq-zed-adv7511-ad4032-24.dts](https://github.com/analogdevicesinc/linux/blob/main/arch/arm/boot/dts/xilinx/zynq-zed-adv7511-ad4032-24.dts) |
| 111 | +- [zynq-zed-adv7511-ad4630-16.dts](https://github.com/analogdevicesinc/linux/blob/main/arch/arm/boot/dts/xilinx/zynq-zed-adv7511-ad4630-16.dts) |
| 112 | +- [zynq-zed-adv7511-ad4630-24.dts](https://github.com/analogdevicesinc/linux/blob/main/arch/arm/boot/dts/xilinx/zynq-zed-adv7511-ad4630-24.dts) |
| 113 | +- [zynq-zed-adv7511-adaq4216.dts](https://github.com/analogdevicesinc/linux/blob/main/arch/arm/boot/dts/xilinx/zynq-zed-adv7511-adaq4216.dts) |
| 114 | +- [zynq-zed-adv7511-adaq4220.dts](https://github.com/analogdevicesinc/linux/blob/main/arch/arm/boot/dts/xilinx/zynq-zed-adv7511-adaq4220.dts) |
| 115 | +- [zynq-zed-adv7511-adaq4224-24.dts](https://github.com/analogdevicesinc/linux/blob/main/arch/arm/boot/dts/xilinx/zynq-zed-adv7511-adaq4224-24.dts) |
| 116 | +- [zynq-zed-adv7511-adaq4224-24_cm0_sdi4_cz2.dts](https://github.com/analogdevicesinc/linux/blob/main/arch/arm/boot/dts/xilinx/zynq-zed-adv7511-adaq4224-24_cm0_sdi4_cz2.dts) |
0 commit comments