simulated dl814_k7_beam

This commit is contained in:
Josh Gao
2023-03-23 11:36:28 +08:00
parent 5c679def58
commit d69ca67c60
217 changed files with 29610 additions and 8899 deletions
@@ -518,26 +518,26 @@ assign ad9361_2_tx_fb_clk = ad9361_1_tx_fb_clk;
// assign ad9361_2_tx_frame = ad9361_1_tx_frame ;
// assign ad9361_2_tx_data = ad9361_1_tx_data ;
tx_pre_process u_tx_pre_process
(
// clock & reset
.clk (sys_clk ),
.rst (sys_rst ),
// input data
.tx_data_ch1_i (tx_data_i ),
.tx_data_ch1_q (tx_data_q ),
.tx_data_ch2_i (tx_data_i ),
.tx_data_ch2_q (tx_data_q ),
// ad9361 calibration interface
.ad9361_tx_switch (ad9361_tx_switch ),
//
.bb_rshift (bb_rshift ),
// output data
.tx_ch1_i (tx_ch1_i ),
.tx_ch1_q (tx_ch1_q ),
.tx_ch2_i (tx_ch2_i ),
.tx_ch2_q (tx_ch2_q )
);
// tx_pre_process u_tx_pre_process
// (
// // clock & reset
// .clk (sys_clk ),
// .rst (sys_rst ),
// // input data
// .tx_data_ch1_i (tx_data_i ),
// .tx_data_ch1_q (tx_data_q ),
// .tx_data_ch2_i (tx_data_i ),
// .tx_data_ch2_q (tx_data_q ),
// // ad9361 calibration interface
// .ad9361_tx_switch (ad9361_tx_switch ),
// //
// .bb_rshift (bb_rshift ),
// // output data
// .tx_ch1_i (tx_ch1_i ),
// .tx_ch1_q (tx_ch1_q ),
// .tx_ch2_i (tx_ch2_i ),
// .tx_ch2_q (tx_ch2_q )
// );
// <--------------------------------------------------------------------------->
// <--------------------- insert transmitter logic below ---------------------->
@@ -571,7 +571,7 @@ wire [11:0] rx_ch3_i, rx_ch3_q;
wire [11:0] rx_ch4_i, rx_ch4_q;
wire rx_data_valid;
wire [11:0] rx_data_i, rx_data_q;
wire [29:0] rx_data_i, rx_data_q;
wire hop_start_flag ;
wire accor_stream_valid ;
@@ -619,7 +619,9 @@ ad9361_rx_map_cmos_dual u_ad9361_2_rx_map
.rx_ch2_q (rx_ch4_q ) // output [11:0] rx_ch2_q
);
rx_pre_process u_rx_pre_process
rx_pre_process #(
.OUTPUT_DATA_WIDTH (30 )
) u_rx_pre_process
(
// clock & reset
.sys_clk (sys_clk ), // sync to adc data
@@ -645,7 +647,7 @@ rx_pre_process u_rx_pre_process
.ad9361_cal_valid (ad9361_cal_valid ),
.ad9361_recal (ad9361_recal ),
// nulling algotithm interface
.hop_start_flag (hop_start_flag ), // sync to [sys_clk_4x]
.hop_start_flag (1'b0 ), // sync to [sys_clk_4x]
.accor_stream_valid (accor_stream_valid ), // sync to [clk_96m]
.accor_stream_data (accor_stream_data ), // sync to [clk_96m]
.weight_stream_data (weight_stream_data ), // sync to [clk_96m]
@@ -793,56 +795,77 @@ vio_ant_rd u_vio_ant_rd (
.probe_in5 (u_ant_rf_ctrl.Ant_RecvWord_last ) // input wire [127 : 0] probe_in5
);
ila_tx_rx u_ila_tx_rx
ila_rx u_ila_rx
(
.clk (sys_clk ), // input wire clk
.probe0 (tx_ch1_i ), // input wire [11:0] probe0
.probe1 (tx_ch1_q ), // input wire [11:0] probe1
.probe2 (u_rx_pre_process.rx_cal_ch1_i ), // input wire [11:0] probe2
.probe3 (u_rx_pre_process.rx_cal_ch1_q ), // input wire [11:0] probe3
.probe4 (u_rx_pre_process.rx_cal_ch2_i ), // input wire [11:0] probe4
.probe5 (u_rx_pre_process.rx_cal_ch2_q ), // input wire [11:0] probe5
.probe6 (u_rx_pre_process.rx_cal_ch3_i ), // input wire [11:0] probe6
.probe7 (u_rx_pre_process.rx_cal_ch3_q ), // input wire [11:0] probe7
.probe8 (u_rx_pre_process.rx_cal_ch4_i ), // input wire [11:0] probe8
.probe9 (u_rx_pre_process.rx_cal_ch4_q ) // input wire [11:0] probe9
.probe0 (u_rx_pre_process.rx_cal_ch1_i ), // input wire [11:0] probe0
.probe1 (u_rx_pre_process.rx_cal_ch1_q ), // input wire [11:0] probe1
.probe2 (u_rx_pre_process.rx_cal_ch2_i ), // input wire [11:0] probe2
.probe3 (u_rx_pre_process.rx_cal_ch2_q ), // input wire [11:0] probe3
.probe4 (u_rx_pre_process.rx_cal_ch3_i ), // input wire [11:0] probe4
.probe5 (u_rx_pre_process.rx_cal_ch3_q ), // input wire [11:0] probe5
.probe6 (u_rx_pre_process.rx_cal_ch4_i ), // input wire [11:0] probe6
.probe7 (u_rx_pre_process.rx_cal_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
ila_tx u_ila_tx
(
.clk (sys_clk ), // input wire clk
.probe0 (u_rx_pre_process.u_ad9361_phase_cal.ad9361_1_cal_start_d2 ), // input wire [0:0] probe0
.probe1 (u_rx_pre_process.u_ad9361_phase_cal.ad9361_1_cal_done ), // input wire [0:0] probe1
.probe2 (u_rx_pre_process.u_ad9361_phase_cal.ad9361_2_cal_start_d2 ), // input wire [0:0] probe2
.probe3 (u_rx_pre_process.u_ad9361_phase_cal.ad9361_2_cal_done ), // input wire [0:0] probe3
.probe4 (u_rx_pre_process.u_ad9361_phase_cal.ad9361_cal_result ), // input wire [0:0] probe4
.probe5 (u_rx_pre_process.u_ad9361_phase_cal.ad9361_recal_d2 ), // input wire [0:0] probe5
.probe6 (u_rx_pre_process.u_ad9361_phase_cal.curr_state ), // input wire [1:0] probe6
.probe7 (rx_ch2_i ), // input wire [11:0] probe7
.probe8 (rx_ch2_q ), // input wire [11:0] probe8
.probe9 (rx_ch4_i ), // input wire [11:0] probe9
.probe10(rx_ch4_q ), // input wire [11:0] probe10
.probe11(u_rx_pre_process.rx_cal_ch2_i ), // input wire [11:0] probe11
.probe12(u_rx_pre_process.rx_cal_ch2_q ), // input wire [11:0] probe12
.probe13(u_rx_pre_process.rx_cal_ch4_i ), // input wire [11:0] probe13
.probe14(u_rx_pre_process.rx_cal_ch4_q ) // input wire [11:0] probe14
.clk (sys_clk ), // input wire clk
.probe0 (tx_data_i ), // input wire [11:0] probe0
.probe1 (tx_data_q ) // input wire [11:0] probe1
);
vio_cal u_vio_cal
(
.clk (sys_clk ), // input wire clk
.probe_in0 (u_rx_pre_process.u_ad9361_phase_cal.relative_delay ), // input wire [4 : 0] probe_in0
.probe_in1 (u_rx_pre_process.u_ad9361_phase_cal.phase_diff_raw ), // input wire [15 : 0] probe_in1
.probe_in2 (u_rx_pre_process.u_ad9361_phase_cal.phase_diff ) // input wire [15 : 0] probe_in2
);
ila_rx_pre u_ila_rx_pre
// ila_cal u_ila_cal
// (
// .clk (sys_clk ), // input wire clk
// .probe0 (u_rx_pre_process.u_ad9361_phase_cal.ad9361_1_cal_start_d2 ), // input wire [0:0] probe0
// .probe1 (u_rx_pre_process.u_ad9361_phase_cal.ad9361_1_cal_done ), // input wire [0:0] probe1
// .probe2 (u_rx_pre_process.u_ad9361_phase_cal.ad9361_2_cal_start_d2 ), // input wire [0:0] probe2
// .probe3 (u_rx_pre_process.u_ad9361_phase_cal.ad9361_2_cal_done ), // input wire [0:0] probe3
// .probe4 (u_rx_pre_process.u_ad9361_phase_cal.ad9361_cal_result ), // input wire [0:0] probe4
// .probe5 (u_rx_pre_process.u_ad9361_phase_cal.ad9361_recal_d2 ), // input wire [0:0] probe5
// .probe6 (u_rx_pre_process.u_ad9361_phase_cal.curr_state ), // input wire [1:0] probe6
// .probe7 (rx_ch2_i ), // input wire [11:0] probe7
// .probe8 (rx_ch2_q ), // input wire [11:0] probe8
// .probe9 (rx_ch4_i ), // input wire [11:0] probe9
// .probe10(rx_ch4_q ), // input wire [11:0] probe10
// .probe11(u_rx_pre_process.rx_cal_ch2_i ), // input wire [11:0] probe11
// .probe12(u_rx_pre_process.rx_cal_ch2_q ), // input wire [11:0] probe12
// .probe13(u_rx_pre_process.rx_cal_ch4_i ), // input wire [11:0] probe13
// .probe14(u_rx_pre_process.rx_cal_ch4_q ) // input wire [11:0] probe14
// );
// vio_cal u_vio_cal
// (
// .clk (sys_clk ), // input wire clk
// .probe_in0 (u_rx_pre_process.u_ad9361_phase_cal.relative_delay ), // input wire [4 : 0] probe_in0
// .probe_in1 (u_rx_pre_process.u_ad9361_phase_cal.phase_diff_raw ), // input wire [15 : 0] probe_in1
// .probe_in2 (u_rx_pre_process.u_ad9361_phase_cal.phase_diff ) // input wire [15 : 0] probe_in2
// );
// ila_rx_pre u_ila_rx_pre
// (
// .clk (clk_96m ), // input wire clk
// .probe0 (u_rx_pre_process.hop_start_flag_cdc ), // input wire [0:0] probe0
// .probe1 (accor_stream_valid ), // input wire [0:0] probe1
// .probe2 (accor_stream_data ), // input wire [0:0] probe2
// .probe3 (weight_stream_data ) // input wire [0:0] probe3
// );
vio_weight u_vio_weight
(
.clk (clk_96m ), // input wire clk
.probe0 (u_rx_pre_process.hop_start_flag_cdc ), // input wire [0:0] probe0
.probe1 (accor_stream_valid ), // input wire [0:0] probe1
.probe2 (accor_stream_data ), // input wire [0:0] probe2
.probe3 (weight_stream_data ) // input wire [0:0] probe3
.clk (sys_clk ), // input wire clk
.probe_out0 (u_rx_pre_process.weight_ch1_i ), // output wire [15 : 0] probe_out0
.probe_out1 (u_rx_pre_process.weight_ch1_q ), // output wire [15 : 0] probe_out1
.probe_out2 (u_rx_pre_process.weight_ch2_i ), // output wire [15 : 0] probe_out2
.probe_out3 (u_rx_pre_process.weight_ch2_q ), // output wire [15 : 0] probe_out3
.probe_out4 (u_rx_pre_process.weight_ch3_i ), // output wire [15 : 0] probe_out4
.probe_out5 (u_rx_pre_process.weight_ch3_q ), // output wire [15 : 0] probe_out5
.probe_out6 (u_rx_pre_process.weight_ch4_i ), // output wire [15 : 0] probe_out6
.probe_out7 (u_rx_pre_process.weight_ch4_q ) // output wire [15 : 0] probe_out7
);
vio_manual_ctrl u_vio_manual_ctrl