Example-1-3GPP-7.1.3.tdlan2 5.65 KB
Newer Older
Philip Makedonski's avatar
Philip Makedonski committed
Copyright (c) ETSI 2022.

This software is subject to copyrights owned by ETSI. Non-exclusive permission
is hereby granted, free of charge, to copy, reproduce and amend this file
under the following conditions: It is provided "as is", without warranty of any
kind, expressed or implied.

ETSI shall never be liable for any claim, damages, or other liability arising
from its use or inability of use.This permission does not apply to any documentation
associated with this file for which ETSI keeps all rights reserved. The present
copyright notice shall be included in all copies of whole or part of this
file and shall not imply any sub-license right.
*/

//Translated from [i.5], Section 7.1.3.
Package Layer_2_DL_SCH_Data_Transfer {
  //Procedures carried out by a component of a test configuration 
  //or an actor during test execution
  Action preCondition : "Pre-test Conditions: 
Philip Makedonski's avatar
Philip Makedonski committed
          RRC Connection Reconfiguration" ;
  Action preamble : "Preamble:
          The generic procedure to get UE in test state Loopback 
          Activated (State 4) according to TS 36.508 clause 4.5 
          is executed, with all the parameters as specified in the 
          procedure except that the RLC SDU size is set to return no 
          data in uplink. 
          (reference corresponding behavior once implemented" ;

  //User-defined verdicts
  //Alternatively the predefined verdicts may be used as well 
  Type Verdict ;
  Verdict PASS;
  Verdict FAIL;
  
  //User-defined annotation types
  Annotation TITLE ;         //Test description title
  Annotation STEP ;          //Step identifiers in source documents
  Annotation PROCEDURE ;     //Informal textual description of a test step 
  Annotation PRECONDITION ;  //Identify pre-condition behaviour
  Annotation PREAMBLE ;      //Identify preamble behaviour. 
  
  //Test objectives (copied verbatim from source document)
  Test Objective TP1 {
    from : "36523-1-a20_s07_01.doc::7.1.3.1.1 (1)" ;
Philip Makedonski's avatar
Philip Makedonski committed
    description : "
             with { 
                  UE in E-UTRA RRC_CONNECTED state 
             }
             ensure that {
Philip Makedonski's avatar
Philip Makedonski committed
               when { 
                 UE receives downlink assignment on the PDCCH 
                      for the UE's C-RNTI and receives data in the 
Philip Makedonski's avatar
Philip Makedonski committed
                      associated subframe and UE performs HARQ 
                      operation 
               }
               then { 
                 UE sends a HARQ feedback on the HARQ process 
               }
             }" ;
  }
  Test Objective TP2 {
    from : "36523-1-a20_s07_01.doc::7.1.3.1.1 (2)" ;
Philip Makedonski's avatar
Philip Makedonski committed
    description : "
             with { 
                 UE in E-UTRA RRC_CONNECTED state 
             }
             ensure that {
Philip Makedonski's avatar
Philip Makedonski committed
               when { 
                 UE receives downlink assignment on the PDCCH 
                      with a C-RNTI unknown by the UE and data is 
Philip Makedonski's avatar
Philip Makedonski committed
                      available in the associated subframe 
               }
               then { 
                 UE does not send any HARQ feedback on the 
                      HARQ process 
               }
             }" ;
  }

  //Relevant data definitions
  Type PDU; 
  PDU mac_pdu ;
  
  Type ACK ;
  ACK harq_ack ;

  Type C_RNTI;
  C_RNTI ue;
  C_RNTI unknown; 
  
  Type PDCCH (optional c_rnti of type C_RNTI);
  PDCCH pdcch();

  //User-defined time units
  Time Second;
  Second five;
  
  //Gate type definitions
Philip Makedonski's avatar
Philip Makedonski committed
  Gate Type defaultGT accepts ACK, PDU, PDCCH, C_RNTI ;

  //Component type definitions
  Component Type defaultCT having {
    gate g of type defaultGT;
  }
  
  //Test configuration definition
  Test Configuration defaultTC {
    create Tester SS of type defaultCT;
    create SUT UE of type defaultCT ;
    connect UE.g to SS.g ;
  }
  
  //Test description definition
  Test Description TD_7_1_3_1 uses configuration defaultTC {
    //Pre-conditions and preamble from the source document
    perform action preCondition with { PRECONDITION ; } ;
    perform action preamble  with { PREAMBLE ; } ;
      
    //Test sequence
    SS.g sends pdcch (c_rnti=ue) to UE.g with {
      STEP : "1" ;
      PROCEDURE : "SS transmits a downlink assignment 
Philip Makedonski's avatar
Philip Makedonski committed
               including the C-RNTI assigned to 
               the UE" ;
    } ;
    SS.g sends mac_pdu to UE.g with {
      STEP : "2" ;
      PROCEDURE : "SS transmits in the indicated 
Philip Makedonski's avatar
Philip Makedonski committed
               downlink assignment a RLC PDU in 
               a MAC PDU" ;
    } ;
    UE.g sends harq_ack to SS.g with {
      STEP : "3" ;
      PROCEDURE : "Check: Does the UE transmit an 
Philip Makedonski's avatar
Philip Makedonski committed
               HARQ ACK on PUCCH?" ;
      test objectives : TP1 ;
    } ;
    set verdict to PASS ;
    SS.g sends pdcch (c_rnti=unknown) to UE.g with {
      STEP : "4" ;
      PROCEDURE : "SS transmits a downlink assignment 
               to including a C-RNTI different from 
Philip Makedonski's avatar
Philip Makedonski committed
               the assigned to the UE" ;
    } ;
    SS.g sends mac_pdu to UE.g with {
      STEP : "5" ;
      PROCEDURE : "SS transmits in the indicated 
Philip Makedonski's avatar
Philip Makedonski committed
               downlink assignment a RLC PDU in 
               a MAC PDU" ;
    } ;
      
    //Interpolated original step 6 into an alternative behaviour,
    //covering both the incorrect and the correct behaviours of the UE 
    alternatively {
      UE.g sends harq_ack to SS.g ;
        set verdict to FAIL ;
    } or {
        gate SS.g is quiet for five ;
      set verdict to PASS ;
    } with {
Philip Makedonski's avatar
Philip Makedonski committed
        STEP : "6" ;
        PROCEDURE : "Check: Does the UE send any HARQ ACK 
               on PUCCH?" ;
        test objectives : TP2 ;
    }
  } with {
    Note  : "Note 1: For TDD, the timing of ACK/NACK is not
Philip Makedonski's avatar
Philip Makedonski committed
               constant as FDD, see Table 10.1-1 of TS 36.213." ;
  }
} with {
  Note : "Taken from 3GPP TS 36.523-1 V10.2.0 (2012-09)" ;
  TITLE : "Correct handling of DL assignment / Dynamic case" ;
}