2019-02-04 19:51:44 +00:00
|
|
|
|
|
|
|
add_files -fileset constrs_1 -norecurse ./carrier_constr.xdc
|
2019-04-19 10:04:50 +00:00
|
|
|
|
|
|
|
create_bd_port -dir O -type clk i2s_mclk
|
|
|
|
create_bd_intf_port -mode Master -vlnv analog.com:interface:i2s_rtl:1.0 i2s
|
|
|
|
|
2019-04-19 10:23:45 +00:00
|
|
|
create_bd_port -dir I axi_fan_tacho_i
|
|
|
|
create_bd_port -dir O axi_fan_pwm_o
|
|
|
|
|
2019-04-19 10:04:50 +00:00
|
|
|
# 12.288MHz clk
|
|
|
|
ad_ip_instance axi_clkgen sys_audio_clkgen
|
|
|
|
ad_ip_parameter sys_audio_clkgen CONFIG.ID 6
|
|
|
|
ad_ip_parameter sys_audio_clkgen CONFIG.CLKIN_PERIOD 10
|
|
|
|
ad_ip_parameter sys_audio_clkgen CONFIG.VCO_DIV 2
|
|
|
|
ad_ip_parameter sys_audio_clkgen CONFIG.VCO_MUL 21
|
|
|
|
ad_ip_parameter sys_audio_clkgen CONFIG.CLK0_DIV 85.5
|
|
|
|
|
|
|
|
ad_connect sys_cpu_clk sys_audio_clkgen/clk
|
|
|
|
ad_connect sys_i2s_mclk sys_audio_clkgen/clk_0
|
|
|
|
|
|
|
|
# i2s ip
|
|
|
|
ad_ip_instance axi_i2s_adi axi_i2s_adi
|
|
|
|
ad_ip_parameter axi_i2s_adi CONFIG.DMA_TYPE 0
|
|
|
|
ad_ip_parameter axi_i2s_adi CONFIG.S_AXI_ADDRESS_WIDTH 32
|
|
|
|
|
|
|
|
# dma
|
|
|
|
ad_ip_instance axi_dmac i2s_tx_dma
|
|
|
|
ad_ip_parameter i2s_tx_dma CONFIG.DMA_TYPE_SRC 0
|
|
|
|
ad_ip_parameter i2s_tx_dma CONFIG.DMA_TYPE_DEST 1
|
|
|
|
ad_ip_parameter i2s_tx_dma CONFIG.CYCLIC 1
|
|
|
|
ad_ip_parameter i2s_tx_dma CONFIG.AXI_SLICE_SRC 0
|
|
|
|
ad_ip_parameter i2s_tx_dma CONFIG.AXI_SLICE_DEST 0
|
|
|
|
ad_ip_parameter i2s_tx_dma CONFIG.ASYNC_CLK_DEST_REQ 0
|
|
|
|
ad_ip_parameter i2s_tx_dma CONFIG.ASYNC_CLK_SRC_DEST 0
|
|
|
|
ad_ip_parameter i2s_tx_dma CONFIG.ASYNC_CLK_REQ_SRC 0
|
|
|
|
ad_ip_parameter i2s_tx_dma CONFIG.DMA_2D_TRANSFER 0
|
|
|
|
ad_ip_parameter i2s_tx_dma CONFIG.DMA_DATA_WIDTH_DEST 32
|
|
|
|
ad_ip_parameter i2s_tx_dma CONFIG.DMA_DATA_WIDTH_SRC 64
|
|
|
|
|
|
|
|
ad_ip_instance axi_dmac i2s_rx_dma
|
|
|
|
ad_ip_parameter i2s_rx_dma CONFIG.DMA_TYPE_SRC 1
|
|
|
|
ad_ip_parameter i2s_rx_dma CONFIG.DMA_TYPE_DEST 0
|
|
|
|
ad_ip_parameter i2s_rx_dma CONFIG.CYCLIC 1
|
|
|
|
ad_ip_parameter i2s_rx_dma CONFIG.AXI_SLICE_SRC 0
|
|
|
|
ad_ip_parameter i2s_rx_dma CONFIG.AXI_SLICE_DEST 0
|
|
|
|
ad_ip_parameter i2s_rx_dma CONFIG.ASYNC_CLK_DEST_REQ 0
|
|
|
|
ad_ip_parameter i2s_rx_dma CONFIG.ASYNC_CLK_SRC_DEST 0
|
|
|
|
ad_ip_parameter i2s_rx_dma CONFIG.ASYNC_CLK_REQ_SRC 0
|
|
|
|
ad_ip_parameter i2s_rx_dma CONFIG.DMA_2D_TRANSFER 0
|
|
|
|
ad_ip_parameter i2s_rx_dma CONFIG.DMA_DATA_WIDTH_DEST 64
|
|
|
|
ad_ip_parameter i2s_rx_dma CONFIG.DMA_DATA_WIDTH_SRC 32
|
|
|
|
|
|
|
|
# i2s connections
|
|
|
|
ad_connect sys_cpu_clk axi_i2s_adi/s_axi_aclk
|
|
|
|
ad_connect sys_cpu_clk axi_i2s_adi/s_axis_aclk
|
|
|
|
ad_connect sys_cpu_clk axi_i2s_adi/m_axis_aclk
|
|
|
|
ad_connect sys_cpu_resetn axi_i2s_adi/s_axi_aresetn
|
|
|
|
ad_connect sys_cpu_resetn axi_i2s_adi/s_axis_aresetn
|
|
|
|
ad_connect i2s_tx_dma/m_axis axi_i2s_adi/s_axis
|
|
|
|
|
|
|
|
# not connecting tlast
|
|
|
|
ad_connect i2s_rx_dma/s_axis_data axi_i2s_adi/m_axis_tdata
|
|
|
|
ad_connect i2s_rx_dma/s_axis_valid axi_i2s_adi/m_axis_tvalid
|
|
|
|
ad_connect i2s_rx_dma/s_axis_ready axi_i2s_adi/m_axis_tready
|
|
|
|
ad_connect i2s axi_i2s_adi/I2S
|
|
|
|
ad_connect sys_i2s_mclk axi_i2s_adi/data_clk_i
|
|
|
|
ad_connect sys_i2s_mclk i2s_mclk
|
|
|
|
|
|
|
|
ad_connect sys_cpu_clk i2s_tx_dma/s_axi_aclk
|
|
|
|
ad_connect sys_cpu_clk i2s_tx_dma/m_src_axi_aclk
|
|
|
|
ad_connect sys_cpu_clk i2s_tx_dma/m_axis_aclk
|
|
|
|
ad_connect sys_cpu_resetn i2s_tx_dma/s_axi_aresetn
|
|
|
|
ad_connect sys_cpu_resetn i2s_tx_dma/m_src_axi_aresetn
|
|
|
|
|
|
|
|
ad_connect sys_cpu_clk i2s_rx_dma/s_axi_aclk
|
|
|
|
ad_connect sys_cpu_clk i2s_rx_dma/m_dest_axi_aclk
|
|
|
|
ad_connect sys_cpu_clk i2s_rx_dma/s_axis_aclk
|
|
|
|
ad_connect sys_cpu_resetn i2s_rx_dma/s_axi_aresetn
|
|
|
|
ad_connect sys_cpu_resetn i2s_rx_dma/m_dest_axi_aresetn
|
2019-04-19 10:23:45 +00:00
|
|
|
|
|
|
|
ad_ip_instance axi_fan_control axi_fan_control_0
|
|
|
|
ad_ip_parameter axi_fan_control_0 CONFIG.ID 1
|
|
|
|
|
|
|
|
ad_connect axi_fan_tacho_i axi_fan_control_0/tacho
|
|
|
|
ad_connect axi_fan_pwm_o axi_fan_control_0/pwm
|
2019-04-19 10:04:50 +00:00
|
|
|
|
|
|
|
# interconnect
|
2019-04-19 10:23:45 +00:00
|
|
|
|
|
|
|
ad_cpu_interconnect 0x40000000 axi_fan_control_0
|
2019-04-19 10:04:50 +00:00
|
|
|
ad_cpu_interconnect 0x41000000 i2s_rx_dma
|
|
|
|
ad_cpu_interconnect 0x41001000 i2s_tx_dma
|
|
|
|
ad_cpu_interconnect 0x41010000 sys_audio_clkgen
|
|
|
|
ad_cpu_interconnect 0x42000000 axi_i2s_adi
|
|
|
|
|
|
|
|
ad_mem_hp0_interconnect sys_cpu_clk i2s_tx_dma/m_src_axi
|
|
|
|
ad_mem_hp0_interconnect sys_cpu_clk i2s_rx_dma/m_dest_axi
|
2019-04-19 10:23:45 +00:00
|
|
|
|
|
|
|
# interrupts
|
|
|
|
|
|
|
|
ad_cpu_interrupt ps-6 mb-6 i2s_tx_dma/irq
|
|
|
|
ad_cpu_interrupt ps-7 mb-7 i2s_rx_dma/irq
|
|
|
|
ad_cpu_interrupt ps-14 mb-14 axi_fan_control_0/irq
|