资源简介
5G标准下的LDPC编码C代码,支持5G标准下的多种校验矩阵H,支持码率兼容
代码片段和文件信息
#include“encode.h“
void circshift(int Zint s[] int k)
{
int*temp= (int*)malloc(sizeof(int)*Z);
for (int i = 0; i < Z; i++){
temp[i] = s[(i + k) % Z];
}
for (int i = 0; i < Z; i++){
s[i] = temp[i];
}
free(temp);
}
void readQ_base(int **Q_base int BG int i_LS int M int K int Q_baseBlockColumn)
{
FILE *fp;
if (BG == 1){
switch (i_LS){
case 1:
fp = fopen(“F:\\BG1_Q_base1.txt“ “r“);
break;
case 2:
fp = fopen(“F:\\BG1_Q_base2.txt“ “r“);
break;
case 3:
fp = fopen(“F:\\BG1_Q_base3.txt“ “r“);
break;
case 4:
fp = fopen(“F:\\BG1_Q_base4.txt“ “r“);
break;
case 5:
fp = fopen(“F:\\BG1_Q_base5.txt“ “r“);
break;
case 6:
fp = fopen(“F:\\BG1_Q_base6.txt“ “r“);
break;
case 7:
fp = fopen(“F:\\BG1_Q_base7.txt“ “r“);
break;
case 8:
fp = fopen(“F:\\BG1_Q_base8.txt“ “r“);
break;
}
}
else{
switch (i_LS){
case 1:
fp = fopen(“F:\\BG2_Q_base1.txt“ “r“);
break;
case 2:
fp = fopen(“F:\\BG2_Q_base2.txt“ “r“);
break;
case 3:
fp = fopen(“F:\\BG2_Q_base3.txt“ “r“);
break;
case 4:
fp = fopen(“F:\\BG2_Q_base4.txt“ “r“);
break;
case 5:
fp = fopen(“F:\\BG2_Q_base5.txt“ “r“);
break;
case 6:
fp = fopen(“F:\\BG2_Q_base6.txt“ “r“);
break;
case 7:
fp = fopen(“F:\\BG2_Q_base7.txt“ “r“);
break;
case 8:
fp = fopen(“F:\\BG2_Q_base8.txt“ “r“);
break;
}
}
for (int i = 0; i < M; i++){
for (int j = 0; j seBlockColumn; j++){
fscanf(fp “%d“ &Q_base[i][j]);
}
}
fclose(fp);
}
void caculateP(int Zint **P int**Q_base int**S_parallel int M int K){
for (int i = 0; i < M; i++)
for (int j = 0; j < Z; j++)
P[i][j] = 0;//initialize P
int*temp = (int*)malloc(sizeof(int)*Z);
for (int i = 0; i < M; i++)
{
for (int j = 0; j < K; j++)
{
for (int k = 0; k < BlockMaxRowWeight; k++)
{
if (Q_base[i][j * BlockMaxRowWeight + k] == 500)
{
for (int l = 0; l < Z; l++)
temp[l] = 0;
}
else
{
int cycShifCoeffi= Q_base[i][j * BlockMaxRowWeight + k];//get cycle shift coefficient in Q_base
for (int l = 0; l < Z; l++)
{
temp[l] = S_parallel[j][l];
}
circshift(Z temp cycShifCoeffi);//the corresponding cyclic shifting of the pareller source is carried out by the cyclic shift coefficient
}
for (int l = 0; l P[i][l] = P[i][l] ^ temp[l];
}
}
}
free(temp);
}
void stitchingSP(int Zint**S_parallel int**P int*C int K int M){
for (int i = 0; i {
for (int j = 0; j {
C[i*Z + j] = S_parallel[i][j];
}
}
for (int i = 0; i {
for (int j = 0; j {
C[(i + K)*Z + j] = P[i][j];
}
}
}
void encode_close(int**S_parallel int**P int**Q_base int M int K){
for (int i = 0; i < K; i++){
free(S_parallel[i]);
}
free(S_parallel);
for (int i = 0; i < M; i++){
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 61440 2017-09-21 20:57 LDPC编码C代码\Debug\ldpc_encode.exe
文件 255044 2017-09-21 20:57 LDPC编码C代码\Debug\ldpc_encode.ilk
文件 602112 2017-09-21 20:57 LDPC编码C代码\Debug\ldpc_encode.pdb
文件 60928 2017-09-21 20:03 LDPC编码C代码\Debug\Q_LDPC2.exe
文件 299140 2017-09-21 20:03 LDPC编码C代码\Debug\Q_LDPC2.ilk
文件 643072 2017-09-21 20:03 LDPC编码C代码\Debug\Q_LDPC2.pdb
文件 19134 2017-09-21 20:49 LDPC编码C代码\Q_LDPC2\Debug\encode.obj
文件 27761 2017-09-20 15:29 LDPC编码C代码\Q_LDPC2\Debug\H_Initialization.obj
文件 1816 2017-09-21 20:57 LDPC编码C代码\Q_LDPC2\Debug\ldpc_encode.tlog\cl.command.1.tlog
文件 3674 2017-09-21 20:57 LDPC编码C代码\Q_LDPC2\Debug\ldpc_encode.tlog\CL.read.1.tlog
文件 1542 2017-09-21 20:57 LDPC编码C代码\Q_LDPC2\Debug\ldpc_encode.tlog\CL.write.1.tlog
文件 154 2017-09-21 20:57 LDPC编码C代码\Q_LDPC2\Debug\ldpc_encode.tlog\ldpc_encode.lastbuildstate
文件 1194 2017-09-21 20:57 LDPC编码C代码\Q_LDPC2\Debug\ldpc_encode.tlog\li
文件 2538 2017-09-21 20:57 LDPC编码C代码\Q_LDPC2\Debug\ldpc_encode.tlog\li
文件 442 2017-09-21 20:57 LDPC编码C代码\Q_LDPC2\Debug\ldpc_encode.tlog\li
文件 7210 2017-09-21 20:57 LDPC编码C代码\Q_LDPC2\Debug\main.obj
文件 1623 2017-09-21 20:57 LDPC编码C代码\Q_LDPC2\Debug\Q_LDPC2.log
文件 5512 2017-09-21 20:03 LDPC编码C代码\Q_LDPC2\Debug\Q_LDPC2.tlog\cl.command.1.tlog
文件 4592 2017-09-21 20:03 LDPC编码C代码\Q_LDPC2\Debug\Q_LDPC2.tlog\CL.read.1.tlog
文件 3040 2017-09-21 20:03 LDPC编码C代码\Q_LDPC2\Debug\Q_LDPC2.tlog\CL.write.1.tlog
文件 3346 2017-09-21 20:03 LDPC编码C代码\Q_LDPC2\Debug\Q_LDPC2.tlog\li
文件 2866 2017-09-21 20:03 LDPC编码C代码\Q_LDPC2\Debug\Q_LDPC2.tlog\li
文件 754 2017-09-21 20:03 LDPC编码C代码\Q_LDPC2\Debug\Q_LDPC2.tlog\li
文件 182 2017-09-21 20:03 LDPC编码C代码\Q_LDPC2\Debug\Q_LDPC2.tlog\Q_LDPC2.lastbuildstate
文件 29007 2017-09-21 20:09 LDPC编码C代码\Q_LDPC2\Debug\test.obj
文件 101376 2017-09-21 20:57 LDPC编码C代码\Q_LDPC2\Debug\vc120.idb
文件 77824 2017-09-21 20:57 LDPC编码C代码\Q_LDPC2\Debug\vc120.pdb
文件 4379 2017-09-21 20:48 LDPC编码C代码\Q_LDPC2\encode.c
文件 425 2017-09-21 20:06 LDPC编码C代码\Q_LDPC2\encode.h
文件 2037 2017-09-18 10:06 LDPC编码C代码\Q_LDPC2\H_Initialization.c
............此处省略20个文件信息
- 上一篇:VMware虚拟机安装和封装系统学习
- 下一篇:图像融合小波变换
相关资源
- SCMA学习代码
- 论文研究-一种新型的LDPC译码器设计
- 论文研究-一种用于无人机的改进RC-
- 基于IEEE802.16e标准的LDPC编码器设计与
- 5G:非正交多址技术(NOMA)的性能优
- 5G 毫米波频谱规划建议白皮书
- 35GHzVCO研制
- LDPC编译码
- 网络工程师-25G视频教程cisco教程
- 多进制LDPC码改进算法研究
- ldpc码源代码
- ldpc完整的系统编译仿真
- 全套cisco系统ISO 3.85G 涵盖全部
- MVC4入门经典视频2.5G60节课
- LDPC仿真曲线.zip
- 基于代数构造QC-LDPC码
- 5G大规模天线Massive MIMO技术介绍1-GTI
- 5G网络构架图
- 信道编码论文
- 基于LDPC码和物理层网络编码的联合信
- 38.304中文版
- 通信专业外语小论文,关于5G的
- 弯曲线单极子天线2.45GHzHFSS仿真设计
- LDPC BP译码程序
- LDPC码在BPSK调制下的通过AWGN 信道下的
- 2.45GHz贴片天线
- LDPC源代码
- zw_readhere-10496792-5G入门指南.zip
- LDPC 编码,随机生成 H 矩阵,LLR-BP算法
- 一种适于实时语音纠错编码的LDPC码
评论
共有 条评论