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

📄 m_rrlp_asn1.asn1

📁 GSM手机设计软件代码
💻 ASN1
📖 第 1 页 / 共 3 页
字号:
--Version 0x0001 
--VersionText \g23m\condat\ms\doc\sap

RRLP-Messages
-- { RRLP-messages }

DEFINITIONS AUTOMATIC TAGS ::=

BEGIN

IMPORTS 
	MsrPosition-Req, MsrPosition-Rsp, AssistanceData,
	ProtocolError
FROM
	RRLP-Components 	-- { RRLP-Components }
;

PDU ::= SEQUENCE {
	referenceNumber			INTEGER (0..7),
	component			RRLP-Component 
}

RRLP-Component ::= CHOICE {
	msrPositionReq			MsrPosition-Req,
	msrPositionRsp			MsrPosition-Rsp,
	assistanceData			AssistanceData,
	assistanceDataAck		NULL,
	protocolError			ProtocolError,
	...

}

END
 
RRLP-Components
-- { RRLP-Components }

DEFINITIONS AUTOMATIC TAGS ::=

BEGIN

IMPORTS
	Ext-GeographicalInformation
FROM
	MAP-LCS-DataTypes {
	ccitt identified-organization (4) etsi (0) mobileDomain (0)
   	gsm-Network (1) modules (3) map-LCS-DataTypes (25) version5 (5)}

	ExtensionContainer
FROM MAP-ExtensionDataTypes {
	ccitt identified-organization (4) etsi (0) mobileDomain (0)
	gsm-Network (1) modules (3) map-ExtensionDataTypes (21) version4 (4)}
;

-- Add here other ASN.1 definitions presented below
-- in chapters 4 and 5.

-- add this definition to RRLP-Components module

-- Measurement Position request component
MsrPosition-Req ::= SEQUENCE {
	positionInstruct		PositionInstruct,
	referenceAssistData		ReferenceAssistData		OPTIONAL,
	msrAssistData			MsrAssistData			OPTIONAL,
	systemInfoAssistData		SystemInfoAssistData		OPTIONAL,
	gps-AssistData			GPS-AssistData			OPTIONAL,
	extensionContainer		ExtensionContainer		OPTIONAL,
	...,
	-- Release 98 extension element
	rel98-MsrPosition-Req-extension			Rel98-MsrPosition-Req-Extension			OPTIONAL	
} 

-- add this defintion to RRLP-Components module

-- Measurement Position response component
MsrPosition-Rsp ::= SEQUENCE {
	multipleSets			MultipleSets			OPTIONAL,
	referenceIdentity		ReferenceIdentity		OPTIONAL,
	otd-MeasureInfo			OTD-MeasureInfo			OPTIONAL,
	locationInfo			LocationInfo			OPTIONAL,
	gps-MeasureInfo			GPS-MeasureInfo			OPTIONAL,
	locationError			LocationError			OPTIONAL,
	extensionContainer		ExtensionContainer		OPTIONAL,
	...,
	-- Release extension here
	rel-98-MsrPosition-Rsp-Extension		Rel-98-MsrPosition-Rsp-Extension		OPTIONAL	
}

-- add this defintion to RRLP-Components module

-- Assistance Data component
AssistanceData ::= SEQUENCE {
	referenceAssistData		ReferenceAssistData		OPTIONAL,
	msrAssistData			MsrAssistData			OPTIONAL,
	systemInfoAssistData		SystemInfoAssistData		OPTIONAL,
	gps-AssistData			GPS-AssistData			OPTIONAL,	
	moreAssDataToBeSent		MoreAssDataToBeSent		OPTIONAL,	-- If not present, interpret as only
											-- Assistance Data component used to
											-- deliver entire set of assistance
											-- data.
	extensionContainer		ExtensionContainer		OPTIONAL,
	...,
    -- Release extension here
    rel98-AssistanceData-Extension   Rel98-AssistanceData-Extension    OPTIONAL		
}

-- add this defintion to RRLP-Components module

-- Protocol Error component
ProtocolError ::= SEQUENCE {
	errorCause			ErrorCodes,	
	extensionContainer		ExtensionContainer		OPTIONAL,
     ...
}

-- add these defintions to RRLP-Components module
-- Position instructions
PositionInstruct ::= SEQUENCE {
	-- Method type 
	methodType			MethodType,	
	positionMethod			PositionMethod,
	measureResponseTime		MeasureResponseTime,		
	useMultipleSets			UseMultipleSets,		
	environmentCharacter		EnvironmentCharacter		OPTIONAL	
}


--
MethodType ::= CHOICE {
	msAssisted		AccuracyOpt,		-- accuracy is optional
	msBased			Accuracy,		-- accuracy is mandatory
	msBasedPref		Accuracy,		-- accuracy is mandatory
	msAssistedPref		Accuracy 		-- accuracy is mandatory
}


-- Accuracy of the location estimation
AccuracyOpt ::= SEQUENCE {
	accuracy		Accuracy	OPTIONAL
}


-- The values of this field are defined in 3GPP TS 03.32 (Uncertainty code)
Accuracy ::= INTEGER (0..127)



-- Position Method
PositionMethod ::= ENUMERATED {
	eotd (0),
	gps (1),
	gpsOrEOTD (2)
}


-- Measurement request response time 
MeasureResponseTime ::= INTEGER (0..7)


-- useMultiple Sets, FFS!
UseMultipleSets ::= ENUMERATED {
	multipleSets (0),			-- multiple sets are allowed
	oneSet (1)				-- sending of multiple is not allowed
}


-- Environment characterization
EnvironmentCharacter ::= ENUMERATED {
	badArea (0),		-- bad urban or suburban, heavy multipath and NLOS
	notBadArea (1),		-- light multipath and NLOS
	mixedArea (2),		-- not defined or mixed environment
	...
}


-- ellipsis point and 
-- ellipsoid point with altitude shapes are supported 
-- CSH: Removed this type definition. Might be obsolete??
-- BTSPosition ::= Ext-GeographicalInformation 

-- E-OTD reference BTS for Assitance data IE
ReferenceAssistData ::= SEQUENCE {
	bcchCarrier		BCCHCarrier,					-- BCCH carrier
	bsic			BSIC,						-- BSIC
	timeSlotScheme		TimeSlotScheme, 				-- Timeslot scheme
	btsPosition		Ext-GeographicalInformation			OPTIONAL 
}







-- RF channel number of BCCH
BCCHCarrier ::= INTEGER (0..1023)


-- Base station Identity Code
BSIC ::= INTEGER (0..63)


-- Timeslot scheme
TimeSlotScheme ::= ENUMERATED {
	equalLength (0),
	variousLength (1)
}


-- Time slot (modulo)
ModuloTimeSlot ::= INTEGER (0..3)


-- E-OTD measurement assistance data IE
-- The total number of neighbors in this element (MsrAssistData)
-- and in SystemInfoAssistData element (presented neighbors
-- can be at a maximum 15!)
MsrAssistData ::= SEQUENCE {
	 msrAssistList SeqOfMsrAssistBTS
}
SeqOfMsrAssistBTS ::= SEQUENCE (SIZE(1..15)) OF MsrAssistBTS


MsrAssistBTS ::= SEQUENCE {
	bcchCarrier			BCCHCarrier,		-- BCCH carrier
	bsic				BSIC,			-- BSIC
	multiFrameOffset		MultiFrameOffset, 	-- multiframe offset
	timeSlotScheme			TimeSlotScheme,		-- Timeslot scheme
	roughRTD			RoughRTD,		-- rough RTD value

	-- Location Calculation Assistance data is moved here
	calcAssistanceBTS	CalcAssistanceBTS	OPTIONAL

}


-- Multiframe offset
MultiFrameOffset ::= INTEGER (0..51)
-- The Multiframe Offset value 51 shall not be encoded by the transmitting entity and
-- shall be treated by the receiving entity as 0. 

-- Rough RTD value between one base station and reference BTS
RoughRTD ::= INTEGER (0..1250)
-- The RoughRTD value 1250 shall not be encoded by the transmitting entity and shall
-- be treated by the receiving entity as 0. 
-- E-OTD Measurement assistance data for system information List IE
-- The total number of base stations in this element (SystemInfoAssistData
-- presented neighbors) and in MsrAssistData element can be at a maximum 15.
SystemInfoAssistData ::= SEQUENCE {
	systemInfoAssistList 	SeqOfSystemInfoAssistBTS
}
SeqOfSystemInfoAssistBTS::= SEQUENCE (SIZE(1..32)) OF SystemInfoAssistBTS


