FPGA: remove limit of modules for frame_generator
This commit is contained in:
@@ -35,13 +35,14 @@ void MockAcquisitionDevice::Cancel() {
|
||||
|
||||
MockAcquisitionDevice::MockAcquisitionDevice(uint16_t data_stream, size_t in_frame_buffer_size_modules,
|
||||
int16_t in_numa_node)
|
||||
: AcquisitionDevice(data_stream), internal_pkt_gen_frame(FRAME_GENERATOR_MODULES * RAW_MODULE_SIZE),
|
||||
internal_pkt_gen_frame_conv(FRAME_GENERATOR_MODULES * RAW_MODULE_SIZE) {
|
||||
max_modules = 16;
|
||||
: AcquisitionDevice(data_stream) {
|
||||
max_modules = MAX_MODULES_FPGA;
|
||||
internal_pkt_gen_frame.resize(max_modules * RAW_MODULE_SIZE);
|
||||
internal_pkt_gen_frame_conv.resize(max_modules * RAW_MODULE_SIZE);
|
||||
MapBuffersStandard(in_frame_buffer_size_modules, 1, in_numa_node);
|
||||
max_handle = in_frame_buffer_size_modules;
|
||||
|
||||
for (int i = 0; i < FRAME_GENERATOR_MODULES * RAW_MODULE_SIZE; i++) {
|
||||
for (int i = 0; i < max_modules * RAW_MODULE_SIZE; i++) {
|
||||
internal_pkt_gen_frame[i] = i % 65536;
|
||||
internal_pkt_gen_frame_conv[i] = i % 65536;
|
||||
}
|
||||
@@ -153,7 +154,7 @@ void MockAcquisitionDevice::SetCustomInternalGeneratorFrame(const std::vector<ui
|
||||
if (v.size() != RAW_MODULE_SIZE)
|
||||
throw JFJochException(JFJochExceptionCategory::InputParameterInvalid,
|
||||
"Error in size of custom internal generator frame");
|
||||
for (int m = 0; m < FRAME_GENERATOR_MODULES ; m++) {
|
||||
for (int m = 0; m < max_modules ; m++) {
|
||||
memcpy(internal_pkt_gen_frame.data() + RAW_MODULE_SIZE * m,
|
||||
v.data(),
|
||||
RAW_MODULE_SIZE);
|
||||
@@ -164,7 +165,7 @@ void MockAcquisitionDevice::SetCustomInternalGeneratorFrame(const std::vector<ui
|
||||
}
|
||||
|
||||
void MockAcquisitionDevice::InitializeCalibration(const DiffractionExperiment &experiment, const JFCalibration &calib) {
|
||||
for (int m = 0; (m < experiment.GetModulesNum(data_stream)) && (m < FRAME_GENERATOR_MODULES); m++) {
|
||||
for (int m = 0; (m < experiment.GetModulesNum(data_stream)) && (m < max_modules); m++) {
|
||||
JFConversionFloatingPoint conv;
|
||||
conv.Setup(calib.GainCalibration(experiment.GetFirstModuleOfDataStream(data_stream) + m),
|
||||
calib.Pedestal(experiment.GetFirstModuleOfDataStream(data_stream) + m,0),
|
||||
|
||||
Reference in New Issue
Block a user