adrv9009: Use new pack/unpack infrastructure

Use the new util_cpack2 and util_upack2 cores. They have lower utilization
that the old util_cpack and util_upack cores.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
main
Lars-Peter Clausen 2018-10-04 12:35:03 +02:00 committed by Adrian Costina
parent 3052c28c01
commit 2462f8e50f
2 changed files with 67 additions and 62 deletions

View File

@ -23,9 +23,11 @@ ad_ip_parameter axi_adrv9009_tx_xcvr CONFIG.OUT_CLK_SEL 3
adi_axi_jesd204_tx_create axi_adrv9009_tx_jesd 4 adi_axi_jesd204_tx_create axi_adrv9009_tx_jesd 4
ad_ip_instance util_upack util_adrv9009_tx_upack ad_ip_instance util_upack2 util_adrv9009_tx_upack { \
ad_ip_parameter util_adrv9009_tx_upack CONFIG.CHANNEL_DATA_WIDTH 32 NUM_OF_CHANNELS 4 \
ad_ip_parameter util_adrv9009_tx_upack CONFIG.NUM_OF_CHANNELS 4 SAMPLES_PER_CHANNEL 2 \
SAMPLE_DATA_WIDTH 16 \
}
ad_ip_instance axi_dmac axi_adrv9009_tx_dma ad_ip_instance axi_dmac axi_adrv9009_tx_dma
ad_ip_parameter axi_adrv9009_tx_dma CONFIG.DMA_TYPE_SRC 0 ad_ip_parameter axi_adrv9009_tx_dma CONFIG.DMA_TYPE_SRC 0
@ -58,9 +60,11 @@ ad_ip_parameter axi_adrv9009_rx_xcvr CONFIG.OUT_CLK_SEL 3
adi_axi_jesd204_rx_create axi_adrv9009_rx_jesd 2 adi_axi_jesd204_rx_create axi_adrv9009_rx_jesd 2
ad_ip_instance util_cpack util_adrv9009_rx_cpack ad_ip_instance util_cpack2 util_adrv9009_rx_cpack { \
ad_ip_parameter util_adrv9009_rx_cpack CONFIG.CHANNEL_DATA_WIDTH 16 NUM_OF_CHANNELS 4 \
ad_ip_parameter util_adrv9009_rx_cpack CONFIG.NUM_OF_CHANNELS 4 SAMPLES_PER_CHANNEL 1 \
SAMPLE_DATA_WIDTH 16 \
}
ad_ip_instance axi_dmac axi_adrv9009_rx_dma ad_ip_instance axi_dmac axi_adrv9009_rx_dma
ad_ip_parameter axi_adrv9009_rx_dma CONFIG.DMA_TYPE_SRC 2 ad_ip_parameter axi_adrv9009_rx_dma CONFIG.DMA_TYPE_SRC 2
@ -94,9 +98,11 @@ ad_ip_parameter axi_adrv9009_rx_os_xcvr CONFIG.OUT_CLK_SEL 3
adi_axi_jesd204_rx_create axi_adrv9009_rx_os_jesd 2 adi_axi_jesd204_rx_create axi_adrv9009_rx_os_jesd 2
ad_ip_instance util_cpack util_adrv9009_rx_os_cpack ad_ip_instance util_cpack2 util_adrv9009_rx_os_cpack { \
ad_ip_parameter util_adrv9009_rx_os_cpack CONFIG.CHANNEL_DATA_WIDTH 32 NUM_OF_CHANNELS 4 \
ad_ip_parameter util_adrv9009_rx_os_cpack CONFIG.NUM_OF_CHANNELS 4 SAMPLES_PER_CHANNEL 2 \
SAMPLE_DATA_WIDTH 16 \
}
ad_ip_instance axi_dmac axi_adrv9009_rx_os_dma ad_ip_instance axi_dmac axi_adrv9009_rx_os_dma
ad_ip_parameter axi_adrv9009_rx_os_dma CONFIG.DMA_TYPE_SRC 2 ad_ip_parameter axi_adrv9009_rx_os_dma CONFIG.DMA_TYPE_SRC 2
@ -182,23 +188,28 @@ ad_connect sys_dma_reset axi_adrv9009_dacfifo/dma_rst
ad_connect axi_adrv9009_tx_clkgen/clk_0 axi_adrv9009_core/dac_clk ad_connect axi_adrv9009_tx_clkgen/clk_0 axi_adrv9009_core/dac_clk
ad_connect axi_adrv9009_tx_jesd/tx_data_tdata axi_adrv9009_core/dac_tx_data ad_connect axi_adrv9009_tx_jesd/tx_data_tdata axi_adrv9009_core/dac_tx_data
ad_connect axi_adrv9009_tx_clkgen/clk_0 util_adrv9009_tx_upack/dac_clk
ad_connect axi_adrv9009_core/dac_valid_i0 util_adrv9009_tx_upack/dac_valid_0 ad_connect axi_adrv9009_tx_clkgen/clk_0 util_adrv9009_tx_upack/clk
ad_connect axi_adrv9009_core/dac_enable_i0 util_adrv9009_tx_upack/dac_enable_0 ad_connect axi_adrv9009_tx_jesd_rstgen/peripheral_reset util_adrv9009_tx_upack/reset
ad_connect axi_adrv9009_core/dac_data_i0 util_adrv9009_tx_upack/dac_data_0
ad_connect axi_adrv9009_core/dac_valid_q0 util_adrv9009_tx_upack/dac_valid_1 ad_connect axi_adrv9009_core/dac_valid_i0 util_adrv9009_tx_upack/fifo_rd_en
ad_connect axi_adrv9009_core/dac_enable_q0 util_adrv9009_tx_upack/dac_enable_1 ad_connect axi_adrv9009_core/dac_enable_i0 util_adrv9009_tx_upack/enable_0
ad_connect axi_adrv9009_core/dac_data_q0 util_adrv9009_tx_upack/dac_data_1 ad_connect axi_adrv9009_core/dac_data_i0 util_adrv9009_tx_upack/fifo_rd_data_0
ad_connect axi_adrv9009_core/dac_valid_i1 util_adrv9009_tx_upack/dac_valid_2 ad_connect axi_adrv9009_core/dac_enable_q0 util_adrv9009_tx_upack/enable_1
ad_connect axi_adrv9009_core/dac_enable_i1 util_adrv9009_tx_upack/dac_enable_2 ad_connect axi_adrv9009_core/dac_data_q0 util_adrv9009_tx_upack/fifo_rd_data_1
ad_connect axi_adrv9009_core/dac_data_i1 util_adrv9009_tx_upack/dac_data_2 ad_connect axi_adrv9009_core/dac_enable_i1 util_adrv9009_tx_upack/enable_2
ad_connect axi_adrv9009_core/dac_valid_q1 util_adrv9009_tx_upack/dac_valid_3 ad_connect axi_adrv9009_core/dac_data_i1 util_adrv9009_tx_upack/fifo_rd_data_2
ad_connect axi_adrv9009_core/dac_enable_q1 util_adrv9009_tx_upack/dac_enable_3 ad_connect axi_adrv9009_core/dac_enable_q1 util_adrv9009_tx_upack/enable_3
ad_connect axi_adrv9009_core/dac_data_q1 util_adrv9009_tx_upack/dac_data_3 ad_connect axi_adrv9009_core/dac_data_q1 util_adrv9009_tx_upack/fifo_rd_data_3
ad_connect axi_adrv9009_tx_clkgen/clk_0 axi_adrv9009_dacfifo/dac_clk ad_connect axi_adrv9009_tx_clkgen/clk_0 axi_adrv9009_dacfifo/dac_clk
ad_connect axi_adrv9009_tx_jesd_rstgen/peripheral_reset axi_adrv9009_dacfifo/dac_rst ad_connect axi_adrv9009_tx_jesd_rstgen/peripheral_reset axi_adrv9009_dacfifo/dac_rst
ad_connect util_adrv9009_tx_upack/dac_valid axi_adrv9009_dacfifo/dac_valid
ad_connect util_adrv9009_tx_upack/dac_data axi_adrv9009_dacfifo/dac_data # TODO: Add streaming AXI interface for DAC FIFO
ad_connect util_adrv9009_tx_upack/s_axis_valid VCC
ad_connect util_adrv9009_tx_upack/s_axis_ready axi_adrv9009_dacfifo/dac_valid
ad_connect util_adrv9009_tx_upack/s_axis_data axi_adrv9009_dacfifo/dac_data
ad_connect sys_dma_clk axi_adrv9009_dacfifo/dma_clk ad_connect sys_dma_clk axi_adrv9009_dacfifo/dma_clk
ad_connect sys_dma_clk axi_adrv9009_tx_dma/m_axis_aclk ad_connect sys_dma_clk axi_adrv9009_tx_dma/m_axis_aclk
ad_connect axi_adrv9009_dacfifo/dma_valid axi_adrv9009_tx_dma/m_axis_valid ad_connect axi_adrv9009_dacfifo/dma_valid axi_adrv9009_tx_dma/m_axis_valid
@ -215,25 +226,21 @@ ad_connect sys_dma_resetn axi_adrv9009_tx_dma/m_src_axi_aresetn
ad_connect axi_adrv9009_rx_clkgen/clk_0 axi_adrv9009_core/adc_clk ad_connect axi_adrv9009_rx_clkgen/clk_0 axi_adrv9009_core/adc_clk
ad_connect axi_adrv9009_rx_jesd/rx_sof axi_adrv9009_core/adc_rx_sof ad_connect axi_adrv9009_rx_jesd/rx_sof axi_adrv9009_core/adc_rx_sof
ad_connect axi_adrv9009_rx_jesd/rx_data_tdata axi_adrv9009_core/adc_rx_data ad_connect axi_adrv9009_rx_jesd/rx_data_tdata axi_adrv9009_core/adc_rx_data
ad_connect axi_adrv9009_rx_clkgen/clk_0 util_adrv9009_rx_cpack/adc_clk ad_connect axi_adrv9009_rx_clkgen/clk_0 util_adrv9009_rx_cpack/clk
ad_connect axi_adrv9009_rx_jesd_rstgen/peripheral_reset util_adrv9009_rx_cpack/adc_rst ad_connect axi_adrv9009_rx_jesd_rstgen/peripheral_reset util_adrv9009_rx_cpack/reset
ad_connect axi_adrv9009_core/adc_enable_i0 util_adrv9009_rx_cpack/adc_enable_0
ad_connect axi_adrv9009_core/adc_valid_i0 util_adrv9009_rx_cpack/adc_valid_0 ad_connect axi_adrv9009_core/adc_valid_i0 util_adrv9009_rx_cpack/fifo_wr_en
ad_connect axi_adrv9009_core/adc_data_i0 util_adrv9009_rx_cpack/adc_data_0 ad_connect axi_adrv9009_core/adc_enable_i0 util_adrv9009_rx_cpack/enable_0
ad_connect axi_adrv9009_core/adc_enable_q0 util_adrv9009_rx_cpack/adc_enable_1 ad_connect axi_adrv9009_core/adc_data_i0 util_adrv9009_rx_cpack/fifo_wr_data_0
ad_connect axi_adrv9009_core/adc_valid_q0 util_adrv9009_rx_cpack/adc_valid_1 ad_connect axi_adrv9009_core/adc_enable_q0 util_adrv9009_rx_cpack/enable_1
ad_connect axi_adrv9009_core/adc_data_q0 util_adrv9009_rx_cpack/adc_data_1 ad_connect axi_adrv9009_core/adc_data_q0 util_adrv9009_rx_cpack/fifo_wr_data_1
ad_connect axi_adrv9009_core/adc_enable_i1 util_adrv9009_rx_cpack/adc_enable_2 ad_connect axi_adrv9009_core/adc_enable_i1 util_adrv9009_rx_cpack/enable_2
ad_connect axi_adrv9009_core/adc_valid_i1 util_adrv9009_rx_cpack/adc_valid_2 ad_connect axi_adrv9009_core/adc_data_i1 util_adrv9009_rx_cpack/fifo_wr_data_2
ad_connect axi_adrv9009_core/adc_data_i1 util_adrv9009_rx_cpack/adc_data_2 ad_connect axi_adrv9009_core/adc_enable_q1 util_adrv9009_rx_cpack/enable_3
ad_connect axi_adrv9009_core/adc_enable_q1 util_adrv9009_rx_cpack/adc_enable_3 ad_connect axi_adrv9009_core/adc_data_q1 util_adrv9009_rx_cpack/fifo_wr_data_3
ad_connect axi_adrv9009_core/adc_valid_q1 util_adrv9009_rx_cpack/adc_valid_3
ad_connect axi_adrv9009_core/adc_data_q1 util_adrv9009_rx_cpack/adc_data_3
ad_connect axi_adrv9009_rx_clkgen/clk_0 axi_adrv9009_rx_dma/fifo_wr_clk ad_connect axi_adrv9009_rx_clkgen/clk_0 axi_adrv9009_rx_dma/fifo_wr_clk
ad_connect util_adrv9009_rx_cpack/adc_valid axi_adrv9009_rx_dma/fifo_wr_en ad_connect util_adrv9009_rx_cpack/packed_fifo_wr axi_adrv9009_rx_dma/fifo_wr
ad_connect util_adrv9009_rx_cpack/adc_sync axi_adrv9009_rx_dma/fifo_wr_sync
ad_connect util_adrv9009_rx_cpack/adc_data axi_adrv9009_rx_dma/fifo_wr_din
ad_connect axi_adrv9009_rx_dma/fifo_wr_overflow axi_adrv9009_core/adc_dovf
ad_connect sys_dma_resetn axi_adrv9009_rx_dma/m_dest_axi_aresetn ad_connect sys_dma_resetn axi_adrv9009_rx_dma/m_dest_axi_aresetn
# connections (adc-os) # connections (adc-os)
@ -241,25 +248,23 @@ ad_connect sys_dma_resetn axi_adrv9009_rx_dma/m_dest_axi_aresetn
ad_connect axi_adrv9009_rx_os_clkgen/clk_0 axi_adrv9009_core/adc_os_clk ad_connect axi_adrv9009_rx_os_clkgen/clk_0 axi_adrv9009_core/adc_os_clk
ad_connect axi_adrv9009_rx_os_jesd/rx_sof axi_adrv9009_core/adc_rx_os_sof ad_connect axi_adrv9009_rx_os_jesd/rx_sof axi_adrv9009_core/adc_rx_os_sof
ad_connect axi_adrv9009_rx_os_jesd/rx_data_tdata axi_adrv9009_core/adc_rx_os_data ad_connect axi_adrv9009_rx_os_jesd/rx_data_tdata axi_adrv9009_core/adc_rx_os_data
ad_connect axi_adrv9009_rx_os_clkgen/clk_0 util_adrv9009_rx_os_cpack/adc_clk ad_connect axi_adrv9009_rx_os_clkgen/clk_0 util_adrv9009_rx_os_cpack/clk
ad_connect axi_adrv9009_rx_os_jesd_rstgen/peripheral_reset util_adrv9009_rx_os_cpack/adc_rst ad_connect axi_adrv9009_rx_os_jesd_rstgen/peripheral_reset util_adrv9009_rx_os_cpack/reset
ad_connect axi_adrv9009_core/adc_os_enable_i0 util_adrv9009_rx_os_cpack/adc_enable_0
ad_connect axi_adrv9009_core/adc_os_valid_i0 util_adrv9009_rx_os_cpack/adc_valid_0
ad_connect axi_adrv9009_core/adc_os_data_i0 util_adrv9009_rx_os_cpack/adc_data_0
ad_connect axi_adrv9009_core/adc_os_enable_q0 util_adrv9009_rx_os_cpack/adc_enable_1
ad_connect axi_adrv9009_core/adc_os_valid_q0 util_adrv9009_rx_os_cpack/adc_valid_1
ad_connect axi_adrv9009_core/adc_os_data_q0 util_adrv9009_rx_os_cpack/adc_data_1
ad_connect axi_adrv9009_core/adc_os_enable_i1 util_adrv9009_rx_os_cpack/adc_enable_2
ad_connect axi_adrv9009_core/adc_os_valid_i1 util_adrv9009_rx_os_cpack/adc_valid_2
ad_connect axi_adrv9009_core/adc_os_data_i1 util_adrv9009_rx_os_cpack/adc_data_2
ad_connect axi_adrv9009_core/adc_os_enable_q1 util_adrv9009_rx_os_cpack/adc_enable_3
ad_connect axi_adrv9009_core/adc_os_valid_q1 util_adrv9009_rx_os_cpack/adc_valid_3
ad_connect axi_adrv9009_core/adc_os_data_q1 util_adrv9009_rx_os_cpack/adc_data_3
ad_connect axi_adrv9009_rx_os_clkgen/clk_0 axi_adrv9009_rx_os_dma/fifo_wr_clk ad_connect axi_adrv9009_rx_os_clkgen/clk_0 axi_adrv9009_rx_os_dma/fifo_wr_clk
ad_connect util_adrv9009_rx_os_cpack/adc_valid axi_adrv9009_rx_os_dma/fifo_wr_en
ad_connect util_adrv9009_rx_os_cpack/adc_sync axi_adrv9009_rx_os_dma/fifo_wr_sync ad_connect axi_adrv9009_core/adc_os_valid_i0 util_adrv9009_rx_os_cpack/fifo_wr_en
ad_connect util_adrv9009_rx_os_cpack/adc_data axi_adrv9009_rx_os_dma/fifo_wr_din ad_connect axi_adrv9009_core/adc_os_enable_i0 util_adrv9009_rx_os_cpack/enable_0
ad_connect axi_adrv9009_rx_os_dma/fifo_wr_overflow axi_adrv9009_core/adc_os_dovf ad_connect axi_adrv9009_core/adc_os_data_i0 util_adrv9009_rx_os_cpack/fifo_wr_data_0
ad_connect axi_adrv9009_core/adc_os_enable_q0 util_adrv9009_rx_os_cpack/enable_1
ad_connect axi_adrv9009_core/adc_os_data_q0 util_adrv9009_rx_os_cpack/fifo_wr_data_1
ad_connect axi_adrv9009_core/adc_os_enable_i1 util_adrv9009_rx_os_cpack/enable_2
ad_connect axi_adrv9009_core/adc_os_data_i1 util_adrv9009_rx_os_cpack/fifo_wr_data_2
ad_connect axi_adrv9009_core/adc_os_enable_q1 util_adrv9009_rx_os_cpack/enable_3
ad_connect axi_adrv9009_core/adc_os_data_q1 util_adrv9009_rx_os_cpack/fifo_wr_data_3
ad_connect axi_adrv9009_core/adc_os_dovf util_adrv9009_rx_os_cpack/fifo_wr_overflow
ad_connect util_adrv9009_rx_os_cpack/packed_fifo_wr axi_adrv9009_rx_os_dma/fifo_wr
ad_connect sys_dma_resetn axi_adrv9009_rx_os_dma/m_dest_axi_aresetn ad_connect sys_dma_resetn axi_adrv9009_rx_os_dma/m_dest_axi_aresetn
# interconnect (cpu) # interconnect (cpu)

View File

@ -19,9 +19,9 @@ LIB_DEPS += jesd204/axi_jesd204_rx
LIB_DEPS += jesd204/axi_jesd204_tx LIB_DEPS += jesd204/axi_jesd204_tx
LIB_DEPS += jesd204/jesd204_rx LIB_DEPS += jesd204/jesd204_rx
LIB_DEPS += jesd204/jesd204_tx LIB_DEPS += jesd204/jesd204_tx
LIB_DEPS += util_cpack
LIB_DEPS += util_dacfifo LIB_DEPS += util_dacfifo
LIB_DEPS += util_upack LIB_DEPS += util_pack/util_cpack2
LIB_DEPS += util_pack/util_upack2
LIB_DEPS += xilinx/axi_adxcvr LIB_DEPS += xilinx/axi_adxcvr
LIB_DEPS += xilinx/util_adxcvr LIB_DEPS += xilinx/util_adxcvr