Skip to content

Commit 1ec940c

Browse files
docs/projects/ad9783 & images: Add ad9783_ebz project doc
Signed-off-by: Iulia Moldovan <Iulia.Moldovan@analog.com>
1 parent bc92687 commit 1ec940c

File tree

4 files changed

+2726
-0
lines changed

4 files changed

+2726
-0
lines changed

docs/index.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ HDL Reference Designs
2121
:hidden:
2222

2323
projects/ad9081_fmca_ebz/index
24+
projects/ad9783_ebz/index
2425

2526
.. role:: red
2627
.. role:: green

docs/projects/ad9783_ebz/index.rst

Lines changed: 209 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,209 @@
1+
.. _ad9783_ebz_hdl:
2+
3+
AD9783-EBZ HDL project
4+
===============================================================================
5+
6+
Overview
7+
-------------------------------------------------------------------------------
8+
9+
The :part:`AD9783` includes pin-compatible, high dynamic range, dual
10+
digital-to-analog converters (DACs) with 16-bit resolution, and sample rates of
11+
up to 500 MSPS.
12+
13+
The device includes specific features for direct conversion transmit
14+
applications, including gain and offset compensation, interfacing seamlessly
15+
with analog quadrature modulators.
16+
17+
The :part:`EVAL-AD9783` board is connected to the FPGA carrier through
18+
:part:`AD-DAC-FMC`-ADP interposer board.
19+
20+
Supported boards
21+
-------------------------------------------------------------------------------
22+
23+
- :part:`EVAL-AD9783`
24+
25+
Supported devices
26+
-------------------------------------------------------------------------------
27+
28+
- :part:`AD9780`
29+
- :part:`AD9781`
30+
- :part:`AD9783`
31+
32+
Supported carriers
33+
-------------------------------------------------------------------------------
34+
35+
- :xilinx:`ZCU102` on FMC HPC0 slot
36+
37+
Block design
38+
-------------------------------------------------------------------------------
39+
40+
Block diagram
41+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
42+
43+
The data path and clock domains are depicted in the below diagram:
44+
45+
.. image:: ../images/ad9783_zcu102_block_diagram.svg
46+
:width: 800
47+
:align: center
48+
:alt: AD9783-EBZ/ZCU102 block diagram
49+
50+
Clock scheme
51+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
52+
53+
- External clock source connected to J1 (CLOCK IN)
54+
- For maximum performance, give a 500 MHz clock
55+
56+
To make the connection between the :part:`EVAL-AD9783` evaluation board and
57+
the carrier using SPI, some hardware changes must be done to the evaluation
58+
board. These are presented in detail in the **Connections and hardware changes**
59+
section.
60+
61+
CPU/Memory interconnects addresses
62+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
63+
64+
The addresses are dependent on the architecture of the FPGA, having an offset
65+
added to the base address from HDL (see more at :ref:`architecture`).
66+
67+
============== =============== ===========
68+
Instance Zynq/Microblaze ZynqMP
69+
============== =============== ===========
70+
axi_ad9783 0x7420_0000 0x9420_0000
71+
axi_ad9783_dma 0x7C42_0000 0x9C42_0000
72+
============== =============== ===========
73+
74+
SPI connections
75+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
76+
77+
For the evaluation board to communicate through SPI with the carrier, some
78+
hardware changes must be done, which are explained in the system level
79+
documentation.
80+
81+
.. list-table::
82+
:widths: 25 25 25 25
83+
:header-rows: 1
84+
85+
* - SPI type
86+
- SPI manager instance
87+
- SPI subordinate
88+
- CS nb
89+
* - PS
90+
- SPI 0
91+
- AD9783
92+
- 0
93+
94+
Interrupts
95+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
96+
97+
Below are the Programmable Logic interrupts used in this project.
98+
99+
============== === ============ =============
100+
Instance name HDL Linux ZynqMP Actual ZynqMP
101+
============== === ============ =============
102+
axi_ad9783_dma 12 108 140
103+
============== === ============ =============
104+
105+
Building the HDL project
106+
-------------------------------------------------------------------------------
107+
108+
The design is built upon ADI's generic HDL reference design framework.
109+
ADI does not distribute the bit/elf files of these projects so they
110+
must be built from the sources available :git-hdl:`here <master:/>`. To get
111+
the source you must
112+
`clone <https://git-scm.com/book/en/v2/Git-Basics-Getting-a-Git-Repository>`__
113+
the HDL repository, and then build the project as follows:
114+
115+
**Linux/Cygwin/WSL**
116+
117+
.. code-block::
118+
119+
user@analog:~$ cd hdl/projects/ad9783_ebz/zcu102
120+
user@analog:~/hdl/projects/ad9783_ebz/zcu102$ make
121+
122+
A more comprehensive build guide can be found in the :ref:`build_hdl` user guide.
123+
124+
Software considerations
125+
-------------------------------------------------------------------------------
126+
127+
The SPI communication is changed because of hardware modifications, so the
128+
connection looks like this:
129+
130+
|ad9783_zcu102_spi_pmod.svg|
131+
132+
Resources
133+
-------------------------------------------------------------------------------
134+
135+
Systems related
136+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
137+
138+
Here you can find the quick start guides available for these evaluation boards:
139+
140+
.. list-table::
141+
:widths: 20 10 20 20 20 10
142+
:header-rows: 1
143+
144+
* - Evaluation board
145+
- Zynq-7000
146+
- Zynq UltraScale+ MP
147+
- Microblaze
148+
- Versal
149+
- Arria 10
150+
* - AD9783-EBZ
151+
- ---
152+
- :dokuwiki:`[Wiki] ZCU102 <resources/fpga/xilinx/interposer/ad9783>`
153+
- ---
154+
- ---
155+
- ---
156+
157+
Hardware related
158+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
159+
160+
- Product datasheets:
161+
162+
- :part:`AD9780`
163+
- :part:`AD9781`
164+
- :part:`AD9783`
165+
- :part:`EVAL-AD9783`
166+
- :part:`AD-DAC-FMC`-ADP
167+
168+
HDL related
169+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
170+
171+
- :git-hdl:`AD9783_EBZ HDL project source code <master:projects/ad9783_ebz>`
172+
173+
.. list-table::
174+
:widths: 30 35 35
175+
:header-rows: 1
176+
177+
* - IP name
178+
- Source code link
179+
- Documentation link
180+
* - AXI_AD9783
181+
- :git-hdl:`library/axi_ad9783 <master:library/axi_ad9783>`
182+
- :dokuwiki:`[Wiki] <resources/fpga/docs/axi_ad9783>`
183+
* - AXI_DMAC
184+
- :git-hdl:`library/axi_dmac <master:library/axi_dmac>`
185+
- :ref:`here <axi_dmac>`
186+
* - AXI_SYSID
187+
- :git-hdl:`library/axi_sysid <master:library/axi_sysid>`
188+
- :dokuwiki:`[Wiki] <resources/fpga/docs/axi_sysid>`
189+
* - SYSID_ROM
190+
- :git-hdl:`library/sysid_rom <master:library/sysid_rom>`
191+
- :dokuwiki:`[Wiki] <resources/fpga/docs/axi_sysid>`
192+
* - UTIL_UPACK2
193+
- :git-hdl:`library/util_pack/util_upack2 <master:library/util_pack/util_upack2>`
194+
- :dokuwiki:`[Wiki] <resources/fpga/docs/util_upack>`
195+
196+
Software related
197+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
198+
199+
- :git-linux:`Linux device tree zynqmp-zcu102-rev10-ad9783.dts <master:arch/arm64/boot/dts/xilinx/zynqmp-zcu102-rev10-ad9783.dts>`
200+
- :git-linux:`Linux driver ad9783.c <master:drivers/iio/frequency>`
201+
202+
.. include:: ../common/more_information.rst
203+
204+
.. include:: ../common/support.rst
205+
206+
.. |ad9783_zcu102_spi_pmod.svg| image:: ../images/ad9783_zcu102_spi_pmod.svg
207+
:width: 600
208+
:align: top
209+
:alt: AD9783-EBZ/ZCU102 SPI Pmod connection

0 commit comments

Comments
 (0)