sigProcLib: add a CorrType for extended (11-bit) RACH
This is a preparatory change that enables a possibility to choose the amount of synch. sequences to be used for Access Burst (RACH) detection. The VTY flag will be introduced in further changes. There are two correlation types now: - RACH (default) - TS0 only; - EXT_RACH - all TS0, TS1, and TS2 together. Change-Id: Ia4f20524350bb8c380d7e10360758eddae8b03e9 Related: OS#3054
This commit is contained in:
parent
a79bc70737
commit
444ff34396
|
@ -1602,18 +1602,22 @@ static int detectGeneralBurst(const signalVector &rxBurst,
|
|||
* tail: Search 8 symbols + maximum expected delay
|
||||
*/
|
||||
static int detectRACHBurst(const signalVector &burst, float threshold, int sps,
|
||||
complex &litude, float &toa, unsigned max_toa)
|
||||
complex &litude, float &toa, unsigned max_toa, bool ext)
|
||||
{
|
||||
int rc, target, head, tail;
|
||||
CorrelationSequence *sync;
|
||||
int i, num_seq;
|
||||
|
||||
target = 8 + 40;
|
||||
head = 8;
|
||||
tail = 8 + max_toa;
|
||||
sync = gRACHSequences[0];
|
||||
num_seq = ext ? 3 : 1;
|
||||
|
||||
rc = detectGeneralBurst(burst, threshold, sps, amplitude, toa,
|
||||
target, head, tail, sync);
|
||||
for (i = 0; i < num_seq; i++) {
|
||||
rc = detectGeneralBurst(burst, threshold, sps, amplitude, toa,
|
||||
target, head, tail, gRACHSequences[i]);
|
||||
if (rc > 0)
|
||||
break;
|
||||
}
|
||||
|
||||
return rc;
|
||||
}
|
||||
|
@ -1682,9 +1686,10 @@ int detectAnyBurst(const signalVector &burst, unsigned tsc, float threshold,
|
|||
rc = analyzeTrafficBurst(burst, tsc, threshold, sps,
|
||||
amp, toa, max_toa);
|
||||
break;
|
||||
case EXT_RACH:
|
||||
case RACH:
|
||||
rc = detectRACHBurst(burst, threshold, sps, amp, toa,
|
||||
max_toa);
|
||||
max_toa, type == EXT_RACH);
|
||||
break;
|
||||
default:
|
||||
LOG(ERR) << "Invalid correlation type";
|
||||
|
|
|
@ -29,6 +29,7 @@
|
|||
enum CorrType{
|
||||
OFF, ///< timeslot is off
|
||||
TSC, ///< timeslot should contain a normal burst
|
||||
EXT_RACH, ///< timeslot should contain an extended access burst
|
||||
RACH, ///< timeslot should contain an access burst
|
||||
EDGE, ///< timeslot should contain an EDGE burst
|
||||
IDLE ///< timeslot is an idle (or dummy) burst
|
||||
|
|
Loading…
Reference in New Issue