导航:首页 > 源码编译 > 循环码编译码实验报告实验结论

循环码编译码实验报告实验结论

发布时间:2022-12-26 21:57:18

1. 实验报告的结论怎么写实验

实验报告常用的内容与格式如下

1、实验名称以及姓名学号:要用最简练的语言反映实验的内容。如验证某程序、定律、算法,可写成“验证什么”、“分析什么”等。

2、实验日期和地点:比如2020年4月25日,物理实验室。

3、实验目的:目的要明确,在理论上验证定理、公式、算法,并使实验者获得深刻和系统的理解,在实践上,掌握使用实验设备的技能技巧和程序的调试方法。一般需说明是验证型实验还是设计型实验,是创新型实验还是综合型实验。

4、实验设备(环境)及要求:在实验中需要用到的实验用物,药品以及对环境的要求。

5、实验原理:在此阐述实验相关的主要原理。

6、实验内容:这是实验报告极其重要的内容。要抓住重点,可以从理论和实践两个方面考虑。这部分要写明依据何种原理、定律算法、或操作方法进行实验。详细理论计算过程。

7、实验步骤:只写主要操作步骤,不要照抄实习指导,要简明扼要。还应该画出实验流程图(实验装置的结构示意图),再配以相应的文字说明,这样既可以节省许多文字说明,又能使实验报告简明扼要,清楚明白。



(1)循环码编译码实验报告实验结论扩展阅读:

实验报告的特点:

1、正确性,实验报告的写作对象是科学实验的客观事实,内容科学,表述真实、质朴,判断恰当。

2、客观性,实验报告以客观的科学研究的事实为写作对象,它是对科学实验的过程和结果的真实记录,虽然也要表明对某些问的观点和意见,但这些观点和意见都是在客观事实的基础上提出的。

3、确证性,确证性是指实验报告中记载的实验结果能被任何人所重复和证实,也就是说,任何人按给定的条件去重复这顶实验,无论何时何地,都能观察到相同的科学现象,得到同样的结果。

4、可读性,可读性是指为使读者了解复杂的实验过程,实验报告的写作除了以文字叙述和说明以外,还常常借助画图像,列表格、作曲线图等文式,说明实验的基本原理和各步骤之间的关系,解释实验结果等。

2. 相邻两个数码之间只有一位码元不同是什么意思

循环码是一种无权码,循环码编排的特点是相邻两个数码之间符合卡诺图中 的邻接条件,即相邻两个数码之间只有一位码元不同,码元就是组成数码的 单元。符合这个特点的有多种方案,但循环码只能是表中的那种。循环码的 优点是没有瞬时错误,因为在数码变换过程中,在速度上会有快有慢,中间 经过其它一些数码形式,称它们为瞬时错误。这在某些数字系统中是不允许 的,为此希望相邻两个数码之间仅有一位码元不同,即满足邻接条件,这样 就不会产生瞬时错误。循环码就是这样一种编码,它可以在卡诺图中依次循 环得到。循环码又称格雷码。 通过对循环码的编译码技术的了解,并对分析其信道误码率。随着数字技术的高速发展,循环码纠错技术已经广泛应用于各种通信系统中。解码技术采 用微处理器或数字信号处理器,实现简单,纠错能力强,可以降低误码率,保证 数据传输的可靠性,大大提高通信质量。 循环码是线性分组码的一个重要子集,是目前研究最成熟的一类码。循 环码计数器是汉明码距离为1 的计数器,因而必然是偶数进制计数器。用它 构成的计数电路由于不会出现毛刺干扰,具有可靠性高等优点而受到重视, 同时,它还有许多特殊的代数性质,这些性质有助于按所要求的纠错能力系 统地构造这类码,且易于实现;同时循环码的性能也较好,具有较强的检错 能力和纠错能力。由于此类编码的重要性,所以对循环码编码器的研究始终 没有停止过。
雷码具有任何相邻码只有一位码元不同的特性。雷码具有任何相邻码只有一位码元不同的特性。雷码具有任何相邻码只有一位码元不同的特性。雷码具有任何相邻码只有一位码元不同的特性。雷码具有任何相邻码只有一位码元不同的特性。雷码具有任何相邻码只有一位码元不同的特性。雷码具有任何相邻码只有一位码元不同的特性。雷码具有任何相邻码只有一位码元不同的特性。雷码具有任何相邻码只有一位码元不同的特性。雷码具有任何相邻码只有一位码元不同的特性。

3. 编译原理实验报告

#include<stdio.h>
void main()
{

int m=0,n=0,n1=0,n2=0,n3=0,zg,fzg,flag;
int bz[7]=;/*状态改变控制,1 表示可以改变状态zt值,0 表示不可以*/
int zt[7]=;/*状态值,2表示未定状态,1表示 是,0表示 否*/

char temp[100]="\0";/*用于求first集*/
char z[7];/*非总结符*/
char z1[7];/*总结符*/
char z2[7]="\0";/*gs[]文法中出现的标记个数的辅助字符 01234*/
char gs[100]="\0";/*文法,按顺序排成字符串*/

printf("请依次输入非终结符(不超过7个):");
gets(z);
while(z[m]!='\0')

fzg=m;//zg是非终结符个数

while(n<m)
//生成01234辅助字符
printf("您输入了:");
puts(z);
fflush(stdin);

printf("请依次输入终结符(不超过7个):");
gets(z1);
while(z1[n1]!='\0')

zg=n1;
printf("您输入了:");
puts(z1);
fflush(stdin);

printf("按照正确格式输入所有文法(总长度不超过100格式如下):");
printf("如果文法为(字符'k'表示空):\n");
printf("S-->AB S-->bC A-->k A-->b\n");
printf("输入:0SAB0SbC1Ak1Ab\n");
printf(" (注:数字01234表示第一二三四个非终结符)\n");

gets(gs);
fflush(stdin);
printf("您输入了:");
puts(gs);
m=0;
//对于输入文法字符串的转换,将每个文法式左部去除
while(gs[m]!='\0')
{
n=m;
if(gs[m]>='0'&&gs[m]<='9')
{
m++;
while(gs[m]!='\0')
{
gs[m]=gs[m+1];
m++;
}
//gs[m-1]='\0';
}
m=++n;
}

m=0;

//puts(gs);

/*情况一,直接判定是 形如: (A-->k) */
while(gs[m]!='\0')
{
if(gs[m]=='k')
{
zt[gs[m-1]-48]=1;
bz[gs[m-1]-48]=0;
}
m++;
}

/*情况二,直接判定--否 形如: (D-->aS ,D-->c) */
for(n=0;n<fzg;n++)
{
if(bz[n]==1)
{
m=0;
n2=0;
while(gs[m]!='\0')
{
if(z2[n]==gs[m])
{
if(gs[m+1]>=z1[0]&&gs[m+1]<=z1[n1-1])
zt[n]=0;
else //gs[m+1] 是非终结符n2做标记
}
//跳出循环,无法解决该情况,推到下面情况三
m++;
}
if(n2!=99) //完成所有扫描,未出现非终结符,得出结论zt[n]=0.bz[n]=0不允许再改变zt[n]
}
}

/*情况三,最终判定*/
do
{
flag=0;
for(n=0;n<fzg;n++)
{
if(bz[n]==1) //未得到判定
{ m=0;
while(gs[m]!='\0')
{
if(gs[m]==z2[n]) //判定gs[m]是辅助字符0123
{
m++;
while(gs[m]>='A'&&gs[m]<='Z')
{

n1=0;
for(n2=0;n2<fzg;n2++) //循环查找是gs[m]哪个非终结符
{
if(gs[m]==z[n2])
{
if(zt[n2]==1) //这个非终结符能推出空
zt[n]=1;
else if(bz[n2]==1) //这个非终结符 现在 不能推出空,但它的状态可改即它最终结果还未判定

else
//设 m1 做标记供下一if参考
break; //找到gs[m]是哪个非终结符,for循环完成任务,可以结束
}

}
if(n1==99) break;
m++;
}
}
m++;
}
if(zt[n]==1) bz[n]=0;
if(bz[n]==0) flag=1;//对应for下的第一个if(zt[n]==2)
}

}
}while(flag);

printf("结果是:\n");

for(m=0;m<5;m++)
{
switch(zt[m])
{
case 0:printf("%c---否\n",z[m]);break;
case 1:printf("%c---是\n",z[m]);break;
case 2:printf("%c---未定\n",z[m]);break;
}

}
/*
puts(gs);
puts(zt);
puts(z);
puts(z1);
puts(z2);
printf("%d,,,%d",fzg,zg);
*/

//下面求first集
//下面求first集

for(n=0;n<fzg;n++)

m=0;n=0;n1=0;n2=0;
while(gs[n]>='0'&&gs[n]<='9')
{
for(;m<fzg;m++)
{
if(n2!=m)
n1=0; //m=n2用于第二次以后的for循环中还原上次m的值

if(gs[n]==z2[m])
{
while(gs[n+1]>'9')
{
if(n1==0)
//如果是第一个直接保存

//不是第一个,先与字符数组中其它字符比较,没相同的才保存
else if(gs[n]>='a'&&gs[n]<='z'&&gs[n+1]>='A'&&gs[n+1]<='Z') //gs[n]是终结符 且 gs[n+1]是非终结符
;//什么也不做,程序继续n++,扫描下一个gs[n]

else
{
for(n3=0;n3<=n1;n3++)
{
if(temp[m*13+n3]==gs[n+1])
break;
}

if(n3>n1) //for循环结束是因为n3而不是break

}
n++;
}
break; //break位于if(gs[n]==z2[m]),对于gs[n]已找到z2[m]完成任务跳出for循环
}
}
n2=m; //存放该for循环中m的值
n++;
}
//进一步处理集除去非终结符
m=0;n=0;n1=0;n2=0;
for(m=0;m<fzg;m++)
{
if(flag!=m)
n1=0; //m=flag用于第二次以后的for循环中还原上次m的值

while(temp[m*13+n1]!='\0')
{
while(temp[m*13+n1]>='A'&&temp[m*13+n1]<='Z') //搜索非终结符
{
for(n=0;n<fzg;n++) //确定是哪个非终结符
{if(temp[m*13+n1]==z[n])
break;
}
while(temp[m*13+n1]!='\0') //从temp[n*13+n1]开始每个字符依次往前移动一

n1--;
while(temp[n*13+n2]!='\0') //把z[n]对应的first加入temp[m*13+n1]这个first中,每个字符依次加在最后
{
for(n3=0;n3<n1;n3++) //循环判定是否有相同的字符
{
if(temp[m*13+n3]==temp[n*13+n2])
break;
}
if(temp[n*13+n2]=='k'&&zt[m]==0) //那些不能推出 空,但是因为要加入 其他非终结符的first集 而可能含有 空
n2++;
else if(n3>=n1) //for循环结束是因为n3而不是break ,即无相同字符

else n2++;
}

n1=0;
n2=0;
}

n1++;
}
flag=m; //存放该for循环中m的值
}

//非终结符的first集输出
m=0;n1=0;
for(m=0;m<fzg;m++)
{
n1=0;
printf("非终结符 %c 的first集是: ",z[m]);
while(temp[m*13+n1]!='\0')
{
printf("%c",temp[m*13+n1]);
n1++;
}
printf("\n");
}

}

4. 循环码的信息组

