CDMA2000 1X Solution
Overview
The CDMA2000 1X solution provides the TSN.1 message definitions for the Signaling Layer (Layer 3) messages, 3GPP2 C.S0005, Release 0 and Release A.
What You Can Do
| Generate message parsers in C/C++/Java | TSN.1 Compiler |
| Generate Wireshark dissectors | TSN.1 Compiler |
| Implement Java based custom message diagnostic/analysis tools | TSN.1 Compiler/TSN.1 Server |
| Create test vectors | TSN.1 Editor |
| Decode and diagnose message raw data | TSN.1 Editor |
Example
General Handoff Direction Message
is2000_fdsch_GHDM(P_REV_IN_USE 8) ::=
{
USE_TIME 1;
if(P_REV_IN_USE >= P_REV_IS95_B2)
{
if(USE_TIME == 1)
{
ACTION_TIME 6;
}
}
else
{
ACTION_TIME 6;
}
HDM_SEQ 2;
if(P_REV_IN_USE < P_REV_IS95_B2)
{
P_REV_1 8;
}
SEARCH_INCLUDED 1;
if(SEARCH_INCLUDED == 1)
{
SRCH_WIN_A 4;
SRCH_WIN_N 4;
SRCH_WIN_R 4;
T_ADD 6;
T_DROP 6;
T_COMP 4;
T_TDROP 4;
SOFT_SLOPE 6;
ADD_INTERCEPT 6;
DROP_INTERCEPT 6;
}
EXTRA_PARMS 1;
if(EXTRA_PARMS == 1)
{
if(P_REV_IN_USE >= P_REV_IS95_B2)
{
P_REV 8;
PACKET_ZONE_ID 8;
}
FRAME_OFFSET 4;
PRIVATE_LCM 1;
RESET_L2 1;
RESET_FPC 1;
SERV_NEG_TYPE 1;
ENCRYPT_MODE 2;
NOM_PWR_EXT 1;
NOM_PWR 4;
NUM_PREAMBLE 3;
BAND_CLASS 5;
CDMA_FREQ 11;
}
if(P_REV_IN_USE >= P_REV_IS95_B2)
{
if(EXTRA_PARMS == 1)
{
RETURN_IF_HANDOFF_FAIL 1;
if(RETURN_IF_HANDOFF_FAIL == 1)
{
COMPLETE_SEARCH 1;
}
PERIODIC_SEARCH 1;
SCR_INCLUDED 1;
if(SCR_INCLUDED == 1)
{
SERV_CON_SEQ 3;
RECORD_TYPE 8;
RECORD_LEN 8;
TypeSpecificFields 8 * RECORD_LEN :
is2000_irec_ServiceConfig(P_REV_IN_USE);
}
}
}
else
{
RETURN_IF_HANDOFF_FAIL 1;
if(RETURN_IF_HANDOFF_FAIL == 1)
{
COMPLETE_SEARCH 1;
}
PERIODIC_SEARCH 1;
}
if(P_REV_IN_USE >= P_REV_IS95_B2)
{
SUP_CHAN_PARMS_INCLUDED 1;
}
if(P_REV_IN_USE < P_REV_IS95_B2 ||
P_REV_IN_USE >= P_REV_IS95_B2 && SUP_CHAN_PARMS_INCLUDED == 1)
{
FOR_INCLUDED 1;
if(FOR_INCLUDED == 1)
{
FOR_SUP_CONFIG 2;
if(FOR_SUP_CONFIG == 2 || FOR_SUP_CONFIG == 3)
{
NUM_FOR_SUP 3;
}
if(FOR_SUP_CONFIG == 1 || FOR_SUP_CONFIG == 3)
{
USE_FOR_DURATION 1;
if(USE_FOR_DURATION == 1)
{
FOR_DURATION 8;
}
}
}
REV_INCLUDED 1;
if(REV_INCLUDED == 1)
{
if(P_REV_IN_USE >= P_REV_IS95_B2)
{
REV_DTX_DURATION 4;
}
CLEAR_RETRY_DELAY 1;
USE_REV_DURATION 1;
if(USE_REV_DURATION == 1)
{
REV_DURATION 8;
}
NUM_REV_CODES 3;
USE_T_ADD_ABORT 1;
}
REV_PARMS_INCLUDED 1;
if(REV_PARMS_INCLUDED == 1)
{
T_MULCHAN 3;
BEGIN_PREAMBLE 3;
RESUME_PREAMBLE 3;
}
}
USE_PWR_CNTL_STEP 1;
if(USE_PWR_CNTL_STEP == 1)
{
PWR_CNTL_STEP 3;
}
NUM_PILOTS 3;
PILOTS[NUM_PILOTS] :
{
PILOT_PN 9;
PWR_COMB_IND 1;
FOR_FUND_CODE_CHAN 8;
if(P_REV_IN_USE < P_REV_IS95_B2 ||
P_REV_IN_USE >= P_REV_IS95_B2 && SUP_CHAN_PARMS_INCLUDED == 1)
{
if(FOR_INCLUDED == 1)
{
if(FOR_SUP_CONFIG == 2 || FOR_SUP_CONFIG == 3)
{
FOR_SUP_INCLUDED 1;
if(FOR_SUP_INCLUDED == 1)
{
FOR_SUP_CHAN_REC :
{
EXPL_CODE_CHAN 1;
if(EXPL_CODE_CHAN == 0)
{
BASE_CODE_CHAN 8;
}
else
{
FOR_SUP_CODE_CHAN[NUM_FOR_SUP] 8;
}
}
}
}
}
}
}
if(P_REV_IN_USE >= P_REV_IS2000_0)
{
FPC_SUBCHAN_GAIN 5;
USE_PC_TIME 1;
if(USE_PC_TIME == 1)
{
PC_ACTION_TIME 6;
}
if(EXTRA_PARMS == 1)
{
RLGAIN_TRAFFIC_PILOT 6;
DEFAULT_RLAG 1;
NNSCR_INCLUDED 1;
if(NNSCR_INCLUDED == 1)
{
RECORD_TYPE2 8;
RECORD_LEN2 8;
TypeSpecificFields2 8 * RECORD_LEN2 :
is2000_firec_NNServiceConfig(P_REV_IN_USE);
}
}
REV_FCH_GATING_MODE 1;
if(REV_FCH_GATING_MODE == 1)
{
REV_PWR_CNTL_DELAY_INCL 1;
if(REV_PWR_CNTL_DELAY_INCL == 1)
{
REV_PWR_CNTL_DELAY 2;
}
}
}
}