diff --git a/rfsoc_eval_nco/rfsoc_eval_nco.runs/impl_1/system_top.bit b/rfsoc_eval_nco/rfsoc_eval_nco.runs/impl_1/system_top.bit index 462be98..3bb7e86 100644 --- a/rfsoc_eval_nco/rfsoc_eval_nco.runs/impl_1/system_top.bit +++ b/rfsoc_eval_nco/rfsoc_eval_nco.runs/impl_1/system_top.bit @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:57dbd0074971dc9f4a588b27e4a89aa7621934349d8e1606558feeb404041c1a +oid sha256:c2892a491d0b87e56c5e5eebb481fb4e3516aad76e231e439ecf239a7e93120e size 34437474 diff --git a/rfsoc_eval_nco/rfsoc_eval_nco.srcs/sources_1/ip/ila_hop/ila_hop.xci b/rfsoc_eval_nco/rfsoc_eval_nco.srcs/sources_1/ip/ila_hop/ila_hop.xci index b12887f..ca69cb9 100644 --- a/rfsoc_eval_nco/rfsoc_eval_nco.srcs/sources_1/ip/ila_hop/ila_hop.xci +++ b/rfsoc_eval_nco/rfsoc_eval_nco.srcs/sources_1/ip/ila_hop/ila_hop.xci @@ -2039,7 +2039,7 @@ "C_PROBE17_WIDTH": [ { "value": "1", "resolve_type": "user", "format": "long", "usage": "all" } ], "C_PROBE16_WIDTH": [ { "value": "1", "resolve_type": "user", "format": "long", "usage": "all" } ], "C_PROBE15_WIDTH": [ { "value": "1", "resolve_type": "user", "format": "long", "usage": "all" } ], - "C_PROBE14_WIDTH": [ { "value": "1", "resolve_type": "user", "format": "long", "usage": "all" } ], + "C_PROBE14_WIDTH": [ { "value": "1", "value_src": "user", "resolve_type": "user", "format": "long", "usage": "all" } ], "C_PROBE13_WIDTH": [ { "value": "1", "value_src": "user", "resolve_type": "user", "format": "long", "usage": "all" } ], "C_PROBE12_WIDTH": [ { "value": "1", "value_src": "user", "resolve_type": "user", "format": "long", "usage": "all" } ], "C_PROBE11_WIDTH": [ { "value": "1", "value_src": "user", "resolve_type": "user", "format": "long", "usage": "all" } ], @@ -2054,7 +2054,7 @@ "C_PROBE2_WIDTH": [ { "value": "32", "value_src": "user", "resolve_type": "user", "format": "long", "usage": "all" } ], "C_PROBE1_WIDTH": [ { "value": "32", "value_src": "user", "resolve_type": "user", "format": "long", "usage": "all" } ], "C_PROBE0_WIDTH": [ { "value": "1", "resolve_type": "user", "format": "long", "usage": "all" } ], - "C_DATA_DEPTH": [ { "value": "16384", "value_src": "user", "resolve_type": "user", "format": "long", "usage": "all" } ], + "C_DATA_DEPTH": [ { "value": "32768", "value_src": "user", "resolve_type": "user", "format": "long", "usage": "all" } ], "C_NUM_OF_PROBES": [ { "value": "14", "value_src": "user", "resolve_type": "user", "format": "long", "usage": "all" } ], "C_XLNX_HW_PROBE_INFO": [ { "value": "DEFAULT", "resolve_type": "user", "usage": "all" } ], "Component_Name": [ { "value": "ila_hop", "resolve_type": "user", "usage": "all" } ], @@ -3082,7 +3082,7 @@ "C_PROBE17_MU_CNT": [ { "value": "1", "resolve_type": "user", "format": "long", "usage": "all" } ], "C_PROBE16_MU_CNT": [ { "value": "1", "resolve_type": "user", "format": "long", "usage": "all" } ], "C_PROBE15_MU_CNT": [ { "value": "1", "resolve_type": "user", "format": "long", "usage": "all" } ], - "C_PROBE14_MU_CNT": [ { "value": "1", "resolve_type": "user", "format": "long", "usage": "all" } ], + "C_PROBE14_MU_CNT": [ { "value": "2", "resolve_type": "user", "format": "long", "usage": "all" } ], "C_PROBE13_MU_CNT": [ { "value": "2", "resolve_type": "user", "format": "long", "usage": "all" } ], "C_PROBE12_MU_CNT": [ { "value": "2", "resolve_type": "user", "format": "long", "usage": "all" } ], "C_PROBE11_MU_CNT": [ { "value": "2", "resolve_type": "user", "format": "long", "usage": "all" } ], @@ -3135,7 +3135,7 @@ "C_NUM_MONITOR_SLOTS": [ { "value": "1", "resolve_type": "generated", "format": "long", "usage": "all" } ], "C_ENABLE_ILA_AXI_MON": [ { "value": "0", "resolve_type": "generated", "format": "long", "usage": "all" } ], "C_NUM_OF_PROBES": [ { "value": "14", "resolve_type": "generated", "format": "long", "usage": "all" } ], - "C_DATA_DEPTH": [ { "value": "16384", "resolve_type": "generated", "format": "long", "usage": "all" } ], + "C_DATA_DEPTH": [ { "value": "32768", "resolve_type": "generated", "format": "long", "usage": "all" } ], "C_MAJOR_VERSION": [ { "value": "2024", "resolve_type": "generated", "format": "long", "usage": "all" } ], "C_MINOR_VERSION": [ { "value": "1", "resolve_type": "generated", "format": "long", "usage": "all" } ], "C_BUILD_REVISION": [ { "value": "0", "format": "long", "usage": "all" } ], @@ -5220,7 +5220,7 @@ "C_PROBE11_MU_CNT": [ { "value": "2", "resolve_type": "dependent", "format": "long", "usage": "all" } ], "C_PROBE12_MU_CNT": [ { "value": "2", "resolve_type": "dependent", "format": "long", "usage": "all" } ], "C_PROBE13_MU_CNT": [ { "value": "2", "resolve_type": "dependent", "format": "long", "usage": "all" } ], - "C_PROBE14_MU_CNT": [ { "value": "1", "resolve_type": "dependent", "format": "long", "usage": "all" } ], + "C_PROBE14_MU_CNT": [ { "value": "2", "resolve_type": "dependent", "format": "long", "usage": "all" } ], "C_PROBE15_MU_CNT": [ { "value": "1", "resolve_type": "dependent", "format": "long", "usage": "all" } ], "C_PROBE16_MU_CNT": [ { "value": "1", "resolve_type": "dependent", "format": "long", "usage": "all" } ], "C_PROBE17_MU_CNT": [ { "value": "1", "resolve_type": "dependent", "format": "long", "usage": "all" } ], diff --git a/rfsoc_eval_nco/rfsoc_eval_nco.srcs/sources_1/new/system_top.v b/rfsoc_eval_nco/rfsoc_eval_nco.srcs/sources_1/new/system_top.v index b0431b1..517fda6 100644 --- a/rfsoc_eval_nco/rfsoc_eval_nco.srcs/sources_1/new/system_top.v +++ b/rfsoc_eval_nco/rfsoc_eval_nco.srcs/sources_1/new/system_top.v @@ -862,7 +862,7 @@ always @(posedge ps_clk_100m) begin // increase addr when hopping is enabled, otherwise get hop freq number if (vio_hop_en) begin if (hop_cnt == 'b0) begin - hop_ram_addr <= (hop_ram_addr < hop_freq_num) ? hop_ram_addr + 1'b1 : 1'b1; + hop_ram_addr <= (hop_ram_addr < (hop_freq_num << 3)) ? hop_ram_addr + 48'd8 : 48'd8; end end else begin @@ -879,13 +879,18 @@ always @(posedge ps_clk_100m) begin // get hop frequency if (vio_hop_en) begin - nco_freq <= (hop_cnt == 1'b1) ? hop_ram_dout[0 +: 48] : nco_freq; + // hop_cnt == 0, hop_ram_addr++ + // hop_cnt == 1, read ram data + // hop_cnt == 2, ram data valid + nco_freq <= (hop_cnt == 32'd2) ? hop_ram_dout[0 +: 48] : nco_freq; end else begin nco_freq <= {vio_hop_freq,32'b0}; end if (vio_hop_en) begin - nco_update_req <= (hop_cnt == 2'd2) ? 1'b1 : 1'b0; + // hop_cnt == 3, frequency valid + // hop_cnt == 4, hold for another extra clock cycle for safe capture + nco_update_req <= ((hop_cnt == 32'd3) || (hop_cnt == 32'd4)) ? 1'b1 : 1'b0; end else begin nco_update_req <= (vio_hop_trig_d & ~vio_hop_trig) ? 1'b1 : 1'b0; diff --git a/rfsoc_eval_nco/rfsoc_eval_nco.srcs/utils_1/imports/synth_1/system_top.dcp b/rfsoc_eval_nco/rfsoc_eval_nco.srcs/utils_1/imports/synth_1/system_top.dcp index 7edab66..793c41e 100644 --- a/rfsoc_eval_nco/rfsoc_eval_nco.srcs/utils_1/imports/synth_1/system_top.dcp +++ b/rfsoc_eval_nco/rfsoc_eval_nco.srcs/utils_1/imports/synth_1/system_top.dcp @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:76da1e268fe1f0b28cb10d08cb8216e5fa6c80c6044bd08b2753d65a209e9508 -size 491575 +oid sha256:ce9573a9949e386d7ebf696ca5c74bee9d41243fc72274cce5aff54b88ab3007 +size 493167 diff --git a/rfsoc_eval_nco/rfsoc_eval_nco.xpr b/rfsoc_eval_nco/rfsoc_eval_nco.xpr index 3502ced..df4fce2 100644 --- a/rfsoc_eval_nco/rfsoc_eval_nco.xpr +++ b/rfsoc_eval_nco/rfsoc_eval_nco.xpr @@ -66,13 +66,13 @@