📄 m_rrlp_asn1.asn1
字号:
-- N_SAT can be read from number of elements of satList
satList SeqOfSatElement
}
SeqOfSatElement ::= SEQUENCE (SIZE (1..16)) OF SatElement
-- number of correction for satellites
SatElement ::= SEQUENCE {
satelliteID SatelliteID,
--- Sequence number for ephemeris
iode INTEGER (0..255),
-- User Differential Range Error
udre INTEGER (0..3),
-- Pseudo Range Correction, range is
-- -655.34 - +655.34,
pseudoRangeCor INTEGER (-2047..2047),
-- Pseudo Range Rate Correction, range is
-- -4.064 - +4.064,
rangeRateCor INTEGER (-127..127),
-- Delta Pseudo Range Correction 2, range is
---127 - +127
deltaPseudoRangeCor2 INTEGER (-127..127),
-- Delta Pseudo Range Correction 2, range is
---0.224 - +0.224
deltaRangeRateCor2 INTEGER (-7..7),
-- Delta Pseudo Range Correction 3, range is
---127 - +127
deltaPseudoRangeCor3 INTEGER (-127..127),
-- Delta Pseudo Range Correction 3, range is
---0.224 - +0.224
deltaRangeRateCor3 INTEGER (-7..7)
}
SatelliteID ::= INTEGER (0..63) -- identifies satellite
-- Navigation Model IE
NavigationModel ::= SEQUENCE {
navModelList SeqOfNavModelElement
}
-- navigation model satellite list
SeqOfNavModelElement ::= SEQUENCE (SIZE(1..16)) OF NavModelElement
NavModelElement ::= SEQUENCE {
satelliteID SatelliteID,
satStatus SatStatus -- satellite status
}
-- the Status of the navigation model
SatStatus ::= CHOICE {
-- New satellite, new Navigation Model
newSatelliteAndModelUC UncompressedEphemeris,
-- Existing satellite, Existing Navigation Model
oldSatelliteAndModel NULL,
-- Existing satellite, new Navigation Model
newNaviModelUC UncompressedEphemeris,
...
}
-- Uncompressed satellite emhemeris and clock corrections
UncompressedEphemeris ::= SEQUENCE {
ephemCodeOnL2 INTEGER (0..3),
ephemURA INTEGER (0..15),
ephemSVhealth INTEGER (0..63),
ephemIODC INTEGER (0..1023),
ephemL2Pflag INTEGER (0..1),
ephemSF1Rsvd EphemerisSubframe1Reserved,
ephemTgd INTEGER (-128..127),
ephemToc INTEGER (0..37799),
ephemAF2 INTEGER (-128..127),
ephemAF1 INTEGER (-32768..32767),
ephemAF0 INTEGER (-2097152..2097151),
ephemCrs INTEGER (-32768..32767),
ephemDeltaN INTEGER (-32768..32767),
ephemM0 INTEGER (-2147483648..2147483647),
ephemCuc INTEGER (-32768..32767),
ephemE INTEGER (0..4294967295),
ephemCus INTEGER (-32768..32767),
ephemAPowerHalf INTEGER (0..4294967295),
ephemToe INTEGER (0..37799),
ephemFitFlag INTEGER (0..1),
ephemAODA INTEGER (0..31),
ephemCic INTEGER (-32768..32767),
ephemOmegaA0 INTEGER (-2147483648..2147483647),
ephemCis INTEGER (-32768..32767),
ephemI0 INTEGER (-2147483648..2147483647),
ephemCrc INTEGER (-32768..32767),
ephemW INTEGER (-2147483648..2147483647),
ephemOmegaADot INTEGER (-8388608..8388607),
ephemIDot INTEGER (-8192..8191)
}
-- Reserved bits in subframe 1 of navigation message
EphemerisSubframe1Reserved ::= SEQUENCE {
reserved1 INTEGER (0..8388607), -- 23-bit field
reserved2 INTEGER (0..16777215), -- 24-bit field
reserved3 INTEGER (0..16777215), -- 24-bit field
reserved4 INTEGER (0..65535) -- 16-bit field
}
-- Ionospheric Model IE
IonosphericModel ::= SEQUENCE {
alfa0 INTEGER (-128..127),
alfa1 INTEGER (-128..127),
alfa2 INTEGER (-128..127),
alfa3 INTEGER (-128..127),
beta0 INTEGER (-128..127),
beta1 INTEGER (-128..127),
beta2 INTEGER (-128..127),
beta3 INTEGER (-128..127)
}
-- Universal Time Coordinate Model
UTCModel ::= SEQUENCE {
utcA1 INTEGER (-8388608..8388607),
utcA0 INTEGER (-2147483648..2147483647),
utcTot INTEGER (0..255),
utcWNt INTEGER (0..255),
utcDeltaTls INTEGER (-128..127),
utcWNlsf INTEGER (0..255),
utcDN INTEGER (-128..127),
utcDeltaTlsf INTEGER (-128..127)
}
-- Almanac, Long term model
-- NOTE: These are parameters are subset of the ephemeris
-- NOTE: But with reduced resolution and accuracy
Almanac ::= SEQUENCE {
alamanacWNa INTEGER (0..255), -- Once per message
-- navigation model satellite list.
-- The size of almanacList is actually Nums_Sats_Total field
almanacList SeqOfAlmanacElement
}
SeqOfAlmanacElement ::= SEQUENCE (SIZE(1..64)) OF AlmanacElement
-- Almanac info once per satellite
AlmanacElement ::= SEQUENCE {
satelliteID SatelliteID,
almanacE INTEGER (0..65535),
alamanacToa INTEGER (0..255),
almanacKsii INTEGER (-32768..32767),
almanacOmegaDot INTEGER (-32768..32767),
almanacSVhealth INTEGER (0..255),
almanacAPowerHalf INTEGER (0..16777215),
almanacOmega0 INTEGER (-8388608..8388607),
almanacW INTEGER (-8388608..8388607),
almanacM0 INTEGER (-8388608..8388607),
almanacAF0 INTEGER (-1024..1023),
almanacAF1 INTEGER (-1024..1023)
}
-- Acquisition Assistance
AcquisAssist ::= SEQUENCE {
-- Number of Satellites can be read from acquistList
timeRelation TimeRelation,
-- Acquisition assistance list
-- The size of Number of Satellites is actually Number of Satellites field
acquisList SeqOfAcquisElement
}
SeqOfAcquisElement ::= SEQUENCE (SIZE(1..16)) OF AcquisElement
-- the relationship between GPS time and air-interface timing
TimeRelation ::= SEQUENCE {
--
gpsTOW GPSTOW23b, -- 23b presentation
gsmTime GSMTime OPTIONAL
}
-- data occuring per number of satellites
AcquisElement ::= SEQUENCE {
svid SatelliteID,
-- Doppler 0th order term,
-- -5.120 - 5.117.5 Hz (= -2048 - 2047 Hz with 2,5 Hz resolution)
doppler0 INTEGER (-2048..2047),
-- Doppler 1st order term, -1 - 0.5 resolution
addionalDoppler AddionalDopplerFields OPTIONAL,
codePhase INTEGER (0..1022), -- Code Phase
intCodePhase INTEGER (0..19), -- Integer Code Phase
gpsBitNumber INTEGER (0..3), -- GPS bit number
codePhaseSearchWindow INTEGER (0..15), -- Code Phase Search Window
addionalAngle AddionalAngleFields OPTIONAL
}
AddionalDopplerFields ::= SEQUENCE {
doppler1 INTEGER (0..63),
dopplerUncertainty INTEGER (0..7)
}
AddionalAngleFields ::= SEQUENCE {
-- azimuth angle, 0 - 348.75 deg (= 0 - 31 with 11.25 deg resolution)
azimuth INTEGER (0..31),
-- elevation angle, 0 - 78.75 deg (= 0 - 7 with 11.25 deg resolution)
elevation INTEGER (0..7)
}
-- Real-Time Integrity
-- number of bad satellites can be read from this element
SeqOf-BadSatelliteSet ::= SEQUENCE (SIZE(1..16)) OF SatelliteID
-- Extension Elements
-- Release 98 Extensions here
Rel98-MsrPosition-Req-Extension ::= SEQUENCE {
rel98-Ext-ExpOTD Rel98-Ext-ExpOTD OPTIONAL, -- ExpectedOTD extension
...
-- Further R98 extensions here
}
Rel98-AssistanceData-Extension ::= SEQUENCE {
rel98-Ext-ExpOTD Rel98-Ext-ExpOTD OPTIONAL, -- ExpectedOTD extension
...
-- Further R98 extensions here
}
-- Release 98 ExpOTD extension
Rel98-Ext-ExpOTD ::= SEQUENCE {
-- If MsrAssistBTS is included in message, msrAssistData-R98-ExpOTD shall be included. msrAssistData-R98-ExpOTD MsrAssistData-R98-ExpOTD OPTIONAL,
-- If SystemInfoAssistaData is included in message, systemInfoAssistData-R98-ExpOTD shall be
-- included.
systemInfoAssistData-R98-ExpOTD SystemInfoAssistData-R98-ExpOTD OPTIONAL
}
-- MsrAssistData R98 extension
MsrAssistData-R98-ExpOTD ::= SEQUENCE {
msrAssistList-R98-ExpOTD SeqOfMsrAssistBTS-R98-ExpOTD
}
-- Indexes in SeqOfMsrAssistBTS-R98-ExpOTD refer to SeqOfMsrAssistBTS
-- If the index exceeds the SegOfMsrAssistBTS range or if there is other
-- inconsistencies between the BTS indices, the MS shall apply protocol
-- error cause incorrectData
SeqOfMsrAssistBTS-R98-ExpOTD ::= SEQUENCE (SIZE(1..15)) OF MsrAssistBTS-R98-ExpOTD
-- This element completes MsrAssistBTS IE
MsrAssistBTS-R98-ExpOTD ::= SEQUENCE {
expectedOTD ExpectedOTD,
expOTDUncertainty ExpOTDUncertainty
}
-- SystemInfoAssistData R98 extension
SystemInfoAssistData-R98-ExpOTD ::= SEQUENCE {
systemInfoAssistListR98-ExpOTD SeqOfSystemInfoAssistBTS-R98-ExpOTD
}
-- SeqOfSystemInfoAssistBTS-R98-ExpOTD index refer to SeqOfSystemInfoAssistBTS
-- If the index exceeds the SegOfSystemInfoAssistBTS range or if there is other
-- inconsistencies between the BTS indices, the MS shall apply protocol
-- error cause incorrectData
SeqOfSystemInfoAssistBTS-R98-ExpOTD ::= SEQUENCE (SIZE(1..32)) OF SystemInfoAssistBTS-R98-ExpOTD
-- whether n.th is present or not ?
SystemInfoAssistBTS-R98-ExpOTD ::= CHOICE {
notPresent NULL,
present AssistBTSData-R98-ExpOTD
}
-- This element completes AssistBTSData IE
AssistBTSData-R98-ExpOTD ::= SEQUENCE {
expectedOTD ExpectedOTD,
expOTDuncertainty ExpOTDUncertainty -- Uncertainty of expected OTD
}
-- Expected OTD value between nbor base station and reference BTS
-- at MS's current estimated location.
ExpectedOTD ::= INTEGER (0..1250)
-- The ExpectedOTD value 1250 shall not be encoded by the transmitting entity and
-- shall be treated by the receiving entity as 0.
-- Uncertainty of Exptected OTD in bits
ExpOTDUncertainty ::= INTEGER(0..7)
-- Release 98 extensions
Rel-98-MsrPosition-Rsp-Extension ::= SEQUENCE {
-- First extension to Release 98
rel-98-Ext-MeasureInfo SEQUENCE {
otd-MeasureInfo-R98-Ext OTD-MeasureInfo-R98-Ext OPTIONAL
},
...
}
-- This is an addition to OTD-MeasureInfo element defined in original message,
-- If OTD-MeasureInfo is absent, or if one or more OTD-MsrElementRest are present
-- OTD-MeasureInfo-R98-Ext shall be absent.
-- OTD-MeasureInfo-R98-Ext
OTD-MeasureInfo-R98-Ext ::= SEQUENCE {
-- Measurement info elements
otdMsrFirstSets-R98-Ext OTD-MsrElementFirst-R98-Ext
}
-- OTD measurement information Ext for the first set only
OTD-MsrElementFirst-R98-Ext ::= SEQUENCE {
-- additional measured neighbors in OTD measurements
otd-FirstSetMsrs-R98-Ext SeqOfOTD-FirstSetMsrs-R98-Ext OPTIONAL
}
SeqOfOTD-FirstSetMsrs-R98-Ext ::= SEQUENCE (SIZE(1..5)) OF OTD-FirstSetMsrs
END
MAP-LCS-DataTypes
-- { MAP-LCS-DataTypes }
DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
Ext-GeographicalInformation ::= OCTET STRING (SIZE (1..maxExt-GeographicalInformation))
maxExt-GeographicalInformation INTEGER ::= 20
-- the maximum length allows for further shapes in GSM 03.32 to be included in later versions
-- of GSM 09.02
-- Refers to geographical Information defined in GSM 03.32.
-- This is composed of 1 or more octets with an internal structure according to GSM 03.32
-- Octet 1: Type of shape, only the following shapes in GSM 03.32 are allowed:
-- (a) Ellipsoid point with uncertainty circle
-- (b) Ellipsoid point with uncertainty ellipse
-- (c) Ellipsoid point with altitude and uncertainty ellipsoid
-- (d) Ellipsoid Arc
-- (e) Ellipsoid Point
-- Any other value in octet 1 shall be treated as invalid
-- Octets 2 to 8 for case (a)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -