汉明码系统
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4、错码产生:错码产生专门设计用于测量汉明译码器的纠错和检错性能。输出错码与开关KWC01位置参见表4.4.3所示:
错码可以用示波器从错码指示端口TPC03监测。
汉明编码模块各测试点定义:
1、TPC01:输入数据
2、TPC02:输入时钟
3、TPC03:错码指示(无加错时,该点为低电平。)
4、TPC04:编码模块输出时钟(56KHz/BPSK/DBPSK)
汉明编译码模块实验电路功能组成框图见图4.4.4和图3.3.5所示。
汉明编码模块实验电路工作原理描述如下:
1、输入数据:汉明编码输入数据可以来自ADPCM1模块的ADPCM码字,或来自同步数据端口数据、异步端口数据、CVSD编码数据、m序列。选择ADPCM码字由工作方式选择开关SWC01中的ADPCM状态决定,当处于ADPCM状态时(插入跳线器),汉明编码器对ADPCM信号编码;否则处于非ADPCM状态时(拔除跳线器),输入编码数据来自开关KC01所设置的位置,分别为同步数据端口数据、异步端口数据、CVSD编码数据、m序列。
3、TPW03:检测错码指示
4、TPW0:同步数据输出
7、TPW07:m序列输出
8、TPW08:异步数据输出
二、
1、ZH5001通信原理综合实验系统一台
2、20MHz双踪示波器一台
3、ZH9001型误码测试仪(或GZ9001型)一台
4、频谱测量仪一台
5、TPC05:编码模块输出数据(56Kbtps/BPSK/DBPSK)
汉明译码模块实验电路工作原理描述如下:
1、输入信号选择开关:开关KW01、KW02用于选择输入信号和时钟是来自解调器信道或直接来自汉明编码模块。当KW01、KW02设置在1_2位置(CH:左端),则输入信号来自信道;开关KW01、KW02设置在2_3位置(LOOP:右端),则输入信号来自汉明编码模块。
(1)用示波器同时测量汉明编码模块内加错指示TPC03和汉明译码模块内错码检测指示输出波形TPW03的波形,观测时以TPC03同步。此时无错码。
(2)将汉明编码模块工作方式选择开关SWC01的加错开关E_MOD0接入,产生1位错码,定性观测明译码能否检测出错码,记录结果。
(3)将汉明编码模块工作方式选择开关SWC01的加错开关E_MOD1接入,产生2位错码,定性观测明译码能否检测出错码,记录结果。
(4)将汉明编码模块工作方式选择开关SWC01的加错开关E_MOD0、E_MOD1都插入,产生更多错码,测量误码率,记录结果。
五、实验报告
1、画出输入为0/1码、00/11码和1110010m序列码的汉明编码输出波形。
2、分析整理测试数据。3、分析讨论汉明编码系统的性能及应用的局限性。
图4.4.1和图4.42给出汉明编码器和译码器电原理图。
表4.4.1(7,4)汉明编码输入数据与监督码元生成表
4位信息位
a6, a5, a4, a3
3位监督码元
a2, a1, a0
4位信息位
a6, a5, a4, a3
3位监督码元
a2, a1, a0
0000
000
1000
101
0001
011
1001
(4)将汉明编码模块工作方式选择开关SWC01的加错开关E_MOD0、E_MOD1都插入,产生更多错码,定性观测明译码能否检测出错码和失步,记录结果。
5.收端错码检测能力观测和错码纠错性能测量
首先通过菜单将调制方式设置为BPSK(或DBPSK)方式;将汉明编码模块工作方式选择开关SWC01的编码使能开关插入(H_EN),ADPCM数据断开(ADPCM);将输入数据选择开关KC01设置在同步数据输入DT-SYS (最左端)。将汉明译码模块内输入信号和时钟选择开关KW01、KW02设置在LOOP位置(右端);将译码器使能开关KW03设置在工作位置0N(左端)。将误码仪RS422端口通过转换电缆与实验箱同步模块的JH02插座连接(注意插入方向:JH02插座面对实验箱左下脚为1脚;插头上有小三角符号为1脚。误码仪必须断电后连接!)。
(2)将ADPCM数据换为m序列,重复上述测量步骤,分析测量结果。
4.发端加错信号观测
将汉明编码模块工作方式选择开关SWC01的编码使能开关插入(H_EN);ADPCM数据有效(ADPCM)。将汉明译码模块内输入信号和时钟选择开关KW01、KW02设置在LOOP位置(右端),输入信号直接来自汉明编码模块;将译码器使能开关KW03设置在工作位置0N(左端)。
三、实验目的
1、通过纠错编解码实验,加深对纠错编解码理论的理解;
三、
准备工作:
(1) 首先通过菜单将调制方式设置为BPSK或DBPSK方式;将汉明编码模块内工作方式选择开关SWC01中,编码使能开关插入(H_EN),ADPCM数据断开(ADPCM);将输入数据选择开关KC01设置在m序列(DT_M)位置;设置m序列方式为(00:M_SEL2和M_SEL1拔下),此时m序列输出为1/0码。
汉明码系统
一、
差错控制编码的基本作法是:在发送端被传输的信息序列上附加一些监督码元,这些多余的码元与信息之间以某种确定的规则建立校验关系。接收端按照既定的规则检验信息码元与监督码元之间的关系,一旦传输过程中发生差错,则信息码元与监督码元之间的校验关系将受到破坏,从而可以发现错误,乃至纠正错误。
通信原理综合实验系统中的纠错码系统采用汉明码(7,4)。所谓汉明码是能纠正单个错误的线性分组码。它有以下特点:
(2)设置m序列方式为10:(M_SEL2插入、M_SEL1拔下),此时m序列输出为11/00码(参见表4.4.2所示)。用示波器同时观测编码输入信号TPC01波形和编码输出波形TPC05,观测时以TPC01同步,观测是否符合汉明编码规则。
(3)设置其它m序列方式,重复上述测量步骤。
注:其它两种m序列周期因非4bit的倍数,观测时要仔细调整示波器才能观测。
2、汉明译码器:主要由串/并变换器、校正子生成器、3/8译码器和纠错电路构成。该电路专门由一个CPLD(EPM7128)实现。
3、汉明译码使能开关:SW03中H_EN与发端编码使能开关同步使用。
汉明译码模块各测试点定义:
1、TPW01:输入时钟(56KHzBPSK/DBPSK)
2、TPW02:输入数据(56KbtpsBPSK/DBPSK)
110
0010
110
1010
011
0011
101
1011
000
0100
111
1100
010
0101
100
1101
001
0110
001
1110
100
0111
010
1111
111
表4.4.1为(7,4)汉明编码输入数据与监督码元生成表。编码输出数据最先输出是a6bit,其次是a5、a4……,最后输出a0位。
(2)将汉明译码模块内输入信号和时钟选择开关KW01、KW02设置在LOOP位置(右端),输入信号直接来自汉明编码模块(不通过调制、信道、解调);将译码器使能开关KW03设置在工作位置0N(左端)。
1.编码规则验证
(1)用示波器同时观测编码输入信号TPC01波形和编码输出波形TPC05,观测时以TPC01同步,观测是否符合汉明编码规则(参见表4.4.1所示)。注意此时输入、输出数据速率不同,输入数据速率为32Kbps,输出数据速率为56Kbps。
(1)加电后将误码仪模式设置“连续”,接口时钟选择设置“外时钟”,接口类型选择“RS422”方式。按“测试”键进入测试,测量误码率。
(2)将汉明编码模块工作方式选择开关SWC01的加错开关E_MOD0接入,产生1位错码,测量误码率,看汉明编译码系统能否纠1位错码,记录结果。
(3)将汉明编码模块工作方式选择开关SWC01的加错开关E_MOD1接入,产生2位错码,测量误码率,看汉明编译码系统能否纠2位错码,记录结果。
码长n=2m-1最小码距d=3
信息码位k=2m-m-1纠错能力t=1
监督码位r=n-k
这里m位≥2的正整数,给定m后,既可构造出具体的汉明码(n,k)。
汉明码的监督矩阵有n列m行,它的n列分别由除了全0之外的m位码组构成,每个码组只在某列中出现一次。系统中的监督矩阵如下图所示:
其相应的生成矩阵为:
汉明译码的方法,可以采用计算校正子,然后确定错误图样并加以纠正的方法。
3.译码同步过程观测
将汉明编码模块工作方式选择开关SWC01的编码使能开关插入(H_EN);ADPCM数据有效(ADPCM)。将汉明译码模块的输入信号和时钟选择开关KW01、KW02设置在2_3位置(右端),输入信号直接来自汉明编码模块。
(1)用示波器检测汉明译码模块内错码检测指示输出波形TPW03。将汉明编码模块内工作方式选择开关SWC01的编码使能开关断开(H_EN),使汉明译码模块失步,观测TPW03变化;将编码使能开关插入(H_EN),观测汉明译码的同步过程,记录测量结果。
2.译码数据输出测量
(1)用示波器同时观测汉明编码输入TPC01波形和汉明译码输出m序列波形TPW07,观测时以TPC01同步。测量译码输出数据与发端信号是否保持一致。
(2)设置不同的m序列方式,重复上述实验,验证汉明编译码的正确性。
问题与思考:(KO01置于左边,K501置于右边)当m序列产生输出0/1码或00/11码或7位m序列时(都是短周期数据),观测编译码信号是否一致。然后保持设置不变,将实验箱关机后再开机。有可能发生译码输出与编码数据不一致。如不一致,可将SWC01中的M_SEL1和M_SEL2两个开关都插入(输入测试信号为15位的长m序列),就可正确译码。然后,再拔去M-SEL2,改变输入为7位短m序列,仍能正确译码;或者将KC01中的选择开关从m序列改到CVSD一段时间(加入一段随机码),然后再改回到m序列也可正确译码。这是为什么?(参阅表3.4.1进行分析)在实际通信中如何解决这问题?
2、m序列发生器:m序列用于测试汉明编码规则,输出信号与开关KWC01位置表4.4.2所示:
3、编码使能开关:此开关应与接收端汉明译码器使能开关同步使用,该开关处于使能状态(H_EN短路器插入),汉明码编码器工作;否则汉明码编码器不工作。需注意:汉明码编码器不工作时,ADPCM和CVSD话音数据无法通话,这是因为编码速率与信道速率不匹配。
错码可以用示波器从错码指示端口TPC03监测。
汉明编码模块各测试点定义:
1、TPC01:输入数据
2、TPC02:输入时钟
3、TPC03:错码指示(无加错时,该点为低电平。)
4、TPC04:编码模块输出时钟(56KHz/BPSK/DBPSK)
汉明编译码模块实验电路功能组成框图见图4.4.4和图3.3.5所示。
汉明编码模块实验电路工作原理描述如下:
1、输入数据:汉明编码输入数据可以来自ADPCM1模块的ADPCM码字,或来自同步数据端口数据、异步端口数据、CVSD编码数据、m序列。选择ADPCM码字由工作方式选择开关SWC01中的ADPCM状态决定,当处于ADPCM状态时(插入跳线器),汉明编码器对ADPCM信号编码;否则处于非ADPCM状态时(拔除跳线器),输入编码数据来自开关KC01所设置的位置,分别为同步数据端口数据、异步端口数据、CVSD编码数据、m序列。
3、TPW03:检测错码指示
4、TPW0:同步数据输出
7、TPW07:m序列输出
8、TPW08:异步数据输出
二、
1、ZH5001通信原理综合实验系统一台
2、20MHz双踪示波器一台
3、ZH9001型误码测试仪(或GZ9001型)一台
4、频谱测量仪一台
5、TPC05:编码模块输出数据(56Kbtps/BPSK/DBPSK)
汉明译码模块实验电路工作原理描述如下:
1、输入信号选择开关:开关KW01、KW02用于选择输入信号和时钟是来自解调器信道或直接来自汉明编码模块。当KW01、KW02设置在1_2位置(CH:左端),则输入信号来自信道;开关KW01、KW02设置在2_3位置(LOOP:右端),则输入信号来自汉明编码模块。
(1)用示波器同时测量汉明编码模块内加错指示TPC03和汉明译码模块内错码检测指示输出波形TPW03的波形,观测时以TPC03同步。此时无错码。
(2)将汉明编码模块工作方式选择开关SWC01的加错开关E_MOD0接入,产生1位错码,定性观测明译码能否检测出错码,记录结果。
(3)将汉明编码模块工作方式选择开关SWC01的加错开关E_MOD1接入,产生2位错码,定性观测明译码能否检测出错码,记录结果。
(4)将汉明编码模块工作方式选择开关SWC01的加错开关E_MOD0、E_MOD1都插入,产生更多错码,测量误码率,记录结果。
五、实验报告
1、画出输入为0/1码、00/11码和1110010m序列码的汉明编码输出波形。
2、分析整理测试数据。3、分析讨论汉明编码系统的性能及应用的局限性。
图4.4.1和图4.42给出汉明编码器和译码器电原理图。
表4.4.1(7,4)汉明编码输入数据与监督码元生成表
4位信息位
a6, a5, a4, a3
3位监督码元
a2, a1, a0
4位信息位
a6, a5, a4, a3
3位监督码元
a2, a1, a0
0000
000
1000
101
0001
011
1001
(4)将汉明编码模块工作方式选择开关SWC01的加错开关E_MOD0、E_MOD1都插入,产生更多错码,定性观测明译码能否检测出错码和失步,记录结果。
5.收端错码检测能力观测和错码纠错性能测量
首先通过菜单将调制方式设置为BPSK(或DBPSK)方式;将汉明编码模块工作方式选择开关SWC01的编码使能开关插入(H_EN),ADPCM数据断开(ADPCM);将输入数据选择开关KC01设置在同步数据输入DT-SYS (最左端)。将汉明译码模块内输入信号和时钟选择开关KW01、KW02设置在LOOP位置(右端);将译码器使能开关KW03设置在工作位置0N(左端)。将误码仪RS422端口通过转换电缆与实验箱同步模块的JH02插座连接(注意插入方向:JH02插座面对实验箱左下脚为1脚;插头上有小三角符号为1脚。误码仪必须断电后连接!)。
(2)将ADPCM数据换为m序列,重复上述测量步骤,分析测量结果。
4.发端加错信号观测
将汉明编码模块工作方式选择开关SWC01的编码使能开关插入(H_EN);ADPCM数据有效(ADPCM)。将汉明译码模块内输入信号和时钟选择开关KW01、KW02设置在LOOP位置(右端),输入信号直接来自汉明编码模块;将译码器使能开关KW03设置在工作位置0N(左端)。
三、实验目的
1、通过纠错编解码实验,加深对纠错编解码理论的理解;
三、
准备工作:
(1) 首先通过菜单将调制方式设置为BPSK或DBPSK方式;将汉明编码模块内工作方式选择开关SWC01中,编码使能开关插入(H_EN),ADPCM数据断开(ADPCM);将输入数据选择开关KC01设置在m序列(DT_M)位置;设置m序列方式为(00:M_SEL2和M_SEL1拔下),此时m序列输出为1/0码。
汉明码系统
一、
差错控制编码的基本作法是:在发送端被传输的信息序列上附加一些监督码元,这些多余的码元与信息之间以某种确定的规则建立校验关系。接收端按照既定的规则检验信息码元与监督码元之间的关系,一旦传输过程中发生差错,则信息码元与监督码元之间的校验关系将受到破坏,从而可以发现错误,乃至纠正错误。
通信原理综合实验系统中的纠错码系统采用汉明码(7,4)。所谓汉明码是能纠正单个错误的线性分组码。它有以下特点:
(2)设置m序列方式为10:(M_SEL2插入、M_SEL1拔下),此时m序列输出为11/00码(参见表4.4.2所示)。用示波器同时观测编码输入信号TPC01波形和编码输出波形TPC05,观测时以TPC01同步,观测是否符合汉明编码规则。
(3)设置其它m序列方式,重复上述测量步骤。
注:其它两种m序列周期因非4bit的倍数,观测时要仔细调整示波器才能观测。
2、汉明译码器:主要由串/并变换器、校正子生成器、3/8译码器和纠错电路构成。该电路专门由一个CPLD(EPM7128)实现。
3、汉明译码使能开关:SW03中H_EN与发端编码使能开关同步使用。
汉明译码模块各测试点定义:
1、TPW01:输入时钟(56KHzBPSK/DBPSK)
2、TPW02:输入数据(56KbtpsBPSK/DBPSK)
110
0010
110
1010
011
0011
101
1011
000
0100
111
1100
010
0101
100
1101
001
0110
001
1110
100
0111
010
1111
111
表4.4.1为(7,4)汉明编码输入数据与监督码元生成表。编码输出数据最先输出是a6bit,其次是a5、a4……,最后输出a0位。
(2)将汉明译码模块内输入信号和时钟选择开关KW01、KW02设置在LOOP位置(右端),输入信号直接来自汉明编码模块(不通过调制、信道、解调);将译码器使能开关KW03设置在工作位置0N(左端)。
1.编码规则验证
(1)用示波器同时观测编码输入信号TPC01波形和编码输出波形TPC05,观测时以TPC01同步,观测是否符合汉明编码规则(参见表4.4.1所示)。注意此时输入、输出数据速率不同,输入数据速率为32Kbps,输出数据速率为56Kbps。
(1)加电后将误码仪模式设置“连续”,接口时钟选择设置“外时钟”,接口类型选择“RS422”方式。按“测试”键进入测试,测量误码率。
(2)将汉明编码模块工作方式选择开关SWC01的加错开关E_MOD0接入,产生1位错码,测量误码率,看汉明编译码系统能否纠1位错码,记录结果。
(3)将汉明编码模块工作方式选择开关SWC01的加错开关E_MOD1接入,产生2位错码,测量误码率,看汉明编译码系统能否纠2位错码,记录结果。
码长n=2m-1最小码距d=3
信息码位k=2m-m-1纠错能力t=1
监督码位r=n-k
这里m位≥2的正整数,给定m后,既可构造出具体的汉明码(n,k)。
汉明码的监督矩阵有n列m行,它的n列分别由除了全0之外的m位码组构成,每个码组只在某列中出现一次。系统中的监督矩阵如下图所示:
其相应的生成矩阵为:
汉明译码的方法,可以采用计算校正子,然后确定错误图样并加以纠正的方法。
3.译码同步过程观测
将汉明编码模块工作方式选择开关SWC01的编码使能开关插入(H_EN);ADPCM数据有效(ADPCM)。将汉明译码模块的输入信号和时钟选择开关KW01、KW02设置在2_3位置(右端),输入信号直接来自汉明编码模块。
(1)用示波器检测汉明译码模块内错码检测指示输出波形TPW03。将汉明编码模块内工作方式选择开关SWC01的编码使能开关断开(H_EN),使汉明译码模块失步,观测TPW03变化;将编码使能开关插入(H_EN),观测汉明译码的同步过程,记录测量结果。
2.译码数据输出测量
(1)用示波器同时观测汉明编码输入TPC01波形和汉明译码输出m序列波形TPW07,观测时以TPC01同步。测量译码输出数据与发端信号是否保持一致。
(2)设置不同的m序列方式,重复上述实验,验证汉明编译码的正确性。
问题与思考:(KO01置于左边,K501置于右边)当m序列产生输出0/1码或00/11码或7位m序列时(都是短周期数据),观测编译码信号是否一致。然后保持设置不变,将实验箱关机后再开机。有可能发生译码输出与编码数据不一致。如不一致,可将SWC01中的M_SEL1和M_SEL2两个开关都插入(输入测试信号为15位的长m序列),就可正确译码。然后,再拔去M-SEL2,改变输入为7位短m序列,仍能正确译码;或者将KC01中的选择开关从m序列改到CVSD一段时间(加入一段随机码),然后再改回到m序列也可正确译码。这是为什么?(参阅表3.4.1进行分析)在实际通信中如何解决这问题?
2、m序列发生器:m序列用于测试汉明编码规则,输出信号与开关KWC01位置表4.4.2所示:
3、编码使能开关:此开关应与接收端汉明译码器使能开关同步使用,该开关处于使能状态(H_EN短路器插入),汉明码编码器工作;否则汉明码编码器不工作。需注意:汉明码编码器不工作时,ADPCM和CVSD话音数据无法通话,这是因为编码速率与信道速率不匹配。