表1(7,4)循环码
信息组
m3 m2 m1 m0
码字C6 C5 C4 C3 C2 C1 C0
0 0 0 0
0 0 0 0 0 0 0
0 0 0 1
0 0 0 1 1 0 1
0 0 1 0
0 0 1 0 1 1 1
0 0 1 1
0 0 1 1 0 1 0
0 1 0 0
0 1 0 0 0 1 1
0 1 0 1
0 1 0 1 1 1 0
0 1 1 0
0 1 1 0 1 0 0
0 1 1 1
0 1 1 1 0 0 1
1 0 0 0
1 0 0 0 1 1 0
1 0 0 1
1 0 0 1 0 1 1
1 0 1 0
1 0 1 0 0 0 1
1 0 1 1
1 0 1 1 1 0 0
1 1 0 0
1 1 0 0 1 0 1
1 1 0 1
1 1 0 1 0 0 0
1 1 1 0
1 1 1 0 0 1 0
1 1 1 1
1 1 1 1 1 1 1
表1给出的是(7,4)循环码,由于循环码是线性分组码的一种,所以它也具有封闭性,任意两个码字相加之和必是另一码字。所以它的最小码距也就是非零码字的最小码重。在表1给出的(7,4)循环码中,dmin=3。而且根据定义,任一码字的每一循环移位的结果都是(7,4)循环码的一个码字。但某一码字的循环移位,并不能生成所有的码字。对于一个循环码来说,可以同时存在多个循环圈。
编码种类
十六进制数
自然二进制码
循环二进制码
十六进制数
自然二进制码
循环二进制码
0
0000
0000
8
1000
1100
1
0001
0001
9
1001
1101
2
0010
0011
A
1010
1111
3
0011
0010
B
1011
1110
4
0100
0110
C
1100
1010
5
0101
0111
D
1101
1011
6
0110
0101
E
1110
1001
7
0111
0100
F
1111
1000
循环码的基本特征
为了探讨循环码的特征,把码字C=(Cn-1 Cn-2…C1C0)用如下的码多项式C(x)来表示。
(1)特性一
在一个(n,k)循环码中,存在惟一的一个n-k次码多项式:
每一个码多项式C(x)都是g(x)的一个倍式,反之每个为g(x)倍式,且次数小于等于n-1的多项式必是一个码多项式。
由此可见,(n,k)循环码中的每一个码多项式C(x)均可由下式表示:
如果m(x)的系数(mk-1…m1m0)就是表示待编码的k位信息位,则C(x)就是对应于此信息组m(x)的码多项式。因此(n,k)循环码完全可由g(x)确定。g(x)也称为循环码(n,k)的生成多项式。g(x)的次数n-k等于码中一致校验位的位数。
(2)特性二
(n,k)循环码的生成多项式是xn+1的因子,即:
xn+1=g(x)h(x)
其中h(x)称为码的一致校验多项式,循环码的H矩阵也可以通过h(x)来生成。
(3)特性三
若g(x)是一个n-k次多项式,并且是xn+1的因子,则g(x)一定能生成一个(n,k)循环码。
表2.5给出了多项式x7+1中所含有的部分生成多项式和相应的循环码。
循环码的编码
(1)编码方法
根据上述的三个循环码特征,可以有三种(n,k)循环码的编码方法。
表2x7+1中的部分g (x)
循环码
码距
生成多项式g(x)
校验多项式h(x)
(7,6)
2
x+1
(x 3+x+1)(x 3+x 2+1)
(7,4)
3
x 3+x+1
(x 3+x 2+1)(x+1)
(7,3)
4
(x+1)(x 3+x+1)
x 3+x 2+1
(7,1)
7
(x 3+x 2+1)(x 3+x+1)
x+1
① 用生成多项式编码
a.选择一个能除尽xn+1的n-k=r次生成多项式g(x)。
b.由g(x)生成各码多项式。
c.找出与码多项式相对应的循环码字。
② 用生成矩阵编码
有两种求生成矩阵的方法:
a.因为g(x)是最低次数的码多项式。且xg(x),x2g(x),…,xk-1g(x)皆为码多项式。用它们构成G,再用行变换把G变换为典型生成矩阵,然后用其编码。
b.用g(x)除xn-k+i (i=0,1,…,k-1),得:
于是是g(x)的倍式,且次数小于等于n-1,所以为码多项式。用此方法可得到k个码多项式,可以直接构成典型生成矩阵,用以编码。
③ 用余式确定校验位
a.用乘信息多项式m(x)。
b.用g(x)除m(x)得到余式r(x)。
c.生成码多项式m(x)+r(x)。
第一种方法可用乘法电路来完成,第二种方法用生成矩阵G编码是一般线性分组编码的通用方法,利用这一种方法编循环码,体现不出循环码的优点,第三种方法可用除法电路来完成,应用比较广泛。
(2)除法电路编码器
以g(x)=x3+x+1生成(7,4)循环码的编码器为例,如图3所示。
图3所示的编码器主要由一除法电路构成。除法电路由移位寄存器和模2加法器组成。移位寄存器的个数与g(x)的次数相等。因为g(x)=x3+x+1,所以移位寄存器有三个。g(x)多项式中的系数是1还是0表示该移位寄存器的输入端反馈线的有无。图中x的一次项的系数为1,所以D1的输入端有反馈线及模2加法器。信息输入时,门打开,K1接通,信息送入除法器的同时,向外输出;信息位送完,门关闭,K2接通。除法电路中D2D1D0的内容,即所得余式,也就是校验位紧随信息位输出,完成一个码字的编码过程。为了便于理解,表4给出了这一编码的过程。这里设信息码元为1101,编码结果为1101001。

图3 (7,4)循环码编码器
表4 (7,4)编码器工作过程
输入m
移位寄存器D0 D1 D2
输出
1
1 1 0
1
1
1 0 1
1
0
1 0 0
0
1
1 0 0
1
0
0 1 0
0
0
0 0 1
0
0
0 0 0
1
循环码的译码
令S(x)是接收多项式R(x)=rn-1xn-1+…+r1x+r0的伴随式,利用生成多项式g(x)除xS(x)所得的余式S(1)(x),就是R(x)循环移位一次R(1)(x)的伴随式。
因此,可用伴随式运算电路依次求出对应于各码位的伴随式。以g(x)=x3+x+1的(7,4)循环码为例,其伴随式运算电路由图2.19给出。

图5 伴随式运算电路
表6是错误图样和相应的伴随式。
表6 错误图样和伴随式
移存器状态D0 D1 D2
错误图样e0e1e2e3e4e5e6
伴随式S0 S1 S2
1 0 0
1 0 0 0 0 0 0
1 0 0
0 1 0
0 1 0 0 0 0 0
0 1 0
0 0 1
0 0 1 0 0 0 0
0 0 1
1 1 0
0 0 0 1 0 0 0
1 1 0
0 1 1
0 0 0 0 1 0 0
0 1 1
1 1 1
0 0 0 0 0 1 0
1 1 1
1 0 1
0 0 0 0 0 0 1
1 0 1
可以看出如果我们在伴随式运算电路中赋予一个与e0出错项对应的伴随式S=001,随着伴随式电路的运算,移存器中的内容就会是依次是e1,e2,…,e6的伴随式。
定理表明如果e(x)的伴随式是S(x),则xe(x)的伴随式t(x)=S(1)(x)。它相当于S(x)在伴随式运算电路里的循环移一位。当差错码元移到最高位时,就和最高位出错的伴随式相同,这就大大简化了译码器的结构。g(x)=x3+x+1的(7,4)循环码的译码电路由图7给出。

