This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AIF2 questions

Hi All,

          I went through 3 examples of AIF2 in pdk folders, went through AIF2 UG.After that I have few questions on working of AIF2,kindly help me. Taking case of LTE.

1. my goal is to send signal data and Fast C&M. These are to be pushed to two different queues. lets say i pushed Fast C&M first into the CTRL queue [CTRL Channel] of AIF2 and then signal data into DATA queue [one of the DATA channel]  of AIF2. now my question is how to ensure that both signal data and Fast C&M are sent synchronously. In other words [though i push Fast C&M (i am pushing 256 control words corresponding to one hyperframe) before signal data], i want to ensure that in every basic frame [within a hyperframe], first word is control and next 15 are signal data, likewise the entire hyperframe should be full without any gaps/holes [in brief,i want to ensure that Fast C&M and signal data is present in entire hyperframe].

CW signal0 signal1 signal2 signal3 signal4 signal5..............signal15 [one basic frame]

2. I have a Vendor Specific info which is just few bytes [16 bytes]. what i understand is in a hyperframe there are 256 control words are possible [i see it on 64x4 matrix on cpri spec] [plz refer CPRI Specification V4.2 (2010-09-29) page 45 --> Figure 15] and within that based on pointer p, there is differentiation [boundary/demarcation] between vendor specific and Fast C&M subchannels. assuming the byte positions in terms of the matrix is

16,17,18,19,80,81,82,83,144,145,146,147,207,208,209,210

[A]. when pushing into Tx CTRL queue of AIF2, should i need to ensure that i form 256 bytes and arrange my Vendor Specific info in following byte positions 16,17,18,19,80,81,82,83,144,145,146,147,207,208,209,210 [note in 256 bytes, 16 bytes are occupied by Vendor Specific info and rest are all zeros] and push into TX Ctrl queue of AIF2.

[B]. if i push just 16 bytes into TX CTRL QUEUE [without forming any 256 bytes], how does the Protocol encoder knows where to place the data. In other words, how to ensure/make sure that the PE puts my 16 bytes of Vendor Specific information in 

16,17,18,19,80,81,82,83,144,145,146,147,207,208,209,210 basic frame's control word position [within a given hyperframe].

3. continuing my step 2 question, assume i have both FastC&M and vendor specific info to be sent [according to 64x4 matrix in that CPRI Specification V4.2 (2010-09-29) page 45 --> Figure 15], and each i have just 16 bytes [Fast C&M 16 bytes and vendor specific info is also 16 bytes], assume i push the Fast C&M first and then vendor specific, how does the AIF2 protocol encoder puts Vendor Specific info into appropriate byte positions [16,17,18,19,80,81,82,83,144,145,146,147,207,208,209,210]. and Fast CM into appropriate byte positions [according to CPRI Specification V4.2 (2010-09-29) page 45 --> Figure 15].

4. say, if i dont have any Fast C&M data and Vendor specific data for one subframe [LTE context here], so all along, the data is output to serdes module by AIF2 without any control word. In other words, If i open up hyperlink frame, i should see zeros in all control word positions [of all 256 basic frames], please correct my understanding.

5. Assuming i have data worth of just two hyperframes, and my control word if starting from 200 basic frame within a hyperframe [200th basic frame to 255th basic frame of HYPERFRAME1 and then 0th basic frame to 30the basic frame of HYPERFRAME2], so overall i have (255-200=55) + (30-0=30) = 55+30 = 85 bytes of Control information. On the receive side, how does the descriptor in RxCtrlQ is received [in what size?], do i need to keep data length of 85 bytes in RxCtrlFdq or should i need to stick to 256 bytes of descriptor data buffer size [assuming monolithic] in RxCtrlFdq.

