@@ -1,81 +1,85 | |||||
1 | #ifndef FSW_PARAMS_PROCESSING_H |
|
1 | #ifndef FSW_PARAMS_PROCESSING_H | |
2 | #define FSW_PARAMS_PROCESSING_H |
|
2 | #define FSW_PARAMS_PROCESSING_H | |
3 |
|
3 | |||
|
4 | #define CHANNELF0 0 | |||
|
5 | #define CHANNELF1 1 | |||
|
6 | #define CHANNELF2 2 | |||
|
7 | ||||
4 | #define NB_BINS_PER_SM 128 |
|
8 | #define NB_BINS_PER_SM 128 | |
5 | #define NB_VALUES_PER_SM 25 |
|
9 | #define NB_VALUES_PER_SM 25 | |
6 | #define TOTAL_SIZE_SM 3200 // 25 * 128 = 0xC80 |
|
10 | #define TOTAL_SIZE_SM 3200 // 25 * 128 = 0xC80 | |
7 | #define TOTAL_SIZE_NORM_BP1_F0 99 // 11 * 9 = 99 |
|
11 | #define TOTAL_SIZE_NORM_BP1_F0 99 // 11 * 9 = 99 | |
8 | #define TOTAL_SIZE_NORM_BP1_F1 117 // 13 * 9 = 117 |
|
12 | #define TOTAL_SIZE_NORM_BP1_F1 117 // 13 * 9 = 117 | |
9 | #define TOTAL_SIZE_NORM_BP1_F2 108 // 12 * 9 = 108 |
|
13 | #define TOTAL_SIZE_NORM_BP1_F2 108 // 12 * 9 = 108 | |
10 | #define TOTAL_SIZE_SBM1_BP1_F0 198 // 22 * 9 = 198 |
|
14 | #define TOTAL_SIZE_SBM1_BP1_F0 198 // 22 * 9 = 198 | |
11 | // F0 |
|
15 | // F0 | |
12 | #define NB_RING_NODES_SM_F0 20 // AT LEAST 8 due to the way the averaging is done |
|
16 | #define NB_RING_NODES_SM_F0 20 // AT LEAST 8 due to the way the averaging is done | |
13 | #define NB_RING_NODES_ASM_BURST_SBM_F0 10 // AT LEAST 3 |
|
17 | #define NB_RING_NODES_ASM_BURST_SBM_F0 10 // AT LEAST 3 | |
14 | #define NB_RING_NODES_ASM_NORM_F0 10 // AT LEAST 3 |
|
18 | #define NB_RING_NODES_ASM_NORM_F0 10 // AT LEAST 3 | |
15 | #define NB_RING_NODES_ASM_F0 3 // AT LEAST 3 |
|
19 | #define NB_RING_NODES_ASM_F0 3 // AT LEAST 3 | |
16 | // F1 |
|
20 | // F1 | |
17 | #define NB_RING_NODES_SM_F1 12 // AT LEAST 8 due to the way the averaging is done |
|
21 | #define NB_RING_NODES_SM_F1 12 // AT LEAST 8 due to the way the averaging is done | |
18 | #define NB_RING_NODES_ASM_BURST_SBM_F1 5 // AT LEAST 3 |
|
22 | #define NB_RING_NODES_ASM_BURST_SBM_F1 5 // AT LEAST 3 | |
19 | #define NB_RING_NODES_ASM_NORM_F1 5 // AT LEAST 3 |
|
23 | #define NB_RING_NODES_ASM_NORM_F1 5 // AT LEAST 3 | |
20 | #define NB_RING_NODES_ASM_F1 3 // AT LEAST 3 |
|
24 | #define NB_RING_NODES_ASM_F1 3 // AT LEAST 3 | |
21 | // F2 |
|
25 | // F2 | |
22 | #define NB_RING_NODES_SM_F2 5 // AT LEAST 3 |
|
26 | #define NB_RING_NODES_SM_F2 5 // AT LEAST 3 | |
23 | #define NB_RING_NODES_ASM_NORM_F2 3 // AT LEAST 3 |
|
27 | #define NB_RING_NODES_ASM_NORM_F2 3 // AT LEAST 3 | |
24 | #define NB_RING_NODES_ASM_F2 3 // AT LEAST 3 |
|
28 | #define NB_RING_NODES_ASM_F2 3 // AT LEAST 3 | |
25 | // |
|
29 | // | |
26 | #define NB_BINS_PER_ASM_F0 88 |
|
30 | #define NB_BINS_PER_ASM_F0 88 | |
27 | #define NB_BINS_PER_PKT_ASM_F0_1 32 |
|
31 | #define NB_BINS_PER_PKT_ASM_F0_1 32 | |
28 | #define NB_BINS_PER_PKT_ASM_F0_2 24 |
|
32 | #define NB_BINS_PER_PKT_ASM_F0_2 24 | |
29 | #define DLEN_ASM_F0_PKT_1 3200 // 32 * 25 * 4, 25 components per matrix, 4 bytes per float |
|
33 | #define DLEN_ASM_F0_PKT_1 3200 // 32 * 25 * 4, 25 components per matrix, 4 bytes per float | |
30 | #define DLEN_ASM_F0_PKT_2 2400 // 24 * 25 * 4, 25 components per matrix, 4 bytes per float |
|
34 | #define DLEN_ASM_F0_PKT_2 2400 // 24 * 25 * 4, 25 components per matrix, 4 bytes per float | |
31 | #define ASM_F0_INDICE_START 16 // 17 - 1, (-1) due to the VHDL behaviour |
|
35 | #define ASM_F0_INDICE_START 16 // 17 - 1, (-1) due to the VHDL behaviour | |
32 | #define ASM_F0_INDICE_STOP 103 // 104 - 1, 2 packets of 44 bins |
|
36 | #define ASM_F0_INDICE_STOP 103 // 104 - 1, 2 packets of 44 bins | |
33 | // |
|
37 | // | |
34 | #define NB_BINS_PER_ASM_F1 104 |
|
38 | #define NB_BINS_PER_ASM_F1 104 | |
35 | #define NB_BINS_PER_PKT_ASM_F1_1 36 |
|
39 | #define NB_BINS_PER_PKT_ASM_F1_1 36 | |
36 | #define NB_BINS_PER_PKT_ASM_F1_2 32 |
|
40 | #define NB_BINS_PER_PKT_ASM_F1_2 32 | |
37 | #define DLEN_ASM_F1_PKT_1 3600 // 36 * 25 * 4, 25 components per matrix, 4 bytes per float |
|
41 | #define DLEN_ASM_F1_PKT_1 3600 // 36 * 25 * 4, 25 components per matrix, 4 bytes per float | |
38 | #define DLEN_ASM_F1_PKT_2 3200 // 32 * 25 * 4, 25 components per matrix, 4 bytes per float |
|
42 | #define DLEN_ASM_F1_PKT_2 3200 // 32 * 25 * 4, 25 components per matrix, 4 bytes per float | |
39 | #define ASM_F1_INDICE_START 5 // 6 - 1, (-1) due to the VHDL behaviour |
|
43 | #define ASM_F1_INDICE_START 5 // 6 - 1, (-1) due to the VHDL behaviour | |
40 | #define ASM_F1_INDICE_STOP 108 // 109 - 1, 2 packets of 52 bins |
|
44 | #define ASM_F1_INDICE_STOP 108 // 109 - 1, 2 packets of 52 bins | |
41 | // |
|
45 | // | |
42 | #define NB_BINS_PER_ASM_F2 96 |
|
46 | #define NB_BINS_PER_ASM_F2 96 | |
43 | #define NB_BINS_PER_PKT_ASM_F2 32 |
|
47 | #define NB_BINS_PER_PKT_ASM_F2 32 | |
44 | #define DLEN_ASM_F2_PKT 3200 // 32 * 25 * 4, 25 components per matrix, 4 bytes per float |
|
48 | #define DLEN_ASM_F2_PKT 3200 // 32 * 25 * 4, 25 components per matrix, 4 bytes per float | |
45 | #define ASM_F2_INDICE_START 6 // 7 - 1, (-1) due to the VHDL behaviour |
|
49 | #define ASM_F2_INDICE_START 6 // 7 - 1, (-1) due to the VHDL behaviour | |
46 | #define ASM_F2_INDICE_STOP 101 // 102 - 1, 2 packets of 48 bins |
|
50 | #define ASM_F2_INDICE_STOP 101 // 102 - 1, 2 packets of 48 bins | |
47 | // |
|
51 | // | |
48 | #define KCOEFF_BLK_SIZE 130 |
|
52 | #define KCOEFF_BLK_SIZE 130 | |
49 | #define NB_BINS_COMPRESSED_SM_F0 11 |
|
53 | #define NB_BINS_COMPRESSED_SM_F0 11 | |
50 | #define NB_BINS_COMPRESSED_SM_F1 13 |
|
54 | #define NB_BINS_COMPRESSED_SM_F1 13 | |
51 | #define NB_BINS_COMPRESSED_SM_F2 12 |
|
55 | #define NB_BINS_COMPRESSED_SM_F2 12 | |
52 | #define NB_BINS_COMPRESSED_SM 36 // 11 + 12 + 13 |
|
56 | #define NB_BINS_COMPRESSED_SM 36 // 11 + 12 + 13 | |
53 | #define NB_BINS_COMPRESSED_SM_SBM_F0 22 |
|
57 | #define NB_BINS_COMPRESSED_SM_SBM_F0 22 | |
54 | #define NB_BINS_COMPRESSED_SM_SBM_F1 26 |
|
58 | #define NB_BINS_COMPRESSED_SM_SBM_F1 26 | |
55 | #define NB_BINS_COMPRESSED_SM_SBM_F2 24 |
|
59 | #define NB_BINS_COMPRESSED_SM_SBM_F2 24 | |
56 | // |
|
60 | // | |
57 | #define NB_BYTES_PER_BP1 9 |
|
61 | #define NB_BYTES_PER_BP1 9 | |
58 | #define NB_BYTES_PER_BP2 30 |
|
62 | #define NB_BYTES_PER_BP2 30 | |
59 | // |
|
63 | // | |
60 | #define NB_BINS_TO_AVERAGE_ASM_F0 8 |
|
64 | #define NB_BINS_TO_AVERAGE_ASM_F0 8 | |
61 | #define NB_BINS_TO_AVERAGE_ASM_F1 8 |
|
65 | #define NB_BINS_TO_AVERAGE_ASM_F1 8 | |
62 | #define NB_BINS_TO_AVERAGE_ASM_F2 8 |
|
66 | #define NB_BINS_TO_AVERAGE_ASM_F2 8 | |
63 | #define NB_BINS_TO_AVERAGE_ASM_SBM_F0 4 |
|
67 | #define NB_BINS_TO_AVERAGE_ASM_SBM_F0 4 | |
64 | #define NB_BINS_TO_AVERAGE_ASM_SBM_F1 4 |
|
68 | #define NB_BINS_TO_AVERAGE_ASM_SBM_F1 4 | |
65 | #define NB_BINS_TO_AVERAGE_ASM_SBM_F2 4 |
|
69 | #define NB_BINS_TO_AVERAGE_ASM_SBM_F2 4 | |
66 | // |
|
70 | // | |
67 | #define TOTAL_SIZE_COMPRESSED_ASM_NORM_F0 275 // 11 * 25 WORDS |
|
71 | #define TOTAL_SIZE_COMPRESSED_ASM_NORM_F0 275 // 11 * 25 WORDS | |
68 | #define TOTAL_SIZE_COMPRESSED_ASM_NORM_F1 325 // 13 * 25 WORDS |
|
72 | #define TOTAL_SIZE_COMPRESSED_ASM_NORM_F1 325 // 13 * 25 WORDS | |
69 | #define TOTAL_SIZE_COMPRESSED_ASM_NORM_F2 300 // 12 * 25 WORDS |
|
73 | #define TOTAL_SIZE_COMPRESSED_ASM_NORM_F2 300 // 12 * 25 WORDS | |
70 | #define TOTAL_SIZE_COMPRESSED_ASM_SBM_F0 550 // 22 * 25 WORDS |
|
74 | #define TOTAL_SIZE_COMPRESSED_ASM_SBM_F0 550 // 22 * 25 WORDS | |
71 | #define TOTAL_SIZE_COMPRESSED_ASM_SBM_F1 650 // 26 * 25 WORDS |
|
75 | #define TOTAL_SIZE_COMPRESSED_ASM_SBM_F1 650 // 26 * 25 WORDS | |
72 | #define TOTAL_SIZE_BP1_NORM_F0 99 // 9 * 11 UNSIGNED CHAR |
|
76 | #define TOTAL_SIZE_BP1_NORM_F0 99 // 9 * 11 UNSIGNED CHAR | |
73 | #define TOTAL_SIZE_BP2_NORM_F0 330 // 30 * 11 UNSIGNED CHAR |
|
77 | #define TOTAL_SIZE_BP2_NORM_F0 330 // 30 * 11 UNSIGNED CHAR | |
74 | #define TOTAL_SIZE_BP1_SBM_F0 198 // 9 * 22 UNSIGNED CHAR |
|
78 | #define TOTAL_SIZE_BP1_SBM_F0 198 // 9 * 22 UNSIGNED CHAR | |
75 | // GENERAL |
|
79 | // GENERAL | |
76 | #define NB_SM_BEFORE_AVF0 8 // must be 8 due to the SM_average() function |
|
80 | #define NB_SM_BEFORE_AVF0 8 // must be 8 due to the SM_average() function | |
77 | #define NB_SM_BEFORE_AVF1 8 // must be 8 due to the SM_average() function |
|
81 | #define NB_SM_BEFORE_AVF1 8 // must be 8 due to the SM_average() function | |
78 | #define NB_SM_BEFORE_AVF2 1 // must be 1 due to the SM_average_f2() function |
|
82 | #define NB_SM_BEFORE_AVF2 1 // must be 1 due to the SM_average_f2() function | |
79 |
|
83 | |||
80 | #endif // FSW_PARAMS_PROCESSING_H |
|
84 | #endif // FSW_PARAMS_PROCESSING_H | |
81 |
|
85 |
General Comments 0
You need to be logged in to leave comments.
Login now