图7 (7,4)循环码译码器
缩短循环码
循环码的生成多项式g(x)应该是xn+1的一个(n-k) 次因子,但有时在给定码长n时,xn+1的因子不能满足设计者的需要,为了增加选择机会,往往采用缩短循环码。
在(n,k)循环码的2k个码字中选择前i位信息位为0的码字,共有2k-i个,组成一个新的码字集。这样就构成了一个(n-i,k-i)缩短循环码。
在缩短循环码中,校验码原位数不变,缩短的仅仅是信息位,因此(n-i,k-i)缩短循环码的纠检错的能力不低于(n,k)码的纠检错能力。但码字间已失去了循环特征。
在数据通信中广泛采用的循环冗余检验码(CRC,Cyclic Rendancy Checks),是一种循环码,常利用缩短循环码,如CRC-12、CRC-16、CRC-CCITT码,表8给出了它们的生成多项式。
表8 常用CRC码
CRC码
生成多项式
CRC-12
x12+x11+x3+x2+x+1
CRC-16
x16+x15+x2+1
CRC-CCITT
x16+x12+x5+1
BCH码
BCH码是循环码的一个重要的子类,它是一种能纠正多个随机错误的应用最为广泛和有效的差错控制码。
定义:对于任意正整数m(m≥3)和t(t<2m-1=一定存在一个具有下列参数的二进制BCH码:
码长n=2m-1
校验位数目n-k≤mt
最小距离dmin≥2t+1
BCH码可以分为两类,即本原BCH码和非本原BCH码。本原BCH码码长n=2m-1,它的生成多项式g(x)中含有最高次数为m的本原多项式,本原多项式是一个既约多项式,它能除尽xn+1的最小正整数n,满足n=2m-1。具有循环码特性,纠单个随机错误的汉明码,是可纠单个随机错误的本原BCH码。而非本原BCH码中的生成多项式g(x)中不含本原多项式,且码长n是2m-1的一个因子,着名的戈雷(Golay)码,就属于非本原BCH码。
表9给出了n≤31的本原BCH码的参数和生成多项式。
表9 本原BCH码生成多项式
n k t
gt(x)
7 4 1
g1(x)=13
1 3
g1(x)(15)=177
15 11 1
g1(x)=23
7 2
g1(x)(37)=721
5 3
g2(x)(7)=2467
1 7
g3(x)(31)=77777
31 26 1
g1(x)=45
21 2
g1(x)(75)=3551
16 3
g2(x)(67)=10765 7
11 5
g3(x)(57)=54233 25
n k t
gt(x)
6 7
g5(x)(73)=31336 5047
1 15
g7(x)(51)=17777 77777 7
表中的每一位数字为八进制数,代表g(x)多项式中3个二进制系数。如n=31,k=26,t=1的BCH码的生成多项式g1(x)=45。45表示100101,所以,该BCH码的g(x)=x5+x2+1。有了生成多项式表就可很方便地构造所需的BCH码。
里德—所罗门(Read-Solomon)码
除了二进制码之外,还有非二进制码。如果P是一素数,q是p的任意次幂,存在着由伽罗华域GF(q)产生的码。这些码称为q进制码。q进制码的编码和译码都与二进制码相似。
对任意选择的正整数s和t,存在长度为n=qs-1的q进制BCH码。它能纠正t个错误,而只用2St个校验位。S=1时的q进制BCH码是q进制BCH码中的一类最重要的子码。这类子码称为里德——所罗门(Read-Solomon)码,简称R-S码。纠t位错误,系数为GF(q)中元素的R-S码具有下列参数:
码长:n=q-1
校验位数目:n-k=2t
最小距离:dmin=2t+1
R-S码对纠多重突发差错非常有效。
R-S码把L位(例如8位)的一个字节,作为一个编码符号。如果我们要设计一个纠t=5位错误的,由8位字节组成的R-S码,码长为q-1=255字节(这里,p=2,q=28)。那么根据R-S码的参数,校验位的数目为r=n-k=2t=10字节(80位),其余k=n-r=245字节(1960位)是信息位。

5. 求程控交换PCM编译码实验的毕业设计

程控交换原理实验系统及控制单元实验

一、 实验目的
1、熟悉该程控交换原理实验系统的电路组成与主要部件的作用。
2、体会程控交换原理实验系统进行电话通信时的工作过程。
3、了解CPU中央集中控制处理器电路组成及工作过程。

二、 预习要求
预习《程控交换原理》与《MCS-51单片计算机原理与应用》中的有关内容。

三、 实验仪器仪表
1、主机实验箱 一台
2、三用表 一台
3、电话单机 四台

四、 实验系统电路组成
(一)电路组成
图1-1是该实验系统的原理框图

图1-1 实验系统的原理框图
图1—2是该实验系统的方框图,其电路的组成及主要作用如下:
1、用户模块电路 主要完成BORSCHT七种功能,它由下列电路组成:
A、 用户线接口电路
B、 二\四线变换器
C、 PCM编译码电路

用户线接口电路 二/ 四线变换器 二/四线变换器 用户线接口电路
用户1 PCM CODEC电路 PCM CODEC电路 用户3

用户线接口电路 二/ 四线变换器 二/ 四线变换器 用户线接口电路
用户2 PCM CODEC电路 PCM CODEC电路 用户4

时钟信号电路 控制、检测电路 输出显示电路 二次稳压电路

多种信号音电路 CPU中央处理器 键盘输入电路 直流电源

图1-2实验系统方框图

2、交换网络系统 主要完成空分交换与时隙交换两大功能,它由下列电路组成:
A、空分交换网络系统
B、时隙交换网络系统
3、多种信号音电路 主要完成各种信号音的产生与发送,它由下列电路组成:
A、450Hz拨号音电路
B、忙音发生电路
C、回铃音发生电路
D、25Hz振铃信号电路
4、CPU中央集中控制处理器电路 主要完成对系统电路的各种控制,信号检测,号码识别,键盘输入信息,输出显示信息等各种功能。
5、系统工作电源 主要完成系统所需要的各种电源,本实验系统中有+5V,-5V,+12V,-12V,-48V等5组电源,由下列电路组成:
A、内置工作电源:+5V,+12V,-12V,-48V
B、稳压电源: -8V,-5V
控制部分就是由CPU中央处理系统、输入电路(键盘)、输出电路(数码管)、双音多频DTMF检测电路、用户环路状态检测电路、自动交换网络驱动电路与交换网络转换电路、扩展电路、信号音控制电路等电路组成。
下面简要说明各部分电路的作用与要求:
1、键盘输入电路:主要把实验过程中的一些功能通过键盘设置到系统中。
2、显示电路: 显示主叫与被叫电路的电话号码,同时显示通话时间。
3、输入输出扩展电路:显示电路与键盘输入电路主要通过该电路进行工作。主要芯片是D8155A,SN74LS240,MC1413。
4、双音多频DTMF接收检测电路:把MT8870DC输出的DTMF四位二进制信号,接收存贮后再送给CPU中央集中控制处理系统。
5、用户状态检测电路:主要识别主、被叫用户的摘挂机状态,送给CPU进行处理。
6、自动交换网络驱动电路:主要实现电话交换通信时,CPU发出命令信息,由此电路实现驱动自动交换网络系统,其核心集成电路为SN74LS374,D8255A,GD74LS373等芯片。
7、信号音控制电路:它完全按照CPU发出的指令进行操作,使各种信号音按照系统程序进行工作。
8、振铃控制电路:它也是按照CPU发出的指令进行工作,具体如下:
(A)不振铃时,要求振铃支路与供电系统分开。
(B)振铃时,铃流送向话机,并且供电系统通过振铃支路向用户馈电,用户状态检测电路同时能检测用户的忙闲工作状态。
(C)当振铃时,用户一摘机就要求迅速断开振铃支路。
(D)振铃时要求有1秒钟振、4秒钟停的通断比。
以上是CPU中央集中控制处理系统的主要工作过程,要全面具体实现上述工作过程,则要有软件支持,该软件程序流程图见图1—4。

图1-3 键盘功能框图
对图1-3所示的键盘功能作如下介绍:
“时间”: 该键可设置系统的延时时间。如久不拔号、久不应答、位间不拔号的延时,缺省值为10秒,可选择的时间值有10秒、30秒、1分钟。按一次该键则显示下一个时间值,三个值循环显示,当按下“确认”键时,就选定当前显示值供系统使用,按“复位”键则清除该次时间的设定。
“会议电话”: 该键为召开电话会议的按键。电话会议设置用户1为主叫方,其他三路为被叫方,只能由主叫方主持召开会议,向其他三路发出呼叫。电路完全接通或者接通两路后,主叫方能和任一被叫方互相通话。除“复位”键外,其他键均推失去功能。会议结束后,可按“复位”键重启系统。
“中继”: 该键为局内交换切向中继交换的功能按键,按下此键,再按“确认”键进行确认,则工作模式由局内交换切换为中继交换,显示器循环显示“d”,此时方可通过中继拨打“长途”电话。按“复位”键重启系统,进入正常局内交换模式。
“确认”: 该键完成对其他功能键的确认,防止误按键,在键盘中除“复位”键外,其他功能键都必须加“确认”键才能完成所定义的功能。
“复位”: 该键为重启系统按键。在任何时候或者系统出现不正常状态时都可按下此键重启系统(有用户通话时,会中断通话),所有设置均为默认值。
图1-5是显示电路工作示意说明图。

主叫号码显示 计时显示 被叫号码显示

图1-5 显示电路

开 始

NO
有用户呼叫吗?

呼叫�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1 YES
去 话 接 续

向主叫送拨号音

NO
第一位号码来了吗?

拨号开始�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1 YES
停送拨号音,收存号码

内 部 处 理
拨号完毕�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1

被叫闲吗? NO

YES
来 话 接 续 向主叫送忙音

向被叫送铃流,向主叫送回铃音

被叫应答否? NO
主叫挂机否?
应答�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1 YES
停送铃流,回铃音,接通电路 YES

话终挂机否?

挂机�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1�6�1 YES
拆线(释放复原)

结 束

图1-4 程序工作流程示意图
五、实验内容
1、测量实验系统电路板中的TP91~TP95各测量点电压值,并记录。
2、从总体上初步熟悉两部电话单机用空分交换方式进行通话。
3、初步建立程控交换原理系统及电话通信的概念。
4、观察并记录一个正常呼叫的全过程。
5、观察并记录一个不正常呼叫的状态。

图1-6 呼叫识别电路框图

五、 实验步骤
1、接上交流电源线。
2、将K11~K14,K21~K24,K31~K34,K41~K44接2,3脚;K70~K75接2,3脚;K60~K63接2,3脚。
3、先打开“交流开关”,指示发光二极管亮后,再分别按下直流输出开关J8,J9。此时实验箱上的五组电源已供电,各自发光二极管亮。
4、按 “复位”键进行一次上电复位,此时,CPU已对系统进行初始化处理,数码管循环显示“P” ,即可进行实验。
5、将三用表拔至直流电压档,然后测量TP91,TP92,TP93,TP94,TP95的电压是否正常:TP91为-12V,TP92为-48V,TP93为+5V,TP94为+12V,TP95为-5V。(-48V允许误差±10%,其它为±5%)
6、将四个用户接上电话单机。
7、正常呼叫全过程的观察与记录。(现以用户1为主叫,用户4为被叫进行实验)
A、 主叫摘机,听到拨号音,数码管显示主叫电话号码“68” 。
B、 主叫拨首位被叫号码“8”,主叫拨号音停,主叫继续拨完被叫号码“9”。
C、 被叫振铃,主叫听到回铃音。
D、 被叫摘机,被叫振铃停,主叫回铃音停,双方通话。数码管显示主叫号码和被叫号码,并开始通话计时。
E、 挂机,任意一方先挂机(如主叫先挂机),另一方(被叫)听到忙音,计时暂停,双方都挂机后,数码管循环显示“P” 。
8、不正常呼叫的自动处理
A、 主叫摘机后在规定的系统时间内不拨号,主叫听到忙音。(系统时间可以设置,在系统复位后按“时间”可循环显示“10”,“30”,“100”,分别表示10秒,30秒,1分钟,选定一个时间,按“确定”即系统时间被设置,在复位状态时,系统时间默认为10秒。)
B、 拨完第一位号码后在规定的系统时间内没有拨第二位号码时,主叫听到忙音。
C、 号码拨错时(如主叫拨“56” ),主叫听到忙音。
D、 被叫振铃后在规定的系统时间内不摘机,被叫振铃音停,主叫听到忙音。

六、 实验注意事项
对实验系统加电一定要严格遵循先打开系统工作电源的“交流开关”,然后再打开直流输出开关J8,J9。实验结束后,先分别关直流输出开关J8,J9。最后再关“交流开关”,以避免实验电路的器件损坏。

七、 实验报告要求
1、画出实验系统电路的方框图,并作简要叙述。
2、对正常呼叫全过程进行记录。

实验二 用户线接口电路及二\四线变换实验

一、实验目的
1、全面了解用户线接口电路功能(BORST)的作用及其实现方法。
2、通过对MH88612C电路的学习与实验,进一步加深对BORST功能的理解。
3、了解二\四线变换电路的工作原理。

二、预习要求
认真预习程控交换原理中有关用户线接口电路等章节。

三、实验仪器仪表
1、主机实验箱 一台
2、电话单机 二台
3、20MHz示波器 一台
4、三用表 一台

四、电路工作过程
在现代电话通信设备与程控交换机中,由于交换网络不能通过铃流、馈电等电流,因而将过去在公用设备(如绳路)实现的一些用户功能放到“用户电路”来完成。
用户电路也可称为用户线接口电路(Subscriber Line Interface Circuit—SLIC)。任何交换机都具有用户线接口电路。
模拟用户线接口电路在实现上的最大压力是应能承受馈电、铃流和外界干扰等高压大电流的冲击,过去都是采用晶体管、变压器(或混合线圈)、继电器等分立元件构成,随着微电子技术的发展,近十年来在国际上陆续开发多种模拟SLIC,它们或是采用半导体集成工艺或是采用薄膜、厚膜混合工艺,并已实用化。在实际中,基于实现和应用上的考虑,通常将BORSCHT功能中过压保护由外接元器件完成,编解码器部分另单成一体,集成为编解码器(CODEC),其余功能由所谓集成模拟SLIC完成。
在布控交换机中,向用户馈电,向用户振铃等功能都是在绳路中实现的,馈电电压一般是-60V,用户的馈电电流一般是20mA~30 mA,铃流是25HZ,
90V左右,而在程控交换机中,由于交换网络处理的是数字信息,无法向用户馈电、振铃等,所以向用户馈电、振铃等任务就由用户线接口电路来承担完成,再加上其它一些要求,程控交换机中的用户线接口电路一般要具有B(馈电)、O(过压保护)、R(振铃)、S(监视)、C(编译码)、H(混合)、T(测试)七项功能。
模拟用户线接口电路的功能可以归纳为BORSCHT七种功能,具体含义是:
(1)馈电(B-Battery feeling)向用户话机送直流电流。通常要求馈电电压为—48伏,环路电流不小于18mA。
(2)过压保护(O-Overvoltage protection)防止过压过流冲击和损坏电路、设备。
(3)振铃控制(R-Ringing Control)向用户话机馈送铃流,通常为25HZ/90Vrms正弦波。
(4)监视(S-Supervision)监视用户线的状态,检测话机摘机、挂机与拨号脉冲等信号以送往控制网络和交换网络。
(5)编解码与滤波(C-CODEC/Filter)在数字交换中,它完成模拟话音与数字码间的转换。通常采用PCM编码器(Coder)与解码器(Decoder)来完成,统称为CODEC。相应的防混叠与平滑低通滤波器占有话路(300HZ~3400HZ)带宽,编码速率为64kb/s。
(6)混合(H-Hyhird)完成二线与四线的转换功能,即实现模拟二线双向信号与PCM发送,接收数字四线单向信号之间的连接。过去这种功能由混合线圈实现,现在改为集成电路,因此称为“混合电路”。
(7)测试(T-Test)对用户电路进行测试。
模拟用户线接口功能见图2—1。

铃流发生器 馈电电源

发送码流
过 振 低通 编

a 压 测 铃 馈 混 码

拟 保 试 继 电 合 平衡 器
用 (编码信号)
户 护 开 电 电 电 网络 解
线
b 电 关 器 路 路 码

路 低通 器
接收码流

测试 振铃控台 用户线
总线 制信号弹 状态信号

图2-1 模拟用户线接口功能框

(一)用户线接口电路
在本实验系统中,用户线接口电路选用的是MITEL公司的MH88612C。MH88612C是2/4线厚膜混合用户线接口电路。它包含向用户话机恒流馈电、向被叫用户话机馈送铃流、用户摘机后自行截除铃流,摘挂机的检测及音频或脉冲信号的识别,用户线是否有话机的识别,语音信号的2/4线混合转换,外接振铃继电器驱动输出。MH88612C用户电路的双向传输衰耗均为-1dB,供电电源+5V和-5V。其各项性能指标符合邮电部制定的有关标准。
(1)该电路的基本特性
1、向用户馈送铃流
2、向用户恒流馈电
3、过压过流保护
4、被叫用户摘机自截铃
5、摘挂机检测和LED显示
6、音频或脉冲拨号检测
7、振铃继电器驱动输出
8、语音信号的2/4线转换
9、能识别是否有话机
10、无需偶合变压器
11、体积小及低功耗
12、极少量外围器件
13、厚膜混合型工艺
14、封装形式为20引线单列直插
图2-2是它的管脚排列图

(2)MH88612C引出端功能的说明
0脚:IC Internal Connection:空端。
1脚:TF Tip Feed: 连接外接二极管作为保护电路连到-48V和地。。
2脚:IC Internal Connection:空端。
3脚:VR Voice Receive(input): 四线语音信号的接收端。
4脚:VRef Voltage Reference:设置向用户电话线送恒流馈电的参考电压,恒流通过VRef调节;也可接地,一般为21mA环流。
5脚:VEE 负供电电源,通常为-5V DC。
6脚:GNDA 供电电源和馈电电源的地端,模拟接地。
7脚:GS Gain setting(input):低电平时直接接收附加增益为-0.5 dB,
此增益除编解码增益设置之外的,高电平时为0dB。
8脚:VX Voice Transmit(output):四线语音信号的发送端。
9脚:TIP 连接用户电话的“TIP”线。
10脚:RING 连接用户电话的“RING”线。
11脚:RF Ring Feed:外部连接至振铃继电器。
12脚:VDD 正供电电源,通常为+5V DC。
13脚:RC Relay Control(input)振铃继电器控制输入端,高电平有效
14脚:RD 振铃继电器驱动输出端,外接振铃继电器线圈至地端,内部有一线圈感应箝位二极管。
15脚:RV Ring Feed Voltage:用户线铃流源输入端,外部连接至振铃继电器。
16脚:VRLY 振铃继电器正供电电源,能常为+5V DC。
17脚:IC Internal Connection:空端。
18脚:VBat 用户线馈电电压,通常为-48V DC
19脚:CAP 连接外部电容作为振铃滤波控制连电阻到地。
20脚:SHK 摘挂机状态检测及脉冲号码输出端,摘机时输出高电平。

(3)用户线接口电路主要功能
图2-3是MH88612C内部电路方框图,其主要功能说明如下:

TF VR
TIP
RING VX
RF

RV
VRLY

RC
VRef
RD CAP

SHK
图2-3 MH88612C内部电路方框图
1、向用户话机供电,MH88612C可对用户话机提供恒流馈电,馈电电流由VBAT以及VDD供给。恒定的电流为25 mA。当环路电阻为2KΩ时,馈电电流为18 mA,具体如下:
A、 供电电源VBat采用-48V;
B、 在静态情况下(不振铃、不呼叫),-48V电源通过继电器静合接点至话机;
C、 在振铃时,-48V电源通过振铃支路经继电器动合接点至话机;
D、 用户挂机时,话机叉簧下压馈电回路断开,回路无电流流过;
E、 用户摘机后,话机叉簧上升,接通馈电回路(在振铃时接通振铃支路)回路。
2、MH88612C内部具有过压保护的功能,可以抵抗保护TIP- -RING端口间的瞬时高压,如结合外部的热敏与压敏电阻保护电路,则可保护250V左右高压。
3、振铃电路可由外部的振铃继电器和用户电路内部的继电器驱动电路以及铃流电源向用户馈送铃流:当继电器控制端(RC端)输入高电平,继电器驱动输出端(RD端)输出高电平,继电器接通,此时铃流源通过与振铃继电器连接的15端(RV端)经TIP––RING端口向被叫用户馈送铃流。当控制端(RC端)输入低电平或被叫用户摘机都可截除铃流。用户电路内部提供一振铃继电器感应电压抑制箝位二极管。
4、监视用户线的状态变化即检测摘挂机信号,具体如下:
A、用户挂机时,用户状态检测输出端输出低电平,以向CPU中央集中控制系统表示用户“闲”;
B、用户摘机时,用户状态检测输出端输出高电平,以向CPU中央集中控制系统表示“忙”;
5、在TIP––RING端口间传输的语音信号为对地平衡的双向语音信号,在四线VR端与VX端传输的信号为收发分开的不平衡语音信号。MH88612C可以进行TIP––RING端口与四线VR端和VX端间语音信号的双向传输和2/4线混合转换。
6、MH88612C可以提供用户线短路保护:TIP线与RING线间,TIP线与地间,RING线与地间的长时间的短路对器件都不会损坏。
7、MH88612C提供的双向语音信号的传输衰耗均为-dB。该传输衰耗可以通过MH88612C用户电路的内部调整,也可通过外部电路调整;
8、MH88612C的四线端口可供语音信号编译码器或交换矩阵使用。
由图1-1可知,本实验系统共有四个用户线接口电路,电路的组成与工作过程均一样,因此只对其中的一路进行分析。
图2-4是用户1用户线接口电路的原理图:

图2-4 用户线接口电路电原理图

为了简单和经济起见,反映用户状态的信号一般都是直流信号,当用户摘机时,用户环路闭合,有用户线上有直流电流流过。主叫摘机表示呼叫信号,被叫摘机,则表示应答信号,当用户挂机时,用户环路断开,用户线上的直流电流也断开,因此交换机可以通过检测用户线上直流电流的有无来区分用户状态。
当用户摘机时,发光二极管D10亮表示用户已处于摘机状态,TP13由低电平变成高电平,此状态送到CPU进行检测该路是否摘机,当检测到该路有摘机时,CPU命令拨号音及控制电路送出f=450HZ,U=3V的波形。
此时,在TP12上能检测到如图2—5所示波形

TP12

0 2VP-P t

f = 400~450Hz
图2-5 450Hz拨号音波形
当用户听到450HZ拨号音信号时,用户开始拨电话号码,双音多频号码检测电路检测到号码时通知CPU进行处理,CPU命令450HZ拨号音发生器停止送拨号音,用户继续拨完号码,CPU检测主叫所要被叫用户的号码后,立即向被叫用户送振铃信号,提醒被叫用户接听电话,同时向主叫用户送回铃音信号,以表示线路能够接通,当被叫用户摘机时,CPU接通双方线路,通信过程建立。一旦接通链路,CPU即开始计时,当任一方先挂机,CPU检测到后,立即向另一方送忙音,以示催促挂机,至此,主、被叫用户一次通信过程结束。
通过上述简单分析,不难得出各测量点的波形。
TP11:通信时有发送话音波形;拨号时有瞬间DTMF波形;不通信时则此点无波形。
TP12:通信时有接收话音波形:摘机后拨号前有450HZ拨号音信号;不通信时则此点无波形。
TP13:摘挂机状态检测测量点
挂机:TP13=低电平。
摘机:TP13=高电平。
TP14:振铃控制信号输入,高电平有效。即工作时为高电平,常态为低电平。
由于4个用户线接口电路的测量点相同,故对其它三个用户线接口电路的测量点就不一一叙述,波形均相同,即:
TP11=TP21=TP31=TP41
TP12=TP22=TP32=TP42
TP13=TP23=TP33=TP43
TP14=TP24=TP34=TP44
(二)二\四线变换电路
在该实验系统中,二\四线变换由用户线接口电路中的语音单元电路实现,图2-6为电路的功能框图,该电路完成二线–––单端之间信号转换,在MH88612C内部电路中已经完成了该变换。

T

TR

R
图2-6 二/四线变换功能框图
二\四线变换的作用就是把用户线接口电路中的语音模拟信号(TR)通过该电路的转换分成去话(T)与来话(R),对该电话的要求是:
1、将二线电路转换成四线电路;
2、信号由四线收端到四线发端要有尽可能大的衰减,衰减越大越好;
3、信号由二线端到四线发端和由四线收端到二线端的衰减应尽可能小,越小越好;
4、应保持各传输端的阻抗匹配;
以便于PCM编译码电路形成发送与接收的数字信号。

五、实验内容
1、参考有关程控交换原理教材中的用户线接口电路等单节,对照该实验系统中的电路,了解其电路的组成与工作过程。
2、通过主叫、被叫的摘、挂机操作,了解B、R、S等功能的具体作用。

六、实验步骤
1. 接上交流电源线。
2. 将K11~K14,K21~K24,K31~K34,K41~K44接2,3脚;K70~K75接2,3脚;K60~K63接2,3脚。
3. 先打开“交流开关”,指示发光二极管亮后,再分别按下直流输出开关J8,J9,此时实验箱上的五组电源已供电,各自发光二极管亮。
4. 按“复位”键进行一次上电复位,此时,CPU已对系统进行初始化处理,显示电路循环显示“P”,即可进行实验。
5. 用户1,用户3接上电话单机。
6. 用户电话单机的直流供电(B)的观测。(现以用户1为例)
1) 用户1的电话处于挂机状态,用三用表的直流档测量TP1A,TP1B对地的电压,TP1A为-48V,TP1B为0V,它们之间电压差为48V。
2) 用户1的电话处于摘机状态,用三用表的直流档测量TP1A,TP1B对地的电压,TP1A为-10V左右(此时的电压与电话的内阻抗有关,所以每部电话的测量值不一定相同),TP1B为-3.7V左右。
以上给出的电压值只是作为参考。
7. 观察二/四线变换的作用。
1) 用正常的呼叫方式,使用户1、用户3处于通话状态。
2) 当用户1对着电话讲话时(或按电话上的任意键),用示波器观察TP11上的波形,为语音信号(或双音多频信号),不讲话时无信号。
3) 当用户1听到用户3讲话时(或用户3按电话上任意键),用示波器观察TP12上的波形,为语音信号(或双音多频信号),对方不讲话时无信号。
4) 用示波器观察TP1A。不管是用户1讲话还是用户3讲话(或按电话上的任意键)此测试点都有语音波形(或双音多频信号)。
8. 摘、挂机状态检测的观测。
1) 当用户1的电话摘机时,用示波器测量TP13为高电平(4V左右)。
2) 当用户1的电话挂机时,用示波器测量TP13为低电平(0V左右)。
9. 被叫话机振铃(R)的观测。
1) 用户1处于挂机状态,用户3呼叫用户1,即用户3拨打“68”,使用户1振铃。
2)当用户1的电话振铃时,用示波器观察TP14,振铃时TP14为高电平(3V左右);不振铃时TP14为低电平(0V左右)。

七、实验注意事项
当实验过程中出现不正常现象时,请按一下“复位”键,以使系统重新启动。

八、实验报告要求
1、画出本次实验电路方框图,并能说出其工作过程。
2、画出各测量点在各种情况下的波形图。

6. 实验报告结论怎么写

结论不是具体实验结果的再次罗列,也不是对今后研究的展望,而是针对这一实验所能验证的概念、原则或理论的简明总结,是从实验结果中归纳出的一般性、概括性的判断,要简练、准确、严谨、客观。

不能用已知的理论或生活经验硬套在实验结果上;更不能由于所得到的实验结果与预期的结果或理论不符而随意取舍甚至修改实验结果,这时应该分析其异常的可能原因。如果本次实验失败了,应找出失败的原因及以后实验应注意的事项。

(6)循环码编译码实验报告实验结论扩展阅读:

实验报告的书写是一项重要的基本技能训练。它不仅是对每次实验的总结,更重要的是它可以初步地培养和训练学生的逻辑归纳能力、综合分析能力和文字表达能力,是科学论文写作的基础。

因此,参加实验的每位学生,均应及时认真地书写实验报告。要求内容实事求是,分析全面具体,文字简练通顺,誊写清楚整洁。

7. 计算机实验报告数据分析与实验结果怎么写

