hdl
hdl copied to clipboard
AD7606B: Add support for Parallel ADC Read Mode
V2:
- Removed the
rx_cnvst_n
signal from axi_ad7606b IP, this being generated using axi_pwm_gen module;
V3:
- axi_ad7606b IP: Updated up_adc_common and channel instances with raw data reading and register data reading/writing features;
- ad7606b_fmc project: Defined missing pins;
V4:
- Rebased to the master branch;
V5:
- Updated to latest
up_adc_channel
read raw data functionality version;
V6:
- Rebased to the
master
branch;
Run hdlmake script, to update the makefiles.
V7:
- Updated makefiles;
In the .log file you get a few CRITICAL warnings. CRITICAL WARNING: [Common 17-55] 'get_property' expects at least one object. [/media/data/github/dev/hdl_ad7606/projects/ad7606b_fmc/zed/ad7606b_fmc_zed.gen/sources_1/bd/system/ip/system_axi_ad7606b_dma_0/system_axi_ad7606b_dma_0_constr.xdc:32
This happens when an input clock is not defined. This is not the case here. The tool should figure out that you are using the ps 0 clock. Leaving things like this will mess wit our continuous integration flow, so it has to be fix. Add a clock constraint on the output clock of the ad7606. that will let the tool know is the same 100MHz clock Maybe something like, with device by 1: https://github.com/analogdevicesinc/hdl/blob/master/projects/ad_quadmxfe1_ebz/vcu118/timing_constr.xdc#L13
V8:
- Updated project's GPIO pins;
- Used generated 100MHz clock from
cpu_clk
as anexternal_clk
. Generated foraxi_dmac
andup_cpack2
modules' clocks ,instead of axi_ad7606b'sadc_clk
;
V9:
- renamed
ext_clk
bus inaxi_ad7606b_ip.tcl
definition fiel toexternal_clk
;
Notes:
- Software must control the
adc_reset
pin of AD7606B; - Recommended mode of operation using
adc_os
pins: software mode ('b111
) - all operation modes will be able to be used in this case;
V11:
- HDL driver for parallel interface of the AD7606x family devices: AD7606B and AD7606C-16 in ad7606x_16b_pif.v and AD7606C-18 in ad7606x_18b_pif.v;
- AD7606X HDL Reference Design in ad7606x_fmc;
V12:
- Added new operation mode: CRC computing option using data bits, status header bits and zeros;
V13:
- Added missing
CRC_STATUS
parameter inaxi_ad7606x_16b_pif
and*_18b_pif
modules; - Updated
axi_ad7606x_ip.tcl
file;
V14:
- Added
Readme.md
file to the project's directory;
V15:
- (axi_ad7606x) Added support for the new ADC config mechanism;
- (ad7606x_fmc project) Added EXT_CLK parameter;
V16:
- Remove redundant code related to the parameters setup in the
system_project.tcl
file;
V17:
- Updated license header to current year;
- Updated
ad_datafmt
instances to use axi_ad7606x's module parameters;
V18:
- Updated
read_ch_data
signal conditions in the pif's modules;
V19:
- (axi_ad7606x) Updated indentation in
axi_ad7606x_18b_pif
module; - (ad7606x_fmc_zed) Updated system_id's "custom string" field;