GNU 电台 | 异步 FEC 编码器/解码器环回 | 解码时出现问题?

信息处理 信道编码 格努拉迪奥
2022-02-01 19:06:09

我已经实现了一个环回流程图,旨在执行以下操作:

  1. FEC 编码(重复码)输入流in16_2.dat
  2. 将编码流存储为out16_2_fec_async_enc.dat
  3. FEC 解码编码流并将其存储为out16_2_fec_async_dec.dat

遵循实现的流程图:

在此处输入图像描述

我的期望:我希望这out16_2_fec_async_dec.dat等于in16_2.dat.

真正发生了什么: out16_2_fec_async_dec.dat是空的。我可以通过运行以下命令来确认编码数据out16_2_fec_async_enc.dat显然是正确的:

$ xxd -b in16_2.dat
00000000: 00000000 00000000 11111111 11111111 01010101 01010101  ....UU
00000006: 10101010 10101010

$ xxd -b out16_2_fec_async_enc.dat
00000000: 00000000 00000000 00000000 00000000 00000000 00000000  ......
00000006: 00000000 00000000 11111111 11111111 11111111 11111111  ......
0000000c: 11111111 11111111 11111111 11111111 00001111 00001111  ......
00000012: 00001111 00001111 00001111 00001111 00001111 00001111  ......
00000018: 11110000 11110000 11110000 11110000 11110000 11110000  ......
0000001e: 11110000 11110000                                      ..

此外,确认out16_2_fec_async_dec.dat为空:

$ xxd -b out16_2_fec_async_dec.dat

我想知道这个设置中可能缺少什么?
如果需要更多信息,请告诉我。
先感谢您!

1个回答

问题是 FEC 异步解码器期望输入是软决策,每个项目一个决策,而不是打包的 PDU。

这是一个工作示例:

在此处输入图像描述

编码器部署:

  • 包装:是
  • Rev. 开箱:是
  • 转包装:是的

重新包装位:

  • 数据包对齐:输出
  • 终结性:LSB

解码器部署:

  • 包装:是
  • 转包装:是的