顺序是这样的:实验题目》》实验目的》》实验要求》》实验器材(当然写计算机了)》》实验流程图(就画那些什么平行四边形里写开始,椭圆形里写步骤的那种)》》实验步骤(写程序代码)》》结果分析(写详细些
比如写输入什么
输出了什么
如果结果有问题
你可以分析
比如因为循环次数少导致的或怎么样)

8. 求C语言循环程序设计实验报告

9. (13,9)循环码的MATLAB语言程序,跪求大神,要能运行的

1、循环码编码与解码Matlab源程序(实验以(7,4)循环码进行分析)
m
=
3;
n
=
2^m-1;
%定义码长
k
=
n-m;
%信息位长
msg
=
randint(k*4,1,2);
%随机提取信号,引起一致地分布的任意整数矩阵
subplot(2,2,1)
stem(msg)
title('编码器输入信号')
p=cyclpoly(n,k)
%循环码生成多项式,n=7,k=4
code
=
encode(msg,n,k,'cyclic',p);
%编码函数,对信号进行差错编码
subplot(2,2,2)
stem(code)
title('编码器输出信号')
recode=decode(code,n,k,'cyclic',p)
%对信号进行译码,对接收到的码字进行译码,恢复
出原始的信息,译码参数和方式必须和编码时采用的严格相同
subplot(2,2,3)
stem(recode)
title('译码器输出信号')
t=-1:0.01:1;
x=recode;
%将recode赋值给x,并进行长度与fft设定
N=length(x);
fx=fft(x);
df=100/N;
n=0:N/2;
f=n*df;
subplot(2,2,4);
plot(f,abs(fx(n+1))*2/N);
grid;
title('频谱图')
2、误码率与信噪比之间的关系程序(以(3,2)循环码进行测试)
m
=
2;
n
=
2^m-1;
%定义码长
k
=
n-m;
%信息位长
Fs=40;
%系统采样频率
Fd=1;
%码速率
N=Fs/Fd;
M=2;
%进制数
for
SNRpBit=1:100;%信噪比
SNR=SNRpBit/log2(M);
%制造100个信息组,每组k位
msg
=
randint(100,k,[0,1]);
code
=
encode(msg,n,k,'cyclic/binary');
%加入噪声
%在已调信号中加入高斯白噪声
noisycode=awgn(code,SNR-10*log10(0.5)-10*log10(N),'measured',[],'dB');
%将浮点数转化为二进制,波形整形过程
for
i=1:100
for
a=1:k+1
if
noisycode(i,a)<0.5
noisycode(i,a)
=
0;
else
noisycode(i,a)
=
1;
end
end
end
%译码
newmsg
=
decode(noisycode,n,k,'cyclic');
%计算误码率
[number,ratio]=biterr(newmsg,msg);
result(SNRpBit)=ratio;
disp(['The
bit
error
rate
is',num2str(ratio)]);
end
%不同信噪比下循环码经过加性高斯白噪声信道的误码率
figure(1)
stem(result);
title('循环码在不同信噪比下的误码率')
legend('误码率','*')
xlabel('信噪比');
ylabel('在加性高斯白噪声下的误码率');

阅读全文

与循环码编译码实验报告实验结论相关的资料

热点内容
php取现在时间 浏览:244
单片机高吸收 浏览:427
怎么区分五代头是不是加密喷头 浏览:244
hunt测试服务器是什么意思 浏览:510
2013程序员考试 浏览:641
毕业论文是pdf 浏览:736
服务器跑网心云划算吗 浏览:471
单片机定时器计数初值的计算公式 浏览:801
win7控制台命令 浏览:567
猫咪成年app怎么升级 浏览:692
360有没有加密软件 浏览:315
清除cisco交换机配置命令 浏览:751
华为删除交换机配置命令 浏览:473
shell打包命令 浏览:827
加密狗插上输不了密码 浏览:187
大学单片机相关科目 浏览:23
自己建了服务器地址 浏览:698
命令按钮的属性设置 浏览:965
证券技术分析pdf 浏览:779
linux命令连接oracle 浏览:202