![]() This code is determined by the network and informed to UE by rrc Connection Setup and Radio Bearer Setup message as follows. How UE would know which scrambling code it has to use for PRACH ? The overall flow is as follows.įor the details of UL DPCH part of scrambling code, refer to 25.213, section 4.3.2.4 Dedicated physical channels scrambling code. | | +-availableSubChannelNumbers ::= BIT STRING įirst, let's look into scrambling process of all other UL channels except PRACH. | | +-preambleScramblingCodeWordNumber ::= INTEGER (0.15) | | +-availableSignatures ::= BIT STRING | +-PRACH-SystemInformation ::= SEQUENCE +-prach-SystemInformationList ::= SEQUENCE OF SIZE(1.maxPRACH) +-primar圜CPCH-Info ::= CHOICE OPTIONAL:Omit How UE would know which scrambling code it has to use for PRACH ? That information is carried by SIB5 as follows (see the IE marked in red) The overall flow is as follows.įor the details of PRACH Preamble part of scrambling code, refer to 25.213, section 4.3.3.2 Preamble scrambling code.įor the details of PRACH message part of scrambling code, refer to 25.213, section, 4.3.2.5 PRACH message part scrambling code Here, I will just give you the diagram for each case and the 3GPP specification where you can have further details.įirst, let's look into PRACH scrambling part. Now let's look into the further details of how the scrambling process is really implemented. The two data stream will go to different reciever path by scrambling process (unscrambling process more accurately speaking). ![]() But if the two channels are using different scrambling codes even though they are using the same spreading code, the two data can be separated. If two different data stream uses the same VLSF codes, the receive cannot differentiate these two. We only have a finite number of VLSF codes which may put us in short of those codes. This set of spreading code being used in WCDMA is called VLSF (Variable Length For this separation, it uses a special set of spreading code which has the orthogonal to each member of the set. Spreading code is used to match the bit rate data into chip rate (3.84 Mcps) signal and also for separating one specific channel from another. It enables you to reuse the spreading code. The scrambling code is designed to have relatively high auto-correlation property and you can use the result of high-auto correlation to tune the synchronization timing. With short codes the implementation of cyclic processing structure is simpler.Įven though main role of the scrambling code is to separate multiple signals into the one from each transmitter, it has several additional side effect (I mean 'good side effect'). In uplink direction long codes are used for node B using Rake reciever and short codes are used for NodeB using multiuser detection or interference cancellation recievers. Then which type of scrambling code we use ?. Long scrambling code(38400 chips) derived from Gold codes and short codes (256 chips) derived from S(2) codes. ![]() There are two types of scrambling codes : long scrambling code and short scrambling code. Since the chip rate of the scrambling code is the same as the chip rate of the chanelization code scrambling does not change theĪ specific bit sequence which is used for scrambling is called 'Scrambling code'. ![]() As you see in the following diagram, "Scrambling" happens at the chip rate of the signal processing. Following illustration shows the procedure about the data processing in physical layer. Now let's look into how/where the scrambling code works. By using the scrambling code, NodeB can separate signals coming simultaneously from many different UEs and UE can separate signals coming simultaneously from many different NodeB. The answer to both of the question is same. ![]() Then how would you differentiate the incoming signals into separate NodeB at the very low level of your hardware ? You may be hearing many signals from multiple NodeBs simultaneously. Is how to figure out each user at PHY layer ? Of course you can figure out exactly which user you are dealing with at higher layer with various type of user ID (UE ID), but my question Then how would you differentiate the incoming signals into separate users at the very low level of your hardware ?. You will getting various signals from many different users (UEs) all at the same time. ![]()
0 Comments
Leave a Reply. |