Archived
update phase comp with cmpy; add var cal module
This commit is contained in:
@@ -0,0 +1,196 @@
|
||||
`timescale 1ns / 1ps
|
||||
//////////////////////////////////////////////////////////////////////////////////
|
||||
// Company:
|
||||
// Engineer:
|
||||
//
|
||||
// Create Date: 2023/05/16 02:00:43
|
||||
// Design Name:
|
||||
// Module Name: phase_compensate
|
||||
// Project Name:
|
||||
// Target Devices:
|
||||
// Tool Versions:
|
||||
// Description:
|
||||
//
|
||||
// Dependencies:
|
||||
//
|
||||
// Revision:
|
||||
// Revision 0.01 - File Created
|
||||
// Additional Comments:
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
module phase_compensate(
|
||||
input clk ,
|
||||
input rst ,
|
||||
input [11:0] vio_sin_0 ,
|
||||
input [11:0] vio_sin_1 ,
|
||||
input [11:0] vio_sin_2 ,
|
||||
input [11:0] vio_sin_3 ,
|
||||
input [11:0] vio_cos_0 ,
|
||||
input [11:0] vio_cos_1 ,
|
||||
input [11:0] vio_cos_2 ,
|
||||
input [11:0] vio_cos_3 ,
|
||||
input [11:0] din_i_0 ,
|
||||
input [11:0] din_i_1 ,
|
||||
input [11:0] din_i_2 ,
|
||||
input [11:0] din_i_3 ,
|
||||
input [11:0] din_q_0 ,
|
||||
input [11:0] din_q_1 ,
|
||||
input [11:0] din_q_2 ,
|
||||
input [11:0] din_q_3 ,
|
||||
input [4:0] vio_trunc ,
|
||||
|
||||
output [11:0] dout_0_i ,
|
||||
output [11:0] dout_1_i ,
|
||||
output [11:0] dout_2_i ,
|
||||
output [11:0] dout_3_i ,
|
||||
output [11:0] dout_0_q ,
|
||||
output [11:0] dout_1_q ,
|
||||
output [11:0] dout_2_q ,
|
||||
output [11:0] dout_3_q ,
|
||||
output trunc_overflow
|
||||
);
|
||||
|
||||
wire [63:0] dout_comp_0;
|
||||
wire [63:0] dout_comp_1;
|
||||
wire [63:0] dout_comp_2;
|
||||
wire [63:0] dout_comp_3;
|
||||
cmpy_12x12 cmpy_12x12_0 (
|
||||
.aclk(clk), // input wire aclk
|
||||
.s_axis_a_tvalid(1'd1), // input wire s_axis_a_tvalid
|
||||
.s_axis_a_tdata({{4{vio_sin_0[11]}},vio_sin_0[11:0],{4{vio_cos_0[11]}},vio_cos_0[11:0]}), // input wire [31 : 0] s_axis_a_tdata
|
||||
.s_axis_b_tvalid(1'd1), // input wire s_axis_b_tvalid
|
||||
.s_axis_b_tdata({{4{din_q_0[11]}},din_q_0[11:0],{4{din_i_0[11]}},din_i_0[11:0]}), // input wire [31 : 0] s_axis_b_tdata
|
||||
.m_axis_dout_tvalid(), // output wire m_axis_dout_tvalid
|
||||
.m_axis_dout_tdata(dout_comp_0) // output wire [63 : 0] m_axis_dout_tdata
|
||||
);
|
||||
|
||||
cmpy_12x12 cmpy_12x12_1 (
|
||||
.aclk(clk), // input wire aclk
|
||||
.s_axis_a_tvalid(1'd1), // input wire s_axis_a_tvalid
|
||||
.s_axis_a_tdata({{4{vio_sin_1[11]}},vio_sin_1[11:0],{4{vio_cos_1[11]}},vio_cos_1[11:0]}), // input wire [31 : 0] s_axis_a_tdata
|
||||
.s_axis_b_tvalid(1'd1), // input wire s_axis_b_tvalid
|
||||
.s_axis_b_tdata({{4{din_q_1[11]}},din_q_1[11:0],{4{din_i_1[11]}},din_i_1[11:0]}), // input wire [31 : 0] s_axis_b_tdata
|
||||
.m_axis_dout_tvalid(), // output wire m_axis_dout_tvalid
|
||||
.m_axis_dout_tdata(dout_comp_1) // output wire [63 : 0] m_axis_dout_tdata
|
||||
);
|
||||
|
||||
cmpy_12x12 cmpy_12x12_2 (
|
||||
.aclk(clk), // input wire aclk
|
||||
.s_axis_a_tvalid(1'd1), // input wire s_axis_a_tvalid
|
||||
.s_axis_a_tdata({{4{vio_sin_2[11]}},vio_sin_2[11:0],{4{vio_cos_2[11]}},vio_cos_2[11:0]}), // input wire [31 : 0] s_axis_a_tdata
|
||||
.s_axis_b_tvalid(1'd1), // input wire s_axis_b_tvalid
|
||||
.s_axis_b_tdata({{4{din_q_2[11]}},din_q_2[11:0],{4{din_i_2[11]}},din_i_2[11:0]}), // input wire [31 : 0] s_axis_b_tdata
|
||||
.m_axis_dout_tvalid(), // output wire m_axis_dout_tvalid
|
||||
.m_axis_dout_tdata(dout_comp_2) // output wire [63 : 0] m_axis_dout_tdata
|
||||
);
|
||||
|
||||
cmpy_12x12 cmpy_12x12_3 (
|
||||
.aclk(clk), // input wire aclk
|
||||
.s_axis_a_tvalid(1'd1), // input wire s_axis_a_tvalid
|
||||
.s_axis_a_tdata({{4{vio_sin_3[11]}},vio_sin_3[11:0],{4{vio_cos_3[11]}},vio_cos_3[11:0]}), // input wire [31 : 0] s_axis_a_tdata
|
||||
.s_axis_b_tvalid(1'd1), // input wire s_axis_b_tvalid
|
||||
.s_axis_b_tdata({{4{din_q_3[11]}},din_q_3[11:0],{4{din_i_3[11]}},din_i_3[11:0]}), // input wire [31 : 0] s_axis_b_tdata
|
||||
.m_axis_dout_tvalid(), // output wire m_axis_dout_tvalid
|
||||
.m_axis_dout_tdata(dout_comp_3) // output wire [63 : 0] m_axis_dout_tdata
|
||||
);
|
||||
wire [11:0] dout_trunc_0i, dout_trunc_0q;
|
||||
wire [11:0] dout_trunc_1i, dout_trunc_1q;
|
||||
wire [11:0] dout_trunc_2i, dout_trunc_2q;
|
||||
wire [11:0] dout_trunc_3i, dout_trunc_3q;
|
||||
wire [11:0] trunc_overflow_0i, trunc_overflow_0q;
|
||||
wire [11:0] trunc_overflow_1i, trunc_overflow_1q;
|
||||
wire [11:0] trunc_overflow_2i, trunc_overflow_2q;
|
||||
wire [11:0] trunc_overflow_3i, trunc_overflow_3q;
|
||||
trunc_32bit_to_12bit trunc_32bit_to_12bit_0i(
|
||||
.clk(clk),
|
||||
.rst(rst),
|
||||
.trunc_32bit_in({{7{dout_comp_0[24]}},dout_comp_0[24:0]}),
|
||||
.vio_trunc(vio_trunc),
|
||||
|
||||
.trunc_12bit_out(dout_trunc_0i),
|
||||
.trunc_overflow(trunc_overflow_0i)
|
||||
);
|
||||
|
||||
trunc_32bit_to_12bit trunc_32bit_to_12bit_0q(
|
||||
.clk(clk),
|
||||
.rst(rst),
|
||||
.trunc_32bit_in({{7{dout_comp_0[56]}},dout_comp_0[56:32]}),
|
||||
.vio_trunc(vio_trunc),
|
||||
|
||||
.trunc_12bit_out(dout_trunc_0q),
|
||||
.trunc_overflow(trunc_overflow_0q)
|
||||
);
|
||||
|
||||
trunc_32bit_to_12bit trunc_32bit_to_12bit_1i(
|
||||
.clk(clk),
|
||||
.rst(rst),
|
||||
.trunc_32bit_in({{7{dout_comp_1[24]}},dout_comp_1[24:0]}),
|
||||
.vio_trunc(vio_trunc),
|
||||
|
||||
.trunc_12bit_out(dout_trunc_1i),
|
||||
.trunc_overflow(trunc_overflow_1i)
|
||||
);
|
||||
|
||||
trunc_32bit_to_12bit trunc_32bit_to_12bit_1q(
|
||||
.clk(clk),
|
||||
.rst(rst),
|
||||
.trunc_32bit_in({{7{dout_comp_1[56]}},dout_comp_1[56:32]}),
|
||||
.vio_trunc(vio_trunc),
|
||||
|
||||
.trunc_12bit_out(dout_trunc_1q),
|
||||
.trunc_overflow(trunc_overflow_1q)
|
||||
);
|
||||
|
||||
trunc_32bit_to_12bit trunc_32bit_to_12bit_2i(
|
||||
.clk(clk),
|
||||
.rst(rst),
|
||||
.trunc_32bit_in({{7{dout_comp_2[24]}},dout_comp_2[24:0]}),
|
||||
.vio_trunc(vio_trunc),
|
||||
|
||||
.trunc_12bit_out(dout_trunc_2i),
|
||||
.trunc_overflow(trunc_overflow_2i)
|
||||
);
|
||||
|
||||
trunc_32bit_to_12bit trunc_32bit_to_12bit_2q(
|
||||
.clk(clk),
|
||||
.rst(rst),
|
||||
.trunc_32bit_in({{7{dout_comp_2[56]}},dout_comp_2[56:32]}),
|
||||
.vio_trunc(vio_trunc),
|
||||
|
||||
.trunc_12bit_out(dout_trunc_2q),
|
||||
.trunc_overflow(trunc_overflow_2q)
|
||||
);
|
||||
|
||||
trunc_32bit_to_12bit trunc_32bit_to_12bit_3i(
|
||||
.clk(clk),
|
||||
.rst(rst),
|
||||
.trunc_32bit_in({{7{dout_comp_3[24]}},dout_comp_3[24:0]}),
|
||||
.vio_trunc(vio_trunc),
|
||||
|
||||
.trunc_12bit_out(dout_trunc_3i),
|
||||
.trunc_overflow(trunc_overflow_3i)
|
||||
);
|
||||
|
||||
trunc_32bit_to_12bit trunc_32bit_to_12bit_3q(
|
||||
.clk(clk),
|
||||
.rst(rst),
|
||||
.trunc_32bit_in({{7{dout_comp_3[56]}},dout_comp_3[56:32]}),
|
||||
.vio_trunc(vio_trunc),
|
||||
|
||||
.trunc_12bit_out(dout_trunc_3q),
|
||||
.trunc_overflow(trunc_overflow_3q)
|
||||
);
|
||||
|
||||
assign dout_0_i = dout_trunc_0i;
|
||||
assign dout_1_i = dout_trunc_1i;
|
||||
assign dout_2_i = dout_trunc_2i;
|
||||
assign dout_3_i = dout_trunc_3i;
|
||||
assign dout_0_q = dout_trunc_0q;
|
||||
assign dout_1_q = dout_trunc_1q;
|
||||
assign dout_2_q = dout_trunc_2q;
|
||||
assign dout_3_q = dout_trunc_3q;
|
||||
|
||||
assign trunc_overflow = trunc_overflow_3q || trunc_overflow_2q || trunc_overflow_1q || trunc_overflow_0q || trunc_overflow_3i || trunc_overflow_2i || trunc_overflow_1i || trunc_overflow_0i;
|
||||
endmodule
|
||||
@@ -153,41 +153,102 @@ ad9361_phase_cal_coarse u_ad9361_phase_cal
|
||||
////////////////////////////// Phase Compensation //////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// input data
|
||||
wire phase_comp_din_valid;
|
||||
wire [CHANNEL_NUM*PHASE_WIDTH-1 : 0] phase_comp_phase;
|
||||
wire [CHANNEL_NUM*ADC_DATA_WIDTH-1 : 0] phase_comp_din_real;
|
||||
wire [CHANNEL_NUM*ADC_DATA_WIDTH-1 : 0] phase_comp_din_imag;
|
||||
// wire phase_comp_din_valid;
|
||||
// wire [CHANNEL_NUM*PHASE_WIDTH-1 : 0] phase_comp_phase;
|
||||
// wire [CHANNEL_NUM*ADC_DATA_WIDTH-1 : 0] phase_comp_din_real;
|
||||
// wire [CHANNEL_NUM*ADC_DATA_WIDTH-1 : 0] phase_comp_din_imag;
|
||||
|
||||
assign phase_comp_din_valid = ad9361_cal_valid;
|
||||
assign phase_comp_phase = {phase_ch4, phase_ch3, phase_ch2, phase_ch1};
|
||||
assign phase_comp_din_real = {rx_cal_ch4_i, rx_cal_ch3_i, rx_cal_ch2_i, rx_cal_ch1_i};
|
||||
assign phase_comp_din_imag = {rx_cal_ch4_q, rx_cal_ch3_q, rx_cal_ch2_q, rx_cal_ch1_q};
|
||||
// assign phase_comp_din_valid = ad9361_cal_valid;
|
||||
// assign phase_comp_phase = {phase_ch4, phase_ch3, phase_ch2, phase_ch1};
|
||||
// assign phase_comp_din_real = {rx_cal_ch4_i, rx_cal_ch3_i, rx_cal_ch2_i, rx_cal_ch1_i};
|
||||
// assign phase_comp_din_imag = {rx_cal_ch4_q, rx_cal_ch3_q, rx_cal_ch2_q, rx_cal_ch1_q};
|
||||
|
||||
// output data
|
||||
wire phase_comp_dout_valid;
|
||||
wire [CHANNEL_NUM*ADC_DATA_WIDTH-1:0] phase_comp_dout_real;
|
||||
wire [CHANNEL_NUM*ADC_DATA_WIDTH-1:0] phase_comp_dout_imag;
|
||||
|
||||
phase_comp #(
|
||||
.DATA_WIDTH (ADC_DATA_WIDTH ),
|
||||
.CORDIC_WIDTH (PHASE_WIDTH ),
|
||||
.CHANNEL_NUM (CHANNEL_NUM )
|
||||
) u_phase_comp
|
||||
// phase_comp #(
|
||||
// .DATA_WIDTH (ADC_DATA_WIDTH ),
|
||||
// .CORDIC_WIDTH (PHASE_WIDTH ),
|
||||
// .CHANNEL_NUM (CHANNEL_NUM )
|
||||
// ) u_phase_comp
|
||||
// (
|
||||
// // clock & reset
|
||||
// .clk (sys_clk ),
|
||||
// .rst (sys_rst ),
|
||||
|
||||
// // input data
|
||||
// .din_valid (phase_comp_din_valid ),
|
||||
// .phase (phase_comp_phase ),
|
||||
// .din_real (phase_comp_din_real ),
|
||||
// .din_imag (phase_comp_din_imag ),
|
||||
|
||||
// // output data
|
||||
// .dout_valid (phase_comp_dout_valid ),
|
||||
// .dout_real (phase_comp_dout_real ),
|
||||
// .dout_imag (phase_comp_dout_imag )
|
||||
// );
|
||||
|
||||
|
||||
|
||||
(*dont_touch = "true"*) wire [11:0] vio_sin_0;
|
||||
(*dont_touch = "true"*) wire [11:0] vio_sin_1;
|
||||
(*dont_touch = "true"*) wire [11:0] vio_sin_2;
|
||||
(*dont_touch = "true"*) wire [11:0] vio_sin_3;
|
||||
(*dont_touch = "true"*) wire [11:0] vio_cos_0;
|
||||
(*dont_touch = "true"*) wire [11:0] vio_cos_1;
|
||||
(*dont_touch = "true"*) wire [11:0] vio_cos_2;
|
||||
(*dont_touch = "true"*) wire [11:0] vio_cos_3;
|
||||
(*dont_touch = "true"*) wire [ 4:0] vio_trunc;
|
||||
(*dont_touch = "true"*) wire trunc_overflow;
|
||||
|
||||
(*dont_touch = "true"*) wire [11:0] rx_comp_ch1_i;
|
||||
(*dont_touch = "true"*) wire [11:0] rx_comp_ch1_q;
|
||||
(*dont_touch = "true"*) wire [11:0] rx_comp_ch2_i;
|
||||
(*dont_touch = "true"*) wire [11:0] rx_comp_ch2_q;
|
||||
(*dont_touch = "true"*) wire [11:0] rx_comp_ch3_i;
|
||||
(*dont_touch = "true"*) wire [11:0] rx_comp_ch3_q;
|
||||
(*dont_touch = "true"*) wire [11:0] rx_comp_ch4_i;
|
||||
(*dont_touch = "true"*) wire [11:0] rx_comp_ch4_q;
|
||||
|
||||
assign phase_comp_dout_valid = ad9361_cal_valid;
|
||||
assign phase_comp_dout_real = {rx_comp_ch4_i, rx_comp_ch3_i, rx_comp_ch2_i, rx_comp_ch1_i};
|
||||
assign phase_comp_dout_imag = {rx_comp_ch4_q, rx_comp_ch3_q, rx_comp_ch2_q, rx_comp_ch1_q};
|
||||
|
||||
phase_compensate u_phase_compensate
|
||||
(
|
||||
// clock & reset
|
||||
.clk (sys_clk ),
|
||||
.rst (sys_rst ),
|
||||
.clk (sys_clk ),
|
||||
.rst (sys_rst ),
|
||||
|
||||
// input data
|
||||
.din_valid (phase_comp_din_valid ),
|
||||
.phase (phase_comp_phase ),
|
||||
.din_real (phase_comp_din_real ),
|
||||
.din_imag (phase_comp_din_imag ),
|
||||
.vio_sin_0 (vio_sin_0 ),
|
||||
.vio_sin_1 (vio_sin_1 ),
|
||||
.vio_sin_2 (vio_sin_2 ),
|
||||
.vio_sin_3 (vio_sin_3 ),
|
||||
.vio_cos_0 (vio_cos_0 ),
|
||||
.vio_cos_1 (vio_cos_1 ),
|
||||
.vio_cos_2 (vio_cos_2 ),
|
||||
.vio_cos_3 (vio_cos_3 ),
|
||||
|
||||
// output data
|
||||
.dout_valid (phase_comp_dout_valid ),
|
||||
.dout_real (phase_comp_dout_real ),
|
||||
.dout_imag (phase_comp_dout_imag )
|
||||
.din_i_0 (rx_cal_ch1_i ),
|
||||
.din_i_1 (rx_cal_ch2_i ),
|
||||
.din_i_2 (rx_cal_ch3_i ),
|
||||
.din_i_3 (rx_cal_ch4_i ),
|
||||
.din_q_0 (rx_cal_ch1_q ),
|
||||
.din_q_1 (rx_cal_ch2_q ),
|
||||
.din_q_2 (rx_cal_ch3_q ),
|
||||
.din_q_3 (rx_cal_ch4_q ),
|
||||
.vio_trunc (vio_trunc ),
|
||||
|
||||
.dout_0_i (rx_comp_ch1_i ),
|
||||
.dout_1_i (rx_comp_ch2_i ),
|
||||
.dout_2_i (rx_comp_ch3_i ),
|
||||
.dout_3_i (rx_comp_ch4_i ),
|
||||
.dout_0_q (rx_comp_ch1_q ),
|
||||
.dout_1_q (rx_comp_ch2_q ),
|
||||
.dout_2_q (rx_comp_ch3_q ),
|
||||
.dout_3_q (rx_comp_ch4_q ),
|
||||
.trunc_overflow (trunc_overflow )
|
||||
);
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -304,8 +365,8 @@ wire [CHANNEL_NUM*ADC_DATA_WIDTH-1 : 0] acorr_din_real;
|
||||
wire [CHANNEL_NUM*ADC_DATA_WIDTH-1 : 0] acorr_din_imag;
|
||||
|
||||
assign acorr_din_valid = snapshot_valid;
|
||||
assign acorr_din_real = phase_comp_din_real;
|
||||
assign acorr_din_imag = phase_comp_din_imag;
|
||||
assign acorr_din_real = phase_comp_dout_real;
|
||||
assign acorr_din_imag = phase_comp_dout_imag;
|
||||
|
||||
// output data
|
||||
wire acorr_dout_valid;
|
||||
|
||||
@@ -730,21 +730,6 @@ rx_pre_process #(
|
||||
.rx_data_q (rx_data_q ) // sync to [sys_clk]
|
||||
);
|
||||
|
||||
(*dont_touch = "true"*) wire [11:0] rx_rot_ch1_i, rx_rot_ch1_q;
|
||||
(*dont_touch = "true"*) wire [11:0] rx_rot_ch2_i, rx_rot_ch2_q;
|
||||
(*dont_touch = "true"*) wire [11:0] rx_rot_ch3_i, rx_rot_ch3_q;
|
||||
(*dont_touch = "true"*) wire [11:0] rx_rot_ch4_i, rx_rot_ch4_q;
|
||||
|
||||
assign rx_rot_ch1_i = u_rx_pre_process.phase_comp_dout_real[11: 0];
|
||||
assign rx_rot_ch2_i = u_rx_pre_process.phase_comp_dout_real[23:12];
|
||||
assign rx_rot_ch3_i = u_rx_pre_process.phase_comp_dout_real[35:24];
|
||||
assign rx_rot_ch4_i = u_rx_pre_process.phase_comp_dout_real[47:36];
|
||||
|
||||
assign rx_rot_ch1_q = u_rx_pre_process.phase_comp_dout_imag[11: 0];
|
||||
assign rx_rot_ch2_q = u_rx_pre_process.phase_comp_dout_imag[23:12];
|
||||
assign rx_rot_ch3_q = u_rx_pre_process.phase_comp_dout_imag[35:24];
|
||||
assign rx_rot_ch4_q = u_rx_pre_process.phase_comp_dout_imag[47:36];
|
||||
|
||||
// temporary test cases
|
||||
rx_pre_test u_rx_pre_test
|
||||
(
|
||||
@@ -772,7 +757,32 @@ rx_pre_test u_rx_pre_test
|
||||
// <--------------------------------------------------------------------------->
|
||||
// <----------------------- insert receiver logic below ----------------------->
|
||||
// <--------------------------------------------------------------------------->
|
||||
wire var_cal_start;
|
||||
wire cal_auto_en;
|
||||
wire var_cal_busy;
|
||||
wire var_valid;
|
||||
wire [31:0] var;
|
||||
|
||||
var_cal #(
|
||||
.ACCUM_NUM (16384 ),
|
||||
.DATA_I_WIDTH (30 ),
|
||||
.DATA_O_WIDTH (32 )
|
||||
) u_var_cal
|
||||
(
|
||||
.clk (sys_clk ),
|
||||
.rst (sys_rst ),
|
||||
|
||||
.cal_start (var_cal_start ),
|
||||
.cal_auto_en(cal_auto_en ),
|
||||
.cal_busy (var_cal_busy ),
|
||||
|
||||
.din_valid (rx_data_valid ),
|
||||
.din_real (rx_data_i ),
|
||||
.din_imag (rx_data_q ),
|
||||
|
||||
.var_valid (var_valid ),
|
||||
.var (var )
|
||||
);
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
//////////////////////////////// ILAs and VIOs /////////////////////////////////
|
||||
@@ -917,17 +927,17 @@ ila_2x12x1024 u_ila_tx
|
||||
|
||||
ila_8x12_2x30_131072 u_ila_rx
|
||||
(
|
||||
.clk (sys_clk ), // input wire clk
|
||||
.probe0 (rx_rot_ch1_i ), // input wire [11:0] probe0
|
||||
.probe1 (rx_rot_ch1_q ), // input wire [11:0] probe1
|
||||
.probe2 (rx_rot_ch2_i ), // input wire [11:0] probe2
|
||||
.probe3 (rx_rot_ch2_q ), // input wire [11:0] probe3
|
||||
.probe4 (rx_rot_ch3_i ), // input wire [11:0] probe4
|
||||
.probe5 (rx_rot_ch3_q ), // input wire [11:0] probe5
|
||||
.probe6 (rx_rot_ch4_i ), // input wire [11:0] probe6
|
||||
.probe7 (rx_rot_ch4_q ), // input wire [11:0] probe7
|
||||
.probe8 (rx_data_i ), // input wire [29:0] probe8
|
||||
.probe9 (rx_data_q ) // input wire [29:0] probe9
|
||||
.clk (sys_clk ), // input wire clk
|
||||
.probe0 (u_rx_pre_process.rx_comp_ch1_i ), // input wire [11:0] probe0
|
||||
.probe1 (u_rx_pre_process.rx_comp_ch1_q ), // input wire [11:0] probe1
|
||||
.probe2 (u_rx_pre_process.rx_comp_ch2_i ), // input wire [11:0] probe2
|
||||
.probe3 (u_rx_pre_process.rx_comp_ch2_q ), // input wire [11:0] probe3
|
||||
.probe4 (u_rx_pre_process.rx_comp_ch3_i ), // input wire [11:0] probe4
|
||||
.probe5 (u_rx_pre_process.rx_comp_ch3_q ), // input wire [11:0] probe5
|
||||
.probe6 (u_rx_pre_process.rx_comp_ch4_i ), // input wire [11:0] probe6
|
||||
.probe7 (u_rx_pre_process.rx_comp_ch4_q ), // input wire [11:0] probe7
|
||||
.probe8 (rx_data_i ), // input wire [29:0] probe8
|
||||
.probe9 (rx_data_q ) // input wire [29:0] probe9
|
||||
);
|
||||
|
||||
ila_cal u_ila_cal
|
||||
@@ -1001,11 +1011,21 @@ vio_hop u_vio_hop
|
||||
|
||||
vio_phase_comp u_vio_phase_comp
|
||||
(
|
||||
.clk (sys_clk ), // input wire clk
|
||||
.probe_out0 (phase_ch1 ), // output wire [15 : 0] probe_out0
|
||||
.probe_out1 (phase_ch2 ), // output wire [15 : 0] probe_out1
|
||||
.probe_out2 (phase_ch3 ), // output wire [15 : 0] probe_out2
|
||||
.probe_out3 (phase_ch4 ) // output wire [15 : 0] probe_out3
|
||||
.clk (sys_clk ), // input wire clk
|
||||
.probe_in0 (var ), // output wire [31 : 0] probe_in0
|
||||
.probe_in1 (var_cal_busy ), // output wire [0 : 0] probe_in1
|
||||
.probe_in2 (u_rx_pre_process.trunc_overflow), // output wire [0 : 0] probe_in1
|
||||
.probe_out0 (var_cal_start ), // output wire [0 : 0] probe_out0
|
||||
.probe_out1 (cal_auto_en ), // output wire [0 : 0] probe_out1
|
||||
.probe_out2 (u_rx_pre_process.vio_sin_0 ), // output wire [11 : 0] probe_out2
|
||||
.probe_out3 (u_rx_pre_process.vio_sin_1 ), // output wire [11 : 0] probe_out3
|
||||
.probe_out4 (u_rx_pre_process.vio_sin_2 ), // output wire [11 : 0] probe_out4
|
||||
.probe_out5 (u_rx_pre_process.vio_sin_3 ), // output wire [11 : 0] probe_out5
|
||||
.probe_out6 (u_rx_pre_process.vio_cos_0 ), // output wire [11 : 0] probe_out6
|
||||
.probe_out7 (u_rx_pre_process.vio_cos_1 ), // output wire [11 : 0] probe_out7
|
||||
.probe_out8 (u_rx_pre_process.vio_cos_2 ), // output wire [11 : 0] probe_out8
|
||||
.probe_out9 (u_rx_pre_process.vio_cos_3 ), // output wire [11 : 0] probe_out9
|
||||
.probe_out10(u_rx_pre_process.vio_trunc ) // output wire [4 : 0] probe_out10
|
||||
);
|
||||
|
||||
endmodule
|
||||
|
||||
Reference in New Issue
Block a user