保存桌面快捷方式 - - 设为首页 - 手机版
凹丫丫旗下网站:四字成语大全 - 故事大全 - 范文大全
您现在的位置: 范文大全 >> 理工论文 >> 电子通信论文 >> 正文

用TMS320C54X实现Vertibi译码器


;以下程序中,累加器A存放状态值,累加器B存放临时的数据

;K为约束长度,MASK=2 K-5-1,ONE=1

RSBX OVM ;关闭溢出模式

STM *NTRAN_END,AR2;转移表的结束地址

STM#NBWORDS-1,AR1;要计算的输出字的序号

MVMM AR1,AR4 ;复制AR1的数值到AR4中

STM #OUTPUT+NBWORDS-1,AR3

;输出比特的地址指针

LD #0,A 初始0状态存入累加器A中

STM#15,BRC ;do i=0,NBWORDS-1

BACK:RPTB TBEND-1 ;do j=0,15

;在转移字中计算比特位置

SFTL A,-(K-2),B ;B=A>>(K-2)

AND ONE,B ;B=B&1=msb of State

ADD A,1,B ;B=B+A<<1=2*State+msb of State

STLM B,T ;T=B(bit position)

;修正转移字

SFTL A,-3,B ;B=A/8=State/8

AND MASK,B ;B=B&MASK=(K-5)lsb'sof State/8

STLM AR0 ;AR0=转称字索引

MAR *+AR2(-2K-5) ;修正寄存器值使其复位

MAR *AR2+0 ;加偏移量修正转移字

BITT*AR2-0 ;测试转移字中的比特位

ROLTC A

TBEND:STL A,*AR3-

BANZD:BACK,*AR1-

STM #15,BRC ;指向输出缓冲区的首地址

LD*AR3,A ;将第一个字装入累加器A中

RVS:SFTA A,-1,A

STM #15,BRC

RPTB RVS2-1

ROL B

SFTA A,-1,A

RVS2:BANZD RVS,*AR4- ;判断所有的字是否都计算完

STL B,*AR3+ ;保存刚计算完的字

LD *AR3,A ;装入下一个字


《用TMS320C54X实现Vertibi译码器(第4页)》
本文链接地址:http://www.oyaya.net/fanwen/view/149485.html

★温馨提示:你可以返回到 电子通信论文 也可以利用本站页顶的站内搜索功能查找你想要的文章。