blob: 806646d87de3c52326a27eddcae25eb6f49c946d [file] [log] [blame]
lh9ed821d2023-04-07 01:36:19 -07001/*****************************************************************************
2 *°æ±¾ËùÓÐ (C)2010ÖÐÐËͨѶ¹É·ÝÓÐÏÞ¹«Ë¾
3 * Ä£¿éÃû £ºPS
4 * ÎļþÃû £ºtdpsphyint.h
5 * Îļþ±êʶ£º
6 * Ïà¹ØÎļþ£º
7 * ʵÏÖ¹¦ÄÜ£ºPSºÍTD PHYµÄ½Ó¿Ú¶¨Òå
8 * ×÷Õß £º
9 * °æ±¾ £º
10 * Íê³ÉÈÕÆÚ£º
11 * ÆäËü˵Ã÷£º
12 *
13 * Ð޸ļǼ1£º
14 * ÈÕ ÆÚ£º2010.05.18
15 * ÐÞ¸ÄÈË£º ZHUO Bibo
16 * ÐÞ¸ÄÄÚÈÝ£º
17 * 1) ºÏ²¢tdmacphyint.hºÍtdrrcphyint.hÁ½·ÝÍ·ÎļþµÄÄÚÈÝ
18 ** Ð޸ļǼ2£º
19 * ÈÕ ÆÚ£º2011.09.02
20 * ÐÞ¸ÄÈË£º sun chang jiang
21 * ÐÞ¸ÄÄÚÈÝ£º
22 * 1) T_zTD_P_IratGapConfig_ReqÖвÎÊýwShortGapFlg¸üÃûΪwIdleOrConnectFlg£¬²¢ÐÞ¸Ä×¢ÊÍ£»
23 2)T_zTD_P_hsdpa_config_reqÖÐÔö¼Ó²ÎÊýwMacHdTyp
24 3)T_zTD_P_CPhy_InterMeas_ReqÖеĺêMULTI_IRAT_2963È¥µô¡£
25 ** Ð޸ļǼ3£º
26 * ÈÕ ÆÚ£º2011.09.28
27 * ÐÞ¸ÄÈË£º sun chang jiang
28 * ÐÞ¸ÄÄÚÈÝ£º
29 * 1) T_zTD_P_hsupa_config_reqÖе±¿ªR9ºêʱÔö¼Ó²ÎÊýtUplink_timing_advance_control¡£
30 ** Ð޸ļǼ4£º
31 * ÈÕ ÆÚ£º2011.11.11
32 * ÐÞ¸ÄÈË£º sun chang jiang
33 * ÐÞ¸ÄÄÚÈÝ£º
34 * 1) È¥µôR7_SUPPORT¡£
35 * Ð޸ļǼ5£º
36 * ÈÕ ÆÚ£º2012.03.12
37 * ÐÞ¸ÄÈË£ºÎ¤ÓñÕä
38 * ÐÞ¸ÄÄÚÈÝ£º
39 * 1)Ôö¼ÓÏûÏ¢½á¹¹T_zTD_P_DetectCellInfo
40 2)Ôö¼Óºê¶¨ÒåZ_TD_P_MAX_DETECT_CELL_NUM
41
42 * Ð޸ļǼ6£º
43 * ÈÕ ÆÚ£º2012.05.10
44 * ÐÞ¸ÄÈË£ºËﳤ½­
45 * ÐÞ¸ÄÄÚÈÝ£º
46 * 1)T_zTD_P_UlDpch_setup_mod_reqÖеIJÎÊýwSpec_burst_generation_periodÔö¼Ó×¢ÊÍ
47 2£©Ôö¼ÓÏûÏ¢½á¹¹T_zTD_P_Ul_phy_ch_ctrl_req
48 * Ð޸ļǼ7£º
49 * ÈÕ ÆÚ£º2012.05.10
50 * ÐÞ¸ÄÈË£ºËﳤ½­
51 * ÐÞ¸ÄÄÚÈÝ£º
52 1£©T_zTD_P_hsdsch_sps_infoÖÐÔö¼ÓwInitSpsInfoFgÓÃÓÚ±íʾtInitSpsInfoÊÇ·ñÓÐЧ£¬Í¬Ê±È¥µô²ÎÊýwPadding£¬±£³ÖËÄ×Ö½Ú¶ÔÆë£»
53 2£©T_zTD_P_edch_sps_infoÖÐÔö¼ÓwInitSpsInfoFgÓÃÓÚ±íʾtInitSpsInfoÊÇ·ñÓÐЧ£¬Í¬Ê±Ôö¼Ó²ÎÊýwPadding£¬±£³ÖËÄ×Ö½Ú¶ÔÆë£»
54 * Ð޸ļǼ8£º
55 * ÈÕ ÆÚ£º2012.5.16
56 * ÐÞ¸ÄÈË£ºÕÅÅô³Ì
57 * ÐÞ¸ÄÄÚÈÝ£º
58 1£© Z_TD_P_MAX_INTER_FREQ_NUM ÓÉ9¸Ä³É16
59 2£© Z_TD_P_MAX_BLIND_INTER_FREQ ÓÉ9¸Ä³É16
60* Ð޸ļǼ9£º
61 * ÈÕ ÆÚ£º2012.06.14
62 * ÐÞ¸ÄÈË£ºËﳤ½­
63 * ÐÞ¸ÄÄÚÈÝ£º
64 * 1)Z_TD_P_MAX_UL_TS¸ÄΪ4
65 2£©Z_TD_P_MAX_NO_OF_UL_BYTES¸ÄΪ1168
66 2£©T_zTD_P_CPhy_UeIntMeas_IndΪÁËËÄ×Ö½Ú¶ÔÆë£¬Ôö¼ÓwPadding;
67* Ð޸ļǼ10£º
68 * ÈÕ ÆÚ£º2012.07.10
69 * ÐÞ¸ÄÈË£ºËﳤ½­
70 * ÐÞ¸ÄÄÚÈÝ£º ѰºôÏÂÒÆ¹¦ÄÜÐÞ¸Ä
71 * 1)T_zTD_P_paging_reqÖÐÔö¼ÓT_zTD_P_UeId
72 2£©ÐÂÔö×ӽṹT_zTD_P_UeId¡¢T_zTD_P_URnti¡¢T_zTD_P_ImsiGsm
73 * Ð޸ļǼ11£º
74 * ÈÕ ÆÚ£º2013.04.18
75 * ÐÞ¸ÄÈË£ºÕÅÅô³Ì
76 * ÐÞ¸ÄÄÚÈÝ£º GAPÇëÇóÉϱ¨Ôö¼ÓÎÕÊÖ×Ö¶Î
77 * 1)T_zTD_P_umts_idle_PeriodRep_reqÖÐÔö¼ÓdwGapId
78 2)T_zTD_P_umts_inact_time_indÖÐÔö¼ÓdwGapId
79*/
80
81#ifndef Z_TDPS_PHY_INTERFACE_H
82#define Z_TDPS_PHY_INTERFACE_H
83
84/**************************************************************************
85* Í·Îļþ°üº¬ *
86**************************************************************************/
87
88/**************************************************************************
89* ³£Á¿¶¨Òå *
90**************************************************************************/
91
92
93/**************************************************************************
94* È«¾Öºê¶¨Òå *
95**************************************************************************/
96#define Z_TD_P_MAX_NO_OF_UL_BYTES (WORD)1168 /*°´ÉÏÐÐ384k¼Æ*/
97#define Z_TD_P_MAX_NO_OF_DL_BYTES (WORD)1168 /*°´ÏÂÐÐ384k¼Æ*/
98
99#ifndef _USE_HSPAPLUS
100#define Z_TD_P_MAX_NO_OF_HSDPA_BYTES (WORD)1756 /*°´2.8M£¬ÎïÀí²ãÿ5msͶµÝ¼Æ(14043bit))*/
101#define Z_TD_P_HSDPA_DATA_LEN (WORD)1756 /*Ò»¿éHSDPAÊý¾Ý³¤¶È*/
102#else
103#define Z_TD_P_MAX_NO_OF_HSDPA_BYTES (WORD)2634 /*°´2.8M£¬ÎïÀí²ãÿ5msͶµÝ¼Æ(14043bit))*/
104#define Z_TD_P_HSDPA_DATA_LEN (WORD)2634 /*Ò»¿éHSDPAÊý¾Ý³¤¶È*/
105#endif
106
107#define Z_TD_P_MAX_NO_OF_HSUPA_BYTES (WORD)1400 /*°´ÉÏÐÐ1.1M¼Æ*/
108
109
110
111
112/*Ð¡ÇøËÑË÷Ïà¹Øºê¶¨Òå*/
113#define Z_TD_P_MAX_FREQSCAN_FREQ_NUM (WORD)32
114#define Z_TD_P_MAX_RSSI_RESULTS_NUM (WORD)32
115#define Z_TD_P_MAX_SRH_RESULTS_NUM (WORD)8
116#define Z_TD_P_MAX_NUM_OF_BCH_DWORDS (WORD)8
117
118#define Z_TD_P_CELLSRHTYPE_STRONGEST (WORD)0
119#define Z_TD_P_CELLSEARCHTYPE_BLIND (WORD)1
120#define Z_TD_P_CELLSEARCHTYPE_SPEC (WORD)2
121
122/*²âÁ¿Ïà¹Øºê¶¨Òå*/
123#define Z_TD_P_MAX_INTER_FREQ_NUM (WORD)16 /*×î¶àÖ§³ÖµÄÒìÆµ²âÁ¿ÔØÆµÊý*/
124#define Z_TD_P_MAX_INTRA_CELL_NUM (WORD)32 /*×î¶à¿Éͬʱ²âÁ¿Í¬ÆµÐ¡ÇøÊý*/
125#define Z_TD_P_MAX_INTER_CELL_NUM (WORD)32 /*×î¶à¿Éͬʱ²âÁ¿ÒìÆµÐ¡ÇøÊý*/
126#define Z_TD_P_MAX_BLIND_INTER_FREQ (WORD)(0x10)
127#define Z_TD_P_MAX_BLIND_INTER_CELL (WORD)(0x03)
128#define Z_TD_P_INTER_INVALID_CELLID (WORD)(0xFFFE)
129#define Z_TD_P_MAX_DETECT_CELL_NUM (WORD)4
130
131/*ÎÞÏß×ÊÔ´ÅäÖÃÏà¹Øºê¶¨Òå*/
132#define Z_TD_P_MAX_PRACH_FPACH (WORD)(0x08)
133#define Z_TD_P_MAX_UL_TRCH_NUM (WORD)8
134#define Z_TD_P_MAX_DL_TRCH_NUM (WORD)8
135#define Z_TD_P_MAX_DL_TS (WORD)4
136#define Z_TD_P_MAX_UL_TS (WORD)4
137
138#define Z_TD_P_MAX_DL_CCTRCH_NUM (WORD)1
139#define Z_TD_P_MAX_UL_CCTRCH_NUM (WORD)1
140#define Z_TD_P_MAX_DL_TF_NUM (WORD)64
141#define Z_TD_P_MAX_DL_TFCS_NUM (WORD)128
142#define Z_TD_P_MAX_UL_TF_NUM (WORD)32
143#define Z_TD_P_MAX_UL_TFCS_NUM (WORD)64
144
145/*coding type macro defination*/
146#define Z_TD_P_NO_CODING_TYPE (WORD)(0x00)
147#define Z_TD_P_CC12_TYPE (WORD)(0x01)
148#define Z_TD_P_CC13_TYPE (WORD)(0x02)
149#define Z_TD_P_TURBO_CODING_TYPE (WORD)(0x03)
150
151/*crc length macro defination*/
152#define Z_TD_P_CRC_LENGTH_0 (WORD)(0x00)
153#define Z_TD_P_CRC_LENGTH_1 (WORD)(0x01)
154#define Z_TD_P_CRC_LENGTH_2 (WORD)(0x02)
155#define Z_TD_P_CRC_LENGTH_3 (WORD)(0x03)
156#define Z_TD_P_CRC_LENGTH_4 (WORD)(0x04)
157
158#define Z_TD_P_MAX_PRACH_FPACH_CODE (WORD)4
159
160#define Z_TD_P_MAX_H_PROCESS (WORD)0x08
161
162/*MAC-dÏà¹Øºê¶¨Òå*/
163#define Z_TD_P_MAX_QUEUE_ID (WORD)8
164#define Z_TD_P_MAX_MAC_D_PDU_SIZE (WORD)8
165
166#define Z_TD_P_MAX_HS_SCCH (WORD)4
167
168
169#define Z_TD_P_CH_CODE_NUM (WORD)16
170
171/*˫ģÖÐGAP¸öÊýºê¶¨Òå*/
172#define Z_TD_P_MAX_GAP_NUM (WORD)8
173
174/*UPAÏà¹Øºê¶¨Òå*/
175#define Z_TD_P_MAX_EPUCH_TS_NUM (WORD)5
176#define Z_TD_P_MAX_EAGCH_NUM (WORD)4
177#define Z_TD_P_MAX_SCH_EHICH_NUM (WORD)4
178
179/*´«ÊäÐŵÀÀàÐÍ,½öÓÃÓÚºÍÎïÀí²ãµÄ½Ó¿ÚÖÐ*/
180#define Z_TD_P_PCH (WORD)0x0
181#define Z_TD_P_FACH (WORD)0x1
182#define Z_TD_P_DL_DCH (WORD)0x2
183#define Z_TD_P_RACH (WORD)0x3
184#define Z_TD_P_UL_DCH (WORD)0x4
185
186/*ÉèÖÃTDÎïÀí²ãÊÇ·ñÖ÷ģʽ*/
187#define Z_TD_P_IRAT_MODE_SLAVE (WORD)0 /*ÉèÖÃΪ¸¨Ä£Ê½*/
188#define Z_TD_P_IRAT_MODE_MASTER (WORD)1 /*ÉèÖÃΪÖ÷ģʽ*/
189
190#ifdef R9_SUPPORT
191#define Z_TD_P_MAX_CARRIER (WORD)3
192
193#define Z_TD_P_MAX_HSDSCH_RX_PATTERN_NUM (WORD)4
194#define Z_TD_P_MAX_HSDSCH_TBS_NUM (WORD)4
195#define Z_TD_P_MAX_EDCH_TX_PATTERN_NUM (WORD)4
196#endif
197
198/*TD PS -> TD PHY ´ÓLTE PS_EPHY.hÒÆ¹ýÀ´µÄ*/
199#define ZPS_TDS_P_SLEEP_TIME_INT_ICP_CF (UINT32)(0x00000001) //ÔÊÐíZSP½øË¯ÃßÖжϣ¬6300ʹÓã¬ÆäËûÏîÄ¿£¨7502£¬7510£¬7550)²»Ó㬱£Áô
200#define ZPS_TDS_P_WAKEUP_INT_ICP_CF (UINT32)(0x00000002) //Òì³£»½ÐÑÖжϣ¬¸÷ÏîÄ¿¶¼Ê¹ÓÃ
201#define ZPS_TDS_P_UPA_INT_ICP_CF (UINT32)(0x00000004) //UPAÈ¡Êý¾ÝÖжϣ¬¸÷ÏîÄ¿¶¼Ê¹ÓÃ
202#define ZPS_TDS_P_WAIT20MS_INT_ICP_CF (UINT32)(0x00000008) //֪ͨTDÎïÀí²ã»½ÐѺó20msÄÚ²»ÔÊÐí½øË¯Ãߣ¬7502ʹÓã¬ÆäËûÏîÄ¿²»Ê¹Ó㬱£Áô
203/*TD_PHY->TD_PS*/
204#define ZPS_TDS_P_INT_ICP_CF (UINT32)(0x00000001) //TDÎïÀí²ãICPÖжϸøPS£¬¹©TD PHY»½ÐÑPSʹÓ㻣¨×ÓÖ¡ÖжÏÒÔºóÓÉLPMÌṩ£©
205#define ZPS_TD_REQ_INT_MASK (UINT32)(0x000000FF) /**/
206#define ZPS_TD_IND_INT_MASK (UINT32)(0x000000FF) /**/
207/*TDÖ÷Ä£Á¬½Ó̬(FACH ¡¢DCH)ÎïÀí²ãÉϱ¨GAPÐèÒª¿Û³ýµÄÉ䯵±£»¤¼ä¸ôµ¥Î»CHIP, 7510°æ±¾Í·Î²·Ö±ð¿Û³ý10 260. 7502°æ±¾Í·Î²¿Û³ý64 320*/
208
209#ifdef _CHIP_ZX297502
210#define Z_TD_P_MEAS_DCHGAP_START_OFF (WORD)64
211#define Z_TD_P_MEAS_DCHGAP_TAIL_OFF (WORD)320
212#else
213#define Z_TD_P_MEAS_DCHGAP_START_OFF (WORD)10
214#define Z_TD_P_MEAS_DCHGAP_TAIL_OFF (WORD)260
215#endif
216
217#define Z_ZTPCG_VALFG_NUM (WORD)8
218#define Z_ZTPCG_PARAM_NUM (WORD)25
219
220/**************************************************************************
221* È«¾ÖÊý¾ÝÀàÐͶ¨Òå *
222**************************************************************************/
223typedef struct {
224 DWORD dwTrch_buff_offset;
225
226 WORD wTb_number_and_trch_id;
227 WORD wTb_size;
228}T_zTD_P_ul_trch_header;
229
230typedef struct {
231 DWORD dwTrch_buff_offset; /*¸ÃTrchÊý¾ÝÓëDPRAMÖÐÖ¸¶¨BufferµÄÆðÊ¼Æ«ÒÆÁ¿£¬ÒÔWORDΪµ¥Î»*/
232 WORD wTrch_id;
233 WORD wTrch_type;
234 WORD wCfn_and_tb_number; /*¸ß8bitΪTbNum£¬µÍ8bitΪCFN£¨´Ó¿Õ¿Ú½ÓÊÕµ½Êý¾ÝµÄÆðʼCFN£©*/
235 WORD wSfn; /*´Ó¿Õ¿Ú½ÓÊÕµ½Êý¾ÝµÄÆðʼSFN*/
236 WORD wTb_size; /*ÓÐЧµÄTB¿é³¤¶È£¬ÒÔbitΪµ¥Î»£¬µÍλÌî³ä0*/
237 WORD wPadding;
238 DWORD dwCrc_check; /*°´TB¿é¶¨ÒåµÄbitmap, invalid for HS-DSCH because L1 send HS-data to MAC only when crc is ok*/
239}T_zTD_P_dl_trch_header;
240
241typedef struct {
242 WORD wTotal_length;
243 WORD wNr_trch;
244
245 WORD wTfci;
246 WORD wUl_cctrch_id; /*equivalent to tfcs id, value:1~8*/
247
248 T_zTD_P_ul_trch_header atUl_trch_header[Z_TD_P_MAX_UL_TRCH_NUM];
249
250 WORD awUl_data_area[Z_TD_P_MAX_NO_OF_UL_BYTES/2];
251}T_zTD_P_mac_ul_buffer;
252
253/*MACÓëÎïÀí²ã¼äÏÂÐÐDCH/FACH/PCHÊý¾Ý½»»¥½Ó¿Ú¶¨Òå*/
254typedef struct {
255 WORD wTotal_length;
256 WORD wNr_trch;
257
258 WORD wTfci;
259 WORD wDl_cctrch_id; /*equivalent to tfcs id, value:1~8*/
260
261 T_zTD_P_dl_trch_header atDl_trch_header[Z_TD_P_MAX_DL_TRCH_NUM];
262
263 WORD wDl_data[Z_TD_P_MAX_NO_OF_DL_BYTES/2];
264}T_zTD_P_mac_dl_buffer;
265
266/*MACÓëÎïÀí²ã¼äHSDPAÊý¾Ý½»»¥½Ó¿Ú¶¨Òå*/
267typedef struct {
268 WORD wTbSize;
269 WORD wPadding;
270
271 WORD awHsdpaData[Z_TD_P_MAX_NO_OF_HSDPA_BYTES/2];
272}T_zTD_P_mac_Hsdpa_Buf;
273
274/*==============================================================================
275 Ô­ÓZ_P_TFC_POWER_IND_Ev( PHY->UMAC )
276 ˵Ã÷:
277==============================================================================*/
278typedef struct {
279 WORD wMsg_id;
280 WORD wPadding;
281
282 WORD wTfci;
283 WORD wExcess_power_flag; /* "0" is Supported state->Excess-Power state;"1" is Excess-Power state->Supported state*/
284}T_zTD_P_TFC_POWER_IND;
285
286
287/*==============================================================================
288 Ô­ÓZ_P_RACH_PROCEDURE_IND_Ev( PHY->UMAC ),Z_P_ERUCCH_PROCEDURE_IND_Ev( PHY->UMAC )
289 ˵Ã÷:
290==============================================================================*/
291typedef struct {
292 WORD wMsg_id;
293 WORD wResult; /* "1" is success; "0" is failure*/
294}T_zTD_P_RACH_PROCEDURE_IND;
295
296
297/*==============================================================================
298 Ô­ÓZ_P_RACH_PROCEDURE_CNF_Ev(PHY -> UMAC),Z_P_ERUCCH_PROCEDURE_CNF_Ev(PHY -> UMAC)
299 ˵Ã÷:
300==============================================================================*/
301typedef struct{
302 WORD wMsgId;
303 WORD wPadding;
304} T_zTD_P_RACH_PROCEDURE_CNF;
305
306/*==============================================================================
307 Ô­ÓZ_P_ABORT_RACH_PROCEDURE_REQ_Ev( UMAC->PHY ),Z_P_ABORT_ERUCCH_PROCEDURE_REQ_Ev( UMAC->PHY )
308 ˵Ã÷:
309==============================================================================*/
310typedef struct {
311 WORD wMsg_id;
312 WORD wPadding;
313}T_zTD_P_ABORT_RACH_PROC_REQ;
314
315/**************************************************************************
316 * HSUPAÅäÖÃ *
317 **************************************************************************/
318typedef struct {
319 WORD wHarqId;
320 WORD wStatus; /*¸Ã½ø³ÌACK/NACK½á¹ûÐÅÏ¢¡£0£ºACK£»1£ºNACK*/
321}T_zTD_P_HARQ_PROCESS_STATUS;
322
323
324typedef struct {
325 WORD wAbsolute; /*¾ø¶ÔÊÚȨֵ*/
326 WORD wSf; /*À©ÆµÂ룬µÍbyte,´Ó×óµ½ÓÒ±íʾÀ©ÆµÂë*/
327 WORD wTRRI; /*µÍ°ËλµÍ5¸öbit±íʾʱ϶×ÊÔ´ÐÅÏ¢µÄλͼ*/
328 WORD wEni; /*E-UCCHÊýĿָʾ*/
329 WORD wCode; /*ÂëµÀÐÅÏ¢£¬Ð­ÒéÕ»±¾Éí²»×öÏà¹Ø´¦Àí£¬Ö»ÊǺÍÊý¾ÝÏ·¢µÄʱºòÔÙ´ø»Ø¸øÎïÀí²ã*/
330 WORD wRdiFlag; /*³ÖÐøÖÜÆÚָʾ£¬±íʾ´ËÊÚȨÊÇǰ´ÎÊÚȨµÄ³ÖÐø£¬³õ´Î³öÏÖRDIÖÃ0£¬ºóÐø³öÏÖʱ£¬RDIÖÃ1£¬²¢Ð¯´øÊÚȨ*/
331 WORD wEi; /*ÏÂÒ»¸öÖÜÆÚÄÚE-HICHÐŵÀµÄÊýÄ¿£¬Ð­ÒéÕ»±¾Éí²»×÷´¦Àí£¬»Ø´ø¸øÎïÀí²ã*/
332 WORD wRdiEndFlag;
333}T_zTD_P_HSUPA_GRANT_INFO;
334
335
336typedef struct {
337 WORD wNonSchFlag; /*ÉϲãЭÒéÕ»ÊÇ·ñ¿ÉÒÔ×¼±¸·Çµ÷¶ÈÊý¾ÝµÄ±êʶ£¬0£º²»¿ÉÒÔ×¼±¸£»1£º¿ÉÒÔ×¼±¸·Çµ÷¶ÈÊý¾Ý*/
338 WORD wRefBetaE; /*ÎïÀí²ã×Ô¼º¼ÆËãµÄ²Î¿¼BetaÖµ£¬Ð­ÒéÕ»ÓÃÊÚȨ£¨µ÷¶È/SPS/·Çµ÷¶È£©ÓëÆä±È½Ï£¬È¡½ÏСֵ×÷Ϊ¿ÉÓ÷¢É书ÂÊ*/
339#ifdef R9_SUPPORT
340 WORD wSpsFlag; /*SPSµ÷¶È±êÖ¾£¬0£º²»¿ÉÒÔ×¼±¸SPSÊý¾Ý´«Ê䣬1--¿ÉÒÔ×¼±¸SPSÊý¾Ý´«Êä*/
341 WORD wDrxActiveFlag;/*DRXʹÄܱêÖ¾£¬0--¹Ø±Õ£¬1--´ò¿ª*/
342#endif
343 WORD wPhyChCorExsistFlag;/*E-PUCHÓëÆäËûÀàÐÍÎïÀíÐŵÀ²¢´æÓÚͬһ×Ó֡ͬһʱ϶µÄ±êÖ¾£¬ÔÚwEagchFlag»òÕßwNonSchFlag»òÕßwSpsFlagΪ1ʱÓÐЧ£¬0--²»²¢´æ£¬1--²¢´æ*/
344 WORD wEagchFlag; /*µ÷¶ÈÊÚȨÐÅÏ¢ÊÇ·ñÓÐЧµÄ±êʶ¡£0£ºÎÞЧ£»1£ºÓÐЧ*/
345 T_zTD_P_HSUPA_GRANT_INFO tGrant; /*ÊÚȨÐÅÏ¢£¬Ö»ÓÐÔÚwEagchFlag»òwSpsFlagָʾÓÐЧʱ²Å¿ÉÒÔ¶ÁÈ¡*/
346 WORD wHarqFlag; /*HARQÐÅÏ¢ÊÇ·ñÓÐЧµÄ±êʶ*/
347 WORD wSubFrame; /*ÓÃÓÚÎïÀí²ãÅбðЭÒéÕ»´¦ÀíÊÇ·ñ³¬Ê±µÄ×ÓÖ¡ºÅ*/
348 T_zTD_P_HARQ_PROCESS_STATUS tHarq; /*HARQµ¥½ø³ÌµÄACK/NACK½á¹ûÐÅÏ¢*/
349}T_zTD_P_UPA_GRANT_HARQ_INFO;
350
351typedef struct {
352 WORD wTchType; /*ÐŵÀÀàÐÍ£¬·ÖΪE-RUCCHºÍE-DCH*/
353 WORD wHarqId; /*ÓÃÓÚ±¾´ÎÊý¾Ý·¢Ë͵ÄHARQ ½ø³ÌID£¬0~7*/
354 WORD wRefBetaE; /*ÎïÀí²ã·¢ËÍÊý¾ÝµÄÔöÒæÒò×Ó*/
355 WORD wEtfci;
356 WORD wTbSize;
357 WORD wModuleType; /*±¾´Î·¢Ë͵ĵ÷ÖÆ·½Ê½ 0:QPSK; 1:16qam*/
358 WORD wRsn; /*ÈßÓà°æ±¾ºÅ£¬RSN µÈÓÚ0±íʾÐÂÊý¾Ý£¬RSN´óÓÚ0±íÊ¾ÖØ´«*/
359 WORD wSubFrame; /*ָʾ¸Ã´«Êä¿éµÄ·¢ËÍ×ÓÖ¡ºÅ*/
360#ifdef R9_SUPPORT
361 WORD wSpsFlag; /*SPSÊý¾Ý±êÖ¾*/
362 WORD wPadding;
363#endif
364 T_zTD_P_HSUPA_GRANT_INFO tGrant; /*»Ø´ø¸øÎïÀí²ãµÄÊÚȨÐÅÏ¢¡£ÊÇ·ñÐèÒª¶ÁÈ¡¸ÃÔªËØÄÚ²¿µÄ¾ø¶ÔÊÚȨֵ£¬ÎïÀí²ãÐèÒª¸ù¾ÝHARQ½ø³ÌID½øÐÐÅжϣ¬Ö»ÔÚµ÷¶ÈÊý¾ÝʱÓÐЧ*/
365} T_zTD_PHSUPA_BUF_HEADER;
366
367typedef struct {
368 T_zTD_PHSUPA_BUF_HEADER tBufHeader; /* HSUPAÊý¾Ý»º³åÇøÍ·ÐÅÏ¢*/
369 WORD awData[Z_TD_P_MAX_NO_OF_HSUPA_BYTES/2];
370}T_zTD_P_HSUPA_UL_BUFFER;
371
372/*==============================================================================
373 Ô­ÓT_zTD_P_mac_Set_Agch_Req_Ev( UMAC->PHY )
374 ˵Ã÷: ÉϲãЭÒéջָʾÎïÀí²ã¿ªÊ¼/Í£Ö¹¼àÌýE-AGCHÐŵÀµÄÃüÁî
375==============================================================================*/
376typedef struct {
377 WORD wMsg_id;
378 WORD wResult; /* ָʾÎïÀí²ãÊÇ·ñÍ£Ö¹¼àÌýE-AGCHÐŵÀ¡£0£º¼ÌÐø¼àÌý£»1£ºÍ£Ö¹¼àÌý*/
379}T_zTD_P_mac_Set_Agch_Req_Ev;
380#ifdef R9_SUPPORT
381/*==============================================================================
382 Ô­ÓP_SYNC_CMD_RESP_EV( PHY->UMAC )
383 ˵Ã÷: ÔÚÔöÇ¿Cell-PCH̬Ï£¬ÎïÀí²ãÊÕµ½HS-SCCHÉϵÄͬ²½ÃüÁîºó£¬·¢¸ÃÏûϢ֪ͨMAC×öÉÏÐÐͬ²½
384==============================================================================*/
385typedef struct {
386 WORD wMsg_id;
387 WORD wPadding;
388}T_zTD_P_Sync_Cmd_Resp;
389/*==============================================================================
390 Ô­ÓP_CELL_RESEL_REQ_EV( UMAC->PHY )
391 ˵Ã÷: ÔÚÔöÇ¿Cell-FACH̬Ï£¬MAC֪ͨÎïÀí²ã£¬Ð¡ÇøÖØÑ¡ÇëÇó
392==============================================================================*/
393typedef struct {
394 WORD wMsg_id;
395 WORD wPadding;
396}T_zTD_P_Cell_Resel_Req;
397/*==============================================================================
398 Ô­ÓP_CELL_RESEL_CNF_EV( PHY->UMAC )
399 ˵Ã÷: ÔÚÔöÇ¿Cell-FACH̬Ï£¬ÎïÀí²ã»Ø¸´MAC£¬Ð¡ÇøÖØÑ¡È·ÈÏ
400==============================================================================*/
401typedef struct {
402 WORD wMsg_id;
403 WORD wPadding;
404}T_zTD_P_Cell_Resel_Cnf;
405#endif
406
407/************************************************************************/
408/* RBCÈ«¾ÖÀàÐͶ¨Òå */
409/************************************************************************/
410/*10.3.6.41 Midamble Shift and burst type*/
411typedef struct{
412 /*wMidamble_allocation_mode:0:default midamble,1:Common midamble,2:UE specific midamble*/
413 WORD wMidamble_allocation_mode;
414 /*wMidamble_configuration:Integer(2,4,6,8,10,12,14,16)*/
415 WORD wMidamble_configuration;
416
417 /*this IE is mandatory present,when wMidamble_allocation_mode is 2:UE specific midamble*/
418 WORD wMidamble_shift;
419}T_zTD_P_mid_shift_bur_type;
420
421/*10.3.6.51a Prach channelisation code 1.28 Mcps TDD*/
422typedef struct{
423 /*
424 Enumerated(4/1)
425 wSpread_factor = 4
426 wChannelisation_code = 1
427 Enumerated(16/1)
428 wSpread_factor = 16
429 wChannelisation_code = 1
430 */
431 WORD wSpread_factor;
432 WORD wChannelisation_code;
433}T_zTD_P_CHANNELISATION_CODE;
434
435/*10.3.6.51a PRACH Channelisation Code*/
436typedef struct{
437 /*wChannelisation_code_number:1 to 4*/
438 WORD wChannelisation_code_number;
439
440 /*channelisation list*/
441 T_zTD_P_CHANNELISATION_CODE atChannelisation_code[Z_TD_P_MAX_PRACH_FPACH_CODE];
442}T_zTD_P_Prach_Ch_code; /*9Word*/
443
444/*10.3.6.35a FPACH info*/
445typedef struct{
446 /*wTimeslot_number: (0..6)*/
447 WORD wTimeslot_number;
448 /*Integer(1..4)*/
449 WORD wWt;
450
451 /*channelisation code: (16/1..16/16)*/
452 T_zTD_P_CHANNELISATION_CODE tChannelisation_code;
453
454 /*10.3.6.41:T_zmidamble_shift_burst_type*/
455 T_zTD_P_mid_shift_bur_type tMidamble_shift_burst_type;
456}T_zTD_P_fpach_info; /*7Word*/
457
458/*PRACH-FPACH*/
459typedef struct{
460 /*10.3.6.84 Timeslots number:Integer(0..6)*/
461 WORD wTime_slot_number;
462
463 /*10.3.6.51a PRACH channelisation on code 1.28 Mcps TDD*/
464 T_zTD_P_Prach_Ch_code tPrach_channelisation_code;
465
466 /*10.3.6.41 Midamble shift and burst type*/
467 T_zTD_P_mid_shift_bur_type tMidamble_shift_burst_type;
468
469 /*10.3.6.35a FPACH info*/
470 T_zTD_P_fpach_info tFpach_info;
471}T_zTD_P_prach_fpach_info; /*20Word*/
472
473/*10.3.6.91 Uplink DPCH power control info*/
474typedef struct {
475 /*wUl_target_sir 0:not exist 1:exist*/
476 WORD wUl_target_sir_flg:1;
477 /*wPrimary_ccpch_tx_power_flg 0:not exist 1:exist*/
478 WORD wPrimary_ccpch_tx_power_flg:1;
479
480 /*
481 Real(-11..20 by step of 0.5dB);For 1.28 Mcps TDD this parameter
482 represents PRXdpchdes with range Integer(-120..-58) by step 1
483 wUl_target_sir = (x-(-120)/0.5 )
484
485 */
486 WORD wUl_target_sir;
487 /* Integer(1,2,3)*/
488 WORD wTpc_step_size;
489
490 /* Integr(6...50)*/
491 WORD wPrimary_ccpch_tx_power;
492 /*1:¹À¼Æbeacon·Ëð 0:²»¹À¼Æ*/
493 WORD wBeacon_pl_est;
494 WORD wPadding;
495}T_zTD_P_ul_dpch_power_ctrl;
496
497/*10.3.6.96 Uplink Timing Advance Control*/
498typedef struct {
499 /*Integer(1..8)*/
500 WORD wUl_Sync_Step_Size;
501 /*Integer(1..8)*/
502 WORD wUl_Sync_Freq;
503
504 /*0: Syn parameter not exist; 1:Syn parameter exist*/
505 WORD wSync_Param_Flg;
506 /*SYNC_UL codes bitmap: Bitstring(8)*/
507 WORD wSynl_up_codes;
508
509 /*FPACH info 10.3.6.35a*/
510 T_zTD_P_fpach_info tFpach_info;
511
512 /*PRXupPCHdes: Integer(-120..-58 by step 1)
513 wPrx_up_pch_des = (x-(-120))
514 */
515 WORD wPrx_up_pch_des;
516 /*Max SYNC_UL Transmissions,Integer(1,2,4,8)*/
517 WORD wMax_sync_ul_transmissions;
518
519 /*Integer(0,1,2,3)*/
520 WORD wPower_ramp_step;
521
522 WORD wUarFcn_flg;
523 WORD wUppch_chip_shift_flg;
524 WORD wUarFcn;
525 WORD wUppch_chip_shift;
526}T_zTD_P_ul_timing_advance;
527
528/*10.3.6.10 Common timeslot info*/
529typedef struct{
530 /*Enumerated(Frame,Timeslot) 0:Frame 1:Timeslot*/
531 WORD wSecond_interleaving_mode;
532 /*TFCI coding Integer(4,8,16,32)*/
533 WORD wCfci_coding;
534
535 /*Real(0.40..1.0 by step of 0.04)
536 wPuncturing_limit = (x-0.40)/0.04
537 */
538 WORD wPuncturing_limit;
539 /*Repetition period Integer(1,2,4,8,16,32,64)*/
540 WORD wRepetition_period;
541
542 /*Integer(1..bRepetition_period-1)*/
543 WORD wRepetition_length;
544}T_zTD_P_common_ts_info;
545
546
547/*10.3.6.37 Individual timeslot info*/
548typedef struct{
549 /*10.3.6.84 :Integer(0..6)*/
550 WORD wTimeslot_number;
551 /*TFCI existence 0:false 1:true*/
552 WORD wTfci_existence;
553
554 /*10.3.6.41 Midamble shift and burst type*/
555 T_zTD_P_mid_shift_bur_type tMidamble_shift_burst_type;
556
557 /*Enumerated(QPSK,8PSK) 0:QPSK 1:8PSK*/
558 WORD wModulation;
559 /*Enumerated(0,1,16/SF)*/
560 WORD wSs_tpc_symbols;
561
562 /*Integer(1..15)*/
563 WORD wAdditional_tpc_ss_symbols_flg;
564 WORD wAdditional_tpc_ss_symbols;
565}T_zTD_P_individual_ts_info;
566
567/*10.3.6.17 Downlink channelisation codes*/
568/*Consecutive codes: First Individual timeslot info and first timeslot channelisation codes*/
569typedef struct{
570 /*channelisation code :16/x*/
571 T_zTD_P_CHANNELISATION_CODE tFirst_channelisation_code;
572
573 /*channelisation code :16/x*/
574 T_zTD_P_CHANNELISATION_CODE tLast_channelisation_code;
575}T_zTD_P_consecutive_codes;
576
577/*10.3.6.17*/
578typedef struct{
579 WORD wType;
580 union{
581 /*Consecutive codes*/
582 T_zTD_P_consecutive_codes tdown_channelisation_code;
583
584 /*Each bit indicates the availability of a channelisation code for SF16*/
585 WORD wChannelisation_code_bitmap;
586 }tChannelisation_code;
587}T_zTD_P_dl_ch_codes;
588
589/*
590typedef struct{
591 WORD wSf; //À©ÆµÒò×Ó£¬È¡Öµ1»òÕß16//
592 WORD wChCodeNum; //ÐŵÀ»¯Âë¸öÊý£¬È¡Öµ:1 to 16//
593 WORD awChCode[16]; //ÐŵÀ»¯Â룬ȡֵ1µ½SF//
594}T_zTD_P_dl_ch_codes;
595*/
596
597/*10.3.6.32 Downlink Timeslots and Codes*/
598typedef struct{
599 T_zTD_P_dl_ch_codes tDown_channelisation_code;
600 T_zTD_P_individual_ts_info tIndividual_timeslot_info;
601}T_zTD_P_dl_ts_codes_element;
602
603/*10.3.6.32*/
604typedef struct{
605 WORD wTs_and_ch_number;
606 T_zTD_P_dl_ts_codes_element atDownlink_timeslots_code[Z_TD_P_MAX_DL_TS];
607}T_zTD_P_dl_ts_codes;
608
609
610typedef struct{
611 WORD wTfcs_id;
612 /*time info*/
613 WORD wActive_time;
614
615 WORD wDuration;
616
617 /*10.3.6.10 Common timeslot info*/
618 T_zTD_P_common_ts_info tCommon_timeslot_info;
619
620 /*10.3.6.32 Downlink DPCH timeslots and codes*/
621 T_zTD_P_dl_ts_codes tDownlink_dpch_timeslot_codes;
622}T_zTD_P_dl_cctrch_list;
623
624
625/*10.3.6.94 uplink channelisation codes*/
626typedef struct{
627 WORD wNum;
628 T_zTD_P_CHANNELISATION_CODE atUplink_channelisation[2];
629}T_zTD_P_ul_ch_codes;
630
631/*10.3.6.32 uplink Timeslots and Codes*/
632typedef struct{
633 T_zTD_P_ul_ch_codes tUplink_channelisation_code;
634 T_zTD_P_individual_ts_info tIndividual_timeslot_info;
635}T_zTD_P_ul_ts_codes_element;
636
637
638typedef struct{
639 WORD wTs_and_channelisation_number;
640 T_zTD_P_ul_ts_codes_element atUplink_timeslots_code[Z_TD_P_MAX_UL_TS];
641}T_zTD_P_ul_timeslots_codes;
642
643
644typedef struct{
645 WORD wTfcs_id;
646 /*time info*/
647 WORD wActive_time;
648
649 WORD wDuration;
650
651 /*10.3.6.10 Common timeslot info*/
652 T_zTD_P_common_ts_info tCommon_timeslot_info;
653
654 /*10.3.6.32 Downlink DPCH timeslots and codes*/
655 T_zTD_P_ul_timeslots_codes tUplink_dpch_timeslot_codes;
656}T_zTD_P_ul_cctrch_list;
657
658
659
660typedef struct{
661 /*Integer(0..6)*/
662 WORD wTimeslot_number;
663
664 /*Enumerated((16/1)..(16/16))*/
665 T_zTD_P_CHANNELISATION_CODE tChannelisation_code;
666
667 /*Midamble allocation mode
668 Enumerated(Default Midamble,Common Midamble,UE specific Midamble)
669 wMidamle_allocation_mode=0,1,2
670 */
671 WORD wMidamble_allocation_mode;
672
673 /*Midamble configuration
674 Integer(2,4,6,8,10,12,14,16)
675 */
676 WORD wMidamble_configuration;
677 /*Integer(0..15)*/
678 WORD wMidamble_shift;
679
680 /*
681 Integer(-7..8)
682 wAck_nack_power_offset = x-(-7)
683 x=wAck_nack_power_offset - 7
684 */
685 WORD wAck_nack_power_offset;
686 /*
687 Integer(-120..-58)
688 wPRXhs_sich = x-(-120);
689 x = wPRXhs_sich - 120;
690 */
691 WORD wPRXhs_sich;
692
693 /*
694 Integer(1,2,3)
695 */
696 WORD wTpc_step_size;
697}T_zTD_P_hs_sich;
698
699typedef struct{
700/*
701 //scchµÄ½ÓÊÕÆµÂÊ
702 WORD wScch_rx_freq;
703*/
704 /*Integer(0..6)*/
705 WORD wTimeSlot_number;
706
707 /*first Channelisation code*/
708 T_zTD_P_CHANNELISATION_CODE tFirst_channelisation_code;
709
710 /*second channelisation code*/
711 T_zTD_P_CHANNELISATION_CODE tSecond_channelisation_code;
712
713 /*Midamble allocation mode
714 Enumerated(Default Midamble,Common Midamble,UE specific Midamble)
715 wMidamle_allocation_mode=0,1,2
716 */
717 WORD wMidamble_allocation_mode;
718
719 /*
720 This IE is mandatory present when the value of the IE "Midamble Allocation Mode"
721 is "UE specific Midamble" and not needed otherwise.
722 Integer(0..15)
723 */
724 WORD wMidamble_shift;
725 /*
726 Integer(2,4,6,8,10,12,14,16)
727 */
728 WORD wMidamble_configuration;
729
730 /*
731 wBler_targetµÄ·¶Î§Îª0ÖÁ63£»ÎïÀí²ãÊÕµ½ºóÒª*£¨-0.05£©µÃµ½Êµ¼ÊÖµ
732 */
733 WORD wBler_target;
734
735 /*sich info*/
736 T_zTD_P_hs_sich tHs_sich;
737
738}T_zTD_P_hs_scch;
739
740typedef struct{
741 /*Midamble allocation mode
742 Enumerated(Default Midamble,Common Midamble,UE specific Midamble)
743 wMidamle_allocation_mode=0,1,2
744 */
745 WORD wMidamble_allocation_mode;
746 /*Midamble configuration
747 Integer(2,4,6,8,10,12,14,16)
748 */
749 WORD wMidamble_configuration;
750
751 /*Integer(0..15)*/
752 WORD wMidamble_shift;
753}T_zTD_P_hs_dpsch_midamble;
754
755typedef struct{
756 WORD wNumber_process;
757 /*memory partitioning 0:implicit 1:explicit*/
758 WORD wMemory_partitioning;
759
760 DWORD dwProcess_memory_size[Z_TD_P_MAX_H_PROCESS];
761}T_zTD_P_hs_harq_info;
762
763
764typedef struct {
765 WORD wTime_slot_number;
766 T_zTD_P_mid_shift_bur_type tMidamble_shift_burst_type; /*E-PUCHµÄmidamble modeÖ»ÄÜÈ¡0»ò2*/
767}T_zTD_P_epuch_midam;
768
769typedef struct{
770 WORD wSnpl_type; /*0:Íø²àδָ¶¨£¬¿ÉÖ±½ÓÌîSNPL=9; 1£ºtype1; 2£ºtype2*/
771 WORD wPrx_base_des; /*Reference desired power level for E-PUCH,ʵ¼ÊÖµ=x-112£¬È¡Öµ·¶Î§0-62.*/
772 WORD wBeacon_pl_est; /*1-·Ëð¹À¼ÆÊ±¿¼ÂÇbeacon£»0-²»¿¼ÂÇ*/
773 WORD wTpc_step_size; /*Pe-baseÖеÄstep²ÎÊý¡£Êý¾Ý·¶Î§£º1..3*/
774 WORD wPow_ctrl_gap; /*×ÓÖ¡¸öÊý£¬TPCʱ¼äÍ£¶ÙÃÅÏÞ£¬0..255*/
775 WORD wSync_step_size; /*µ÷ÕûÉÏÐд«Ê䶨ʱµÄ²½³¤,1..8*/
776 WORD wSync_freq; /*µ÷ÕûÉÏÐд«Ê䶨ʱµÄƵÂÊ,1..8*/
777 WORD wPadding;
778}T_zTD_P_epuch_pwr_info;
779
780typedef struct{
781 WORD wTime_slot_number;
782 T_zTD_P_mid_shift_bur_type tMidamble_shift_burst_type;
783 T_zTD_P_CHANNELISATION_CODE tFirst_channelisation_code;
784 T_zTD_P_CHANNELISATION_CODE tSecond_channelisation_code;
785}T_zTD_P_hs_eagch;
786
787typedef struct{
788 WORD wTime_slot_number;
789 T_zTD_P_mid_shift_bur_type tMidamble_shift_burst_type; /*E-HICHµÄmidamble modeÖ»ÄÜÈ¡0»ò2*/
790 T_zTD_P_CHANNELISATION_CODE tChannelisation_code;
791}T_zTD_P_hs_ehich;
792
793typedef struct{
794 WORD wRdi_ind; /*0:RDI²»´æÔÚ 1:RDI´æÔÚ*/
795
796 WORD wEagch_num; /*E-AGCHÐŵÀÐÅÏ¢Áбí*/
797 T_zTD_P_hs_eagch atEagch_config[Z_TD_P_MAX_EAGCH_NUM];
798 WORD wTpc_step_size; /*E-AGCHµÄ¹¦¿Ø²½³¤,1..3*/
799 WORD wEagch_bler_target; /*ʵ¼ÊÖµ=(x-63)*0.05£¬È¡Öµ·¶Î§0~63*/
800
801 WORD wEhich_num; /*E-HICHÐŵÀÐÅÏ¢Áбí*/
802 T_zTD_P_hs_ehich atEhich_config[Z_TD_P_MAX_SCH_EHICH_NUM];
803 WORD awEi[Z_TD_P_MAX_SCH_EHICH_NUM]; /*ÿ¸öE-HICHµÄ±êʶ,ȡֵ·¶Î§0~3*/
804
805 WORD wEpuch_num; /*E-PUCHÐŵÀÐÅÏ¢Áбí*/
806 T_zTD_P_epuch_midam atEpuch_midam_list[Z_TD_P_MAX_EPUCH_TS_NUM];
807}T_zTD_P_hs_sch_tr;
808
809typedef struct{
810 WORD wEucch_num; /*e-ucch¸öÊý£¬1~8*/
811
812 WORD wEpuch_act_time; /*E-PUCHÆðЧ֡ºÅ£¬0~255*/
813 WORD wEpuch_sub_frame; /*E-PUCHÆðЧ×ÓÖ¡ºÅ£¬0~1*/
814 WORD wEpuch_rep_prd; /*E-PUCHÖØ¸´ÖÜÆÚ£¬1/2/4/8/16/32¸öTTI*/
815 WORD wEpuch_rep_len; /*E-PUCH×ÊÔ´³¤¶È£¬È¡Öµ1..wEpuch_rep_prd-1,wEpuch_rep_prd=1ʱȡֵΪ1*/
816 WORD wEpuch_prri; /*E-PUCH×î´ó¹¦ÂÊ×ÊÔ´£¬1~32*/
817
818 WORD wEpuch_num; /*E-PUCHÐŵÀÐÅÏ¢Áбí*/
819 T_zTD_P_epuch_midam atEpuch_midam_list[Z_TD_P_MAX_EPUCH_TS_NUM];/*E-PUCHʱ϶ºÍMidÂëÐÅÏ¢*/
820 T_zTD_P_CHANNELISATION_CODE tChannelisation_code; /*E-PUCHÐŵÀ»¯Âë*/
821
822 WORD wEhich_sig_group_idx; /*E-HICHÐŵÀËùʹÓõÄSignatureSeqIndex£¬0~19.25221 5A.3.17*/
823 T_zTD_P_hs_ehich tEhich_config; /*E-HICHÐŵÀÅäÖÃ*/
824}T_zTD_P_hs_non_sch_tr;
825
826typedef struct{ /*L1ʹÓÃÉÏÐÐDPCHʱ϶ºÍÐŵÀ»¯ÂëÀ´½¨Á¢ÉÏÐÐDPCHºÍPLCCHµÄÓ³Éä¹ØÏµ*/
827 WORD wUl_dpch_ts; /*PLCCHËù¶ÔÓ¦ÉÏÐÐDPCHʱ϶*/
828 WORD wPlcch_seq_num; /*1..14£¬º¬Òå´ý²é*/
829 WORD wPlcch_ts; /*0..6*/
830 WORD wTpc_target_rate; /*0..10*/
831 T_zTD_P_CHANNELISATION_CODE tUl_dpch_channelsation_code; /*PLCCHËù¶ÔÓ¦ÉÏÐÐDPCHÂë*/
832 T_zTD_P_CHANNELISATION_CODE tPlcch_channelisation_code;
833}T_zTD_P_plcch_info;
834#ifdef R9_SUPPORT
835typedef struct{
836 WORD wHs_scch_recv_freq;/*HS-SCCH/HS-SICH¶ÔÓ¦µÄƵµã*/
837 WORD wPadding;
838 T_zTD_P_hs_scch tHs_scch_configuration;
839}T_zTD_P_mc_hs_scch;
840
841/*Rx or Tx Pattern*/
842typedef struct{
843 WORD wRepetition_period;/*ÖØ¸´ÖÜÆÚ£¬È¡Öµ·¶Î§1,2,4,8,16,32*/
844 WORD wRepetition_length; /*ÖØ¸´³¤¶È£¬È¡Öµ·¶Î§1..bRepetition_period-1£¬µ±wRepetition_period=1ʱ¸ÃÖµÎÞЧ*/
845}T_zTD_P_pattern;
846/*Hsdsch sps²Ù×÷¶ÔÓ¦µÄHarqÐÅÏ¢*/
847typedef struct{
848 WORD wNumber_process;/*Hs-scch sps²Ù×÷ËùÄÜʹÓõÄHARQ½ø³Ì¸öÊý£¬È¡Öµ·¶Î§1~8*/
849 WORD wPadding;
850 DWORD dwProcess_memory_size;/*Hs-scch sps²Ù×÷ËùÄÜʹÓõÄ×ܵÄÐéÄâIR bufferµÄ´óС£¬È¡Öµ·¶Î§£º800~16000 by step of 800£¬
851 17600~32000 by step of 1600£¬36000~80000 by step of 4000£¬88000~160000 by step of 8000£¬ 176000~304000 by step of 16000*/
852}T_zTD_P_hsdsch_sps_harq_info;
853/*ÓÃÓÚsps²Ù×÷µÄHs-dschÂë×ÊÔ´ÐÅÏ¢:µ±wStartCodeInfo¶ÔӦΪ16/16£¬wStopCodeInfo¶ÔӦΪ1/16ʱ£¬±íʾSFΪ1*/
854
855typedef struct
856{
857 WORD wStartCodeInfo; /*ÆðʼÐŵÀ»¯ÂëÐÅÏ¢;ȡֵΪ0¡­.15;·Ö±ð¶ÔÓ¦µÄÐŵÀ»¯ÂëΪ1/16¡­..16/16*/
858 WORD wStopCodeInfo;/*½áÊøµÄÐŵÀ»¯ÂëÐÅÏ¢;ȡֵΪ0¡­.15;·Ö±ð¶ÔÓ¦µÄÐŵÀ»¯ÂëΪ1/16¡­..16/16*/
859}T_zTD_P_code_resource_info;
860
861/*Hs-dsch¶ÔÓ¦µÄ³õʼspsÐÅÏ¢*/
862typedef struct
863{
864 WORD wTsInfo;/*·ÖÅäµÄÓÃÓÚspsµÄHs-pdsch¶ÔÓ¦µÄʱ϶ÐÅÏ¢£¬µÍÎåλÓÐЧ£¬Ö¸¶¨Î»ÖÃλ±íʾÏàӦʱ϶ÓÃÓÚsps²Ù×÷¡£*/
865 WORD wActTime;/*¼¤»îʱ¼ä£¬È¡Öµ·¶Î§0~255*/
866 WORD wSubFrameNum; /*×ÓÖ¡ºÅ£¬È¡Öµ0£¬1*/
867 WORD wInitTbsIdx;/*³õʼTbsË÷ÒýºÅ£¬È¡Öµ·¶Î§0~3*/
868 WORD wInitRxPatternIdx; /*³õʼRxPatternË÷ÒýºÅ£¬È¡Öµ·¶Î§0~3*/
869 WORD wHssichIdx; /*hssichË÷ÒýºÅ£¬È¡Öµ·¶Î§0~3*/
870 WORD wMod; /*ȡֵ0±íʾmodQPSK£¬1±íʾ mod16QAM*/
871 WORD wPadding;
872 T_zTD_P_code_resource_info tCodeResourceInfo; /*HS-PDSCHÐŵÀ»¯ÂëÐÅÏ¢£»µ±StartΪ16£¬stopΪ1ʱ£¬±íʾsfΪ1*/
873}T_zTD_P_init_hsdsch_sps_info;
874/*Edch¶ÔÓ¦µÄ³õʼspsÐÅÏ¢*/
875typedef struct
876{
877 WORD wEucch_num;/*e-ucch¸öÊý£¬1~8*/
878 WORD wTsInfo;/*·ÖÅäµÄÓÃÓÚspsµÄE-DCH¶ÔÓ¦µÄʱ϶ÐÅÏ¢£¬µÍÎåλÓÐЧ£¬Ö¸¶¨Î»ÖÃλ±íʾÏàӦʱ϶ÓÃÓÚsps²Ù×÷*/
879 WORD wEpuch_prri;/*E-PUCH×î´ó¹¦ÂÊ×ÊÔ´£¬1~32*/
880 WORD wActTime;/*¼¤»îʱ¼ä£¬È¡Öµ·¶Î§0~255*/
881 WORD wSubFrameNum;/*×ÓÖ¡ºÅ£¬È¡Öµ0£¬1*/
882 WORD wInitTxPatternIdx; /*³õʼTxPatternË÷ÒýºÅ£¬È¡Öµ·¶Î§0~3*/
883 T_zTD_P_CHANNELISATION_CODE tCodeResourceInfo; /*EdchÐŵÀ»¯ÂëÐÅÏ¢*/
884}T_zTD_P_init_edch_sps_info;
885
886/*HSDSCHµÄSPSÐÅÏ¢*/
887typedef struct{
888 WORD wHssichNum; /*hs-sichÐŵÀ¸öÊý*/
889 WORD wPatternNum;/*Rx Pattern¸öÊý£¬È¡Öµ·¶Î§1~4*/
890 WORD wTbsNum; /*Tb size¸öÊý£¬È¡Öµ·¶Î§1~4*/
891 WORD wInitSpsInfoFg;/*0:tInitSpsInfoÎÞЧ£»1:tInitSpsInfoÓÐЧ*/
892 WORD awTbs[Z_TD_P_MAX_HSDSCH_TBS_NUM];/*ÿ¸öTbSizeµÄË÷Òý£¬È¡Öµ·¶Î§1~63*/
893
894 T_zTD_P_pattern atRxPattern [Z_TD_P_MAX_HSDSCH_RX_PATTERN_NUM];
895 T_zTD_P_hsdsch_sps_harq_info tHarqInfo;
896 T_zTD_P_hs_sich atHssich [Z_TD_P_MAX_HS_SCCH];
897 T_zTD_P_init_hsdsch_sps_info tInitSpsInfo;
898}T_zTD_P_hsdsch_sps_info;
899/*EDCHµÄSPSÐÅÏ¢*/
900typedef struct{
901 WORD wEhich_sig_group_idx; /*E-HICHÐŵÀËùʹÓõÄSignatureSeqIndex£¬0~19.25221 5A.3.17*/
902 WORD wInitSpsInfoFg;/*0:tInitSpsInfoÎÞЧ£»1:tInitSpsInfoÓÐЧ*/
903 WORD wPadding;
904 WORD wPatternNum; /*TxPattern¸öÊý*/
905 T_zTD_P_pattern atTxPattern [Z_TD_P_MAX_EDCH_TX_PATTERN_NUM];
906 T_zTD_P_hs_ehich tEhich_config;
907 T_zTD_P_init_edch_sps_info tInitSpsInfo;
908}T_zTD_P_edch_sps_info;
909/*¿ØÖÆÐŵÀHSSCCH DRX²Ù×÷ÐÅÏ¢*/
910typedef struct {
911 WORD wInactivity_threshold_flg; /*1-±íʾwInactivity_thresholdÓÐЧ£»0-±íʾwInactivity_thresholdÎÞЧ*/
912 WORD wEnabling_delay; /*ÆðЧÑÓ³Ù£¬µ¥Î»£ºÎÞÏßÖ¡£¬È¡Öµ·¶Î§0£¬1£¬2£¬4£¬8£¬16£¬32£¬64£¬128£¬infinity£¨0xffff£©*/
913 WORD wDrx_cycle;/*DRXÖÜÆÚ£¬µ¥Î»×ÓÖ¡£¬È¡Öµ·¶Î§1£¬2£¬4£¬8£¬16£¬32£¬64£¬128*/
914 WORD wInactivity_threshold;/*DRXÖÜÆÚµÄÈ¥¼¤»îÃÅÏÞ£¬µ¥Î»£º×ÓÖ¡£¬È¡Öµ·¶Î§1£¬2£¬4£¬8£¬16£¬32£¬64£¬128£¬256£¬512£¬infinity£¬½öµ±wInactivity_threshold_flgΪ1ʱÓÐЧ*/
915 WORD wDrx_offset; /*DRXÆ«ÒÆ£¬µ¥Î»×ÓÖ¡£¬È¡Öµ·¶Î§0¡­63*/
916 WORD wPadding;
917}T_zTD_P_hsscch_ctrl_ch_drx;
918/*¿ØÖÆÐŵÀEAGCH DRX²Ù×÷ÐÅÏ¢*/
919typedef struct {
920 WORD wDrx_cycle;/*DRXÖÜÆÚ£¬µ¥Î»×ÓÖ¡£¬È¡Öµ·¶Î§1£¬2£¬4£¬8£¬16£¬32£¬64£¬128*/
921 WORD wDrx_offset;/*DRXÆ«ÒÆ£¬µ¥Î»×ÓÖ¡£¬È¡Öµ·¶Î§0¡­63*/
922}T_zTD_P_eagch_ctrl_ch_drx;
923/*¹²ÏíÐŵÀµÄͬ²½Ï¢*/
924typedef struct {
925 WORD wOut_of_sync_win; /*ʧ²½´°£¬40,80,160,320,640,µ¥Î»ms*/
926 WORD wHsscch_tpc_step_size;/*µ±ÏÂÐÐDPCH¡¢EAGCH¶¼Ã»ÓÐÅäÖÃʱ¸ÃÖµÓÐЧ£»È¡ÖµÎª1£¬2£¬3*/
927 /*N312,N313,N315*/
928 WORD wN312;
929 WORD wN313;
930 WORD wN315;
931 WORD wPadding;
932}T_zTD_P_share_ch_sync_para;
933/*PCH ̬ÏÂDPAÓ³Éäµ½DCCH/DTCHʱ£¬¶ÔÓ¦µÄÅäÖÃÐÅÏ¢*/
934typedef struct
935{
936 WORD wrec_win_size;/*DCCH/DTCH¶ÔÓ¦µÄ½ÓÊÕ´°´óС£¬1~16£¬µ¥Î»£º×ÓÖ¡*/
937 WORD wH_rnti;/*½ÓÊÕÏÂÐÐHS-SCCHʱÓõ½µÄUE ±êʶ*/
938 WORD wBcchHrnti; /*ÔÚÏÂÐеÚÒ»ÌõHS-SCCHÉϽÓÊÕBCCHÉϵÄÏûϢʱÓõ½µÄרÓÃUE±êʶ*/
939 WORD wHS_scch_num;/*HS-SCCH¸öÊý*/
940 WORD wPadding;
941 T_zTD_P_hs_dpsch_midamble tHs_pdsch_midamble_cfg;
942 T_zTD_P_hs_scch atHs_scch_configuration[Z_TD_P_MAX_HS_SCCH]; /*HS-SCCHÅäÖÃÐÅÏ¢£¬ÓÃÓÚBCCHºÍDCCH/DTCH½ÓÊÕ£¬½ÓÊÕBCCHʱֻ¼àÌýµÚÒ»ÌõHs-ScchÐŵÀ*/
943 T_zTD_P_hs_harq_info tHs_harq_info;
944}T_zTD_P_Dcch_dtch_rec_para;
945/*DPAÓ³Éäµ½PCCHʱ£¬¶ÔÓ¦µÄÅäÖÃÐÅÏ¢*/
946typedef struct
947{
948 T_zTD_P_hs_dpsch_midamble tHs_pdsch_midamble_cfg;
949 T_zTD_P_code_resource_info tCode_res_info;
950 WORD wSubChSize;/*Ѱºô×ÓÐŵÀ´óС£¬µ¥Î»£ºÖ¡£»1~3*/
951 WORD wTbsNum;/*TBS list¶ÔÓ¦µÄ¸öÊý*/
952 WORD awTbsList[2];
953 WORD wTrri; /*¿ÉÓÃÓÚHSPDSCHµÄʱ϶×ÊÔ´ÐÅÏ¢£¬bit0ÖÃλ±êʶTS0¿ÉÓã¬bit1ÖÃλ±êʶTS2¿ÉÓã¬...bit5ÖÃλ±êʶTS6¿ÉÓ㬵Í6λÓÐЧ£»TS1²»ÓÃ*/
954}T_zTD_P_pcch_relate_info;
955/*µ±Cell-FACH̬֧³ÖHSDSCHµÄDRX²Ù×÷ʱ£¬¶ÔÓ¦µÄDRXÐÅÏ¢*/
956typedef struct
957{
958 WORD wT321;/*¼àÌý¶¨Ê±Æ÷£¬È¡Öµ·¶Î§£º100£¬200£¬400£¬800ms*/
959 WORD wDrx;/*ȡֵ·¶Î§£»4£¬8£¬16£¬32Ö¡*/
960 WORD wRx_burst; /*ȡֵ·¶Î§£»1£¬2£¬4£¬8£¬16Ö¡*/
961 WORD wPadding;
962}T_zTD_P_fach_dpa_drx_info;
963/*ÅäÖøøL1µÄ¹«¹²ERNTIÁбí*/
964typedef struct {
965 WORD wStartErnti;/*16bitµÄÆðʼE-RNTIÐÅÏ¢*/
966 WORD wGroupNum; /*·¶Î§1...32*/
967 WORD wErntiNumPerGroup; /*ȡֵ1...2*/
968 WORD wPadding;
969}T_zTD_P_CommonErntiInfo;
970
971/*ÅäÖÃFACH»òIDLE̬ϵÄDPAÐÅÏ¢*/
972typedef struct
973{
974 WORD wPower_ctrl_gap; /*HS-SICHµÄ´«Êä¼ä¸ôÃÅÏÞ£¬×ÓÖ¡¸öÊý£¬0~255*/
975 WORD wPl_compensation_switch; /*1:HS-SICHʵ¼Ê´«Êä¼ä¸ôСÓÚÃÅÏÞʱÐè×÷·Ëð²¹³¥ 0:²»×÷·Ëð²¹³¥*/
976 WORD wH_rnti_type; /*HRNTIµÄÀàÐÍ£»0-¹«¹²HRNTI£»1-רÓÃHRNTI*/
977 WORD wH_rnti;/*½ÓÊÕÏÂÐÐHS-SCCHʱÓõ½µÄUE ±êʶ*/
978 WORD wBcchHrnti; /*ÔÚÏÂÐеÚÒ»ÌõHS-SCCHÉϽÓÊÕBCCHÉϵÄÏûϢʱÓõ½µÄרÓÃUE±êʶ*/
979 WORD wTs0Ind;/*1£º±íÊ¾Íø²àÔÊÐí½«ÏÂÐÐHSPDSCHÓÃÓÚTs0£¬0£º±íʾ²»ÔÊÐí*/
980 WORD wHS_scch_num;/*HS-SCCH¸öÊý*/
981 WORD wHsdpa_drx_fg;/*1£ºµ±Ç°HsdpaÖ§³ÖDRX²Ù×÷£»0£º²»Ö§³ÖDrx²Ù×÷£»wH_rnti_type==1ʱÓÐЧ*/
982 WORD wPadding;
983
984 T_zTD_P_hs_scch atHs_scch_configuration[Z_TD_P_MAX_HS_SCCH];
985 T_zTD_P_hs_dpsch_midamble tHs_pdsch_midamble_cfg;
986 T_zTD_P_hs_harq_info tHs_harq_info;
987 T_zTD_P_fach_dpa_drx_info tHsdpa_drx_info;
988}T_zTD_P_fach_dpa_info;
989/*FACH»òIDLE̬ϵÄÔöÇ¿UpaÅäÖÃ*/
990typedef struct
991{
992 WORD wE_rnti_type;/*µ±Ç°Ê¹ÓÃE-RNTIÀàÐÍ£¬£»1-רÓÃERNTI£»0-¹«¹²ERNTI*/
993 WORD wE_rnti; /*רÓõÄERNTI£¬½öµ±wE_rnti_type=1ʱÓÐЧ */
994 WORD wReset_flg; /*0:not reset 1:reset*/
995 WORD wHarq_info; /**/
996 WORD wN_ehich; /*E-PUCHºÍE-HICHÏà¸ôµÄʱ϶Êý,4~15*/
997 WORD wPrimary_ccpch_tx_power;/* Integer(6..43)dBm */
998 WORD wMax_allowed_ul_tx_power;/*Integer(-50..33) bMax_allowed_ul_tx_power = (x -(-50)) */
999 WORD wUppch_chip_shift_flg;
1000 WORD wUppch_chip_shift;
1001 WORD wPadding;
1002 T_zTD_P_CommonErntiInfo tCommonErnti;
1003 T_zTD_P_epuch_pwr_info tEpuch_pwr_info;
1004 T_zTD_P_hs_sch_tr tHs_sch_tr_info;
1005}T_zTD_P_fach_upa_info;
1006/*ÅäÖÃPCH̬ϵÄDPAÐÅÏ¢*/
1007typedef struct
1008{
1009 WORD wTs0Ind;/*1£º±íÊ¾Íø²àÔÊÐí½«ÏÂÐÐHSPDSCHÓÃÓÚTs0£¬0£º±íʾ²»ÔÊÐí*/
1010 WORD wDcch_dtch_rec_fg;/*µ±Ç°ÊÇ·ñÖ§³Ö½ÓÊÕDTCHºÍDCCH£»0£º²»Ö§³Ö£»1£ºÖ§³Ö*/
1011
1012 T_zTD_P_Dcch_dtch_rec_para tDcch_dtch_rec_para; /*Dcch/DtchÉϵĽÓÊÕÅäÖÃÐÅÏ¢£¬½öµ±wDcch_dtch_rec_fg=1ʱÓÐЧ*/
1013 T_zTD_P_pcch_relate_info tPcch_info; /*PcchÉϵĽÓÊÕÅäÖÃÐÅÏ¢£¬½öµ±wDcch_dtch_rec_fg=0ʱÓÐЧ*/
1014}T_zTD_P_pch_dpa_info;
1015
1016#endif
1017
1018/**************************************************************************
1019 * CSRÈ«¾ÖÊý¾ÝÀàÐͶ¨Òå *
1020 **************************************************************************/
1021typedef struct{
1022 WORD wFreq_start_range;
1023 WORD wFreq_end_range;
1024}T_zTD_P_frequency_range;
1025
1026typedef struct{
1027 WORD wFrequency;
1028 WORD wRssi;
1029}T_zTD_P_scan_result;
1030
1031typedef struct{
1032 WORD wCell_parameter_id;
1033 WORD wPccpch_rscp;
1034}T_zTD_P_cell_params;
1035
1036
1037/******************************************************
1038 RRC->PHY
1039 ¹¦ÄÜ:
1040 ¿ÉÄܳöÏÖµÄÔÚ³õʼ״̬£¬IDLE̬£¬CELL_PCH̬£¬CELL_URA̬£¬CELL_FACH̬£»
1041 ÓзþÎñÐ¡ÇøÊ±£¬ÓÅÏȽÓÊÕpage¡¢sccpchºÍÔ­À´µÄ²âÁ¿ÈÎÎñ£¬ÔÚÊ£ÓàµÄ¿ÕÏÐʱ¼äÄÚ£¬
1042 ¾¡¿ì½øÐÐfreq scanµÄ¹¤×÷¡£
1043 ½á¹¹:
1044 T_zP_TD_frequency_scan_req
1045
1046******************************************************/
1047typedef struct
1048{
1049 WORD wMsgId; //delt1123
1050 /*ɨÃèµÄƵ¶Î·¶Î§:1~32*/
1051 WORD wNumFreqRange;
1052 WORD wSeqNum; /*¶¨Ò嵱ǰµÄɨƵÏûÏ¢ÐòºÅ,·¶Î§0-65535*/
1053 WORD wPadding;
1054 /*
1055 wFreqStartRange:ÆðʼƵµãµÄUARFCN,·¶Î§9254~10121
1056 wFreqEndRange:½áÊøÆµµãµÄUARFCN,·¶Î§:9254~1-121
1057 */
1058 T_zTD_P_frequency_range atFrequencyRange[Z_TD_P_MAX_FREQSCAN_FREQ_NUM];
1059}T_zTD_P_frequency_scan_req;
1060
1061
1062typedef struct{
1063 WORD wMsgId;
1064 WORD wPadding;
1065}T_zTD_P_abort_freq_scan_cnf;
1066
1067
1068/******************************************************
1069 RRC->PHY
1070 ¹¦ÄÜ:
1071 Í£Ö¹L1ƵÂÊɨÃè
1072 ½á¹¹:
1073 T_zP_TD_abort_freq_scan_req,¿Õ½á¹¹
1074******************************************************/
1075typedef struct{
1076 WORD wMsgId;
1077 WORD wPadding;
1078}T_zTD_P_abort_freq_scan_req;
1079
1080/******************************************************
1081 RRC->PHY
1082 ¹¦ÄÜ:
1083 L1Íê³ÉɨƵºó£¬Í¨¹ýÏûÏ¢P_FREQUENCY_SCAN_IND
1084 Éϱ¨²âÁ¿½á¹û£¬Éϱ¨µÄRSSIµÄÖµÊÇÒ»¸öS16ÀàÐÍ£¬¸ÃÖµ
1085 Ϊʵ¼Ê²âÁ¿µÄRSSI£¨dbm£©£«100£»
1086 ½á¹¹:
1087 T_zP_TD_frequency_scan_ind
1088
1089******************************************************/
1090typedef struct
1091{
1092 WORD wMsgId;
1093 WORD wNoOfRssiMeas; /*·µ»ØµÄRSSI²âÁ¿½á¹ûµÄÊýÄ¿,·¶Î§:1~32 */
1094 WORD wSeqNum; /*·µ»ØµÄɨƵÏûÏ¢ÐòºÅ,·¶Î§0-65535*/
1095 WORD wPadding;
1096 /*
1097 T_scan_result:
1098 wFrequency:ƵµãºÅ,·¶Î§Îª9254~10121
1099 swRssiÿ¸öƵµãµÄRSSIÖµ,ÖµµÄʵ¼Ê·¶Î§ÊÇʵ¼ÊȡֵµÄRSSI+100,ЭÒéȡֵ-100~-25,
1100 ´Ë×Ö¶ÎȡֵΪ0~75
1101 */
1102 T_zTD_P_scan_result atRssiResult[Z_TD_P_MAX_RSSI_RESULTS_NUM]; //32 delete1123
1103}T_zTD_P_frequency_scan_ind;
1104
1105
1106/******************************************************
1107 PHY->RRC
1108 ¹¦ÄÜ:
1109 Ö¸¶¨ÆµµãÉϲéÕÒÖ¸¶¨ÊýÄ¿Ð¡Çø,Èç¹ûµ±Ç°ÒÑÓзþÎñÐ¡Çø,L1ÐèҪͬʱ±£³Ö·þ
1110 ÎñÐ¡ÇøÍ¬²½,ÒÔ¼°½ÓÊÕѰºô¡¢SCCPCHÏÂÐÐÊý¾ÝµÈ.Èç¹ûÊÕµ½Ñ°ºôµÈÇé¿öÐè
1111 ÒªÖжÏL1Ð¡ÇøËÑË÷,ÖжϺóL1²»ÔÙÏòЭÒéÕ»Éϱ¨ÒÑ·¢ÏÖÐ¡ÇøÐÅÏ¢.
1112 Èç¹û num_of_cell_idÈ¡0,ÇëÇóL1ÔÚÖ¸¶¨ÆµµãÉÏäËÑÐ¡ÇøÂú×ãmin_rscp_
1113 threshold ÃÅÏÞµÄnum_of_result¸öÐ¡ÇøÉϱ¨.
1114 Èç¹ûnum_of_cell_idÈ¡·Ç0Öµ£¬ÇëÇóL1ÔÚÖ¸¶¨cell_parameter_idµÄÐ¡ÇøÁÐ
1115 ±íÖÐËÑË÷Âú×ãwMinRscpÃÅÏÞµÄÐ¡ÇøÉϱ¨.
1116 ½á¹¹:T_zP_TD_cell_search_req
1117
1118******************************************************/
1119typedef struct
1120{
1121 WORD wMsgId;
1122 WORD wSeqNum; /*¶¨Ò嵱ǰµÄcell searchÏûÏ¢ÐòºÅ¡£Êý¾Ý·¶Î§£º0~65535 */
1123
1124 /*ƵµãºÅ9254~10121*/
1125 WORD wFrequency;
1126 /*ËÑË÷ÀàÐÍ
1127 0:·µ»ØÖ¸¶¨ÆµµãµÄ×îÇ¿Ð¡Çø
1128 1:·µ»ØÖ¸¶¨ÆµµãµÄÐ¡ÇøÁбí
1129 2:·µ»ØÖ¸¶¨cell_parameter_id µÄÐ¡Çø
1130 */
1131 WORD wSearchType;
1132
1133 /*Ö¸¶¨ÆµµãÐèÒªËÑË÷µÄÐ¡ÇøÊýÄ¿*/
1134 WORD wNumOfResult;
1135 /*ËÑË÷Ð¡ÇøÐèÒªÂú×ãµÄ×îµÍRSCPÃÅÏÞÖµ*/
1136 WORD wMinRscpThreshold;
1137
1138 /*Ö¸¶¨´ýËÑË÷Ð¡ÇøµÄÊýÄ¿0:±íʾָ¶¨ÆµµãäËÑÐ¡Çø;·Ç0±íʾÔÚÖ¸¶¨cell_parameter_idµÄÐ¡Çø
1139 ÁбíÖÐËÑË÷Í¬ÆµÐ¡Çø*/
1140 WORD wNumOfCellId;
1141
1142 /*´ýËÑË÷Ð¡ÇøµÄcell_parameter_id*/
1143 WORD awCellParameterId[Z_TD_P_MAX_SRH_RESULTS_NUM];
1144
1145 /*Ö¸Ê¾Ð¡ÇøSFN-SFNʱ¼ä²îÖµÊÇ·ñ´æÔڵıêÖ¾,ÿ¸öÐ¡ÇøÒ»¸ö,¶ÔÓ¦cell_parameter_idÁбíÖеÄÐ¡Çø
1146 0:²»´æÔÚ
1147 1:´æÔÚ
1148 */
1149 WORD awTimeDiffBitMap;
1150
1151 /*dch:¶ÔÓ¦SFN-CFN observed time difference
1152 ÆäËü״̬¶ÔÓ¦sfn-sfn observed time difference
1153 */
1154 WORD awOff[Z_TD_P_MAX_SRH_RESULTS_NUM];
1155 WORD awTm[Z_TD_P_MAX_SRH_RESULTS_NUM];
1156}T_zTD_P_cell_search_req;
1157
1158/******************************************************
1159 RRC->PHY
1160 ¹¦ÄÜ:
1161 Í£Ö¹ÎïÀí²ãµÄÐ¡ÇøËÑË÷
1162 ½á¹¹:T_abort_cell_srh_req
1163******************************************************/
1164typedef struct{
1165 WORD wMsgId;
1166 WORD wPadding;
1167}T_zTD_P_abort_cell_srh_req;
1168
1169/******************************************************
1170 PHY->RRC
1171 ¹¦ÄÜ:
1172 Í£Ö¹ÎïÀí²ãµÄÐ¡ÇøËÑË÷ÎïÀí²ãÓ¦´ð
1173 ½á¹¹:T_abort_cell_srh_cnf
1174******************************************************/
1175typedef struct{
1176 WORD wMsgId;
1177 WORD wPadding0;
1178}T_zTD_P_abort_cell_srh_cnf;
1179
1180
1181/******************************************************
1182 PHY->RRC
1183 ¹¦ÄÜ:
1184 Éϱ¨Ö¸¶¨ÆµµãÉÏÂú×ã×îµÍRSCPÃÅÏÞÖµµÄÐ¡ÇøµÄ²âÁ¿½á¹û
1185 ½á¹¹:T_zP_TD_cell_search_ind
1186******************************************************/
1187typedef struct
1188{
1189 WORD wMsgId;
1190 WORD wSeqNum; /*·µ»Øµ±Ç°µÄcell searchÏûÏ¢ÐòºÅ¡£Êý¾Ý·¶Î§£º0~65535*/
1191
1192 WORD wFrequency; /*ͬ²½Ð¡ÇøËùÔÚÆµµã*/
1193 WORD wNoOfFoundCells; /*ËÑË÷µ½µÄÂú×ã×îµÍRSCPÃÅÏÞµÄÐ¡ÇøÊýÄ¿,0±íʾ¸ÃƵµãδÕÒµ½Ð¡Çø*/
1194
1195 /*
1196 T_cell_params:
1197 wCellparameterId:ÒѾ­ËÑË÷µ½µÄÐ¡ÇøL1±êʶ;0~127
1198 wPccpchRscp:ÒÑËÑË÷Ð¡ÇøµÄpccpchÐŵÀRSCP;0~91
1199 swDeltaRscp:µ±pccpchÐŵÀµÄrscpֵСÓÚ0ʱ,¸ÃÖµ±ØÑ¡.
1200 */
1201 T_zTD_P_cell_params atCell[Z_TD_P_MAX_SRH_RESULTS_NUM];
1202}T_zTD_P_cell_search_ind;
1203
1204
1205/******************************************************
1206 RRC->PHY
1207 ¹¦ÄÜ:
1208 ¸ÃÏûÏ¢¿ÉÄÜÔÚÈκÎ״̬Ï·¢Éú£¬ÓÃÓÚÈ·ÈÏij¸öÖ¸
1209 ¶¨µÄÐ¡ÇøµÄSFN¿ÉÒÔÕý³£½âÂë¡£
1210 ½á¹¹:
1211 T_zP_TD_bch_read_req
1212
1213
1214******************************************************/
1215typedef struct
1216{
1217 WORD wMsgId;
1218 WORD wBchPriority; /*0:±íʾBCH¶ÁÈ¡ÓÅÏȼ¶µÍÓÚIDLEģʽѰºô½ÓÊÕ(ÒìÆµÇé¿ö); 1:±íʾBCH¶ÁÈ¡ÓÅÏȼ¶¸ßÓÚIDLEģʽѰºô½ÓÊÕ(ÒìÆµÇé¿ö)*/
1219
1220 WORD wFrequency; /*ÐèÒª½âÂëÐ¡ÇøËùÔÚÆµµãUARFCN*/
1221 WORD wCellParameterId; /*ÐèÒª½âÂëÐ¡ÇøµÄL1±êʶ*/
1222}T_zTD_P_bch_read_req;
1223
1224/******************************************************
1225 PHY->RRC
1226 ¹¦ÄÜ:
1227 ÓÃÓÚ·´À¡CPhy_SfnDecode_Req£¬±íʾ¸ÃÐ¡Çø¿ÉÒÔÕýÈ·¶ÁÈ¡BCH¡£
1228 ÁíÍâÔÚDCHÁ´Â·½¨Á¢£¬Ìí¼Ó¹ý³ÌÖУ¬FW×Ô¶¯¶Ô¸ÃÁ´Â·µÄSFN½øÐнâÂë
1229 £¬²¢·´À¡¸øL1U£¬´Ó¶øÈ·ÈϸÃÐ¡ÇøÊÇ¿ÉÒÔʹÓõġ£
1230 ½á¹¹:
1231 T_zP_TD_sfn_decode_ind
1232
1233 Ôݲ»¿¼ÂÇ
1234******************************************************/
1235/*
1236typedef struct
1237{
1238 WORD wMsgId;
1239 WORD wResult; //0:success ±íʾÒѾ­µÃµ½SFN; 1:failure±íʾSFNδ֪;
1240}T_zTD_P_sfn_decode_ind;
1241*/
1242
1243/******************************************************
1244 PHY->RRC
1245 ¹¦ÄÜ:
1246 ¸ÃÏûÏ¢¿ÉÄÜÔÚÈκÎ״̬Ï·¢Éú£¬´ò¿ªBCH¶ÁϵͳÐÅÏ¢£¬
1247 °üÀ¨·þÎñÐ¡ÇøºÍÏàÁÚÐ¡Çø£¬ÎÞÏìÓ¦ÏûÏ¢¡£
1248 ½á¹¹:
1249 T_zP_TD_bch_open_req
1250******************************************************/
1251typedef struct {
1252 WORD wMsgId;
1253 WORD wType; /* ¶ÁÈ¡ÀàÐÍ£¬0£ºÖ¸¶¨¶ÁÈ¡ 1£ºÁ¬Ðø¶ÁϵͳÐÅÏ¢±¨¸øÐ­ÒéÕ»£¬²»Çø·ÖMibºÍSib*/
1254 WORD wFrequency; /*ÐèÒª¶ÁÈ¡BCHµÄÐ¡ÇøËùÔ򵀮µµã*/
1255
1256 WORD wCellParameterId; /*ÐèÒª¶ÁÈ¡BCHµÄÐ¡ÇøL1±êʶ*/
1257 WORD wTimeDiffInd; /*dch:¶ÔÓ¦SFN-CFN observed time difference; ÆäËü״̬¶ÔÓ¦sfn-sfn observed time difference */
1258
1259 WORD wOff;
1260 WORD wTm;
1261 /*µ±wType=0ʱÏÂÃæ3¸öÔªËØÓÐЧ,µ±L1ÒÔgapģʽ½øÐÐÖ¸¶¨¶Áȡʱ£¬Ö»ÒªÓÐЧgap´óÓÚÒ»¸öbch TTI£¬¼´Ê¹gap³¤¶ÈСÓÚÖØ¸´³¤¶È£¬Ò²ÐèҪȥ¶ÁÈ¡£¬Ð­ÒéÕ»ÏÔʾµÄ½øÐÐBCH_REALEASE*/
1262 WORD wBch_occasion; /*Ö¸¶¨¶ÁÈ¡µÄÖÜÆÚµÄÆðʼλÖ㬵¥Î»ÎÞÏßÖ¡£¬Êý¾Ý·¶Î§£º0~ÖØ¸´ÖÜÆÚ-2*/
1263 WORD wRep_period; /*Ö¸¶¨¶ÁÈ¡µÄÖØ¸´ÖÜÆÚ£¬µ¥Î»ÎÞÏßÖ¡£¬Êý¾Ý·¶Î§£º1~4096*/
1264 WORD wRep_len; /*Ö¸¶¨¶ÁÈ¡µÄÖØ¸´³¤¶È£¬µ¥Î»ÎÞÏßÖ¡£¬Êý¾Ý·¶Î§£º2~ÖØ¸´ÖÜÆÚ-2*/
1265}T_zTD_P_bch_open_req;
1266
1267/******************************************************
1268 PHY->RRC
1269 ¹¦ÄÜ:
1270 ´ò¿ªBCHºóL1Öð¿éÉϱ¨ÏµÍ³ÐÅϢָʾ£¬Ð­ÒéÕ»ÊÕµ½´Ëָʾºó
1271 È¥¹Ì¶¨Buffer¶ÁϵͳÐÅÏ¢Êý¾Ý
1272 ½á¹¹:
1273 ˵Ã÷:¸Ã½á¹¹¶ÔÓ¦Êý¾Ý´æ·ÅÔÚDPRAMµÄÊý¾ÝÇøÓòÖУ¬¹Ê°´16bit¶ÔÆë¡£
1274******************************************************/
1275typedef struct {
1276 WORD wMsgId;
1277 WORD wSfn; /*½âÂëBCHÊý¾ÝµÄÊ×Ö¡µÄϵͳ֡ºÅ0~4095*/
1278 /*
1279 0:±íʾ´«Êä¿é½âÂëÕýÈ·
1280 1:±íʾCRC½âÂë´íÎó;
1281 2:±íʾµ÷¶È³åÍ»,BCHûÓжÁÈ¡,Êý¾ÝÎÞЧ
1282 */
1283 WORD wCrcCheck;
1284 WORD wFrequency;
1285 WORD wCellParameterId;
1286 WORD wPadding;
1287
1288 WORD awDataArea[Z_TD_P_MAX_NUM_OF_BCH_DWORDS*2];
1289}T_zTD_P_Bch_Buffer;
1290
1291/******************************************************
1292 PHY->RRC
1293 ¹¦ÄÜ:
1294 Èç¹ûL1¶ÁBCHʧ°Ü£¬ÓÃP_BCH_READ_REJÏûϢ֪ͨЭÒéÕ»
1295 ½á¹¹:
1296 T_zP_TD_bch_open_rej
1297******************************************************/
1298typedef struct
1299{
1300 WORD wMsgId;
1301 WORD wCause; /*0:¶ÁÈ¡BCHÓëÔ­SCCPCH³åÍ»,ÔÊÐíɾ³ýSCCPCHÖØ¶Á; 1:ÒòÐźŽϲî,ÎÞ·¨¶ÁÈ¡BCH; */
1302 WORD wFrequency;
1303 WORD wCellParameterId;
1304}T_zTD_P_bch_open_rej;
1305
1306/******************************************************
1307 RRC->PHY
1308 ¹¦ÄÜ:
1309 ЭÒéÕ»ÇëÇóL1Í£Ö¹½ÓÊÕϵͳÐÅÏ¢,ÊÍ·ÅBCH
1310 ½á¹¹:
1311 T_zP_TD_bch_release_req
1312******************************************************/
1313typedef struct{
1314 WORD wMsgId;
1315 WORD wPadding;
1316}T_zTD_P_bch_release_req;
1317
1318
1319/******************************************************
1320 PHY->RRC
1321 ¹¦ÄÜ:
1322 L1È·ÈÏЭÒéջֹͣ½ÓÊÕϵͳÐÅÏ¢
1323 ½á¹¹:
1324 T_zTD_P_bch_release_cnf
1325******************************************************/
1326typedef struct{
1327 WORD wMsgId;
1328 WORD wPadding0;
1329}T_zTD_P_bch_release_cnf;
1330
1331
1332/******************************************************
1333 RRC->PHY
1334 ¹¦ÄÜ:
1335 RRCÔÚϵͳÐÅÏ¢¶ÁÈ¡Íê³Éºó£¬ÈÏÎªÐ¡Çø¿É
1336 פÁô£¬·¢ËÍ´ËÏûϢ֪ͨÎïÀí²ã´ËÐ¡ÇøÎª·þ
1337 ÎñÐ¡Çø¡£
1338 ½á¹¹:
1339 T_zP_TD_camp_on_a_cell_req
1340******************************************************/
1341typedef struct
1342{
1343 WORD wMsgId;
1344 WORD wPadding;
1345
1346 WORD wFrequency; /*·þÎñÐ¡ÇøËùÔÚÆµµã*/
1347 WORD wCellParameterId; /*·þÎñÐ¡ÇøL1±êʶ*/
1348}T_zTD_P_camp_on_a_cell_req;
1349
1350/******************************************************
1351 PHY->RRC
1352 ¹¦ÄÜ:
1353 µ×²ãÈ·ÈÏפÁôÐ¡Çø¡£
1354 ½á¹¹:
1355 T_zTD_P_camp_on_a_cell_cnf
1356******************************************************/
1357typedef struct
1358{
1359 WORD wMsgId;
1360 WORD wPadding;
1361}T_zTD_P_camp_on_a_cell_cnf;
1362
1363/******************************************************
1364 RRC->PHY
1365 ¹¦ÄÜ:
1366 ЭÒéջ֪ͨÎïÀí²ãÊÍ·ÅËùÓÐ×ÊÔ´
1367 ½á¹¹:
1368 T_zTD_P_Reset_req
1369******************************************************/
1370typedef struct{
1371 WORD wMsgId;
1372 WORD wRfStat; /*É䯵³õʼ»¯ºó״̬£¬1¡ª¡ªÉ䯵¿ÉÓã¬0¡ª¡ªÉ䯵²»¿ÉÓÃ*/
1373}T_zTD_P_Reset_req;
1374
1375/******************************************************
1376 PHY->RRC
1377 ¹¦ÄÜ:
1378 ÎïÀí²ã֪ͨЭÒéÕ»ÊÍ·ÅËùÓÐ×ÊÔ´½áÊø
1379 ½á¹¹:
1380 T_zTD_P_reset_cnf
1381******************************************************/
1382typedef struct{
1383 WORD wMsgId;
1384 WORD wPadding;
1385}T_zTD_P_reset_cnf;
1386
1387/******************************************************
1388 RRC->PHY
1389 ¹¦ÄÜ:
1390 ЭÒéջ֪ͨÎïÀí²ãģʽÀàÐÍ£¬ÊÇGSM mode»òÕßUMTS mode£¬
1391 µ±Ð­ÒéÕ»ÈÏΪTD L1ÐèÒªÓÃgapʱ¼ä¹¤×÷ʱ£¬ÔòÉèÖÃΪGSM mode£»
1392 ·ñÔòΪUMTS mode£»
1393 TD L1¸ù¾ÝģʽÀàÐÍ£¬À´ÅжϺóÐø¹¤×÷Ðè²»ÐèÒªµÈ´ýgapʱ¼äÀ´½øÐÐ
1394 ½á¹¹:
1395 T_set_irat_mode_Req
1396******************************************************/
1397typedef struct{
1398 WORD wMsgId;
1399 WORD wModeTypes; /*0-Gsm mode£¬1-Umts mode*/
1400}T_zTD_P_set_irat_mode_Req;
1401
1402
1403/******************************************************
1404 RRC->PHY
1405 ¹¦ÄÜ:
1406 ЭÒéÕ»ÃüÁîL1½øÈë˯Ãß״̬,Ö±µ½Ð­ÒéÕ»
1407 ͨ¹ýARM´¦ÀíÆ÷»½ÐÑDSP´¦ÀíÆ÷
1408 ½á¹¹:
1409 T_zP_TD_td_sleep_req
1410 ´ý¶¨
1411******************************************************/
1412/*
1413typedef struct{
1414 WORD wEnable;
1415 WORD wPadding;
1416}T_zTD_P_sleep_req;
1417*/
1418
1419/**************************************************************************
1420 * ²âÁ¿È«¾ÖÊý¾ÝÀàÐͶ¨ÒåSTART *
1421 **************************************************************************/
1422typedef struct{
1423 WORD wCellID;
1424 WORD wCellPara;
1425 WORD wChipAccuracy; /*ȡֵΪ0£¬40£¬256£¬2560ÆäÖÐȡֵΪ0ʱ±íʾÎÞÂëÆ¬¾«¶ÈÐÅÏ¢¡£*/
1426 WORD wRefTimeDiff;
1427 WORD wRefPwr; /*PCCPCH²Î¿¼·¢É书ÂÊ£¬È¡Öµ6..43*/
1428 WORD wSnplInd; /*ָʾÊÇ·ñ²ÎÓëSNPL¼ÆË㣬1:²ÎÓë 0:²»²ÎÓë*/
1429 WORD wTsNum;
1430 WORD awTsList[Z_TD_P_MAX_DL_TS];
1431}T_zTD_P_CellInfo;
1432
1433/**************************************************************************
1434 RRC<->PHY
1435 ¹¦ÄÜ:
1436 RRCºÍPHY²ã¼äµÄͬƵ²âÁ¿ÅäÖýӿÚ
1437 ½á¹¹:
1438 ͬƵ²âÁ¿ÅäÖÃÏûÏ¢P_INTRA_FREQ_MEAS_REQ
1439 ͬƵ²âÁ¿½á¹ûÏûÏ¢P_INTRA_FREQ_MEAS_IND
1440 **************************************************************************/
1441
1442typedef struct{
1443 WORD wMsgId;
1444 WORD wDetectedSetQuantity;
1445 WORD wNumberOfCellMeas;
1446 WORD wPadding;
1447 WORD wRefTimeDiffInd;/*¶¨ÒåwRefTimeDiff ²ÎÊý¸ø³öµÄÆ«²îÊÇSFN-SFN timing difference»òÊÇSFN-CFN timing differenceÒÔ¼°ÏàӦʱ¼ä²îµÄÀàÐÍ¡£
1448 b0£ºtiming difference.0£½SFN-SFN timing difference£¬1£½SFN-CFN timing difference
1449 b1£ºtypeInd.0=TYPE1,1=TYPE2*/
1450 WORD wNotMeasCellNum;/*²»ÐèÒª²âÁ¿µÄÐ¡ÇøÊý*/
1451
1452 T_zTD_P_CellInfo atCellInfo[Z_TD_P_MAX_INTRA_CELL_NUM];
1453
1454 DWORD dwMeasId;
1455
1456 DWORD dwRscpNeed;
1457
1458 DWORD dwIscpNeed;
1459
1460 DWORD dwCellSynInforNeed;
1461
1462 WORD wNotMeasCellPara[Z_TD_P_MAX_INTRA_CELL_NUM]; /*²»ÐèÒª²âÁ¿µÄÐ¡ÇøwCellPara */
1463}T_zTD_P_CPhy_IntraMeas_Req; /*273B*/
1464
1465typedef struct{
1466 WORD wCellID;
1467 WORD wCellPara;
1468 WORD wRscpFlag:1;
1469 WORD wSfnFlag:1;
1470 WORD :14;
1471 WORD wRscp;
1472
1473 WORD wTsNum;
1474 WORD wSfn;
1475 WORD wOff;
1476 WORD wTm; /*DCH̬ÏÂTMÖµÎÞЧ*/
1477
1478 WORD awTsList[Z_TD_P_MAX_DL_TS];
1479 WORD awIscp[Z_TD_P_MAX_DL_TS];
1480}T_zTD_P_CellMeasRlt;
1481
1482typedef struct{
1483 WORD wMsgId;
1484 WORD wPadding;
1485
1486 WORD wCellNum;
1487 WORD wFailCellNum;
1488
1489 T_zTD_P_CellMeasRlt atMeasRltList[Z_TD_P_MAX_INTRA_CELL_NUM]; /*Êý×éÐ¡ÇøÓëÐ¡ÇøID¶ÔÓ¦*/
1490
1491 DWORD dwMeasId;
1492
1493 DWORD dwFailCellBitMap;
1494}T_zTD_P_CPhy_IntraMeas_Ind; /*424B*/ /*Èç¹ûÈ¡×î´ó32¸öÐ¡Çø840B*/
1495
1496
1497/**************************************************************************
1498 RRC<->PHY
1499 ¹¦ÄÜ:
1500 RRCºÍÎïÀí²ã¼äµÄÒìÆµ²âÁ¿ÅäÖýӿÚ
1501 ½á¹¹:
1502 Ƶ¼ä²âÁ¿ÅäÖÃÏûÏ¢ P_INTER_FREQ_MEAS_REQ
1503 Ƶ¼ä²âÁ¿½á¹ûÏûÏ¢ P_INTER_FREQ_MEAS_IND
1504 äƵµã²âÁ¿³öµÄÐ¡Çø²âÁ¿½á¹ûÉϱ¨ P_INTER_FREQ_BLIND_MEAS_IND
1505 **************************************************************************/
1506/* ƵµãÐÅÏ¢ */
1507typedef struct
1508{
1509 WORD wFreq; /*Ƶµã*/
1510 WORD wStartPos:8 ; /*¸ÃƵµãÐ¡ÇøÔÚÐ¡ÇøÐÅÏ¢±íÖÐµÄÆðʼλÖÃ*/
1511 WORD wCellNum:8; /*¸ÃƵµãÉϵÄÐ¡ÇøÊý*/
1512 WORD wHighPrio; /* ÖÃ1±íʾ¸ÃƵµãÏà¶ÔÓÚ·þÎñƵµãΪ¸ßÓÅÏȼ¶ */
1513 WORD wPadding;
1514}T_zTD_P_FreqMeasInfo;
1515
1516typedef struct {
1517 WORD wMsgId;
1518#ifdef R9_SUPPORT
1519 WORD wBlindRepFlg;/*ÊÇ·ñÊÇäƵµãÉϱ¨·½Ê½ 1±íʾäƵµãÉϱ¨ 0±íʾÒìÆµÉϱ¨·½Ê½*/
1520 DWORD dwTmeasInial; /*³õʼ²âÁ¿Éϱ¨ÖÜÆÚ£¬µ¥Î»MS.ÎïÀí²ãÔÚÍê³ÉËùÓÐÆµµã²âÁ¿ºóÖÜÆÚδ³¬Ê±Ò²¿ÉÒÔÌáǰÉϱ¨²âÁ¿½á¹û¡£
1521 ÖÜÆÚÄÚ²âÁ¿½á¹ûÉϱ¨×î³Ù²»Äܳ¬¹ýdwTmeasInialÉϱ¨ÖÜÆÚ¡£dwTmeasInial³¬Ê±ºóÆô¶¯wTmeas£¬ÎïÀí²ãÖÜÆÚÄÚ²âÁ¿½á¹ûµÄÌáǰÉϱ¨²»Ó°ÏìÖÜÆÚµÄÆô¶¯µã¡£*/
1522 WORD wTmeas;/*Õý³£Éϱ¨ÖÜÆÚ£¬µ¥Î»MS¡£ÎïÀí²ãÖÜÆÚÄÚ²âÁ¿½á¹ûµÄÌáǰÉϱ¨²»Ó°ÏìÖÜÆÚµÄÆô¶¯µã¡£ÖÜÆÚÄÚ²âÁ¿½á¹ûÉϱ¨×î³Ù²»Äܳ¬¹ýwTmeasÉϱ¨ÖÜÆÚ*/
1523#endif
1524 WORD wCellNum;
1525 WORD wFreqNum;
1526 WORD wRefTimeDiffInd;
1527
1528 T_zTD_P_FreqMeasInfo atFreqInfo[Z_TD_P_MAX_INTER_FREQ_NUM];
1529 T_zTD_P_CellInfo atCellInfo[Z_TD_P_MAX_INTER_CELL_NUM];
1530
1531 DWORD dwMeasId;
1532 DWORD dwRssiNeed;
1533 DWORD dwRscpNeed;
1534 DWORD dwIscpNeed;
1535 DWORD dwCellSynInforNeed;
1536}T_zTD_P_CPhy_InterMeas_Req;
1537
1538
1539typedef struct{
1540 WORD wCellID;
1541 WORD wRscpFlag:1;
1542 WORD wSfnFlag:1;
1543 WORD wRssiFlag:1;
1544 WORD :13;
1545
1546 WORD wRscp;
1547 WORD wTsNum;
1548
1549 WORD awTsList[Z_TD_P_MAX_DL_TS];
1550
1551 WORD awIscp[Z_TD_P_MAX_DL_TS];
1552
1553 WORD wSfn;
1554 WORD wOff;
1555
1556 WORD wTm;
1557 WORD wRssi;
1558}T_zTD_P_UarfcnMeasRlt;
1559
1560
1561typedef struct {
1562 WORD wMsgId;
1563 WORD wRptFlg; /*0:ÖÜÆÚÉϱ¨ 1:ÌáǰÉϱ¨*/
1564
1565 WORD wFailCellNum;
1566 WORD wCellNum;
1567
1568 DWORD dwMeasId;
1569
1570 DWORD dwFailCellBitMap;
1571
1572 T_zTD_P_UarfcnMeasRlt atCellMeasRltList[Z_TD_P_MAX_INTER_CELL_NUM];
1573}T_zTD_P_CPhy_InterMeas_Ind; /**456B*//*Èç¹ûÈ¡×î´ó32¸öÐ¡Çø904B*/
1574
1575
1576typedef struct
1577{
1578 WORD wCellParam; /* Ð¡ÇøMid ID*/
1579 WORD wRscp;
1580}T_zTD_P_BlindCellRlt;
1581
1582
1583typedef struct
1584{
1585 WORD wArfcn;
1586 WORD wRssi;
1587
1588 WORD wCellNum; /* ¸ÃƵµãÏÂä²âÁ¿µÄÐ¡Çø¸öÊý */
1589 T_zTD_P_BlindCellRlt atBlindCellRlt[Z_TD_P_MAX_BLIND_INTER_CELL];
1590}T_zTD_P_BlindUarfcnRlt;
1591
1592
1593typedef struct {
1594 WORD wMsgId;
1595
1596 WORD wFreqNum;
1597 T_zTD_P_BlindUarfcnRlt atFreqRlt[Z_TD_P_MAX_BLIND_INTER_FREQ];
1598 DWORD dwMeasId;
1599 WORD wRptFlg; /*0:ÖÜÆÚÉϱ¨ 1:ÌáǰÉϱ¨*/
1600 WORD wPadding;
1601}T_zTD_P_InterBlindMeas_Ind;
1602
1603/**************************************************************************
1604 RRC<->PHY
1605 ¹¦ÄÜ: RRCºÍÎïÀí²ã¼äµÄ¼ì²âÐ¡ÇøÉϱ¨½Ó¿Ú
1606 ½á¹¹:
1607 ÎïÀí²ã±¨¸æ¼ì²âÐ¡ÇøÏûÏ¢P_DETECT_CELL_INFO_IND_EV
1608
1609 **************************************************************************/
1610typedef struct
1611{
1612 WORD wUarfcn; /*¼ì²âÐ¡ÇøµÄƵµã*/
1613 WORD wParaId;/*¼ì²âÐ¡ÇøµãµÄ²ÎÊýID*/
1614 WORD wRscp; /*¼ì²âÐ¡Çø²âÁ¿Öµ*/
1615 WORD wPadding;
1616}T_zTD_P_DetectCellInfoRlt;
1617
1618typedef struct
1619{
1620 WORD wMsgId;
1621 WORD wDetectCellNum; /* Ð¡ÇøÊýÄ¿£¬Ã»ÓÐÇ¿Ð¡ÇøÊ±Éϱ¨¼ì²âÐ¡ÇøÊýÄ¿ÊÇ0 */
1622 T_zTD_P_DetectCellInfoRlt atDetectCellInfo[Z_TD_P_MAX_DETECT_CELL_NUM]; /*ÎïÀí²ãÉϱ¨µ±Ç°×îÇ¿µÄ4Ç¿Ð¡Çø£¬ÓÉÇ¿µ½ÈõÌî³ä*/
1623}T_zTD_P_DetectCellInfo;
1624/**************************************************************************¡¢
1625 RRC<->PHY
1626 ¹¦ÄÜ:
1627 RRCºÍÎïÀí²ã¼äµÄÖÊÁ¿²âÁ¿ÅäÖýӿÚ
1628 ½á¹¹:
1629 ÖÊÁ¿²âÁ¿ÅäÖÃÏûÏ¢P_QUALITY_MEAS_REQ
1630 ÖÊÁ¿²âÁ¿½á¹ûÏûÏ¢P_QUALITY_MEAS_IND
1631 **************************************************************************/
1632typedef struct{
1633 WORD wMsgId;
1634 WORD wPadding;
1635
1636 DWORD dwMeasId;
1637
1638 WORD abTfcsId[Z_TD_P_MAX_DL_CCTRCH_NUM];
1639 WORD wCCTrchNum;
1640}T_zTD_P_QualMeas_Req;
1641
1642
1643typedef struct {
1644 WORD wTfcsId;
1645 WORD awSir[Z_TD_P_MAX_DL_TS];
1646}T_zTD_P_CCTrchSirMeasRlt; /*5Word*/
1647
1648typedef struct {
1649 WORD wMsgId;
1650 WORD wPadding;
1651
1652 DWORD dwMeasId;
1653
1654 T_zTD_P_CCTrchSirMeasRlt atCctrchMeasList[Z_TD_P_MAX_DL_CCTRCH_NUM];
1655 WORD wCctrchNum;
1656}T_zTD_P_CPhy_QualMeas_Ind;
1657
1658
1659/**************************************************************************
1660 RRC<->PHY
1661 ¹¦ÄÜ:
1662 RRCºÍÎïÀí²ã¼ûµÄÄÚ²¿²âÁ¿ÅäÖýӿÚ
1663 ½á¹¹:
1664 UEÄÚ²¿²âÁ¿ÅäÖÃÏûÏ¢P_UE_INTERNAL_MEAS_REQ
1665 UEÄÚ²¿²âÁ¿½á¹ûÏûÏ¢P_UE_INTERNAL_MEAS_IND
1666 **************************************************************************/
1667typedef struct {
1668 WORD wMsgId;
1669 WORD wPadding;
1670
1671 DWORD dwMeasId;
1672 WORD wRepInterval;
1673 WORD wTxPowerNeed:1;
1674 WORD wTadvNeed:1;
1675 WORD wRssiNeed:1;
1676 WORD :13;
1677}T_zTD_P_CPhy_UeIntMeas_Req;
1678
1679
1680typedef struct {
1681 WORD wMsgId;
1682
1683 WORD wTxPowerFlag:1;
1684 WORD wTadvFlag:1;
1685 WORD wRssiFlag:1;
1686 WORD :13;
1687
1688 WORD awTxPower[Z_TD_P_MAX_UL_TS];
1689
1690 WORD wRssi;
1691 WORD wPadding;
1692
1693 WORD wTadv;
1694 WORD wSfn;
1695
1696 DWORD dwMeasId;
1697}T_zTD_P_CPhy_UeIntMeas_Ind;
1698
1699
1700
1701/**************************************************************************
1702 RRC<->PHY
1703 ¹¦ÄÜ:
1704 RRCÏòPHY·¢ËÍFMOÅäÖÃ
1705 ½á¹¹:
1706 FachMeasureOccasionÅäÖÃÏûÏ¢P_FMO_INFO_REQ
1707 **************************************************************************/
1708typedef struct {
1709 WORD wMsgId;
1710 WORD wFMONeed; /*ָʾÊÇ·ñʹÓÃFMO¡£0±íʾȡÏûFMO£¬·Ç0Öµ±íʾÅäÖÃFMO*/
1711 WORD wTtiPeriod; /*=M_REP, measurement occasion cycle length */
1712 WORD wTtiOffset; /*=C_RNTI mod M_REP*/
1713}T_zTD_P_CPhy_FMOInfo_Req;
1714
1715
1716
1717/**************************************************************************
1718 PHY->RRC
1719 ¹¦ÄÜ:
1720 PHYÏòRRC·¢Ë͵ķþÎñÐ¡Çø²âÁ¿½á¹ûÉϱ¨
1721 ½á¹¹:
1722 ²âÁ¿ÊÍ·ÅÏûÏ¢P_SERVCELL_MEAS_IND
1723 **************************************************************************/
1724
1725typedef struct{
1726 WORD wMsgId;
1727 WORD wCellID;
1728 WORD wCellPara;
1729
1730 WORD wRscpFlag:1;
1731 WORD :15;
1732
1733 WORD wRscp;
1734
1735 WORD wTsNum;
1736
1737 WORD awTsList[Z_TD_P_MAX_DL_TS];
1738 WORD awIscp[Z_TD_P_MAX_DL_TS];
1739 DWORD dwMeasId;
1740} T_zTD_P_CPhy_SerCellMeas_Ind; /*24B*/
1741
1742/**************************************************************************
1743 RRC->PHY
1744 ¹¦ÄÜ:
1745 RRCÏòPHY·¢Ë͵IJâÁ¿É¾³ýָʾ
1746 ½á¹¹:
1747 ²âÁ¿ÊÍ·ÅÏûÏ¢P_MEAS_REL_REQ
1748 **************************************************************************/
1749/*measTypes±àÂ룺ÏàÓ¦bitλÖÃ1±íʾÊÍ·Å´ËÀàÐͲâÁ¿£»·ñÔò²»ÊÍ·Å
1750 b0:ServCellMeas
1751 b1:IntraFreq
1752 b2:InterFreq
1753 b3:InterRAT
1754 b4 :TrafficMeas
1755 b5:Quantity
1756 b6:UEInteral
1757 b7:Position
1758 */
1759typedef struct{
1760 WORD wMsgId;
1761 WORD wMeasTypes;
1762}T_zTD_P_CphyMeasRel_Req;
1763
1764/**************************************************************************
1765 * ²âÁ¿È«¾ÖÊý¾ÝÀàÐͶ¨ÒåEND *
1766 **************************************************************************/
1767
1768/* RRC->PHY
1769 ½á¹¹:T_zP_TD_dl_setup_modify_req
1770 ÓÃ;:RRCÇëÇóÎïÀí²ã½¨Á¢×¨ÓÃÎïÀíÐŵÀ
1771*/
1772typedef struct{
1773 WORD wMsgId;
1774 WORD wPadding;
1775 WORD wPrimary_freq; /*primary frequency*/
1776
1777 WORD wWorking_freq; /*secondary frequency*/
1778 /*SFN-SFN ²îÖµ*/
1779 WORD wOff_flg; /*bOff_flg: 0:ÎÞЧ 1:ÓÐЧ*/
1780
1781 WORD wOff;
1782 WORD wSpecial_burst_schedule_para; /*ÌØÊâÍ»·¢µ÷¶È²ÎÊý*/
1783
1784 WORD wActive_time; /*CFN:0~255*/
1785 WORD wTiming_indication; /*Enumerated(Initialise,Maintain) 0:Initialise,1:Maintain*/
1786
1787 /*
1788 CFN-targetSFN frame offset Integer(0..255)
1789 This IE is optional if the IE "Timing indicator" is set to "Initialise" .Otherwise it is not needed
1790 */
1791 WORD wCfn_target_sfn_frame_offset;
1792 /*wTpc_step_size_flg
1793 0:wTpc_step_size not exist
1794 1:wTpc_step_size exists
1795 */
1796 WORD wTpc_step_size_flg;
1797
1798 /*Integer(1,2,3)*/
1799 WORD wTpc_step_size;
1800 /*10.3.6.16 Default DPCH Offset Value :Integer(0..7)*/
1801 WORD wDefault_dpch_offset_value;
1802
1803 /*10.3.6.9:Cell parameters id:Integer(0..127)*/
1804 WORD wCell_parameters_id;
1805 /*N312,N313,N315*/
1806 WORD wN312;
1807
1808 WORD wN313;
1809 WORD wN315;
1810
1811 T_zTD_P_dl_cctrch_list tDl_cctrch_list;
1812}T_zTD_P_dl_setup_modify_req;
1813
1814/*
1815 PHY->RRC
1816 ½á¹¹:T_zTD_P_Dl_Rl_setup_mod_cnf
1817 ÓÃ;:ÎïÀí²ã֪ͨRRCÅäÖü¤»îʱ¼äµ½,ÎïÀí²ãÒÑ
1818 ¾­ÆôÓÃеÄÅäÖÃ,´ËʱRRCÆô¶¯T312¶¨Ê±Æ÷
1819*/
1820typedef struct{
1821 WORD wMsgId;
1822 WORD wRlt; /*0:¼¤»î³É¹¦£¬1:¼¤»îʧ°Ü*/
1823}T_zTD_P_dl_rl_setup_mod_cnf;
1824
1825/*
1826 RRC->PHY
1827 ÎïÀí²ã֪ͨRRCÅäÖü¤»îʱ¼äµ½,ÎïÀí²ãÒÑ
1828 ¾­ÆôÓÃеÄÅäÖÃ,´ËʱRRCÆô¶¯T312¶¨Ê±Æ÷
1829*/
1830typedef struct{
1831 WORD wMsgId;
1832 WORD wActive_time; /*CFN:0~255£¬256±íʾÁ¢¼´¼¤»î*/
1833}T_zTD_P_dl_dpch_rel_req;
1834
1835
1836/*
1837 PHY->RRC
1838 µ×²ãÈ·ÈÏDPCHÐŵÀÊÍ·ÅÍê±Ï
1839*/
1840typedef struct{
1841 WORD wMsgId;
1842 WORD wPadding;
1843}T_zTD_P_dpch_rel_cnf;
1844
1845
1846/*
1847 PHY->RRC
1848 ½á¹¹:T_zP_TD_in_sync_ind
1849 ÓÃ;:ÎïÀí²ãÔÚ½¨Á¢×¨ÓÃÎïÀíÐŵÀʱ,֪ͨRRCͬ²½³É¹¦
1850*/
1851typedef struct{
1852 WORD wMsgId;
1853 WORD wPadding;
1854}T_zTD_P_in_sync_ind;
1855
1856/*
1857 PHY->RRC
1858 ½á¹¹:T_zP_TD_out_sync_ind
1859 ÓÃ;:ÎïÀí²ã֪ͨRRCʧ²½
1860*/
1861typedef struct{
1862 WORD wMsgId;
1863 WORD wPadding;
1864}T_zTD_P_out_sync_ind;
1865
1866/*
1867 RRC->PHY
1868 ½á¹¹:T_zP_TD_ul_dpch_setup_modify_req
1869 ÓÃ;:RRC½¨Á¢ÉÏÐÐרÓÃÎïÀíÐŵÀ
1870*/
1871typedef struct{
1872 WORD wMsgId;
1873 WORD wTxAdv; /*dchÉÏÐÐÊý¾Ý·¢Ë͵ÄÌáǰÁ¿£¬ÒÔ֡Ϊµ¥Î»*/
1874
1875 WORD wActive_time; /*0~255; 256:ÎÞЧ*/
1876 WORD wPrimary_freq; /*ƵµãÐÅÏ¢*/
1877
1878 WORD wWorking_freq;
1879 WORD wCell_parameters_id;
1880
1881 WORD wDynamic_sf; /*¶¯Ì¬À©ÆµÒò×Ó*/
1882 /*ÌØÊâÍ»·¢Éú³ÉʱÆÚ*/
1883 WORD wSpec_burst_generation_period;/*(ȡֵ0,2,4,8,16,32,64,128,256,µ¥Î»frame;0±íʾ²»Æô¶¯UL DPCH DTX,ÆäÓàÖµ´ú±íÆô¶¯UL DPCH DTX)*/
1884 /*maximum allowed ul tx power
1885 Integer(-50..33)
1886 bMax_allowed_ul_tx_power = (x -(-50))
1887
1888 */
1889
1890 WORD wMax_allowed_ul_tx_power;
1891
1892 /*10.3.6.91 Uplink dpch power control info*/
1893 T_zTD_P_ul_dpch_power_ctrl tUl_dpch_power_ctrl_info;
1894
1895 /*10.3.6.96 Uplink Timing Advance Control*/
1896 T_zTD_P_ul_timing_advance tUplink_timing_advance_control;
1897
1898 /*ul tfcs list*/
1899 T_zTD_P_ul_cctrch_list tUl_cctrch_list;
1900}T_zTD_P_UlDpch_setup_mod_req;
1901
1902/* RRC->PHY
1903 ÓÃ; RRCÓÃÓÚÊÍ·ÅÉÏÐÐרÓÃÎïÀíÐŵÀ
1904*/
1905typedef struct{
1906 WORD wMsgId;
1907 WORD wActive_time; /*CFN:0~255£¬256±íʾÁ¢¼´¼¤»î*/
1908}T_zTD_P_ul_dpch_rel_req;
1909
1910/* PHY->RRC
1911 ½á¹¹:T_zP_TD_ul_establish_ind
1912 ÓÃ;:ÎïÀí²ã·´À¡ÉÏÐÐÁ´Â·½¨Á¢³É¹¦
1913*/
1914typedef struct{
1915 WORD wMsgId;
1916 WORD wPadding;
1917}T_zTD_P_ul_establish_ind;
1918
1919/* RRC->PHY
1920 ½á¹¹:T_zP_TD_dl_trch_reconfig_req
1921 ÓÃ;:RRCÅäÖÃÏÂÐд«Êä¸ñʽºÍ´«Êä¸ñʽ×éºÏÐÅÏ¢
1922*/
1923typedef struct{
1924 WORD wTrchId;
1925 /*Enumerated(No coding,Convolutional,Turbo)
1926 0:No coding
1927 1:Convolutional
1928 2:Turbo
1929 */
1930 WORD wTrch_type;
1931
1932 WORD wCoding_type_of_channel;
1933 /*Integer(5,10,20,40,80,dynamic)
1934 0:dynamic
1935 */
1936 WORD wTransmission_time_interval;
1937
1938 /* Integer(0,8,12,16,24) */
1939 WORD wCrc_length;
1940 /*Integer(1..hiRM) hiRM =256*/
1941 WORD wRm_attribute;
1942
1943 WORD wNo_of_dynamic_tfs;
1944}T_zTD_P_static_tfs;
1945
1946typedef struct{
1947 /*Unit is bits;rrc should compute the TB size by the rlc size*/
1948 WORD wTransport_block_size;
1949 WORD wNumber_of_transport_blocks;
1950 WORD wTfi;
1951}T_zTD_P_dynamic_tfs;
1952
1953typedef struct{
1954 WORD wCtfcH; /*CTFC¸ß16bit*/
1955 WORD wCtfcL; /*CTFCµÍ16bit*/
1956 WORD wTfci;
1957}T_zTD_P_dl_ctfc_tfc;
1958
1959
1960typedef struct{
1961 WORD wMsgId;
1962
1963 WORD wCctrchType;/* 0:CctrchDch
1964 1:CctrchFach
1965 2:CctrchPch
1966 3:CctrchCbs
1967 other value:reserved */
1968 WORD wActive_time; /*0~255; 256:ÎÞЧ*/
1969
1970 WORD wNumTrCH;
1971 WORD wNoOfTfcs;
1972
1973 /* ´ÓÓÒµ½×óBITλ¶ÔÓ¦µÄ´«ÊäÐŵÀ˳ÐòÓëatStaticTFSÏàͬ£»bitÖµ0±íʾ²»ÐèÒª½âÎö£¬1±íʾÐèÒª½âÎö */
1974 WORD wEnable_decode_bitmap;
1975
1976 /* ¸ÃÊý×éÔÚwCctrchType==0ʱÓÐЧ£¬Êý×éÔªËØ¶ÔÓ¦µÄ´«ÊäÐŵÀ˳ÐòÓëatStaticTFSÏàͬ£»
1977 Target_BLERΪ¿ÉÑ¡²ÎÊý£¬ÖµµÄ·¶Î§Îª0ÖÁ63£¬0xffff±íʾ²ÎÊý²»´æÔÚ£»ÎïÀí²ãÊÕµ½ºóÒª*£¨-0.1£©µÃµ½Êµ¼ÊÖµ */
1978 WORD awTarget_BLER[Z_TD_P_MAX_DL_TRCH_NUM];
1979 T_zTD_P_static_tfs atStaticTFS[Z_TD_P_MAX_DL_TRCH_NUM];
1980
1981 T_zTD_P_dynamic_tfs atDynamicTFS[Z_TD_P_MAX_DL_TF_NUM];
1982
1983 T_zTD_P_dl_ctfc_tfc atCtfc[Z_TD_P_MAX_DL_TFCS_NUM];
1984}T_zTD_P_dl_trch_recfg_req;
1985
1986typedef struct{
1987 DWORD dwCtfc;
1988
1989 /*Ŀǰ֧³ÖµÄ×î´óTFC¸öÊýΪ128¸ö*/
1990 WORD wTfci;
1991 /*
1992 0:ÏÔʾ֪ͨ,ÏÂÃæµÄwBeta_d¸ø³ö
1993 1:²Î¿¼·½Ê½,ÏÂÃæµÄwReference_tfc_id¸ø³ö
1994 ×¢ÊÍ£º
1995 ÅäÖô«ÊäÐŵÀµÄTFSÐÅÏ¢,ÓÃÓÚ¼ÆË㵱ij¸öTFCµÄPower
1996 Offset InformationÖеÄBetaDΪ¼ÆË㷽ʽʱ(²Î¿¼ÆäËüTFC)ÎïÀí²ãʹÓá£
1997 */
1998 WORD wBeta_d_tye:1;
1999 WORD wBeta_d:5; /*0~15*/
2000 WORD wReference_tfc_id:2; /*tfci£¬0~3*/
2001 WORD :8;
2002}T_zTD_P_ul_ctfc_tfc;
2003
2004
2005/* RRC->PHY
2006 ÓÃ;:RRCÅäÖÃÉÏÐд«Êä¸ñʽºÍ´«Êä¸ñʽ×éºÏÐÅÏ¢
2007 ½á¹¹:T_zTD_P_UlDpch_tch_recfg_req
2008*/
2009typedef struct{
2010 WORD wMsgId;
2011 WORD wActive_time; /*0~255; 256:ÎÞЧ*/
2012
2013 WORD wNumTrCH;
2014 WORD wTfcsNum;
2015
2016 T_zTD_P_static_tfs atStaticTFS[Z_TD_P_MAX_UL_TRCH_NUM];
2017
2018 T_zTD_P_dynamic_tfs atDynamicTFS[Z_TD_P_MAX_UL_TF_NUM];
2019
2020 T_zTD_P_ul_ctfc_tfc atCtfc[Z_TD_P_MAX_UL_TFCS_NUM];
2021}T_zTD_P_UlDpch_tch_recfg_req;
2022
2023
2024/*
2025 RRC->PHY
2026 ÓÃ;:RRC ÓÃÓÚÅäÖø¨¹«¹²ÎïÀíÐŵÀ
2027 ½á¹¹:T_zP_TD_add_mod_sccpch_req
2028*/
2029typedef struct{
2030 WORD wMsgId;
2031 WORD wPadding;
2032
2033 WORD wOffset;
2034 WORD wChannelisation_Code_num;
2035
2036 /*10.3.6.10 Common timeslot info*/
2037 T_zTD_P_common_ts_info tCommon_timeslot_info;
2038 /*10.3.6.37 Individual timeslot info*/
2039 T_zTD_P_individual_ts_info tIndividual_timeslot_info;
2040
2041 T_zTD_P_CHANNELISATION_CODE atChannelisation_Code[Z_TD_P_CH_CODE_NUM];
2042}T_zTD_P_add_mod_sccpch_req;
2043
2044/*
2045 RRC->PHY
2046 ÓÃ;:RRC ÓÃÓÚÊͷŹ«¹²ÐŵÀÅäÖÃ
2047 ½á¹¹:T_zTD_P_rel_sccpch_req
2048*/
2049typedef struct{
2050 WORD wMsgId;
2051 WORD wActTime;
2052}T_zTD_P_rel_sccpch_req;
2053
2054/*
2055 RRC->PHY
2056 ÓÃ;:µ×²ãÈ·ÈÏSCCPCHÐŵÀÊÍ·ÅÍê±Ï
2057 ½á¹¹:T_zTD_P_rel_sccpch_cnf
2058*/
2059typedef struct{
2060 WORD wMsgId;
2061 WORD wPadding;
2062}T_zTD_P_rel_sccpch_cnf;
2063
2064
2065
2066typedef struct{
2067 /*pich info*/
2068 /*Timeslot number Integer(0..6)*/
2069 WORD wTimeslot_number;
2070 /*25.331 10.3.6.41 Midamble shift and burst type*/
2071 T_zTD_P_mid_shift_bur_type tMidamble_shift_burst_type;
2072
2073 /*wChannelisation_code_number:ÐŵÀ»¯ÂëµÄÊýÄ¿*/
2074 T_zTD_P_CHANNELISATION_CODE atChannelisation_code[2];
2075 WORD wChannelisation_code_number;
2076 /*
2077 Enumerated((4/2),(8/2),(8/4),(16/2),(16/4),(32/2),(32/4),(64/2),(64/4))
2078
2079 (4/2):wRepetition_period_length =0,
2080 (8/2):wRepetition_period_length =1,
2081 ...and so on...
2082 */
2083 WORD wRepetition_period_length;
2084
2085 /*Ö¡Æ«ÒÆ*/
2086 WORD wOffset;
2087 /*Indicates the length of one paging indicator in bits. Default value is 4.
2088 Integer(4,8,16)
2089 */
2090 WORD wPaging_indicator_length;
2091
2092 /*²»Á¬Ðø½ÓÊÕÖÜÆÚ*/
2093 WORD wDrx_cycle_length;
2094 /*Ѱºôʱ¿Ì*/
2095 WORD wPaging_occasion;
2096
2097 /*ѰÕÒָʾÒò×Ó*/
2098 WORD wPi;
2099 /*ѰºôÏûÏ¢½ÓÊÕʱ¿Ì*/
2100 WORD wPaging_msg_rcv_occasion;
2101}T_zTD_P_pich_info;
2102/*Imsi*/
2103typedef struct{
2104 WORD wNum;
2105 WORD awList[21];
2106}T_zTD_P_ImsiGsm;
2107
2108/*URnti*/
2109typedef struct{
2110 WORD wSrncId;
2111 WORD wPadding;
2112 DWORD dwSRnti;
2113}T_zTD_P_URnti;
2114
2115/*ue id*/
2116typedef struct {
2117 WORD wUeIdValidBitmap;/*bit0..bit3ÓÐЧ£¬ÒÀ´Î·Ö±ðָʾÐÅÔªTmsiGsm¡¢PTmsiGsm¡¢ImsiGsm¡¢URntiÊÇ·ñ´æÔÚ¡£bitλΪ1±íʾ¶ÔÓ¦ÐÅÔª´æÔÚ£¬·ñÔò²»´æÔÚ*/
2118 WORD awTmsiGsm[4];
2119 WORD awPTmsiGsm[4];
2120 WORD wPadding;
2121 T_zTD_P_ImsiGsm tImsiGsm;
2122 T_zTD_P_URnti tURnti;
2123}T_zTD_P_UeId;
2124
2125/* RRC->PHY
2126 ½á¹¹:T_zP_TD_paging_req
2127 ÓÃ;:RRC ÓÃÓÚÅäÖÃѰºôÐŵÀ
2128*/
2129typedef struct{
2130 WORD wMsgId;
2131 WORD wPadding;
2132
2133 T_zTD_P_add_mod_sccpch_req tAdd_modify_sccpch_req;
2134 T_zTD_P_pich_info tPichInfo;
2135 T_zTD_P_UeId tUeIdInfo;
2136}T_zTD_P_paging_req;
2137
2138/*
2139 RRC->PHY
2140 ½á¹¹:T_stop_paging_req
2141 ÓÃ;:RRC ÓÃÓÚֹͣѰºôµÄ½ÓÊÕ
2142*/
2143typedef struct{
2144 WORD wMsgId;
2145 WORD wPadding;
2146}T_zTD_P_stop_paging_req;
2147
2148
2149/*
2150 PHY->RRC
2151 ½á¹¹:T_zTD_P_stop_paging_cnf
2152 ÓÃ;:µ×²ãÈ·ÈÏÊÍ·ÅѰºôÐŵÀÍê±Ï
2153*/
2154typedef struct{
2155 WORD wMsgId;
2156 WORD wPadding;
2157}T_zTD_P_stop_paging_cnf;
2158
2159/* RRC->PHY
2160 ½á¹¹:T_zTD_P_add_modify_cbs_req
2161 ÓÃ;:RRC ÓÃÓÚÅäÖóÐÔØCBSµÄSCCPCHÐŵÀ
2162 Ô­Óï:Z_P_ADD_MODIFY_CBS_REQ_Ev
2163*/
2164typedef struct{
2165 WORD wPrd_of_ctch_allo; /* N,1~256;other invalid */
2166 WORD wCbs_frame_off; /* K,0~255;other invalid */
2167}T_zTD_P_cbs_drx_lev1;
2168
2169typedef struct{
2170 WORD wNum;
2171 WORD awCtch_bs_list[255]; /* Òª½ÓÊÕµÄBSËùÔÚSFN */
2172}T_zTD_P_cbs_drx_lev2;
2173
2174typedef struct{
2175 WORD wMsgId;
2176
2177 WORD wSame_as_pch; /* 0:not same; 1:same */
2178 /* if same as pch, means pch and fach mux on the same sccpch */
2179 WORD wNew_decode_bitmap; /*only valid when wSame_as_pch = 1*/
2180
2181 WORD wDrx_type; /*0:°´Level1 DRX½ÓÊÕ; 1:°´Level2 DRX½ÓÊÕ*/
2182 union{
2183 T_zTD_P_cbs_drx_lev1 tLev1;
2184 T_zTD_P_cbs_drx_lev2 tLev2;
2185 }tDrx;
2186
2187 T_zTD_P_add_mod_sccpch_req tAdd_modify_sccpch_req; /*ÎÞÂÛwSame_as_pch È¡ºÎÖµ¶¼ÓÐЧ*/
2188 T_zTD_P_dl_trch_recfg_req tDl_trch_reconfig_req; /*ÎÞÂÛwSame_as_pch È¡ºÎÖµ¶¼ÓÐЧ*/
2189}T_zTD_P_add_modify_cbs_req;
2190
2191
2192/*
2193 RRC->PHY
2194 ½á¹¹:T_zTD_P_stop_cbs_req
2195 ÓÃ;:RRC ÓÃÓÚÍ£Ö¹CBSµÄ½ÓÊÕ£¬Èç¹ûfachÓëpch²»¹²ÓÃÒ»Ìõsccpch£¬°üÀ¨É¾³ýÎïÀí×ÊÔ´
2196 Ô­Óï:Z_P_STOP_CBS_REQ_Ev
2197*/
2198typedef struct{
2199 WORD wMsgId;
2200 WORD wPadding;
2201}T_zTD_P_stop_cbs_req;
2202
2203/*
2204 RRC->PHY
2205 ½á¹¹:T_zTD_P_stop_cbs_cnf
2206 ÓÃ;:µ×²ãÈ·ÈÏÊÍ·ÅCBSÐŵÀÍê±Ï
2207 Ô­Óï:Z_P_STOP_CBS_CNF_Ev
2208*/
2209typedef struct{
2210 WORD wMsgId;
2211 WORD wPadding;
2212}T_zTD_P_stop_cbs_cnf;
2213
2214#ifdef R9_SUPPORT
2215/*
2216 RRC->PHY
2217 ½á¹¹:T_hsdpa_config_req
2218 ÓÃ;:ÓÃÓÚÅäÖÃÎïÀí²ãhsdpa
2219*/
2220typedef struct{
2221 WORD wCarrier_Freq;
2222 WORD wHS_scch_num;
2223 WORD wPadding;
2224 T_zTD_P_mc_hs_scch atMc_hs_scch_configuration[Z_TD_P_MAX_HS_SCCH];
2225 T_zTD_P_hs_dpsch_midamble tHs_pdsch_midamble_configuration;
2226 T_zTD_P_hs_harq_info tHs_harq_info;
2227}T_zTD_P_hsdpa_info_list;
2228#endif
2229
2230typedef struct{
2231 WORD wMsgId;
2232 WORD wActive_time; /*0~255; 256:Á¢¼´ÆðЧ*/
2233 WORD wPrimary_freq; /*primary frequency*/
2234 WORD wWorking_freq; /*secondary frequency*/
2235 WORD wCell_parameters_id; /*Integer(0..127)*/
2236 WORD wH_rnti;
2237
2238 WORD wPower_ctrl_gap; /*HS-SICHµÄ´«Êä¼ä¸ôÃÅÏÞ£¬×ÓÖ¡¸öÊý£¬0~255*/
2239 WORD wPl_compensation_switch; /*1:HS-SICHʵ¼Ê´«Êä¼ä¸ôСÓÚÃÅÏÞʱÐè×÷·Ëð²¹³¥ 0:²»×÷·Ëð²¹³¥*/
2240#ifdef R9_SUPPORT
2241 WORD wTs0Ind;/*1£º±íÊ¾Íø²àÔÊÐí½«ÏÂÐÐHSPDSCHÓÃÓÚTs0£¬0£º±íʾ²»ÔÊÐí*/
2242 WORD wSync_para_fg;/*±êʶµ±Ç°ÊÇ·ñ×ö¹²ÏíÐŵÀµÄͬ²½*/
2243 WORD wHsscch_drx_fg; /*±êʶµ±Ç°HSSCCHÊÇ·ñÖ§³ÖDRX½ÓÊÕ£»*/
2244 WORD wHsdsch_sps_fg;/*±êʶµ±Ç°HSSCCHÊÇ·ñÖ§³ÖSPS²Ù×÷*/
2245 WORD wDefault_dpch_offset_value;/*10.3.6.16 Default DPCH Offset Value :Integer(0..7),½öµ±wSync_para_fg==1ʱÓÐЧ*/
2246 WORD wMacHdTyp;/*HSDSCH¶ÔÓ¦Mac-d flowµÄMACÍ·ÀàÐÍ£»0£º±íʾMac-hs£¬1£º±íʾMAc-ehs*/
2247 T_zTD_P_hsscch_ctrl_ch_drx tHsscch_drx_info;
2248 T_zTD_P_hsdsch_sps_info tHsdsch_sps_info;
2249 T_zTD_P_share_ch_sync_para tSync_para;
2250#endif
2251
2252#ifdef R9_SUPPORT
2253 WORD wMcNum;
2254 WORD wHsdpa_info_list_num;
2255 T_zTD_P_hsdpa_info_list atHsdpa_info_list[Z_TD_P_MAX_CARRIER];
2256#else
2257 WORD wHS_scch_num;
2258
2259 T_zTD_P_hs_scch atHs_scch_configuration[Z_TD_P_MAX_HS_SCCH];
2260 T_zTD_P_hs_dpsch_midamble tHs_pdsch_midamble_cfg;
2261 T_zTD_P_hs_harq_info tHs_harq_info;
2262#endif
2263}T_zTD_P_hsdpa_config_req;
2264
2265
2266typedef struct{
2267 WORD wMsgId;
2268 WORD wActTime;
2269}T_zTD_P_hsdpa_rel_req;
2270
2271typedef struct{
2272 WORD wMsgId;
2273 WORD wPadding;
2274}T_zTD_P_hsdpa_rel_cnf;
2275
2276
2277/*
2278 RRC->PHY
2279 ½á¹¹:T_hsupa_config_req
2280 ÓÃ;:ÓÃÓÚÅäÖÃÎïÀí²ãhsupa
2281*/
2282typedef struct{
2283 WORD wMsgId;
2284 WORD wPadding;
2285 WORD wAct_time; /*CFN:0~255*/
2286 WORD wPrimary_freq; /*primary frequency*/
2287 WORD wWorking_freq; /*secondary frequency*/
2288 WORD wCell_parameters_id; /*Integer(0..127)*/
2289 WORD wE_rnti; /*E-RNTI*/
2290 WORD wSch_tr_flg; /*0:µ÷¶ÈÎÞЧ 1:µ÷¶ÈÓÐЧ*/
2291 WORD wNon_sch_tr_flg; /*0:·Çµ÷¶ÈÎÞЧ 1:·Çµ÷¶ÈÓÐЧ*/
2292 WORD wReset_flg; /*0:not reset 1:reset*/
2293 WORD wHarq_info; /*0:¹Ì¶¨Ê¹ÓÃRV0 1:RV¿É±ä*/
2294 WORD wN_ehich; /*E-PUCHºÍE-HICHÏà¸ôµÄʱ϶Êý,4~15*/
2295 WORD wMax_allowed_ul_tx_power;/*Integer(-50..33) bMax_allowed_ul_tx_power = (x -(-50)) */
2296 WORD wPrimary_ccpch_tx_power; /* Integer(6..43)dBm */
2297#ifndef R9_SUPPORT
2298 WORD wUppch_chip_shift_flg;
2299 WORD wUppch_chip_shift;
2300#else
2301 WORD wEagch_drx_fg; /*1-Ö§³ÖEAGCHµÄDrx½ÓÊÕ£»0-²»Ö§³ÖEAGCHµÄDRX½ÓÊÕ*/
2302 WORD wEdch_sps_fg; /*1-Ö§³ÖEDCHµÄSPS²Ù×÷£»0-²»Ö§³ÖEDCHµÄSPS²Ù×÷*/
2303 T_zTD_P_eagch_ctrl_ch_drx tEagch_drx_info;
2304 T_zTD_P_edch_sps_info tEdch_sps_info;
2305 T_zTD_P_ul_timing_advance tUplink_timing_advance_control;
2306#endif
2307 T_zTD_P_epuch_pwr_info tEpuch_pwr_info; /*E-PUCH¹¦¿ØÐÅÏ¢£¬Í¬Ê±ÊÊÓÃÓÚµ÷¶ÈºÍ·Çµ÷¶È*/
2308
2309 T_zTD_P_hs_sch_tr tHs_sch_tr_info; /*½öµ±wSch_tr_flg=1ʱÓÐЧ*/
2310 T_zTD_P_hs_non_sch_tr tHs_non_sch_tr_info; /*½öµ±wNon_sch_tr_flg=1ʱÓÐЧ*/
2311}T_zTD_P_hsupa_config_req;
2312
2313/*
2314 RRC->PHY
2315 ½á¹¹:T_zTD_P_hsupa_rel_req
2316 ÓÃ;:ÓÃÓÚɾ³ýÎïÀí²ãhsupa
2317*/
2318typedef struct{
2319 WORD wMsgId;
2320 WORD wActive_time; /*0~255, 256±íʾÁ¢¼´É¾³ý*/
2321}T_zTD_P_hsupa_rel_req;
2322
2323
2324/*
2325 PHY->RRC
2326 ½á¹¹:T_zTD_P_hsupa_rel_cnf
2327 ÓÃ;:µ×²ãÈ·ÈÏÊÍ·ÅHSUPAÐŵÀÍê±Ï
2328*/
2329typedef struct{
2330 WORD wMsgId;
2331 WORD wPadding;
2332}T_zTD_P_hsupa_rel_cnf;
2333
2334
2335/*ûÓзÖÅäÏÂÐÐDPCHʱ£¬ÓôËÔ­Óï*/
2336typedef struct{
2337 WORD wMsgId;
2338 WORD wActive_time;
2339 WORD wPlcch_num;
2340 WORD wPadding;
2341 T_zTD_P_plcch_info atPlcch_info[Z_TD_P_MAX_UL_TS*2];
2342}T_zTD_P_add_modify_plcch;
2343#ifdef R9_SUPPORT
2344/******************************************************
2345 RRC£¨L1T£©->PHY
2346 ¹¦ÄÜ:
2347 ÅäÖÃL1 FACHºÍIDLE̬ϵÄÏà¹ØÔöÇ¿ÅäÖÃ: P _HSPA_PLUS_FACH_REQ_EV
2348******************************************************/
2349typedef struct{
2350 WORD wMsgId;
2351 WORD wFrequency_info;
2352 T_zTD_P_fach_dpa_info tFach_dpa_info;
2353 T_zTD_P_fach_upa_info tFach_upa_info;
2354} T_zTD_P_hspa_plus_fach_req;
2355/******************************************************
2356 RRC£¨L1T£©->PHY
2357 ¹¦ÄÜ:
2358 ÅäÖÃL1 PCH̬ϵÄÏà¹ØÔöÇ¿ÅäÖÃ: P _HSPA_PLUS_PCH_REQ_EV
2359******************************************************/
2360typedef struct{
2361 WORD wMsgId;
2362 WORD wFrequency_info;
2363 T_zTD_P_pch_dpa_info tPch_dpa_info;
2364 T_zTD_P_pich_info tPich_info;
2365} T_zTD_P_hspa_plus_pch_req;
2366/******************************************************
2367 RRC£¨L1T£©->PHY
2368 ¹¦ÄÜ:
2369 ɾ³ýL1 FACHºÍIDLE̬ϵÄÏà¹ØÔöÇ¿ÅäÖÃ: P _HSPA_PLUS_FACH_REL_REQ_EV
2370******************************************************/
2371typedef struct{
2372 WORD wMsgId;
2373 WORD wActive_time; /*0~255; 256:Á¢¼´ÆðЧ*/
2374} T_zTD_P_hspa_plus_fach_rel_req;
2375
2376/******************************************************
2377 RRC£¨L1T£©->PHY
2378 ¹¦ÄÜ:
2379 ɾ³ýL1 PCH̬ϵÄÏà¹ØÔöÇ¿ÅäÖÃ: P _HSPA_PLUS_PCH_REL_REQ_EV
2380******************************************************/
2381typedef struct{
2382 WORD wMsgId;
2383 WORD wPadding;
2384} T_zTD_P_hspa_plus_pch_rel_req;
2385/******************************************************
2386 PHY->L1T
2387 ¹¦ÄÜ:µ×²ãÈ·ÈÏɾ³ýÔöÇ¿FACHÐŵÀÍê±Ï
2388 : P _HSPA_PLUS_FACH_REL_CNF_EV
2389******************************************************/
2390typedef struct{
2391 WORD wMsgId;
2392 WORD wPadding;
2393} T_zTD_P_hspa_plus_fach_rel_cnf;
2394
2395/******************************************************
2396 PHY->L1T
2397 ¹¦ÄÜ::µ×²ãÈ·ÈÏɾ³ýÔöÇ¿PCHÐŵÀÍê±Ï
2398 P _HSPA_PLUS_PCH_REL_CNF_EV
2399******************************************************/
2400typedef struct{
2401 WORD wMsgId;
2402 WORD wPadding;
2403} T_zTD_P_hspa_plus_pch_rel_cnf;
2404/******************************************************
2405 RRC£¨L1T£©->PHY
2406 ¹¦ÄÜ:
2407 ÔÚÔöÇ¿FACH̬Ï£¬¸ÃÏûÏ¢·¢Ë͸øÎïÀí²ãÓÃÓÚ¸üÐÂרÓõÄHRNTI»òERNTI:P_EFACH_UPDATE_RNTI_REQ_EV
2408******************************************************/
2409typedef struct{
2410 WORD wMsgId;
2411 WORD wActive_time;/*0~255; 256:Á¢¼´ÆðЧ*/
2412 WORD wUpdate_type;/*1£ºÖ»¸üÐÂH-RNTI£»2£ºÖ»¸üÐÂE-RNTI£»3£º¸üÐÂH-RNTIºÍE-RNTI;*/
2413 WORD wH_rnti;/*רÓÃHRNTI,µ±wUpdate_typeΪ1»ò3ʱÓÐЧ*/
2414 WORD wE_rnti; /*רÓÃERNTI,µ±wUpdate_typeΪ2»ò3ʱÓÐЧ*/
2415 WORD wPadding;
2416}T_zTD_P_efach_update_rnti_req;
2417#endif
2418
2419/*
2420 ½á¹¹¶¨Òå˵Ã÷,´Ë½á¹¹²ÎÊýÏÈÅäÖøømac,Ïà¹Ø²ÎÊýͨ¹ýT_zCUMac_Rach_Para_Req½Ó¿ÚÅäÖøømac;
2421 macͨ¹ýT_P_RACH_PROCEDURE_REQ½Ó¿Ú½«Ïà¹Ø²ÎÊý·¢¸øÎïÀí²ã
2422*/
2423typedef struct{
2424 WORD wMsgId;
2425 /*>PRACH info*/
2426 /*´ò¿×ÏÞÖÆ,0~100*/
2427 WORD wPuncturing_limit;
2428 /*10.3.6.78a>>SNC_UL info*/
2429
2430 WORD wPadding;
2431 /*
2432 Integer(-120..-58) by step of 1
2433 wPrx_up_pch_des = x-(-120)
2434 */
2435 WORD wPrx_up_pch_des;
2436
2437 /*Integer(0,1,2,3)*/
2438 WORD wPower_ramp_step;
2439 /*Integer(1,2,4,8): Maxium numbers of SYNC_UL Transmissions in a power
2440 ramping sequence
2441 */
2442 WORD wMax_sync_ul_transmissions;
2443
2444 /*>>PRACH-FPACH*/
2445 WORD wPrach_fpach_num;
2446 T_zTD_P_prach_fpach_info tPrach_fpach_info[Z_TD_P_MAX_PRACH_FPACH];
2447
2448 /*RACH TFS*/
2449 /*Integer(10,20,40,80)*/
2450 WORD wTti;
2451 /*
2452 Enumerated(No coding,Convolutional,Turbo)
2453 0:No coding,1:Convolutional,2:Turbo
2454 */
2455 WORD wChannel_coding_type;
2456
2457 /*
2458 Integer(1..hiRM)
2459 */
2460 WORD wRate_matching_attribute;
2461 /*Integer(0,8,12,16,24)*/
2462 WORD wCrc_size;
2463
2464 /*10.3.6.59 Primary ccpch tx power
2465 Integer(6..43)dBm
2466 */
2467 WORD bPrimary_ccpch_tx_power;
2468 /*maximum allowed ul tx power
2469 Integer(-50..33)
2470 bMax_allowed_ul_tx_power = (x -(-50))
2471
2472 */
2473 WORD wMax_allowed_ul_tx_power;
2474 WORD wUppch_chip_shift;
2475}T_zTD_P_add_prach_req;
2476
2477/*==============================================================================
2478 Ô­ÓZ_P_RACH_PROCEDURE_REQ_Ev( UMAC->PHY ), Z_P_ERUCCH_PROCEDURE_REQ_Ev( UMAC->PHY )
2479 ˵Ã÷:
2480==============================================================================*/
2481typedef struct {
2482 WORD wMsg_id;
2483
2484 /*Bit string(8), the value 1 of a bit indicates the SYNC_UL code index is available*/
2485 WORD wAvailable_sync_ul_codes_indices;
2486 /*Subchannel_size_type: ȡֵ1,2,4,8
2487 1:size1, indicates that all subchannels are available
2488 2:size2,
2489 4:size4,
2490 8:size8*/
2491 WORD wSubchannel_size_type;
2492 /*corresponding the size2,size4,size8*/
2493 WORD wAvailable_subchannel_size;
2494
2495 /*wLastFlagָʾUMACµÄRACH½ÓÈë¹ý³ÌÖд˴ÎÊÇ·ñÒÑΪµÚMmax´Î£¬¼´×îºóÒ»´Î¡£
2496 0: ²»ÊÇ×îºóÒ»´Î¡£´ËʱÎïÀí²ãÓ¦¼ÌÐø»º´æµÚÒ»´ÎËùЯ´øµÄRACHÊý¾Ý£»
2497 1: ×îºóÒ»´Î£¬MAC²ãÒѾ­´ïµ½×î´óÖØ´«´ÎÊý¡£´ËʱÎïÀí²ãÐèɾ³ý»º´æµÄRACHÊý¾Ý¡£*/
2498 WORD wLastFlag;
2499 WORD wPadding;
2500
2501 T_zTD_P_add_prach_req tPrachPara;
2502}T_zTD_P_RACH_PROCEDURE_REQ;
2503/**************************************************************************
2504 * ÎÞÏß×ÊÔ´ÅäÖÃÏà¹Ø½Ó¿Ú¶¨ÒåEND *
2505 **************************************************************************/
2506
2507
2508/**************************************************************************
2509 * ˫ģGAPÏà¹Ø½Ó¿Ú *
2510 **************************************************************************/
2511#ifdef MULTI_IRAT_2963
2512/*=====================================================
2513 URRCA->TD PHY Z_P_GSM_INACT_TIME_REQ_Ev
2514 ¹¦ÄÜ: 2GÖ÷ģʽʱ£¬GSM֪ͨTDD L1SµÄgapʱ¼äÐÅÏ¢£»
2515 ½á¹¹: T_zP_gsm_inactive_time_req
2516=====================================================*/
2517typedef struct
2518{
2519 WORD wMsgId;
2520 WORD wStoreFlg;
2521
2522 DWORD dwGsmInactiveTime;
2523
2524 WORD wNumRemainingGaps;
2525 WORD wSearchPrioMode;
2526
2527 WORD wClusterType;
2528 WORD wIdleFrameOffset;
2529
2530 SHORT wGsmTimingCorrection;
2531 WORD wPadding;
2532} T_zPS_TD_P_inactive_time_req,T_zTD_P_inactive_time_req;
2533
2534/*=====================================================
2535 PHY->URRA Z_P_UMTS_TIMER_SNAPSHOT_IND_Ev
2536 ¹¦ÄÜ: L1SÉϱ¨µÄ¿ìÕÕʱ¼ä£»
2537 ½á¹¹: T_zP_umts_snapshot_ind
2538=====================================================*/
2539typedef struct
2540{
2541 WORD wMsgId;
2542 WORD wSubSfn; /*UMTS Ëø´æµÄsfn×ÓÖ¡ºÅ*/
2543
2544 WORD wChipOffset; /*UMTSËø´æÊ±ÔÚ±¾×ÓÖ¡ÄÚµÄchipÆ«ÒÆ*/
2545 WORD wPaddings;
2546} T_zTD_P_umts_snapshot_ind;
2547#endif
2548
2549/*=====================================================
2550 URRCA/URRC->PHY L1G_UMTS_IDLE_PERIOD_REPMODE_REQ_EV
2551 ¹¦ÄÜ: 3GÖ÷ģʽʱ£¬PSÅäÖÃL1SµÄgapģʽ£»
2552 ½á¹¹: T_zTD_P_umts_idle_PeriodRep_req
2553=====================================================*/
2554typedef struct
2555{
2556 WORD wMsgId;
2557 WORD wReportingMode; /*0: not reprot gap, 1:report gap*/
2558 DWORD dwGapId; /*ÎÕÊÖÐòÁкÅ*/
2559} T_zTD_P_umts_idle_PeriodRep_req;
2560
2561/*=====================================================
2562 PHY->URRCA Z_P_UMTS_INACTIVE_TIME_IND_Ev
2563 ¹¦ÄÜ: L1SÉϱ¨µÄgapʱ¼ä£»
2564 ½á¹¹: T_zP_umts_inact_time_ind
2565=====================================================*/
2566typedef struct
2567{
2568 WORD wStartChip; /*±¾gapÆðʼµã¾àÀë±¾×ÓÖ¡ÆðʼµãµÄÆ«ÒÆ£¬¼´gapÔÚ±¾×ÓÖ¡ÖеÄλÖ㬵¥Î»£ºCHIP*/
2569 WORD wLengthChip; /*±¾gapµÄ³¤¶È£¬µ¥Î»£ºCHIP*/
2570} T_zTD_P_gap_info_in_subframe;
2571
2572
2573typedef struct
2574{
2575 WORD wMsgId;
2576 WORD wStarSubtSfn; /*ÆðʼµÄsfn×ÓÖ¡ºÅ£¬·¶Î§£º0-8191*/
2577
2578 WORD wNumOfInactiveSubframe; /*³ÖÐøµÄ×ÓÖ¡³¤¶È*/
2579 WORD wNumOfGapInSubFrame; /*ÔÚÒ»¸ö×ÓÖ¡ÖÐgapµÄ¸öÊý*/
2580
2581 T_zTD_P_gap_info_in_subframe atGapInfoInSubFrame[Z_TD_P_MAX_GAP_NUM]; /*ÔÚÒ»¸ö×ÓÖ¡Öи÷gapµÄλÖÃ*/
2582 DWORD dwGapId; /*ÎÕÊÖÐòÁкÅ*/
2583} T_zTD_P_umts_inact_time_ind;
2584
2585/******************************************************
2586 RRC->PHY
2587 ¹¦ÄÜ:
2588 ЭÒéջ֪ͨÎïÀí²ãÊÍ·Å×ÊÔ´
2589 ½á¹¹:
2590 T_zTD_P_Rel_req
2591 ******************************************************/
2592typedef struct{
2593 WORD wMsgId;
2594 WORD wPadding;
2595}T_zTD_P_Rel_req;
2596
2597/******************************************************
2598 PHY->RRC
2599 ¹¦ÄÜ:
2600 ÎïÀí²ã֪ͨЭÒéÕ»ÊÍ·Å×ÊÔ´È·ÈÏ
2601 ½á¹¹:
2602 T_zTD_P_Rel_cnf
2603 ******************************************************/
2604typedef struct{
2605 WORD wMsgId;
2606 WORD wPadding;
2607}T_zTD_P_Rel_cnf;
2608
2609#ifdef R9_SUPPORT
2610/**************************************************************************
2611 L1T<->PHY
2612 ¹¦ÄÜ:
2613 1.TDD Ö÷ģʽÏÂDCH̬½«Íø²àÅäÖõÄGAPÐÅÏ¢´ø¸øÎïÀí²ã£¬Ò»·½Ãæ½âÎö³öÒìÆµµÄGAP¡£
2614 ÁíÒ»·½Ãæ±Ü¿ªÍø²à¸øÆäËûÖÆÊ½¹¤×÷µÄʱ¼äP_TD_DCH_GAP_CONFIG_REQ_EV (mac)()µ¥Î»£©
2615 ½á¹¹: T_zTD_P_MeasGapConfig_Req
2616 **************************************************************************/
2617typedef struct
2618{
2619 WORD wPatternId;
2620 WORD wActiveFlg; /*1=bActiveFlg ±íʾ¼¤»î¡£0±íʾȥ»î*/
2621 WORD wPeriod;/*GAPÄ£Ð͵ÄÖØ¸´ÖÜÆÚ£¬µ¥Î»ÊÇÎÞÏÞÖ¡£¨10ms£©*/
2622 WORD wMeasPurpose;/*1=ÒìÆµ £¬2=RAT*/
2623 WORD wOffset;/*GAPÄ£ÐÍÖØ¸´ÖÜÆÚÄÚ£¬GAPÆðʼµã.µ¥Î»ÊÇ£¨10ms£©*/
2624 WORD wLength;/* GAPÄ£ÐͳÖÐøÊ±¼ä,µ¥Î»ÊÇÎÞÏÞÖ¡£¨ms£©*/
2625 WORD wTsBitmap;/* GAPÄ£ÐÍÄÚµÄÿ¸ö×Ó֡ʱ϶ռÓÃÇé¿ö£¬±ÈÌØÎ»ÖÃ1±íʾGAPÕ¼Ó㬴ӵ͵½¸ßµÚ0±ÈÌØ±íʾʱ϶0*/
2626 WORD wPadding;
2627}T_zTD_P_umts_GapPattern;
2628
2629typedef struct
2630{
2631 WORD wMsgId;
2632 WORD wGapPatternNum;
2633 T_zTD_P_umts_GapPattern atGapPatternList[6];
2634}T_zTD_P_MeasGapConfig_Req;
2635#endif /* R9_SUPPORT */
2636
2637/**************************************************************************
2638 L1T<->PHY
2639 ¹¦ÄÜ:
2640 2. TDDΪ¸¨Ä£Ê½Ï£¬ÊÕµ½µÄGAPÅäÖÃP_IRAT_GAP_CONFIG_REQ_EV
2641 ½á¹¹: T_zTD_P_IratGapConfig_Req
2642 **************************************************************************/
2643
2644
2645#if (defined (_CHIP_ZX297502))
2646
2647typedef struct
2648{
2649 WORD wMsgId;
2650 WORD wIdleOrConnectFlg;/*TDΪ¸¨ÖÆÊ½Ê±Ö÷ÖÆÊ½µÄ״̬£¬È¡ÖµÎª0±íʾ¿ÕÏÐ̬ȡֵΪ1±íʾÁ¬½Ó̬*/
2651 WORD wOff;/*GAPÆðʼµãÆ«ÒÆ.µ¥Î»ÊÇ£¨5ms£©*/
2652 WORD wOffChip;/*GAPÆðʼµã.CHIPÆ«ÒÆ£¨chips£©,ÕæÕýµÄGAPÆðʼµãÊÇwOffset+wOffChip*/
2653 DWORD dwLength;/* GAPÄ£ÐͳÖÐøÊ±¼ä,µ¥Î»ÊÇ£¨chips£©*/
2654}T_zTD_P_IratGapConfig_Req;
2655
2656#else
2657typedef struct
2658{
2659 WORD wMsgId;
2660 WORD wIdleOrConnectFlg;/*TDΪ¸¨ÖÆÊ½Ê±Ö÷ÖÆÊ½µÄ״̬£¬È¡ÖµÎª0±íʾ¿ÕÏÐ̬ȡֵΪ1±íʾÁ¬½Ó̬*/
2661 WORD wStartSubSfn;/*GAPÆðʼµãÖ¡ºÅ*/
2662 WORD wStartOffChip;/*GAPÆðʼµã.CHIPÆ«ÒÆ£¨chips£©,ÕæÕýµÄGAPÆðʼµãÊÇwStartSubSfn+wStartOffChip*/
2663 DWORD dwLength;/* GAPÄ£ÐͳÖÐøÊ±¼ä,µ¥Î»ÊÇ£¨chips£©*/
2664}T_zTD_P_IratGapConfig_Req;
2665#endif
2666
2667/******************************************************
2668 L1T->PHY
2669 ¹¦ÄÜ:
2670 ÇëÇó ÎïÀí²ãֹͣʹÓÃGAP
2671 ÏûÏ¢¼°½á¹¹: zPS_TD_P_ABORT_IRAT_GAP_REQ_Ev
2672 T_zTD_P_ABORT_IRAT_GAP_REQ
2673******************************************************/
2674typedef struct
2675{
2676 WORD wMsgId;
2677 WORD wPadding;
2678}T_zTD_P_ABORT_IRAT_GAP_REQ;
2679
2680/******************************************************
2681 PHY->L1T
2682 ¹¦ÄÜ:
2683 ÎïÀí²ãÊÕµ½ÆäËûÖÆÊ½ÊÕ»ØGAPµÄÏûÏ¢ºó£¬²»ÔÚʹÓÃGAPµÄÈ·ÈÏ
2684 ÏûÏ¢¼°½á¹¹: zPS_TD_P_ABORT_IRAT_GAP_CNF_Ev
2685 Z_P_ABORT_IRAT_GAP_CNF
2686******************************************************/
2687typedef struct
2688{
2689 WORD wMsgId;
2690 WORD wPadding;
2691}T_zTD_P_ABORT_IRAT_GAP_CNF;
2692/*
2693 RRC->PHY
2694 ½á¹¹:T_zTD_P_Ul_phy_ch_ctrl_req
2695 ÓÃ;:ÐÞ¸ÄÉÏÐÐÎïÀíÐŵÀµÄ¿ØÖÆÐÅÏ¢
2696*/
2697typedef struct{
2698 WORD wMsgId;
2699 WORD wPadding;
2700 /*ÌØÊâÍ»·¢Éú³ÉʱÆÚ*/
2701 WORD wSpec_burst_generation_period;/*(ȡֵ0,2,4,8,16,32,64,128,256,µ¥Î»frame;0±íʾ²»Æô¶¯UL DPCH DTX,ÆäÓàÖµ´ú±íÆô¶¯UL DPCH DTX)*/
2702 WORD wUl_Sync_Step_Size;/*Integer(1..8)*/
2703 WORD wUl_Sync_Freq;/*Integer(1..8)*/
2704 WORD wPRXhs_sich;/*½öÅäÖÃHSDPAʱÓÐЧ,Integer(-120..-58);wPRXhs_sich = x-(-120);x = wPRXhs_sich - 120;*/
2705 WORD wTpc_step_size;/*½öÅäÖÃHSDPAʱÓÐЧ,Integer(1,2,3)*/
2706 WORD wUl_dpch_power_ctrl_info_flg;/*ÉÏϹ¦¿ØÐÅÏ¢µÄ±ê־λ,1´ú±íÓй¦¿ØÐÅÏ¢,0´ú±íÎÞ¹¦¿ØÐÅÏ¢*/
2707 /*Uplink dpch power control info*/
2708 T_zTD_P_ul_dpch_power_ctrl tUl_dpch_power_ctrl_info;
2709}T_zTD_P_Ul_phy_ch_ctrl_req;
2710
2711/*==============================================================================
2712 L1T/L1W->PHY
2713 ʼþ£ºP_TD_ZTPCG_REQ_EV
2714 ¹¦ÄÜ:
2715 ÐÞ¸Ä/²éѯTDÎïÀí²ãÅäÖòÎÊý¡£
2716==============================================================================*/
2717typedef struct
2718{
2719 WORD wMsgId;
2720 WORD wCmd; /* ÃüÁîºÅ£¬¶ÔÓ¦²»Í¬µÄÎïÀí²ã¹¦ÄÜ */
2721 WORD awValFg[Z_ZTPCG_VALFG_NUM]; /* ±íʾadwValÊÇ·ñ´æÔÚ£¬0±íʾ²»´æÔÚ£¬1±íʾ´æÔÚ */
2722 DWORD adwVal[Z_ZTPCG_VALFG_NUM]; /* ²ÎÊýÁÐ±í£¬ÐÞ¸Ä/¶ÁÈ¡µÄÎïÀí²ã²ÎÊý£¬²ÎÊýʵ¼Êº¬ÒåÓÉÎïÀí²ã¸ø³ö */
2723}T_zTD_P_Ztpcg_Req;
2724
2725/*==============================================================================
2726 PHY->L1T
2727 ʼþ£ºP_TD_ZTPCG_CNF_EV
2728 ¹¦ÄÜ:
2729 ÐÞ¸Ä/²éѯTDÎïÀí²ãÅäÖòÎÊýµÄÏìÓ¦ÏûÏ¢¡£
2730==============================================================================*/
2731typedef struct
2732{
2733 WORD wMsgId;
2734 WORD wCmd; /* ÃüÁîºÅ£¬¶ÔÓ¦²»Í¬µÄÎïÀí²ã¹¦ÄÜ£¬bMode=0/1¶¼ÓÐЧ */
2735 WORD wRslt; /* ±íʾÉèÖýá¹û£¬Z_TRUEÉèÖóɹ¦£¬Z_FALSEÉèÖÃʧ°Ü wCmdΪÉèÖÃÃüÁîʱÓÐЧ */
2736 WORD awValFg[Z_ZTPCG_PARAM_NUM]; /*°´ÕÕϱêºÍdwValÖÐÖµÒ»Ò»¶ÔÓ¦£¬bVal1Fg[0]±íʾdwVal[0]ÊÇ·ñ´æÔÚ,ÒÀ´ÎÀàÍÆ£¬0±íʾ²»´æÔÚ£¬1±íʾ´æÔÚ*/
2737 LONG alVal[Z_ZTPCG_PARAM_NUM]; /*²ÎÊý1/²ÎÊý2¡­£¬ÐÞ¸Ä/¶ÁÈ¡µÄÎïÀí²ã²ÎÊý£¬²ÎÊýʵ¼Êº¬ÒåÓÉÎïÀí²ã¸ø³ö*/
2738}T_zTD_P_Ztpcg_Cnf;
2739
2740#endif // / ZPS_TDPS_PHY_INTERFACE_H
2741
2742
2743