mirror of
https://gitea.osmocom.org/cellular-infrastructure/osmo-trx.git
synced 2025-11-14 19:05:43 +00:00
Transceiver52M: Reduce RACH and TSC correlation windows
Start the correlation search window at 4 symbols before the expected correlation peak. End the search at 10 symbols and 4 + maximum expected delay for RACH and TSC bursts respectively. This change lowers receive side cpu utilization while maintaining reasonable timing jitter and accuracy tolerance. Signed-off-by: Thomas Tsou <tom@tsou.cc>
This commit is contained in:
@@ -1215,8 +1215,8 @@ static int detectBurst(signalVector &burst,
|
|||||||
*
|
*
|
||||||
* Correlation window parameters:
|
* Correlation window parameters:
|
||||||
* target: Tail bits + RACH length (reduced from 41 to a multiple of 4)
|
* target: Tail bits + RACH length (reduced from 41 to a multiple of 4)
|
||||||
* head: Search 8 symbols before target
|
* head: Search 4 symbols before target
|
||||||
* tail: Search 8 symbols after target
|
* tail: Search 10 symbols after target
|
||||||
*/
|
*/
|
||||||
int detectRACHBurst(signalVector &rxBurst,
|
int detectRACHBurst(signalVector &rxBurst,
|
||||||
float thresh,
|
float thresh,
|
||||||
@@ -1234,8 +1234,8 @@ int detectRACHBurst(signalVector &rxBurst,
|
|||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
target = 8 + 40;
|
target = 8 + 40;
|
||||||
head = 8;
|
head = 4;
|
||||||
tail = head;
|
tail = 10;
|
||||||
|
|
||||||
start = (target - head) * sps - 1;
|
start = (target - head) * sps - 1;
|
||||||
len = (head + tail) * sps;
|
len = (head + tail) * sps;
|
||||||
@@ -1268,8 +1268,8 @@ int detectRACHBurst(signalVector &rxBurst,
|
|||||||
*
|
*
|
||||||
* Correlation window parameters:
|
* Correlation window parameters:
|
||||||
* target: Tail + data + mid-midamble + 1/2 remaining midamblebits
|
* target: Tail + data + mid-midamble + 1/2 remaining midamblebits
|
||||||
* head: Search 8 symbols before target
|
* head: Search 4 symbols before target
|
||||||
* tail: Search 8 symbols + maximum expected delay
|
* tail: Search 4 symbols + maximum expected delay
|
||||||
*/
|
*/
|
||||||
int analyzeTrafficBurst(signalVector &rxBurst, unsigned tsc, float thresh,
|
int analyzeTrafficBurst(signalVector &rxBurst, unsigned tsc, float thresh,
|
||||||
int sps, complex *amp, float *toa, unsigned max_toa,
|
int sps, complex *amp, float *toa, unsigned max_toa,
|
||||||
@@ -1285,8 +1285,8 @@ int analyzeTrafficBurst(signalVector &rxBurst, unsigned tsc, float thresh,
|
|||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
target = 3 + 58 + 16 + 5;
|
target = 3 + 58 + 16 + 5;
|
||||||
head = 8;
|
head = 4;
|
||||||
tail = head + max_toa;
|
tail = 4 + max_toa;
|
||||||
|
|
||||||
start = (target - head) * sps - 1;
|
start = (target - head) * sps - 1;
|
||||||
len = (head + tail) * sps;
|
len = (head + tail) * sps;
|
||||||
|
|||||||
Reference in New Issue
Block a user