仿真TCHF96信道要点.docx
- 文档编号:11530046
- 上传时间:2023-03-18
- 格式:DOCX
- 页数:23
- 大小:68.37KB
仿真TCHF96信道要点.docx
《仿真TCHF96信道要点.docx》由会员分享,可在线阅读,更多相关《仿真TCHF96信道要点.docx(23页珍藏版)》请在冰豆网上搜索。
仿真TCHF96信道要点
实验目的:
1、了解移动信道传播环境,及TCH/F9.6信道的技术标准
2、掌握TCH/F9.6信道的外编码、卷积码、交织器的基本原理
3、仿真TCH/F9.6信道各模块,检验与测试它们的性能
4、对TCH/F9.6信道的纠错性能进行仿真及分析
5、依据GSM05.03建议,在高斯干扰和突发干扰下,对TCH/F9.6信道作信噪误码性能的仿真
设计内容:
1、了解移动通信发展、移动信道环境、GSM信道编码标准;
2、理解分组码、卷积码、交织器的基本原理;
3、根据技术标准,编写各模块的程序代码,并作状态检验和性能测试;
4、连接各模块,分别在高斯、突发等信道下,仿真分析该信道的纠错性能;
5、对某重点内容进行比较深入的仿真分析;
6、写出有原理和设计、检验和结果、结果分析、重点内容、符合规范的设计报告。
仿真任务:
1、高斯干扰的原始误码特性
2、卷积码编译码改善后的误码特性
3、加入突发干扰的原始误码特性
4、交织编码改善后的误码特性
5、一级和二级的误比特率
6、整个系统的性能
基本原理及设计概述:
1、GSM信道类型
全速率话音业务信道TCH/FS
话音信道半速率话音业务信道TCH/HS
业务信道
9.6Kbit/s全速率数据业务信道TCH/F9.6
4.8Kbit/s全速率数据业务信道TCH/F4.8
数据信道4.8Kbit/s半速率数据业务信道TCH/H4.8
≤2.4Kbit/s全速率数据业务信道TCH/F2.4
≤2.4Kbit/s半速率数据业务信道TCH/H2.4
频率纠错信道FCCH
广播信道同步信道SCH
广播控制信道BCCH
寻呼信道PCH
控制信道公共控制信道随机接入信道RACH
准予接入信道AGCH
独立专用控制信道SDCCH
专用控制信道慢速相关控制信道SACCH
快速相关控制信道FACCH
2、各类信道编码和交织标准简表
信道和传输类型
外编码(分组码)
内编码(卷积码)
交织度
码型
信息+奇偶校验位+尾比特
码型
每编码块中的比特数
TCH
TCH/FS(260)
1类
2类
截短循环码
(53,50,2)
182+3+4
78+0+0
卷积码(码率1/2)
456
(378)
(78)
8
TCH/F9.6(60)
TCH/F4.8(60)
TCH/H4.8
TCH/F2.4(36)
TCH/F2.4
4×60+0+4
60+0+16
4×60+0+4
2×36+0+4
2×36+0+4
凿孔卷积码(1/2)
卷积码(1/3)
凿孔卷积码(1/2)
卷积码(1/6)
卷积码(1/3)
244/456
228*2
244/456
456
228*2
19
19
19
8
19
CCH
FACCH(184)
SACCHSDCCHBCCH
ACCHPCH(184)
RACH(8)
SCH(25)
法尔码
(224,184)
184+40+4
184+40+4
184+40+4
8+6+4
25+10+4
卷积码(1/2)
456
456
456
36
78
8
4
4
1
1
截短循环码
(14,8)(35,25)
3、信道编码
①循环码:
一个
线性分组码,如果每个码字经任意循环移位之后仍然在码字的集合中,那么就称此码是一个循环码。
循环码是线性分组码中最主要,最有用的一类,目前对他的研究和应用也最多。
它的特点是:
首先,它可以用线性反馈移位寄存器很容易的实现其编码和伴随式计算,其次由于循环码有许多固有的代数结构,从而可以找到各种简单实用的译码方法。
②卷积码:
非分组的卷积码的编码器也是在任一段规定时间内产生n个码元,但它不仅取决于这段时间中的k个信息位,还取决于前
段规定时间内的信息位
③交织:
交织器在发端,它将分组长度L的信息序列通过交织器重排,在收端通过解交织器恢复原序列,使信道中突发错误变为无记忆随机独立差错。
主要思想是尽可能把编码后的数据块分散到多个突发序列中,而又不至引入过大的延时。
对于不同的信道类型,交织的深度各不一样。
交织编码是一种信道改造技术,
突发差错的独立差错的随
有记忆信道机无记忆信道
4、卷积码原理
卷积码是一种有记忆的编码,在任意给定的时间单元处,编码器的n个输出不仅与此时间单元的k个输入有关,而且也与前m个输入有关。
通常,卷积码表示为:
(n,k,m)。
描述卷积码的基本数学模型是离散卷积。
设编码器的两个冲击响应为g
(1)和g
(2),因为编码器有m个时间单位的存储,所以冲击响应至多持续m+1个时间单位,即g(i)=(g0(i),g1(i),g2(i),…,gm(i))i=1,2。
序列u=(u0,u1,u2,…)每次进入编码器1比特,编码器的输出v
(1)=(v0
(1),v1
(1),v2
(1),…)和v
(2)=(v0
(2),v1
(2),v2
(2),…)可以作为u与g
(1)和g
(2) 的卷积结果,即
则输出序列为v=(v0
(1),v0
(2),v1
(1),v1
(2),v2
(1),v2
(2),…)。
将外编码得到的189比特进行码率为1/2的(2,1,4)卷积编码,
编码电路如下:
(2,1,4)卷积码编码器
卷积码输出378比特,再将2级的78比特加于其后,得到内编码输出
卷积码的性能分析
纠错编码中码距与纠错能力有密切的关系,通常以最大的最小距离作为纠错能力的度量。
卷积码常用的距离有两种:
最小距dmin和自由距dfree。
卷积码中长度为nN(N为约束长度)的编码序列之间的最小汉明距称为最小距dmin。
任意长编码序列之间的最小汉明距称为自由距dfree。
由于卷积码并不划分为码字,故以自由距作为纠错能力的度量更为合理。
求dfree必须对任意长度的路径加以考察。
但由于dfree有限,且某一路径的汉明重量在其与全0路径汇聚后已停止增长,于是与dfree对应的路径必然最终汇聚到全0路径上。
因此dfree可从由全0序列出发再回到全0序列的所有路径中求得。
Viterbi译码算法
1967年维特比提出了一种概率译码的方法,它是一种最大似然译码。
在BSC信道情况下,最大似然译码就是最小距离译码。
对(n,k,m)码而言,编码器的可能状态数目为个,进入每个状态的分支数为个,从每个状态输出的分支数也是个,若输入信息序列为k(L+m)个(L为信息组的长度,最后m个信息组为全零),则篱笆图上共有条路径,他们对应了不同的信息序列。
译码器接收到R序列后,按最大似然法则力图寻找编码器在篱笆图上原来走过的路径,也就是寻找具有最大度量的路径。
为此,译码器必须计算
max[M(R/)],j=1,2,…
这里表示各种码字。
对于BSC信道,就是寻找与R有最小汗明距离的路径,即计算和寻找
min[d(R,)]
最大似然译码方法只是给我们提供了一个译码准则,实现起来有一定的困难,因为它是考虑了长度为(L+m)n的接收序列来译码的,这样的序列可能有条。
若实际接收序列中,L=50,k=2,则可能的路径有条,显然,译码器每接收一个序列R,就要计算约个似然函数才能做出译码判决,若kL再大一些,译码器按最大似然译码准则译码将是困难的。
维特比针对着一实际困难,提出了一种算法,就是维特比算法。
按照这个算法,译码器不是在篱笆图上一次就计算和比较条路径,而是接收一段,就计算、比较一段,从而在每个状态时,选择进入该状态的最可能的分支。
也就是说,维特比算法的基本思想是将该序列R与篱笆图上的路径逐分支的比较,比较的长度一般取(5~6)mn,然后留下与R距离最小的路径,成为幸存路径,而去掉其余可能的路径,并且将这些幸存路径逐分支的延长并存储起来,幸存路径的数目等于状态数,所以幸存路径的数目为。
综上所述,维特比算法并不是在篱笆图上一次比较所有可能的2L条路径,而是接收一段,计算、比较一段,选择一段最可能的分支,从而达到整个码序列是一个有最大似然函数的序列。
维特比算法的步骤
(1)在第j(j=m)个时刻以前,译码器计算所有长度的长为m个分支的部分路径值,对进入个状态的每一条部分路径都保留。
(2)第m个时刻开始,对进入每一个状态的部分路径进行计算,这样的路径有条,挑选具有最大部分路径值的部分路径为幸存路径,删去进入该状态的其他路径,然后,幸存路径向前延长一个分支。
(3)重复第二步的计算、比较和判决的过程,若输入接收序列长为(L+m)k,其中,后m段是人为加入的全零段,则译码一直进行到第(L+m)个时刻为止。
否则一直继续到所有接收序列进入译码器为止。
(4)若进入某个状态的部分路径中,有两条的部分路径值相等,则可任选一条作为幸存路径。
网格图中有个状态,在进行维特比译码时,我们要计算每个状态的部分路径值,然后比较,选择。
所以如果m很大的话,状态数将会成指数增长,计算量也会变大,所以维特比译码时,其m不能选得太大。
截短的维特比译码
由于在我们的系统中要求传送的是连续比特流信号,因此要进行截短的维特比译码。
由维特比算法译码过程不难明白,维特比译码器应有下述特点:
(1)(n,k,m)卷积码编码器共有个状态,因此维特比译码器应有相同数目的状态发生器,并且对每一状态必须有一个路径寄存器以存储路径或其信息序列,以及一个存储距离度量值的寄存器。
(2)每一路径寄存器存储路径的长度是nL。
若L很大,则译码器的存储量太大而难以实用。
实验证明,达到一定的译码深度后,所有路径寄存器前面的内容已完全重合,故路径寄存器不必存储L长度的码序列,而只需要存储< 也就是当译码器接收并处理完第个码段后,译码器中的路径寄存器已全部充满,当开始处理第+1个码段时,必须对所有路径寄存器中的第一段信息元判决并输出。 这种不等处理完所有L段码序列,译码器就开始进行判决输出的译码方法称为维特比译码的截短译码。 称为译码深度。 其性能可能稍差,但如果足够大,则对译码错误概率影响很小。 一般情况下选=(510)m就够了。 采用截短译码的判决方法如下: (1)任选一条幸存路径的寄存器,把它的第一段信息元作为译码器输出。 (2)在译码所有路径寄存器中,选取具有最大路径度量的寄存器,把它的第一段信息元作为器输出。 (3)对路径的度量值定一门限值,当某一路径的度量超过该值,就输出此路径的第一段信息元。 这三种方法是等价的,我们所采用的是第一种方法,因其简单易实现。 软判决维特比译码 上述硬判决维特比译码适用于BSC信道。 为了充分利用信道输出信号的有关信息,提高译码可靠性,往往把信道所输出的信号进行Q(>2)电平量化,然后再输入维特比译码器。 这种译码器使用于DMC(离散多进制)信道,在DMC信道中进行最大似然译码,就是根据接收序列R,译码器在篱笆图上寻找具有最大似然函数值(或度量值)的路径。 实践证明,软判译码器并不比硬判译码器复杂,但性能却要好,因而实用上更多采用的是软判决维特比译码器。 软判决维特比译码是在硬判决的基础上得来的。 将信道中的信号进行电平量化,这样信道输出的信号不在只是0、1信号,我们取Q=4。 硬判决的时候,我们以零为中介,将信号量化0、1信号,软判决以-0.5、0、0.5为中介,分为4个电平,在译码时我们仍然用二进制表示这4个电平,即小于-0.5的,信号为00、接入-0.5和0之间的,信号量化为01,依次类推,即可将信道输出信号量化。 在硬判决时,我们是两两接受,比较,判别。 软判决时,由于原来的一个电平现在变成了两个电平(Q=4),所以现在应该是每4个接受,比较,判别。 这里存在一个问题,就是现在信道中的信号是能量化成4个电平,但是我们在维特比译码时,是按照篱笆图来译码的。 也就是除了考虑信道中的电平量化外,还要考虑卷积码输出的结果该怎么样量化。 一种方法就是根据信道的特性,算出信号转移概率,根据这个概率得到一个值,如果转移到某个电平的概率大,那么这个值就取大,相反亦然,这样判决时就可以根据对应与每个电平的概率值的大小来判决,这也是一种最大似然译码,这种方法比较复杂,必须先知道信道的特性即转移概率;另一种方法比较简便,就是采用极端方法,即将硬判决时的0极化为00,1极化为11,这样如果硬判决时卷积码编码器输出是01,现在软判决就应该是0011,依次类推,这样的结果是一种近似结果,但算法简单,工程上一般采用这种方法。 维特比译码软判决译码函数原形和硬判决一样,只不过将一些参数改了,例如卷积码编码器的输出、译码深度等。 其他的比较、判别算法都一样。 本文只仿真硬判决译码。 5、交织原理 交织器在发端,它将分组长度L的信息序列通过交织器重排,在收端通过解交织器恢复原序列,以求使信道中突发错误变为无记忆随机独立差错。 交织编码是一种信道改造技术,它通过信号设计将一个原来属于突发差错的有记忆信道改造为基本上是独立差错的随机无记忆信道。 交织深度为8的交织码: 首先将内编码得到的456比特按照重排表格重排后分成8个子块,每个子块57比特,再将这8个子块分散到8个TDMA帧上,每帧114比特信息位。 其中,前4个子块228比特分散到前四帧的偶数位,后4个子块分散到后4帧的奇数位。 由此可以看出交织是在两块数据之间进行的,交织深度为8,重排交织规则为: i(B,j)=c(n,k)k=0,1,…,455 n=0,1,…,N,N+1,… B=B0+4n+(kmod8) j=2[(49k)mod57]+[(kmod8)div8] 简化之得到: D(x,y)=(57x+64y)mod456 x=0,11,…,7,表示每块456比特被分成的子块序号 y=0,1,…,56,表示子块中比特序号 两步法: 将内编码得到的456比特,先按式D(x,y)=(57x+64y)mod456,x=0,…,7y=0,…,56重排后分成8个子块,再将这8个子块分别加在8个TDMA帧上。 360bits/20ms=13kb/s Class1aClass1bClassa2 5031324 卷积码r=1/2k=5 C(n,k): 37878 重排公式D(x,y)=(57x+64y)mod456 D(x,y): 4567012345670123 114114114114114114114114 i(B,j): 仿真设计: 1、设计的三个步骤 ①用分组码进行外编码,建立由“信息比特+奇偶校验比特”构成的码字。 然后在其后加若干比特“0”作为尾比特 ②用卷积码进行内编码,将上面的比特用卷积码编码,建立“编码比特” ③采用重排和交织技术将衰落引起长突发错误改造为独立错误信道 2、GSM信道编译码方框图 信道 3、测试系统性能工作流程图 输入数据帧数n 开始 计算高斯干扰理论误码率 计数器置1(帧数) 计算无编码时系统对高斯干扰误码率 计算有编码时系统对高斯干扰总的误码率 计算平均误码率 误码率累加 计数器加1 输出误码率,绘曲线 计数器<=n? N Y 4、系统搭建 信道 5、整体及各分模块设计 ①整体设计: 将话音编码器输出的话音数据系列逐帧进行信道编码,数据信号一帧总共260比特,前182比特称1级,后78比特称为2级,外编码采用分组编码,形成“信息+校验位+尾比特”的分组编码输出。 其中,尾比特为4位全为零值,其作用是使卷积码编码器的状态回到“0”,以方便Viterbi译码,此时一数据块为189比特,该数据块后用码速率为1/2,卷积编码器进行差错保护编码,产生一个378比特的序列再将2级的78比特加于其后,产生一个456比特的序列,接着对该序列按照交织度为8进行重排与交织,然后将编码信号进过高斯(或加入突发干扰)信道,然后进行相应的去交织反重排,内译码和外译码,最后得到译码信号,完成整个信道系统的仿真 ②外编码模块: 将1级的前50比特送入循环码编码器,进行(53,50,2)截短循环码编码 重排+尾比特 偶数信息比特在前 u(k)=d(2k)、k=0,1,…,90 奇偶校验比特居中 u(91+k)=p(k),k=0,1,2%调换顺序 奇数信息比特在后 u(184-k)=d(2k+1), 再加4比特0作为尾比特, u(k)=0,k=185,186,187,188;%加尾比特 ③内编码模块: 卷积码输出378比特,再将2级的78比特加于其后,得内编码输出: {C(0),C (1),…,C(455)} ④交织模块: 将456比特,先按式D(x,y)=(57x+64y)mod456,x=0,…,7,y=0,…,56,重排后分成8个子块, 再将这8个子块分别加在8个TDMA帧上。 每帧114bit信息位,其中前4个子块分散到前4帧的偶数位,后4个子块分散到后4帧的奇数位。 重排交织规则(交织深度位8) i(B,j)=C(n,k); B=4n+(kmod8); j=2(49kmod57)+((kmod8)/8); 模块及其性能测试: 1、外编码和外译码模块: 检查外编码及外译码的自环的模二加是否为0,其流程图为下: 模二加 运行结果为: ok 由运行结果可知外编码模二自环和为0,输入序列与编译输出序列相同,即外编码和外译码是互逆的过程,外编译码模块无错误。 2、内编码和内译码模块: 检查内编码及内译码的自环的模二加是否为0,其流程图为下: 模二加 运行结果为: ok 由运行结果可知内编码模二自环和为0,输入序列与编译输出序列相同,即内编码和内译码是互逆的过程,内编译码模块无错误。 3、重排和交织模块: 检查交织编码自环的模二加是否为0,其流程图为下: 模二加 自环程序为: test.m 运行结果为: ok 由运行结果可知重排和交织编码模二自环和为0,输入序列与编译输出序列相同,重排和交织编码模块无错误。 4、内编码和内译码模块对信道性能的影响: 编码流程图: 开始 得到寄存器个数和编码器输出端个数 前后size(G,2)/k-1次编码补零,中部不必补零 由G和input_matrix得到输出 编码结束 维特比译码程序流程图: 开始 检查输入参数是否正确 遍历各个状态得到输入矩阵,输出矩阵和转移矩阵 开始解码,对于无尾信道,得到第i级各状态的最小差值,对于尾部信道输出得到第i级所剩余的状态数 Y 遍历第i级所有状态 N 得到未访问过的一个状态在不同输入下的输出并计算这两级之间输出所引起的汉明距 Y Y N 原路径是否最佳 更改幸存路径 得到第i+1级的所有状态的幸存路径及最小汉明距 重复上述过程得到各级的幸存路径及最小汉明距 从最佳路径中产生解码 译码结束 模型框架 高斯噪声 (1)未经过编译码: 信道 输出 输入 此模式目的为了求出原始误码率与理论误码率进行比较. 理论误码率公式: Y=Q(sqrt(2*SNR)) 其中SNR是信噪比 高斯噪声 (2)经过编译码 信道 发送 接收 内编码 内译码 此模式目的是为了计算在高斯干扰下加入编译码改善后的误码率,再与第一个模式中原始误码率进行比较,反映出加入编译码后不同信躁比下的误码率的改善程度。 运行结果分析: 信噪比为-4~6DB对应的误码率如下: 信噪比 原始误码率(1.0e-003) 改善误码率 -4 0.1859 0.3115 -3 0.1573 0.2392 -2 0.1308 0.1627 -1 0.1027 0.0759 0 0.0785 0.0291 1 0.0561 0.0066 2 0.0361 0.0014 3 0.0224 0.0002 4 0.0127 0 5 0.0058 0 6 0.0021 0 (对比曲线如表格下图所示)。 卷积码性能测试: 测试卷积码在-4DB~6DB范围内高斯噪声干扰信道中的抗干扰性能,并与未编码直接加高斯噪声的误码率曲线进行比较. 绿线为改善的误码率,蓝线为理论误码率,红线为未编码误码率 由仿真可以测试结果数据和曲线看出: 1、由结果曲线可以理论误码率和原始误码率曲线几乎重合了,说明原始误码率和理论误码率符合得较好。 2、在相同信噪比(图中为信噪比大于0DB)的情况下相对于没有经过编码直接通过高斯信道的信号来说,经过卷积编码后通过高斯信道的误码率低得多,由此可知,卷积编码具有很较强的纠错独立随机错误的能力,改善了系统的抗噪声性能。 3、随着信噪比从-4~6DB的增大,误码率逐渐变得低,当信噪比从4dB开始,经过卷积编码后通过高斯信道后,误码率已经变为0(或者很接近0已经小于分辨率)了。 说明在干扰误码不是很严重的情况下,卷积能完全纠错,具有较好的性能。 5、重排与交织模块对信道性能的影响 编码流程图: 结束 加噪声测试 交织码本身不纠错,但它可以将突发差错转化为随机差错,故本模块主要和内编码模块结合测试其对高斯干扰和突发差错的纠错能力. 设计如下: 高斯噪声或突发噪声 输入 信道 输出 高斯噪声或突发噪声 发送 接收 译码 编码 信道 运行结果及分析: 数据如下: (其中N=100,N_Interval=80,N_Length=5) SNR(dB)原始误码率改善后误码率 SNR(dB) 原始误码率 改善后误码率 -4 0.3376 0.3765 -2 0.2026 0.2745 0 0.0937 0.1454 2 0.0538 0.0416 4 0.0492 0.0068 6 0.0440 0.0027 8 0.0458 0.0024 10 0.0475 0.0040 12 0.0420 0.0012 14 0.0433 0.0025 16 0.0422 0.0030 分析: (1)信噪比低的时侯,交织改善后和原始误码率基本相同,随着信噪比增加,从3dB开始,交织改善后误码率明显下降。 (2)3dB开始,随着信噪比增加,原始误码率和经过交织改善后误码率逐渐趋于平坦,交织改善后误码率较小,稳定在0.0030左右。 全信道性能测试: 全信道系统框图如下: d(N,260)u(N,189)c(N,456)I(4N+4,114) 外编码译码 入口 出口 R_d(N,260)R_u(N,189)R_c(N,456)R_I(4N+4,114) 程序设计流程图: 结束 系统只有高斯噪声下的测试: 运行结果为: 数据如下: (其中N=100) SNR(dB) 理论误码率 一级误码率 二级误码率 -4 0.1861 0.2957 0.1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 仿真 TCHF96 信道 要点