adrv9009_zu11eg_som: added axi_fan_control

main
Sergiu Arpadi 2019-04-19 11:23:45 +01:00 committed by Adrian Costina
parent c159909823
commit 0bbe501764
3 changed files with 33 additions and 11 deletions

View File

@ -16,6 +16,7 @@ M_DEPS += ../../library/jesd204/scripts/jesd204.tcl
LIB_DEPS += axi_dmac
LIB_DEPS += axi_i2s_adi
LIB_DEPS += axi_clkgen
LIB_DEPS += axi_fan_control
LIB_DEPS += jesd204/ad_ip_jesd204_tpl_adc
LIB_DEPS += jesd204/ad_ip_jesd204_tpl_dac
LIB_DEPS += jesd204/axi_jesd204_rx

View File

@ -4,6 +4,9 @@ add_files -fileset constrs_1 -norecurse ./carrier_constr.xdc
create_bd_port -dir O -type clk i2s_mclk
create_bd_intf_port -mode Master -vlnv analog.com:interface:i2s_rtl:1.0 i2s
create_bd_port -dir I axi_fan_tacho_i
create_bd_port -dir O axi_fan_pwm_o
# 12.288MHz clk
ad_ip_instance axi_clkgen sys_audio_clkgen
ad_ip_parameter sys_audio_clkgen CONFIG.ID 6
@ -55,7 +58,6 @@ 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
#ad_connect i2s_rx_dma/s_axis axi_i2s_adi/m_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
@ -69,16 +71,22 @@ 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_cpu_interrupt ps-6 mb-6 i2s_tx_dma/irq
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
ad_cpu_interrupt ps-7 mb-7 i2s_rx_dma/irq
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
# interconnect
ad_cpu_interconnect 0x40000000 axi_fan_control_0
ad_cpu_interconnect 0x41000000 i2s_rx_dma
ad_cpu_interconnect 0x41001000 i2s_tx_dma
ad_cpu_interconnect 0x41010000 sys_audio_clkgen
@ -86,3 +94,9 @@ 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
# 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

View File

@ -37,7 +37,7 @@
module system_top (
output fan_tach,
input fan_tach,
output fan_pwm,
input i2s_sdata_in,
output i2s_sdata_out,
@ -264,6 +264,7 @@ module system_top (
assign gpio_i[94:90] = gpio_o[94:90];
assign gpio_i[31:28] = gpio_o[31:28];
assign gpio_i[21:20] = gpio_o[21:20];
ad_iobuf #(.DATA_WIDTH(58)) i_iobuf (
.dio_t ({gpio_t[89:32]}),
@ -329,19 +330,23 @@ module system_top (
adrv9009_gpio_01_a, // 33
adrv9009_gpio_00_a})); // 32
ad_iobuf #(.DATA_WIDTH(28)) i_carrier_iobuf (
.dio_t ({gpio_t[27:0]}),
.dio_i ({gpio_o[27:0]}),
.dio_o ({gpio_i[27:0]}),
ad_iobuf #(.DATA_WIDTH(6)) i_carrier_iobuf_0 (
.dio_t ({gpio_t[27:22]}),
.dio_i ({gpio_o[27:22]}),
.dio_o ({gpio_i[27:22]}),
.dio_p ({
hmc7044_car_gpio_3, // 27
hmc7044_car_gpio_2, // 26
hmc7044_car_gpio_1, // 25
hmc7044_car_gpio_0, // 24
hmc7044_car_reset, // 23
resetb_ad9545, // 22
fan_tach, // 21
fan_pwm, // 20
resetb_ad9545})); // 22
ad_iobuf #(.DATA_WIDTH(20)) i_carrier_iobuf_1 (
.dio_t ({gpio_t[19:0]}),
.dio_i ({gpio_o[19:0]}),
.dio_o ({gpio_i[19:0]}),
.dio_p ({
pmod0_d7, // 19
pmod0_d6, // 18
pmod0_d5, // 17
@ -497,6 +502,8 @@ module system_top (
.i2s_mclk(i2s_mclk),
.i2s_sdata_in(i2s_sdata_in),
.i2s_sdata_out(i2s_sdata_out),
.axi_fan_pwm_o(fan_pwm),
.axi_fan_tacho_i(fan_tach),
.spi0_csn(spi_csn),
.spi0_miso(spi0_miso),
.spi0_mosi(spi_mosi),