[⑦5G NR]: PSS/SSS同步信号学习

在5G中,PSS(Primary Synchronization Signal) 主同步信号和SSS(Secondary Synchronization Signal)辅同步信号是用于物理层的信号,用于小区的搜索。

PSS

跟据协议38.211 7.4.2.2章节,PSS是3条长度为127的m序列,分别对应 N I D ( 2 ) N^{(2)}{ID} NID(2)等于0,1,2。序列由 d P S S ( n ) d{PSS}(n) dPSS(n)表示,生成公式如下:

C参考代码如下:

c 复制代码
#define LEN_SEQ_PSS 127
typedef bool  bit;

void init_pss_seq() {
  int8_t seq_d_pss[3][LEN_SEQ_PSS];
  bit seq_x[LEN_SEQ_PSS] = { 0 };
  bit sub_seq_x[7] = {0, 1, 1, 0, 1, 1, 1};

  for (uint i = 0; i < 7; i++) {
    seq_x[i] = sub_seq_x[i];
  } 
  
  for (uint i = 0; i < LEN_SEQ_PSS - 7; i++) {
    seq_x[i + 7] = (seq_x[i + 4] + seq_x[i]) & 0x01;
  }

  for (uint i = 0; i < LEN_SEQ_PSS; i++) {
    // 对应3个m序列
    uint m0 = (i + 43 * 0) % 127;
    uint m1 = (i + 43 * 1) % 127;
    uint m2 = (i + 43 * 2) % 127;
    
    seq_d_pss[0][i] = 1 - 2 * seq_x[m0];
    seq_d_pss[1][i] = 1 - 2 * seq_x[m1];
    seq_d_pss[2][i] = 1 - 2 * seq_x[m2];
  }
}

SSS

跟据协议38.211 7.4.2.3章节,SSS也是长度为127的m序列,并且与 N I D ( 1 ) N^{(1)}{ID} NID(1)和 N I D ( 2 ) N^{(2)}{ID} NID(2)有关。SSS总共有1008条序列,其中每一条PSS序列对应336条SSS序列,两者相组合共同确定1008个PCI(Physical Cell Identity)。序列由 d S S S ( n ) d_{SSS}(n) dSSS(n)表示,生成公式如下:

C参考代码如下:

c 复制代码
#define LEN_SEQ_SSS 127
typedef bool  bit;

void init_sss_seq(uint n_id1,
                  uint n_id2) {
                  
  uint m0 = 15 * (n_id1 / 112) + 5 * n_id2;
  uint m1 = n_id1 % 112;
  
  bit seq_x0[LEN_SEQ_SSS] = { 0 };
  bit seq_x1[LEN_SEQ_SSS] = { 0 };
  seq_x0[0] = 1;
  seq_x1[0] = 1;

  for (uint i = 0; i < LEN_SEQ_SSS - 7; i ++) {    
    seq_x0[i + 7] = (seq_x0[i + 4] + seq_x0[i]) & 0x01;
    seq_x1[i + 7] = (seq_x_[i + 1] + seq_x1[i]) & 0x01;
  }
  
  int8_t seq_d_sss[LEN_SEQ_SSS];

  for (uint i = 0; i < LEN_SEQ_SSS; i ++) {
    seq_d_sss[i] = (1 - 2 * seq_x0[(i + m0) % LEN_SEQ_SSS]) *
                   (1 - 2 * seq_x1[(i + m1) % LEN_SEQ_SSS]);
  }
}
相关推荐
繁星星繁7 小时前
C++11学习笔记
c++·笔记·学习
@小博的博客12 小时前
【Linux探索学习】第二篇Linux的基本指令(2)——开启Linux学习第二篇
linux·运维·学习
007php00714 小时前
某大厂跳动面试:计算机网络相关问题解析与总结
java·开发语言·学习·计算机网络·mysql·面试·职场和发展
知识分享小能手15 小时前
微信小程序入门学习教程,从入门到精通,微信小程序核心 API 详解与案例(13)
前端·javascript·学习·react.js·微信小程序·小程序·vue
递归不收敛15 小时前
吴恩达机器学习课程(PyTorch 适配)学习笔记:3.3 推荐系统全面解析
pytorch·学习·机器学习
又是忙碌的一天17 小时前
前端学习 JavaScript(2)
前端·javascript·学习
蒙奇D索大17 小时前
【数据结构】考研数据结构核心考点:二叉排序树(BST)全方位详解与代码实现
数据结构·笔记·学习·考研·算法·改行学it
玲娜贝儿--努力学习买大鸡腿版17 小时前
推荐算法学习笔记(十九)阿里SIM 模型
笔记·学习·推荐算法
光影少年17 小时前
Flutter生态及学习路线
学习·flutter
尤利乌斯.X17 小时前
复杂网络仿真从入门到精通:0 学习路线
网络·学习·matlab·仿真·复杂网络