- List for all the scanline parameters of Example 1 that defined by user.
- Users can easily set or modify the parameters of their target case in L1/include/us_example_parameter.hpp
- Then generate corresponding board-level cases through L3.
: Example 1 for scanline parameters : speed_sound = 1540.0 m/s : freq_sound = 5000000 Hz : Wave Length = 0.000308000 m : freq_sampling = 100000000 Hz : num_sample = 2048 sample / line : num_line = 41 line / image : num_element = 128 elemments on transducer : Sampling Length = 0.000007700 m : Sampling Depth = 0.007884800 m : Sampling Cycle = 0.000020480 s : Sampling Input = 12800.000 MSps : Imaging output = 256.250 MPps : Imaging spf = 83968 Pixel per frame : Imaging fps = 1190.930 fps
List for all the 4 sets of intermediate results of the evolution from algorithm models to hardware.
- module by module mode scanline (shown below)
- line by line mode scanline
- element by element mode scanline
- data-unit-by data-unit mode scanline
- The intermediate results of each mode are distinguished by file naming.
- For example, MbyM_L1_E128_S2048.int.col is the result of interpolation.
- In MbyM_L1_S2048.mul.col, L1 means 1 lines result which is used for smoking test.
- In MbyM_L41_S2048.mul.col, L41 means 41 lines result which is used for full test to show the png.
- All files is column format.
************************ Now performacing a scanline testing in module by module mode ************************ MODEL_TEST_SCANLINE_MbyM: ______________________________________________________________________ MODEL_TEST_SCANLINE_MbyM: Algorithm | Data unit pattern | Invoking times MODEL_TEST_SCANLINE_MbyM: Modules | Dim1-element Dim2-sample Dim3-line | MODEL_TEST_SCANLINE_MbyM: --------------------------------------------------------------------- MODEL_TEST_SCANLINE_MbyM: obj_img | [2048] x [41] | MODEL_TEST_SCANLINE_MbyM: obj_foc | [ 128] | MODEL_TEST_SCANLINE_MbyM: obj_dly | x [2048] x [41] | MODEL_TEST_SCANLINE_MbyM: obj_apo | [ 128] x [2048] x [41] | x [1] MODEL_TEST_SCANLINE_MbyM: obj_smp | [ 128] x [2048] x [41] | MODEL_TEST_SCANLINE_MbyM: obj_int | [ 128] x [8192] x [41] | MODEL_TEST_SCANLINE_MbyM: obj_mul | [ 128] x [8192] x [41] | MODEL_TEST_SCANLINE_MbyM: ______________________________________________________________________ MODEL_TEST_SCANLINE: Saving img data in file data_model/MbyM_L1_S2048_Dim0.img.col MODEL_TEST_SCANLINE: Saving img data in file data_model/MbyM_L1_S2048_Dim2.img.col MODEL_TEST_SCANLINE: Saving focusing data in file data_model/MbyM_L1_E128.foc.col MODEL_TEST_SCANLINE: Saving dly data in file data_model/MbyM_L1_S2048.dly.col MODEL_TEST_SCANLINE: Saving smp data in file data_model/MbyM_L1_E128_S2048.smp.col MODEL_TEST_SCANLINE: Saving inside data in file data_model/MbyM_L1_E128_S2048.ins.col MODEL_TEST_SCANLINE: Saving int data in file data_model/MbyM_L1_E128_S2048.int.col MODEL_TEST_SCANLINE: Saving apo data in file data_model/MbyM_L1_E128_S2048.apo.col MODEL_TEST_SCANLINE: Saving mult data in file data_model/MbyM_L1_S2048.mul.col MODEL_TEST_SCANLINE: Saving mult data in file data_model/MbyM_L41_S2048.mul.col
- List for all for AIE graph Static Parameters to check whether the AIE hardware or design restrictions are met. For example, num_invoking is the invoking times of AIE graph.
********** Static Parameter ******************** Const: NUM_LINE_t = 41 Const: NUM_ELEMENT_t = 128 Const: NUM_SAMPLE_t = 2048 Const: VECDIM_foc_t = 8 Const: NUM_SEG_t = 4 Const: num_invoking = 20992 Const: VECDIM_img_t = 8 Const: LEN_OUT_img_t = 512 Const: LEN32b_PARA_img_t = 7 Const: LEN_OUT_foc_t = 512 Const: LEN32b_PARA_foc_t = 6 Const: LEN32b_PARA_delay_t = 17 Const: LEN_IN_delay_t = 512 Const: LEN_OUT_delay_t = 512 Const: VECDIM_delay_t = 8 Const: LEN_OUT_apodi_t = 512 Const: LEN_IN_apodi_t = 512 Const: LEN32b_PARA_apodi_t = 12 Const: VECDIM_apodi_t = 8 Const: LEN_IN_apodi_f_t = 128 Const: LEN_IN_apodi_d_t = 512 Const: NUM_UPSample_t = 4 Const: LEN_OUT_interp_t = 2048 Const: LEN_IN_interp_t = 512 Const: LEN_IN_interp_rf_t = 2048 Const: LEN32b_PARA_interp_t = 9 Const: VECDIM_interp_t = 8 Const: VECDIM_sample_t = 8 Const: LEN_IN_sample_t = 512 Const: LEN_OUT_sample_t = 512 Const: LEN32b_PARA_sample_t = 12 Const: VECDIM_mult_t = 8 Const: LEN_IN_mult_t = 2048 Const: LEN_OUT_mult_t = 2048 Const: LEN32b_PARA_mult_t = 8
- List for all for AIE graph RTP Parameters to check whether design restrictions are met.
********** RTP Parameter ******************** RTP: para_mult_const size = 32 Bytes RTP: para_interp_const size = 36 Bytes RTP: para_amain_const size = 48 Bytes RTP: para_apodi_const size = 48 Bytes RTP: g_sam_para_const size = 48 Bytes RTP: g_sam_para_rfdim size = 164 Bytes RTP: g_sam_para_elem size = 8 Bytes RTP: g_delay_para_const size = 68 Bytes RTP: g_delay_t_start size = 164 Bytes RTP: para_foc_const size = 24 Bytes RTP: example_1_xdc_def_pos_xz size = 2048 Bytes
- List for the md5sum of result and the comparison result with model output. Only values that meet both conditions of Error judgement are considered computational errors. Also the output of mult could be converted to png format use the command like “python L3/models/data2png.py L3/tests/scanline_AllinAIE/package_sw_emu/sd_card/data/xf_output_res.txt”.
8fce71b2b4cab289c1b12ab841f05aac data/xf_output_res.bin e93ae81a2de1a855b2a82e22159e4005 data/xf_output_res.txt [HOST]: model result in data_model/UbyU_L41_S2048.mul.col *********** Comparison ************ *********** File 1 : data/xf_output_res.txt *********** File 2 : data_model/UbyU_L41_S2048.mul.col *********** Error judgement : diff_abs > 1.000000e-05 && diff_ratio > 1.000000e-03 *********** Total tested data number : 335872 *********** Total passed data number : 335872 100.00% *********** complete same data number : 231982 69.07% *********** complete zero data number : 229454 68.32% *********** Absolute Errors distributions ************ *********** Checked data range of First file : [-6.625977e+06, 8.221938e+06] *********** Checked data range of Second file: [-6.625977e+06, 8.221938e+06] Differences range from [ 10^-5 to 10^-4 ) : 29375 8.75% Differences range from [ 10^-4 to 10^-3 ) : 30489 9.08% Differences range from [ 10^-3 to 10^-2 ) : 12572 3.74% Differences range from [ 10^-2 to 10^-1 ) : 9427 2.81% Differences range from [ 10^-1 to 10^ 0 ) : 5144 1.53% Differences range from [ 10^ 0 to 10^ 1 ) : 1682 0.50% Differences range from [ 10^ 1 to 10^ 2 ) : 0 0.00% Differences range from [ 10^ 2 to 10^ 3 ) : 0 0.00% Differences range from [ 10^ 3 to 10^ 4 ) : 0 0.00% Differences range from [ 10^ 4 to 10^ 5 ) : 0 0.00% Differences range from [ 10^ 5 to 10^ 6 ) : 0 0.00% Differences range from [ 10^ 6 to 10^ 7 ) : 0 0.00% Differences range from [ 10^ 7 to 10^ 8 ) : 0 0.00% Differences range from [ 10^ 8 to 10^ 9 ) : 0 0.00% Differences range from [ 10^ 9 to 10^10 ) : 0 0.00% Differences range from [ 10^10 to 10^11 ) : 0 0.00% Differences range from [ 10^11 to 10^12 ) : 0 0.00% Differences range from [ 10^12 to 10^13 ) : 0 0.00% Differences range from [ 10^13 to 10^14 ) : 0 0.00% [HOST]: total error 0 Releasing remaining XRT objects... [HOST]: success!
The log below shows the log generated by the Planewave method, using tool box modules.