From a7782311b9974a8ada25cf654fd7dc93a726282c Mon Sep 17 00:00:00 2001 From: Iulia Moldovan Date: Thu, 31 Oct 2024 16:55:53 +0200 Subject: [PATCH] docs/projects/ad719x_asdz: Update documentation * Added GPIO section as it was missing * Added details on using the make parameter ARDZ_PMOD_N as well as separate build commands depending on the carrier * Removed the diagram from Software considerations as it didn't make sense, since the evaluation board which doesn't have PMOD connector will be placed on top of Cora to use the Arduino header, and not connected through wires * Added links to Linux and no-OS files Signed-off-by: Iulia Moldovan --- .../ad719x_asdz/ad7190_asdz_pmod_diagram.svg | 731 ------------------ docs/projects/ad719x_asdz/index.rst | 201 +++-- 2 files changed, 129 insertions(+), 803 deletions(-) delete mode 100644 docs/projects/ad719x_asdz/ad7190_asdz_pmod_diagram.svg diff --git a/docs/projects/ad719x_asdz/ad7190_asdz_pmod_diagram.svg b/docs/projects/ad719x_asdz/ad7190_asdz_pmod_diagram.svg deleted file mode 100644 index 22063c8383..0000000000 --- a/docs/projects/ad719x_asdz/ad7190_asdz_pmod_diagram.svg +++ /dev/null @@ -1,731 +0,0 @@ - - - -JA1_PJA1_NJA2_PJA2_NCORAZ7S PMOD JAEval-AD7190EBZGNDVcc891012765114321J2 PmodJA PmodCSSCLKDINDOUTSYNCDVDDAVDDO diff --git a/docs/projects/ad719x_asdz/index.rst b/docs/projects/ad719x_asdz/index.rst index 09712c80e3..ebb07f39f1 100644 --- a/docs/projects/ad719x_asdz/index.rst +++ b/docs/projects/ad719x_asdz/index.rst @@ -6,20 +6,24 @@ AD719X-ASDZ HDL project Overview ------------------------------------------------------------------------------- -The AD719x family uses a low noise, higher speed, high precision ADC. They -can be used in a wide range of applications where the input signals can vary -from the milli-volt to volt level. The parts also operate with a wide range of -output data rates while still maintaining excellent noise performance over the -complete rate of output data ranges. +The AD719x-ASDZ HDL project supports the EVAL-AD719xASDZ family, comprised of +:adi:`EVAL-AD7190ASDZ`, :adi:`EVAL-AD7193ASDZ` and :adi:`EVAL-AD7195ASDZ`, each +evaluation kit featuring its own chip, the :adi:`AD7190`, :adi:`AD7193` and +:adi:`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 ------------------------------------------------------------------------------- -- :adi:`EVAL-AD7190` -- :adi:`EVAL-AD7192` -- :adi:`EVAL-AD7193` -- :adi:`EVAL-AD7194` -- :adi:`EVAL-AD7195` +- :adi:`EVAL-AD7190ASDZ` +- :adi:`EVAL-AD7192ASDZ` +- :adi:`EVAL-AD7193ASDZ` +- :adi:`EVAL-AD7194ASDZ` +- :adi:`EVAL-AD7195ASDZ` Supported devices ------------------------------------------------------------------------------- @@ -39,37 +43,37 @@ Supported carriers * - Evaluation board - Carrier - - Slot - * - :adi:`EVAL-AD7190 ` - - Cora-Z7S_ - - PMOD JA + - Connector + * - :adi:`EVAL-AD7190ASDZ` + - :xilinx:`Cora Z7S ` + - PMOD JA/Arduino shield * - - - De10-Nano_ + - :intel:`DE10-Nano ` - Arduino shield - * - :adi:`EVAL-AD7192 ` - - Cora-Z7S_ - - PMOD JA + * - :adi:`EVAL-AD7192ASDZ` + - :xilinx:`Cora Z7S ` + - PMOD JA/Arduino shield * - - - De10-Nano_ - - Arduino shield - * - :adi:`EVAL-AD7193 ` - - Cora-Z7S_ - - PMOD JA + - :intel:`DE10-Nano ` + - Arduino shield + * - :adi:`EVAL-AD7193ASDZ` + - :xilinx:`Cora Z7S ` + - PMOD JA/Arduino shield * - - - De10-Nano_ - - Arduino shield - * - :adi:`EVAL-AD7194 ` - - Cora-Z7S_ - - PMOD JA + - :intel:`DE10-Nano ` + - Arduino shield + * - :adi:`EVAL-AD7194ASDZ` + - :xilinx:`Cora Z7S ` + - PMOD JA/Arduino shield * - - - De10-Nano_ - - Arduino shield - * - :adi:`EVAL-AD7195 ` - - Cora-Z7S_ - - PMOD JA + - :intel:`DE10-Nano ` + - Arduino shield + * - :adi:`EVAL-AD7195ASDZ` + - :xilinx:`Cora Z7S ` + - PMOD JA/Arduino shield * - - - De10-Nano_ - - Arduino shield + - :intel:`DE10-Nano ` + - Arduino shield Block design ------------------------------------------------------------------------------- @@ -80,9 +84,9 @@ Block diagram The data path and clock domains are depicted in the below diagram: .. image:: ad719x_block_diagram.png - :width: 800 + :width: 1000 :align: center - :alt: AD719x/CORAZ7S block diagram + :alt: AD719x/CoraZ7S block diagram SPI connections ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -100,6 +104,34 @@ SPI connections - AD719x - 0 +GPIOs +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +.. list-table:: + :widths: 25 25 25 25 + :header-rows: 2 + + * - 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 + +.. admonition:: Legend + :class: note + + ``*`` - ``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 ------------------------------------------------------------------------------- @@ -111,31 +143,52 @@ If you want to build the sources, ADI makes them available on the `clone `__ the HDL repository. -Then go to the project location(**projects/ad719x/coraz7s**) and run the make -command by typing in your command prompt: +Cora Z7S +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ **Linux/Cygwin/WSL** -.. code-block:: +The default build configuration (``ARDZ_PMOD_N=0``) features the eval. boards +connected to Cora Z7S through PMOD JA: - user@analog:~$ cd hdl/projects/ad719x_asdz/coraz7s - user@analog:~/hdl/projects/ad719x_asdz/coraz7s$ make +.. shell:: -Check `this guide `__ on -how to prepare your SD card with the proper boot files. -A more comprehensive build guide can be found in the :ref:`build_hdl` user -guide. + $ cd hdl/projects/ad719x_asdz/coraz7s + $ make + # or explicitly setting the variable to 0, which is the same + $ make ARDZ_PMOD_N=0 -Software considerations -------------------------------------------------------------------------------- +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 SPI communication is changed because of hardware modifications, so the -connection looks like this: +The built project will be located at hdl/projects/ad719x_asdz/coraz7s/**ARDZPMODN1**. -.. image:: ad7190_asdz_pmod_diagram.svg - :width: 800 - :align: center - :alt: AD719x/CORAZ7S pmod diagram +.. shell:: + + $ cd 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: + +.. shell:: + + $ cd hdl/projects/ad719x_asdz/de10nano + $ make + +A more comprehensive build guide can be found in the :ref:`build_hdl` 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 ------------------------------------------------------------------------------- @@ -143,19 +196,23 @@ Resources Hardware related ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- Product datasheets: +- Product datasheets: - - :adi:`AD7190` - - :adi:`AD7193` - - :adi:`AD7195` - - :adi:`EVAL-AD7190` - - :adi:`EVAL-AD7193` - - :adi:`EVAL-AD7195` + - :adi:`AD7190` + - :adi:`AD7192` + - :adi:`AD7193` + - :adi:`AD7194` + - :adi:`AD7195` + - :adi:`EVAL-AD7190ASDZ` + - :adi:`EVAL-AD7192ASDZ` + - :adi:`EVAL-AD7193ASDZ` + - :adi:`EVAL-AD7194ASDZ` + - :adi:`EVAL-AD7195ASDZ` HDL related ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- :git-hdl:`AD719x-FMC HDL project source code ` +- :git-hdl:`ad719x_asdz HDL project source code ` .. list-table:: :widths: 30 35 35 @@ -165,24 +222,24 @@ HDL related - Source code link - Documentation link * - axi_sysid - - :git-hdl:`library/axi_sysid ` - - :ref:`here ` + - :git-hdl:`library/axi_sysid` + - :ref:`axi_sysid` * - sysid_rom - - :git-hdl:`library/sysid_rom ` - - :ref:`here ` - -- :dokuwiki:`AD7193 Pmod Xilinx FPGA Reference Design ` + - :git-hdl:`library/sysid_rom` + - :ref:`axi_sysid` Software related ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- :git-linux:`Driver ` +- :git-linux:`AD719x Linux driver ` +- :git-linux:`AD7190/CoraZ7S Linux device tree ` +- :git-linux:`AD7193/CoraZ7S Linux device tree ` +- :git-linux:`AD7195/CoraZ7S Linux device tree ` +- :git-no-os:`AD719x no-OS project ` +- :git-no-os:`AD719x no-OS driver ` - :dokuwiki:`AD7190 - Microcontroller No-OS Driver ` - :dokuwiki:`Supported devices ` .. include:: ../common/more_information.rst .. include:: ../common/support.rst - -.. _Cora-Z7S: https://digilent.com/reference/programmable-logic/cora-z7/start -.. _De10-Nano: https://www.intel.com/content/www/us/en/developer/articles/guide/terasic-de10-nano-get-started-guide.html