HDB3是怎么变成AMI编码的?

HDB3是怎么变成AMI编码的?,第1张

第一步:ami码:01000VB00V11B00V

第二步:0+1000+V-B00-V+1-1+B00+V

第三步:hdb3:0+1000+1-100-1+1-1+100+1

AMI:+1-10+100-100000+1(-1+10-100+100000-1)

HDB3:+1-10+100-1000-v0+1(-1+10-100+1000+v00-1)

先转换为AMI码0+10000 -10+1-100000 0000 0000+1-1+1-100+1,再是HDB3码为0+1000+v -10+1-1000-v +B 00+v -B 00-V+1-1+1-100+1

如果是第一个为-1 的话HDB3码为0-1000-v +10-1+1000+v -B 00-v +B 00+V-1+1-1+100-1

扩展资料:

通信中的差分编码,差分编码输入序列{an},差分编码输出序列{bn},二者都为{0、1}序列,则差分编码输出结果为bn=an异或bn-1,并不是bn=an异或an-1(即所谓的:对数字数据流,除第一个元素外,将其中各元素都表示为各该元素与其前一元素的差的编码。这么定义是不准确的。)前者多用在2DPSK调制,后者多用在MSK调制预编码。同时后者是码反变换器的数学表达式,即用来解差分编码用的。

参考资料来源:百度百科-差分码

程序如下,现在原始序列长度20的随机0,1串,要变自己改。

clc

clear

source = randint(1,20)

%%%%%%%%%%%%Encode %%%%%%%%%%%%%

perbit = -1

for i=1:length(source)

if source(i)==1

encoded(i) = (-1)*perbit

perbit = encoded(i)

else

encoded(i) = source(i)

end

end

%%%%%%%%%%%%Decode %%%%%%%%%%%%

for i=1:length(source)

if encoded(i)~=0

decoded(i) = 1

else

encoded(i) = 0

end

end

source

encoded

decoded


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/8042750.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-12
下一篇 2023-04-12

发表评论

登录后才能评论

评论列表(0条)

保存