diff --git a/library/util_adc_pack/util_adc_pack.v b/library/util_adc_pack/util_adc_pack.v index 750cca89c..633a20727 100644 --- a/library/util_adc_pack/util_adc_pack.v +++ b/library/util_adc_pack/util_adc_pack.v @@ -138,7 +138,6 @@ module util_adc_pack ( reg [7:0] en4 = 0; reg dvalid = 0; reg chan_valid = 0; - reg chan_valid_d1 = 0; reg [(DATA_WIDTH*CHANNELS-1):0] ddata = 0; reg [(DATA_WIDTH-1):0] chan_data_0_r; diff --git a/library/util_adc_pack/util_adc_pack_hw.tcl b/library/util_adc_pack/util_adc_pack_hw.tcl old mode 100755 new mode 100644 index fadf1dd02..1f07803d0 --- a/library/util_adc_pack/util_adc_pack_hw.tcl +++ b/library/util_adc_pack/util_adc_pack_hw.tcl @@ -1,5 +1,4 @@ - package require -exact qsys 13.0 source ../scripts/adi_env.tcl @@ -56,34 +55,31 @@ add_interface_port channels_data chan_enable_3 chan_enable_3 Input 1 add_interface_port channels_data chan_valid_3 chan_valid_3 Input 1 add_interface_port channels_data chan_data_3 chan_data_3 Input DATA_WIDTH - - - proc util_adc_pack_elaborate {} { -set DW [ get_parameter_value DATA_WIDTH ] -set CHAN [ get_parameter_value CHANNELS ] -add_interface_port channels_data dvalid dvalid Output 1 -add_interface_port channels_data dsync dsync Output 1 -add_interface_port channels_data ddata ddata Output [expr {$DW * $CHAN}] + set DW [ get_parameter_value DATA_WIDTH ] + set CHAN [ get_parameter_value CHANNELS ] + add_interface_port channels_data dvalid dvalid Output 1 + add_interface_port channels_data dsync dsync Output 1 + add_interface_port channels_data ddata ddata Output [expr {$DW * $CHAN}] -if {[get_parameter_value CHANNELS] == 8} { + if {[get_parameter_value CHANNELS] == 8} { -add_interface_port channels_data chan_enable_4 chan_enable_4 Input 1 -add_interface_port channels_data chan_valid_4 chan_valid_4 Input 1 -add_interface_port channels_data chan_data_4 chan_data_4 Input DATA_WIDTH + add_interface_port channels_data chan_enable_4 chan_enable_4 Input 1 + add_interface_port channels_data chan_valid_4 chan_valid_4 Input 1 + add_interface_port channels_data chan_data_4 chan_data_4 Input DATA_WIDTH -add_interface_port channels_data chan_enable_5 chan_enable_5 Input 1 -add_interface_port channels_data chan_valid_5 chan_valid_5 Input 1 -add_interface_port channels_data chan_data_5 chan_data_5 Input DATA_WIDTH + add_interface_port channels_data chan_enable_5 chan_enable_5 Input 1 + add_interface_port channels_data chan_valid_5 chan_valid_5 Input 1 + add_interface_port channels_data chan_data_5 chan_data_5 Input DATA_WIDTH -add_interface_port channels_data chan_enable_6 chan_enable_6 Input 1 -add_interface_port channels_data chan_valid_6 chan_valid_6 Input 1 -add_interface_port channels_data chan_data_6 chan_data_6 Input DATA_WIDTH + add_interface_port channels_data chan_enable_6 chan_enable_6 Input 1 + add_interface_port channels_data chan_valid_6 chan_valid_6 Input 1 + add_interface_port channels_data chan_data_6 chan_data_6 Input DATA_WIDTH -add_interface_port channels_data chan_enable_7 chan_enable_7 Input 1 -add_interface_port channels_data chan_valid_7 chan_valid_7 Input 1 -add_interface_port channels_data chan_data_7 chan_data_7 Input DATA_WIDTH + add_interface_port channels_data chan_enable_7 chan_enable_7 Input 1 + add_interface_port channels_data chan_valid_7 chan_valid_7 Input 1 + add_interface_port channels_data chan_data_7 chan_data_7 Input DATA_WIDTH } } diff --git a/library/util_adc_pack/util_adc_pack_ip.tcl b/library/util_adc_pack/util_adc_pack_ip.tcl old mode 100755 new mode 100644 diff --git a/library/util_dac_unpack/util_dac_unpack.v b/library/util_dac_unpack/util_dac_unpack.v index a27f1abde..17c005ae3 100644 --- a/library/util_dac_unpack/util_dac_unpack.v +++ b/library/util_dac_unpack/util_dac_unpack.v @@ -141,7 +141,6 @@ module util_dac_unpack ( reg [ 15:0] dac_data_07 = 16'h0; reg [127:0] buffer_r = 128'h0; reg dma_rd = 1'b0; - reg start = 1'b0; assign enable_cnt = dac_enable_07 + dac_enable_06 + dac_enable_05 + dac_enable_04 + dac_enable_03 + dac_enable_02 + dac_enable_01 + dac_enable_00; diff --git a/library/util_dac_unpack/util_dac_unpack_hw.tcl b/library/util_dac_unpack/util_dac_unpack_hw.tcl new file mode 100644 index 000000000..50bbb5f2e --- /dev/null +++ b/library/util_dac_unpack/util_dac_unpack_hw.tcl @@ -0,0 +1,56 @@ + +package require -exact qsys 13.0 +source ../scripts/adi_env.tcl + +set_module_property NAME util_dac_unpack +set_module_property DESCRIPTION "Util DAC data unpacker" +set_module_property VERSION 1.0 +set_module_property DISPLAY_NAME util_dac_unpack + +# files + +add_fileset quartus_synth QUARTUS_SYNTH "" "Quartus Synthesis" +set_fileset_property quartus_synth TOP_LEVEL util_dac_unpack +add_fileset_file util_dac_unpack.v VERILOG PATH util_dac_unpack.v + +add_interface data_clock clock end +add_interface_port data_clock clk clk Input 1 + +add_interface channels_data conduit end +set_interface_property channels_data associatedClock data_clock +add_interface_port channels_data dac_enable_00 dac_enable_00 Input 1 +add_interface_port channels_data dac_valid_00 dac_valid_00 Input 1 +add_interface_port channels_data dac_data_00 dac_data_00 Output 16 + +add_interface_port channels_data dac_enable_01 dac_enable_01 Input 1 +add_interface_port channels_data dac_valid_01 dac_valid_01 Input 1 +add_interface_port channels_data dac_data_01 dac_data_01 Output 16 + +add_interface_port channels_data dac_enable_02 dac_enable_02 Input 1 +add_interface_port channels_data dac_valid_02 dac_valid_02 Input 1 +add_interface_port channels_data dac_data_02 dac_data_02 Input 16 + +add_interface_port channels_data dac_enable_03 dac_enable_03 Input 1 +add_interface_port channels_data dac_valid_03 dac_valid_03 Input 1 +add_interface_port channels_data dac_data_03 dac_data_03 Input 16 + +add_interface_port channels_data dac_enable_04 dac_enable_04 Input 1 +add_interface_port channels_data dac_valid_04 dac_valid_04 Input 1 +add_interface_port channels_data dac_data_04 dac_data_04 Input 16 + +add_interface_port channels_data dac_enable_05 dac_enable_05 Input 1 +add_interface_port channels_data dac_valid_05 dac_valid_05 Input 1 +add_interface_port channels_data dac_data_05 dac_data_05 Input 16 + +add_interface_port channels_data dac_enable_06 dac_enable_06 Input 1 +add_interface_port channels_data dac_valid_06 dac_valid_06 Input 1 +add_interface_port channels_data dac_data_06 dac_data_06 Input 16 + +add_interface_port channels_data dac_enable_07 dac_enable_07 Input 1 +add_interface_port channels_data dac_valid_07 dac_valid_07 Input 1 +add_interface_port channels_data dac_data_07 dac_data_07 Input 16 + +add_interface_port channels_data fifo_valid fifo_valid Input 1 +add_interface_port channels_data dma_rd dma_rd Output 1 +add_interface_port channels_data dma_data dma_data Input 128 + diff --git a/library/util_dac_unpack/util_dac_unpack_ip.tcl b/library/util_dac_unpack/util_dac_unpack_ip.tcl old mode 100755 new mode 100644 diff --git a/projects/fmcomms2/c5soc/system_bd.qsys b/projects/fmcomms2/c5soc/system_bd.qsys index f6fb4d5ab..44b4c4419 100644 --- a/projects/fmcomms2/c5soc/system_bd.qsys +++ b/projects/fmcomms2/c5soc/system_bd.qsys @@ -16,7 +16,7 @@ { datum _sortIndex { - value = "7"; + value = "8"; type = "int"; } } @@ -40,7 +40,7 @@ { datum _sortIndex { - value = "8"; + value = "9"; type = "int"; } } @@ -81,6 +81,14 @@ type = "String"; } } + element sys_int_mem.s1 + { + datum baseAddress + { + value = "0"; + type = "String"; + } + } element sys_gpio.s1 { datum _lockedAddress @@ -94,19 +102,11 @@ type = "String"; } } - element sys_int_mem.s1 + element axi_ad9361.s_axi { datum baseAddress { - value = "0"; - type = "String"; - } - } - element axi_dmac_adc.s_axi - { - datum baseAddress - { - value = "0"; + value = "131072"; type = "String"; } } @@ -118,11 +118,11 @@ type = "String"; } } - element axi_ad9361.s_axi + element axi_dmac_adc.s_axi { datum baseAddress { - value = "131072"; + value = "0"; type = "String"; } } @@ -130,7 +130,7 @@ { datum _sortIndex { - value = "9"; + value = "10"; type = "int"; } } @@ -182,11 +182,19 @@ type = "int"; } } + element util_dac_unpack + { + datum _sortIndex + { + value = "7"; + type = "int"; + } + } element vga_clock_video_output { datum _sortIndex { - value = "13"; + value = "14"; type = "int"; } } @@ -194,7 +202,7 @@ { datum _sortIndex { - value = "12"; + value = "13"; type = "int"; } } @@ -202,7 +210,7 @@ { datum _sortIndex { - value = "11"; + value = "12"; type = "int"; } } @@ -210,7 +218,7 @@ { datum _sortIndex { - value = "10"; + value = "11"; type = "int"; } } @@ -349,6 +357,16 @@ internal="adc_pack.channels_data" type="conduit" dir="end" /> + + @@ -926,17 +944,14 @@ - - - - + @@ -952,8 +967,6 @@ - - @@ -1259,6 +1272,13 @@ + + +