6. say, i sent both FastC&M and Vendor specific information [according to CPRI Specification V4.2 (2010-09-29) page 45 --> Figure 15], how does the other side equipment i.e. RRH will know that Vendor specific information is in first Ctrl word of basic frames [16,17,18,19,80,81,82,83,144,145,146,147,207,208,209,210 basic frame's control word position [within a given hyperframe].]. In other words, RRH has to pick the vendor specific information from these [16,17,18,19,80,81,82,83,144,145,146,147,207,208,209,210] basic frame's control word and Fast C&M from remaining matrix grid [according to CPRI Specification V4.2 (2010-09-29) page 45 --> Figure 15] and how does RRH have knowledge of placement of vendor specific/Fast C&M information

7. In LTE Relay Test Project example, how did you arrive at 704 bytes of Fast C&M information, how to relate it to hyperframe?

Thanks

RC Reddy

  • Hi Ti Folks,

                     Awaiting answer for the above questions.

    Thanks

    RC Reddy

  • Hi,

    Here is the answer to your questions.

    1. AIF2 doesn't support perfect synchronization between AxC and control data channel. you can briefly align on hypeframe boundary or CPRI frame boundary level but it is not guaranteed to make perfect alignment on basic frame level.

    2. I think your idea A is better than B. if you run both AxC and control data, constant stream will make better performance than sending intermitant stream. you can simply padding zero for unused portion of BW.

    3. AIF2 doesn't support CPRI4.2   it supports CPRI4.1

    4. if you do not transfer anything, NULL data will be inserted by PE. As I explained in number 2, you'd better transfer full BW from your application to avoid any performance degrade when you run both DIO and Packet mode for control words.

    5. already answered

    6. It should be promised between two devices before running. that's why you'd better have hyperframe level or 10 ms frame level map for control word and tranfer continuous stream.

    7. in the example, 704 byte is hyperframe size for Fast C&M. it can be changed based on the position of pointer P.

    Regards,

    Albert

      

  • Hi,

    I have thought about your question number 2 more and I reached a conclusion that your idea B is also possible if you don't require very correct level of synchronization with AxC data channels. you may send small size of packet intermittently (for example, every hyperframe) all empty BW will be filled with zero data or NULL delimiter if you chose NULL delimiter option.

    Albert

  • So Albert,

                       I am somehow not convinced by this answer.

    "1. AIF2 doesn't support perfect synchronization between AxC and control data channel. you can briefly align on hypeframe boundary or CPRI frame boundary level but it is not guaranteed to make perfect alignment on basic frame level."

    The reason why i am still having doubt [point 3] is

    1. If i understand correctly, an symbol of 66.6us occupies one Hyper-Frame.

    2. [1x Line Rate is assumed] Assuming the symbol is starting at time-tick of 1 us, all the Control words [256*1] present in its Control word buffer will be picked and also data IQ [256*15]will be picked which is present in its Data IQ buffer and both together will be clubbed together and sent. Meaning both Control word and data word will be present in all basic frames without any gaps/holes. Please confirm this with your designers and let me know.

    3. CPRI Spec also specifies placement of HFN,SFN,SFN in fields of 65[1+64],129[1+64+64] and 193[1+64+64+64]. If i go by your answer of Brief sync at BASIC FRAME LEVEL.[RRH will see the fields 65,129,193 and picks the HFN,SFN,SFN]

    lets take this example

    i push to CW tx queue, assume AIF2 picks the control words [256] right away , [In other words, a pushed Control word is misaligned on basic frame level/cpri frame boundary can spread itself in two HyperFrames], in that case it will be difficult to pick HFN,SFN,SFN from cw positions {64,129,193} in Hyperframe number N+1. Also inserting a diagram for the same.

    If you look at the above diagram, the Control Word 256*1 words are used midway HYPERFRAME N and remaining are used midway HYPERFRAME N+1.In that case, it will be difficult for RRH to decode HFN,SFN,SFN.


    So my understanding/confidence is that both CW data and IQ data are to picked every hyperframe and they are ALIGNED EXACTLY AT BASIC FRAME LEVEL. If i go by your statement, a brief alignment CAN ALSO change the position of HFN,SFN,SFN as a cw data can span over two Hyperframes.

    Albert, request you to please get someone who designed this AIF2 to speak on this more detailedly. 

    Thanks

    RC Reddy

  • "So my understanding/confidence is that both CW data and IQ data are to picked every hyperframe and they are ALIGNED EXACTLY AT BASIC FRAME LEVEL"

    [AB] Again, this is not true. for AIF2 HW, control channel and IQ channel is seperate one and don't care data timing each other. IQ channel requires correct symbol timing based on heart beat from AT but this is not applied to control channel. if you want to make synchronization with IQ data channel, you can send small packet every hyperframe boundary time, but it can not guarantee either that the SOP can be in the start of the hyper frame.

    Regards,

    Albert   

     

  • Hi Albert,

                  Agreed and Thanks to your reply, am happy, since you are stressing the point so much. Then how should i ensure that i send HFN,SFN,SFN in fields of 65[1+64],129[1+64+64] and 193[1+64+64+64].

    [RRH will see the fields 65,129,193 and picks the HFN,SFN,SFN] (Assuming perfect alignment/sychronization). 

    If mis-alignment [no synchronization] of CW v/s IQ data, how does RRH understand where to pick HFN,SFN,SFN fields from? [In other words, the HFN, SFN, SFN MAY not be available at 65[1+64],129[1+64+64] and 193[1+64+64+64] positions exactly].

    Thanks

    RC Reddy

  • Reddy,

    65, 129, 193 basic frame is used for Slow C&M and it doesn't have HFN, BFN info.

    if you are talking about sync&timing subchannel, the position will be 64, 128, 192 and those fields will be automatically filled by AIF2 TM module.

    sync&timing and L1 inband prot sub channels will be controlled by AIF2 HW, not by customer application.

    Regards,

    Albert

  • Hi Albert,

                  the positions mentioned by you [64,128 and 192 ] are correct and according to you,they are filled in/by AIF2 HW. Here is the reason why i went wrong in the position numbers [65,129 and 193] [http://www.chronos.co.uk/files/pdfs/itsf/2010/Day1/05-Timing_and_Synchronisation_Challenges_in_Wireless_infrastructure.pdf]

    1. Coming back to the original question, so at RRH, if i [assume, i captured]open a hyperframe [this is aligned to hyperframe boundary and cpri radio boundary], then i am assured that 64,128 and 192 positions will ALWAYS contain HFN,SFN and SFN.

    2. Also in other words, these three positions are also independent of what and when Control word [256 words] you pushed to the queue.

    In other words, even in case of misaligned [misaligned of CW data w.r.t to IQ data ] CW data push and aligned [alignment w.r.t to heart beat of AIF2 or radio frame boundary] IQ data [i am referring to the earlier post (in this same thread) based inserted image], i am assured that both HYPERFRAME (N) and (N+1) will contain valid and correct HFN, SFN,SFN at 64,128 and 192 positions ALWAYS.

    Thanks

    RC Reddy

  • Reddy,

    you are right. For Downlink, AIF2 HW automatically, inserts HFN and BFN into the right position every time

    for Uplink, RRH will insert HFN in the right position and AIF2 HW will detect and check it every time.

    Regards,

    Albert