AD7768 Platform FPGA Architecture - ArrowElectronics/data-storm-daq GitHub Wiki

AD7768 FPGA Architecture

The AD7768 digital host consists of DSP (digital signal processor), or an FPGA (Field Programmable Gate Array). In this case we use the Intel Cyclone V SoC FPGA with a dual core ARM Cortex A9 hard processor system (HPS) with the embedded Analog Devices ad7768_interface IP block as depicted here.




The Intel Cyclone V SoC FPGA serves as the digital host for the AD7768 ADCs. It also implements various interfaces and modules for configuration, control, status, dma, as well as conversion data processing and host processing. Additionally, there are external data/control and video peripheral interfaces implemented in the FPGA for use on the DataStorm DAQ.

The FPGA receives the ADCs conversion data over the data_in serial bus (1 serial channel per pin) and provides configuration and control over GPIO and SPI buses. The interfaces implemented are described below. For details, consult the AD7768 datasheet and its operation on the EVAL-AD7768FMCZ dev board.



Interfaces


FPGA I/O

The toplevel ports for the fpga are as follows:

Name Direction Description
sys_clk input main clock
ddr3_a[15:0] output HPS DDR3 Address bus
ddr3_ba[2:0] output HPS DDR3 Bank Address
ddr3_reset_n output HPS DDR3 acvite low Reset
ddr3_ck_p output HPS DDR3 Differential clock positive rail
ddr3_ck_n output HPS DDR3 Differential clock negative rail
ddr3_cke output HPS DDR3 clock enable
ddr3_cs_n output HPS DDR3 active-low chip select
ddr3_ras_n output HPS DDR3 active-low row address strobe
ddr3_cas_n output HPS DDR3 active-low column address strobe
ddr3_we_n output HPS DDR3 active-low write enable
ddr3_dq[31:0] inout HPS DDR3 32-bit bidirectional data bus
ddr3_dqs_p[3:0] inout HPS DDR3 4-bit bidir differential data strobe positive rail
ddr3_dqs_n[3:0] inout HPS DDR3 4-bit bidir differential data strobe negative rail
ddr3_dm[3:0] inout HPS DDR3 4-bit bidir data mask
ddr3_odt output HPS DDR3 on-die termination
ddr3_rzq output HPS DDR3 output drive calibration (to RZQ resistor)
eth1_tx_clk output HPS ethernet mac transmit interface clock
eth1_tx_ctl output HPS ethernet mac transmit interface control
eth1_tx_d[3:0] output HPS ethernet mac transmit interface 4-bit data bus
eth1_rx_clk input HPS ethernet mac receive interface clock
eth1_rx_ctl input HPS ethernet mac receive interface control
eth1_rx_d[3:0] input HPS ethernet mac receive interface 4-bit data bus
eth1_mdc output HPS ethernet mac management data i/o interface clock
eth1_mdio inout HPS ethernet mac management data input/output
link_st inout HPS ethernet mac link state
rx_er inout HPS ethernet mac receive error
phy_int inout HPS ethernet PHY interrupt
eth_rst inout HPS ethernet reset
phy_led1 inout HPS ethernet PHY led 1
qspi_ss0 output HPS Quad SPI chip select 0
qspi_clk output HPS Quad SPI clock out
qspi_io[3:0] inout HPS Quad SPI data 3 to 0
sdio_clk output HPS SDIO Clock
sdio_cmd inout HPS SDIO command
sdio_d[3:0] inout HPS SDIO bidir data
usb1_clk input HPS USB interface clock
usb1_stp output HPS USB interface STOP signal
usb1_dir input HPS USB interface Direction
usb1_nxt input HPS USB interface Next
usb1_d[3:0] inout HPS USB interface 8-bit bidir data
usb1_rst inout HPS USB interface reset
uart0_rx input HPS UART0 RX data
uart0_tx output HPS UART0 TX data
hps_scl inout HPS I2C interface serial clock
hps_sda inout HPS I2C interface serial data
hdmi_clk output HDMI Clock
hdmi_de output HDMI Data enable
hdmi_hsync output HDMI Horizontal Sync
hdmi_vsync output HDMI Vertical Sync
hdmi_data[23:0] output HDMI Data
hdmi_spdif output HDMI Sony/Philips Digital Interface
hdmi_spdifout input HDMI Sony/Philips Digital Interface out
hmdi_int input HMDI int
ct_hpd output
ls_oe output
cec_clk output Consumer Electronics Control Clk
fmc_scl inout FMC I2C clock
fcm sda inout FMC I2C data
clk_in input ADC conversion data clock
ready_in input ADC Data Ready In
data_in[7:0] input ADC serial conversion data in
spi_csn output Active-low SPI chip select
spi_clk output SPI Clock to AD7768 ADC
spi_mosi output SPI data out to AD7768 ADC
spi_miso input SPI data in from AD7768 ADC
gpio_0_mode_0 input GPIO 0 / Mode 0 pin.
gpio_1_mode_1 input GPIO 1 / Mode 1 pin.
gpio_2_mode_2 input GPIO 2 / Mode 2 pin.
gpio_3_mode_3 input GPIO 3 / Mode 3 pin.
gpio_4_filter input GPIO 4 / Filter pin.
reset_n input Active-low reset
start_n input Active-low start from AD7768
sync_n input Active-low Sync from AD7768
sync_in_n input Active-low Sync_in from AD7768
mclk output master clock input to AD7768
fmc_pg_c2m inout
fmc_prsnt_m2c inout
cpu_gpio_0 inout
cpu_gpio_1 inout
led_hps_1 inout
led_hps_2 inout
therm_n inout
alert_n inout
user_btn_hps inout
status inout
as_rst inout
qspi_rst inout


Return to AD7768 Platform Architecture


Information on this site was obtained from
⚠️ **GitHub.com Fallback** ⚠️