From 9f3ad4e2f4390cb38b93730d69e27ed07ad00bad Mon Sep 17 00:00:00 2001 From: Dhanya Thattil Date: Tue, 7 Apr 2020 15:14:27 +0200 Subject: [PATCH] merge from 4.2.0 --- slsDetectorServers/eigerDetectorServer/Beb.c | 176 ++++++++---------- slsDetectorServers/eigerDetectorServer/Beb.h | 2 +- .../bin/eigerDetectorServer_developer | Bin 346990 -> 347438 bytes .../slsDetectorFunctionList.c | 33 +++- .../slsDetectorServer_defs.h | 4 +- .../slsDetectorFunctionList.c | 6 +- slsDetectorSoftware/src/Module.cpp | 11 +- slsReceiverSoftware/src/GeneralData.h | 3 +- slsReceiverSoftware/src/Implementation.cpp | 5 +- slsSupportLib/include/versionAPI.h | 2 +- slsSupportLib/src/ToString.cpp | 2 +- 11 files changed, 119 insertions(+), 125 deletions(-) diff --git a/slsDetectorServers/eigerDetectorServer/Beb.c b/slsDetectorServers/eigerDetectorServer/Beb.c index 3676057a7..da6dcac56 100755 --- a/slsDetectorServers/eigerDetectorServer/Beb.c +++ b/slsDetectorServers/eigerDetectorServer/Beb.c @@ -178,120 +178,100 @@ void Beb_GetModuleConfiguration(int* master, int* top, int* normal) { -void Beb_EndofDataSend(int tengiga) { +int Beb_IsTransmitting(int* retval, int tengiga, int waitForDelay) { //mapping new memory - u_int32_t* csp0base=0; - int l_framepktLsbcounter, l_framepktMsbcounter, l_txndelaycounter, l_framedelaycounter; - int r_framepktLsbcounter, r_framepktMsbcounter, r_txndelaycounter, r_framedelaycounter; - int l_framepktLsbcounter_new, l_framepktMsbcounter_new, l_txndelaycounter_new, l_framedelaycounter_new; - int r_framepktLsbcounter_new, r_framepktMsbcounter_new, r_txndelaycounter_new, r_framedelaycounter_new; - int addr_l_framepktLsbcounter, addr_l_framepktMsbcounter, addr_l_txndelaycounter, addr_l_framedelaycounter; - int addr_r_framepktLsbcounter, addr_r_framepktMsbcounter, addr_r_txndelaycounter, addr_r_framedelaycounter; - - switch(tengiga) { - case 0: - addr_l_framepktLsbcounter = ONE_GIGA_LEFT_INDEX_LSB_COUNTER; - addr_l_framepktMsbcounter = ONE_GIGA_LEFT_INDEX_MSB_COUNTER; - addr_l_txndelaycounter = ONE_GIGA_LEFT_TXN_DELAY_COUNTER; - addr_l_framedelaycounter = ONE_GIGA_LEFT_FRAME_DELAY_COUNTER; - addr_r_framepktLsbcounter = ONE_GIGA_RIGHT_INDEX_LSB_COUNTER; - addr_r_framepktMsbcounter = ONE_GIGA_RIGHT_INDEX_MSB_COUNTER; - addr_r_txndelaycounter = ONE_GIGA_RIGHT_TXN_DELAY_COUNTER; - addr_r_framedelaycounter = ONE_GIGA_RIGHT_FRAME_DELAY_COUNTER; - break; - case 1: - addr_l_framepktLsbcounter = TEN_GIGA_LEFT_INDEX_LSB_COUNTER; - addr_l_framepktMsbcounter = TEN_GIGA_LEFT_INDEX_MSB_COUNTER; + u_int32_t* csp0base = 0; + int addr_l_txndelaycounter = 0, addr_l_framedelaycounter = 0; + int addr_r_txndelaycounter = 0, addr_r_framedelaycounter = 0; + int addr_l_framepktLsbcounter = 0, addr_l_framepktMsbcounter = 0; + int addr_r_framepktLsbcounter = 0, addr_r_framepktMsbcounter = 0; + if (tengiga) { addr_l_txndelaycounter = TEN_GIGA_LEFT_TXN_DELAY_COUNTER; addr_l_framedelaycounter = TEN_GIGA_LEFT_FRAME_DELAY_COUNTER; - addr_r_framepktLsbcounter = TEN_GIGA_RIGHT_INDEX_LSB_COUNTER; - addr_r_framepktMsbcounter = TEN_GIGA_RIGHT_INDEX_MSB_COUNTER; addr_r_txndelaycounter = TEN_GIGA_RIGHT_TXN_DELAY_COUNTER; addr_r_framedelaycounter = TEN_GIGA_RIGHT_FRAME_DELAY_COUNTER; - break; + addr_l_framepktLsbcounter = TEN_GIGA_LEFT_INDEX_LSB_COUNTER; + addr_l_framepktMsbcounter = TEN_GIGA_LEFT_INDEX_MSB_COUNTER; + addr_r_framepktLsbcounter = TEN_GIGA_RIGHT_INDEX_LSB_COUNTER; + addr_r_framepktMsbcounter = TEN_GIGA_RIGHT_INDEX_MSB_COUNTER; + } else { + addr_l_txndelaycounter = ONE_GIGA_LEFT_TXN_DELAY_COUNTER; + addr_l_framedelaycounter = ONE_GIGA_LEFT_FRAME_DELAY_COUNTER; + addr_r_txndelaycounter = ONE_GIGA_RIGHT_TXN_DELAY_COUNTER; + addr_r_framedelaycounter = ONE_GIGA_RIGHT_FRAME_DELAY_COUNTER; + addr_l_framepktLsbcounter = ONE_GIGA_LEFT_INDEX_LSB_COUNTER; + addr_l_framepktMsbcounter = ONE_GIGA_LEFT_INDEX_MSB_COUNTER; + addr_r_framepktLsbcounter = ONE_GIGA_RIGHT_INDEX_LSB_COUNTER; + addr_r_framepktMsbcounter = ONE_GIGA_RIGHT_INDEX_MSB_COUNTER; } - //open file pointer int fd = Beb_open(&csp0base,XPAR_COUNTER_BASEADDR); - if (fd < 0) { - LOG(logERROR, ("Delay read counter fail\n")); - return; + if(fd < 0){ + cprintf(BG_RED,"Could not read Beb Delay read counter\n"); + return FAIL; } else { //read data first time - l_framepktLsbcounter = Beb_Read32(csp0base, addr_l_framepktLsbcounter); - l_framepktMsbcounter = Beb_Read32(csp0base, addr_l_framepktMsbcounter); - l_txndelaycounter = Beb_Read32(csp0base, addr_l_txndelaycounter); - l_framedelaycounter = Beb_Read32(csp0base, addr_l_framedelaycounter); - r_framepktLsbcounter = Beb_Read32(csp0base, addr_r_framepktLsbcounter); - r_framepktMsbcounter = Beb_Read32(csp0base, addr_r_framepktMsbcounter); - r_txndelaycounter = Beb_Read32(csp0base, addr_r_txndelaycounter); - r_framedelaycounter = Beb_Read32(csp0base, addr_r_framedelaycounter); - LOG(logDEBUG1, ("\nLeft\n" - "FramepacketLsbcounter: %d\n" - "FramepacketMsbcounter: %d\n" - "Txndelaycounter:%d\n" - "Framedelaycounter:%d\n" - "\nRight\n" - "FramepacketLsbcounter: %d\n" - "FramepacketMsbcounter: %d\n" - "Txndelaycounter:%d\n" - "Framedelaycounter:%d\n\n", - l_framepktLsbcounter,l_framepktMsbcounter,l_txndelaycounter,l_framedelaycounter, - r_framepktLsbcounter,r_framepktMsbcounter,r_txndelaycounter,r_framedelaycounter)); - - //keep comparing with previous values - int maxtimer; - while(1) { - maxtimer = MAX(MAX(l_txndelaycounter,l_framedelaycounter),MAX(r_txndelaycounter,r_framedelaycounter)); - maxtimer /= 100; - LOG(logDEBUG1, ("Will wait for %d us\n",maxtimer)); - usleep(maxtimer); - - //read new values - l_framepktLsbcounter_new = Beb_Read32(csp0base, addr_l_framepktLsbcounter); - l_framepktMsbcounter_new = Beb_Read32(csp0base, addr_l_framepktMsbcounter); - l_txndelaycounter_new = Beb_Read32(csp0base, addr_l_txndelaycounter); - l_framedelaycounter_new = Beb_Read32(csp0base, addr_l_framedelaycounter); - r_framepktLsbcounter_new = Beb_Read32(csp0base, addr_r_framepktLsbcounter); - r_framepktMsbcounter_new = Beb_Read32(csp0base, addr_r_framepktMsbcounter); - r_txndelaycounter_new = Beb_Read32(csp0base, addr_r_txndelaycounter); - r_framedelaycounter_new = Beb_Read32(csp0base, addr_r_framedelaycounter); - LOG(logDEBUG1, ("\nLeft\n" - "FramepacketLsbcounter: %d\n" - "FramepacketMsbcounter: %d\n" - "Txndelaycounter:%d\n" - "Framedelaycounter:%d\n" - "\nRight\n" - "FramepacketLsbcounter: %d\n" - "FramepacketMsbcounter: %d\n" - "Txndelaycounter:%d\n" - "Framedelaycounter:%d\n\n", - l_framepktLsbcounter_new,l_framepktMsbcounter_new,l_txndelaycounter_new,l_framedelaycounter_new, - r_framepktLsbcounter_new,r_framepktMsbcounter_new,r_txndelaycounter_new,r_framedelaycounter_new)); - - if ((l_framepktLsbcounter == l_framepktLsbcounter_new) && - (l_framepktMsbcounter == l_framepktMsbcounter_new) && - (r_framepktLsbcounter == r_framepktLsbcounter_new) && - (r_framepktMsbcounter == r_framepktMsbcounter_new)) - break; - - //update old values - l_framepktLsbcounter = l_framepktLsbcounter_new; - l_framepktMsbcounter = l_framepktMsbcounter_new; - l_txndelaycounter = l_txndelaycounter_new; - l_framedelaycounter = l_framedelaycounter_new; - r_framepktLsbcounter = r_framepktLsbcounter_new; - r_framepktMsbcounter = r_framepktMsbcounter_new; - r_txndelaycounter = r_txndelaycounter_new; - r_framedelaycounter = r_framedelaycounter_new; - + int l_txndelaycounter = Beb_Read32(csp0base, addr_l_txndelaycounter); + int l_framedelaycounter = Beb_Read32(csp0base, addr_l_framedelaycounter); + int r_txndelaycounter = Beb_Read32(csp0base, addr_r_txndelaycounter); + int r_framedelaycounter = Beb_Read32(csp0base, addr_r_framedelaycounter); + int l_framepktLsbcounter = Beb_Read32(csp0base, addr_l_framepktLsbcounter); + int l_framepktMsbcounter = Beb_Read32(csp0base, addr_l_framepktMsbcounter); + int r_framepktLsbcounter = Beb_Read32(csp0base, addr_r_framepktLsbcounter); + int r_framepktMsbcounter = Beb_Read32(csp0base, addr_r_framepktMsbcounter); +#ifdef VERBOSE + printf("\nFirst Read:\n" + "\tLeft [Txndelaycounter:%d, Framedelaycounter:%d]\n" + "\tRight [Txndelaycounter:%d, Framedelaycounter:%d]\n", + "\tLeft [FramepacketLsbcounter:%d, FramepacketMsbcounter:%d]\n" + "\tRight [FramepacketLsbcounter:%d, FramepacketMsbcounter:%d]\n", + l_txndelaycounter,l_framedelaycounter, r_txndelaycounter,r_framedelaycounter, + l_framepktLsbcounter, l_framepktMsbcounter, r_framepktLsbcounter, r_framepktMsbcounter); +#endif + // wait for max counter delay + if (waitForDelay) { + int maxtimer = (MAX(MAX(l_txndelaycounter,l_framedelaycounter),MAX(r_txndelaycounter,r_framedelaycounter))) / 100; // counter values in 10 ns + printf("Will wait for %d us\n", maxtimer); + usleep (maxtimer); + } + // wait for 1 ms + else { + printf("Will wait for 1 ms\n"); + usleep (1 * 1000); } - LOG(logINFO, ("Detector has sent all data\n")); + // read values again + int l_txndelaycounter2 = Beb_Read32(csp0base, addr_l_txndelaycounter); + int l_framedelaycounter2 = Beb_Read32(csp0base, addr_l_framedelaycounter); + int r_txndelaycounter2 = Beb_Read32(csp0base, addr_r_txndelaycounter); + int r_framedelaycounter2 = Beb_Read32(csp0base, addr_r_framedelaycounter); + int l_framepktLsbcounter2 = Beb_Read32(csp0base, addr_l_framepktLsbcounter); + int l_framepktMsbcounter2 = Beb_Read32(csp0base, addr_l_framepktMsbcounter); + int r_framepktLsbcounter2 = Beb_Read32(csp0base, addr_r_framepktLsbcounter); + int r_framepktMsbcounter2 = Beb_Read32(csp0base, addr_r_framepktMsbcounter); +#ifdef VERBOSE + printf("\nSecond Read:\n" + "\tLeft [Txndelaycounter:%d, Framedelaycounter:%d]\n" + "\tRight [Txndelaycounter:%d, Framedelaycounter:%d]\n", + "\tLeft [FramepacketLsbcounter:%d, FramepacketMsbcounter:%d]\n" + "\tRight [FramepacketLsbcounter:%d, FramepacketMsbcounter:%d]\n", + l_txndelaycounter2,l_framedelaycounter2, r_txndelaycounter2,r_framedelaycounter2, + l_framepktLsbcounter2, l_framepktMsbcounter2, r_framepktLsbcounter2, r_framepktMsbcounter2); +#endif + // any change in values, it is still transmitting + if (l_txndelaycounter != l_txndelaycounter2 || l_framedelaycounter != l_framedelaycounter2 || + r_txndelaycounter != r_txndelaycounter2 || r_framedelaycounter != r_framedelaycounter2 || + l_framepktLsbcounter != l_framepktLsbcounter2 || l_framepktMsbcounter != l_framepktMsbcounter2 || + r_framepktLsbcounter != r_framepktLsbcounter2 || r_framepktMsbcounter != r_framepktMsbcounter2) { + *retval = 1; + } else { + *retval = 0; + } //close file pointer Beb_close(fd,csp0base); } + return OK; } diff --git a/slsDetectorServers/eigerDetectorServer/Beb.h b/slsDetectorServers/eigerDetectorServer/Beb.h index e661873a2..594ff7f1a 100755 --- a/slsDetectorServers/eigerDetectorServer/Beb.h +++ b/slsDetectorServers/eigerDetectorServer/Beb.h @@ -34,7 +34,7 @@ unsigned int Beb_GetBebInfoIndex(unsigned int beb_numb); void Beb_GetModuleConfiguration(int* master, int* top, int* normal); -void Beb_EndofDataSend(int tengiga); +int Beb_IsTransmitting(int* retval, int tengiga, int waitForDelay); int Beb_SetMasterViaSoftware(); int Beb_SetSlaveViaSoftware(); diff --git a/slsDetectorServers/eigerDetectorServer/bin/eigerDetectorServer_developer b/slsDetectorServers/eigerDetectorServer/bin/eigerDetectorServer_developer index 4422adcc19417d7baaed5fae4e9cf6bf66e1789d..699ef958ca4ac3c538eddb0fac9214e13ac03c85 100755 GIT binary patch delta 88191 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 delta 86762 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�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%0DA$~z)J6jbOF_RMu`=0rG#SuFOYC1;4%rj0T)Xc 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 T>o?XfT+!6fojW(@sfYgqQAJm| diff --git a/slsDetectorServers/eigerDetectorServer/slsDetectorFunctionList.c b/slsDetectorServers/eigerDetectorServer/slsDetectorFunctionList.c index f657011a7..4634e941c 100755 --- a/slsDetectorServers/eigerDetectorServer/slsDetectorFunctionList.c +++ b/slsDetectorServers/eigerDetectorServer/slsDetectorFunctionList.c @@ -2129,19 +2129,23 @@ enum runStatus getRunStatus() { #else int i = Feb_Control_AcquisitionInProgress(); - switch (i) { - case STATUS_ERROR: + if (i == STATUS_ERROR) { LOG(logERROR, ("Status: ERROR reading status register\n")); return ERROR; - case STATUS_IDLE: + } else if (i == STATUS_IDLE) { + int isTransmitting = 0; + if (Beb_IsTransmitting(&isTransmitting, send_to_ten_gig, 0) == FAIL) { + return ERROR; + } + if (isTransmitting) { + printf("Status: TRANSMITTING\n"); + return TRANSMITTING; + } LOG(logINFOBLUE, ("Status: IDLE\n")); return IDLE; - default: - LOG(logINFOBLUE, ("Status: RUNNING...\n")); - return RUNNING; } - - return IDLE; + LOG(logINFOBLUE, ("Status: RUNNING...\n")); + return RUNNING; #endif } @@ -2175,7 +2179,18 @@ void readFrame(int *ret, char *mess) { } //wait for detector to send - Beb_EndofDataSend(send_to_ten_gig); + int isTransmitting = 1; + while (isTransmitting) { + if (Beb_IsTransmitting(&isTransmitting, send_to_ten_gig, 1) == FAIL) { + strcpy(mess,"Could not read delay counters\n"); + *ret = (int)FAIL; + return; + } + if (isTransmitting) { + printf("Transmitting...\n"); + } + } + printf("Detector has sent all data\n"); LOG(logINFOGREEN, ("Acquisition successfully finished\n")); #endif } diff --git a/slsDetectorServers/eigerDetectorServer/slsDetectorServer_defs.h b/slsDetectorServers/eigerDetectorServer/slsDetectorServer_defs.h index a885456ee..d5c3b5baa 100755 --- a/slsDetectorServers/eigerDetectorServer/slsDetectorServer_defs.h +++ b/slsDetectorServers/eigerDetectorServer/slsDetectorServer_defs.h @@ -63,10 +63,10 @@ enum CLKINDEX {RUN_CLK, NUM_CLOCKS}; #define DEFAULT_SUBFRAME_DEADTIME (0) #define DEFAULT_DYNAMIC_RANGE (16) -#define DEFAULT_PARALLEL_MODE (0) +#define DEFAULT_PARALLEL_MODE (1) #define DEFAULT_READOUT_STOREINRAM_MODE (0) #define DEFAULT_READOUT_OVERFLOW32_MODE (0) -#define DEFAULT_CLK_SPEED (HALF_SPEED) +#define DEFAULT_CLK_SPEED (FULL_SPEED) #define DEFAULT_IO_DELAY (650) #define DEFAULT_TIMING_MODE (AUTO_TIMING) #define DEFAULT_PHOTON_ENERGY (-1) diff --git a/slsDetectorServers/gotthardDetectorServer/slsDetectorFunctionList.c b/slsDetectorServers/gotthardDetectorServer/slsDetectorFunctionList.c index 9a267e246..9f5349b4b 100755 --- a/slsDetectorServers/gotthardDetectorServer/slsDetectorFunctionList.c +++ b/slsDetectorServers/gotthardDetectorServer/slsDetectorFunctionList.c @@ -1567,15 +1567,15 @@ void* start_timer(void* arg) { if (adcConfigured == -1) { *((uint32_t*)(imageData)) = 0xCACACACA; } - for (i = 4; i < imageSize; i += sizeof(uint16_t)) { - *((uint16_t*)(imageData + i)) = i; + for (i = sizeof(uint32_t); i < imageSize; i += sizeof(uint16_t)) { + *((uint16_t*)(imageData + i)) = (uint16_t)i; } } // Send data { int frameNr = 0; - int frameHeaderNr = 2; + uint16_t frameHeaderNr = 2; // loop over number of frames for(frameNr = 0; frameNr != numFrames; ++frameNr ) { diff --git a/slsDetectorSoftware/src/Module.cpp b/slsDetectorSoftware/src/Module.cpp index f68ae5ee5..e31a0d90a 100755 --- a/slsDetectorSoftware/src/Module.cpp +++ b/slsDetectorSoftware/src/Module.cpp @@ -1393,17 +1393,12 @@ void Module::setDynamicRange(int n) { // changes in dr if (n != prev_val) { // update speed for usability - switch (n) { - case 32: + if (n == 32) { LOG(logINFO) << "Setting Clock to Quarter Speed to cope with Dynamic Range of 32"; setClockDivider(RUN_CLOCK, 2); - break; - case 16: - LOG(logINFO) << "Setting Clock to Full Speed to cope with Dynamic Range of " << n; + } else if (prev_val == 32) { + LOG(logINFO) << "Setting Clock to Full Speed for Dynamic Range of " << n; setClockDivider(RUN_CLOCK, 0); - break; - default: - break; } updateRateCorrection(); } diff --git a/slsReceiverSoftware/src/GeneralData.h b/slsReceiverSoftware/src/GeneralData.h index ba6778094..4aec7f4ff 100755 --- a/slsReceiverSoftware/src/GeneralData.h +++ b/slsReceiverSoftware/src/GeneralData.h @@ -414,7 +414,7 @@ class EigerData : public GeneralData { imageSize = dataSize*packetsPerFrame; maxFramesPerFile = EIGER_MAX_FRAMES_PER_FILE; fifoBufferHeaderSize= FIFO_HEADER_NUMBYTES + sizeof(slsDetectorDefs::sls_receiver_header); - defaultFifoDepth = 100; + defaultFifoDepth = 1000; threadsPerReceiver = 2; headerPacketSize = 40; standardheader = true; @@ -428,6 +428,7 @@ class EigerData : public GeneralData { void SetDynamicRange(int dr, bool tgEnable) { packetsPerFrame = (tgEnable ? 4 : 16) * dr; imageSize = dataSize*packetsPerFrame; + defaultFifoDepth = (dr == 32 ? 100 : 1000); } /** diff --git a/slsReceiverSoftware/src/Implementation.cpp b/slsReceiverSoftware/src/Implementation.cpp index 21bfa83cc..73dad4599 100755 --- a/slsReceiverSoftware/src/Implementation.cpp +++ b/slsReceiverSoftware/src/Implementation.cpp @@ -187,7 +187,9 @@ void Implementation::SetupFifoStructure() { fifoDepth)); } catch (...) { fifo.clear(); - throw sls::RuntimeError("Could not allocate memory for fifo structure " + std::to_string(i)); + fifoDepth = 0; + throw sls::RuntimeError("Could not allocate memory for fifo structure " + + std::to_string(i) + ". FifoDepth is now 0."); } // set the listener & dataprocessor threads to point to the right fifo if (listener.size()) @@ -1475,6 +1477,7 @@ void Implementation::setDynamicRange(const uint32_t i) { // to update npixelsx, npixelsy in file writer for (const auto &it : dataProcessor) it->SetPixelDimension(); + fifoDepth = generalData->defaultFifoDepth; SetupFifoStructure(); } } diff --git a/slsSupportLib/include/versionAPI.h b/slsSupportLib/include/versionAPI.h index 905e6d156..fa26ed6d2 100644 --- a/slsSupportLib/include/versionAPI.h +++ b/slsSupportLib/include/versionAPI.h @@ -6,7 +6,7 @@ #define APIJUNGFRAU 0x200402 #define APIMYTHEN3 0x200402 #define APIMOENCH 0x200331 -#define APIEIGER 0x200402 #define APILIB 0x200402 #define APIRECEIVER 0x200402 #define APIGUI 0x200331 +#define APIEIGER 0x200407 diff --git a/slsSupportLib/src/ToString.cpp b/slsSupportLib/src/ToString.cpp index deb336d16..e119a7422 100644 --- a/slsSupportLib/src/ToString.cpp +++ b/slsSupportLib/src/ToString.cpp @@ -11,7 +11,7 @@ std::string ToString(const defs::runStatus s) { case defs::RUNNING: return std::string("running"); case defs::TRANSMITTING: - return std::string("data"); + return std::string("transmitting"); case defs::RUN_FINISHED: return std::string("finished"); case defs::STOPPED: