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
lizhongxiao
OpenXG-RAN
Commits
498a0800
Commit
498a0800
authored
Sep 14, 2023
by
jperaldi
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'sqn/3GPP_TTCN_System_Simulator' into private/sqn_w20_merged
parents
da78e3fc
0ebc4cfa
Changes
8
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
901 additions
and
3 deletions
+901
-3
Sequans_USRP_setup.md
Sequans_USRP_setup.md
+303
-0
ci-scripts/conf_files/3GPP_System_Simulator/SS_gnb.n78.fr1.40mhz.n310.conf
...iles/3GPP_System_Simulator/SS_gnb.n78.fr1.40mhz.n310.conf
+302
-0
ci-scripts/conf_files/gNB.N78.fr1.40MHz.N310.conf
ci-scripts/conf_files/gNB.N78.fr1.40MHz.N310.conf
+279
-0
common/utils/system.c
common/utils/system.c
+5
-0
common/utils/utils.c
common/utils/utils.c
+5
-2
nfapi/open-nFAPI/calchksum.sh
nfapi/open-nFAPI/calchksum.sh
+1
-0
nfapi/open-nFAPI/version.json
nfapi/open-nFAPI/version.json
+4
-0
openair2/LAYER2/PDCP_v10.1.0/pdcp.c
openair2/LAYER2/PDCP_v10.1.0/pdcp.c
+2
-1
No files found.
Sequans_USRP_setup.md
0 → 100644
View file @
498a0800
This diff is collapsed.
Click to expand it.
ci-scripts/conf_files/3GPP_System_Simulator/SS_gnb.n78.fr1.40mhz.n310.conf
0 → 100644
View file @
498a0800
This diff is collapsed.
Click to expand it.
ci-scripts/conf_files/gNB.N78.fr1.40MHz.N310.conf
0 → 100644
View file @
498a0800
Active_gNBs
= (
"gNB-OAI"
);
# Asn1_verbosity, choice in: none, info, annoying
Asn1_verbosity
=
"none"
;
gNBs
= (
{
//////////
Identification
parameters
:
gNB_ID
=
0
xe00
;
gNB_name
=
"gNB-OAI"
;
//
Tracking
area
code
,
0
x0000
and
0
xfffe
are
reserved
values
tracking_area_code
=
1
;
plmn_list
= ({
mcc
=
001
;
mnc
=
01
;
mnc_length
=
2
;
snssaiList
= ({
sst
=
1
;
sd
=
1
; }); });
nr_cellid
=
12345678
L
;
//////////
Physical
parameters
:
ssb_SubcarrierOffset
=
0
;
pdsch_AntennaPorts_XP
=
1
;
pusch_AntennaPorts
=
1
;
do_CSIRS
=
0
;
do_SRS
=
0
;
#ul_prbblacklist = "135,136,137,138"
pdcch_ConfigSIB1
= ({
controlResourceSetZero
=
12
;
searchSpaceZero
=
10
;
});
servingCellConfigCommon
= (
{
# spCellConfigCommon
physCellId
=
0
;
# downlinkConfigCommon
# frequencyInfoDL
# this is 3300.60 MHz + 53*12*30e-3 MHz = 3954.72
absoluteFrequencySSB
=
623424
;
#621312;
dl_frequencyBand
=
78
;
# this is 3900.60 MHz
dl_absoluteFrequencyPointA
=
622152
;
#620040;
# scs-SpecificCarrierList
dl_offstToCarrier
=
0
;
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
dl_subcarrierSpacing
=
1
;
dl_carrierBandwidth
=
106
;
# initialDownlinkBWP
# genericParameters
initialDLBWPlocationAndBandwidth
=
28875
;
# subcarrierSpacing
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
initialDLBWPsubcarrierSpacing
=
1
;
# pdcch-ConfigCommon
initialDLBWPcontrolResourceSetZero
=
12
;
initialDLBWPsearchSpaceZero
=
0
;
# uplinkConfigCommon
# frequencyInfoUL
ul_frequencyBand
=
78
;
# scs-SpecificCarrierList
ul_offstToCarrier
=
0
;
# subcarrierSpacing
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
ul_subcarrierSpacing
=
1
;
ul_carrierBandwidth
=
106
;
pMax
=
20
;
# initialUplinkBWP
# genericParameters
initialULBWPlocationAndBandwidth
=
28875
;
# subcarrierSpacing
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
initialULBWPsubcarrierSpacing
=
1
;
# rach-ConfigCommon
# rach-ConfigGeneric
prach_ConfigurationIndex
=
98
;
# prach_msg1_FDM
# 0 = one, 1=two, 2=four, 3=eight
prach_msg1_FDM
=
0
;
prach_msg1_FrequencyStart
=
0
;
zeroCorrelationZoneConfig
=
12
;
preambleReceivedTargetPower
= -
90
;
# preamblTransMax (0...10) = (3,4,5,6,7,8,10,20,50,100,200)
preambleTransMax
=
6
;
# powerRampingStep
# 0=dB0,1=dB2,2=dB4,3=dB6
powerRampingStep
=
1
;
# ra_ReponseWindow
# 1,2,4,8,10,20,40,80
ra_ResponseWindow
=
4
;
# ssb_perRACH_OccasionAndCB_PreamblesPerSSB_PR
# 1=oneeighth,2=onefourth,3=half,4=one,5=two,6=four,7=eight,8=sixteen
ssb_perRACH_OccasionAndCB_PreamblesPerSSB_PR
=
3
;
# oneHalf (0..15) 4,8,12,16,...60,64
ssb_perRACH_OccasionAndCB_PreamblesPerSSB
=
15
;
# ra_ContentionResolutionTimer
# (0..7) 8,16,24,32,40,48,56,64
ra_ContentionResolutionTimer
=
7
;
rsrp_ThresholdSSB
=
19
;
# prach-RootSequenceIndex_PR
# 1 = 839, 2 = 139
prach_RootSequenceIndex_PR
=
2
;
prach_RootSequenceIndex
=
1
;
# SCS for msg1, can only be 15 for 30 kHz < 6 GHz, takes precendence over the one derived from prach-ConfigIndex
msg1_SubcarrierSpacing
=
1
,
# restrictedSetConfig
# 0=unrestricted, 1=restricted type A, 2=restricted type B
restrictedSetConfig
=
0
,
msg3_DeltaPreamble
=
1
;
p0_NominalWithGrant
=-
90
;
# pucch-ConfigCommon
# pucchGroupHopping
# 0 = neither, 1= group hopping, 2=sequence hopping
pucchGroupHopping
=
0
;
hoppingId
=
40
;
p0_nominal
= -
70
;
# dmrs_TypeA_position
# 0 = pos2, 1 = pos3
dmrs_TypeA_Position
=
0
;
# subcarrierSpacing
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
subcarrierSpacing
=
1
;
# ssb_PositionsInBurs_BitmapPR
# 1=short, 2=medium, 3=long
ssb_PositionsInBurst_PR
=
2
;
ssb_PositionsInBurst_Bitmap
=
1
;
# ssb_periodicityServingCell
# 0 = ms5, 1=ms10, 2=ms20, 3=ms40, 4=ms80, 5=ms160, 6=spare2, 7=spare1
ssb_periodicityServingCell
=
2
;
#tdd-UL-DL-ConfigurationCommon
# subcarrierSpacing
# 0=kHz15, 1=kHz30, 2=kHz60, 3=kHz120
referenceSubcarrierSpacing
=
1
;
# pattern1
# dl_UL_TransmissionPeriodicity
# 0=ms0p5, 1=ms0p625, 2=ms1, 3=ms1p25, 4=ms2, 5=ms2p5, 6=ms5, 7=ms10
dl_UL_TransmissionPeriodicity
=
6
;
nrofDownlinkSlots
=
7
;
nrofDownlinkSymbols
=
6
;
nrofUplinkSlots
=
2
;
nrofUplinkSymbols
=
4
;
ssPBCH_BlockPower
= -
25
;
}
);
# ------- SCTP definitions
SCTP
:
{
# Number of streams to use in input/output
SCTP_INSTREAMS
=
2
;
SCTP_OUTSTREAMS
=
2
;
};
//////////
AMF
parameters
:
amf_ip_address
= (
{
ipv4
=
"192.168.70.132"
;
ipv6
=
"192:168:30::17"
;
active
=
"yes"
;
preference
=
"ipv4"
;
}
);
NETWORK_INTERFACES
:
{
GNB_INTERFACE_NAME_FOR_NG_AMF
=
"enp6s0"
;
GNB_IPV4_ADDRESS_FOR_NG_AMF
=
"10.87.0.21"
;
GNB_INTERFACE_NAME_FOR_NGU
=
"enp6s0"
;
GNB_IPV4_ADDRESS_FOR_NGU
=
"10.87.0.21"
;
GNB_PORT_FOR_S1U
=
2152
;
# Spec 2152
}
}
);
MACRLCs
= (
{
num_cc
=
1
;
tr_s_preference
=
"local_L1"
;
tr_n_preference
=
"local_RRC"
;
pusch_TargetSNRx10
=
300
;
pucch_TargetSNRx10
=
200
;
pusch_FailureThres
=
100
;
ulsch_max_frame_inactivity
=
10
;
ul_max_mcs
=
28
;
#dl_harq_round_max = 1;
#ul_harq_round_max = 1;
}
);
L1s
= (
{
num_cc
=
1
;
tr_n_preference
=
"local_mac"
;
prach_dtx_threshold
=
120
;
pucch0_dtx_threshold
=
80
;
}
);
RUs
= (
{
local_rf
=
"yes"
nb_tx
=
1
;
nb_rx
=
1
;
att_tx
=
0
;
att_rx
=
0
;
bands
= [
78
];
max_pdschReferenceSignalPower
= -
27
;
max_rxgain
=
75
;
eNB_instances
= [
0
];
##beamforming 1x2 matrix: 1 layer x 2 antennas
bf_weights
= [
0
x00007fff
,
0
x0000
];
#clock_src = "internal";
sdr_addrs
=
"mgmt_addr=192.168.20.2,addr=192.168.20.2,clock_source=internal,time_source=internal"
}
);
THREAD_STRUCT
= (
{
#three config for level of parallelism "PARALLEL_SINGLE_THREAD", "PARALLEL_RU_L1_SPLIT", or "PARALLEL_RU_L1_TRX_SPLIT"
parallel_config
=
"PARALLEL_SINGLE_THREAD"
;
#two option for worker "WORKER_DISABLE" or "WORKER_ENABLE"
worker_config
=
"WORKER_ENABLE"
;
}
);
rfsimulator
:
{
serveraddr
=
"server"
;
serverport
=
"4043"
;
options
= ();
#("saviq"); or/and "chanmod"
modelname
=
"AWGN"
;
IQfile
=
"/tmp/rfsimulator.iqs"
;
};
security
= {
# preferred ciphering algorithms
# the first one of the list that an UE supports in chosen
# valid values: nea0, nea1, nea2, nea3
ciphering_algorithms
= (
"nea0"
);
# preferred integrity algorithms
# the first one of the list that an UE supports in chosen
# valid values: nia0, nia1, nia2, nia3
integrity_algorithms
= (
"nia2"
,
"nia0"
);
# setting 'drb_ciphering' to "no" disables ciphering for DRBs, no matter
# what 'ciphering_algorithms' configures; same thing for 'drb_integrity'
drb_ciphering
=
"yes"
;
drb_integrity
=
"no"
;
};
log_config
:
{
global_log_level
=
"info"
;
hw_log_level
=
"info"
;
phy_log_level
=
"info"
;
mac_log_level
=
"info"
;
rlc_log_level
=
"info"
;
pdcp_log_level
=
"info"
;
rrc_log_level
=
"info"
;
ngap_log_level
=
"debug"
;
f1ap_log_level
=
"info"
;
};
common/utils/system.c
View file @
498a0800
...
...
@@ -228,7 +228,12 @@ int rt_sleep_ns (uint64_t x)
void
threadCreate
(
pthread_t
*
t
,
void
*
(
*
func
)(
void
*
),
void
*
param
,
char
*
name
,
int
affinity
,
int
priority
){
pthread_attr_t
attr
;
int
ret
;
//To not impact HW TTCN setup with USRP, best is to keep OAI thread configuration with RT
#ifndef OAI_USRP
int
settingPriority
=
0
;
#else
int
settingPriority
=
1
;
#endif
ret
=
pthread_attr_init
(
&
attr
);
AssertFatal
(
ret
==
0
,
"ret: %d, errno: %d
\n
"
,
ret
,
errno
);
...
...
common/utils/utils.c
View file @
498a0800
...
...
@@ -7,8 +7,6 @@
#include <errno.h>
#include "utils.h"
const
char
*
hexdump
(
const
void
*
data
,
size_t
data_len
,
char
*
out
,
size_t
out_len
)
{
char
*
p
=
out
;
...
...
@@ -127,6 +125,10 @@ void *memcpy1(void *dst,const void *src,size_t n) {
void
set_priority
(
int
priority
)
{
//bug 129248, to deploy our CI on any server with strong security constraints (no possibility to be root)
// for USRP setup we can be root and let's not modify priority behaviour
// sched_setscheduler could be used potentially in the same way than TTCN simu as we don't have any constraints on performances
#ifdef OAI_USRP
struct
sched_param
param
=
{
.
sched_priority
=
priority
,
...
...
@@ -137,4 +139,5 @@ void set_priority(int priority)
fprintf
(
stderr
,
"sched_setscheduler: %s
\n
"
,
strerror
(
errno
));
abort
();
}
#endif
}
nfapi/open-nFAPI/calchksum.sh
0 → 100755
View file @
498a0800
find ./nfapi/public_inc/nfapi_interface.h ./nfapi/public_inc/nfapi_nr_interface.h ./nfapi/public_inc/nfapi_nr_interface_scf.h ./sim_common/inc/vendor_ext.h
-type
f
-exec
md5sum
{}
\;
|
sort
-k
2 |
md5sum
nfapi/open-nFAPI/version.json
0 → 100644
View file @
498a0800
{
"version"
:
"1.1.0"
,
"checksum"
:
"342cbe987294456dc75aaa806f54ccd5"
}
openair2/LAYER2/PDCP_v10.1.0/pdcp.c
View file @
498a0800
...
...
@@ -2653,6 +2653,7 @@ uint64_t pdcp_module_init( uint64_t pdcp_optmask, int id) {
((
LINK_ENB_PDCP_TO_GTPV1U
)
?
"usegtp"
:
""
),
((
PDCP_USE_NETLINK
)
?
"usenetlink"
:
""
));
if
(
RC
.
ss
.
mode
<
SS_SOFTMODEM
)
{
if
(
PDCP_USE_NETLINK
)
{
nas_getparams
();
...
...
@@ -2685,7 +2686,7 @@ uint64_t pdcp_module_init( uint64_t pdcp_optmask, int id) {
}
else
LOG_E
(
PDCP
,
"ENB pdcp will not use tun interface
\n
"
);
}
}
pthread_create
(
&
pdcp_stats_thread_desc
,
NULL
,
pdcp_stats_thread
,
NULL
);
return
pdcp_params
.
optmask
;
...
...
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