⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 m_rrlp_asn1.asn1

📁 GSM手机设计软件代码
💻 ASN1
📖 第 1 页 / 共 3 页
字号:

	-- 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 + -