Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG-RAN
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wangwenhui
OpenXG-RAN
Commits
c4a91bcc
Commit
c4a91bcc
authored
Dec 29, 2020
by
Laurent
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
scope, dirty replay
parent
0f3629ae
Changes
5
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
249 additions
and
97 deletions
+249
-97
executables/nr-ue.c
executables/nr-ue.c
+6
-5
openair1/PHY/TOOLS/nr_phy_scope.c
openair1/PHY/TOOLS/nr_phy_scope.c
+228
-91
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
+4
-1
openair2/RRC/NR_UE/rrc_UE.c
openair2/RRC/NR_UE/rrc_UE.c
+5
-0
targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp
targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp
+6
-0
No files found.
executables/nr-ue.c
View file @
c4a91bcc
...
@@ -745,14 +745,13 @@ void *UE_thread(void *arg) {
...
@@ -745,14 +745,13 @@ void *UE_thread(void *arg) {
if
(
tmp
->
proc
.
decoded_frame_rx
!=
-
1
)
if
(
tmp
->
proc
.
decoded_frame_rx
!=
-
1
)
decoded_frame_rx
=
(((
mac
->
mib
->
systemFrameNumber
.
buf
[
0
]
>>
mac
->
mib
->
systemFrameNumber
.
bits_unused
)
<<
4
)
|
tmp
->
proc
.
decoded_frame_rx
);
decoded_frame_rx
=
(((
mac
->
mib
->
systemFrameNumber
.
buf
[
0
]
>>
mac
->
mib
->
systemFrameNumber
.
bits_unused
)
<<
4
)
|
tmp
->
proc
.
decoded_frame_rx
);
//decoded_frame_rx=tmp->proc.decoded_frame_rx;
else
decoded_frame_rx
=-
1
;
pushNotifiedFIFO_nothreadSafe
(
&
freeBlocks
,
res
);
pushNotifiedFIFO_nothreadSafe
(
&
freeBlocks
,
res
);
}
}
if
(
(
decoded_frame_rx
!=
curMsg
->
proc
.
frame_rx
)
&&
if
(
decoded_frame_rx
>
0
&&
decoded_frame_rx
!=
curMsg
->
proc
.
frame_rx
)
(((
decoded_frame_rx
+
1
)
%
MAX_FRAME_NUMBER
)
!=
curMsg
->
proc
.
frame_rx
)
&&
(((
decoded_frame_rx
+
2
)
%
MAX_FRAME_NUMBER
)
!=
curMsg
->
proc
.
frame_rx
))
LOG_E
(
PHY
,
"Decoded frame index (%d) is not compatible with current context (%d), UE should go back to synch mode
\n
"
,
LOG_E
(
PHY
,
"Decoded frame index (%d) is not compatible with current context (%d), UE should go back to synch mode
\n
"
,
decoded_frame_rx
,
curMsg
->
proc
.
frame_rx
);
decoded_frame_rx
,
curMsg
->
proc
.
frame_rx
);
...
@@ -781,7 +780,7 @@ void *UE_thread(void *arg) {
...
@@ -781,7 +780,7 @@ void *UE_thread(void *arg) {
msgToPush
->
key
=
slot_nr
;
msgToPush
->
key
=
slot_nr
;
pushTpool
(
Tpool
,
msgToPush
);
pushTpool
(
Tpool
,
msgToPush
);
if
(
IS_SOFTMODEM_RFSIM
||
IS_SOFTMODEM_NOS1
)
{
//getenv("RFSIMULATOR")
if
(
getenv
(
"RFSIMULATOR"
)
||
IS_SOFTMODEM_RFSIM
||
IS_SOFTMODEM_NOS1
)
{
//getenv("RFSIMULATOR")
// FixMe: Wait previous thread is done, because race conditions seems too bad
// FixMe: Wait previous thread is done, because race conditions seems too bad
// in case of actual RF board, the overlap between threads mitigate the issue
// in case of actual RF board, the overlap between threads mitigate the issue
// We must receive one message, that proves the slot processing is done
// We must receive one message, that proves the slot processing is done
...
@@ -791,6 +790,8 @@ void *UE_thread(void *arg) {
...
@@ -791,6 +790,8 @@ void *UE_thread(void *arg) {
if
(
tmp
->
proc
.
decoded_frame_rx
!=
-
1
)
if
(
tmp
->
proc
.
decoded_frame_rx
!=
-
1
)
decoded_frame_rx
=
(((
mac
->
mib
->
systemFrameNumber
.
buf
[
0
]
>>
mac
->
mib
->
systemFrameNumber
.
bits_unused
)
<<
4
)
|
tmp
->
proc
.
decoded_frame_rx
);
decoded_frame_rx
=
(((
mac
->
mib
->
systemFrameNumber
.
buf
[
0
]
>>
mac
->
mib
->
systemFrameNumber
.
bits_unused
)
<<
4
)
|
tmp
->
proc
.
decoded_frame_rx
);
else
decoded_frame_rx
=-
1
;
//decoded_frame_rx=tmp->proc.decoded_frame_rx;
//decoded_frame_rx=tmp->proc.decoded_frame_rx;
pushNotifiedFIFO_nothreadSafe
(
&
freeBlocks
,
res
);
pushNotifiedFIFO_nothreadSafe
(
&
freeBlocks
,
res
);
...
...
openair1/PHY/TOOLS/nr_phy_scope.c
View file @
c4a91bcc
This diff is collapsed.
Click to expand it.
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
View file @
c4a91bcc
...
@@ -1236,7 +1236,10 @@ void nr_ue_dlsch_procedures(PHY_VARS_NR_UE *ue,
...
@@ -1236,7 +1236,10 @@ void nr_ue_dlsch_procedures(PHY_VARS_NR_UE *ue,
rx_ind
.
rx_indication_body
[
0
].
pdsch_pdu
.
pdu
=
dlsch0
->
harq_processes
[
harq_pid
]
->
b
;
rx_ind
.
rx_indication_body
[
0
].
pdsch_pdu
.
pdu
=
dlsch0
->
harq_processes
[
harq_pid
]
->
b
;
rx_ind
.
rx_indication_body
[
0
].
pdsch_pdu
.
pdu_length
=
dlsch0
->
harq_processes
[
harq_pid
]
->
TBS
>>
3
;
rx_ind
.
rx_indication_body
[
0
].
pdsch_pdu
.
pdu_length
=
dlsch0
->
harq_processes
[
harq_pid
]
->
TBS
>>
3
;
LOG_D
(
PHY
,
"PDU length in bits: %d, in bytes: %d
\n
"
,
dlsch0
->
harq_processes
[
harq_pid
]
->
TBS
,
rx_ind
.
rx_indication_body
[
0
].
pdsch_pdu
.
pdu_length
);
LOG_W
(
PHY
,
"PDU length in bits: %d, in bytes: %d
\n
"
,
dlsch0
->
harq_processes
[
harq_pid
]
->
TBS
,
rx_ind
.
rx_indication_body
[
0
].
pdsch_pdu
.
pdu_length
);
for
(
int
i
=
0
;
i
<
rx_ind
.
rx_indication_body
[
0
].
pdsch_pdu
.
pdu_length
;
i
++
)
printf
(
"%x:"
,
dlsch0
->
harq_processes
[
harq_pid
]
->
b
[
i
]);
printf
(
"ret: %d
\n
"
,
ret
);
rx_ind
.
number_pdus
=
1
;
rx_ind
.
number_pdus
=
1
;
// send to mac
// send to mac
...
...
openair2/RRC/NR_UE/rrc_UE.c
View file @
c4a91bcc
...
@@ -1499,7 +1499,12 @@ int8_t nr_rrc_ue_decode_NR_SIB1_Message(module_id_t module_id, uint8_t gNB_index
...
@@ -1499,7 +1499,12 @@ int8_t nr_rrc_ue_decode_NR_SIB1_Message(module_id_t module_id, uint8_t gNB_index
SEQUENCE_free
(
&
asn_DEF_NR_BCCH_BCH_Message
,
(
void
*
)
sib1
,
1
);
SEQUENCE_free
(
&
asn_DEF_NR_BCCH_BCH_Message
,
(
void
*
)
sib1
,
1
);
}
}
sib1
=
bcch_message
->
message
.
choice
.
c1
->
choice
.
systemInformationBlockType1
;
sib1
=
bcch_message
->
message
.
choice
.
c1
->
choice
.
systemInformationBlockType1
;
if
(
*
(
int64_t
*
)
sib1
!=
1
)
{
printf
(
"%llx
\n
"
,
*
(
int64_t
*
)
sib1
);
xer_fprint
(
stdout
,
&
asn_DEF_NR_SIB1
,
(
const
void
*
)
sib1
);
xer_fprint
(
stdout
,
&
asn_DEF_NR_SIB1
,
(
const
void
*
)
sib1
);
}
else
LOG_E
(
PHY
,
"sib1 is starting by 8 times 0
\n
"
);
}
}
return
0
;
return
0
;
...
...
targets/ARCH/USRP/USERSPACE/LIB/usrp_lib.cpp
View file @
c4a91bcc
...
@@ -657,6 +657,12 @@ static int trx_usrp_read(openair0_device *device, openair0_timestamp *ptimestamp
...
@@ -657,6 +657,12 @@ static int trx_usrp_read(openair0_device *device, openair0_timestamp *ptimestamp
}
}
if
(
samples_received
==
nsamps
)
s
->
wait_for_first_pps
=
0
;
if
(
samples_received
==
nsamps
)
s
->
wait_for_first_pps
=
0
;
}
}
if
(
getenv
(
"recorded"
)
)
{
static
int
h
=-
1
;
if
(
h
==-
1
)
h
=
open
(
getenv
(
"recorded"
),
O_RDONLY
,
0
);
read
(
h
,
buff_tmp
[
0
],
nsamps
*
4
);
}
// bring RX data into 12 LSBs for softmodem RX
// bring RX data into 12 LSBs for softmodem RX
for
(
int
i
=
0
;
i
<
cc
;
i
++
)
{
for
(
int
i
=
0
;
i
<
cc
;
i
++
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment