Commit 5f0ca54d authored by fischerjo's avatar fischerjo
Browse files

ISO 21218

ToDo List: 6 and 8
parent 663f3be4
Loading
Loading
Loading
Loading
+46 −50
Original line number Diff line number Diff line
@@ -670,77 +670,73 @@ module LibItsAtsp_Functions {
		function f_get_CI_LinkID() return Link_ID{
			if(PICS_MAC48)
			{
	        	return {remoteCIID := c_dniCiid, localCIID := PX_CI_LOCAL_CIID}
	        	return {remoteCIID := PX_REMOTE_CIID_LOCAL_CI, localCIID := PX_LOCAL_CIID}
			}
			else
			{
			//TODO: LegacyCIIDs
			return {remoteCIID := c_dniCiid, localCIID := PX_CI_LOCAL_CIID};
				return {remoteCIID := PX_REMOTE_CIID_LOCAL_CI, localCIID := PX_LOCAL_CIID};
			}
	    } // end 
		
		
		//used to address one of the UC-VCI
		//TODO:
		function f_get_LocalVCI_UC_LinkID() return Link_ID{
		// used to send via a UC-VCI
		// source_address field
		// use f_get_CI_LinkID
		
		// used to send via a UC-VCI
		// destination_address field
		function f_get_DestinationVCI_UC_LinkID() return Link_ID{
	        if(PICS_MAC48)
			{
	        	return {remoteCIID := c_dniCiid, localCIID := PX_CI_LOCAL_CIID}
	        	return {remoteCIID := PX_REMOTE_CIID_UC , localCIID := PX_LOCAL_CIID}
			}
			//TODO: LegacyCIIDs
			return {remoteCIID := c_dniCiid, localCIID := PX_CI_LOCAL_CIID};
	    } // end 
		//used in case of IN-DATAIND for remote LinkID
		function f_get_RemoteVCI_UC_LinkID() return Link_ID{
	        if(PICS_MAC48)
			else
			{
	        	return {remoteCIID := c_dniCiid, localCIID := PX_CI_LOCAL_CIID}
			}
			//TODO: LegacyCIIDs
			return {remoteCIID := c_dniCiid, localCIID := PX_CI_LOCAL_CIID};
				return {remoteCIID := PX_REMOTE_CIID_UC, localCIID := PX_LOCAL_CIID};
			}
	    } // end 
		
		//used to address one of the BC-VCI
		//TODO:
		function f_get_LocalVCI_BC_LinkID() return Link_ID{
		// used to send via a BC-VCI
		// source_address field
		// use f_get_CI_LinkID
		
		// used to send via a BC-VCI
		// destination_address field
		function f_get_DestinationVCI_BC_LinkID() return Link_ID{
	        if(PICS_MAC48)
			{
				return {remoteCIID := c_dniCiid, localCIID := PX_CI_LOCAL_CIID}
		        return {remoteCIID := PX_REMOTE_CIID_BC, localCIID := PX_LOCAL_CIID}
			}
			else
			{
			//LegacyCIIDs
			return {remoteCIID := c_dniCiid, localCIID := PX_CI_LOCAL_CIID};
	    } // end 
		//used in case of IN-DATAIND for remote LinkID
		function f_get_RemoteVCI_BC_LinkID() return Link_ID{
	        return {remoteCIID := c_dniCiid, localCIID := PX_CI_LOCAL_CIID}
	    } // end 
		        return {remoteCIID := PX_REMOTE_CIID_BC, localCIID := PX_LOCAL_CIID}
			}
		}
				
		// used to send via a BC-VCI
		// source_address field
		// use f_get_CI_LinkID
		
		//used to address one of the MC-VCI
		//TODO:
		function f_get_LocalVCI_MC_LinkID() return Link_ID{
		// used to send via a MC-VCI
		// destination_address field
		function f_get_DestinationVCI_MC_LinkID() return Link_ID{
	        if(PICS_MAC48)
			{
	        	return {remoteCIID := c_dniCiid, localCIID := PX_CI_LOCAL_CIID}
		        return {remoteCIID := PX_REMOTE_CIID_MC, localCIID := PX_LOCAL_CIID}
			}
			else
			{
			//LegacyCIIDs
			return {remoteCIID := c_dniCiid, localCIID := PX_CI_LOCAL_CIID};
	    } // end 
		//used in case of IN-DATAIND for remote LinkID
		function f_get_RemoteVCI_MC_LinkID() return Link_ID{
	        return {remoteCIID := c_dniCiid, localCIID := PX_CI_LOCAL_CIID}
		        return {remoteCIID := PX_REMOTE_CIID_MC, localCIID := PX_LOCAL_CIID}
			}

		} // end 
		
		
		function f_get_INSAP_src_Command() return IN_SAPaddress{
			return bit2int('000000'B & '00'B);
		}
		function f_get_INSAP_src_Response() return IN_SAPaddress{
			return bit2int('000000'B & '01'B);
		}
		function f_get_INSAP_dst_Individual() return IN_SAPaddress{
			return bit2int('000000'B & '00'B);
		}
		function f_get_INSAP_dst_Group() return IN_SAPaddress{
			return bit2int('000000'B & '01'B);
		}
	}

	
} // End of module LibItsAtsp_Functions
+54 −7
Original line number Diff line number Diff line
@@ -8,7 +8,7 @@ module LibItsAtsp_Pixits {
	
	import from CALMllsap language "ASN.1:1997" {
        type 
			EUI64, MedID, VCIserialNumber
			EUI64, MedID, VCIserialNumber, IN_SAPaddress
    };
	
	import from CALMmanagement language "ASN.1:1997" {
@@ -22,6 +22,14 @@ module LibItsAtsp_Pixits {
     */
	modulepar ITS_scuId PX_ITS_SCU_ID := 0;
	
	/**
     * @desc Expected IN-SAP address
     * @see ISO 21218 - Clause 8.2 Addressing
	 * FNTP: 186
	 * IPv6: 182
     */
	modulepar IN_SAPaddress PX_IN_SAP_ADDRESS := 186;

	/**
     * @desc Expected MedType of the IUT CI
     * @see ISO 21218 - Clause 6.3 Link Identifier 
@@ -35,13 +43,52 @@ module LibItsAtsp_Pixits {
	modulepar VCIserialNumber PX_VCI_SERIAL_NUMBER := 0;
	
	/**
     * @desc Expected LocalCIID of the IUT CI
     * @see ISO 21218 - Clause 6.3 Link Identifier 
     * Wait until the IUT is in a stable situation (beaconing...)
     */
    modulepar EUI64 PX_CI_LOCAL_CIID := '000000FFFE000000'O;
    modulepar float PX_WAIT_FOR_IUT_READY := 1.0;


    /**
     * Wait until the IUT is in a stable situation (beaconing...)
    * @desc Identifies RemoteLocalCIID group
	* Values of RemoteCIID and LocalCIID 
    * @see ISO 21218 - Clause 6.3 Link Identifier and 8.2.2 Tables 6 and 7
    */
    modulepar float PX_WAIT_FOR_IUT_READY := 1.0;
	group RemoteLocalCIID {
        /**
         * @desc Identifies RemoteCIID of local VCI
         */
//        modulepar EUI64 PX_REMOTE_CIID_LOCAL := 'FFFFFFFFFEFFFFFF'O; // DNI
		modulepar EUI64 PX_REMOTE_CIID_LOCAL_CI := PX_LOCAL_CIID;
		
        /**
         * @desc Identifies the VCI localCIID on ITS-S router (e.g. It coud be the G5 radio MAC address of the IUT)
		 * NOTE 0A0B0CFFFE0D0E0F is MAC address 0A:0B:0C:0D:0E:0F
         */
//        modulepar EUI64 PX_LOCAL_CIID := 'FFFFFFFFFEFFFFFF'O    ; // DNI
        modulepar EUI64 PX_LOCAL_CIID :=     '0A0B0CFFFE0D0E0F'O; // Commsignia FNTP setting (laptop)
//        modulepar EUI64 PX_LOCAL_CIID :=     'FFFFFFFFFEFFFFFF'O ; // Commsignia FSAP setting
//        modulepar EUI64 PX_LOCAL_CIID :=     'D4CA6DFFFF55A72C'O ; // Commsignia FNTP setting (ITS-S box)
//        modulepar EUI64 PX_LOCAL_CIID :=     '000C42FFFF6A9E2C'O; // Peek setting (@home)
//        modulepar EUI64 PX_LOCAL_CIID :=     '000C42FFFF974497'O; // Peek setting (@office)
        
        /**
         * @desc Identifies the VCI for broadcast on ITS-S router 
		 * Note that U/L bit is set to 1 for broadcast 
         */
        modulepar EUI64 PX_REMOTE_CIID_BC := 'FFFFFFFFFEFFFFFF'O; 
        
        /**
         * @desc Identifies the VCI for multicast on ITS-S router 
         */
        modulepar EUI64 PX_REMOTE_CIID_MC := 'EF0008FFFE011234'O;
        
        /**
         * @desc Identifies the VCI for unicast on ITS-S router (peer station)
         */
        modulepar EUI64 PX_REMOTE_CIID_UC := '030008FFFE010001'O; // Commsignia setting
//        modulepar EUI64 PX_REMOTE_CIID_UC := '030008FFFF010001'O; // Peek setting
        
    } // End of group RemoteLocalCIID


} // End of module LibItsAtsp_Pixits
+12 −7
Original line number Diff line number Diff line
@@ -118,8 +118,7 @@ module LibItsAtsp_TypesAndValues {
		const INtxStatus c_ciINtxStatus_unspecFailure := 255;
	}
	
	group utPrimitives {
        
	group cnPrimitives {
        /**
         * @desc Trigger to initialize the IUT.
         * @member McmdRq MN-COMMAND-Request message to initialize the upper tester
@@ -155,6 +154,12 @@ module LibItsAtsp_TypesAndValues {
            encode (miCommandConfirm, miRequestRequest, miGetConfirm, miSetConfirm) "LibItsCALMmsap_asn1"  
        }
		
		
    } // End of group cnPrimitives

	
	group utPrimitives {
        
		/**
         * @desc Send a MI-SAP.request primitive to the Management layer through a SAP.
         * @member mnCommandRequest MI_Command_request primitive 
@@ -170,8 +175,8 @@ module LibItsAtsp_TypesAndValues {
        }
		
        /**
         * @desc Events at the application layer of the IUT.
         * @member niSapPrimitivesDown NI-SAP down primitive 
         * @desc Present an IN-SAP service primitive to the access layer
         * @member inSapPrimitivesDown IN-SAP down primitive 
         */
        type union UtAtspEvent { 
            INsapPrimitivesDown inSapPrimitivesDown 
@@ -181,8 +186,8 @@ module LibItsAtsp_TypesAndValues {
        }
        
        /**
         * @desc Send a NF-SAP primitive from Facility layer through a SAP.
         * @member nfSapPrimitivesUp NF-SAP up primitive 
         * @desc Present an IN-SAP service primitive to networking & transport layer
         * @member inSapPrimitivesUp IN-SAP up primitive 
         */
        type union UtAtspEventInd { 
            INsapPrimitivesUp inSapPrimitivesUp