mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-04-20 02:40:03 +02:00
m3: numpackets to 2 or 20 depending on ten giga enable (#123)
This commit is contained in:
parent
6f5635a402
commit
7492f7dbfa
@ -2055,21 +2055,28 @@ void *start_timer(void *arg) {
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
int64_t periodNs = getPeriod();
|
const int64_t periodNs = getPeriod();
|
||||||
int numFrames = (getNumFrames() * getNumTriggers());
|
const int numFrames = (getNumFrames() * getNumTriggers());
|
||||||
int64_t expUs = getGatePeriod() / 1000;
|
const int64_t expUs = getGatePeriod() / 1000;
|
||||||
|
|
||||||
int imagesize = calculateDataBytes();
|
const int imagesize = calculateDataBytes();
|
||||||
int dataSize = imagesize / PACKETS_PER_FRAME;
|
const int tgEnable = enableTenGigabitEthernet(-1);
|
||||||
int packetSize = dataSize + sizeof(sls_detector_header);
|
const int packetsPerFrame =
|
||||||
|
tgEnable ? PACKETS_PER_FRAME_10G : PACKETS_PER_FRAME_1G;
|
||||||
|
const int dataSize = imagesize / packetsPerFrame;
|
||||||
|
const int packetSize = dataSize + sizeof(sls_detector_header);
|
||||||
|
|
||||||
|
LOG(logDEBUG1,
|
||||||
|
("imagesize:%d tg:%d packets/Frame:%d datasize:%d packetSize:%d\n",
|
||||||
|
imagesize, tgEnable, packetsPerFrame, dataSize, packetSize));
|
||||||
|
|
||||||
// Generate data
|
// Generate data
|
||||||
char imageData[imagesize];
|
char imageData[imagesize];
|
||||||
memset(imageData, 0, imagesize);
|
memset(imageData, 0, imagesize);
|
||||||
{
|
{
|
||||||
int dr = setDynamicRange(-1);
|
const int dr = setDynamicRange(-1);
|
||||||
int numCounters = __builtin_popcount(getCounterMask());
|
const int numCounters = __builtin_popcount(getCounterMask());
|
||||||
int nchannels = NCHAN_1_COUNTER * NCHIP * numCounters;
|
const int nchannels = NCHAN_1_COUNTER * NCHIP * numCounters;
|
||||||
|
|
||||||
switch (dr) {
|
switch (dr) {
|
||||||
/*case 1: // TODO: Not implemented in firmware yet
|
/*case 1: // TODO: Not implemented in firmware yet
|
||||||
@ -2111,7 +2118,7 @@ void *start_timer(void *arg) {
|
|||||||
|
|
||||||
int srcOffset = 0;
|
int srcOffset = 0;
|
||||||
// loop packet
|
// loop packet
|
||||||
for (int i = 0; i != PACKETS_PER_FRAME; ++i) {
|
for (int i = 0; i != packetsPerFrame; ++i) {
|
||||||
char packetData[packetSize];
|
char packetData[packetSize];
|
||||||
memset(packetData, 0, packetSize);
|
memset(packetData, 0, packetSize);
|
||||||
|
|
||||||
|
@ -133,7 +133,8 @@ typedef struct udp_header_struct {
|
|||||||
uint16_t udp_destport;
|
uint16_t udp_destport;
|
||||||
} udp_header;
|
} udp_header;
|
||||||
#define UDP_IP_HEADER_LENGTH_BYTES (28)
|
#define UDP_IP_HEADER_LENGTH_BYTES (28)
|
||||||
#define PACKETS_PER_FRAME (2)
|
#define PACKETS_PER_FRAME_10G (2)
|
||||||
|
#define PACKETS_PER_FRAME_1G (20)
|
||||||
|
|
||||||
/** Signal Definitions */
|
/** Signal Definitions */
|
||||||
#define SIGNAL_TBLoad_1 (0)
|
#define SIGNAL_TBLoad_1 (0)
|
||||||
|
@ -7026,7 +7026,8 @@ int get_receiver_parameters(int file_des) {
|
|||||||
return printSocketReadError();
|
return printSocketReadError();
|
||||||
|
|
||||||
// 10 gbe
|
// 10 gbe
|
||||||
#if defined(EIGERD) || defined(CHIPTESTBOARDD) || defined(MOENCHD)
|
#if defined(EIGERD) || defined(CHIPTESTBOARDD) || defined(MOENCHD) || \
|
||||||
|
defined(MYTHEN3D)
|
||||||
i32 = enableTenGigabitEthernet(GET_FLAG);
|
i32 = enableTenGigabitEthernet(GET_FLAG);
|
||||||
#else
|
#else
|
||||||
i32 = 0;
|
i32 = 0;
|
||||||
|
@ -462,6 +462,7 @@ class Mythen3Data : public GeneralData {
|
|||||||
*/
|
*/
|
||||||
void SetDynamicRange(int dr, bool tgEnable) {
|
void SetDynamicRange(int dr, bool tgEnable) {
|
||||||
imageSize = nPixelsX * nPixelsY * ((double)dr / 8.00);
|
imageSize = nPixelsX * nPixelsY * ((double)dr / 8.00);
|
||||||
|
packetsPerFrame = tgEnable ? 2 : 20;
|
||||||
dataSize = imageSize / packetsPerFrame;
|
dataSize = imageSize / packetsPerFrame;
|
||||||
packetSize = headerSizeinPacket + dataSize;
|
packetSize = headerSizeinPacket + dataSize;
|
||||||
LOG(logINFO) << "PacketSize: " << packetSize;
|
LOG(logINFO) << "PacketSize: " << packetSize;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user