FPGA: load_calibration - First check if addresses are OK, then issue datamover read commands
This commit is contained in:
@@ -59,9 +59,11 @@ int load_calibration(ap_uint<256> *d_hbm_p0,
|
||||
for (int i = 0; i < 3 * (modules + storage_cells * modules); i++) {
|
||||
if (in_mem_location[i] == 0)
|
||||
return 2;
|
||||
setup_datamover(datamover_in_cmd, in_mem_location[i], RAW_MODULE_SIZE * sizeof(int16_t));
|
||||
}
|
||||
|
||||
for (int i = 0; i < 3 * (modules + storage_cells * modules); i++)
|
||||
setup_datamover(datamover_in_cmd, in_mem_location[i], RAW_MODULE_SIZE * sizeof(int16_t));
|
||||
|
||||
for (int c = 0; c < 3; c++) {
|
||||
for (int m = 0; m < modules; m++) {
|
||||
#pragma HLS PIPELINE OFF
|
||||
@@ -86,8 +88,10 @@ int load_calibration(ap_uint<256> *d_hbm_p0,
|
||||
for (int i = 0; i < 2 * modules; i++) {
|
||||
if (in_mem_location[i] == 0)
|
||||
return 2;
|
||||
setup_datamover(datamover_in_cmd, in_mem_location[i], RAW_MODULE_SIZE * sizeof(int16_t));
|
||||
}
|
||||
|
||||
for (int i = 0; i < 2 * modules; i++)
|
||||
setup_datamover(datamover_in_cmd, in_mem_location[i], RAW_MODULE_SIZE * sizeof(int16_t));
|
||||
|
||||
for (int m = 0; m < modules; m++) {
|
||||
#pragma HLS PIPELINE OFF
|
||||
@@ -106,9 +110,11 @@ int load_calibration(ap_uint<256> *d_hbm_p0,
|
||||
for (int i = 0; i < modules; i++) {
|
||||
if (in_mem_location[i] == 0)
|
||||
return 2;
|
||||
setup_datamover(datamover_in_cmd, in_mem_location[i], RAW_MODULE_SIZE * sizeof(int16_t));
|
||||
}
|
||||
|
||||
for (int i = 0; i < modules; i++)
|
||||
setup_datamover(datamover_in_cmd, in_mem_location[i], RAW_MODULE_SIZE * sizeof(int16_t));
|
||||
|
||||
for (int m = 0; m < modules; m++) {
|
||||
#pragma HLS PIPELINE OFF
|
||||
size_t offset_hbm_0 = 20 * hbm_size_bytes / 32 + m * RAW_MODULE_SIZE * sizeof(int16_t) / 64;
|
||||
|
||||
Reference in New Issue
Block a user