AD719X-ASDZ HDL project#
Overview#
The AD719x-ASDZ HDL project supports the EVAL-AD719xASDZ family, comprised of EVAL-AD7190ASDZ, EVAL-AD7193ASDZ and EVAL-AD7195ASDZ, each evaluation kit featuring its own chip, the AD7190, AD7193 and AD7195 respectively - 4.8 kHz ultralow noise 24-bit sigma-delta ADC, each with its own particularities.
The on-chip low noise gain stage means that signals of small amplitude can interface directly to the ADC. The internal clock option provides a compact solution for low BW requirements.
Supported boards#
Supported devices#
Supported carriers#
Evaluation board |
Carrier |
Connector |
---|---|---|
PMOD JA/Arduino shield |
||
Arduino shield |
||
PMOD JA/Arduino shield |
||
Arduino shield |
||
PMOD JA/Arduino shield |
||
Arduino shield |
||
PMOD JA/Arduino shield |
||
Arduino shield |
||
PMOD JA/Arduino shield |
||
Arduino shield |
Block design#
Block diagram#
The data path and clock domains are depicted in the below diagram:
SPI connections#
SPI type |
SPI manager instance |
SPI subordinate |
CS |
---|---|---|---|
PS |
SPI 0 |
AD719x |
0 |
GPIOs#
GPIO signal |
Direction (from FPGA view) |
HDL GPIO EMIO |
Software GPIO (for Zynq-7000) |
---|---|---|---|
adc_syncn * |
OUT |
33 |
87 |
adc_spi_miso_rdyn |
OUT |
32 |
86 |
Legend
*
- adc_syncn
exists all the time on the DE10-Nano project, but
on the Cora Z7S project it exists only when the project was built with
ARDZ_PMOD_N=1
parameter (used when connecting the eval. board through
the Arduino header)
Building the HDL project#
The design is built upon ADI’s generic HDL reference design framework. ADI distributes the bit/elf files of these projects as part of the ADI Kuiper Linux. If you want to build the sources, ADI makes them available on the HDL repository. To get the source you must clone the HDL repository.
Cora Z7S#
Linux/Cygwin/WSL
The default build configuration (ARDZ_PMOD_N=0
) features the eval. boards
connected to Cora Z7S through PMOD JA:
~$
cd hdl/projects/ad719x_asdz/coraz7s
~/hdl/projects/ad719x_asdz/coraz7s$
make
~/hdl/projects/ad719x_asdz/coraz7s$
# or explicitly setting the variable to 0, which is the same
~/hdl/projects/ad719x_asdz/coraz7s$
make ARDZ_PMOD_N=0
The other possible way to connect the supported boards to CoraZ7S, is through
the Arduino header, for which the project needs to be built with the parameter
ARDZ_PMOD_N=1
.
The built project will be located at hdl/projects/ad719x_asdz/coraz7s/ARDZPMODN1.
~$
cd hdl/projects/ad719x_asdz/coraz7s
~/hdl/projects/ad719x_asdz/coraz7s$
make ARDZ_PMOD_N=1
DE10-Nano#
Linux/Cygwin/WSL
The only configuration available is through the Arduino header, so this project is not parameterizable:
~$
cd hdl/projects/ad719x_asdz/de10nano
~/hdl/projects/ad719x_asdz/de10nano$
make
A more comprehensive build guide can be found in the Build an HDL project user guide.
Software considerations#
The reference design when using the Arduino header, has an extra GPIO, compared to the other one — the SYNCN, which is used for synchronizing multiple devices.
Resources#
More information#
Support#
Analog Devices, Inc. will provide limited online support for anyone using the reference design with ADI components via the EngineerZone FPGA reference designs forum.
For questions regarding the ADI Linux device drivers, device trees, etc. from our Linux GitHub repository, the team will offer support on the EngineerZone Linux software drivers forum.
For questions concerning the ADI No-OS drivers, from our No-OS GitHub repository, the team will offer support on the EngineerZone microcontroller No-OS drivers forum.
It should be noted, that the older the tools’ versions and release branches are, the lower the chances to receive support from ADI engineers.