-- whether n.th is present or not ?
SystemInfoAssistBTS ::= CHOICE {
	notPresent		NULL,
	present			AssistBTSData
}


-- Actual assistance data for system information base station
AssistBTSData ::= SEQUENCE {
	bsic				BSIC,			-- BSIC
	multiFrameOffset		MultiFrameOffset,	-- multiframe offset
	timeSlotScheme			TimeSlotScheme,		-- Timeslot scheme
	roughRTD			RoughRTD,		-- rough RTD value

	-- Location Calculation Assistance data
	calcAssistanceBTS		CalcAssistanceBTS	OPTIONAL
}


-- E-OTD Location calculation assistance data,
-- CalcAssistanceBTS element is optional not subfields 
CalcAssistanceBTS ::= SEQUENCE {
	fineRTD				FineRTD,		-- fine RTD value between base stations
	referenceWGS84			ReferenceWGS84		-- reference coordinates
}


-- Coordinates of neighbour BTS, WGS-84 ellipsoid 
ReferenceWGS84 ::= SEQUENCE {
	relativeNorth		RelDistance,				-- relative distance (south negative)
	relativeEast		RelDistance,				-- relative distance (west negative)
	-- Relative Altitude is not always known
	relativeAlt		RelativeAlt		OPTIONAL	-- relative altitude
}


-- Fine RTD value between this BTS and the reference BTS	
FineRTD ::= INTEGER (0..255)


-- Relative north/east distance
RelDistance ::= INTEGER (-200000..200000)


-- Relative altitude
RelativeAlt ::= INTEGER (-4000..4000)



-- Measure position response IEs
-- Reference Identity
-- Multiple sets
MultipleSets ::= SEQUENCE {
	-- number of reference sets 
	nbrOfSets			INTEGER (2..3),		

	-- This field actually tells the number of reference BTSs
	nbrOfReferenceBTSs	INTEGER (1..3),

	-- This field is conditional and included optionally only if
	-- nbrOfSets is 3 and number of reference BTSs is 2.
	referenceRelation		ReferenceRelation		OPTIONAL
}


-- Relation between refence BTSs and sets
ReferenceRelation ::= ENUMERATED {
	secondBTSThirdSet (0),	-- 1st BTS related to 1st and 2nd sets
	secondBTSSecondSet (1),	-- 1st BTS related to 1st and 3rd sets
	firstBTSFirstSet (2)	-- 1st BTS related to 1st set
}


-- Reference BTS Identity, this element contains number of 
-- BTSs told nbrOfReferenceBTSs field in Multiple sets element)
ReferenceIdentity ::= SEQUENCE {
	-- Reference BTS list
	refBTSList		SeqOfReferenceIdentityType
}
SeqOfReferenceIdentityType ::= SEQUENCE (SIZE(1..3)) OF ReferenceIdentityType


-- Cell identity
ReferenceIdentityType ::= CHOICE {
	bsicAndCarrier		BSICAndCarrier,		-- BSIC and Carrier
	ci			CellID,			-- Cell ID, LAC not needed
	requestIndex		RequestIndex,		-- Index to Requested Neighbor List 
	systemInfoIndex		SystemInfoIndex,	-- Index to System info list, this type of ref. identity
                                            -- shall not be used by the MS unless it has received
                                            -- the SystemInfoAssistData from the SMLC for this cell.
	ciAndLAC		CellIDAndLAC		-- CI and LAC
}

BSICAndCarrier ::= SEQUENCE {
	carrier	BCCHCarrier,
	bsic		BSIC
}

RequestIndex ::= INTEGER (1..16)

SystemInfoIndex ::= INTEGER (1..32)

CellIDAndLAC ::= SEQUENCE {
	referenceLAC		LAC,				-- Location area code
	referenceCI		CellID				-- Cell identity
}

CellID ::= INTEGER (0..65535)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -