(转)扰码Scrambling和扩频码(PN码)的区别

扰码 就是就是用一个伪随机码序列对扩频码进行相乘,对信号进行加密。上行链路物理信道加扰的作用是区分用户,下行链路加扰可以区分小区和信道。
UMTS中,码字一共有二种类型的应用,第一种称为信道化码(Channelization code,简写为CH),第二种称为扰码(Scrambling code,简写为SC)。由于在上下行链路中处理方式的不同,导致二种类型码字的作用各不一样。在下行链路(基站→移动台方向)上,基站向本小区发送信息 时,基站首先将各种用户信息分别与各自的CH进行相乘运算,之后将信号叠加,再与扰码进行相乘运算,之后在空中接口上发射。移动台侧先做解扰,然后再解出 自己的有用信息。用户信息和CH进行相乘运算时,CH就是扩频序列,通过选择CH的正交性,来区分用户信息。所以CH无论在上行还是下行链路上,它最基本 的作用就是直接扩频(Spreading),所以CH就是扩频码。经过扩频后的速率都是3.84Mchip/s,再进行扰码加密过程,扰码的速率也是恒定 的3.84Mchip/s。CH除了作为扩频码外,还可以作为物理信道的ID。在UMTS中,单个用户的业务类型,可以根据需要分配多个物理信道,理论上 2M速率的实现是通过同时占用多个物理信道来实现的,而用户正是通过识别不同的CH来获得物理信道的服务,所以CH是用来区分在下行链路上的多个物理信道 的。空中接口资源在分配时,相当于分配给用户的就是多个CH。而这种分配是由RNC来完成的动态分配。作为扰码,移动台必须首先进行解扰,然后才能获得自 己的有用信息,所以扰码的作用相当于小区的ID。对移动台来说,由于工作在相同频率,所以可以收到来自不同小区的无线信号,是一个自干扰系统,但通过扰 码,移动台只需要对驻扎小区进行解码,因为有用信息只有在本小区的专用信道上发送。在下行链路上,移动台首先要区分本小区和非本小区的信号,这个区分过程 就是通过解本小区扰码来实现的。所以系统中每小区对应一个扰码。需要强调的是cell、sector和BTS概念的不同。对于BTS来说,可以是全向站、 三扇区或六扇区定向站等,如果基站在发射方向是全向发射,从逻辑角度来说,基站的管理是一个小区(cell),1BTS=1cell,基站分配一个扰码; 如果基站在发射方向是三扇区定向发射,每个扇区(sector)就是一个小区(cell),故一个BTS需要3个扰码。所以cell的概念是OMCR上的 概念,逻辑上是执行相关算法的最小单位。而sector的构成是从射频角度上讲的。在UMTS中,一个全向的BTS,可以理解为在下行链路上是全向发射, 而上行方向则是3扇区定向接受的,采用3付天线,在发射方向三扇区发射相同的信号,相当于全向发射,而接受端是定向接受。对于相邻小区的扰码在分配时码字 的互相关性要低,正交性要好。但从网络角度来说,如果二个基站处于同时发射,到达移动台后,由于所处位置不同,在接受来自二个小区的信号时,由于传播时 延,信号的相位会有所偏差,形成干扰。也就是在同步条件下,完全正交的特性,由于传播时延而遭到破坏。
WCDMA 中利用信道码和扰码来减少多用户间干扰。此外,WCDMA 中上行用扰码区分同一小区不同的用户,用信道化码区分物理数据信道和控 制信道;下行用信道化码区分同一小区中不同的用户,而用扰码区别不同的 小区。
 cdma系统中,伪随机序列(PN)用于数据的加扰和扩谱调制。在传送数据之前,把数据序列转化成“随机的”,类似于噪声的形式,从而实现数据加扰。接收机再用PN码把被加扰的序列恢复成原始数据序列。
需 要指出的是,如果发送数据序列经过完全随机性的加扰,接收机就无法恢复原始序列。换句话说,如果接收机知道如何恢复原始数据,发送的数据序列就不可能完全 随机化。因此,在实际cdma系统中使用的是一个足够随机的序列,一方面这个随机序列对非目标接收机是不可识别的,另一方面目标接收机能够识别并且很容易 同步的产生这个随机序列。所以把这种序列成为伪随机序列(PN)。CDMA中用到的PN序列可以分为长PN码(长码)和短PN码(短码),长PN码可用于 区分不同的用户,短PN码用于区分不同的基站。具体实现如下:  |  国内领先的通信技术论坛4N8k:L/y5E#r.n.i
   长PN码: MSCBSC 移动通信论坛:A0f:g%M7q
   不同的移动台都有一个长码生成器。其中长码状态寄存器(LCSR)保持与系统时间的同步,掩码寄存器(MR)存有只有用户可识别的码型。长码状态寄存器 (LCSR)每个脉冲周期转变一次状态。状态寄存器(LCSR)和掩码寄存器(MR)合并至加和寄存器(SUMMER),SUMMER寄存器的数字单元在 每个时钟周期内进行模2和计算,逐比特生成长码。生成的移位长码的是由用户唯一的偏制(User's Offset)码型所决定的,加扰后其他用户将无法解调此用户信息。
   cdma 系统中的短PN码由15阶移位寄存器产生的m序列,并且每个周期在PN序列的特定位置插入一个码片,从而加长了一个码片。所以修正后的短PN码周期是普通 序列长度为32767再加一个码片,也就是32768个码片。不同基站用不同时间偏置进行区分。每个偏置是64码片的整数倍,总共有 32768/64=512个可能的偏置。可用于识别512个基站,在1.2288Mcps的速率上,序列每26.66ms重复一次,即每两秒75次。
PN伪随机码前向用于区分不同基站(m序列)和加扰(长码),反向用于区分不同用户和反向物理信道(长码)
  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
RNTI(Radio Network Temporary Identifier)扰码是LTE系统中用于标识UE(User Equipment)的临时标识符。在Matlab中,可以使用PN序列生成RNTI扰码。具体实现步骤如下: 1. 生成PN序列:使用pnsequence函数生成长度为31的PN序列,例如: ``` pnseq = pnsequence('maximal', 31); ``` 其中,'maximal'表示生成最大长度的PN序列。 2. 生成RNTI扰码:将PN序列循环左移一个随机数,得到RNTI扰码,例如: ``` rnti_scrambling_identity = randi([0 1], 1, 16); rnti_mask = pnseq(1:16); rnti_sequence = xor(rnti_scrambling_identity, rnti_mask); rnti_sequence = circshift(rnti_sequence', randi([0 15]))'; % 循环左移 ``` 其中,rnti_scrambling_identity为16位随机序列,rnti_mask为PN序列的前16位,rnti_sequence为生成的RNTI扰码序列。 3. 对原始数据进行RNTI扰码:将RNTI扰码与原始数据进行异或运算,得到加扰后的数据,例如: ``` scrambled_data = xor(data, repmat(rnti_sequence, 1, length(data)/16)); ``` 其中,data为原始数据序列,repmat函数用于将RNTI扰码序列重复到与原始数据长度相同。 4. 对加扰后的数据进行解扰:接收方使用相同的RNTI扰码加扰后的数据进行异或运算,得到还原后的原始数据,例如: ``` original_data = xor(scrambled_data, repmat(rnti_sequence, 1, length(data)/16)); ``` 其中,original_data为还原后的原始数据序列。 需要注意的是,RNTI扰码只是一种保护方式,不能完全保证数据的安全性。在实际应用中,还需要结合其他加密算法和协议进行综合保护。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值