永发信息网

matlab中OFDM循环前缀怎么加?

答案:3  悬赏:80  手机版
解决时间 2021-11-14 12:04
  • 提问者网友:骨子里的高雅
  • 2021-11-13 14:31
matlab中OFDM循环前缀怎么加?
最佳答案
  • 五星知识达人网友:走死在岁月里
  • 2021-11-13 15:25
循环前缀的定义是每个OFDM符号之前加,比如子载波数为200,每个子载波上12个符号,那么IFFT之后得到的是一个2400的行矩阵,这2400个符号都在里面。
按照符号加的话 ,根据FFT/IFFT 原理 ,每个符号的时域数据是200个点 , CP 是保证在有时延迟的情况下,可以取到完整的符号周期,所以就是把这200个点的后面N点放在前面就行。 举个例子, 如果第N个符号200个点, 时延是10个点,没有CP的话,取这个符号的200个的数据,将会取到上个符号(N-1)的10个点和 自己的190个点, 如果有CP 10个点,就是把自己最后的10个点 放在前面复制了一份, 将取到了自己完整周期的200个点。
200个子载波数据要做256点的IFFT 。可以在频域的两端插入56/2 个空载波,作为GP ,就是频域的隔离带,可以防止不同带宽的冲突。频域补零,相对时域是平滑,不影响你的时域实际的图形。 每一个符号就有了256个点来 IFFT。
全部回答
  • 1楼网友:痴妹与他
  • 2021-11-13 18:30
循环前缀有两种,直接填n位零或者把后面的n位放到最前面再发一次。
16QAM占4位,没载波有12个符号,一共有200*12=2400个符号,每符号占4位,共9600位数据。
你做256点IFFT,只有200个子载波,导频数最大可以取56位,这样。
  • 2楼网友:傲气稳了全场
  • 2021-11-13 16:59
按照符号加的话 ,根据FFT/IFFT 原理 ,你每个符号的时域数据是200个点 ,

CP 是保证在有时延迟的情况下,可以取到完整的符号周期,所以就是把这200个点的后面N点放在前面就行。

举个例子, 如果第N个符号200个点, 时延是10个点,没有CP的话,你取这个符号的200个的数据,将会取到上个符号(N-1)的10个点和 自己的190个点, 如果有CP 10个点,就是把自己最后的10个点 放在前面复制了一份, 那你将取到了自己完整周期的200个点。追问我们要求200个子载波,16QAM映射,做256点IFFT,那么我一共要输入多少数据?我在网上看到的是假设每个子载波12个符号,那么一共要输入200*12*4=9600个数据(0或1),但是我看同学的输入的数据点数是200*256,做16QAM映射之后填充0,做256点IFFT,他好像没考虑每个子载波上的符号数以及16QAM中每四位表示一个符号,这两种哪种是对的?
非常感谢你的帮助~~~追答我的理解是这样的
首先你200个子载波数据要做256点的IFFT 。可以在频域的两端插入56/2 个空载波,作为GP ,就是频域的隔离带,可以防止不同带宽的冲突。频域补零,相对时域是平滑,不影响你的时域实际的图形。 这样你每一个符号就有了256个点来 IFFT。
你需要的数据也就是200*12*4, 映射到频域子载波上则是256*12子载波,其中频域两端 的各28个空的,IFFT 后的时域点数为 256*12 ,然后 你需要将 单个256个符号的最后几个点复制到CP上你的数据长度为 (256+CP)*12 这个是最终的结果。如果有时域数据长度的限制,可以在时域使用降采样。
另外 如果是出的题 ,有标准答案了,记得贴上让大家看看 。。。。。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